Skip to content

Commit 31218d5

Browse files
authored
Merge pull request #59 from JohanDevl/feature/issue-21-monitoring-observability
feat: Comprehensive Monitoring and Observability System
2 parents 25c5ec3 + 6e22444 commit 31218d5

22 files changed

+7250
-7
lines changed

config/config.example.toml

Lines changed: 38 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -71,11 +71,46 @@ timezone = "UTC"
7171
# └─────────────────────────────────────────────────────────────────────────────┘
7272
[logging]
7373
# Application logging configuration
74-
level = "info"
75-
76-
# 📄 Log file location
74+
level = "info" # debug, info, warn, error, fatal
75+
format = "visual" # visual, json, text
76+
output = "stdout" # stdout, stderr, file
77+
rotation_enabled = false # Enable log rotation
78+
max_age_days = 30 # Maximum age of log files in days
79+
max_size_mb = 100 # Maximum size of log files in MB
80+
max_backups = 3 # Maximum number of backup files
81+
correlation_id = true # Enable correlation IDs for request tracing
82+
83+
# 📄 Log file location (when output = "file")
7784
file = "./logs/app.log"
7885

86+
# ┌─────────────────────────────────────────────────────────────────────────────┐
87+
# │ 📊 MONITORING AND OBSERVABILITY │
88+
# └─────────────────────────────────────────────────────────────────────────────┘
89+
[monitoring]
90+
# Enable monitoring and observability features
91+
enabled = true
92+
metrics_enabled = true # Enable Prometheus metrics
93+
tracing_enabled = true # Enable OpenTelemetry tracing
94+
health_checks_enabled = true # Enable health check endpoints
95+
metrics_port = 9090 # Port for metrics and health endpoints
96+
metrics_path = "/metrics" # Path for Prometheus metrics
97+
98+
# Tracing configuration (OpenTelemetry)
99+
[tracing]
100+
enabled = true
101+
service_name = "export-trakt-letterboxd"
102+
service_version = "1.0.0"
103+
environment = "production" # production, staging, development
104+
jaeger_endpoint = "http://localhost:14268/api/traces" # Optional Jaeger endpoint
105+
sampling_rate = 0.1 # Sampling rate (0.0 to 1.0, 0.1 = 10% of traces)
106+
107+
# Alerting configuration
108+
[alerts]
109+
webhook_url = "" # Optional webhook URL for alerts
110+
email_enabled = false # Enable email alerts
111+
slack_enabled = false # Enable Slack alerts
112+
rate_limit_minutes = 5 # Rate limit for alerts (prevent spam)
113+
79114
# ┌─────────────────────────────────────────────────────────────────────────────┐
80115
# │ 🌐 INTERNATIONALIZATION SETTINGS │
81116
# └─────────────────────────────────────────────────────────────────────────────┘

0 commit comments

Comments
 (0)