快速集成Skywalking 9(Windows系统、JavaAgent、Logback)
目录
- 一、Skywalking简介
- 二、下载Skywalking服务端
- 三、安装Skywalking服务端
- 3.1 解压安装包
- 3.2 启动Skywalking
- 四、关于Skywalking服务端更多配置
- 五、Java应用集成skywalking-agent.jar
- 5.1 下载SkyWalking Java Agent
- 5.2 集成JavaAgent
- 5.3 Logback集成Skywalking
- 5.4 集成效果
一、Skywalking简介
SkyWalking是一个开源的可观察性平台,用于收集、分析、聚合和可视化来自服务和云原生基础设施的数据。SkyWalking提供了一种简单的方法来维护分布式系统的清晰视图,即使是跨云的。它是一个现代APM,专门为云原生的、基于容器的分布式系统而设计,支持对应用端Tracinig、Metrics、Logging的采集和展示。SkyWalking逻辑上分为四个部分:探测器、平台后端、存储和UI,下文中的Skywalking服务端安装主要包括了平台后端、存储(默认内存数据库H2)、UI,探测器则简要介绍了Java Agent集成。
二、下载Skywalking服务端
进入Skywalking下载页面:https://skywalking.apache.org/downloads/
点击[tar]
下载 apache-skywalking-apm-9.6.0.tar.gz
:
三、安装Skywalking服务端
关于安装说明可参见:
https://skywalking.apache.org/docs/main/v9.6.0/en/setup/backend/backend-setup/
注: 需本地安装:JDK 11 至 JDK17 均可
3.1 解压安装包
解压apache-skywalking-apm-9.6.0.tar.gz
:
SkyWalking的后端发行包由以下部分组成:
- bin/cmd scripts: 位于/bin文件夹。包括启动Linux shell和Windows cmd脚本后端服务器和UI启动。
- 后端配置: 位于/config文件夹中,包括后端配置文件:
- application.yml
- log4j.xml
- alarm-settings.yml
- 后端库: 位于/oap-libs文件夹中,后端的所有依赖项都可以在这里找到。
- Webapp环境(前端): 位于Webapp文件夹中,UI前端jar文件可以在这里找到,连同它的webapp.yml设置文件
3.2 启动Skywalking
您可以使用bin/startup.bat(或Linux环境sh)
以默认设置启动后端和UI,设置如下:
- 后端存储默认使用H2(为了更容易开始)
- 后端监听 0.0.0.0/11800的gRPC api 和 0.0.0.0/12800的HTTP REST api。
- UI监听8080端口,请求127.0.0.1/12800运行GraphQL查询。
在Java、DotNetCore、Node.js和Istio代理/探测中,
您应该将gRPC服务地址设置为ip/host:11800,
ip/host应该是您的后端所在的位置。
双击运行bin/startup.bat
:
运行成功后弹出如下两个窗口:
其中:
- Webapp即对应前端UI(位于webapp目录下)
- Collector即对应后端服务(位于oap-libs目录,配置位于config目录下)
运行成功后即可访问UI:http://localhost:8080
四、关于Skywalking服务端更多配置
更多配置可参见:
修改Mysql存储 - https://skywalking.apache.org/docs/main/next/en/setup/backend/backend-setup/#applicationyml
https://skywalking.apache.org/docs/main/next/en/setup/backend/backend-setting-override/
五、Java应用集成skywalking-agent.jar
集成Java Agent可参见:
https://skywalking.apache.org/docs/skywalking-java/v9.0.0/en/setup/service-agent/java-agent/readme/
https://skywalking.apache.org/docs/skywalking-java/v9.0.0/en/setup/service-agent/java-agent/setting-override/
5.1 下载SkyWalking Java Agent
https://www.apache.org/dyn/closer.cgi/skywalking/java-agent/9.0.0/apache-skywalking-java-agent-9.0.0.tgz
下载apache-skywalking-java-agent-9.0.0.tgz
:
解压后:
5.2 集成JavaAgent
通过Java命令行集成skywalking-agent.jar:
java
# skywalking agent
-javaagent:D:/programs/dev/java/skywalking-agent/skywalking-agent.jar
# 当前服务名
-Dskywalking.agent.service_name=luo-demo::api-sub
# Skywalking后端采集 - gRpc端口
-Dskywalking.collector.backend_service=127.0.0.1:11800
-jar myapp.jar
5.3 Logback集成Skywalking
logback日志集成可参见:
https://skywalking.apache.org/docs/skywalking-java/v9.0.0/en/setup/service-agent/java-agent/application-toolkit-logback-1.x/
https://github.com/apache/skywalking-satellite
maven依赖:
<!-- logback sw集成 -->
<dependency><groupId>org.apache.skywalking</groupId><artifactId>apm-toolkit-logback-1.x</artifactId><version>9.0.0</version>
</dependency>
resources/logback-spring.xml:
<configuration scan="true" scanPeriod=" 5 seconds"><!-- 默认日志配置 --><springProfile name="default"><appender name="console" class="ch.qos.logback.core.ConsoleAppender"><encoder><pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern></encoder></appender><root level="INFO"><appender-ref ref="console"/></root></springProfile><!-- SkyWalking配置(注:此处需通过spring.profiles.active=skywalking激活) --><springProfile name="skywalking"><appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"><encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder"><layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.mdc.TraceIdMDCPatternLogbackLayout"><Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%X{tid}] [%thread] %-5level %logger{36} -%msg%n</Pattern></layout></encoder></appender><appender name="ASYNC" class="ch.qos.logback.classic.AsyncAppender"><discardingThreshold>0</discardingThreshold><queueSize>1024</queueSize><neverBlock>true</neverBlock><appender-ref ref="STDOUT"/></appender><appender name="grpc-log" class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.log.GRPCLogClientAppender"><encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder"><layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.mdc.TraceIdMDCPatternLogbackLayout"><Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%X{tid}] [%thread] %-5level %logger{36} -%msg%n</Pattern></layout></encoder></appender><root level="INFO"><appender-ref ref="ASYNC"/><appender-ref ref="grpc-log"/></root></springProfile>
</configuration>
5.4 集成效果
启动对应Java应用后,再次访问Skywalking UI:
http://localhost:8080
可以发现左侧菜单多出了【常规服务->服务】,切换到此【服务】菜单后,右侧即可查看已接入服务的追踪、日志等监控数据。
查看服务拓扑:
查看服务追踪信息:
查看服务日志:
相关文章:

