Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add metrics metadata #81

Merged
merged 17 commits into from
Jun 16, 2020

Conversation

heitorlessa
Copy link
Contributor

@heitorlessa heitorlessa commented Jun 15, 2020

Issue #, if available: #80

Description of changes:

Add support to high cardinal data as metadata in Metrics object.

from aws_lambda_powertools import Metrics
metrics = Metrics(service="booking", namespace="Airline")
metrics.add_metric(name="SuccessfulBooking", unit="Count", value=1)

metrics.add_metadata(key="username", value="lessa")
Exerpt output in CloudWatch Logs ```json:title=cloudwatch_logs.json { "SuccessfulBooking": 1.0, "_aws": { "Timestamp": 1592234975665, "CloudWatchMetrics": [ { "Namespace": "ExampleApplication", "Dimensions": [ [ "service" ] ], "Metrics": [ { "Name": "SuccessfulBooking", "Unit": "Count" } ] } ] }, "service": "booking", "booking_id": "booking_uuid" // highlight-line } ```

Docs

image

Checklist

Breaking change checklist

RFC issue #:

  • Migration process documented
  • Implement warnings (if it can live side by side)

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@codecov-commenter
Copy link

codecov-commenter commented Jun 15, 2020

Codecov Report

Merging #81 into develop will not change coverage.
The diff coverage is 100.00%.

Impacted file tree graph

@@            Coverage Diff            @@
##           develop       #81   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files           17        17           
  Lines          469       474    +5     
  Branches        41        42    +1     
=========================================
+ Hits           469       474    +5     
Impacted Files Coverage Δ
aws_lambda_powertools/metrics/base.py 100.00% <100.00%> (ø)
aws_lambda_powertools/metrics/metrics.py 100.00% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update dd6a1e6...4f736b8. Read the comment docs.

@heitorlessa
Copy link
Contributor Author

Addressed your feedback @cakepietoast that we chatted privately on adding a test for log_metrics with add_metadata

* develop:
  chore: cleanup tests (#79)
Copy link
Contributor

@to-mc to-mc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM now!

@heitorlessa heitorlessa merged commit f5aab39 into aws-powertools:develop Jun 16, 2020
heitorlessa referenced this pull request in heitorlessa/aws-lambda-powertools-python Jun 17, 2020
…tools-python into develop

* 'develop' of https://github.com/awslabs/aws-lambda-powertools-python: (104 commits)
  feat: add metrics metadata (#81)
  chore: cleanup tests (#79)
  chore: remove deprecated code before GA (#78)
  docs: customize contributing guide (#77)
  chore: move blockquotes as hidden comments
  chore: update CHANGELOG
  chore: bump version to 0.11.0 (#76)
  chore: version bump 0.10.1
  fix: default dimension creation now happens when metrics are serialized instead of on metrics constructor (#74)
  fix: default dimension creation now happens when metrics are serialized instead of on metrics constructor (#74)
  docs: fix contrast on highlighted code text (#73)
  feat: improve error handling for log_metrics decorator (#71)
  chore(deps): bump graphql-playground-html from 1.6.19 to 1.6.25 in /docs
  feat: add high level imports (#70)
  fix: correct env var name for publish to pypi test (#69)
  chore: version bump (#68)
  feat: add capture_cold_start_metric for log_metrics (#67)
  chore(deps): bump websocket-extensions from 0.1.3 to 0.1.4 in /docs (#66)
  feat: automate publishing to pypi (#58)
  feat: add pre-commit hooks (#64)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants