Incident management
这个功能用于接收和管理来自应用程序的告警事件,对告警事件进行分类,发送给相关责任人等。
1 alerts
是一个展示告警的面板,用于展示gitlab接收到的告警详细信息。包括状态,严重级别,开始时间,告警描述等。
Alerts是gitlab所提供的一个告警功能,通过集成webhook receiver去接受告警。
在配置了告警集成的项目中,依次选择Monitor > Alerts,就可以进入到alerts展示的界面,页面如下:
在Alerts界面中,我们可以查看告警的状态,描述信息等。还可以通过点击进入告警的详情页面。
用户可以更改告警的状态,gitlab可以记录告警状态更改的时间,从而追踪一个告警响应的情况。
gitlab alerts最好的一点在于它能将告警管理和项目开发结合到一起,对于一些告警,我们确认它已经影响到项目应用的运行,就可以直接在这个告警中点击 Create incident
按钮创建一个incident issue,然后将这个issue分配给指定开发人员。就可以根据这个issue将应用bug修复的过程和告警生命周期关联起来。
2 Escalation Policies
Escalation Policies(升级策略):这是一种确保告警不会被遗漏的策略,在升级策略中可以通过定义不同时期对应不同的响应人,如果超过这个时间节点,对应的人员没有响应则将通知发送到下一个响应人。
使用此功能:
进入需要配置的项目,依次点击Monitor > Escalation Policies > Add an escalation policy,然后在界面选择一个on-call schedule。
3 Paging and notifications
告警分级和告警通知,目前只支持Slack和email通知。
4 Incidents
incidents是gitlab监控告警中的一个展示面板,是一种特殊类型的issue。incident就是告警中被确认的具有严重影响的告警,然后就可以将这部分告警划分为incident,表示这部分告警需要处理。
这里面所展示的告警,都是需要处理的,incident可以将alert和issue关联起来。通过这种关联,让alert能够通过issue去分配给具体的人,让相关责任人去处理对应的告警。
5 Integrations
Integrate是gitlab告警中集成告警数据源的功能,gitlab本身并不能产生告警,它只能通过webhook receiver接收告警。所以需要有一个告警平台通过webhook将告警发送到gitlab。
目前支持集成的告警平台包括http endpoint和prometheus两种。配置好集成之后,对应的告警平台产生告警就会发送到gitlab,并展示到alerts界面。
使用此功能:
进入需要配置的项目,依次点击Settings > Monitor > Alerts > Add new integration, 选定好对应的集成类型,然后就可以得到对应的webhook receiver地址和token了。
6 Status Page
设置一个外部页面来展示当前项目的告警信息
7 On-call Schedule
这个功能就是gitlab所提供的一个on-call排班表,通过在rotation中添加项目成员到指定时段进行on-call,从而形成整个on-call的排班。
然后可以在escalation policy中关联对应的on-call schedule,从而让对应on-call的项目成员收到告警信息。
使用此功能:
进入需要配置的项目,依次点击Monitor > On-call schedules,点击Add a schedule添加schedule,然后可以在对应的schedule中点击Add a rotation按钮添加rotation,每个rotation都可以选取至少一个项目成员,并设置对应的时间周期,即表示在这个时间周期内由这些成员on-call.