JIRAlert服务安装并启动
1、介绍
JIRAlert是一个用于Prometheus Alertmanager的JIRA集成工具,它实现了Alertmanager的webhook HTTP API,并连接到一个或多个JIRA实例,以便创建高度可配置的JIRA问题。
2、下载JIRAlert
3、解压缩文件
执行命令tar -xvf jiralert-1.3.0.tar.gz
编译 make build
如果编译缺少go语言环境需要安装go软件
如果编译报错下载github.com上的文件失败,可以想办法先下载好对应文件,然后上传一个可以访问的地址,修改Makefile.common中的下载地址,然后再编译
4、修改配置文件
复制配置文件 , cp -r examples config
修改配置文件config/jiralert.yml
defaults:
#Jira 的地址, 如果用的是 Jira 的 SaaS 服务, 就是https://<tenant>.atlassian.net
api_url: http://127.0.0.1
#认证:对于公有云版的 Jira, 只能用 user 和 password
#user 填写你的账号邮箱地址;
user: xxxx
#password 需要先在 API Token | Atlassian account 申请 API Token. (🐾注意: 登录用的密码是无法认证通过的)于其他版本, 也可以填写使用 personal_access_token 进行认证. 其值为: user@example.com:api_token_string 的 base64 编码后字符串. 具体说明见: Basic auth for REST APIs (atlassian.com)
password: 'xxxx'
#创建的 issue 类型,例如 "Task" 或 "Bug"
issue_type: Bug
#默认优先级
priority: Critical
#任务标题,使用警报标签
summary: '{{ template "jira.summary" . }}'
#任务描述,支持模板
description: '{{ template "jira.description" . }}'
#Jira 的问题已经关闭, 要重新打开, 需要的 transition, 如: Back to in progress. (🐾注意: 这里需要填写的是您自定义的 transition, 而非 status)
reopen_state: "To Do"
#带有这个 resolution (解决方案)的问题就不会重新打开. 如: Won't Do Won't Fix, 需要根据自己的 resolution 定义内容来填写
wont_fix_resolution: "Won't Fix"
#多久时间之内的问题会重新打开, 默认是 always reopen, 可以设置为如: 30d, 表示这个问题如果30天以前有同样的问题, 新开一个 Issue, 而不是重新打开老的 Issue.
reopen_duration: 0h
#可以定义多个 receivers, 指向不同 project
receivers:
#与 Alertmanager 中的 receiver 名称一致
- name: 'dingtalk'
#Jira 的 Project ID, 是 Project 详细名字的首字母大写. 如 Project 是 For Example, 这里就填写 FE
project: BTLWLK
issue_type: "Task" # issue 类型
fields: # 可选:自定义字段
customfield_10001: "Alert from Prometheus" # 示例自定义字段
add_group_labels: true # 将分组标签添加为 Jira 标签
#模板文件路径
template: jiralert.tmpl
5、启动JIRAlert服务
nohup ./jiralert --listen-address=":9097" > nohup.log 2>&1 &
默认端口9097