====== ABAP locks ====== This monitor will look for locks on table objects and generate alarms if too many locks are waiting since a given time ===== Configuration hints ===== * Use the surveillance table to adjust the monitoring settings: * Client * Table * Wait time * Max number of locks. **Multi severity threshold** * You can use the [[..:commonsettings#multi_thresholds_syntax|multi threshold syntax]] to define multiple threshold/severity settings per rule. **Exclusions:** * You can define [[..:commonsettings#exclusion_rules|exclusion rules]] to quickly filter out results. ===== Configuration ===== * **Send metadata:** * If enabled, this monitor will send collected locks as metadata to the configured plugins/integrations. * It can usually be retrieved as logs or tabular data. * **Minimum lock time (min)** * Defines the minimum time held by a lock in order to be processed as metadata. * Will not prevent locks be processed by the monitoring rules and to be alerted upon. ==== Surveillance table ==== ^Parameter^Description^ ^Active|Use this field to activate or deactivate a line of configuration.| ^Client|A filter on the client.| ^Table Name|The name of the table to filter. You can use regular expressions, or * to match any object.| ^Max wait time (min)|The threshold for the maximum time a lock can be waiting, in minutes.| ^Max locks|The maximum number of lock waiting since more that the configured waiting time. | ^Aggregate|If checked, the alarm will indicate how many matching locks are waiting since too long time. If not checked, it will send an alarm per table having too many waiting locks.| ^Severity|The default level of severity of the alarm generated by this line of surveillance.| ^Auto clear|If checked, the alarm will be cleared as soon as the alarm condition is not met anymore.| ^Alarm tag|This field allows to add custom text within the alarm message. %MSG% variable will contain the actual generated message and can be used such as: "my_prefix %MSG% my_suffix". By default, tag will be used as prefix.| ^Alarm|If checked, this line of surveillance will be used for alarm generation.| ^Metric|If checked, this line of surveillance will be used for metric generation.| ^Report|If checked, this line of surveillance will used for showing threshold and severity in the daily report| ===== Examples ===== ^Active^Client^Table Name^Max wait time (min)^Max locks^Aggregate^Severity^Auto clear^Alarm tag^Alarm^Metric^Report^ |true|*|*|600|10|false|MAJOR|true| |true|false|false| **Effect** : Sends a MAJOR alarm for each table having more than 10 waiting locks since more than 600 minutes. ===== Examples ===== ^Active^Client^Table Name^Max wait time (min)^Max locks^Aggregate^Severity^Auto clear^Alarm tag^Alarm^Metric^Report^ |true|800|TBC.*|480|1|true|WARNING|true| |true|false|false| **Effect** : Sends a WARNING alarm if, in client 800, at least 1 table with name starting with TBC has a lock since more than 480 minutes ===== Generated metrics ===== ^metricId^metricUnit^metricTarget^metricDescription^ |LONG_EXCLUSIVE_LOCKS_NUMBER|Seconds|TABLE|The number of exclusive locks waiting on the table|