mirror of
https://github.com/simonw/datasette.git
synced 2026-11-14 14:18:30 +01:00
Review polish: fix stale exemplar context, dedupe rationales, close test gaps
- The exemplars docs described "the pinned opentelemetry-exporter-prometheus" and "Datasette's own Prometheus exporter" - context from demo/plugin work that is no longer part of this stack. Reworded to stand alone. - Saturate a num_sql_threads=1 pool and assert the queue-depth gauge reads above zero - the headline alerting metric previously only had an absence test, and this also pins the private ThreadPoolExecutor._work_queue attribute it depends on. - Pin error.type on the write path of db.client.operation.duration - the write wrappers time a different code path than the read one already tested. - Isolate the non-threaded-mode gauge test from other live instances instead of comparing global observation counts, which a GC pass could shift. - Halve the metrics banner, point conftest's meter note at it, compact the interrupted-counter call-site comment to a registry pointer, note why instrument and registry descriptions are separate strings, and stop calling the metric dimension a "later phase" now that metrics shipped. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012U7coQfVu8nK2R4q2mCULA
This commit is contained in:
parent
000a023aa0
commit
8f49def8cb
5 changed files with 104 additions and 42 deletions
|
|
@ -938,13 +938,9 @@ class Database:
|
|||
if not timeout_expected:
|
||||
span.set_status(Status(StatusCode.ERROR, str(e)))
|
||||
span.record_exception(e)
|
||||
# A counter rather than only a span, because this is the
|
||||
# one thing an operator wants a rate and an alert on, and
|
||||
# spans under a 1% sampler cannot provide either. An
|
||||
# expected timeout - a caller that opted into a shorter
|
||||
# budget, like facet suggestion - is not counted, for the
|
||||
# same reason it is not a span error: it fires routinely
|
||||
# by design and would drown the signal this exists for.
|
||||
# Expected timeouts (a caller that opted into a shorter
|
||||
# budget, like facet suggestion) are not counted - see
|
||||
# the M_QUERIES_INTERRUPTED registry entry for why.
|
||||
record_query_interrupted(self.name)
|
||||
raise
|
||||
except Exception as e:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue