jira邮件自动提醒功能配置

1、开启Jelly Runner功能,点击administrator,进入管理员配置界面,依次选择system-advanced-Jelly Runner我们会看到以下英文提示As a security precaution, the Jelly Runner on this installation is currently disabled. To enable Jelly support, please start JIRA with "-Djira.jelly.on=true". For more information see the Jelly Documentation.看到这些则代表功能还没有开启。

2、在jira目录/bin下看有没有setenv.sh文件,有则打开在JVM_REQUIRED_ARGS="-Djava.awt.headless=true这个后面添加-Djira.jelly.on=true并保存,服务器是windows时则添加java -Djira.jelly.on=true

3、自定义邮件模板,进入/usr/local/atlassian-jira-4.4.5-standalone/atlassian-jira/WEB-INF/classes目录,打开email-template-id-mappings.xml文件按照里面的格式添加一个新的模板如下图:

图上id=17的则是我们刚添加的模板,name可以随便命名,template中间是模板文件名称,templatetype则是issueevent,修改完并保存。

4、 进入/usr/local/atlassian-jira-4.4.5-standalone/atlassian-jira/WEB-INF/classes目录,打开velocity.properties文件,设置class.resource.loader.cache=false再将#velocimacro.library.autoreload=true的#号去掉

5、 创建模板文件进入atlassian-jira/WEB-INF/classes/templates/email/subject,把issuecreated.vm这个文件复制一份,名字叫issueovertime.vm,这个就是图一上我们定义的xml文件名称

6、 进入/atlassian-jira/WEB-INF/classes/templates/email/html,同样复制把issuecreated.vm这个文件复制一份,名字叫issueovertime.vm

7、 重启jira

8、 检查Jelly Runner功能是否开启,如果开启了会看到下面图这样的

9、建立JQL搜索问题过滤器,点击issue-我的issue-新建-advanced输入以下查询语句,然后点击search,没有报错的话就点击左边的保存按钮。

project = 项目名称 and status = "open"AND updated <= -30m and updated >= startOfDay("8h") and updated <= startOfDay("20h")这语句意思为在项目名称下搜索在8点到20点之间的超过30分钟未更新的open状态的问题,然后保存查看这个过滤器的id,查看过滤器id方法为鼠标移动到那过滤器,浏览器网址有显示id号,需使用ie浏览器.

10、建立一个新的事件,进入管理员页面-system-Advanced-events-Add New Event事件名称随便定义,比如问题超时未更新提醒,Template选择Issue OverTime

11、建立工作流动作,进入要使用规则的工作流,比如系统运维这个项目使用的是yunat default(customized)这个工作流,那我们就在这里面建立工作流动作。点击问题- workflows找到yunat default(customized)点击工作流右边的steps,比如我想当issue处于ln Progress这个状态时执行新的动作,则在这下面建立新动作,点击Add Transition,动作名称可以与第10建立的事件名称一样,Destination Step选择ln Progress,其他的默认就行了,增加完在给这个动作设置权限,主要是为了防止别人去点击这个按钮。

12、新建jellyrunner脚本文件,进入/usr/local/atlassian-jira-4.4.5-standalone/home/data/目录建立jellyrunnerovertime.xml文件和jellyrunnerovertime.log文件,在jellyrunnerovertime.xml内添加如下内容:

<JiraJelly xmlns:jira="jelly:com.atlassian.jira.jelly.enterprise.JiraTagLibxmlns:core="jelly:corexmlns:log="jelly:log" >

<jira:Login username="管理员" password="管理员密码">

<log:warn>Running Inactivate issues service</log:warn>

<core:set var="comment"></core:set>

<core:set var="workflowStep" value="问题超时未更新提醒" />

<core:set var="workflowUser" value="system" />

<!-- Run the SearchRequestFilter -->

<jira:RunSearchRequest filterid="11530" var="issues" />

<core:forEach var="issue" items="${issues}">

<log:warn>Inactivating issue ${issue.key}</log:warn>

<jira:TransitionWorkflow key="${issue.key}" user="${workflowUser}" workflowAction="${workflowStep}" comment="${comment}"/>

</core:forEach>

</jira:Login>

</JiraJelly>

