graylog配置日志关键字邮件Email告警

文章目录

  • 前言
  • 一、配置邮箱报警
  • 二、邮件告警配置
    • 1.设置邮箱告警通知
    • 2.设置告警事件
  • 三、告警结果示例


前言

在TO/B、TO/C项目的告警链路中,端口告警、服务器基础资源告警、接口告警等不同类型的告警都扮演着重要角色。这些告警能够帮助团队及时发现潜在的系统问题,保障项目的平稳运行。然而,除了这些硬件和基础设施层面的告警外,日志告警同样是不可或缺的关键组成部分,尤其在重要业务项目中,日志告警的重要性不容忽视。

日志告警不仅能反映出系统运行中的细节问题,如异常的请求、性能瓶颈或错误操作,还能帮助发现一些潜在的安全隐患或业务流程中的异常。特别是当日志中出现特定的关键字或异常模式时,及时捕获和处理这些告警,能有效避免问题的进一步蔓延,保障业务系统的稳定性与可靠性。因此,日志告警的及时反馈和响应同样需要与其他告警类型一样得到重视。项目团队应当确保在第一时间收到日志告警,并进行深入分析和快速响应,以便采取措施防止业务中断或损失。

在项目中,忽视日志告警的价值,可能会错失及时解决问题的最佳时机,甚至导致系统故障或安全风险。因此,日志告警作为告警链路中的重要一环,其重要性不应低估,必须与其他告警形式一样,得到高度关注并及时处理。因此,本篇文章以graylog日志系统的邮件告警为例,分享出如何配置出一套日志告警示例。


一、配置邮箱报警

修改graylog.conf配置文件,添加以下配置
关于邮箱的授权码如何获取,请自行百度解决

transport_email_enabled = true
transport_email_hostname = smtp.163.com   #官方邮箱名称
transport_email_port = 465                #官方邮箱端口25/465等等
transport_email_use_auth = true           #开启邮箱认证
transport_email_auth_username = rootxxx@163.com  #邮箱用户名
transport_email_auth_password = UNJUQFVIMEDYSUSH  #邮箱授权码(切记此处不是邮箱的登录密码)
transport_email_subject_prefix = [graylog_ssh_failed] #邮件前缀名称
transport_email_from_email = rootxxx@163.com #发邮件的邮箱
transport_email_use_tls = false  #关闭tls认证
transport_email_use_ssl = true  #开启ssl认证

然后重启graylog

二、邮件告警配置

1.设置邮箱告警通知

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
发送的测试邮件示例
在这里插入图片描述

2.设置告警事件

通俗理解就是设置告警关键字

如下图(示例):
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
接入配置好的邮件告警渠道
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
至此,邮箱告警链路配置完成

三、告警结果示例

如下图(示例):

因为此处是以ssh登录失败为例,所以此处登录192.168.56.162机器,故意输错密码进行演示
在这里插入图片描述
邮箱接收到的告警
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/66515.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

GraphQL:强大的API查询语言

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

集合卡尔曼滤波ENKF的学习笔记

集合卡尔曼滤波ENKF的学习笔记 什么是数据同化?天气模型预测是25C(这叫"背景场"),实际观测是23C(这叫"观测值"),数据同化就是把这两个信息合理结合。 # 最简单的组合方式&…

Spring AI ectorStore

Spring AI中的VectorStore是一种用于存储和检索高维向量数据的数据库或存储解决方案,它在AI应用中扮演着至关重要的角色。以下是对Spring AI VectorStore的详细解析: 一、VectorStore的基本概念 定义:VectorStore特别适用于处理那些经过嵌入…

DeepSeek-V3 通俗详解:从诞生到优势,以及与 GPT-4o 的对比

1. DeepSeek 的前世今生 1.1 什么是 DeepSeek? DeepSeek 是一家专注于人工智能技术研发的公司,致力于打造高性能、低成本的 AI 模型。它的目标是让 AI 技术更加普惠,让更多人能够用上强大的 AI 工具。 1.2 DeepSeek-V3 的诞生 DeepSeek-V…

UI自动化测试保姆级教程--pytest详解(精简易懂)

欢迎来到啊妮莫的学习小屋 别让过去的悲伤,毁掉当下的快乐一《借东西的小人阿莉埃蒂》 简介 pytest是一个用于Python的测试框架, 支持简单的单元测试和复杂的功能测试. 和Python自带的UnitTest框架类似, 但是相比于UnitTest更加简洁, 效率更高. 特点 非常容易上手…

微信小程序实现长按录音,点击播放等功能,CSS实现语音录制动画效果

有一个需求需要在微信小程序上实现一个长按时进行语音录制,录制时间最大为60秒,录制完成后,可点击播放,播放时再次点击停止播放,可以反复录制,新录制的语音把之前的语音覆盖掉,也可以主动长按删…

Clojure语言的数据库编程

