SpringBoot整合Skywalking

下载Java Agent

官网:https://skywalking.apache.org/downloads/

提示:Agent最好到网上找一找之前的版本,新版本可能有bug,如果出现了并且网上也几乎没有这个版本的解决方法那么就切换之前的版本

本地启动时

复制代码
-javaagent:d:\opt\skywalking-agent\skywalking-agent.jar 
-Dskywalking.agent.service_name=bm-member-service-app
-Dskywalking.collector.backend_service=192.168.11.221:11800

这三个参数是在启动Java应用时用来配置Apache SkyWalking Java Agent的JVM参数,它们各自代表的意义如下:

复制代码
-javaagent:d:\opt\skywalking-agent\skywalking-agent.jar

这个参数指定了SkyWalking Java Agent的路径和文件名。当你在启动Java应用时使用这个参数,JVM将会加载这个Agent。在这个例子中,Agent位于d:\opt\skywalking-agent\skywalking-agent.jar。Agent负责收集应用的性能数据、追踪信息等,并按照配置发送给SkyWalking后端服务。

复制代码
-Dskywalking.agent.service_name=bm-product-service-app

这个系统属性设置了被监控服务的名称。在SkyWalking中,每个应用或服务都需要一个唯一的名称以便于在UI界面识别和管理。在这个例子中,服务名称被设定为bm-product-service-app,这将帮助区分和标识你的应用在SkyWalking监控界面中的显示和报告。

复制代码
-Dskywalking.collector.backend_service=192.168.11.221:11800

此参数配置了SkyWalking后端collector(收集器)的服务地址和端口号。数据将被发送到这个地址上进行处理和分析。在这个例子中,collector运行在IP地址为192.168.11.221的主机上,监听端口为11800。确保这个地址是正确的,且SkyWalking OAP Server正在此地址上运行并等待接收数据。

k8s部署

dockerfile文件

dockerfile 复制代码
# 基础镜像
FROM registry.cn-beijing.aliyuncs.com/205erp/myopenjdk:8.5
# 设置工作目录
WORKDIR /opt
# 拷贝jar包到工作目录
COPY target/*.jar app.jar
RUN  ls
# 设置暴漏的端口
EXPOSE 8080
# 启动jar包
#ENTRYPOINT ["java","-jar","app.jar"]

CMD java ${JAVA_TOOL_OPTIONS} -jar app.jar

k8s发布yaml时添加skywalking的环境变量

yaml 复制代码
apiVersion: apps/v1
kind: Deployment
metadata:
  name: projectName  #项目名称
spec:
  replicas: 1
  selector:
    matchLabels:
      app: projectName		#项目名称
  template:
    metadata:
      labels:
        app: projectName		#项目名称
    spec:
      containers:
        - name: projectName		#项目名称	
          image: 	#项目镜像
          ports:
            - containerPort: 8080
          env: # 添加Skywalking环境变量配置
            - name: SW_AGENT_NAME
              value: "bm-member-service-app"		#部署项目名称
            - name: SW_AGENT_COLLECTOR_BACKEND_SERVICES
              value: "192.168.11.221:11800"			#k8s部署服务器ip及端口 /  域名
            - name: JAVA_TOOL_OPTIONS
              value: "-javaagent:/skywalking-agent/skywalking-agent.jar"	#agent jar包
          volumeMounts: # 添加日志挂载配置
            - name: app-logs
              mountPath: /logs
      volumes: # 定义挂载卷
        - name: app-logs
          hostPath: # 使用HostPath类型挂载到主机
            path: /logs # 这里填写主机上的日志目录路径
            type: DirectoryOrCreate # 如果需要自动创建目录
相关推荐
PanZonghui2 分钟前
Centos项目部署之运行SpringBoot打包后的jar文件
linux·spring boot
Victor3563 分钟前
MySQL(119)如何加密存储敏感数据?
后端
用户39661446871913 分钟前
TypeScript 系统入门到项目实战-慕课网
后端
guojl19 分钟前
Dubbo SPI原理与设计精要
后端
Lemon程序馆20 分钟前
搞懂 GO 的垃圾回收机制
后端·go
用户81221993672231 分钟前
React18+Next.js14+Nest.js全栈开发复杂低代码项目-仿问卷星
后端
沉着的码农32 分钟前
【设计模式】基于责任链模式的参数校验
java·spring boot·分布式
喜欢吃豆34 分钟前
目前最火的agent方向-A2A快速实战构建(二): AutoGen模型集成指南:从OpenAI到本地部署的全场景LLM解决方案
后端·python·深度学习·flask·大模型
zyxzyx66636 分钟前
Flyway 介绍以及与 Spring Boot 集成指南
spring boot·笔记