Protecting Your Atlassian Tools Ecosystem Investment (Part 5): Best Practices for Add-ons and Health MonitoringIn Part 4 of this Governance series we discussed configuration management. In this final installment we’ll take a look at the best practices around add-ons, integrations, and health monitoring.
Add-ons & Integrations
Selecting add-onsThe Atlassian Marketplace is a great resource for add-ons to extend the native functionality of Jira and Confluence. You’ll find a number of add-ons that provide similar functionality for many different use cases. In order to best serve the needs of your user base and ensure that your instance is scalable and maintainable over the long-term, keep the following considerations in mind:
- Determine whether the add-on you are considering is from a listed Top Vendor. Top Vendors have demonstrated that they meet Atlassian benchmarks for traction, support, and reliability within the Atlassian ecosystem.
- Review the number of installs of the add-on and reviews to get a sense of whether the add-on is widely adopted or received well by users.
- Check the vendor’s support model to understand what kind of help you can expect should you run into questions or errors.
- Install the add-on first in a lower tier environment (most add-ons provide a free trial license for evaluation purposes) to evaluate whether the functionality meets your needs, and to confirm there are no conflicts with other existing configurations or add-ons.
- Where possible, look for vendor-supported add-ons for integrations with other enterprise tools. If there is no such option available, more general integration add-ons (such as Tasktop or Opshub) can provide integration functionality across a number of tools.
- If you are unable to find an add-on suited to your needs, review whether your target system can use Jira’s REST API to update or share data and create your own custom integration.
Maintaining add-onsAs new features are added or vulnerabilities are addressed, both your add-ons and Jira environment will require updates. How frequently you update your add-ons is something that will depend on a number of factors. Over time, support for older versions of both add-ons may be deprecated, so it is important to ensure you remain on a supported version of your tooling landscape. However, newer updates may cause conflicts with other add-ons or integrations, so staying on the forefront of the latest updates may not be in your organization’s best interest, either.
As a matter of practice, try to remain on the latest version of an add-on that you have tested and confirmed to be compatible with your overall tooling solution and integrations. This means enacting a process to evaluate updates by reviewing changelogs and feature updates to identify any potential conflicts before considering an update or upgrade. Once you have identified that an update or upgrade is not likely to cause issues within your existing ecosystem, begin by making a copy of your production environment or refreshing a lower-tier environment with a copy of production to ensure that you are testing against the closest equivalent to your production environment. Install the update and thoroughly test any new features or functionality, and perform some basic testing of other add-ons and basic Jira functionality to ensure that no adverse effects are introduced.
If you find an error, reach out to the vendor for support, and save a copy of the logs to assist in troubleshooting. You can revert the add-on to a previous version to return to expected behavior until the issue is resolved. Most add-ons will retain their settings and data in the Jira database to allow you to easily reinstall and get back to your previous configuration without having to set everything back up from scratch.
Health MonitoringAs an enterprise application, Jira is a critical system and requires maintenance to ensure it is running at optimal performance. In order to ensure that your instance remains operating effectively with minimal downtime and impact to users, consider the following health monitoring tools and strategies:
- Generate and review log files on a regular basis. Jira automatically captures activities and exceptions that can point you to issues before they become larger problems.
- Ensure your log settings are configured for the appropriate level of information.
- WARN is set by default
- DEBUG should be used when diagnosing a particular issue with Jira or an add-on, as this provides the most extensive diagnostic information. Debug level logging should be turned off in most production environments as it can consume a large amount of disk space on a busy server.
- The Log Scanner leverages the internet to search through selected logs and attempts to match messages in those logs with Atlassian bug reports and Knowledge Base articles
- Application Re-indexing should be performed after configuration changes (creating or removing custom fields, creating or removing workflow states, workflow updates, and screen changes, among others) to ensure that data remains in sync. Re-indexing allows for greater consolidation and improved data compression. You can reindex individual projects, or the entire system. If done during primary business hours, ensure you are performing a background reindex so as not to impact system performance.
- The Jira integrity checker works to ensure Jira data is in a consistent state and provides a ‘repair’ option for most cases should errors occur.