Monitorize as suas instâncias

Como obter métricas em tempo real no formato Prometheus das suas instâncias Stackhero

A Stackhero ajuda-o a recuperar métricas em tempo real das suas instâncias no formato Prometheus. Esta integração perfeita facilita a visualização de dados com dashboards Grafana e o disparo de alertas usando Prometheus (via email, SMS, Slack, Mattermost, e mais) para todos os seus serviços Stackhero em apenas alguns minutos.

Dashboard Grafana mostrando uma instância em tempo realDashboard Grafana mostrando uma instância em tempo real

A Stackhero fornece um endpoint HTTP de "Service Discovery" que retorna métricas em tempo real das suas instâncias no formato Prometheus.

Aqui está a visão geral:

  1. O seu servidor Prometheus conecta-se a cada 15 segundos à API da Stackhero para recuperar métricas em tempo real das suas instâncias.
  2. O seu servidor Prometheus dispara alertas usando o Alert Manager quando as condições definidas são atendidas.
  3. O seu servidor Grafana conecta-se ao seu servidor Prometheus para exibir dashboards que mostram as suas instâncias Stackhero.

Para começar, precisa de gerar um token que o seu servidor Prometheus possa usar para se conectar à API da Stackhero.

  • Conecte-se ao seu dashboard Stackhero.
  • No menu à esquerda, navegue até Prometheus.
  • Clique em Criar um token.
  • Adicione uma descrição e, se necessário, limite o acesso por IP (deixe 0.0.0.0/0 para permitir qualquer IP).
  • Copie a configuração Prometheus gerada.

Criação de token Prometheus no dashboard StackheroCriação de token Prometheus no dashboard Stackhero

Ainda não tem um servidor Prometheus? Com a Stackhero pode iniciar um Prometheus gerido em apenas 2 minutos!

Abra o seu ficheiro de configuração prometheus.yml e adicione o job "stackhero" (gerado anteriormente) no final do ficheiro.

Aqui está um exemplo de configuração:

  - job_name: "stackhero"
    scheme: "https"
    basic_auth:
      username: "<ORGANIZATION_ID>"
      password: "<TOKEN>"
    http_sd_configs:
    - url: "https://api.stackhero.io/v1/prometheus/targets"
      refresh_interval: "15s" # Não defina para menos de 15 segundos!
      basic_auth:
        username: "<ORGANIZATION_ID>"
        password: "<TOKEN>"

Navegue até ao seu dashboard Prometheus e vá para Status > Service Discovery. Deverá ver uma entrada de service discovery "stackhero" registada.

Dashboard Prometheus mostrando o service discovery StackheroDashboard Prometheus mostrando o service discovery Stackhero

Em seguida, vá para Status > Targets. Deverá ver um endpoint para cada instância Stackhero.

Dashboard Prometheus mostrando os alvos StackheroDashboard Prometheus mostrando os alvos Stackhero

Parabéns! O seu servidor Prometheus agora recupera automaticamente métricas em tempo real para todos os seus serviços.

Ainda não tem um servidor Grafana? Com a Stackhero pode iniciar um Grafana gerido em apenas 2 minutos!

Pode aproveitar um dashboard pré-configurado no Grafana para exibir as métricas das suas instâncias.

  1. Na interface web do Grafana, vá para Create > Import.
  2. Na seção Import via grafana.com, defina o ID para 1860 e clique no botão Load.
  3. Na página seguinte, selecione a sua fonte de dados Prometheus e clique em Import.

O Grafana irá gerar um dashboard que exibe instantaneamente os dados recuperados do Prometheus!

Dashboard Grafana mostrando uma instância em tempo realDashboard Grafana mostrando uma instância em tempo real

No canto superior esquerdo do ecrã, pode escolher a instância que deseja visualizar clicando na lista host.

Selecionando uma instância na lista "host"Selecionando uma instância na lista "host"

Parabéns, agora pode monitorizar todas as suas instâncias em tempo real!