Skip to main content

aws_cloudwatch

Send metrics to AWS CloudWatch using the PutMetricData endpoint.

Introduced in version 3.36.0.

# Common config fields, showing default values
metrics:
aws_cloudwatch:
namespace: Benthos
path_mapping: ""
region: eu-west-1

It is STRONGLY recommended that you reduce the metrics that are exposed with a path_mapping like this:

metrics:
aws_cloudwatch:
namespace: Foo
path_mapping: |
if ![
"input.received",
"input.latency",
"output.sent",
].contains(this) { deleted() }

Fields​

namespace​

The namespace used to distinguish metrics from other services.

Type: string
Default: "Benthos"

flush_period​

The period of time between PutMetricData requests.

Type: string
Default: "100ms"

path_mapping​

An optional Bloblang mapping that allows you to rename or prevent certain metrics paths from being exported. When metric paths are created, renamed and dropped a trace log is written, enabling TRACE level logging is therefore a good way to diagnose path mappings. BETA FEATURE: Labels can also be created for the metric path by mapping meta fields.

Type: string
Default: ""

# Examples
path_mapping: this.replace("input", "source").replace("output", "sink")
path_mapping: |-
if ![
"benthos.input.received",
"benthos.input.latency",
"benthos.output.sent"
].contains(this) { deleted() }
path_mapping: |-
let matches = this.re_find_all_submatch("resource_processor_([a-zA-Z]+)_(.*)")
meta processor = $matches.0.1 | deleted()
root = $matches.0.2 | deleted()

region​

The AWS region to target.

Type: string
Default: "eu-west-1"

endpoint​

Allows you to specify a custom endpoint for the AWS API.

Type: string
Default: ""

credentials​

Optional manual configuration of AWS credentials to use. More information can be found in this document.

Type: object

credentials.profile​

A profile from ~/.aws/credentials to use.

Type: string
Default: ""

credentials.id​

The ID of credentials to use.

Type: string
Default: ""

credentials.secret​

The secret for the credentials being used.

Type: string
Default: ""

credentials.token​

The token for the credentials being used, required when using short term credentials.

Type: string
Default: ""

credentials.role​

A role ARN to assume.

Type: string
Default: ""

credentials.role_external_id​

An external ID to provide when assuming a role.

Type: string
Default: ""