• Tom Harris

Dashboard Reporting in Jira - ScriptRunner & Custom Charts

Updated: Apr 30



Adding data to Jira is easy. Getting useful information out is hard.

Visualizing trends and alerts shouldn’t be a challenge. This blog shows how to create a monitoring dashboard directly in Jira using powerful enhanced JQL functions displayed on customizable charts that you can make in minutes.


  1. Inactive Assignees - Show all issues with inactive assignees grouped by Project

  2. Data Warnings - Use RegEx searches to find specific text on issues

  3. Sprint Scope Creep - Show Story Points added after starting sprints


Monitoring Dashboard


Dashboards are a great way to visualize trends and anomalies hidden in large amounts of data. Charts and graphs allow us to quickly notice changes and take action, so it is very useful to have a monitoring dashboard set up for your most important questions.


Inactive Assignees


User: *Creates Jira tickets*

Same User: *Leaves company next day*

Project Manager: “How is my project going?”

Jira: ¯\_(ツ)_/¯

Project Manager: (╯°□°)╯︵ ┻━┻


Employee turnover is challenging in all organizations, but deactivating user accounts is only the first step to managing their departure. Tickets assigned to inactive users will still need working on, so what’s the easiest way to find those issues?


ScriptRunner offers a solution with the JQL function:

assignee in inactiveUsers()

This JQL function will return all issues that are assigned to an inactive user. Great! Except that data is returned in a single list:



These issues could be spread across multiple projects and multiple teams, with no easy way to sort them or re-assign them. Unless you want to be running these searches every day for every project this isn’t a sustainable solution.


Using Custom Charts for Jira you can display issues with inactive assignees on a chart or table for each project, allowing you to easily see user management changes directly on a Jira dashboard or Confluence page.


Clicking on a chart segment will show a list of the issues with an inactive assignee for that specific project.


Data Warnings


When something unexpected happens does that mean alarm bells start ringing and the building goes into lockdown every time? Depending on where you work (MI6, Democratic Caucuses, etc.) this might be the case, but if you’re looking for a simple, visual, way to view important information then the ScriptRunner RegEx JQL function is for you.


Search for specific strings in an issue field (e.g. Summary, Description, etc.) to find and monitor instances where people have added passwords, secrets, or even production API keys (it happens...) as plain text.


Find issues with the word "secret" in the Summary:

issueFunction in issueFieldMatch("", "Summary", "secret")


Find issues with the string "Password", "P@S$WoRd" and other characters combinations:

issueFunction in issueFieldMatch('', "Description", "[pP][aA@][sS$][sS$][wW][oO0][rR][dD]")


Find issues where the description field contains an API Key:

issueFunction in issueFieldMatch('', "Description", "[5KL][1-9A-HJ-NP-Za-km-z]{50,51}")


Sprint Scope Creep


When viewing data from multiple sprints it can be hard to see the trends over time. A simple question is to ask about scope “creep” and see how many issues (and Story Points) are being added to a sprint after it has started.


ScriptRunner offers the JQL function:

addedAfterSprintStart()

This JQL function returns all issues that were added to a sprint after it was started. The results can be displayed on a custom bar chart using the Chart By Custom JQL feature in Custom Charts.


Select the count Story Points


To create this monitoring dashboard for yourself you can find the Scriptrunner and Custom Charts on the Atlassian Marketplace:

Custom Charts can also be created directly in Confluence using the app Custom Jira Charts for Confluence which has identical features to the Jira app.


You can demo Custom Charts right now on our free interactive app playground.

If you have any questions or ideas for features we can add to Custom Charts and would like to speak to our team, please contact us at support@oldstreetsolutions.com.

Old Street Solutions Ltd. © 2018-2020