Sobre o projeto

O Apache HertzBeat é um sistema de observabilidade em tempo real de código aberto, distribuído sob a Licença Apache 2.0 e listado no panorama de Observabilidade e Análise da CNCF. Ele combina coleta, análise, alertas e notificações em uma única plataforma e não exige agente nos alvos monitorados. Principais capacidades descritas no README: - Coleta unificada de métricas: sem agente e compatível com Prometheus, abrangendo serviços de aplicação, programas, bancos de dados, caches, sistemas operacionais, componentes de big data, middleware, servidores web, cargas de trabalho nativas da nuvem, redes e monitoramento personalizado. - Registro unificado: várias fontes de log podem ser reportadas por meio do protocolo OTLP. - Alertas unificados: fontes de alerta internas e externas são tratadas em conjunto, com regras de limite em tempo real e periódicas, agrupamento e convergência, silenciamento e supressão. - Distribuição de notificações: os alertas podem ser enviados por Email, Discord, Slack, Telegram, DingTalk, WeChat, FeiShu, SMS, Webhook, Server e outros canais. - Protocolos configuráveis: Http, Jmx, Ssh, Snmp, Jdbc e Prometheus podem ser configurados por meio de modelos YML online, de modo que novos tipos de monitoramento podem ser adaptados por configuração em vez de código. - Escalabilidade: clusters multi-coletor podem ser expandidos horizontalmente, com suporte a monitoramento em múltiplas redes isoladas e colaboração nuvem-borda. - Status: os usuários podem criar páginas de status para comunicar a disponibilidade do serviço. - Recursos de IA: o projeto descreve interações e recursos alimentados por IA no HertzBeat AI, além de capacidades integradas de MCP Server. As opções de implantação incluem Docker (comando único para o servidor, além de contêineres opcionais de coletor), pacotes de lançamento para o servidor e coletores JVM ou nativos, inicialização a partir do código-fonte com Maven/Java e frontend Node/pnpm, pacotes Docker Compose com PostgreSQL/MySQL e um banco de dados de séries temporais, e gráficos Helm para Kubernetes. O suporte de CPU abrange x86 e arm64. A conta web padrão após a instalação é admin/hertzbeat. Notas de arquitetura: o sistema separa o gerenciador/servidor dos coletores; os coletores se registram no gerenciador por meio de uma entrada de despacho baseada em Netty e podem operar em cluster público ou modo privado de colaboração nuvem-borda. Drivers JDBC colocados em ext-lib afetam se determinados bancos de dados usam o mecanismo de consulta integrado ou JDBC, e Oracle/DB2 exigem o pacote de coletor JVM. O projeto é construído com Java/Spring/Spring Boot/Netty e um frontend TypeScript/Angular, e recebe contribuições por meio de suas listas de discussão, Discord, GitHub Discussions e guia do contribuidor.