Skip to content

Add initial tenets #1265

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

Closed
wants to merge 2 commits into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 27 additions & 0 deletions docs/design/core/metrics/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
**Design:** New Feature, **Status:**
[In Development](../../../README.md)

# SDK Tenets (unless you know better ones)

1. Metrics can be used to provide insights about application behavior to enhance performance, debug operational issues.
2. Enabling metrics should have minimal impact on the application performance.
3. Customers can publish the collected metrics into their desired monitoring platform.
4. Metrics are divided into different categories for granular control.
5. Customers can control the metrics collection cost by having the ability to enable/disable the metrics collection by category.
6. Metrics collected by SDK are namespaced to avoid collision with other application metrics.


# Project Introduction

This project introduces a feature that can collect and report SDK metrics data in your application.
These metrics can be used to gather insights into your application and tune the application for
the best performance. The metrics can help in debugging when the application is experiencing
high error rates.


# Project Details (WIP)

1. Metrics are disabled by default and should be enabled explicitly by customers. Enabling metrics will introduce small overhead.
2. Collected metrics are stored in customer's account. SDK cannot access the stored metrics from customer's account.