概述
HOMER是一款100%开源的针对SIP/VOIP/RTC的抓包工具和监控工具。
HOMER是一款强大的、运营商级、可扩展的数据包和事件捕获系统,是基于HEP/EEP协议的VoIP/RTC监控应用程序,并可以使用即时搜索、处理和存储大量的信令、RTC事件、日志和统计信息。
在HOMER7的框架中,内置有prometheus、grafana、alertmanager等模块,并在grafana中有默认的sip overview指标监控界面。
本文介绍如何通过grafana对sip监控指标设置告警的操作。
环境
centos:CentOS release 7.0 (Final)或以上版本
HOMER7
grafana
HOMER7启动后,内置的prometheus和grafana模块自动启动,其中grafana模块开放端口9030。通过如下的URL地址访问HOMER7中的grafana界面。
http://10.55.55.138:9030/?orgId=1
Alerting配置告警通道
点击web页面左侧的按钮,选择“Alerting”页面,其中有2个子模块“Alert rules”和“Notification channels”,分别是告警规则和告警通道的设置页面。
先配置告警通道,点击“Alerting”->“Notification channels”->“new channel”。
name随便写。
Type的选择比较多,常用的“DingDing”、“Email”和“Webhook”都有默认支持。
Type选择“DingDing”后,url填写钉钉机器人的地址即可,钉钉机器人的创建比较简单,请自行查询。
其他配置默认即可。
Alerting配置告警规则
点击web页面左侧的按钮,选择“Dashboards”->“Browse”->“SIP Overview”页面。
点击“KPI’s”->”Edit”,要求必须已登录。
默认的A查询asr的查询语句如下。
clamp_max((sum(increase(heplify_method_response{target_name=~"$tn", method="INVITE", response="200"}[15m])) * 100) /
(sum(increase(heplify_method_response{target_name=~"$tn", method="INVITE", response="INVITE"}[15m])) -
(sum(increase(heplify_method_response{target_name=~"$tn", method="INVITE", response=~"3.*|401|407"}[15m])) or sum(up) * 0)), 100)
为了增加Alert,需要修改语句如下。
clamp_max((sum(increase(heplify_method_response{ method="INVITE", response="200"}[2m])) * 100) /
(sum(increase(heplify_method_response{ method="INVITE", response="INVITE"}[2m])) -
(sum(increase(heplify_method_response{ method="INVITE", response=~"3.*|401|407"}[2m])) or sum(up) * 0)), 100) and on() hour() >= 0 <= 12
切换“Query”标签为“Alert”标签,点击“Create Alert”按钮,创建新的告警,简单设置后保存即可。
Alert配置主要分三部分。
一,Rule,“name”自定义。“Evaluate every”定义监控检查间隔,最小“10s”(10秒),也可以设置“5m”(5分钟)。“For”定义监控数据持续多久之后发起告警,“0s”表示马上,也可以设置“1m”(1分钟)。
二,Conditions,告警条件,根据告警策略配置。结果计算函数可以选择avg(),min(),max(),last()等多种函数。查询条件可以选择“A”查询的当前结果和5分钟前的结果做比较。检查条件可以选择“IS ABOVE”、“IS COUTSIDE RANGE”等数值范围。
三,Notifications,“send to”选择上面配置的告警通道。“Message”自定义告警信息。
测试
根据配置的监控告警条件,KPI指标会在页面展示上显示红线(告警)和绿线(恢复)。
同时,在钉钉中,可以收到“HOMER-10.55.55.138-SIP-KPI ASR: 49.692”的告警信息。
总结
HOMER7默认的grafana版本中没有告警时间设置的相关模块。
HOMER最新的版本是HOMER10,但是试用了一下之后和HOMER7差别较大。
空空如常
求真得真