From 37a0ce2c6ad01a7439739c0794e74fd0b052bcae Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Tue, 30 Dec 2025 21:29:05 +0200 Subject: Add Prometheus Pushgateway and data ingestion tool MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This commit adds a complete Prometheus data ingestion solution: 1. Pushgateway Helm Chart (f3s/pushgateway/) - Standalone helm chart for Prometheus Pushgateway - Deployed to monitoring namespace - Receives pushed metrics via HTTP POST on port 9091 2. Prometheus Pusher (f3s/prometheus-pusher/) - Standalone Go binary (12MB) for pushing metrics to Pushgateway - Demonstrates all Prometheus metric types: * Counter (app_requests_total) * Gauge (app_active_connections, app_temperature_celsius) * Histogram (app_request_duration_seconds) * Labeled Counter (app_jobs_processed_total) - Pushes metrics every 15 seconds - Includes comprehensive documentation and examples 3. Prometheus Configuration - Updated additional-scrape-configs.yaml to scrape Pushgateway - Uses honor_labels to preserve pushed metric labels Architecture: Go Binary → Pushgateway → Prometheus → Grafana The pusher binary generates realistic example metrics and pushes them to Pushgateway in Prometheus text format. Prometheus then scrapes the Pushgateway and makes the metrics available for querying and alerting. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 --- f3s/prometheus-pusher/go.mod | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 f3s/prometheus-pusher/go.mod (limited to 'f3s/prometheus-pusher/go.mod') diff --git a/f3s/prometheus-pusher/go.mod b/f3s/prometheus-pusher/go.mod new file mode 100644 index 0000000..4576c38 --- /dev/null +++ b/f3s/prometheus-pusher/go.mod @@ -0,0 +1,16 @@ +module prometheus-pusher + +go 1.21 + +require github.com/prometheus/client_golang v1.20.5 + +require ( + github.com/beorn7/perks v1.0.1 // indirect + github.com/cespare/xxhash/v2 v2.3.0 // indirect + github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect + github.com/prometheus/client_model v0.6.1 // indirect + github.com/prometheus/common v0.55.0 // indirect + github.com/prometheus/procfs v0.15.1 // indirect + golang.org/x/sys v0.22.0 // indirect + google.golang.org/protobuf v1.34.2 // indirect +) -- cgit v1.2.3