Hi,
We would like to use mail handler for Nagios alerts. We would like to create Jira a ticket whenever an alert receive, if an issue exist with same subject then it should add email into comment. I am trying the following script but it is not adding email into comment, it is only creating tickets whenever I send a test email, even I'm sending the same email. Am I missing something?
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.service.util.ServiceUtils
import com.atlassian.jira.service.util.handler.MessageUserProcessor
import com.atlassian.jira.user.ApplicationUser
import com.atlassian.jira.user.util.UserManager
import com.atlassian.mail.MailUtils
def userManager = ComponentAccessor.getComponent(UserManager)
def projectManager = ComponentAccessor.getProjectManager()
def issueFactory = ComponentAccessor.getIssueFactory()
def messageUserProcessor = ComponentAccessor.getComponent(MessageUserProcessor)
def subject = message.getSubject() as String
def issue = ServiceUtils.findIssueObjectInString(subject)
if (issue) {
return
}
ApplicationUser user = userManager.getUserByName("admin")
ApplicationUser reporter = messageUserProcessor.getAuthorFromSender(message) ?: user
def project = projectManager.getProjectObjByKey("ALERT")
def issueObject = issueFactory.getIssue()
issueObject.setProjectObject(project)
issueObject.setSummary(subject)
issueObject.setDescription(MailUtils.getBody(message)) issueObject.setIssueTypeId(project.issueTypes.find { it.name == "Task" }.id) issueObject.setReporter(reporter)
messageHandlerContext.createIssue(user, issueObject)
Here is the email example
Subject: PROBLEM Service Alert: td-application-01/Service Check: PRT is CRITICAL
***** Nagios Alert *****
Notification Type: PROBLEM
Service: Service Check: PRT
Host: td-application-01
Address: td-application-01
State: CRITICALDate/Time: Thu Jul 30 14:41:59 PST 2020
Thank you