Zum Hauptinhalt springen
Der Standalone AppSignal Agent betreibt standardmäßig einen StatsD-Server über UDP auf localhost Port 8125. Sie können diesen nutzen, um Metriken aus anderen Komponenten Ihrer Infrastruktur aufzunehmen. Alle hinzugefügten Metriken können als benutzerdefinierte Metriken innerhalb von AppSignal verwendet werden.
Wenn Sie mehrere AppSignal-instrumentierte Anwendungen gleichzeitig auf demselben Server ausführen, sollte die Konfigurationsoption enable_statsd für alle bis auf eine deaktiviert sein, oder die Konfigurationsoption statsd_port sollte verwendet werden, um jeden StatsD-Server auf einem anderen Port verfügbar zu machen.

Unterstützte Metriken

Die folgenden StatsD-Metriken werden derzeit unterstützt:
  • gauge
  • counter
  • timers
Andere, nicht unterstützte Metriktypen werden ignoriert.

Tagging

Der StatsD-Server unterstützt die DogStatsD-Erweiterung, was bedeutet, dass Tags für Metriken unterstützt werden.

Beispiel

Das folgende Beispiel in Ruby zeigt, wie dies mit dem statsd-instrument-Gem funktioniert.
require 'statsd-instrument'

StatsD.backend = StatsD::Instrument::Backends::UDPBackend.new("localhost:8125", :datadog)

# Gauge
StatsD.gauge 'gauge', 2.0
StatsD.gauge 'gauge_with_tags', 3.0, tags: ['hostname:frontend1'], sample_rate: 0.9

# Counter
10.times do
  StatsD.increment 'counter'
  StatsD.increment 'counter_with_key_value_tags', tags: ['hostname:frontend1']
  StatsD.increment 'counter_with_only_key_tags', tags: ['important']
end

# Timing
10.times do
  StatsD.measure 'timing', 2.55
  StatsD.measure 'timing_with_tags', 3.55, tags: ['hostname:frontend1']
end
Dies dient nur zur Veranschaulichung; es ist weitaus nützlicher, dies aus anderen Sprachen heraus zu verwenden, die nicht direkt von AppSignal unterstützt werden. Sie könnten dies zum Beispiel verwenden, um Metriken aus einer PHP- oder .NET-App zu sammeln. Es gibt zahlreiche Tools, die StatsD-Metriken aus der JVM oder verschiedenen Datenbanken und Webservern extrahieren können. Wir sind gespannt, welche Anwendungsfälle Sie finden, lassen Sie es uns wissen!