JIRA整合OpenFire实现任务实时提醒

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 上一篇,主要介绍了搭建OpenFire和Spark实现即时沟通平台,比较简单就能完成。由于团队间配合的特殊性以及无法访问外网等诸多原因,在 部署了Jira后,一直缺乏一种即时提醒的功能。

上一篇,主要介绍了搭建OpenFire和Spark实现即时沟通平台,比较简单就能完成。由于团队间配合的特殊性以及无法访问外网等诸多原因,在 部署了Jira后,一直缺乏一种即时提醒的功能。只能依靠浏览器中定时刷新来查看是否有任务被分配。在完成了OpenFire和Spark插件后,就开始 着手设想是否可以通过Jabber协议,在Jira中有任务分派事件时,通过Jabber协议将事件信息转发出去的想法?在搜索了Jira插件后,发现有 一个插件正符合我的设想:Jabber Listener for JIRA。

下载地址:https://marketplace.atlassian.com/download/plugins/com.atlassian.jira.ext.jabbernotifier.jabber/version/12100

在JIRA上安装此插件后,需要做一些配置,这部分资料较少,这里将配置经验分享给大家,避免走同样的弯路。 官方配置说明:https://ecosystem.atlassian.net/wiki/display/JJABBER/JIRA+Jabber+Listener

下面做一下具体说明:

管理员账户登录JIRA,进入“管理员页面”,在“系统”--“高级”--“监听器”中添加监听器。如下图所示:(该步骤同官方文档)

下面编辑监听器详细信息,所有的属性信息在界面上均由详细说明,有空了再补上所有详细说明的翻译。下面将几个主要的属性做一下说明,也是我所配置的内容,留空的属性均有默认值。

XMPP Server:配置OpenFire服务器的地址(必须填写),如:107.22.173.36

XMPP Port:配置OpenFire服务器的端口,若没有修改过,则默认5222

XMPP Login:为JIRA建立一个发送通知用的账户,这里填账户名,如:JIRA_NOTIFIER

XMPP Password:上面账户密码

Users to notify:配置通知事件,如:assignee,即在当有任务分派事件时,通知用户

User‘s Jabber ID Property:配置通知的用户在OpenFire中的ID,可使用变量形式配置,如:{userName}@xxx,xxx为OpenFire服务器 名,在OpenFire的管理员页面首页可以看到。{userName}所取得值为被分派任务用户的JIRA账户名。 Notifiable Statuses:配置通知状态,默认值:ONLINE,AWAY,即当需要通知的OpenFire账号在线或离开状态时通知。

该属性当前版本存在 bug,提交的bug地址可见:https://ecosystem.atlassian.net/browse/JJABBER-30若不填写内容, 日志会报NullPointException,所以,这里必须填写配置,推荐使用:ONLINE,AWAY,OFFLINE,这样用户即时离线也会通 知,等到用户上线时会收到通知。

可以看到,为了让OpenFire与JIRA整合,还要做的一件事就是同步JIRA账户,保证 OpenFire的账户名与JIRA的账户名一致,才能使得监听器发送给正确的人,当然也可以配置JIRA的邮箱作为账户名等,支持的变量有: {email},{userName},{xmppServer},{xmppService},{projectKey}。

可能大家在配置的时候主要会碰到问题的是最后一点,其他应该都不会有问题,若依然无法发现,建议修改JIRA下的日志文件WEB-INF/classes/log4j.properties,新增以下两个属性,就能看到该插件的运作日志了,另外要注意的是,日志是JIRA程序目录下的logs目录,而是在application-data/jira/log目录下。

log4j.category.com.atlassian.jira.ext.jabbernotifier = DEBUG, console, filelog

log4j.additivity.com.atlassian.jira.ext.jabbernotifier = false

欢迎关注我的个人博客:程序猿DD

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
4月前
|
监控 安全 数据安全/隐私保护
怎么远程调试已经外发的用户安装包
【8月更文挑战第28天】通常,远程调试已分发给用户的安装包是困难且不推荐的,因涉及安全与隐私。若在特定企业环境下并获用户授权,则可考虑:1)使用远程管理工具如远程桌面连接;2)内置日志记录与错误报告功能;3)应用远程监控和诊断工具,但需确保安全措施到位及用户数据保护。所有操作前应获得合法授权。
|
监控 数据安全/隐私保护
Jpom配置监控邮件
Jpom配置监控邮件
43 0
|
缓存 监控 应用服务中间件
【zabbix】生产环境zabbix只能收到邮件不能看到图形化页面
【zabbix】生产环境zabbix只能收到邮件不能看到图形化页面
学习笔记jira项目20-服务器错误
学习笔记jira项目20-服务器错误
106 0
学习笔记jira项目20-服务器错误
|
JavaScript 网络安全
【非广告】Gitbook 接入 Gitlab Webhook 功能,实现文档实时在线更新(下)
Hello,大家好,我是阿粉,对接文档是每个开发人员不可避免都要写的,友好的文档可以大大的提升工作效率。阿粉最近将项目的文档基于 Gitbook 和 Gitlab 的 Webhook 功能的在内网部署了一套实时的,使用起来特方便了。跟着阿粉的步骤,教你部署自己的文档服务。
【非广告】Gitbook 接入 Gitlab Webhook 功能,实现文档实时在线更新(下)
|
网络协议 Shell 网络安全
【非广告】Gitbook 接入 Gitlab Webhook 功能,实现文档实时在线更新(上)
Hello,大家好,我是阿粉,对接文档是每个开发人员不可避免都要写的,友好的文档可以大大的提升工作效率。阿粉最近将项目的文档基于 Gitbook 和 Gitlab 的 Webhook 功能的在内网部署了一套实时的,使用起来特方便了。跟着阿粉的步骤,教你部署自己的文档服务。
【非广告】Gitbook 接入 Gitlab Webhook 功能,实现文档实时在线更新(上)
Confluence 6 订阅所应用的所有小工具
你可以从你的 Jira, Bamboo,FishEye 或 Crucible 站点中订阅所有的小工具到你的 Confluence 小工具目录中。
994 0
Confluence 6 让 Jira 应用停止发送通知到 Confluence
你可能希望仅仅配置 Confluence 在 workbox 中仅仅显示自己的通知,禁用在 workbox 中显示从 Jira 来的通知。
1026 0
Confluence 6 workbox 包含从 Jira 来的通知
如果你的 Confluence 站点链接了一个 Jira 应用,你可以包含从 Jira 应用来的通知,例如 Jira 软化或 Jira 服务器桌面。
1127 0