Skip to main content

Intercepts json formatted metrics from process stdin and sends to AWS Cloudwatch

Project description

stdin_to_cloudwatch

CircleCI

This tool is intended to process input fromstdin and publish some metrics encoded in the log stream. It looks for log lines that match a certain format and publishes to Cloudwatch metrics. The lines that not match are neither filtered nor altered and are written to stdout. The format for the metrics follows:

{
  "Environ/SomeNamespace": 
    [
      {
        "AMetricName": 2558219, 
        "Units": "Milliseconds",
      }
    ]
}

Possible values for Units are:

"Seconds"|"Microseconds"|"Milliseconds"|"Bytes"|"Kilobytes"|"Megabytes"|"Gigabytes"|"Terabytes"|"Bits"|"Kilobits"|"Megabits"|"Gigabits"|"Terabits"|
"Percent"|"Count"|"Bytes/Second"|"Kilobytes/Second"|"Megabytes/Second"|"Gigabytes/Second"|"Terabytes/Second"|"Bits/Second"|"Kilobits/Second"|"Megabits/Second"|
"Gigabits/Second"|"Terabits/Second"|"Count/Second"|"None"

(Same as put-metric-data units)

Usage

your_script | stdin_to_cloudwatch -i <django|none> -r <region> [-d <DimensionName=DimensionValue>]

Use stdin_to_cloudwatch -h for help.

AWS credentials are managed by boto3, so refer to boto documentation for further information.

Intention

Intention behind this tool is to decouple metrics publishing from the main app. With this tool publishing is a responsibility of infrastructure.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

stdin_to_cloudwatch-0.0.16.tar.gz (3.8 kB view hashes)

Uploaded Source

Built Distribution

stdin_to_cloudwatch-0.0.16-py3-none-any.whl (6.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page