<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ## 簡介 * Skywalking 是一個優秀的APM(application performance monitor)應用性能監控系統,針對微服務場景設計,可以方便的實現Spring cloud等微服務場景下的性能監控、鏈路追蹤等。 * 官網:https://skywalking.apache.org/ * 下載:https://skywalking.apache.org/downloads/ * 文檔:https://skywalking.apache.org/docs/ * 中文版文檔:https://skyapm.github.io/document-cn-translation-of-skywalking/ ## 部署Skywalking 1. 部署方式有很多種,本次以docker-compose一鍵部署腳本為例,若需要其他部署方式,可以參考skywalking官方文檔 2. 拷貝如下docker-compose腳本至開發機或服務器 ~~~ version: '3.3' services: elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:7.17.11 container_name: elasticsearch restart: always ports: - 9200:9200 - 9300:9300 environment: - discovery.type=single-node - TZ=Asia/Shanghai - bootstrap.memory_lock=true - "ES_JAVA_OPTS=-Xms1024m -Xmx1024m" ulimits: memlock: soft: -1 hard: -1 skywalking-oap: image: docker.io/apache/skywalking-oap-server:9.5.0 container_name: skywalking-oap depends_on: - elasticsearch restart: always ports: - 11800:11800 - 12800:12800 environment: SW_CORE_RECORD_DATA_TTL: 15 SW_CORE_METRICS_DATA_TTL: 15 SW_STORAGE: elasticsearch SW_STORAGE_ES_CLUSTER_NODES: elasticsearch:9200 SW_ENABLE_UPDATE_UI_TEMPLATE: "true" TZ: Asia/Shanghai JAVA_OPTS: "-Xms2048m -Xmx2048m" skywalking-ui: image: docker.io/apache/skywalking-ui:9.5.0 container_name: skywalking-ui depends_on: - skywalking-oap links: - skywalking-oap restart: always ports: - 8880:8080 environment: SW_OAP_ADDRESS: http://skywalking-oap:12800 ~~~ 3. 進入對應目錄,執行 `docker-compose up -d`,等待下載鏡像并啟動完畢,一般等待一分鐘后便可以進行訪問 ![](https://img.kancloud.cn/68/ec/68ec5de4c3825d90e868fd46a1d62e17_2510x1488.png) 4. skywalking前端默認端口為8080,為了防止沖突,我們將其到宿主機的端口映射為8880,大家注意開通好端口策略 5. 訪問http://服務地址:8880,若看到下圖則說明部署成功 ![](https://img.kancloud.cn/03/16/03161def5d0cd4d4ce63aac6003a462d_2298x2002.png) ## 下載Agent 1. 前往官網下載9.x版本的Agent ![](https://img.kancloud.cn/4c/af/4caf53d2d12f8565a2aa0c81d4b6a56a_1538x1456.png) 2. 放到開發機或服務器提前準備好的目錄,并記下地址,以macos的開發機為例 地址為: /users/bladex/skywalking/skywalking-agent/skywalking-agent.jar ![](https://img.kancloud.cn/3f/a9/3fa90db371f9d6e97f36a5c7efbc75f9_1164x828.png) ## 依賴說明 在需要進行對接的服務,加上對應依賴 ```xml <dependency> <groupId>org.apache.skywalking</groupId> <artifactId>apm-toolkit-trace</artifactId> <version>9.0.0</version> </dependency> <dependency> <groupId>org.apache.skywalking</groupId> <artifactId>apm-toolkit-logback-1.x</artifactId> <version>9.0.0</version> </dependency> ``` ## 配置說明 1. 核心配置如下 ```shell -javaagent:/users/bladex/skywalking/skywalking-agent/skywalking-agent.jar -Dskywalking.agent.service_name=blade-gateway -Dskywalking.collector.backend_service=127.0.0.1:11800 ``` 2. `-javaagent:` 需要配置為剛剛下載 skywalking-agent 的具體jar包地址 3. `-Dskywalking.agent.service_name=`注冊到skywalking的服務名稱 4. `-Dskywalking.collector.backend_service=`skywalking部署的地址+服務端口號 5. 服務啟動命令如下 ```shell java -jar app.jar -javaagent:/users/bladex/skywalking/skywalking-agent/skywalking-agent.jar -Dskywalking.agent.service_name=blade-gateway -Dskywalking.collector.backend_service=127.0.0.1:11800 ``` ## 開始對接 1. 以開發模式下的idea為例,打開啟動器配置,并加上skywalking所需的配置,注意各個服務的配置不同,主要需要修改注冊的服務名 ![](https://img.kancloud.cn/00/6d/006d326459a2b1e3e7cee017500de5c7_1246x868.png) ![](https://img.kancloud.cn/dc/fc/dcfc0db704b4267104028369fcc0d256_1662x1680.png) ![](https://img.kancloud.cn/69/92/6992a0b1a08a772c104a39c736a529f6_1480x1310.png) ![](https://img.kancloud.cn/eb/4d/eb4dd31e1c8288c5503dd629d6c1db88_2080x1352.png) 2. 啟動配置的GateWayApplication,等待啟動完畢 ![](https://img.kancloud.cn/ac/20/ac20ef5826b0c59709198566aee034fa_3694x694.png) ![](https://img.kancloud.cn/50/ae/50aeeba8f9efd3e12aeb01202101d463_3682x1764.png) 3. 一個服務成功后,說明之前的部署與配置均無問題,之后我們將需要監控的服務,都加上對應的配置并且啟動完畢 4. 打開skywalking前端,查看服務已經注冊成功,并且可以看到自動將調用關系以圖像的形式展現出來了,鏈路追蹤也一并處理完畢 ![](https://img.kancloud.cn/5e/bc/5ebcf7df5a36a9489501d23010e9d341_2188x1526.png) ![](https://img.kancloud.cn/59/15/59156be6de537c3a8942d134d87e7a45_2198x1554.png) ![](https://img.kancloud.cn/15/49/15496922455a952b79d223acd63feaab_2198x1806.png) ## 日志配置 * skywalking支持log4j、log4j2、logback三種日志,若需要將日志推送到skywalking,僅需要在對應配置文件加上官方的配置即可,無需二次開發 * 引入 對應依賴 ```xml <dependency> <groupId>org.apache.skywalking</groupId> <artifactId>apm-toolkit-trace</artifactId> <version>9.0.0</version> </dependency> <dependency> <groupId>org.apache.skywalking</groupId> <artifactId>apm-toolkit-logback-1.x</artifactId> <version>9.0.0</version> </dependency> ``` * 以logback為例,加入如下配置便可,主要是通過 `%tid` 來定義 ```xml <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.TraceIdPatternLogbackLayout"> <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%tid] [%thread] %-5level %logger{36} -%msg%n</Pattern> </layout> </encoder> </appender> ``` * 如果使用MDC,則通過 `%X{tid}` 來定義 ```xml <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> ``` * 更多具體完整配置請見官方文檔:https://skywalking.apache.org/docs/skywalking-java/next/en/setup/service-agent/java-agent/application-toolkit-logback-1.x/
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看