You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
100 lines
2.9 KiB
100 lines
2.9 KiB
# Vaultwarden Metrics Configuration Examples
|
|
# Copy these variables to your .env file or set as environment variables
|
|
|
|
# ============================================
|
|
# Basic Metrics Configuration
|
|
# ============================================
|
|
|
|
# Enable metrics endpoint (disabled by default)
|
|
ENABLE_METRICS=true
|
|
|
|
# ============================================
|
|
# Security Configuration
|
|
# ============================================
|
|
|
|
# Option 1: No authentication (DEVELOPMENT ONLY)
|
|
# Leave METRICS_TOKEN unset for public access
|
|
# WARNING: This exposes potentially sensitive information
|
|
|
|
# Option 2: Plain text token (basic security)
|
|
# METRICS_TOKEN=your-secret-metrics-token-here
|
|
|
|
# Option 3: Argon2 hashed token (recommended for production)
|
|
# Generate with: vaultwarden hash
|
|
# METRICS_TOKEN='$argon2id$v=19$m=65540,t=3,p=4$...'
|
|
|
|
# ============================================
|
|
# Prometheus Scrape Configuration
|
|
# ============================================
|
|
|
|
# In your prometheus.yml:
|
|
#
|
|
# scrape_configs:
|
|
# - job_name: 'vaultwarden'
|
|
# static_configs:
|
|
# - targets: ['localhost:8080']
|
|
# metrics_path: '/metrics'
|
|
# # For token authentication:
|
|
# bearer_token: 'your-secret-metrics-token-here'
|
|
# # OR use query parameter:
|
|
# # params:
|
|
# # token: ['your-secret-metrics-token-here']
|
|
# scrape_interval: 30s
|
|
# scrape_timeout: 10s
|
|
|
|
# ============================================
|
|
# Build Configuration
|
|
# ============================================
|
|
|
|
# To enable metrics support, compile with:
|
|
# cargo build --features enable_metrics --release
|
|
|
|
# ============================================
|
|
# Other Vaultwarden Configuration
|
|
# ============================================
|
|
|
|
# Domain must be set for proper operation
|
|
DOMAIN=https://vault.example.com
|
|
|
|
# Database configuration
|
|
DATABASE_URL=data/db.sqlite3
|
|
|
|
# Admin panel (optional, but recommended for management)
|
|
ADMIN_TOKEN=your-admin-token-here
|
|
|
|
# SMTP configuration (optional)
|
|
# SMTP_HOST=smtp.example.com
|
|
# SMTP_FROM=vaultwarden@example.com
|
|
# SMTP_USERNAME=vaultwarden@example.com
|
|
# SMTP_PASSWORD=your-smtp-password
|
|
|
|
# Web vault enabled
|
|
WEB_VAULT_ENABLED=true
|
|
|
|
# Log level
|
|
LOG_LEVEL=info
|
|
|
|
# ============================================
|
|
# Example Grafana Queries
|
|
# ============================================
|
|
|
|
# Request rate:
|
|
# rate(vaultwarden_http_requests_total[5m])
|
|
|
|
# Error rate:
|
|
# rate(vaultwarden_http_requests_total{status=~"4..|5.."}[5m])
|
|
|
|
# Response time 95th percentile:
|
|
# histogram_quantile(0.95, rate(vaultwarden_http_request_duration_seconds_bucket[5m]))
|
|
|
|
# Active users:
|
|
# vaultwarden_users_total{status="enabled"}
|
|
|
|
# Database connection utilization:
|
|
# vaultwarden_db_connections_active / (vaultwarden_db_connections_active + vaultwarden_db_connections_idle) * 100
|
|
|
|
# Vault items by type:
|
|
# sum by (type) (vaultwarden_vault_items_total)
|
|
|
|
# Authentication attempts by status:
|
|
# rate(vaultwarden_auth_attempts_total[5m])
|