

# Recuperar métricas personalizadas com o StatsD
<a name="CloudWatch-Agent-custom-metrics-statsd"></a>

É possível recuperar métricas personalizadas de suas aplicações ou seus serviços usando o atendente do CloudWatch com o protocolo `StatsD`. StatsD é uma solução de código aberto popular que pode coletar métricas de uma ampla variedade de aplicações. O StatsD é especialmente útil para instrumentar suas próprias métricas. Para obter um exemplo de uso do atendente do CloudWatch e do StatsD juntos, consulte [Como melhorar o monitoramento de suas métricas de aplicação personalizadas usando o atendente do Amazon CloudWatch](https://aws.amazon.com/blogs/devops/new-how-to-better-monitor-your-custom-application-metrics-using-amazon-cloudwatch-agent/).

`StatsD`O é compatível em servidores Linux e servidores em que o Windows Server esteja em execução. O CloudWatch oferece suporte ao seguinte formato do `StatsD`:

```
MetricName:value|type|@sample_rate|#tag1:
  value,tag1...
```
+ `MetricName`: uma string sem dois pontos, barras, caracteres \$1 ou caracteres @.
+ `value`: pode ser inteiro ou flutuante.
+ `type`: especifique `c` para contador, `g` para indicador, `ms` para temporizador, `h` para histograma ou `s` para conjunto.
+ `sample_rate`: (opcional) um flutuante entre 0 e 1, inclusive. Use somente para métricas de contador, histograma e temporizador. O valor padrão é 1 (amostragem de 100% do tempo).
+ `tags`: (opcional) uma lista separada por vírgulas das etiquetas. As etiquetas do `StatsD` são semelhantes às dimensões no CloudWatch. Use dois pontos para tags de chave/valor, como `env:prod`.

Você pode usar qualquer cliente `StatsD` que siga esse formato para enviar as métricas ao atendente do CloudWatch. Para obter mais informações sobre alguns dos clientes `StatsD` disponíveis, consulte a [página do cliente StatsD no GitHub](https://github.com/etsy/statsd/wiki#client-implementations). 

Para coletar essas métricas personalizadas, adicione uma linha `"statsd": {}` à seção `metrics_collected` do arquivo de configuração do atendente. Você pode adicionar essa linha manualmente. Se você usa o assistente para criar o arquivo de configuração, isso é feito para você. Para obter mais informações, consulte [Criar o arquivo de configuração do atendente do CloudWatch](create-cloudwatch-agent-configuration-file.md).

A configuração padrão do `StatsD` funciona para a maioria dos usuários. Há campos opcionais que podem ser adicionados, conforme necessário, à seção **statsd** do arquivo de configuração do agente:
+ `service_address`: o endereço de serviço que o atendente do CloudWatch deve ouvir. O formato de é `ip:port`. Se você omitir o endereço IP, o atendente escutará todas as interfaces disponíveis. Somente o formato UDP é compatível, portanto, você não precisa especificar um prefixo UDP. 

  O valor padrão é `:8125`.
+ `metrics_collection_interval`: com que frequência em segundos o plugin `StatsD` é executado e coleta métricas. O valor de padrão é de 10 segundos. O intervalo é de 1 a 172.000.
+ `metrics_aggregation_interval`: com que frequência em segundos o CloudWatch agrega métricas em pontos de dados únicos. O valor padrão é de 60 segundos.

  Por exemplo, se `metrics_collection_interval` for 10 e `metrics_aggregation_interval` for 60, o CloudWatch coletará dados a cada 10 segundos. Após cada minuto, as seis leituras de dados realizadas nesse minuto são agregadas em um único ponto de dados, que é enviado ao CloudWatch.

  O intervalo é de 0 a 172.000. Definir `metrics_aggregation_interval` como 0 desabilita a agregação de métricas do `StatsD`.
+ `allowed_pending_messages`: o número de mensagens UDP que podem ser enfileiradas. Quando a fila está cheia, o servidor StatsD começa a descartar pacotes. O valor padrão é 10000.
+ `drop_original_metrics`: opcional. Se você estiver usando o campo `aggregation_dimensions` na seção `metrics` para agrupar métricas em resultados agregados, por padrão, o agente enviará as métricas agregadas e as métricas originais que são separadas para cada valor da dimensão. Se você não quiser que as métricas originais sejam enviadas ao CloudWatch, é possível especificar esse parâmetro com uma lista de métricas. As métricas especificadas junto a esse parâmetro não têm suas métricas por dimensão relatadas ao CloudWatch. Em vez disso, somente as métricas agregadas são relatadas. Isso reduz o número de métricas que o agente coleta, reduzindo seus custos.

Veja a seguir um exemplo da seção **statsd** do arquivo de configuração do atendente, usando a porta padrão e intervalos de coleta e agregação personalizados.

```
{
   "metrics":{
      "metrics_collected":{
         "statsd":{
            "service_address":":8125",
            "metrics_collection_interval":60,
            "metrics_aggregation_interval":300
         }
      }
   }
}
```

## Visualizar métricas do StatsD importadas pelo atendente do CloudWatch
<a name="CloudWatch-view-statsd-metrics"></a>

Depois de importar métricas do StatsD para o CloudWatch, é possível visualizar essas métricas como gráficos de séries temporais e criar alarmes que podem observar essas métricas e notificar você, se elas violarem um limite especificado. O procedimento a seguir mostra como visualizar métricas do StatsD como um gráfico de séries temporais. Para obter mais informações sobre configuração de alarmes, consulte [Usar alarmes do Amazon CloudWatch](CloudWatch_Alarms.md).

**Para exibir métricas do StatsD no console do CloudWatch**

1. Abra o console do CloudWatch em [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. No painel de navegação, selecione **Métricas**.

1. Escolha o namespace para as métricas coletadas pelo atendente. Por padrão, é **CWAgent**, mas você pode ter especificado um namespace diferente no arquivo de configuração do atendente do CloudWatch.

1. Escolha uma dimensão de métrica; por exemplo, **Per-Instance Metrics** (Métricas por instância).

1. A guia **All metrics** (Todas as métricas) exibe todas as métricas dessa dimensão no namespace. Você pode fazer o seguinte:

   1. Para criar um gráfico de uma métrica, marque a caixa de seleção ao lado da métrica. Para selecionar todas as métricas, marque a caixa de seleção na linha de cabeçalho da tabela.

   1. Para classificar a tabela, use o cabeçalho da coluna.

   1. Para filtrar por recurso, escolha o ID do recurso e, em seguida, escolha **Adicionar à pesquisa**.

   1. Para filtrar por métrica, selecione o nome da métrica e, em seguida, escolha **Adicionar à pesquisa**.

1. (Opcional) Para adicionar esse gráfico a um painel do CloudWatch, escolha **Actions** (Ações), **Add to dashboard** (Adicionar ao painel).