您的位置 首页 > 德语词汇

alerting是什么意思,alerting的意思翻译、用法、同义词、?告警模块介绍与实战操作

大家好,关于alerting是什么意思,alerting的意思翻译、用法、同义词、很多朋友都还不太明白,今天小编就来为大家分享关于告警模块介绍与实战操作的知识,希望对各位有所帮助!

在版本4.0+grafana中增加了Alerting告警模块,丰富了grafana功能,以前告警需要借助AlertManager,但是有grafana告警模块之后就可以不使用AlertManager告警了,但是grafana也支持对接AlertManager,所以还是非常方面,又可以省区一个组件的维护和资源开销。

下图概述了Grafana告警的工作原理,并向您介绍了一些关键概念,这些概念协同工作并构成了我们灵活而强大的警报引擎的核心。

alerting是什么意思,alerting的意思翻译、用法、同义词、?告警模块介绍与实战操作

官方文档:https://grafana.com/docs/grafana/latest/alerting/关于Grafana其它模块的介绍可以参考我这篇文章:【云原生】Grafana介绍与实战操作

图表配置可以参考我这篇文章:【云原生】Grafana介绍与实战操作

进入编辑界面,可以是下图Edit进入编辑界面,也可以通过快捷方式“选中图表-》按e”

配置link,可以在告警里显示,就可以跳转到相关监控项图表

告警状态变化Normal-》Padding-》Firing

[smtp]\nenabled=true\nhost="smtp.qq.com:465"\nuser="xxxxxx@qq.com"\n#Ifthepasswordcontains#or;youhavetowrapitwithtriplequotes.Ex"""#password;"""\npassword="xxxxxx"\n;cert_file=\n;key_file=\n;skip_verify=false\nfrom_address=xxxxxx@qq.com\nfrom_name=Grafana\n#EHLOidentityinSMTPdialog(defaultstoinstance_name)\n;ehlo_identity=dashboard.example.com\n#SMTPstartTLSpolicy(defaultsto'OpportunisticStartTLS')\n;startTLS_policy=NoStartTLS\n

【温馨提示】上面配置记得换成自己的邮箱密码。

systemctlrestartgrafana-server\n2、配置消息模板

{{define"myalert"}}\n[{{.Status}}]{{.Labels.alertname}}\nLabels:\n{{range.Labels.SortedPairs}}\n{{.Name}}:{{.Value}}\n{{end}}\n{{ifgt(len.Annotations)0}}\nAnnotations:\n{{range.Annotations.SortedPairs}}\n{{.Name}}:{{.Value}}\n{{end}}\n{{end}}\n{{ifgt(len.SilenceURL)0}}\nSilencealert:{{.SilenceURL}}\n{{end}}\n{{ifgt(len.DashboardURL)0}}\nGotodashboard:{{.DashboardURL}}\n{{end}}\n{{end}}\n\n{{define"mymessage"}}\n{{ifgt(len.Alerts.Firing)0}}\n{{len.Alerts.Firing}}firing:\n{{range.Alerts.Firing}}{{template"myalert".}}{{end}}\n{{end}}\n{{ifgt(len.Alerts.Resolved)0}}\n{{len.Alerts.Resolved}}resolved:\n{{range.Alerts.Resolved}}{{template"myalert".}}{{end}}\n{{end}}\n{{end}}\n3、配置告警通道

上面配置好后就等待着告警就ok了。告警信息示例如下:

{\n"receiver":"MySuperWebhook",\n"status":"firing",\n"orgId":1,\n"alerts":[\n{\n"status":"firing",\n"labels":{\n"alertname":"Highmemoryusage",\n"team":"blue",\n"zone":"us-1"\n},\n"annotations":{\n"description":"Thesystemhashighmemoryusage",\n"runbook_url":"https://myrunbook.com/runbook/1234",\n"summary":"Thisalertwastriggeredforzoneus-1"\n},\n"startsAt":"2021-10-12T09:51:03.157076+02:00",\n"endsAt":"0001-01-01T00:00:00Z",\n"generatorURL":"https://play.grafana.org/alerting/1afz29v7z/edit",\n"fingerprint":"c6eadffa33fcdf37",\n"silenceURL":"https://play.grafana.org/alerting/silence/new?alertmanager=grafana&matchers=alertname%3DT2%2Cteam%3Dblue%2Czone%3Dus-1",\n"dashboardURL":"",\n"panelURL":"",\n"valueString":"[metric=''labels={}value=14151.331895396988]"\n},\n{\n"status":"firing",\n"labels":{\n"alertname":"HighCPUusage",\n"team":"blue",\n"zone":"eu-1"\n},\n"annotations":{\n"description":"ThesystemhashighCPUusage",\n"runbook_url":"https://myrunbook.com/runbook/1234",\n"summary":"Thisalertwastriggeredforzoneeu-1"\n},\n"startsAt":"2021-10-12T09:56:03.157076+02:00",\n"endsAt":"0001-01-01T00:00:00Z",\n"generatorURL":"https://play.grafana.org/alerting/d1rdpdv7k/edit",\n"fingerprint":"bc97ff14869b13e3",\n"silenceURL":"https://play.grafana.org/alerting/silence/new?alertmanager=grafana&matchers=alertname%3DT1%2Cteam%3Dblue%2Czone%3Deu-1",\n"dashboardURL":"",\n"panelURL":"",\n"valueString":"[metric=''labels={}value=47043.702386305304]"\n}\n],\n"groupLabels":{},\n"commonLabels":{\n"team":"blue"\n},\n"commonAnnotations":{},\n"externalURL":"https://play.grafana.org/",\n"version":"1",\n"groupKey":"{}:{}",\n"truncatedAlerts":0,\n"title":"[FIRING:2](blue)",\n"state":"alerting",\n"message":"**Firing**\\n\\nLabels:\\n-alertname=T2\\n-team=blue\\n-zone=us-1\\nAnnotations:\\n-description=Thisisthealertrulecheckingthesecondsystem\\n-runbook_url=https://myrunbook.com\\n-summary=Thisismysummary\\nSource:https://play.grafana.org/alerting/1afz29v7z/edit\\nSilence:https://play.grafana.org/alerting/silence/new?alertmanager=grafana&matchers=alertname%3DT2%2Cteam%3Dblue%2Czone%3Dus-1\\n\\nLabels:\\n-alertname=T1\\n-team=blue\\n-zone=eu-1\\nAnnotations:\\nSource:https://play.grafana.org/alerting/d1rdpdv7k/edit\\nSilence:https://play.grafana.org/alerting/silence/new?alertmanager=grafana&matchers=alertname%3DT1%2Cteam%3Dblue%2Czone%3Deu-1\\n"\n}\n

