Maintenance mode & knowledge database

Introduction to the maintenance mode features

Hint

The maintenance features are composed of two main components:

  • The Maintenance Mode, which allows to silence TrackMe alerts for a given period of time

  • The Maintenance Knowledge DataBase, which allows to store maintenance information associated with the maintenance mode actions, or independently, for audit purposes and also to influence SLA calculations accordingly

Tenants scope selection from Trackme 2.0.97

  • Since TrackMe release 2.0.97, you can define the scope of the Virtual Tenants when enabling the maintenance mode.

  • This allows defining which Virtual Tenants are concerned by the application of the maintenance mode.

  • Tenants scope is also automatically taken into account in the maintenance mode knowledge database and for SLA calculation purposes.

TrackMe permissions requirements

To access and manage the Maintenance Mode features, you need to have the following permissions:

  • TrackMe admin (capability: trackmeadminoperations)

Regarding the Maintenance Knowledge DataBase, you need to have the following permissions to access the UI in read only:

  • TrackMe user (capability: trackmeuseroperations)

To operate changes, adding new Maintenance records or manage existing records, you need to have the following permissions:

  • TrackMe admin (capability: trackmeadminoperations)

Maintenance Mode

You can access the Maintenance Mode UI fron the maintenance menu on top of TrackMe:

maintenance_mode.png

Enabling the Maintenance Mode

You can enable the Maintenance Mode to start immediately or at a given date and time:

maintenance_mode_enable.png

If the start date is in the future, TrackMe schedules the start automatically:

maintenance_mode_enable_scheduled.png

When the start period is reached, or if you selected a start for now, TrackMe shows the Maintenance Mode enabled:

maintenance_mode_enabled.png

You can disable the Maintenance Mode at any time:

maintenance_mode_disable.png

Detection and management of the Maintenance Mode status is driven by a Tracker called trackme_maintenance_mode_tracker.

Maintenance Knowledge DataBase

Accessing the Maintenance Knowledge DataBase

The interface for the Maintenance Knowledge DataBase is also accessible from the maintenance menu on top of TrackMe:

maintenance_kdb.png

Maintenance Knowledge DataBase behaviour

Maintenance records are automatically created an updated when enabling a scheduled or immediate maintenance period via the Maintenance Mode user interface and REST API endpoints:

  • When the maintenance mode is enabled and then disabled, TrackMe automatically creates and maintains a record in the Maintenance Knowledge DataBase as a planned operation.

  • Associated periods of times are excluded from SLA calculations in TrackMe.

  • You can also optionally register unplanned operations for your own auditing

  • Only planned operations are excluded by default from SLA calculations, but you can use the global setting maintenance_kdb_exclusion_behaviour to manage this behaviour.

  • Both types of Maintenance periods can be registered via this UI, or via REST API and the maintenance_kdb resource group endpoints (See TrackMe Rest API Reference dashboard)

REST API endpoints for the Maintenance Mode and Maintenance Knowledge DataBase

Both features rely on different API endpoints, enabling their integration within and out of TrackMe, consult the REST API reference dashboard:

maintenance_api_endpoints1.png maintenance_api_endpoints2.png maintenance_api_endpoints3.png

REST API example: enable the maintenance mode for 1 hour

The following example immediately enables the maintenance mode for all tenants for a duration of 1 hour starting now:

curl -u username https://mysplunk:8089/services/trackme/v2/maintenance/global_maintenance_enable -X "POST" -d "{\"maintenance_duration\": \"3600\", \"update_comment\": \"Enabling a TrackMe global maintenance for 1 hour of duration from now.\"}"

The following example does the same but restricts the scope to a tenant name “secops”:

curl -u username https://mysplunk:8089/services/trackme/v2/maintenance/global_maintenance_enable -X "POST" -d "{\"maintenance_duration\": \"3600\", \"update_comment\": \"Enabling a TrackMe global maintenance for 1 hour of duration from now.\", \"tenants_scope\": \"secops\"}"

REST API example: disable the maintenance mode

The following example disables the maintenance mode:

curl -u username https://mysplunk:8089/services/trackme/v2/maintenance/global_maintenance_disable -X "POST" -d "{\"update_comment\": \"Disabling the TrackMe global maintenance.\"}"