Performance issues and Sidekiq UI interface

Diagnosis of performance and latencies problems in Cyberwatch

Please read this section if you encounter latencies or performance problems with Cyberwatch

In case latency problems are observed in the Cyberwatch software, the first course of action should be to identify the type of tasks concerned.

An overview of the tasks being executed in the different queues of the software can be consulted from the Execution queues status button in the top right corner of the software.

If you observe some performance/latency problems on your Cyberwatch application, please contact us by e-mail at support@cyberwatch.fr and join to your message a screenshot of the “Busy” menu from the Sidekiq UI interface by making sure to scroll down to the bottom of the page in order for the Jobs table to be totally visible.

Description of the Sidekiq UI interface

Cyberwatch embeds an interface allowing to consult and handle the applications asynchronous tasks planned by the application. Please refer to the documentation on the software tasks management for more information of the execution queues in the software.

This interface, named Sidekiq UI, est accessible through the Execution queues status button in the top right corner of the software.

The Sidekiq Gem also offers a documentation wiki specific to its implementation.

In the current Cyberwatch version, all actions presented below that let the user interact with the jobs and queues of the software through the Sidekiq UI interface are deliberately blocked, and return a Forbidden.

The main goal of this documentation is to explain the use cases specific to the Cyberwatch application and how to use features of the Sidekiq UI interface made available. Sidekiq UI is divided into tabs described below.

Dashboard

Offers a dashboard that indicates the number of jobs processed in real time.

The history graph lets you see the number of jobs executed per day, for an interval up to 6 months.

Sidekiq being intrinsically linked with the Redis cache database, metrics and information of the Redis are also presented at the bottom of the page.

Busy

This page indicates the current state of the execution queues and running jobs.

The “Process” table would let us manage the execution queues, through the actions “Quiet” and “Stop” if they were not disabled.

The “Jobs” table lists each job currently running in Cyberwatch.

Queues

This page lists the different queues of the Cyberwatch software, in which different kind of jobs are planned.

Each queue has its own role, which will impact the kind of job placed in these queues.

More details about this queues are explained here.

Retries

This page is theoretically dedicated to managing the jobs that should be retried.

In the Cyberwatch context, no job should ever be present in this menu.

Scheduled

This page lists planned jobs that will be executed in the near future.

The “Add to queue” button adds a job to the current execution queue.

The “Delete” button allows to remove a job, which will then not be executed as it was planned.

Dead

This page establishes an inventory of dead tasks in the application.

In the Cyberwatch context, no job should ever be present in this menu.

Metrics

This page allows to get a graphic view of the execution time of executed jobs.

It also presents statistics of all jobs previously executed with their execution time and metrics such as their total and average execution time.