Repository navigation
Pulse v0.1.0
The first stable release of Pulse: your Vintage Story server's vital signs on a Prometheus scrape endpoint.
Drop pulse_0.1.0.zip into the server's Mods/ folder, start the server, and http://127.0.0.1:9464/metrics answers with the full picture: tick rate and tick time (histogram, p95 and p99 included) against the configured budget, the engine's own tick busy time (the /stats number, the one that shows load climbing long before TPS drops), players with ping and deaths, entities with a top-ten breakdown by type, chunks, the worldgen queue, TCP and UDP traffic, autosave pause counts and durations, log health counters with four engine warnings worth alerting on, and the .NET runtime's own GC, memory, CPU and thread pool families.
Three ways to consume it: point a Prometheus at the endpoint (the contrib/grafana folder holds a fully provisioned dashboard behind two docker commands), let a game panel read /metrics directly (the first panel integration was built that way in an afternoon), or add pulseotlp_0.1.0.zip beside the base mod to push everything over OTLP to an OpenTelemetry collector, Grafana Cloud, Datadog and the rest.
The base mod is one dll with nothing bundled. The endpoint binds loopback by default, on purpose. A bind failure, an unreachable collector or a future engine change in the deep-metrics probe all degrade cleanly and can never take the game server down.
Field record for this release line: five prereleases in the open, a hosting provider running it in production testing, a third-party panel consuming the endpoint, and the OTLP path verified against the official collector. Ships from CI with 126 unit tests, 20 embedded-server scenarios and a 31-mutation check, quality gate green at the 80% coverage bar.
Vintage Story 1.22.x, dedicated server only, .NET 10. Also runs on the Stratum and Lithos server forks.