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:
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. 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: ""