这里通过python的去写webhook,因为条件有限,还是通过webhook转到邮箱发告警,一般企业会通过webhook转钉钉,微信,zabbix等等。

#!/usr/bin/python3\n#-*-coding:utf-8-*-\n#@Time:2022/12/2411:03\n#@Author:liugp\n#@Email:liugp@163.com\n#@File:GrafanaWebHook.py\nimportjson\nimportsmtplib\nfromemail.mime.textimportMIMEText\nfromemail.headerimportHeader\nfromflaskimportFlask,request\n#pip3installflask\n\napp=Flask(__name__)\n\nclassGrafanaWebHook:\ndef__init__(self):\n#第三方SMTP服务信息\nself.mail_host="smtp.qq.com"\nself.mail_user="xxxxxx@qq.com"\nself.mail_pass="xxxxxx"\n\nself.sender="xxxxxx@qq.com"\nself.receiver="xxxxxx@163.com"#接收邮件,可设置为你的QQ邮箱或者其他邮箱\n\ndefsend_mail(self,title,status,messages):\n\nprint(messages)\nformessageinmessages:\nmessage['panelURL']=str(message['panelURL']).replace("localhost:3000","192.168.182.110:3000")\nprint(message)\nifnot'description'inmessage['annotations'].keys():\nmessage['annotations']['description']="test"\n\nmessage=MIMEText('grafanaalert:'+title+'\\n告警时间:'+str(message['startsAt'])+\n'\\n告警状态:'+str(status)+'\\n告警内容:'+str(\nmessage['annotations']['description'])+'\\n告警面板:'+str(message['silenceURL'])+'','plain','utf-8')\nmessage['From']=self.sender\nmessage['To']=self.receiver\n\nsubject=title\nmessage['Subject']=Header(subject,'utf-8')\n\ntry:\nsmtpObj=smtplib.SMTP_SSL(self.mail_host,465)\nsmtpObj.login(self.mail_user,self.mail_pass)\nsmtpObj.sendmail(self.sender,self.receiver,message.as_string())\nprint("邮件发送成功")\nreturnTrue\nexceptsmtplib.SMTPExceptionase:\nprint("Error:无法发送邮件",e)\nreturnFalse\n\ndefgetAlertData(self):\nalertData=request.get_data()\n#将str类型的数据转换为dict类型\nalertData=json.loads(alertData)\n#print(alertData)\nreturnalertData\n\n@app.route('/webhook',methods=["POST"])\ndefwebhook_server():\ngw=GrafanaWebHook()\nalertData=gw.getAlertData()\ntitle=alertData['title']\nstatus=alertData['status']\nmessages=alertData['alerts']\nret=gw.send_mail(title,status,messages)\nifret:\nreturn{"status":"ok"}\nelse:\nreturn{"status":"error"}\n\nif__name__=="__main__":\napp.run(debug=False,host='0.0.0.0',port=18088)\n\n

【温馨提示】使用时注意把上面的邮箱和密码修改哦!!!

配置好后就可以等待告警,告警示例如下:

这里主要讲了三种告警通道,其它告警通道小伙伴可以自行测试验证,有疑问的小伙伴也欢迎给我留言,后续会持续更新【云原生+大数据】相关的文章,请小伙伴耐心等待~

好了,关于alerting是什么意思,alerting的意思翻译、用法、同义词、和告警模块介绍与实战操作的问题到这里结束啦,希望可以解决您的问题哈!

本站涵盖的内容、图片、视频等数据,部分未能与原作者取得联系。若涉及版权问题,请及时通知我们并提供相关证明材料,我们将及时予以删除!谢谢大家的理解与支持!

Copyright © 2023