Jira Integration is an advanced feature allowing you to synchronize the crashes and errors it tracks on your application with your Jira tickets. You can create Jira tickets using the error information, e.g., a stack trace, directly from the Countly Dashboard and work on the bug ticket with Jira and its resolution status, e.g., In Progress, will be synchronized both ways.
The Jira Integration plugin is available only in the Enterprise Edition and is an addition to the Crashes & Errors plugin.
Setting Up the Jira Integration
Generating the OAuth Key Pair
1. Generate a private key.
openssl genrsa -out jira_privatekey.pem 1024
2. Generate a certificate from the private key.
openssl req -newkey rsa:1024 -x509 -key jira_privatekey.pem -out jira_publickey.cer -days 365
3. Extract the public key from the certificate.
openssl x509 -pubkey -noout -in jira_publickey.cer > jira_publickey.pem
Setting Up the Jira Application Link
As an admin of your Jira site, navigate to the site
top bar > cog icon >
Products. In the next screen, navigate to
Application links in the left sidebar.
Start creating a new application link by entering your Countly instance's URL in the text box and clicking
Create new link. There will be an alert notifying you that no response was received from the URL you entered and that it may not be valid, disregard it and click
In the next step, fill in the Application Name field with anything you like, but we recommend "Countly". Leave Application Type as "Generic Application". Click
Continue and the application link should be created successfully.
Now configure OAuth by editing your newly created application link, clicking the pencil icon on its far right side.
- Navigate to Incoming Authentication. Fill the following fields and click
- Consumer Key: Any string will do, we recommend something like a password, e.g
- Consumer Name: A short name to identify your Countly instance.
- Description (optional): A short description to identify your Countly instance.
- Public Key: The contents of the file
jira_publickey.pembetween but not including the lines starting with hyphens.
Setting Up the Countly Jira Integration Plugin
Now, as a global admin of your Countly instance, go to
Settings and then scroll to
Fill all the fields:
- Consumer Key: The arbitrary string you chose while setting up the application link on Jira.
- Jira API URL: URL of the Jira server, e.g. "https://foobar.atlassian.net".
- Callback URL: Fully qualified URL of the API server of your Countly instance, e.g. "https://foobar.count.ly".
- Private Key: The contents of the file
jira_privatekey.pembetween but not including the lines starting with hyphens.
Authorize Countly to use your account to synchronize crashes by clicking
Login . This should take you to your Jira instance, asking if you want to authorize your Countly application with the current logged-in Jira account.
Note that you must create corresponding Jira projects for your Countly applications. To do this for each application-project pair go to
Applications > Select your application >
App Settings panel >
Fill all the fields, keeping in mind that they are case-sensitive with Jira, so for example "To do" will not work if the Jira workflow state is "To Do".
- Project: Jira project key/slug to create issue in, e.g. If your project is "Test Project" then your key/slug will probably be "TP".
- Issue Type: Jira issue name to create issues with, e.g. Bug.
- To Do States: Jira issue status names corresponding to unresolved crashes, e.g. To Do.
- Done States: Jira issue status names corresponding to resolved crashes, e.g. Done.
When a crash resolution change is made on the Countly side and needs to be synchronized with Jira, the first state on the corresponding configuration will be chosen. For example, "Done" will be chosen if the crash is marked as resolved and Done states are "Done" and "Cancelled", in that order.
Creating a Jira Task for a Countly Crash
Having set Jira integration up, you can create a Jira task for any crash or error on Countly by clicking
Create Jira Task in a crash manipulation menu.
This will open a pop up in which you can edit the Jira task's title and body.
Once you are satisfied with the task's title and body, click
Create Jira Issue and you should see a notification informing you that the task has been successfully created.
From now on, the issue will be synchronized both ways. It will be set to resolved, resolving, or unresolved when it is marked accordingly on Jira, and vice versa.