exporter-toolkit
statsd_exporter
exporter-toolkit | statsd_exporter | |
---|---|---|
4 | 3 | |
246 | 901 | |
0.8% | 0.7% | |
7.4 | 7.4 | |
12 days ago | 10 days ago | |
Go | Go | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
exporter-toolkit
-
blackbox exporter TLS
Should work with the --web.config.file flag when starting the Blackbox exporter. Sample config can be found at https://github.com/prometheus/exporter-toolkit/blob/master/docs/web-config.yml
- How to get data from the Prometheus node_exporter over the internet in a secure way?
-
No TLS or SSL for the Windows Exporter?
--web.config.file A web config for setting up TLS and Auth
statsd_exporter
-
Help: UDP proxy/relay to multiple destinations
It's part of the statsd_exporter.
- Ask HN: Prometheus vs. StatsD / Telegraf
-
Statsd + Prometheus on Grafana Cloud
package metrics import ( "fmt" "strings" "time" "github.com/alexcesaro/statsd" ) // Hybrid metrics type Hybrid struct { Statsd StatsdConfig Client *statsd.Client AttachLabels bool } // StatsdConfig ... type StatsdConfig struct { Host string Prefix string } // Init ... func (m *Hybrid) Init() error { // Set up the statsd client client, err := statsd.New( statsd.Address(m.Statsd.Host), statsd.Prefix(m.Statsd.Prefix), statsd.FlushPeriod(time.Second*1), ) if err != nil { return fmt.Errorf("Hybrid: Could not connect to %s: %s", m.Statsd.Host, err.Error()) } m.Client = client return nil } // Format key with labels func (m *Hybrid) formatKeyWithLabels(key string, labels map[string]string) string { // Do we want to attach labels? if m.AttachLabels == false { return key } // Use librato-style tags // metrim.name#tagName=val,tag2Name=val2:0|c // https://github.com/prometheus/statsd_exporter#tagging-extensions if len(key) == 0 { return key } formattedLabels := []string{} for labelKey, labelVal := range labels { formattedLabels = append(formattedLabels, fmt.Sprintf("%s=%s", labelKey, labelVal)) } joinedFormattedLabels := strings.TrimSpace(strings.Join(formattedLabels, ",")) if joinedFormattedLabels != "" { key = fmt.Sprintf("%s#%s", key, joinedFormattedLabels) } return strings.Trim(key, "#") } // Increment ... func (m *Hybrid) Increment(key string, labels map[string]string) { m.IncrementBy(key, 1, labels) } // IncrementBy ... func (m *Hybrid) IncrementBy(key string, by int, labels map[string]string) { updatedKey := m.formatKeyWithLabels(key, labels) if m.Client != nil { m.Client.Count(updatedKey, by) } } // Gauge ... func (m *Hybrid) Gauge(key string, value int, labels map[string]string) { updatedKey := m.formatKeyWithLabels(key, labels) if m.Client != nil { m.Client.Gauge(updatedKey, value) } }
What are some alternatives?
mikrotik-exporter - prometheus mikrotik device(s) exporter
pushgateway - Push acceptor for ephemeral and batch jobs.
django-prometheus - Export Django monitoring metrics for Prometheus.io
windows_exporter - Prometheus exporter for Windows machines
process-exporter - Prometheus exporter that mines /proc to report on selected processes
haproxy_exporter - Simple server that scrapes HAProxy stats and exports them via HTTP for Prometheus consumption
script_exporter - Prometheus exporter to execute scripts and collect metrics from the output or the exit status.
client_python - Prometheus instrumentation library for Python applications
prometheus - The Prometheus monitoring system and time series database.
samplicator - Send copies of (UDP) datagrams to multiple receivers, with optional sampling and spoofing
cronner - cron job runner; statsd metrics with optional DogStatsd event emissions
chaos-exporter - Prometheus Exporter for Litmus Chaos Metrics