
背景
ShardingSphere
Skyworking 可以监控很多组件,本次在生产环境搭建 Skyworking 监控 ShardingSphere-proxy 可以查看相关链路,分析 SQL 执行。

01 安装部署
wget https://mirrors.bfsu.edu.cn/apache/skywalking/8.6.0/apache-skywalking-apm-es7-8.6.0.tar.gztar -zxvf apache-skywalking-apm-es7-8.6.0.tar.gzmv apache-skywalking-apm-bin-es7/ skywalking/
02 配置端口
vi webapp/webapp.yml
server:port: 18189 #改下,8080collector:path: graphqlribbon:ReadTimeout: 10000# Point to all backend's restHost:restPort, split by ,listOfServers: 127.0.0.1:12800
03 启动项目
sh bin/startup.sh
访问地址:http://172.168.9.135:18189/ 空的啥啥没有

04 配置探针
部署 Skywalking javaagent
拷贝 agent 目录到所需位置. 日志,插件和配置都包含在包中,请不要改变目录结构.
增加JVM启动参数, -javaagent:/path/to/skywalking-agent/skywalking-agent.jar. 参数值为skywalking-agent.jar的绝对路径。
新的 agent package 目录结构如下:
+-- skywalking-agent+-- activationsapm-toolkit-log4j-1.x-activation.jarapm-toolkit-log4j-2.x-activation.jarapm-toolkit-logback-1.x-activation.jar...+-- configagent.config+-- pluginsapm-dubbo-plugin.jarapm-feign-default-http-9.x.jarapm-httpClient-4.x-plugin.jar.....skywalking-agent.jar
启动被监控应用.
高级特性
插件全部放置在 /plugins 目录中.新的插件,也只需要在启动阶段,放在目录中,就自动生效,删除则失效。
Log默认使用文件输出到 /logs目录中。
部署 java agent FAQs
Linux Tomcat 7, Tomcat 8
修改 tomcat/bin/catalina.sh,在首行加入如下信息。
CATALINA_OPTS="$CATALINA_OPTS -javaagent:/path/to/skywalking-agent/skywalking-agent.jar"; export CATALINA_OPTS
Windows Tomcat 7, Tomcat 8
修改 tomcat/bin/catalina.bat,在首行加入如下信息.
set "CATALINA_OPTS=-javaagent:/path/to/skywalking-agent/skywalking-agent.jar"
JAR file
在启动你的应用程序的命令行中添加 -javaagent 参数. 并确保在-jar参数之前添加它. 例如:
java -javaagent:/path/to/skywalking-agent/skywalking-agent.jar -jar yourApp.jar
05 ShardingSphere-Proxy 配置探针启动
复制探针配置
将 Skyworking 服务下面的 agent 文件夹下所有文件复制拷贝到 需要部署探针的 ShardingSphere 服务所在服务器。
#skyworking服务部署文件路径/home/skywalking/agent#远程拷贝探针文件至 sharding-proxy 所在服务器,文件路径保持一致mkdir -p home/skywalkingscp -r 172.168.9.135:/home/skywalking/agent home/skywalking
修改 ShardingSphere 启动配置
vi home/sharding-proxy/bin/start.sh
JAVA_OPTS=” -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Dskywalking.agent.service_name=Sharding-Proxy -Dorg.apache.shardingsphere.opentracing.tracer.class=org.apache.skywalking.apm.toolkit.opentracing.SkywalkingTracer -javaagent:/home/skywalking/agent/skywalking-agent.jar”
修改探针配置文件
agent.config配置 我直接改collector.backend_service = skywork部署服务地址了,修改服务后重新启动,刷新探针服务查看。
# 不同的namespace会导致调用链路追踪中断agent.namespace=${SW_AGENT_NAMESPACE:hmall}# 页面上展示的service的名称,也可以通过-Dskywalking.agent.service_name=xxx指定agent.service_name=${SW_AGENT_NAME:gateway}# 平台的调用地址,也可以通过-Dskywalking.collector.backend_service=127.0.0.1:80指定collector.backend_service=${SW_AGENT_COLLECTOR_BACKEND_SERVICES:172.28.51.141:11800}# 忽略指定后缀的请求收集agent.ignore_suffix=${SW_AGENT_IGNORE_SUFFIX:.jpg,.jpeg,.js,.css,.png,.bmp,.gif,.ico,.mp3,.mp4,.html,.svg}# 每3秒的采样率,负数代表100%agent.sample_n_per_3_secs=${SW_AGENT_SAMPLE:-1}

