Page tree
Skip to end of metadata
Go to start of metadata

 

Introduction

Using Cleaner for Jira, you can improve the performance of your Jira Server or Data Center instance.

The interface provides both high and low-level detail on the different configuration entities in the system, making it easy to see where expending effort will result in a management gain and reduce technical debt on your system.

There are specific areas that you should focus on to improve performance and this guide takes you through the main areas you should concentrate on, how you can use the interface and the optimal deletion order to remove as many unused configuration items as possible.





 

Main focus areas

There are some specific areas that you should concentrate on to increase the performance of your system, which can significantly improve:

  • Response Time
    • In particular issue search, create, edit and view operations (this has a multiplier effect on other operations)
  • Response Size
    • Decreasing traffic can help in low-bandwidth situations and can reduce the amount of connections that are kept open on your nodes.
  • Index Size
    • By decreasing the amount of issues (1) and the size of these documents in the index, we can drastically improve indexing size.
    • Particularly useful in clustered (Data Center) environments where copying the index on a new node being added can increase MTTR.
  • Indexing Speed
    • Increasing the speed of indexing can help in recovery situations, where you need to rebuild corrupt indexes with a full index.
    • This can decrease your MTTR for these types of problems.


The areas listed above are optimised by Cleaner for Jira using the following mechanisms:

  • Correctly Context Custom Fields
    • Automatically apply the correct context to Custom Fields, reducing the scope of these and amount of data stored against each issue.
  • Remove Unused Custom Fields
    • Use the Deep Dive feature to view the current context of a Custom Field alongside the actual usage. This helps when manually applying context.
    • Use the bulk delete feature to remove Custom Fields that are not needed any more.
  • Remove Obsolete Projects
    • Use the Project view to see Projects that have not been updated recently and can safely archived or removed.
    • Remove empty Projects using the Project page.
  • Remove Issue Types, Resolutions and Statuses that are not in use
    • Increase Dropdown speed for Basic Issue Search view by removing these items where they are not in use.
  • Reduce other Configuration Items to speed up the Administration interface





 

Step-by-Step

  1. In order to get into the interface, first ensure you are logged in as a Jira administrator.
  2. Click on the Settings cog in the top-right of the interface and select 'Cleaner for Jira'
  3. First let's check that your system has passed the Health Checks built-into Cleaner for Jira:
    1. Open the homepage.
    2. Click on the Health Checks title to open the full panel.
    3. Check that the tests have passed on your system, if not, read the instructional text in the description column.
  4. Next, we will check a high-level view of what our system is composed of:
    1. Exit the Health Check panel and go back to the homepage.
    2. Click on the 'Statistics' title to open the full text-based view of the system statistics, which shows the total amount of objects, split into the different configuration types (e.g. Issue Types, Workflows).
  5. The other panels on the homepage can be interacted with - the Audit Log and Usage Report - you should interact with them.
  6. Next, we will look at the Reports section to see some further high-level views on the system, before moving on to delete items:
    1. Click on the 'Reports' tab, view the different options:
      1. History Report - see how your system has changed over time - shows an interactive time-series area chart.
      2. Statistics Report - shows the statistics shown on the homepage as a graphical chart.
      3. Audit Log Report - shows actions that have been performed on Cleaner for Jira.
      4. Usage Report - shows how you have used Cleaner for Jira.
      5. System Report - shows system information on your server instance of Jira, or of the current node on a Data Center system.
  7. Let's start clearing items from our system - hopefully the reports section and health checks we checked previously have shown us particular areas for improvements:
    1. Click on the 'Projects' item and:
      1. Delete Empty Projects:
        1. Sort the table by the 'Issue Count' column, in ascending mode.
        2. Tick the checkboxes next to each Project which is empty (make sure they're not templates or valid new Projects).
        3. Click on delete and once you are happy, click on the confirm button.
      2. Delete or Archive Obsolete Projects
        1. Sort the table by the last issue update.
        2. Tick the boxes next to each obsolete Project you want to delete.
        3. Click on the delete button and confirm once you are happy.
    2. Remove unused Schemes:
      1. Run through the top-level scheme tabs to remove these first, as this will open up the deletion of lower-level objects:
        1. Do PermissionNotification and Issue Security Schemes first, which can be found in the 'Schemes' tab.
        2. Next run through the Issue Type SchemesWorkflow Schemes and Issue Type Screen Schemes tabs, removing unneeded objects.
      2. Next, the only intermediate configuration item in Jira - Screen Schemes and remove unused items.
    3. Next we will move onto the low-level items:
      1. Issue Types - more Issue Types will be available for deletion now that we have removed any schemes that contain them.
      2. Workflows - as we have removed Workflow Schemes which contain the item, we can remove the Workflows now.
      3. Screens - previously removing Workflows and Screen Schemes this is contained in will open up additional deletions.
    4. Now, Custom Fields are a major player in performance tuning and we will perform two different actions on them:
      1. First, we will remove unneeded and empty Custom Fields using the Custom Fields tab.
      2. Next, let's set the context of applicable Global Custom Fields to the optimal configuration using the Auto-Context tab:
        1. Scan the system first and wait for the results to be returned.
        2. Select the Custom Fields that you want to automatically context and click on 'Execute'.
      3. Third, we should run through the remaining Custom Fields that were not covered by the Auto-Context tool:
        1. Go the Custom Fields table and sort it by the Context/Scope column, to show Global Custom Fields at the top.
        2. Click on the Red Lozenge, or click on the 'View Custom Field Usage' item in the drop-down.
        3. Once the dialog has opened, you should see two panels - one showing the current context set in Jira and another showing the actual usage of the Custom Field in terms of it's Projects and Issue Types that it has values for.
        4. You can use this information to manually context the field correctly - in particular, Custom Fields that fall outside of the 10 Projects/10 Issue Types scope of the Auto-Context tool.
    5. As a next step, remove other items that are not needed: StatusesPrioritiesResolutions and Issue Link Types.
    6. Lastly, you should use the Duplicate Analysis tab to determine any configuration items that can be merged, this currently covers all types of schemes and can further reduce the administrative burden.
  8. Lastly, check out the REST API tab in the Help section to see how you can automate analysis and deletions using your own scripts.





 

Best deletion order

The way the configuration items in JIRA are set up, in order to remove the most items in the shortest amount of effort is to remove objects that utilise other objects, before removing those objects.

Therefore the best flow is to run through them in the order shown below:

  1. Projects - Start with removing Projects, as this will decrease the amount of mappings with Schemes and Issue Values
  2. Top-Level Schemes - Next, run through Schemes which are associated with Projects, to free up lower level items:
    1. Permission Schemes
    2. Notification Schemes
    3. Issue Security Schemes
    4. Issue Type Schemes
    5. Workflow Schemes
    6. Issue Type Screen Schemes
  3. Mid-Level Schemes
    1. Screen Schemes
  4. Low-Level Items
    1. Issue Types
    2. Workflows
    3. Screens
  5. Other Items
    1. Custom Fields - perform after removing screens, as these screens may contain the Custom Field
    2. Statuses
    3. Priorities
    4. Resolutions
    5. Issue Link Types