快速集成Skywalking 9(Windows系统、JavaAgent、Logback)
目录 一、Skywalking简介二、下载Skywalking服务端三、安装Skywalking服务端3.1 解压安装包3.2 启动Skywalking 四、关于Skywalking服务端更多配置五、Java应用集成skywalking-agent.jar5.1 下载SkyWalking Java Agent5.2 集成JavaAgent5.3 Logback集成Skywalking5.4 集成效果 …...

起立科技(起鸿)在第25届高交会上展示透明OLED技术创新
第二十五届中国国际高新技术成果交易会 日期:2023年11月15日 地点:福田会展中心7号馆 深圳,2023年11月15日 — 起鸿科技,作为透明OLED领域的引领者,于今日参展了第二十五届中国国际高新技术成果交易会。这一展会将汇…...
大模型LLM 在线量化;GPTQ\AWQ量化
1、大模型LLM 在线量化 参考:https://www.cnblogs.com/bruceleely/p/17348782.html ##8bit model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).quantize(8).half(...

记一次线上bug排查-----SpringCloud Gateway组件 请求头accept-encoding导致响应结果乱码
基于公司的业务需求,在SpringCloud Gateway组件的基础上,写了一个转发服务,测试开发阶段运行正常,并实现初步使用。但三个月后,PostMan请求接口,返回异常,经排查,从日志中获取到转发…...

