From bf02f6b1cae96a05883b6676186feea94bbda617 Mon Sep 17 00:00:00 2001 From: castaneai Date: Fri, 17 May 2024 19:48:06 +0900 Subject: [PATCH] docs: add backend timeline with metrics --- docs/backend_timeline.png | Bin 0 -> 46118 bytes docs/metrics.md | 7 +++++++ 2 files changed, 7 insertions(+) create mode 100644 docs/backend_timeline.png diff --git a/docs/backend_timeline.png b/docs/backend_timeline.png new file mode 100644 index 0000000000000000000000000000000000000000..1f3a9e4fef49caa7222d798cc3fe746dec4a7187 GIT binary patch literal 46118 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 B_Vxe( literal 0 HcmV?d00001 diff --git a/docs/metrics.md b/docs/metrics.md index 060ae55..a7a7393 100644 --- a/docs/metrics.md +++ b/docs/metrics.md @@ -14,6 +14,13 @@ minimatch Backend exposes metrics in OpenTelemetry format to help monitor perfor | `minimatch.backend.assigner_latency` | Histogram | Latency of Assigner calls. | | `minimatch.backend.assign_to_redis_latency` | Histogram | Latency to write Assign results to Redis. If this value is slow, you may have a Redis performance problem or a lock conflict with tickets_fetched or other backends. | +## Backend Timeline + +The following timeline shows the process flow of minimatch Backend and the corresponding metrics. + +![](./backend_timeline.png) + + ## Meter provider minimatch uses the global `MeterProvider` by default.