如何配置Seq以在收到特定日志时自动发送邮件(含Seq.App.EmailPlus配置示例)
嘿,我来一步步带你配置Seq用EmailPlus触发邮件告警,这个需求其实很常见,操作起来也不复杂:
1. 先安装Seq.App.EmailPlus插件
首先打开你的Seq控制台,导航到Apps页面(顶部菜单栏就能找到)。在插件市场搜索框里输入EmailPlus,找到对应的插件后点击Install完成安装。如果是自托管的Seq实例,也可以用命令行安装,但UI操作更直观,推荐新手优先用这个方式。
2. 创建触发邮件的「信号(Signal)」
信号就是用来定义“哪些日志会触发邮件”的过滤规则:
- 回到Seq的搜索页面,在搜索框里输入你的过滤条件,比如要监控所有包含「支付失败」的错误日志,就写:
Level = Error AND Message LIKE '%支付失败%' - 确认搜索结果是你想要的日志后,点击搜索框右侧的Save as signal,给这个信号起个好记的名字(比如「支付失败告警」),保存下来。
3. 配置EmailPlus应用并关联信号
安装完插件后,回到Apps页面,找到已安装的EmailPlus,点击Add instance(添加应用实例):
- 首先填写SMTP服务器信息:比如你的邮箱服务商的SMTP地址(如
smtp.gmail.com)、端口(通常是587)、认证用的用户名和密码,还有发件人邮箱地址。 - 重点配置Triggers(触发条件):在下拉菜单里选择你刚才创建的「支付失败告警」信号。
- 设置收件人:可以填单个邮箱,也能用逗号分隔多个收件人。
- 自定义邮件主题和内容:比如主题设为
[Seq紧急告警] {{SignalName}}: {{EventCount}}条新日志,内容里用Seq模板变量展示日志详情,示例:告警触发时间:{{Timestamp}} 日志级别:{{Level}} 核心日志内容:{{Message}} 完整日志详情:{{EventJson}} - 最后点击Save保存配置。
4. 测试验证
现在故意触发一条符合过滤条件的日志(比如在你的应用里模拟一次支付失败),然后去收件邮箱查看是否收到告警邮件。如果没收到,可以去Seq的App instances页面找到这个EmailPlus实例,查看它的运行日志排查问题——比如SMTP密码输错了,或者信号的过滤条件写得不准确。
实用小贴士
- 可以在触发设置里调整「检查频率」,比如设置成每5分钟检查一次,避免短时间内大量日志导致邮件轰炸。
- 邮件模板支持很多Seq内置变量,配置页面的模板提示里能看到所有可用变量,按需自定义即可。
- 如果需要给不同日志类型配置不同告警,重复上面的步骤,创建新信号和EmailPlus实例就行。
内容的提问来源于stack exchange,提问作者Del Eraser




