About this project

Pulse is a production observability starter for Spring Boot that bundles the monitoring and reliability features typically missing from the default stack. It requires only a single Maven dependency and runs without any agent, bytecode weaving, or custom runtime. Core features enabled by default include a cardinality firewall that caps per-meter tag cardinality to prevent metric cost explosions, timeout-budget propagation that carries remaining deadlines across HTTP and Kafka calls, automatic context propagation across @Async, @Scheduled, and Kafka consumers, a trace-context guard that detects upstream traceparent stripping, OTel-aligned structured logs with deploy/commit/pod/region metadata and PII masking, and stable SHA-256 exception fingerprints that group the same bug across deploys. Additional distributed-systems extras include a dependency health map, retry-amplification detection, multi-tenant context, request priority, container-aware memory metrics, Kafka time-based lag, request fan-out tracking, SLO-as-code with PrometheusRule generation, Resilience4j auto-instrumentation, background-job observability, database N+1 and slow-query detection, Caffeine cache binding, OpenFeature correlation, continuous-profiling correlation, a wide-event API, graceful drain with OTel flush, fleet config-drift detection, a live diagnostic actuator UI, and sampling controls. The library is Micrometer-native and OTLP-friendly, compatible with Java 21 and 25, Spring Boot 4.0+, Logback and Log4j2, and GraalVM native image (best-effort). It ships with a pre-built Grafana dashboard, alerts, and runbooks. Performance overhead is JMH-benchmarked: the cardinality firewall hot path measures approximately 17 ns/op and span event emission approximately 25 ns/op on JDK 21 Apple M-series hardware. Build quality includes Error Prone, NullAway, Spotless, JaCoCo coverage gates, CodeQL security scanning, CycloneDX SBOM generation, Sigstore keyless signing, multi-JDK CI, and reproducible builds. The project is licensed under MIT and published on Maven Central as io.github.arun0009:pulse-spring-boot-starter.