apache生态告警配置无统一入口,需按项目定制:pulsar依赖log4j2.yaml邮件推送与日志级别;skywalking通过alarm-settings.yml规则驱动多渠道通知;dolphinscheduler在web ui配置插件化告警实例;kafka等则需prometheus+alertmanager组合实现。

Apache Pulsar 告警配置
主要靠日志级别 + 邮件推送,适合基础运维告警:
- 在 log4j2.yaml 中配置 SMTPAppender,填好发件邮箱、SMTP 地址、端口、账号密码
- 确保 broker.conf 开启了
prometheusStatsEnabled=true,为后续指标告警打基础 - 告警触发依赖日志级别(如 WARN/ERROR),所以需在日志配置中把关键模块(如
org.apache.pulsar)设为 WARN 及以上
Apache SkyWalking 告警配置
基于规则驱动,支持多种通知渠道,推荐用于微服务性能告警:
Apache Superset 是一个广泛采用的开源 BI 平台,用于 SQL 探索、图表构建和仪表板交付。当代理需要查询仓库数据、组装仪表板或使用成熟的分析界面解释指标而不是临时笔记本代码时,此技能非常有用。
- 编辑 alarm-settings.yml,用 MQE 表达式写规则,例如:
sum(service_resp_time > 1000) >= 3 - 设置
period(评估周期)和silence-period(静默时间),避免刷屏 - 在
hooks.webhook下填 Slack、钉钉或企业微信的 Webhook URL,并自定义 JSON payload 模板
Apache DolphinScheduler 告警配置
插件化设计,邮件、钉钉、飞书等开箱即用,适合数据调度任务告警:
- 在 Web UI 的「安全中心 → 告警实例管理」中创建 Email 或 DingTalk 实例,填 SMTP 参数或机器人 token
- 配置告警组,把多个接收人加进去,再绑定到具体工作流或任务节点
- 支持脚本类告警(Script 插件),可调用 curl 发送 HTTP 请求,对接内部系统
Apache Kafka / RocketMQ / Dubbo 等通用方案
这些通常不自带完整告警引擎,需搭配 Prometheus + AlertManager:
- 各组件暴露 Prometheus metrics(如 Kafka 的 JMX、Dubbo 的
/metrics端点) - Prometheus 抓取指标后,在 AlertManager 中写规则,例如:
sum(rate(kafka_network_request_total{error="true"}[5m])) / sum(rate(kafka_network_request_total[5m])) > 0.05 - AlertManager 支持邮件、Webhook、PagerDuty 等多通道,配置集中管理









