You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/design/core/metrics/Design.md
+7-1Lines changed: 7 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
### Metric
3
3
* A representation of data collected
4
4
* Metric can be one of the following types: Counter, Gauge, Timer
5
-
* Metric can have tags. A Tag represent the category it belongs to (like Default, HttpClient, Streaming etc)
5
+
* Metric can be associated to a category. Some of the metric categories are Default, HttpClient, Streaming etc
6
6
7
7
### MetricRegistry
8
8
@@ -186,6 +186,12 @@ another class to filter metric categories that are not set in MetricConfiguratio
186
186
* It would be useful to get the low-level API metrics in these modules, so SDK will expose APIs to get an immutable version of the
187
187
MetricRegistry object so that upstream classes can use that information in their metric calculation.
188
188
189
+
### Reporting
190
+
* Collected metrics are reported to the configured publishers at the end of each Api Call by calling `registerMetrics(MetricRegistry)` method on MetricPublisher.
191
+
* The MetricRegistry argument in the registerMetrics method will have data on the entire Api Call including retries.
192
+
* This reporting is done in `MetricsExecutionInterceptor` via `afterExecution()` and `onExecutionFailure()` methods.
193
+
*`MetricsExecutionInterceptor` will always be the last configured ExecutionInterceptor in the interceptor chain
0 commit comments