Você pode rastrear métricas personalizadas em gráficos em seus dashboards do AppSignal.
Gauge
Um gauge registra um valor em um ponto específico no tempo. Se você reportar vários gauges com a mesma chave dentro da mesma janela de tempo, apenas o último valor é persistido. Use gauges quando você quer saber o estado atual de algo — o número de itens que existem agora, ou o tamanho atual de um recurso. Todas as métricas de host do AppSignal são armazenadas como gauges. Gauges são frequentemente usados com minutely probes para reportar periodicamente um valor instantâneo, como consultar o número de carrinhos de compras recentemente ativos ou conexões de banco de dados abertas a cada minuto. Exemplos: contagem de usuários ativos, tamanho do banco de dados, uso de disco, número de conexões abertas.Measurement
Um measurement rastreia uma dispersão de valores ao longo do tempo. O AppSignal armazena a média e a contagem para cada janela de tempo, permitindo que você crie gráficos como duração média, percentil 90/95 e throughput. Use measurements quando você está registrando um valor que varia entre eventos individuais e quer entender sua distribuição — não apenas seu valor atual. Por exemplo, você pode rastrear a duração de um job de background crítico (como e-mails de confirmação de pedido) para detectar lentidões antes que afetem seus usuários. Uma métrica measurement cria vários campos de métrica:- Count: quantas vezes o helper foi chamado. Útil para gráficos de throughput.
- Mean: o valor médio da métrica para o ponto no tempo.
- 90th percentile: o percentil 90 do valor da métrica para o ponto no tempo.
- 95th percentile: o percentil 95 do valor da métrica para o ponto no tempo.
Counter
Um counter acumula uma contagem total durante uma janela de tempo. Os valores do counter são somados para cada resolução — então na resolução de minuto ele mostra o total para esse minuto, e na resolução de hora ele mostra o total para essa hora. Use counters quando você quer acompanhar quantas vezes algo aconteceu, não que valor teve. Counters são especialmente úteis para monitorar a frequência de eventos críticos para o negócio. Por exemplo, ao rastrear tanto pedidos feitos quanto faturas criadas, você pode verificar se esses counters relacionados permanecem sincronizados e detectar discrepâncias precocemente. Quando o helper é chamado várias vezes, o total/soma de todas as chamadas é persistido. Counters são não-monotônicos: tanto valores positivos quanto negativos são suportados, então você pode incrementar e decrementar o mesmo counter. Para counters monotônicos de outros sistemas, não há validação de que os valores do counter só aumentem. Exemplos: pedidos feitos, faturas criadas, logins de usuários, jobs em background enfileirados, tentativas de pagamento falhas.Nomenclatura de métricas
Recomendamos nomear suas métricas de forma facilmente reconhecível. Embora você possa usar curinga em partes do nome da métrica para criação de dashboards, recomendamos usar isso apenas para pequenos agrupamentos e não usar IDs em nomes de métricas. Os nomes de métricas suportam apenas números, letras, pontos e sublinhados ([a-z0-9._]) como caracteres válidos. Quaisquer outros caracteres serão substituídos por um sublinhado pelo nosso processador. Você pode encontrar a lista de métricas conforme processadas em “Add Dashboard”.
Alguns exemplos de bons nomes de métricas são:
database_sizeaccount_countusers.countnotifier.failednotifier.performnotifier.success
Valores de métricas
Métricas suportam apenas números como valores válidos. Qualquer outro valor será silenciosamente ignorado ou gerará um erro conforme acionado pelo parser de números da linguagem de implementação. Para Ruby e Elixir suportamos double e integer como valores válidos:number é um valor válido.
Formatação de valor
Os gráficos do AppSignal têm vários formatos de exibição, como números, tamanhos de arquivo, durações, etc. Esses formatos ajudam na apresentação dos valores das métricas de uma forma legível por humanos. Selecionar uma entrada de formatador de valor não afeta os dados armazenados em nossos sistemas, apenas como ele é exibido. Para mostrar os valores das métricas corretamente usando esses formatadores, por favor verifique a tabela abaixo de como o valor deve ser reportado.Tamanho de arquivo
Valores de métrica que representam um tamanho de arquivo podem usar o formatador de tamanho de arquivo. Para especificar qual unidade de tamanho o valor reportado representa, o formatador de tamanho de arquivo permite vários valores de entrada. As opções disponíveis são:Size in BitSize in BytesSize in KilobitsSize in KilobytesSize in Megabytes
Size in Bitrenderizará “128 Bytes”Size in Bytesrenderizará “1 KB”Size in Kilobitsrenderizará “128 KB”Size in Kilobytesrenderizará “1 MB”Size in Megabytesrenderizará “1 GB”
Tags de métricas
Uma única métrica pode consistir em vários grupos de dados; por exemplo, uma métrica personalizada ‘total_orders’ poderia consistir em pedidos pendentes e processados. Você pode adicionar várias tags às métricas para insights mais profundos sobre os dados da métrica que o AppSignal está reportando. Cada tag será representada por sua linha em um gráfico do AppSignal. Por padrão, os helpers de métrica do AppSignal não definem tags em uma métrica personalizada. Como você pode usar tags em gráficos do AppSignal: Tags podem “rotular” uma linha na legenda do gráfico, facilitando a visualização do que cada linha representa quando você passa o mouse sobre elas. A filtragem com tags pode mostrar a mesma métrica em contextos diferentes em gráficos diferentes. Para aproveitar ao máximo as tags de métricas, aconselhamos o seguinte:- Seja consistente com a marcação: Para rastreamento e legibilidade ótimos do gráfico, recomendamos não reportar uma métrica personalizada tanto com quanto sem tags. Reportar a mesma métrica de maneiras diferentes pode criar confusão e dificultar a interpretação precisa dos dados.
- Sempre use as mesmas tags de métrica quando: Recomendamos usar a mesma combinação de tags sempre que você reportar uma métrica. Por exemplo, se uma métrica usa tags A e B em uma área da sua aplicação, ela deve usá-las em todas as áreas. Evite alterar as tags, pois a marcação consistente facilitará a criação de gráficos.
- Use um intervalo limitado de valores para tags de métricas: Para evitar gráficos excessivamente complexos ou ilegíveis, recomendamos usar um intervalo limitado de tags em suas métricas personalizadas, como regiões (EU, US e Ásia). Você pode realizar uma análise mais ampla dos dados de métrica da sua aplicação ao usar um intervalo limitado e preciso de tags para todos os dados de métrica da sua aplicação.
Renderizando métrica com e sem tags
Se você criou uma métrica personalizada e tem várias tags associadas a ela, você pode renderizar a métrica com e sem a tag ao mesmo tempo em um gráfico.Gráficos de métricas personalizadas
Uma vez que você começou a registrar métricas personalizadas, pode rastreá-las em gráficos personalizados usando o Graph Builder. Navegue até um dashboard existente ou use o botão “Add dashboard” na navegação do Dashboard para criar um novo e depois clique em “Add graph”.