mirror of
https://github.com/dani-garcia/vaultwarden.git
synced 2025-12-10 17:23:04 +03:00
[PR #6202] feat: Add comprehensive Prometheus metrics support #2439
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/dani-garcia/vaultwarden/pull/6202
Author: @rossigee
Created: 8/20/2025
Status: 🔄 Open
Base:
main← Head:feature/prometheus-metrics📝 Commits (8)
3cbe12afeat: Add comprehensive Prometheus metrics support8fac5f5fix: Resolve compilation errors and improve Docker build for metrics4d7f166remove: Drop test-metrics.sh script in favor of unit tests64998f5Merge branch 'main' into feature/prometheus-metrics2b6a146fix typo in description of helo_name (#6194)c209280Merge branch 'feature/prometheus-metrics' of ssh://github.com/rossigee/vaultwarden into feature/prometheus-metrics14ec085fix: add missing DbConn import in metrics.rs0568f00Merge branch 'main' into feature/prometheus-metrics📊 Changes
18 files changed (+1782 additions, -6 deletions)
View changed files
📝
Cargo.lock(+15 -0)📝
Cargo.toml(+5 -0)➕
METRICS.md(+125 -0)➕
MONITORING.md(+394 -0)📝
README.md(+36 -0)📝
docker/Dockerfile.debian(+11 -2)➕
examples/metrics-config.env(+100 -0)➕
src/api/metrics.rs(+127 -0)➕
src/api/middleware.rs(+104 -0)📝
src/api/mod.rs(+4 -0)📝
src/api/web.rs(+3 -1)📝
src/config.rs(+30 -0)➕
src/db/metrics.rs(+80 -0)📝
src/db/mod.rs(+2 -0)📝
src/main.rs(+29 -3)➕
src/metrics.rs(+290 -0)➕
src/metrics_test.rs(+196 -0)➕
tests/metrics_integration_test.rs(+231 -0)📄 Description
Summary
This PR adds comprehensive Prometheus metrics support to Vaultwarden, providing observability into application performance, database health, authentication patterns, and business metrics.
Key Features
/metrics(disabled by default)--features enable_metricsMetrics Categories
Security Considerations
ENABLE_METRICS=trueDocumentation
METRICS.mdMONITORING.mdTest Plan
Breaking Changes
None - this is an optional feature that's disabled by default.
Files Added/Modified
src/api/metrics.rs- Metrics endpoint implementationMETRICS.md- Configuration and usage guideMONITORING.md- Complete monitoring setup guideexamples/metrics-config.env- Configuration examplesscripts/test-metrics.sh- Testing scriptCargo.toml- Added optional prometheus dependencyREADME.md- Added metrics feature documentationdocker/Dockerfile.debian- Support for extra features in build🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.