Spring boot 集成 Skywalking 配置 || Skywalking 打不开【已解决】

一、Skywalking官网

Apache SkyWalking

1.下载Skywalking APM (如果下载最新的,双击打开闪退,选老点的版本)

2. 下载 Skywalking Agents

如果下载太慢,建议复制下载链接,然后用下载器下载,比如某雷。

3.下载完成后,去apm bin 目录里双击打开startup.b

4.如果闪退,去下载低点的版本

5.访问 http://localhost:8080

6.如果localhost8080 拒绝访问,需要去改端口。

打开apm-bin 里的webapp 修改port

7.将optional-plugins目录中最新的apm-spring-cloud-gateway*放入agent - plugins目录中

8.改完之后,ctrl+c 退出刚才打开的这两个页面

9.再重新访问更改后的端口。

这样就解决了端口冲突问题。

二、打开IDEA

1.导入依赖

复制代码
       <dependency>
            <groupId>org.apache.skywalking</groupId>
            <artifactId>apm-toolkit-logback-1.x</artifactId>
            <version>8.4.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.skywalking</groupId>
            <artifactId>apm-toolkit-trace</artifactId>
            <version>8.4.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.skywalking</groupId>
            <artifactId>apm-toolkit-opentracing</artifactId>
            <version>8.4.0</version>
        </dependency>

2.找到Edit Configrations

3.配置指针VM options

-javaagent:D:\test\xunlei\apache-skywalking-java-agent-8.10.0\skywalking-agent\skywalking-agent.jar //这个是你自己skywalking-agent.jar路径

-Dskywalking.agent.service_name=hospitalDemo //名字自己起

-Dskywalking.collector.backend_service=127.0.0.1:11800 //这个是 SkyWalking Collector 的端口,而不是 SkyWalking WebApp 的端口

4.日志文件

新建logback-spring.xml文件

复制代码
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true"  debug="false">

    <springProperty scop="context" name="spring.application.name" source="spring.application.name" defaultValue=""/>
    <!--日志存放路径-->
    <property name="PATH" value="logs"/>

    <property name="FILE_NAME" value="${spring.application.name}"/>

    <appender name="Console" 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.TraceIdPatternLogbackLayout">
                <Pattern>
                    %black(%d{ISO8601}) [%tid] %highlight(${LOG_LEVEL_PATTERN:-%5p}) [%blue(%t)] %yellow(%C{1.}): %msg%n%throwable
                </Pattern>
            </layout>
        </encoder>
    </appender>
    <!--trace-->
    <appender name="TRACE_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${PATH}/${FILE_NAME}_trace.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <FileNamePattern>${PATH}/${FILE_NAME}_trace.%d{yyyy-MM-dd}.log</FileNamePattern>
            <maxHistory>60</maxHistory>
            <totalSizeCap>1GB</totalSizeCap>
        </rollingPolicy>
        <encoder>
            <pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}] %highlight([%-5level]) %green([%15.15thread]) %cyan([%logger:%line])--%mdc{client} %msg%n</pattern>
        </encoder>
    </appender>

    <!--error-->
    <appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${PATH}/${FILE_NAME}_error.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <FileNamePattern>${PATH}/${FILE_NAME}_error.%d{yyyy-MM-dd}.log</FileNamePattern>
            <maxHistory>60</maxHistory>
            <totalSizeCap>1GB</totalSizeCap>
        </rollingPolicy>
        <encoder>
            <pattern>[%d{yyyy-MM-dd HH:mm:ss.SSS}] %highlight([%-5level]) %green([%15.15thread]) %cyan([%logger:%line])--%mdc{client} %msg%n</pattern>
        </encoder>
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>ERROR</level>
        </filter>
    </appender>

    <root level="info">
        <appender-ref ref="Console" />
        <appender-ref ref="TRACE_FILE" />
        <appender-ref ref="ERROR_FILE" />
    </root>

</configuration>

5.重启服务,再次访问接口

三、问题(互动)

1.指针VM options 每个微服务都需要配置吗?

2.依赖需要导入吗 如果不要日志需要导入依赖吗
3.es怎么链接
4.日志文件是否需要?
5.网关插件是否需配置?

相关推荐
国科安芯3 小时前
高安全等级车规芯片在星载控制终端上的应用
人工智能·嵌入式硬件·物联网·架构·汽车
jakeswang3 小时前
Higress: 阿里巴巴高性能云原生API网关详解
网关·架构
菜鸟起航ing4 小时前
【Java面试系列】Spring Boot微服务架构下的分布式事务解决方案与性能优化详解 - 3-5年Java开发必备知识
java·spring boot·微服务·性能优化·分布式事务
小马爱打代码5 小时前
Spring Cloud Alibaba微服务治理实战:Nacos+Sentinel深度解析
微服务·架构·sentinel
hello早上好5 小时前
3-Zookeeper基础应用和实战
后端·架构
season_zhu7 小时前
iOS开发:关于路由
ios·架构·swift
道友老李9 小时前
【微服务架构】SpringSecurity核心源码剖析+jwt+OAuth(三):SpringSecurity请求流转的本质
微服务·云原生·架构
至尊童12 小时前
Spring Boot中的 5 种API请求参数读取方式
架构
吾日三省吾码13 小时前
微服务入门:Spring Boot 初学者指南
spring boot·微服务·架构
人不走空14 小时前
Kubernetes核心架构:从组件协同到工作原理
云原生·架构·k8s