This page is an overview and a guide for a maintainer of ActivityTimeline app for Jira Server and Jira Data Center platforms.

It includes an architecture overview, configuration options and troubleshooting scenarios.

Architecture overview

ActivityTimeline app for Jira Server

ActivityTimeline app for Jira Data Center

In the diagrams above, “ActivityTimeline Service” corresponds to a child process that ActivityTimeline app starts. The app is using this process for synchronization between nodes as well as keeping the planning, tracking, work and report dashboards up to date.

This process automatically starts on a single node that is called a “Master node”. If the service is terminated on a Master node or the whole Jira Node goes down then another random alive node is automatically promoted to the Master node status. The ActivityTimeline Service will be automatically launched there.
ActivityTimeline Service automatically terminates itself on uninstallation/disabling the app or Jira shutdown.

All Jira DC nodes must be able to communicate between each other through http or https. So, it is required to have a <Connector> tag in each Jira DC node’s server.xml file with either “http” or “https” scheme.

Configuration options

There is a variety of configuration options within the app that are covered in the Admin and User Guides.
This section describes the additional optional settings that allow to tweak the launch parameters of the “ActivityTimeline Service” process.

The configuration options can be defined in a special service configuration file that is located at <JIRA_HOME>/plugins/activitytimeline/config/at.properties file.

The settings should be defined in the following format, one per line:
NAME_OF_SETTING=VALUE_OF_SETTING

Here is the list of available options:

note

It is required to restart the “ActivityTimeline Service” from the Maintenance Page or disable/enable ActivityTimeline app from the “Manage apps” page for the changes to take effect.

It is required to restart the “ActivityTimeline Service” from the Maintenance Page or disable/enable ActivityTimeline app from the “Manage apps” page for the changes to take effect.

Troubleshooting

This section describes possible error conditions and ways to troubleshoot or fix them.
If none of troubleshooting options helps then you can contact us by creating a support request at
https://reliex.com/support/ link.

Please make sure to include logs from all Jira nodes as well as ActivityTimeline log zip file in the request:

Symptoms:

Empty page or infinite loading animation when accessing any ActivityTimeline menu page

This usually happens if there is no connection between ActivityTimeline app/Jira and ActivityTimeline service process; Or when ActivityTimeline service cannot start.

Troubleshooting options:

  1. Make sure there is at least 1.5GB of free RAM still available for Jira process before enabling ActivityTimeline app. ActivityTimeline app & service is using up to 1GB of RAM in the default configuration.

  2. Make sure Jira is running on Java 8. If Jira is running on Java 11 or higher then please make sure to follow this guide to configure ActivityTimeline service to utilize Java 8 even if Jira is running on Java 11 at this page: ActivityTimeline on Jira Server/DC that is running on Java 11

  3. If Jira instance is configured to have just an AJP Tomcat connector for communication with Apache HTTPD proxy service then it is required to add an additional http or https scheme Connector in Jira’s Tomcat server.xml configuration file.

  4. Check firewall rules. Please make sure the firewall does not block local (localhost) connection between Jira process and ActivityTimeline process or their ports. You may set specific ports for ActivityTimeline service/manager service (mentioned above) if you would like to define specific firewall rules for them.

  5. Check antivirus software configuration and its vault on the Jira server. An antivirus software may quarantine the app file or block the service process in very rare cases.

Updates from Jira are not reflected on ActivityTimeline dashboards

This can happen if the synchronization job fails to pull the latest incremental updates from Jira API.
For example, if specific user was set as Synchronization User and then got disabled or removed from Jira later on.

Troubleshooting options:

  1. Update the default Synchronization User (admin user who installed the app) or “ActivityTimeline Addon Sync User” (addon_activitytimeline_sync_user) if:

    1. that user was disabled or removed from Jira

    2. that user does not have Browse Project permission to specific Jira Projects

  2. Open Jira → ActivityTimeline → Configuration → Setup Wizard page. Choose to use current user or custom app user (addon_activitytimeline_sync_user) and click NEXT button. You may close the page now and skip the remaining steps of Setup Wizard as the synchronization user is already updated and saved.

Issues from some projects are missing on ActivityTimeline dashboards

This can happen if the specific projects are not enabled to be managed within ActivityTimeline app or synchronization user does not have Jira permission to “see” issues of that project (Browse Project permission).

Troubleshooting options:

  1. Check if that project is enabled in ActivityTimeline at Jira → ActivityTimeline → Configuration → Projects page. Check if there is a checkbox ticked next to the missing project. Tick that checkbox and then click on a small green sync icon next to it to reload/refresh issues of that project into ActivityTimeline dashboards.

  2. Check permissions of Synchronization user (you may login into Jira as that user and check if issues or required projects are visible to that user).

ActivityTimeline dashboards behave slower than usual

This can happen if there is an increased number of simultaneous users that perform changes on ActivityTimeline dashboards, generate reports and track time.

Troubleshooting options:

  1. Increase the default memory limit for ActivityTimeline app/service. Instructions are available at the following page: Increasing memory for ActivityTimeline Service on a large Jira Server/DC instance

The previous ActivityTimeline service process did not stop after Jira restart

This situation can happen in a very rare occasion when there are no enough system resources like RAM to initiate a proper shutdown of ActivityTimeline service and free up its resources.
By default, ActivityTimeline service checks if it is bound to a Jira/ActivityTimeline app process every 10 minutes. If it finds out that it is orphan (was linked to the previous Jira process) then it will automatically terminate itself.

Troubleshooting options:

  1. If ActivityTimeline did not shutdown itself properly after more than 15 minutes then it is possible to simply kill the process using native Linux or Windows commands/UI.

  2. You can find the process by the launch parameters of the process and terminate it manually:

    1. Linux:

      1. ps -ef | grep ActivityTimelineService.jar

      2. sudo kill -9 <PROCESS_ID_FROM_PREVIOUS_COMMAND>

    2. Windows

      1. Open process explorer

      2. find java.exe process that has ActivityTimelineService.jar listed in the launch parameters

      3. terminate that process

If you are experiencing some other problem that is not described here, please don’t hesitate to contact our team at support@reliex.com.