Doraemon is a Prometheus based monitor system ,which are made up of three components——the Rule Engine,the Alert Gateway and the Web-UI.Instead of configuring alarm rules in config file,this system can configure alarm rules dynamically through the Web-UI and integrates many customized alarm functions.
Features
Users can configure alarm rules dynamically through the Web-UI.
Support flexible alarm strategies such as alarm delays through which can realize the alarm upgrade strategies,alarm groups and duty groups.Users can handle the alarms in their own way by sending the alarms to hooks.
Users can confirm the alarms by prometheus tags.
Support the maintain groups.
In order to reduce the number of alarms,all of which are aggregated by rules.The alarms are aggregated once per cycle and the alarm recovery information are aggregated every minute.
LDAP/OAuth 2.0/DB Multiple login mode support for Enterprise Edition.
Architecture
The whole system adopts the separation of front and back ends, in which the front end uses React for data interaction and display.The backend uses the Beego framework for data interface processing and data for MySQL storage.
Component
Rule Engine:Pull rules from Alert Gateway,and then send the rules to prometheus server to caculate and push the alerts to Alert Gateway.
Alert Gateway:Aggregate the alarms and send them to alarm receivers according to their alarm strategies.
Web UI:For adding rules,alarm strategies and maintain groups.To confirm alarms and view historical alarm records.
@APIVersion 1.0.0 @Title beego Test API @Description beego has a very cool tools to autogenerate documents for your API @Contact astaxie@gmail.com @TermsOfServiceUrl http://beego.me/ @License Apache 2.0 @LicenseUrl http://www.apache.org/licenses/LICENSE-2.0.html
@APIVersion 1.0.0 @Title beego Test API @Description beego has a very cool tools to autogenerate documents for your API @Contact astaxie@gmail.com @TermsOfServiceUrl http://beego.me/ @License Apache 2.0 @LicenseUrl http://www.apache.org/licenses/LICENSE-2.0.html