awsme
AWS CloudWatch client library to send metrics conveniently and efficiently
What it is and what it does
awsme is a CloudWatch metrics client library that wraps boto3 to simplify sending metrics to AWS CloudWatch. It supports both synchronous and asynchronous (threaded) metric sending, with optional buffering to batch metrics before transmission. By default, boto3 is an optional dependency, allowing the package to deploy with minimal overhead in AWS Lambda environments where the SDK is already available; outside Lambda, you install it via the boto3 extra.
The library lets you create a CloudWatch client with a namespace and default dimensions, then log individual metrics with optional per-metric dimensions, values, units, and storage resolution. It handles buffer flushing automatically at exit in standard applications, but provides an explicit flush method for Lambda functions where the process may be frozen before cleanup runs.
Use it for:
- Send application performance metrics to CloudWatch from a Python Lambda function without bundling boto3.
- Batch and asynchronously buffer metrics in a long-running application to reduce API call overhead.
- Attach consistent dimensions (e.g., version, environment) to all metrics from a service.
- Monitor custom application events (e.g., job completions, error counts) in CloudWatch dashboards.
- Test CloudWatch connectivity and AWS credentials from the command line using the included awsme-test tool.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Sends AWS CloudWatch metrics asynchronously and in batches from Python applications, with optional buffering and configurable dimensions.
No. The package is abandoned (last release 2019, no maintenance since early 2023) and depends on boto3 semantics that may have evolved. For new projects, use boto3 directly or a maintained CloudWatch wrapper. If you have legacy code already using awsme, it may still work, but expect no fixes for compatibility issues with modern Python or AWS SDK versions.
Install
awsme on PyPI
pip
pip install awsmeuv
uv add awsmepoetry
poetry add awsmeInstalling awsme
Before you install
Low install friction; depends only on click and attrs. Designed to deploy quickly in AWS Lambda by making boto3 optional. However, the package is abandoned—last release was 2019-03-07 and last commit 2023-02-10, so no maintenance or security updates are forthcoming.
License in practice
MIT license (permissive) allows commercial and private use with minimal restrictions, requiring only attribution.
Quickstart
pip install awsme
# For use outside Lambda, add boto3:
# pip install awsme[boto3]
from awsme import create_cloud_watch
cloud_watch = create_cloud_watch(
namespace='Application',
dimensions={'version': '1.0.0'},
)
cloud_watch.log('metric', dimensions={'key': 'dim'}, value=123)
Requires AWS credentials configured via environment variables or configuration files (boto3 dependency must be installed if running outside AWS Lambda).
Verify before relying
- Whether the package works correctly with modern versions of boto3, click, and attrs given its 2019 release date.
- Compatibility with Python versions beyond 3.6, which is the only version explicitly listed in classifiers.
Package facts
| License | MIT license (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — click, attrs |
| Maintenance | abandoned — 2,717 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 97,858/month — #13,123 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: awsme-1.0.0-py2.py3-none-any.whl
Keywords: awsme
Tags
More Monitoring packages
Wraps any iterable to display a real-time…
copyleft · top 100 on PyPI
opentelemetry-semantic-conventionsProvides generated Python code for…
permissive · top 100 on PyPI
opentelemetry-sdkProvides the reference implementation of the…
permissive · top 100 on PyPI
opentelemetry-apiProvides the abstract API and interfaces for…
permissive · top 100 on PyPI
opentelemetry-exporter-otlp-proto-httpExports OpenTelemetry observability data to an…
permissive · top 1,000 on PyPI
opentelemetry-instrumentationProvides automatic instrumentation commands and…
permissive · top 1,000 on PyPI
aws-embedded-metricsGenerates CloudWatch metrics embedded within…
permissive · top 5,000 on PyPI
lambda-warmer-pyA decorator that minimizes AWS Lambda cold…
permissive · top 15,000 on PyPI
awslabs.cloudwatch-mcp-serverExposes CloudWatch metrics, logs, alarms, and…
permissive · top 15,000 on PyPI
graphitesendSends metrics to Graphite's Carbon backend over…
unclear · top 15,000 on PyPI
signalfxPython client library for sending metrics,…
permissive · top 15,000 on PyPI
r7insight-pythonSends Python application logs and performance…
permissive · top 15,000 on PyPI
aioboto3Provides async/await support for AWS SDK…
permissive · top 1,000 on PyPI
mixpanel-py-asyncProvides asynchronous event batching and…
permissive · top 15,000 on PyPI
watchtowerWatchtower is a Python logging handler that…
permissive · top 1,000 on PyPI
aws-cdk.aws-cloudwatchDefines CloudWatch metrics, alarms, and…
permissive · top 15,000 on PyPI