Skywalking(7): 配置覆盖

Skywalking(7): 配置覆盖,第1张

在之前的案例中,我们每次部署应用都需要复制一份agent,修改其中的服务名称,这样显得非常麻烦。可以使用Skywalking提供的配置覆盖功能通过启动命令动态指定服务名,这样agent只需要部署一份即可。Skywalking支持的几种配置方式:

1、系统配置(System properties)

使用 skywalking. + 配置文件中的配置名作为系统配置项来进行覆盖.

  • 为什么需要添加前缀?

        agent的系统配置和环境与目标应用共享,所以加上前缀可以有效的避免冲突。

  • 案例

       通过如下进行 agent.service_name 的覆盖

-Dskywalking.agent.service_name=skywalking_mysql

2、探针配置(Agent options)

Add the properties after the agent path in JVM arguments。

-javaagent:/path/to/skywalking-agent.jar=[option1]=[value1],[option2]=[value2]
  • 案例

        通过 如下进行 agent.service_name 的覆盖

-javaagent:/path/to/skywalking-agent.jar=agent.service_name=skywalking_mysql
  • 特殊字符

        如果配置中包含分隔符( , 或者 = ) , 就必须使用引号包裹起来

-javaagent:/path/to/skywalking-agent.jar=agent.ignore_suffix='.jpg,.jpeg'

3、系统环境变量(System environment variables)
  • 案例

        由于agent.service_name配置项如下所示:

# The service name in UI 
agent.service_name=${SW_AGENT_NAME:Your_ApplicationName}

        可以在环境变量中设置SW_AGENT_NAME的值来指定服务名。

4、覆盖优先级

探针配置 > 系统配置 >系统环境变量 > 配置文件中的值

所以我们的启动命令可以修改为:

java -javaagent:/usr/local/skywalking/apache-skywalking-apm-bin/agent_mysql/skywalking-agent.jar - Dskywalking.agent.service_name=skywalking_mysql -jar skywalking_mysql.jar &

java -javaagent:/usr/local/skywalking/apache-skywalking-apm-bin/agent_mysql/skywalking-agent.jar=agent.service_name=skywalking_mysql -jar skywalking_mysql.jar &

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/870130.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-13
下一篇 2022-05-13

发表评论

登录后才能评论

评论列表(0条)

保存