Make the cache stats count what is cached, fetched and transcoded (closes #56)
check / check (push) Successful in 18s
check / check (push) Successful in 18s
Cache.Stats read request_cache and output_content, which nothing writes, so TotalItems and TotalSizeBytes were always 0. They now count source_content plus variant_content and use UsageBytes; a disabled disk cache reports 0 for both. The upstream fetch count and bytes and the transform count never moved: Get now passes the bytes it fetched (including those read before a failed body read) and counts each successful transcode. Hits, misses and these counters are written with context.WithoutCancel, so a client disconnect or the request timeout no longer loses them. The unused tables stay; metaCache is #70. Model: opus-5-5
This commit was merged in pull request #144.
This commit is contained in:
@@ -42,6 +42,18 @@ exhaustion
|
||||
that is sooner, never negative; an allowlisted host's URL that has an `exp`
|
||||
follows it too; `immutable` stays, as freshness now ends at the expiry;
|
||||
documented in `README.md`.
|
||||
- 2026-09-28 cache stats report real numbers (closes #56): `Cache.Stats`
|
||||
counts the cached source images and processed variants (`source_content`
|
||||
plus `variant_content`) and takes their size from `Cache.UsageBytes`,
|
||||
instead of reading `request_cache` and `output_content`, which nothing
|
||||
writes; those two tables are left in the schema; a disabled disk cache
|
||||
reports no items and no size. A hit is counted even when the request
|
||||
context has ended. A miss is counted after it is served or fails, also
|
||||
when the request context has ended by then, with the bytes it read from
|
||||
upstream, so `upstream_fetch_count` and `upstream_fetch_bytes` move,
|
||||
including for an upstream body that fails partway or a fetched source
|
||||
that then fails the magic byte check; `transform_count` counts each image
|
||||
the image processor transcodes.
|
||||
- 2026-09-28 strip metadata from processed images (closes #82): every output is
|
||||
exported with govips' `StripMetadata`, so it carries no EXIF, XMP, IPTC or ICC
|
||||
profile; the image is first turned upright with `AutoRotate` (before sizes are
|
||||
|
||||
Reference in New Issue
Block a user