复杂数据统计与R语言程序设计实验一
1.下载并安装R语言软件,熟悉基本操作的命令及操作界面,掌握软件的使用方法(提供学号加姓名的截图)。 2.下载并安装Rstudio, (提供运行代码及运行结果的截图)。 3.下载并安装R包DT,…...
UEFI实战——键盘操作
一、键盘操作 UEFI下如何获取键盘键值,用户输入按键方式分两种:一种是单个按键,另外一种是组合按键。两种方式对应两个Protocol服务,接下来分步讲解。 二、单个按键 单个按键使用Protocol服务是EFI_SIMPLE_TEXT_INPUT_PROTOCOL,它定义在MdePkg/Include/Protocol/Simple…...

苹果CMS首涂第30套可装修DIY主题模板免授权版
这是一款可以装修的主题,类似淘宝店装修一样,可以针对首页、栏目页、详情页、播放页进行自定义装修,内置10个模块自由选择、添加、修改、删除、排序操作,后续升级还会增加更多实用和个性模块供选择,主题内包含的导航、…...
C#每天复习一个重要小知识day2:有参与无参构造函数
using System;public class MyClass {private int value;// 有参构造函数public MyClass(int v){this.value v;}// 无参构造函数public MyClass(){this.value 0;}public static void Main(string[] args){// 使用有参构造函数实例化对象MyClass obj1 new MyClass(10);Consol…...

大语言模型的三阶段训练
为了训练专有领域模型,选择LLaMA2-7B作为基座模型,由于LLaMA模型中文词表有限,因此首先进行中文词表的扩展,然后进行三阶段训练(增量预训练,有监督微调,强化学习)。 代码将全部上传…...

面试题c/c++ --STL 算法与数据结构
1.6 STL 模板 模板底层实现:编译器会对函数模板进行两次编译, 在声明的地方对模板代码本身进行编译, 在调用的地方对参数替换后的代码进行编译。 模板传参分析 模板重载 vector 是动态空间, 随着元素的加入, 它的内…...

云原生微服务-理论篇
文章目录 分布式应用的需求分布式架构治理模式演进ESB 是什么?微服务架构 MSA微服务实践细节微服务治理框架sidercar 什么是service mesh?康威定律微服务的扩展性什么是MSA 架构?中台战略和微服务微服务总体架构组件微服务网关服务发现与路由…...

Unity模拟薄膜干涉效果
Unity制作薄膜干涉效果,色彩斑斓的黑色石头 大家好,我是阿赵。 这次来做一个模拟薄膜干涉的彩色效果,Shader是使用ASE来连接,也算是ASE做复杂一点的效果的一个例子吧。 一、什么是薄膜干涉 以下解释来源于百度百科࿱…...

AIGC ChatGPT4对Gbase数据库进行总结
ChatGPT4 用一个Prompt完成Gbase数据库的总结。 AIGC ChatGPT 职场案例 AI 绘画 与 短视频制作 PowerBI 商业智能 68集 数据库Mysql 8.0 54集 数据库Oracle 21C 142集 Office 2021实战应用 Python 数据分析实战, ETL Informatica 数据仓库案例实战 Excel 2021实操 …...
OSI网络模型与TCP/IP协议
OSI, Open system Interconnection Reference Model 开放式系统互联通信参考模型。是国际标准化组织在1984年定义的一个概念框架,用于协调制定进程间通信标准。OSI作为一个协议规范集,定义了七个层次,包括层次之间的相互关系及各层…...
C语言的5个内存段你了解吗?( 代码段/数据段/栈/堆)
前言:这些内存段在程序运行时起着不同的作用,有不同的分配方式和存储内容。对于 C 语言程序员来说,了解这些内存段的特性和用途有助于更好地理解内存管理、变量的存储位置以及程序执行过程中的内存分配情况 1. 代码段 (Code Segment) 内容&a…...
智能合约检测:新一代区块链技术的安全守护
目录 1、智能合约检测:新一代区块链技术的安全守护 2、智能合约性能检测步骤...

Flutter笔记:缩放手势
Flutter笔记 缩放手势 作者:李俊才 (jcLee95):https://blog.csdn.net/qq_28550263 邮箱 :291148484163.com 本文地址:https://blog.csdn.net/qq_28550263/article/details/134485138 目 录 1. 概述2. 缩放手…...

JAXB:用XmlElement注解复杂类型的Java属性,来产生多层嵌套的xml元素
例如,下面这段请求的xml代码,在元素body下面又多了一层,嵌套了4个元素: <?xml version"1.0" encoding"UTF-8"?><request><reqtype>04</reqtype><secret>test</secret>…...

万字长文 - Python 日志记录器logging 百科全书 - 高级配置之 日志分层
万字长文 - Python 日志记录器logging 百科全书 - 高级配置之 日志分层 前言 在 Python 的logging模块中,它不仅提供了基础的日志功能,还拥有一系列高级配置选项来满足复杂应用的日志管理需求。 说到logging 模块的高级配置,必须提及日志分…...

工作记录---为什么双11当天不能申请退款?(有趣~)
为什么? 服务降级了 服务降级: 当服务器压力剧增的情况下,根据实际业务情况及流量,对一些服务和页面有策略的不处理或换种简单的方式处理,从而释放服务器资源以保证核心交易正常运作或高效运作。 分布式系统的降级…...
OpenLayers 可视化之热力图
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 热力图(Heatmap)又叫热点图,是一种通过特殊高亮显示事物密度分布、变化趋势的数据可视化技术。采用颜色的深浅来显示…...
椭圆曲线密码学(ECC)
一、ECC算法概述 椭圆曲线密码学(Elliptic Curve Cryptography)是基于椭圆曲线数学理论的公钥密码系统,由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA,ECC在相同安全强度下密钥更短(256位ECC ≈ 3072位RSA…...

基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容
基于 UniApp + WebSocket实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...

【快手拥抱开源】通过快手团队开源的 KwaiCoder-AutoThink-preview 解锁大语言模型的潜力
引言: 在人工智能快速发展的浪潮中,快手Kwaipilot团队推出的 KwaiCoder-AutoThink-preview 具有里程碑意义——这是首个公开的AutoThink大语言模型(LLM)。该模型代表着该领域的重大突破,通过独特方式融合思考与非思考…...

C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。
1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj,再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...

HarmonyOS运动开发:如何用mpchart绘制运动配速图表
##鸿蒙核心技术##运动开发##Sensor Service Kit(传感器服务)# 前言 在运动类应用中,运动数据的可视化是提升用户体验的重要环节。通过直观的图表展示运动过程中的关键数据,如配速、距离、卡路里消耗等,用户可以更清晰…...
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析 一、第一轮提问(基础概念问题) 1. 请解释Spring框架的核心容器是什么?它在Spring中起到什么作用? Spring框架的核心容器是IoC容器&#…...

GitFlow 工作模式(详解)
今天再学项目的过程中遇到使用gitflow模式管理代码,因此进行学习并且发布关于gitflow的一些思考 Git与GitFlow模式 我们在写代码的时候通常会进行网上保存,无论是github还是gittee,都是一种基于git去保存代码的形式,这样保存代码…...

Qemu arm操作系统开发环境
使用qemu虚拟arm硬件比较合适。 步骤如下: 安装qemu apt install qemu-system安装aarch64-none-elf-gcc 需要手动下载,下载地址:https://developer.arm.com/-/media/Files/downloads/gnu/13.2.rel1/binrel/arm-gnu-toolchain-13.2.rel1-x…...

论文阅读:LLM4Drive: A Survey of Large Language Models for Autonomous Driving
地址:LLM4Drive: A Survey of Large Language Models for Autonomous Driving 摘要翻译 自动驾驶技术作为推动交通和城市出行变革的催化剂,正从基于规则的系统向数据驱动策略转变。传统的模块化系统受限于级联模块间的累积误差和缺乏灵活性的预设规则。…...