Pular para o conteúdo principal
O Standalone AppSignal Agent executa um servidor StatsD sobre UDP em localhost na porta 8125 por padrão. Você pode usar isso para ingerir métricas de outros componentes da sua infraestrutura. Quaisquer métricas adicionadas podem ser usadas como métricas customizadas dentro do AppSignal.
Se você está executando várias aplicações instrumentadas pelo AppSignal ao mesmo tempo no mesmo servidor, a opção de configuração enable_statsd deve estar desabilitada para todas, exceto uma delas, ou a opção de configuração statsd_port deve ser usada para expor cada servidor StatsD em uma porta diferente.

Métricas suportadas

As seguintes métricas StatsD são suportadas atualmente:
  • gauge
  • counter
  • timers
Outros tipos de métricas não suportados serão ignorados.

Tagueamento

O servidor StatsD suporta a extensão DogStatsD, o que significa que tags para métricas são suportadas.

Exemplo

O exemplo a seguir em Ruby demonstra como isso funciona usando a gem statsd-instrument.
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
Isto é apenas para demonstrar; é muito mais útil usar isso a partir de outras linguagens que não são suportadas diretamente pelo AppSignal. Você poderia usar isso para coletar métricas de um app em PHP ou .NET, por exemplo. Existem inúmeras ferramentas disponíveis que podem extrair métricas StatsD da JVM ou de vários bancos de dados e servidores web. Estamos curiosos para ver quais casos de uso você encontra; avise-nos!