Skip to content

Add a health endpoint and basic metrics to the kernel daemon #999

Description

@sirtimid

There is no operational visibility. grep -rn "prometheus|healthz|opentelemetry|metrics" packages/*/src returns nothing.

For anyone running this as a service, that means no way to answer "is it up", "is it keeping up", or "is it stuck" other than reading daemon.log. Combined with the run loop failing silently, a wedged kernel is currently undetectable without inspecting the log by hand.

Proposed:

  • A health endpoint reflecting actual liveness — specifically including run-loop state, not just process liveness.
  • Basic counters and gauges: deliveries processed, run-queue depth, crank duration, active vats, remote connections, retransmissions, revocations.
  • A format something standard can scrape. OpenTelemetry or a Prometheus text endpoint; either is fine, but it should not be bespoke.

Depends on the run-loop health issue — a health endpoint that reports healthy while the run loop is dead is worse than none.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions