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 # 如果需要自动创建目录
相关推荐
XINGTECODE1 小时前
海盗王集成网关和商城服务端功能golang版
开发语言·后端·golang
程序猿进阶1 小时前
堆外内存泄露排查经历
java·jvm·后端·面试·性能优化·oom·内存泄露
FIN技术铺1 小时前
Spring Boot框架Starter组件整理
java·spring boot·后端
凡人的AI工具箱1 小时前
15分钟学 Go 第 60 天 :综合项目展示 - 构建微服务电商平台(完整示例25000字)
开发语言·后端·微服务·架构·golang
小码的头发丝、1 小时前
Spring Boot 注解
java·spring boot
先天牛马圣体2 小时前
如何提升大型AI模型的智能水平
后端
午觉千万别睡过2 小时前
RuoYI分页不准确问题解决
spring boot
java亮小白19972 小时前
Spring循环依赖如何解决的?
java·后端·spring
2301_811274312 小时前
大数据基于Spring Boot的化妆品推荐系统的设计与实现
大数据·spring boot·后端
草莓base3 小时前
【手写一个spring】spring源码的简单实现--容器启动
java·后端·spring