Sobes.tech
Junior — Middle

De que formas é possível integrar um sistema de métricas no software?

sobes.tech IA

Resposta da IA

A integração do sistema de métricas no software permite monitorizar o desempenho, erros e comportamento da aplicação. As principais formas de integração:

  1. Utilização de bibliotecas de monitorização — por exemplo, cliente Prometheus para Go. São adicionadas chamadas no código para recolher métricas (contadores, histogramas, temporizadores).

  2. Exposição de métricas através de um endpoint HTTP — a aplicação abre uma URL especial, através da qual o sistema de monitorização recolhe os dados.

  3. Registo de métricas — gravação de métricas em logs, que depois são processados por sistemas externos.

  4. Ferramentas APM (Application Performance Monitoring) — integração com serviços externos (Datadog, New Relic), que recolhem e visualizam métricas.

Exemplo com Prometheus em Go:

import (
    "github.com/prometheus/client_golang/prometheus"
    "github.com/prometheus/client_golang/prometheus/promhttp"
    "net/http"
)

var opsProcessed = prometheus.NewCounter(prometheus.CounterOpts{
    Name: "myapp_processed_ops_total",
    Help: "O número total de eventos processados",
})

func init() {
    prometheus.MustRegister(opsProcessed)
}

func handler(w http.ResponseWriter, r *http.Request) {
    opsProcessed.Inc()
    w.Write([]byte("Olá, Métricas!"))
}

func main() {
    http.HandleFunc("/", handler)
    http.Handle("/metrics", promhttp.Handler())
    http.ListenAndServe(":2112", nil)
}

Desta forma, as métricas são recolhidas e estão disponíveis para sistemas de monitorização.