上面的管理员也可以填写其他有权限的管理员用户,问题超时未更新提醒是动作名称,11530是第9步建立的过滤器的id

13、 添加一个系统服务,点击system-advanced-services,名称比如为IssueOverTimeRemindUser,Class选择Run Jelly script(com.atlassian.jira.jelly.service.JellyService),Delay选择1,这里的1表示多久执行一次此服务,我们这里设置为1表示1分钟,添加服务后,在服务里找到该服务,点击编辑在Input File输入步骤12的脚本文件的绝对路径,比如此例子为:/usr/local/atlassian-jira-4.4.5-standalone/home/data/jellyrunnerovertime.xml,Output File输入步骤12的脚本日志的绝对路径,比如此例子为:/usr/local/atlassian-jira-4.4.5-standalone/home/data/jellyrunnerovertime.log

输出文件设置为:步骤12的日志文件的绝对路径,比如此例子为:/usr/local/atlassian-jira-4.4.5-standalone/home/data/jellyrunnerovertime.log

14、 设置邮件格式为html的,因为我们设置的是邮件模板是html格式的,点击system-mail-Send Email-Message Type-html

15、 重建索引,system-Indexing-Relndex

16、 使用jellyrunnerovertime.xml里面设置的管理员用户收藏步骤9建立的过滤器,收藏点击过滤器左边的星号颜色变成黄色后即可。

17、 添加邮件接收者,问题-Notification Schemes-Default Notification Scheme-问题超时未更新提醒(这里的问题超时未更新提醒事件是我们在步骤10建立的)-增加-选择需要通知的人和组或者项目。

18、 现在可以进行测试了,整个自动执行过程原理如下:

JIRA每隔1分钟执行下jellyrunnerovertime.xml这个脚本,即每隔1分钟用过滤器11530搜出满足条件的问题,再用管理员这个账户登录并执行下这些问题的“问题超时未更新提醒”动作。这个动作会触发“问题超时未更新提醒”事件。同时该事件又会根据通知方案里的配置来通知相关人员。

19、 如果要更改状态,请在工作流中相应的状态下增加“问题超时未更新提醒”动作,然后在过滤中也修改下状态。

20、 如果要修改邮件模板标题请进入步骤5中的issueovertime.vm文件输入你想要显示的文字,比如你的issue超时了。如果要修改邮件模板内容,请进入步骤6中的issueovertime.vm文件,比如你要在提醒邮件中显示“issue状态“项目,可以按照里面的格式添加#parse("templates/email/html/includes/fields/status.vm")

比如你要在邮件中显示自定义内容,可以这样输入

<td id="email-fields" style="padding:0 32px 32px 32px;">

<p style=’margin-bottom:10px;’>自定义内容</p>

<table border="0" cellpadding="0" cellspacing="0" style="padding:0;text-align:left;width:100%;" width="100%">

时间: 2024-10-15 04:55:23

jira邮件自动提醒功能配置的相关文章

(分享)在myeclipse上安装spket插件,实现js自动提醒功能

myeclipse没有配置spket插件的时候,js是无法自动提示js自动显示的功能的: -------下面我将从头开始,一步一步的开始操作,将myeclipse配上自动提醒插件:ps:带有jar下载链接 1 . 下载最新破解版spket1.6.18(见下面链接地址) 目前的myEclipse的插件安装很简单的,把spket1.6.18破解版的.zip解压后复制到myeclipse的安装目录下的features和dropins文件夹下即可.如图: 安装完成后,重启myelipse,打开Windo

sharepoint2010人性化的地方--员工离职AD账号禁用(个人网站自动提醒上级经理功能)

sharepoint2010人性化的地方--员工离职AD账号禁用(个人网站自动提醒上级经理功能) 最近有个项目,每个员工都开通了个人网站,但是有些员工离职后禁用AD账号后自动给该员工的个人属性中的“上级经理”指定的经理发一份提醒邮件如下: XXX/Hunk 的“我的网站”已计划在 14 天内删除.作为他们的经理,您现在是其网站的临时所有者.此临时所有权使您可以访问该网站,复制您可能需要的与企业相关的任何信息.若要访问该网站,请使用以下 URL:http://mysite.xxx.com/pers

Eclipse配置PHP及自动提示功能

