Skip to main content

Recommendations

Recommendations are generated by a background task which runs hourly. It checks whether there are any suggested actions you should take within DBmarlin itself or any of the target databases that you are monitoring.

The Recommendation screen is a top level screen in DBmarlin, accessible from the left navigation menu. The screen is made up of 3 tabs Open, Resolved and Hidden which are the 3 states that a recommendation can be in.

  • Open - When a new recommendation is created it will show up in the Open list.
  • Resolved - Any recommendation for which you click the 'Mark as resolved' button will be moved to the Resolved list. Marking as resolved will move it out of the Open recommendations but, if the action to resolve has not been completed, or if the condition reoccurs in the future, then the recommendation will automatically move back to the Open recommendations list. It is possible to 'Mark as unresolved' to move back to Open list. If the condition that caused the recommendation goes away (either by itself, or because of your action), then the recommendation will be moved to Resolved at the next cycle.
  • Hidden - Any recommendation for which you click the 'Hide' button will be moved to the Hidden list. Once a recommendation has been hidden, it will stay in the hidden list even if the action to resolve was not completed, or if it were to reoccur in the future, it will not move back into the Open list. It is possible to 'Unhide' to move back to Open list.

DBmarlin Recommendations Screen

Retention for recommendations​

Resolved recommendations will be purged after 8 days by default or the value set for raw_data_retention_days in the DBmarlin parameter table if this has been customised.

List of recommendation rules​

Below is a list of the recommendation rules and the category, action, label, link and test for each one.

Invalid licence keys​

  • Category: DBmarlin
  • Action: Delete invalid licence keys
  • Label: None
  • Link: /admin/licences
  • Test one or more licence keys are marked as invalid

Expiring licence​

  • Category: DBmarlin
  • Action: Check licence key expiry
  • Label: None
  • Link: /admin/licences
  • Test current licence end date is within 7 days (30 days for premium). Note this is the cumulative licence.

Has datasource debug​

  • Category: DBmarlin
  • Action: Turn debug off
  • Label: Datasource name
  • Link: /admin/instances/edit/<id>
  • Test Debug is enabled

Has host debug​

  • Category: DBmarlin
  • Action: Turn debug off
  • Label: Host name
  • Link: /admin/host/edit/<id>
  • Test Debug is enabled

Has SQL statistics (CockroachDB)​

  • Category: DBmarlin
  • Action: Enable statement_statistics
  • Label: Datasource name
  • Link: https://docs.dbmarlin.com/docs/Monitored-Technologies/Databases/cockroachdb
  • Test is hassqlstatistics is false and collectsqlstatistics is true and is monitoring. Probably cannot disable statistics in Cockroach but could look into permissions of the monitoring account. Make sure the link resolves (change docs if necessary) and that it covers this item. Can open in a new window (using the fact it begins with http).

Has SQL statistics (MySQL)​

Has SQL statistics (PostgreSQL)​

Collect blocking sessions​

  • Category: DBmarlin
  • Action: Enable collection of blocking sessions
  • Label: Datasource name
  • Link: /admin/instances/edit/<id>
  • Test is collectblockingsessions is false and defaultcollectblockingsessions is true.

Has excessive blocking time​

  • Category: Database
  • Action: Investigate locking
  • Label: Datasource name
  • Link: /instances/<id>/blocking-sessions
  • Test is hasblockingsessions is true and collectblockingsessions is true and is monitoring and blocking session wait time > 0 and percentage blocking time is > 10% of total wait time, taken over the last interval (default 1 hour).

Deadlocks detected​

  • Category: Database
  • Action: Investigate deadlocks
  • Label: Datasource name
  • Link: /instances/<id>/deadlocks
  • Test is hasdeadlocks is true and collect deadlocks is true and is monitoring and count of deadlocks > 0, taken over the last interval (default 1 hour).