06 配置探针
部署 Skywalking javaagent
拷贝agent目录到所需位置. 日志,插件和配置都包含在包中,请不要改变目录结构.
增加JVM启动参数, -javaagent:/path/to/skywalking-agent/skywalking-agent.jar. 参数值为skywalking-agent.jar的绝对路径。
新的 agent package 目录结构如下:
+-- skywalking-agent+-- activationsapm-toolkit-log4j-1.x-activation.jarapm-toolkit-log4j-2.x-activation.jarapm-toolkit-logback-1.x-activation.jar...+-- configagent.config+-- pluginsapm-dubbo-plugin.jarapm-feign-default-http-9.x.jarapm-httpClient-4.x-plugin.jar.....skywalking-agent.jar
启动被监控应用
高级特性
插件全部放置在 /plugins 目录中.新的插件,也只需要在启动阶段,放在目录中,就自动生效,删除则失效.
Log 默认使用文件输出到 /logs目录中.
部署 Java agent FAQs
Linux Tomcat 7, Tomcat 8
修改 tomcat/bin/catalina.sh,在首行加入如下信息.
CATALINA_OPTS="$CATALINA_OPTS -javaagent:/path/to/skywalking-agent/skywalking-agent.jar"; export CATALINA_OPTS
Windows Tomcat 7, Tomcat 8
修改 tomcat/bin/catalina.bat,在首行加入如下信息.
set "CATALINA_OPTS=-javaagent:/path/to/skywalking-agent/skywalking-agent.jar"
JAR file
在启动你的应用程序的命令行中添加 -javaagent 参数. 并确保在-jar参数之前添加它. 例如:
java -javaagent:/path/to/skywalking-agent/skywalking-agent.jar -jar yourApp.jar
07 ShardingSphere-Proxy 配置探针启动
复制探针配置
将 Skyworking 服务下面的 agent 文件夹下所有文件复制拷贝到 需要部署探针的 ShardingSphere 服务所在服务器
#skyworking服务部署文件路径
/home/skywalking/agent
远程拷贝探针文件至ShardingSphere-Proxy所在服务器,文件路径保持一致
mkdir -p home/skywalkingscp -r 172.168.9.135:/home/skywalking/agent home/skywalking
修改 ShardingSphere 启动配置
vi home/sharding-proxy/bin/start.sh
JAVA_OPTS=" -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Dskywalking.agent.service_name=Sharding-Proxy -Dorg.apache.shardingsphere.opentracing.tracer.class=org.apache.skywalking.apm.toolkit.opentracing.SkywalkingTracer -javaagent:/home/skywalking/agent/skywalking-agent.jar"
修改探针配置文件
agent.config配置,我直接改collector.backend_service = skywork部署服务地址了,修改服务后重新启动,刷新探针服务查看
# 不同的namespace会导致调用链路追踪中断agent.namespace=${SW_AGENT_NAMESPACE:hmall}# 页面上展示的service的名称,也可以通过-Dskywalking.agent.service_name=xxx指定agent.service_name=${SW_AGENT_NAME:gateway}# 平台的调用地址,也可以通过-Dskywalking.collector.backend_service=127.0.0.1:80指定collector.backend_service=${SW_AGENT_COLLECTOR_BACKEND_SERVICES:172.28.51.141:11800}# 忽略指定后缀的请求收集agent.ignore_suffix=${SW_AGENT_IGNORE_SUFFIX:.jpg,.jpeg,.js,.css,.png,.bmp,.gif,.ico,.mp3,.mp4,.html,.svg}# 每3秒的采样率,负数代表100%agent.sample_n_per_3_secs=${SW_AGENT_SAMPLE:-1}
Metadata
Views | 1883 |
baidu_record | 1 |
git_baidu_submit | index |
rank_math_news_sitemap_robots | Array |
rank_math_analytic_object_id | 13 |
rank_math_internal_links_processed | 1 |
bigfa_ding | 1 |
rank_math_seo_score | 62 |
rank_math_contentai_score | Array |
rank_math_focus_keyword | ShardingSphere-Proxy 应用性能监控集成 skywalking 部署 |
rank_math_primary_category | 0 |
本文由郑思扬授权转载
发现文章有错误,对内容有疑问,都可以通过关注 ShardingSphere 微信公众号(Sharding-Sphere)或者添加小助手微信(ss_assistant_1),在后台留言或私信给我们。我们每周会挑选出一位热心小伙伴,送上一份精美的小礼品。快来扫码关注我们吧!
关于 Apache ShardingSphere
Apache ShardingSphere 是一款分布式 SQL 事务和查询引擎,可通过数据分片、弹性伸缩、加密等能力对任意数据库进行增强。





