Skip to content

Python module that allows you to create tasks in Jira by the trigger from Zabbix

License

Notifications You must be signed in to change notification settings

zabbixcn/zabbix-jira

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

zabbix-jira

Python module that allows you to create tasks in Jira with grafs by the trigger from Zabbix.

Requirements:

  • python >= 2.7
  • python libs: requests, jira

Installation:

  1. Copy this repo to your zabbix-server: git clone https://github.com/OSidorenkov/zabbix-jira.git
  2. Copy jirabix.py to your Zabbix AlertScriptsPath directory (see your zabbix_server.conf)
  3. Create and configure config.py near jirabix.py. You can take as an example config.py.example from repo.
  4. Install python libs: pip install requests jira

Configuration:

  • Create new media type in Zabbix:

2017-06-02 11 33 21

If you use Zabbix 3.0 and higher, add this parameters:

{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}
  • Add this media to your read user in Zabbix

2017-06-02 11 40 19

Add in "Send to" field jira username (see the profile user in Jira)

  • Configure your Actions:

2017-06-02 11 48 12

Example message:

Last value:{ITEM.VALUE1} ({TIME})
zbx;graphs
zbx;graphs_period=1800
zbx;itemid:{ITEM.ID1}
zbx;triggerid:{TRIGGER.ID}
zbx;title:{HOST.HOST} - {TRIGGER.NAME}
Trigger Severity: {TRIGGER.SEVERITY}
Server: {HOSTNAME} ({HOST.IP})

Desc:
{TRIGGER.DESCRIPTION}

2017-06-02 11 48 38

Example recovery message:

Server: {HOSTNAME} ({HOST.IP})
zbx;triggerid:{TRIGGER.ID}
zbx:ok:1

Description:
Problem resolved!

Time of resolved problem: {DATE} {TIME}

Annotations

zbx;graphs -- enables attached graphs
zbx;graphs_period=10800 -- set graphs period (default - 3600 seconds)
zbx;graphs_width=700 -- set graphs width (default - 900px)
zbx;graphs_height=300 -- set graphs height (default - 300px)
zbx;itemid:{ITEM.ID1} -- define itemid (from trigger) for attach
zbx;title:{HOST.HOST} - {TRIGGER.NAME} -- graph title
zbx_triggerid:{TRIGGER.ID} -- define triggerid to link problem and recovery of event
zbx;ok:1 -- use this parameter only in RECOVERY message, if you don't want create a new task about recovery in Jira

You can use Jira format text in your actions: https://jira.atlassian.com/secure/WikiRendererHelpAction.jspa?section=all

Test script

You can use the following command to create a ticket in Jira from your command line:
python jirabix.py "jira_username" "ticket_subject" "ticket_desc" where

  • jira_username - username from Jira user profile
  • For ticket_subject and ticket_desc you may use "test" "test"
    • If you want to test real text from zabbix action message copy test/entry.txt from repo and change the contents of the file on your real data and change jirabix.py like this:
       2017-06-02 12 18 41
       And run:
      python jirabix.py "jira_username" "ticket_subject

Result

  • See how creates the ticket with graf from Zabbix:

2017-06-02 12_31_18

  • When problem is going to OK, script convert the ticket to "Done" status with comment from zabbix recovery message:

2017-06-02 12_44_41

About

Python module that allows you to create tasks in Jira by the trigger from Zabbix

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%