441 Star 2.1K Fork 688

GVPSkyWalking / skywalking

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
dynamic-config.md 4.16 KB
一键复制 编辑 原始数据 按行查看 历史

Dynamic Configuration

SkyWalking Configurations are mostly set through application.yml and OS system environment variables.

At the same time, some of them support dynamic settings from an upstream management system.

Currently, SkyWalking supports two types of dynamic configurations: Single and Group.

This feature depends on upstream service, so it is DISABLED by default.

configuration:
  selector: ${SW_CONFIGURATION:none}
  none:
  grpc:
    host: ${SW_DCS_SERVER_HOST:""}
    port: ${SW_DCS_SERVER_PORT:80}
    clusterName: ${SW_DCS_CLUSTER_NAME:SkyWalking}
    period: ${SW_DCS_PERIOD:20}
  # ... other implementations

Single Configuration

Single Configuration is a config key that corresponds to a specific config value. The logic structure is:

{configKey}:{configVaule}

For example:

{agent-analyzer.default.slowDBAccessThreshold}:{default:200,mongodb:50}

Supported configurations are as follows:

Config Key Value Description Value Format Example
agent-analyzer.default.slowDBAccessThreshold Thresholds of slow Database statement. Overrides agent-analyzer/default/slowDBAccessThreshold of application.yml. default:200,mongodb:50
agent-analyzer.default.uninstrumentedGateways The uninstrumented gateways. Overrides gateways.yml. Same as gateways.yml.
alarm.default.alarm-settings The alarm settings. Overrides alarm-settings.yml. Same as alarm-settings.yml.
core.default.apdexThreshold The apdex threshold settings. Overrides service-apdex-threshold.yml. Same as service-apdex-threshold.yml.
core.default.endpoint-name-grouping The endpoint name grouping setting. Overrides endpoint-name-grouping.yml. Same as endpoint-name-grouping.yml.
core.default.log4j-xml The log4j xml configuration. Overrides log4j2.xml. Same as log4j2.xml.
agent-analyzer.default.traceSamplingPolicy The sampling policy for default and service dimension, override trace-sampling-policy-settings.yml. same as trace-sampling-policy-settings.yml
configuration-discovery.default.agentConfigurations The ConfigurationDiscovery settings. See configuration-discovery.md.

Group Configuration

Group Configuration is a config key corresponding to a group sub config item. A sub config item is a key-value pair. The logic structure is:

{configKey}: |{subItemkey1}:{subItemValue1}
             |{subItemkey2}:{subItemValue2}
             |{subItemkey3}:{subItemValue3}
             ...      

For example:

{core.default.endpoint-name-grouping-openapi}:|{customerAPI-v1}:{value of customerAPI-v1}
                                              |{productAPI-v1}:{value of productAPI-v1}
                                              |{productAPI-v2}:{value of productAPI-v2}
                                              

Supported configurations are as follows:

Config Key SubItem Key Description Value Description Value Format Example
core.default.endpoint-name-grouping-openapi The serviceName relevant to openAPI definition file. eg. serviceA. If the serviceName relevant to multiple files should add subItems for each files, and each subItem key should split serviceName and fileName with . eg. serviceA.API-file1,serviceA.API-file2 The openAPI definitions file contents(yaml format) for create endpoint name grouping rules. Same as productAPI-v2.yaml

Dynamic Configuration Implementations

Java
1
https://gitee.com/OpenSkywalking/sky-walking.git
git@gitee.com:OpenSkywalking/sky-walking.git
OpenSkywalking
sky-walking
skywalking
master

搜索帮助