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 # 如果需要自动创建目录
相关推荐
user_admin_god20 分钟前
SSE 流式响应 Chunk 被截断问题的排查与修复
java·人工智能·spring boot·spring·maven·mybatis
掉头发的王富贵20 分钟前
如何自己开发一个IDEA插件
后端·intellij idea
无我Code1 小时前
全套开源:一款云端服务+本地设备计算的文生图应用
前端·人工智能·后端
用户69371750013841 小时前
实测可用|小米 MiMo 百万亿 Token 免费领,开发者速冲
前端·后端·ai编程
奇逍科技圈1 小时前
掌握数字主权:中企销订货系统源码如何重构企业全渠道自主可控经营
后端
会编程的土豆2 小时前
【go】 Go语言中的 defer:从入门到理解底层机制(讲透版)
开发语言·后端·golang
白晨并不是很能熬夜2 小时前
【RPC】第 1 篇:全景篇 — 一次 RPC 调用的完整旅程
java·网络·后端·网络协议·面试·rpc·java-zookeeper
kree2 小时前
Docker 完全入门教程
后端
用户467245132232 小时前
多线程编程的噩梦:线程"挂住了"怎么办?
后端
神奇小汤圆2 小时前
Spring AI 实战:用Java搭一个Multi-Agent多智能体系统,附完整源码
后端