-
-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Labels
priority:highAddress within 30 daysAddress within 30 daystype:loggingLogging and observabilityLogging and observability
Description
Problem
No metrics collection:
- Cannot measure performance
- No alerting capability
- No dashboard support
Proposed Solution
Prometheus Integration
import "github.com/prometheus/client_golang/prometheus"
var (
tasksTotal = prometheus.NewCounterVec(
prometheus.CounterOpts{
Name: "neona_tasks_total",
Help: "Total number of tasks processed",
},
[]string{"status", "connector"},
)
taskDuration = prometheus.NewHistogramVec(
prometheus.HistogramOpts{
Name: "neona_task_duration_seconds",
Help: "Task execution duration",
Buckets: prometheus.DefBuckets,
},
[]string{"connector"},
)
activeWorkers = prometheus.NewGauge(
prometheus.GaugeOpts{
Name: "neona_active_workers",
Help: "Number of active workers",
},
)
)Metrics Endpoint
GET /metrics
# HELP neona_tasks_total Total number of tasks processed
# TYPE neona_tasks_total counter
neona_tasks_total{status="completed",connector="claude"} 142
neona_tasks_total{status="failed",connector="claude"} 3
Key Metrics
| Metric | Type | Labels |
|---|---|---|
neona_tasks_total |
Counter | status, connector |
neona_task_duration_seconds |
Histogram | connector |
neona_active_workers |
Gauge | - |
neona_http_requests_total |
Counter | method, path, status |
neona_db_connections |
Gauge | - |
Acceptance Criteria
- Prometheus client integrated
-
/metricsendpoint - Key business metrics
- HTTP request metrics
- Database connection metrics
References
- Parent Epic: 📊 Epic: Observability & Configuration #78
Metadata
Metadata
Assignees
Labels
priority:highAddress within 30 daysAddress within 30 daystype:loggingLogging and observabilityLogging and observability