skywalking官網(wǎng):https://skywalking.apache.org/zh/
由于項目中elasticsearch是6.x版本的,所以本文主要介紹配合es6使用skywalking進行分布式鏈路追蹤
環(huán)境要求
JDK8+
Elasticsearch 6.x
8080,10800,11800,12800 端口不被占用
下載安裝
官方下載地址:http://skywalking.apache.org/downloads/
下載
cd /data
wget https://archive.apache.org/dist/skywalking/8.5.0/apache-skywalking-apm-8.5.0.tar.gz
安裝
tar -zxvf apache-skywalking-apm-8.5.0.tar.gz
注意:
ElasticSearch 6.3.2 ~ 7.0.0 (excluded),下載 apache-skywalking-bin.tar.gz 或 apache-skywalking-bin.zip
ElasticSearch 7.0.0 ~ 8.0.0 (excluded) 下載apache-skywalking-bin-es7.tar.gz 或 apache-skywalking-bin-es7.zip.
修改配置文件
bin里面是啟動文件
config目錄里面是配置文件
webapp目錄里面是UI界面項目文件和配置文件
默認情況下,只需要更改一下 config/application.yml文件
storage:
//es6選擇elasticsearch
selector: ${SW_STORAGE:elasticsearch}
elasticsearch:
//存儲在es上的前綴
nameSpace: ${SW_NAMESPACE:"elasticsearch"}
//替換為es所在ip
clusterNodes: ${SW_STORAGE_ES_CLUSTER_NODES:localhost:9200}
如果需要更改UI界面訪問的端口,可以修改 webapp/webapp.yml,默認是8080
server:
port: 8080
collector:
path: /graphql
ribbon:
ReadTimeout: 10000
# Point to all backend's restHost:restPort, split by ,
listOfServers: 127.0.0.1:12800
告警相關的配置大家根據(jù)需要去查官網(wǎng)的參數(shù)自行去配置
啟動
首先es肯定要啟動起來,這里不贅述了
然后到bin目錄運行./startup.sh 會啟動UI和Backend,aop服務,啟動后端口8080,11800,12800可看到被監(jiān)聽
cd bin
./startup.sh
成功之后可以訪問http://localhost:8080

配置代理以及需要監(jiān)聽的java程序
到agent/config目錄,修改agent.config
//配置的是你應用的名字,查詢的時候可以很好的區(qū)分,當然這里可以不配置,在服務啟動的時候用-Dskywalking.agent.service_name=boss覆蓋
agent.service_name=${SW_AGENT_NAME:Your_ApplicationName}
//是剛才啟動collector的地址和端口
collector.backend_service=${SW_AGENT_COLLECTOR_BACKEND_SERVICES:localhost:11800}
//日志等級
logging.level=${SW_LOGGING_LEVEL:DEBUG}
應用配置
修改各個微服務jar包的執(zhí)行參數(shù)
//agent的路徑
-javaagent:D:\wanmi\apache-skywalking-apm-bin\agent\skywalking-agent.jar
//就是上面說到的應用的名稱
-Dskywalking.agent.service_name=boss
應用監(jiān)控
在web界面就能訪問,查看服務器的各種參數(shù)了

這樣我們就能看到接口的耗時,可以查詢具體的接口,也可以以時間為維度,調用關系,跨度,每一步的耗時,以及數(shù)據(jù)庫的sql語句,這樣就很方便分析了
