System monitoring with profiles
The following components can be used to create profiles for automated system monitoring.
See also section Concepts to ensure stable operation in general.
Input Agent CommLog.
Class StatistikDataProvider (cron job).
Class ListErrorEntries (cron job).
Class ErrorRetrieveCron (cron job). See section "Automatic error correction".
Class RestartFailedJob (Response). See section "Automatic error correction".
Integration Unit X12InputCheckUnit. See section "Automatic error correction".
Function "disk-free()". See section Recognising and dealing with critical system conditions.
The monitoring website can be queried and evaluated with a profile on another system (e.g. test system), e.g. with the function "http()".
Checking presence of external HTTP systems with function "http()".
Checking presence of external databases/tables/values with function select-statement a [[param &1 = c], d,e, f,g,h,i,j], default k,l,m,n dbAlias = b.
Class SapCheckArfcsState (cron job).
Example profiles
Detecting errors of the reorganisation run
The reorganisation run (to be found in the CronJobService under the name DW_REORGANISATIONTHREAD) deletes obsolete log entries daily from the table dw_log (by default at 03:00 am) and writes the system-wide permanent value LastReorganisationDuration. Format: <start time in ms since 01.01.1970>-<end time in ms since 01.01.1970>. The lifetime of the permanent value is 36 hours. Note: In a load-balance system the value is only written on the node controller.
This value can be read with function get permanent(). Note: This information (in another form) can also be read out on the monitoring web page.
When the reorganisation run starts, the start time is set, but the end time will be "0". At the end of the reorganisation run, the start time and the end time are set. So you can see if the reorganisation run was finished, because if not (still running), the end time value is "0".
You can also see if the reorganisation run has run within the last 36 hours, because if not, the system-wide permanent value "LastReorganisationDuration" is empty.
Furthermore, the duration (difference in ms) can be determined when the run is finished and an alarm can be triggered if a defined threshold value is exceeded.
In the following profile you will find an exemplary implementation. The profile must be set to active after importing and the email parameters in the Response have to be adjusted: Profile-CheckLastReorganisation.pak