Eclipse是一个开发工具,具有强大的插件功能,虽然用于Java理所当然,但为PHP所用,也为尝不可.虽然我一直用的是notepad,但发现开发工具也可以省去一些不必要的记忆. 言归正传,下面就来实际操作一下,如何使用Eclipse来配置PHP开发环境. 一.去www.eclipse.org网站,下载一个Eclipse for PHP Developers,这样最省事,也最方便. 二.前面这个虽然方便,但做为开发人员,如果只专注一门语言的话,可能很少.因此为了能够方便各种情况,我们还是下载一个

eclipse代码自动提示设置、如何配置eclipse的代码自动提示功能?

对于编程人员来说,要记住大量的类名或类方法的名字,着实不是一件容易的事情.如果要IDE能够自动补全代码,那将为我们编程人员带来很大帮助. eclipse代码里面的代码提示功能默认是关闭的,只有输入"."的时候才会提示功能,用vs的用户可能不太习惯这种,vs是输入任何字母都会提示,下面说一下如何修改eclipse配置,开启代码自动提示功能打开 Eclipse  -> Window -> Perferences -> Java -> Editor -> Con

配置RAID5磁盘阵列并尝试磁盘损坏自动替换功能

实验目标: 准备四块磁盘做raid5磁盘整列,且有一块磁盘是备份盘,并且演示磁盘损坏自动替换功能 新建四块磁盘 利用init6重启设备,并利用"fdisk -l"命令查看新建磁盘. 对四块新建磁盘进行分区,并将文件支持类型设置为fd(Linux raid auto),设置完成后检查配置. 检查mdadm软件包是否安装. 制作raid5磁盘阵列,且有一块磁盘为备用盘. -Cv表示创建并显示过程:/dev/md5为raid名称:-l指定raid级别:-n指定设备数量:sd[b-d]1为创建

[转载]TFS发送邮件提醒功能

第一次使用TFS 2010,发现有Project Alerts功能,就是项目组工程中若有任何改动时,TFS Server会自动发邮件提醒.Microsoft提供的配置方法(http://msdn.microsoft.com/en-us/library/ms400808(VS.80).aspx)中不适合TFS 2010,因此,我提供了以下参考方法: 1.安装SMTP Server 首先,在装有TFS 2010的服务中先安装SMTP服务,我使用的是Windows Server 2008,在Serve

七色花基本权限系统(5)- 实体配置的使用和利用T4自动生成实体配置

在前面的章节里,用户表的结构非常简单,没有控制如何映射到数据库.通常,需要对字段的长度.是否可为空甚至特定数据类型进行设置,因为EntityFramework的默认映射规则相对而言比较简单和通用.在这篇日志里,将演示如何对数据实体进行映射配置,并利用T4模板自动创建映射配置类文件. 配置方式 EntityFramework的实体映射配置有2种. 第一种是直接在实体类中以特性的方式进行控制,这些特性有部分是EF实现的,也有部分是非EF实现的.也就是说,在数据实体层不引用EF的情况下,只能使用不全的

zabbix专题:第九章 zabbix自动发现功能详解

zabbix自动发现功能详解 对Linux有兴趣的朋友加入QQ群:476794643 在线交流 本文防盗链:http://zhang789.blog.51cto.co zabbix自动发现功能详解 网络发现简介 有100台服务器,不想一台台主机去添加,能不能让zabbix自动添加主机呢,当然可以,网络发现便是这个功能,当然前提条件是所有服务器都已经安装了agent或者snmp(其实也可以不用,鉴于我们大部分功能都用agent,所以请安装上agent),server扫描配置好的ip段,自动添加ho

zabbix通过自动发现功能实现自动识别网络设备接口

由于之前网络设备不是很多,监控网络设备接口就直接使用模版中的item来实现了,可是现在公司上线了一大批网络设备,如果要每个网络设备都做模板,添加item......那就该废了,于是迫于压力今天来测试使用zabbix的自动发现功能实现自动发现网络设备接口,并且自动获取接口的流量值,生成流量图等功能. 这样的话就能节省大量时间,时间就是生命啊,把时间浪费在枯燥的添加网络接口的工作上就是在浪费生命!好了,废话不多说,进入正题: 首先,在交换机上面配置好snmp协议,为了简单,这里目前使用的是snmp