SkyWalking 建立與2015年,提供分佈式追蹤功能。從5.x開始,項目進化爲一個完成功能的Application Performance Management系統。
他被用於追蹤、監控和診斷分佈式系統,特別是使用微服務架構,雲原生或容積技術。提供如下主要功能:css
新版本的skywalking使用ES做爲存儲,因此先安裝es,注意6.X版本不行,安裝5.6.8:html
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6.8.tar.gz
tar zxvf elasticsearch-5.6.8.tar.gz
cd elasticsearch-5.6.8/
修改配置文件,主要修改cluster.name,並增長兩行配置,
vim config/elasticsearch.yml:java
cluster.name: CollectorDBCluster # ES監聽的ip地址 network.host: 0.0.0.0 thread_pool.bulk.queue_size: 1000
保存,而後啓動es:node
nohup bin/elasticsearch &
先下載編譯好的版本並解壓:nginx
wget http://mirrors.hust.edu.cn/apache/incubator/skywalking/5.0.0-beta/apache-skywalking-apm-incubating-5.0.0-beta.tar.gz
tar zxvf apache-skywalking-apm-incubating-5.0.0-beta.tar.gz
cd apache-skywalking-apm-incubating/
而後部署,注意skywalking會使用(8080, 10800, 11800, 12800)端口,所以先排除端口占用狀況。git
而後運行bin/startup.sh,windows用戶爲.bat文件。github
一切正常的話,訪問localhost:8080就能看到頁面了。web
1.拷貝apache-skywalking-apm-incubating目錄下的agent目錄到應用程序位置,探針包含整個目錄,請不要改變目錄結構
2.java程序啓動時,增長JVM啓動參數,-javaagent:/path/to/agent/skywalking-agent.jar。參數值爲skywalking-agent.jar的絕對路徑shell
在IDEA裏調試程序怎麼辦?apache
增長VM參數便可。
agent探針配置,簡單修改下agent.application_code便可
# 當前的應用編碼,最終會顯示在webui上。 # 建議一個應用的多個實例,使用有相同的application_code。請使用英文 agent.application_code=Your_ApplicationName # 每三秒採樣的Trace數量 # 默認爲負數,表明在保證不超過內存Buffer區的前提下,採集全部的Trace # agent.sample_n_per_3_secs=-1 # 設置須要忽略的請求地址 # 默認配置以下 # agent.ignore_suffix=.jpg,.jpeg,.js,.css,.png,.bmp,.gif,.ico,.mp3,.mp4,.html,.svg # 探針調試開關,若是設置爲true,探針會將全部操做字節碼的類輸出到/debugging目錄下 # skywalking團隊可能在調試,須要此文件 # agent.is_open_debugging_class = true # 對應Collector的config/application.yml配置文件中 agent_server/jetty/port 配置內容 # 例如: # 單節點配置:SERVERS="127.0.0.1:8080" # 集羣配置:SERVERS="10.2.45.126:8080,10.2.45.127:7600" collector.servers=127.0.0.1:10800 # 日誌文件名稱前綴 logging.file_name=skywalking-agent.log # 日誌文件最大大小 # 若是超過此大小,則會生成新文件。 # 默認爲300M logging.max_file_size=314572800 # 日誌級別,默認爲DEBUG。 logging.level=DEBUG
一切正常的話,稍後就能夠在skywalking ui看到了。
能夠看到累出了slow service等信息,更多的細節慢慢挖掘吧。
做者:Jadepeng