Sobes.tech
Junior — Middle

Que sistemas ou programas para monitorização do estado de aplicações e servidores você utilizou e como os configurou?

sobes.tech IA

Resposta da IA

Para monitorizar o estado das aplicações e servidores, utilizei os seguintes sistemas:

  • Prometheus + Grafana: Prometheus recolhe métricas de aplicações e servidores, e o Grafana visualiza-as em painéis. A configuração inclui a configuração de exportadores (por exemplo, node_exporter para servidores), regras de alerta e criação de painéis.

  • Zabbix: sistema de monitorização com agentes nos servidores. Configurei modelos de monitorização, disparadores e notificações.

  • ELK Stack (Elasticsearch, Logstash, Kibana): para recolha, armazenamento e análise de logs de aplicações. Configurei analisadores de logs e painéis para visualização.

  • New Relic / Datadog: soluções SaaS para monitorizar o desempenho de aplicações e infraestrutura. Configurei integrações e alertas.

Exemplo de configuração do Prometheus para uma aplicação Python:

  1. Adicionar a biblioteca prometheus_client à aplicação.
  2. Exportar métricas através de um endpoint HTTP.
  3. Configurar o Prometheus para recolher métricas desse endpoint.
from prometheus_client import start_http_server, Summary
import random
import time

REQUEST_TIME = Summary('request_processing_seconds', 'Tempo gasto a processar pedidos')

@REQUEST_TIME.time()
def process_request():
    time.sleep(random.random())

if __name__ == '__main__':
    start_http_server(8000)
    while True:
        process_request()