Export cache, eviction, upstream and transform metrics (closes #85)
check / check (push) Canceled after 0s
check / check (push) Canceled after 0s
New pixa_ metrics, none with labels: - source cache hits and misses, counted once per variant made or checked - cache usage and limit gauges; usage is set each time eviction reads it - eviction count and bytes, from the size_bytes the deleted row returns - upstream fetch duration histogram and fetch error counter - transform duration histogram and an in-progress gauge, both including the wait for a processing slot Removing a damaged file during reconciliation is not counted as an eviction. README lists every metric; the metrics config comment now says the pixa_ metrics are measured whether or not /metrics is served. Model: opus-5-5
This commit is contained in:
1 parent
fe5bf393b1
commit
7014d88956
9 files changed
+314
-113
No files matched your search
@@ -1167,10 +1167,33 @@ Each item below is one setting, named by its config key:
|
||||
- the Go runtime and process metrics
|
||||
- `pixa_cache_hits_total`: image requests served from the cache
|
||||
- `pixa_cache_misses_total`: image requests not served from the cache
|
||||
- `pixa_source_cache_hits_total`: variants made or checked whose source was
|
||||
in the cache
|
||||
- `pixa_source_cache_misses_total`: variants made or checked whose source
|
||||
was not in the cache
|
||||
- `pixa_cache_usage_bytes`: the bytes of sources and variants in the cache,
|
||||
as eviction last read them; eviction runs after each store and every five
|
||||
minutes
|
||||
- `pixa_cache_max_bytes`: the cache size limit, `cache_max_bytes`
|
||||
- `pixa_cache_evictions_total`: sources and variants removed by eviction
|
||||
- `pixa_cache_evicted_bytes_total`: the bytes those evictions freed
|
||||
- `pixa_upstream_fetches_total`: fetches of a source image that read any
|
||||
bytes
|
||||
- `pixa_upstream_fetch_bytes_total`: the bytes those fetches read
|
||||
- `pixa_upstream_fetch_duration_seconds`: a histogram of how long those
|
||||
fetches took, up to the last byte of the response
|
||||
- `pixa_upstream_fetch_errors_total`: fetches of a source image that failed,
|
||||
before or while reading the response
|
||||
- `pixa_transforms_total`: images converted
|
||||
- `pixa_transform_duration_seconds`: a histogram of how long those
|
||||
conversions took, including the wait for a processing slot
|
||||
- `pixa_transforms_in_progress`: images being converted or waiting for a
|
||||
processing slot
|
||||
|
||||
pixa measures the `pixa_` metrics whether or not `/metrics` is served. They
|
||||
have no labels, so their number never grows with the hosts and paths pixa
|
||||
serves. Requests that share work (see Limits) count one source cache hit or
|
||||
miss between them.
|
||||
|
||||
A request's `handler` label is the pattern of the route it matches, such as
|
||||
`/v1/image/*`, never its path. Requests that match no route share the label
|
||||
|
||||
Reference in new issue
Block a user