Agent集成

背景

ShardingSphere-Agent 是独立自主设计,基于Bytebuddy字节码增加的项目,基于插件化的设计,可以无缝隙的与ShardingSphere集成,

目前有提供 Log, metrics, APM 等可观测性功能。

使用方法

本地构建

  1. > cd shardingsphere/shardingsphere-agent
  2. > mvn clean install

远程下载(暂未发布)

  1. > weget http://xxxxx/shardingsphere-agent.tar.gz
  2. > tar -zxvcf shardingsphere-agent.tar.gz

启动时添加参数

  1. -javaagent: \absolute path\shardingsphere-agent.jar

Agent配置

在本地打包目录和解压缩目录下找到: agent.yaml

  1. applicationName: shardingsphere-agent # 应用名称
  2. ignoredPluginNames: #忽略的插件集合,表示集合里面的插件不生效
  3. - Opentracing
  4. - Jaeger
  5. - Zipkin
  6. - Prometheus
  7. - Logging
  8. plugins:
  9. Prometheus:
  10. host: "localhost" #prometheus暴露的host
  11. port: 9090 #prometheus暴露的端口
  12. props:
  13. JVM_INFORMATION_COLLECTOR_ENABLED : "true"
  14. Jaeger:
  15. host: "localhost" #jaeger服务的host
  16. port: 5775 #jaeger服务的端口
  17. props:
  18. SERVICE_NAME: "shardingsphere-agent"
  19. JAEGER_SAMPLER_TYPE: "const"
  20. JAEGER_SAMPLER_PARAM: "1"
  21. JAEGER_REPORTER_LOG_SPANS: "true"
  22. JAEGER_REPORTER_FLUSH_INTERVAL: "1"
  23. Zipkin:
  24. host: "localhost" #zipkin服务的host
  25. port: 9411 #zipkin服务的prot
  26. props:
  27. SERVICE_NAME: "shardingsphere-agent"
  28. URL_VERSION: "/api/v2/spans" #zipkin服务的抓取span的uri
  29. Logging:
  30. props:
  31. LEVEL: "INFO" #打印的日志级别
  32. ``
  33. 以上为agent的所有配置,注意:当配置 ignoredPluginNames时候,表示集合里面的插件会被忽略!