Clojure语言的数据库编程 引言 在当今社会,数据的处理和管理已经成为一个不可或缺的部分。无论是互联网应用、企业系统还是移动应用,都需要与数据库进行频繁的交互。因此,选择一种合适的编程语言和相应的库来进行数据库编程显得尤为重要。C…

Javascript算法——贪心算法(一)

贪心算法详解(JavaScript)(局部最优->全局最优) 贪心算法(Greedy Algorithm)是一种在每一步选择中都采取当前状态下的最优选择(局部最优)的算法设计方法。通过局部最优解的累积&…

[读书日志]从零开始学习Chisel 第九篇:Scala的内建控制结构(敏捷硬件开发语言Chisel与数字系统设计)

6.Scala的内建控制结构 6.1 if表达式 和大部分编程语言的if表达式使用上没有区别,单句话不需要加花括号,多个语句需要加花括号,直接来看一段代码: scala> def whichInt(x:Int) {| if(x 0) "Zero"| else if(x &g…

AI大模型-提示工程学习笔记5

卷首语:我所知的是我自己非常无知,所以我要不断学习。 写给AI入行比较晚的小白们(比如我自己)看的,大神可以直接路过无视了。 零提示是什么 “零提示”(Zero-shot)是指在没有提供任何特定示例…

全国青少年信息学奥林匹克竞赛(信奥赛)备考实战之循环结构(while循环应用)

在 C 编程的世界里,循环结构是掌控程序流程的关键工具之一,而while循环更是其中的经典。它就像一个不知疲倦的小卫士,只要条件满足,就会持续执行特定的代码块,可以解决诸多复杂的编程任务。本文就一同深入探索while循环…

CK18——肝损伤无创诊断标志物

肝脏作为人体至关重要的代谢与解毒器官,极易遭受病毒、药物、酒精及不良饮食等多种因素的损害,进而引发一系列如非酒精性脂肪肝(NAFLD)、肝纤维化、肝硬化、肝细胞癌以及各类肝炎等病症。因此,确定一种高可靠性、非侵入…

.NET Core + Kafka 开发指南

什么是Kafka Apache Kafka是一个分布式流处理平台,由LinkedIn开发并开源,后来成为Apache软件基金会的顶级项目。Kafka主要用于构建实时数据管道和流式应用程序。 Kafka 架构 从下面3张架构图中可以看出Kafka Server 实际扮演的是Broker的角色, 一个Kafka Cluster由多个Bro…

软件体系结构与设计模式

在软件开发中,软件体系结构和设计模式是两个至关重要的概念。它们帮助开发者设计出易于理解、可扩展、可维护的系统。尽管这两个概念密切相关,但它们分别关注系统的不同方面:软件体系结构关注的是系统整体结构的设计,而设计模式则…

[离线数仓] 总结二、Hive数仓分层开发

接 [离线数仓] 总结一、数据采集 5.8 数仓开发之ODS层 ODS层的设计要点如下: (1)ODS层的表结构设计依托于从业务系统同步过来的数据结构。 (2)ODS层要保存全部历史数据,故其压缩格式应选择压缩比率,较高的,此处选择gzip。 CompressedStorage - Apache Hive - Apac…

Unity3D仿星露谷物语开发19之库存栏丢弃及交互道具

1、目标 从库存栏中把道具拖到游戏场景中,库存栏中道具数相应做减法或者删除道具。同时在库存栏中可以交换两个道具的位置。 2、UIInventorySlot设置Raycast属性 在UIInventorySlot中,我们只希望最外层的UIInventorySlot响应Raycast,他下面…

阿里云代理商热销产品推荐

在数字化浪潮的推动下,企业对于云计算的依赖日益加深。阿里云,作为中国领先的云计算服务提供商,为企业提供了丰富多样的云产品和服务。本文将聚焦于阿里云代理商热销产品推荐,探讨其如何帮助企业高效利用云资源,加速数…

Python入门教程 —— 多任务

1.线程 1.1.线程安全问题 线程访问全局变量 import threading g_num = 0 def test(n):global g_numfor x in range(n):g_num += xg_num -= xprint(g_num)if __name__ == __main__:t1 = threading.Thread(target=test, args=(10,))t2 = threading.Thread(target=test, args=(…

江科大STM32入门——IIC通信笔记总结

wx:嵌入式工程师成长日记 (一)简介 STM32内部集成了硬件I2C收发电路,可以由硬件自动执行时钟生成、起始终止条件生成、应答位收发、数据收发等功能,减轻CPU的负担 支持多主机 支持7位/10位地址模式 支持不同的通讯速…

vue3 vite 动态加载路由遇到的问题

记录一下动态加载路由遇到的问题 正常使用import引入静态路由是没问题的 component: () > import(/components/ExampleComponent.vue)动态引入的时候写成import就不行了 由于后端给的路由格式比较反人类…我这边先递归把获取到的数据格式做了一个整合. const processedDa…