下载
我们需要一个监控中心,还有一个 java agents工具
apache-skywalking-apm(显示/存储多个程序的指标数据),APM 是 Application Performance Management 的缩写
和
skywalking-agent(收集单个程序的指标数据)
启动Skywalking和 java程序
-
apache-skywalking-apm\bin\startup.bat可以直接启动 Skywalking APM
-
修改skywalking-agent里面的config\agent.config 约20行,写入你服务的名字
# The service name in UI
# ${service name} = [${group name}::]${logic name}
# The group name is optional only.
agent.service_name=${SW_AGENT_NAME:Your_ApplicationName}
agent.service_name=你的服务名字,多个逗号分割
- 在java程序启动参数中指定 java agent.jar的位置
备注:skywalking-agent.jar 在 skywalking-agent 包的 根目录下面。
备注:如果是jar包启动
java -javaagent:xxx路径\skywalking-agent.jar=agent.service_name=服务名字 -jar xxx.jar
查看监控数据
访问:http://127.0.0.1:8080/,就可以查看通过 agent 推送到 Sykwalking 里面的数据。
服务
拓扑
调用链路追踪
redis的调用情况
数据库的访问情况
指标数据的存储
修改:apache-skywalking-apm\config\application.yml 里面 storage 标签下面的存储方式就行
storage:
selector: ${SW_STORAGE:mysql} #修改成mysql或者elasticsearch,默认是h2
elasticsearch:
namespace: ${SW_NAMESPACE:""}
clusterNodes: ${SW_STORAGE_ES_CLUSTER_NODES:localhost:9200}
protocol: ${SW_STORAGE_ES_HTTP_PROTOCOL:"http"}
connectTimeout: ${SW_STORAGE_ES_CONNECT_TIMEOUT:3000}
socketTimeout: ${SW_STORAGE_ES_SOCKET_TIMEOUT:30000}
responseTimeout: ${SW_STORAGE_ES_RESPONSE_TIMEOUT:15000}
numHttpClientThread: ${SW_STORAGE_ES_NUM_HTTP_CLIENT_THREAD:0}
user: ${SW_ES_USER:""}
password: ${SW_ES_PASSWORD:""}
trustStorePath: ${SW_STORAGE_ES_SSL_JKS_PATH:""}
trustStorePass: ${SW_STORAGE_ES_SSL_JKS_PASS:""}
.....
mysql:
properties:
jdbcUrl: ${SW_JDBC_URL:"jdbc:mysql://localhost:3306/swtest?rewriteBatchedStatements=true"}
dataSource.user: ${SW_DATA_SOURCE_USER:root}
dataSource.password: ${SW_DATA_SOURCE_PASSWORD:root@1234}
.....
标签:name,STORAGE,SW,agent,链路,SkyWalking,skywalking,ES,分布式
From: https://www.cnblogs.com/cxygg/p/17470847.html