github: https://github.com/apache/skywalking
bilibili: https://www.bilibili.com/video/BV1ZJ411s7Mn?p=5
官方中文文档:http://skywalking.apache.org/zh/blog/
阿里云文档:https://help.aliyun.com/document_detail/161783.html
略
wget https://mirror.bit.edu.cn/apache/skywalking/7.0.0/apache-skywalking-apm-es7-7.0.0.tar.gz
ll
tar -zxvf apache-skywalking-apm-es7-7.0.0.tar.gz
mv apache-skywalking-apm-bin-es7/ skywalking
skywalking中:
vi ./webapp/webapp.yml
server:
port: 9090 # 修改默认8080端口为 9090
skywalking中:
cp agent/optional-plugins/apm-trace-ignore-*.jar agent/plugins
ll agent/plugins/*igno* # 查看
vi agent/config/apm-trace-ignore-plugin.config
trace.ignore_path=${SW_AGENT_TRACE_IGNORE_PATH:/eureka/**,/swagger*/**}
cat agent/config/apm-trace-ignore-plugin.config # 检查
SkyWalking 6.6.0
版本开始,增加了对 Elasticsearch 7.X 版本的支持。
skywalking中:
vi config/application.yml(其他默认就好)
storage:
selector: ${SW_STORAGE:elasticsearch7} # 默认值改为elasticsearch7
# *** *** 省略
elasticsearch7:
nameSpace: ${SW_NAMESPACE:"skywalking-index"} # 添加默认 skywalking-index
clusterNodes: ${SW_STORAGE_ES_CLUSTER_NODES:server-com:9200} # 连接56服务器的es
protocol: ${SW_STORAGE_ES_HTTP_PROTOCOL:"http"}
#trustStorePath: ${SW_SW_STORAGE_ES_SSL_JKS_PATH:"../es_keystore.jks"} # 注释掉
#trustStorePass: ${SW_SW_STORAGE_ES_SSL_JKS_PASS:""} # 注释掉
vi agent/config/agent.config中:(也可以通过环境变量的方式注入)
lugin.mysql.trace_sql_parameters=${SW_MYSQL_TRACE_SQL_PARAMETERS:true}
vi agent/config/agent.config中:(也可以通过环境变量的方式注入)
collector.backend_service=${SW_AGENT_COLLECTOR_BACKEND_SERVICES:server-com:11800}
cd ./bin
# 建议先启动这个,观察日志成功后再启动web
./oapService.sh
./webappService.sh
# 依次启动上面两个
./startup.sh
启动成功后访问UI: http://server-com:9090
再次查看es索引会发现,增加了很多skywalking相关:http://server-com:9200/_cat/indices?v
# server-com服务器:oap
tail -n1000 -f /home/software/skywalking/logs/webapp.log
tail -n1000 -f /home/software/skywalking/logs/skywalking-oap-server.log
# agent
tail -n1000 -f /home/software/skywalking/agent/logs/skywalking-api.log
我们需要将 apache-skywalking-apm-bin/agent
目录,拷贝到 Java 应用所在的服务器上。这样,Java 应用才可以配置使用该 SkyWalking Agent
本机测试中,就不用拷贝了,我的 SkyWalking Agent 的 jar 包路径是:/home/software/skywalking/agent/skywalking-agent.jar
在java -jar **server.jar 命令中间加上如下参数:
-javaagent:/home/software/skywalking/agent/skywalking-agent.jar
#我的容器中挂载后路径: /skywalkingAgent/skywalking-agent.jar
# 指定服务名:
-Dskywalking.agent.service_name=[serverName]
# 指定oap地址:
-Dskywalking.collector.backend_service=[server-com:11800]
# 指定过滤端点:
-Dskywalking.trace.ignore_path=/eureka/**,/swagger*/**
# sql执行参数可见
-Dskywalking.lugin.mysql.trace_sql_parameters=true