package
1.300045.0
Repository: https://github.com/aws/amazon-cloudwatch-agent.git
Documentation: pkg.go.dev

# README

AWS AppSignals Processor for Amazon Cloudwatch Agent

The AWS AppSignals processor is used to reduce the cardinality of telemetry metrics and traces before exporting them to CloudWatch Logs via EMF and X-Ray respectively. It reduces the cardinality of metrics/traces via 3 types of actions, keep, drop and replace, which are configured by users. CloudWatch Agent(CWA) customers will configure these rules with their CWA configurations.

Note: Traces support only replace actions and are implicitly pulled from the logs section of the CWA configuration

Status
Stability[beta]
Supported pipeline typesmetrics, traces
Distributions[amazon-cloudwatch-agent]

Exporter Configuration

The following exporter configuration parameters are supported.

NameDescriptionDefault
resolversPlatform processor is being configured for. Currently supports EKS. EC2 platform will be supported in the future.[eks]
rulesCustom configuration rules used for filtering metrics/traces. Can be of type drop, keep, replace.[]

rules

The rules section defines the rules (filters) to be applied

NameDescriptionDefault
selectorsList of metrics/traces dimension matchers.[]
actionAction being applied for the specified selector. keep, drop, replace""
rule_name(Optional) Name of rule.[]
replacements(Optional) List of metrics/traces replacements to be executed. Based on specified selectors. requires action = replace[]

selectors

A selectors section defines a matching against the dimensions of incoming metrics/traces.

NameDescriptionDefault
dimensionDimension of metrics/traces""
matchglob used for matching values of dimensions""

replacements

A replacements section defines a matching against the dimensions of incoming metrics/traces for which value replacements will be done. action must be replace

NameDescriptionDefault
target_dimensionDimension to replace""
valueValue to replace current dimension value with""

AWS AppSignals Processor Configuration Example

awsapplicationsignals:
    resolvers: ["eks"]
    rules:
      - selectors:
          - dimension: Operation
            match: "POST *"
          - dimension: RemoteService
            match: "*"
        action: keep
        rule_name: "keep01"
      - selectors:
           - dimension: Operation
             match: "GET *"
           - dimension: RemoteService
             match: "*"
        action: keep
        rule_name: "keep02"
      - selectors:
           - dimension: Operation
             match: "POST *"
        action: drop
        rule_name: "drop01"
      - selectors:
           - dimension: Operation
             match: "*"
        replacements:
          - target_dimension: RemoteOperation
            value: "This is a test string"
        action: replace
        rule_name: "replace01"

Amazon CloudWatch Agent Configuration Example

{
          "agent": {
            "region": "us-west-2",
            "debug": true
          },
          "traces": {
            "traces_collected": {
              "app_signals": {}
            }
          },
          "logs": {
            "metrics_collected": {
              "app_signals": {
                "rules": [
                  {
                    "selectors": [
                      {
                        "dimension": "Service",
                        "match": "pet-clinic-frontend"
                      },
                      {
                        "dimension": "RemoteService",
                        "match": "customers-service"
                      }
                  ],
                    "action": "keep",
                    "rule_name": "keep01"
                },
                {
                  "selectors": [
                    {
                      "dimension": "Operation",
                      "match": "GET *"
                    }
                ],
                  "action": "drop",
                  "rule_name": "drop01"
                }
              }
            }
          }
        }

# Packages

No description provided by the author
No description provided by the author
No description provided by the author

# Functions

NewFactory returns a new factory for the aws attributes processor.