ICC-Sensoren des Admin-Scout!
Der Admin-Scout enthält zusätzlich zum installierten Openadmin-Tool ein Plugin der CURSOR Software AG. Das Plugin bindet sich im ICC-Menü unter dem Menüpunkt CURSOR-Reports ein.
Die Installation der Sensoren findet man im Menüpunkt "Install Sensors". Es stehen folgende Sensoren zur Verfügung:"
Das Modul ermittelt beim Aufruf, ob ein Sensor installiert ist und mit welcher Versionsnummer. Es schlägt dem entsprechend vor, den Sensor zu installieren, ein Update zu machen oder nichts zu tun.
Durch Umsetzen der Haken, können sie die vorgeschlagene Aktion ändern. Wollen sie einen Sensor löschen, so müssen sie zusätzlich zum Anhaken des 'delete' auch den Haken bei 'do nothing' entfernen. Die Betätigung des 'Submit'-Button führt für alle Sensoren die entsprechende markierte Funktion aus. Sie bekommen am Ende der Seite eine Übersicht der Aktionen und ihrer Ergebnisse.
ACHTUNG! Das Löschen eines Sensors löscht auch die Ergebnistabelle und damit alle gesammelten Daten des Sensors! Ein Update ist ein Delete gefolgt von einem Install. Damit löscht auch ein Update alle Daten eines Sensors!
Für alle Sensoren die Schwellwerte besitzen, können diese im ICC im "Menüpunkt: 'Task-Scheduler->Scheduler' beim jeweiligen Sensor angepaßt werden.
Um Verwechslungen mit eigenen bzw. Informix-Sensoren und Tasks zu vermeiden, beginnen alle Sensor und Task-Namen und alle Monitoring-Tabellen mit dem Kürzel 'cas_'.
Alerts for DBSPACE Full
Der Sensor cas_mon_dbspace_full prüft dem Füllstand aller DBSpaces der Instanz. Er generiert einen Alarm, wenn der prozentuale Wert des freien Speichers eines DBSpace die Schwellwerte Rot oder Gelb überschreitet.
Parallel zu diesem Sensor existiert auch ein Task cas_check_dbspace_full. Während der Sensor einmal t&aauml;glich die Werte in die Monitoring-Tabelle schreibt, prüft der Task die Schwellwerte im 5-Minuten-Takt und generiert einen Alarm, wenn die Schwellwerte überschritten werden. Damit ist gewährleistet, das eine Überschreitung zeitnah gemeldet wird.
Damit man bei einer Überschreitung der Schwellwerte nicht im 5-Minuten Rythmus Mails bekommt, kann man mit der Einstellung: 'alarm repeat time' bestimmen, wann am Tag ein solcher Alarm wiederholt werden soll. Dabei wird ein Alarm wiederholt, wenn zum eingestelleten Zeitpunkt die vorherige Meldung mehr als 24 Stunden zurück liegt.
Sensor-Einstellungen (Default-Werte) |
Einstellung |
Wert |
Name der Monitoring-Tabelle |
sysadmin:cas_mon_dbspace_full |
Zugehörige Procedure |
check_dbspace_full |
Speicherzeit für Werte |
93 Tage |
Startzeit |
9:00 Uhr |
Frequenz |
1 x täglich |
Typ |
DISK |
Schwellwert Rot |
5% |
Schwellwert Gelb |
10% |
use_dbspace_check_params |
0 |
alarm repeat time (nur beim Task) |
11:00 |
Ein besonderer 'Schwellwert' ist die 'dbspace ignore list'. Es gibt dbspaces, die sind normalerweise zu 100% gefüllt. Das ist z.B. ein spezieller DBSpace der das pys. oder log. Logfile enthält. Ein solcher DBSpace ist damit immer voll. Um dafür keine Warnungen per Mail zu erhalten, trägt man diesen DBSpace in die ignore-List ein. Hier kann man eine Komma-separierte Liste von DBSpaces eintragen, für die man keine Warnungen will.
Wird der Parameter 'use_dbspace_check_params' auf 1 gesetzt, so gelten die eingestellten Schwellwerte nur noch für die DBSpaces, für die im Menüpunkt 'DBSpace Check Parameter' keine Werte angegeben wurden. Hier kann man für jeden DBSpace individuelle Schwellwerte in Prozent oder MegaByte angeben, die geprüft werden.
Es ist sinnvoll die Einstellungen für den Sensor und den Task gleich zu halten.
Ergebnistabelle: cas_mon_dbspace_full |
Spaltenname |
Datentyp |
Inhalt |
id |
int |
Runid des Laufs, der die Daten generiert hat. Dieser Wert korrespondiert mit ph_run.run_task_seq in Verbindung mit ph_run.run_task_id (Id des Tasks aus der ph_task). Mit Hilfe dieser Verknüpfung läßt sich die genaue Laufzeit ermitteln. |
dbsname |
varchar(128) |
Der Name des DBSpace |
size_kb |
int |
Die Größe des DBSpaces in KiloByte |
nfree_kb |
int |
Die Größe des freien Platzes im DBSpaces in KiloByte |
perc_free |
int |
Der freie Platz in Prozent der Gesamtgröße |
alert_color |
varchar(15) |
Die Farbe des generierten Alarms oder Grün, wenn kein Alarm generiert wurde. |
Collector for Virtual Processor time
Der Sensor cas_mon_vp_color sammelt Informationen über die Verteilung von CPU-Resourcen auf die laufenden Virtuellen Prozessoren. Im Gegensatz zu den Standard-Sensoren wird hier auch die Differenzzeit zum letzen Lauf vermerkt. Ein Alarm wird nicht bei hoher Zeitaufnahme eines CPU-VP generiert, sondern wenn mehr als die eingestellte Anzahl Threads in der Ready-Queue des VP stehen. Dies ist ein Indiz dafür, das die CPU-Last der Instanz höher ist als die ihr zugeteilten Resourcen. Bekommt man diese Alarme, so empfehlen wir, der Instanz weitere CPU-VP's zuzuweisen.
Sensor-Einstellungen (Default-Werte) |
Einstellung |
Wert |
Name der Monitoring-Tabelle |
sysadmin:cas_mon_vp_color |
Zugehörige Procedure |
check_vp |
Speicherzeit für Werte |
93 Tage |
Startzeit |
0:01 Uhr |
Frequenz |
alle 15 Minuten |
Typ |
CPU |
Schwellwert Rot |
10 Threads in der Ready-Queue |
Schwellwert Gelb |
5 Threads in der Ready-Queue |
Ergebnistabelle: cas_mon_vp_color |
Spaltenname |
Datentyp |
Inhalt |
id |
int |
Runid des Laufs, der die Daten generiert hat. Dieser Wert korrespondiert mit ph_run.run_task_seq in Verbindung mit ph_run.run_task_id (Id des Tasks aus der ph_task). Mit Hilfe dieser Verknüpfung läßt sich die genaue Laufzeit ermitteln. |
vpid |
int |
Die ID des Virtuellen Prozessors |
class |
varchar(15) |
Die Klasse des Virtuellen Prozessors |
pid |
int |
Die Prozessid des Virtuellen Prozessors |
usecs_user_total |
decimal(16,2) |
Der kumulierte Wert der Zeitaufname im user-mode seit Start der Instanz oder letzten 'onstat -z'. |
usecs_sys_total |
decimal(16,2) |
Der kumulierte Wert der Zeitaufname im system-mode seit Start der Instanz oder letzten 'onstat -z'. |
usecs_user |
decimal(8,2) |
Der kumulierte Wert der Zeitaufname im user-mode seit dem letzen Lauf des Sensors. |
usecs_sys |
decimal(8,2) |
Der kumulierte Wert der Zeitaufname im system-mode seit dem letzen Lauf des Sensors. |
alert_color |
varchar(15) |
Die Farbe des generierten Alarms oder Grün, wenn kein Alarm generiert wurde. |
Collector of number of backuped logs in time
Der Sensor cas_mon_log_backup zählt die nicht gesicherten log. Logfiles und generiert einen Alarm, wenn die Anzahl den roten oder gelben Grenzwert überschreitet.
Sensor-Einstellungen (Default-Werte) |
Einstellung |
Wert |
Name der Monitoring-Tabelle |
sysadmin:cas_mon_log_backup |
Zugehörige Procedure |
check_log |
Speicherzeit für Werte |
93 Tage |
Startzeit |
0:05 Uhr |
Frequenz |
1 x pro Stunde |
Typ |
BACKUP |
Schwellwert Rot |
20 Logfiles |
Schwellwert Gelb |
10 Logfiles |
Ergebnistabelle: cas_mon_log_backup |
Spaltenname |
Datentyp |
Inhalt |
id |
int |
Runid des Laufs, der die Daten generiert hat. Dieser Wert korrespondiert mit ph_run.run_task_seq in Verbindung mit ph_run.run_task_id (Id des Tasks aus der ph_task). Mit Hilfe dieser Verknüpfung läßt sich die genaue Laufzeit ermitteln. |
firstlog |
datetime year to second |
Der Zeitstempel an dem die Nutzung des Logfiles begann. |
lastlog |
datetime year to second |
Der aktuelle Zeitstempel der Auswertung. |
log_count |
int |
Die Anzahl Logfiles die in diesem Zeitraum gefüllt wurde. |
alert_color |
varchar(15) |
Die Farbe des generierten Alarms oder Grün, wenn kein Alarm generiert wurde. |
Collector of number of logs written in interval
Der Sensor cas_mon_log_count zählt die gefüllten log. Logfiles in einem festgelegten Zeitinterval und generiert einen Alarm, wenn die Anzahl den roten oder gelben Grenzwert überschreitet.
Sensor-Einstellungen (Default-Werte) |
Einstellung |
Wert |
Name der Monitoring-Tabelle |
sysadmin:cas_mon_log_count |
Zugehörige Procedure |
check_log |
Speicherzeit für Werte |
93 Tage |
Startzeit |
0:04 Uhr |
Frequenz |
1 x pro Stunde |
Typ |
BACKUP |
Standard Interval |
7200 Sekunden (2 Stunden) |
Schwellwert Rot |
200 Logfiles |
Schwellwert Gelb |
150 Logfiles |
Ergebnistabelle: cas_mon_log_count |
Spaltenname |
Datentyp |
Inhalt |
id |
int |
Runid des Laufs, der die Daten generiert hat. Dieser Wert korrespondiert mit ph_run.run_task_seq in Verbindung mit ph_run.run_task_id (Id des Tasks aus der ph_task). Mit Hilfe dieser Verknüpfung läßt sich die genaue Laufzeit ermitteln. |
firstlog |
datetime year to second |
Der Zeitstempel an dem die Nutzung des Logfiles begann. |
lastlog |
datetime year to second |
Der aktuelle Zeitstempel der Auswertung. |
log_count |
int |
Die Anzahl Logfiles die in diesem Zeitraum gefüllt wurde. |
alert_color |
varchar(15) |
Die Farbe des generierten Alarms oder Grün, wenn kein Alarm generiert wurde. |
Collector of number of logs in one transaction
Der Sensor cas_mon_log_trans zählt die gefüllten log. Logfiles die innerhalb einer Transaktion sind und generiert einen Alarm, wenn die Anzahl den roten oder gelben Grenzwert überschreitet.
Dieser Alarm ist ein Indiz für zu lange Transaktionen in der Instanz. Tritt dieser Alarm auf, so prüfen sie, woher so lange Transaktionen kommen und ob die Anzahl und Größe der Logfiles ausreicht die notwendigen Daten zu fassen. Ist das nicht der Fall, so droht ein Long Transaction Abort.
Sensor-Einstellungen (Default-Werte) |
Einstellung |
Wert |
Name der Monitoring-Tabelle |
sysadmin:cas_mon_log_trans |
Zugehörige Procedure |
check_log |
Speicherzeit für Werte |
93 Tage |
Startzeit |
0:02 Uhr |
Frequenz |
1 x pro Stunde |
Typ |
BACKUP |
Schwellwert Rot |
20 Logfiles |
Schwellwert Gelb |
10 Logfiles |
Ergebnistabelle: cas_mon_log_trans |
Spaltenname |
Datentyp |
Inhalt |
id |
int |
Runid des Laufs, der die Daten generiert hat. Dieser Wert korrespondiert mit ph_run.run_task_seq in Verbindung mit ph_run.run_task_id (Id des Tasks aus der ph_task). Mit Hilfe dieser Verknüpfung läßt sich die genaue Laufzeit ermitteln. |
firstlog |
datetime year to second |
Der Zeitstempel an dem die Nutzung des 1. Logfiles der Transaktion begann. |
lastlog |
datetime year to second |
Der aktuelle Zeitstempel der Auswertung. |
log_count |
int |
Die Anzahl Logfiles die in diesem Zeitraum gefüllt wurde. |
alert_color |
varchar(15) |
Die Farbe des generierten Alarms oder Grün, wenn kein Alarm generiert wurde. |
Collector for table extents
Der Sensor cas_mon_tabextents prüft die Anzahl der Extents aller Tabellen und generiert einen Alarm, wenn der Prozentsatz der verfügbaren Extents für diese Tabelle einen Schwellwert unterschreitet.
Dieser Alarm ist ein Indiz dafür das in nächster Zukunft die maximale Zahl der Extents für die Tabelle erreicht wird. Die Tabelle sollte in nächster Zeit reorganisiert werden. In der 12.10'er Version geht das einfach über den eingebauten Defragmentierer (SQL-Admin-API task ('defragment', '<database>:<table>'); ). Im DBSpace in dem die Tabelle liegt sollte genügend Platz sein. Ideal ist mindestens noch einmal der Platz den die Tabelle einnimmt.
Sensor-Einstellungen (Default-Werte) |
Einstellung |
Wert |
Name der Monitoring-Tabelle |
sysadmin:cas_mon_tabextents |
Zugehörige Procedure |
check_tabextents |
Speicherzeit für Werte |
93 Tage |
Startzeit |
6:00 Uhr |
Frequenz |
alle 6 Stunden |
Typ |
TABLES |
Schwellwert Rot |
5 % frei |
Schwellwert Gelb |
10 % frei |
Ergebnistabelle: cas_mon_tabextents |
Spaltenname |
Datentyp |
Inhalt |
id |
int |
Runid des Laufs, der die Daten generiert hat. Dieser Wert korrespondiert mit ph_run.run_task_seq in Verbindung mit ph_run.run_task_id (Id des Tasks aus der ph_task). Mit Hilfe dieser Verknüpfung läßt sich die genaue Laufzeit ermitteln. |
database_name |
varchar(128) |
Der Name der Datenbank in der die Tabelle ist. |
tabname |
varchar(128) |
Der Name der Tabelle. |
dbspace_name |
varchar(128) |
Die Name des DBSpace, in der die Tabelle liegt. |
extents_act |
int |
Die aktuelle Anzahl Extents der Tabelle. |
extents_max |
int |
Die maximale Anzahl Extents die die Tabelle haben kann. |
percentfree |
decimal |
Der prozentuale Wert für die freien Extents. |
alert_color |
varchar(15) |
Die Farbe des generierten Alarms oder Grün, wenn kein Alarm generiert wurde. |
Der Sensor cas_mon_performance sammelt verschiedene Performance Parameter. Er liest aus der sysshmvals alle Parameter die mit pf_ beginnen. Deshalb kann auch die Anzahl Parameter innerhalb der Informix-Versionen variieren.
Da nicht alle diese Parameter überwacht werden müssen, gibt es auch nicht für alle Parameter Schwellwerte. Parameter ohne Schwellwerte erzeugen keinen Alarm und können ignoriert werden.
Da die Schwellwerte für diese Parameter sehr stark von der Größe und dem Workload der Instanz abhängen, könne wir für diese Parameter auch keine wirklich guten Default-Werte vorgeben. Nachdem dieser Sensor aktiviert wurde ist es notwendig, nach einer Laufzeit von 1 bis 2 Wochen anhand der in dieser Zeit gemessenen Werte die Schwellwerte für die Alarme entsprechend zu setzen.
Sensor-Einstellungen (Default-Werte) |
Einstellung |
Wert |
Name der Monitoring-Tabelle |
sysadmin:cas_mon_perf |
Zugehörige Procedure |
check_perf |
Speicherzeit für Werte |
93 Tage |
Startzeit |
1:00 Uhr |
Frequenz |
alle 10 Minuten |
Typ |
PERFORMANCE |
pf_buffwts (buffer waits) Schwellwert Rot |
20000 |
pf_buffwts (buffer waits) Schwellwert Gelb |
10000 |
pf_deadlks (deadlocks) Schwellwert Rot |
20 |
pf_deadlks (deadlocks) Schwellwert Gelb |
10 |
pf_dskreads (disk reads) Schwellwert Rot |
2000000 |
pf_dskreads (disk reads) Schwellwert Gelb |
1000000 |
pf_dskwrites (disk writes) Schwellwert Rot |
2000000 |
pf_dskwrites (disk writes) Schwellwert Gelb |
1000000 |
pf_fgwrites (forground writes) Schwellwert Rot |
2000 |
pf_fgwrites (forground writes) Schwellwert Gelb |
1000 |
pf_latchwts (latch waits) Schwellwert Rot |
20000 |
pf_latchwts (latch waits) Schwellwert Gelb |
10000 |
pf_lockwts (lock waits) Schwellwert Rot |
20000 |
pf_lockwts (lock waits) Schwellwert Gelb |
10000 |
pf_lockreqs (lock requests) Schwellwert Rot |
200000 |
pf_lockreqs (lock requests) Schwellwert Gelb |
100000 |
pf_lruwrites (lru waits) Schwellwert Rot |
200000 |
pf_lruwrites (lru waits) Schwellwert Gelb |
100000 |
pf_ovlock (over locks) Schwellwert Rot |
20 |
pf_ovlock (over locks) Schwellwert Gelb |
10 |
pf_ovtrans (over transactions) Schwellwert Rot |
20 |
pf_ovtrans (over transactions) Schwellwert Gelb |
10 |
pf_ovuser (over users) Schwellwert Rot |
20 |
pf_ovuser (over users) Schwellwert Gelb |
10 |
pf_seqscans (sequential scans) Schwellwert Rot |
200000 |
pf_seqscans (sequential scans) Schwellwert Gelb |
100000 |
Ergebnistabelle: cas_mon_perf |
Spaltenname |
Datentyp |
Inhalt |
id |
int |
Runid des Laufs, der die Daten generiert hat. Dieser Wert korrespondiert mit ph_run.run_task_seq in Verbindung mit ph_run.run_task_id (Id des Tasks aus der ph_task). Mit Hilfe dieser Verknüpfung läßt sich die genaue Laufzeit ermitteln. |
name |
varchar(15) |
Der Name des Parameters. |
total_value |
int8 |
Kumulierter Wert seit Start der Instanz oder onstat -z. |
value |
int8 |
Wert seit letzten Lauf des Sensors. |
alert_color |
varchar(15) |
Die Farbe des generierten Alarms oder Grün, wenn kein Alarm generiert wurde. |
Checks wait time of user threads
Der Sensor cas_mon_wait prüft die Anzahl der Waits für eine Grund in der System-Tabelle systwaits. Pro Grund wird die kumulierte Wartezeit gegen den gelben bzw. roten Schwellwert geprüft. Liegt die Wartezeit über einem der Schwellwerte, so wird ein Alarm generiert.
Im Normalfall, stehen in dieser Tabelle keine Werte. Nur wenn es zu längeren Wartezeiten aufgrund hoher Systemlast kommt werden hier Werte angezeigt.
Sensor-Einstellungen (Default-Werte) |
Einstellung |
Wert |
Name der Monitoring-Tabelle |
sysadmin:cas_mon_wait |
Zugehörige Procedure |
check_wait |
Speicherzeit für Werte |
93 Tage |
Startzeit |
1:00 Uhr |
Frequenz |
alle 5 Minuten |
Typ |
PERFORMANCE |
Schwellwert Rot |
50 |
Schwellwert Gelb |
1 |
Ergebnistabelle: cas_mon_wait |
Spaltenname |
Datentyp |
Inhalt |
id |
int |
RunId des Laufs, der die Daten generiert hat. Dieser Wert korrespondiert mit ph_run.run_task_seq in Verbindung mit ph_run.run_task_id (Id des Tasks aus der ph_task). Mit Hilfe dieser Verknüpfung läßt sich die genaue Laufzeit ermitteln. |
reason |
varchar(15) |
Der Grund weshalb gewartet wird. Name aus der flags_text Tabelle mit dem tabname systwaits. |
num |
int |
Anzahl wartender Threads. |
cumtime |
decimal(16,2) |
Die kumulierte Wartezeit. |
maxtime |
int |
Die maximale Wartezeit. |
alert_color |
varchar(15) |
Die Farbe des generierten Alarms oder Grün, wenn kein Alarm generiert wurde. |
Collector for table growth history
Der Sensor cas_mon_table_growth sammelt Informationen über das Wachstum von Tabellen. Für jede Tabelle wird ein Satz mit der Anzahl rows und der Differenz zum vorherigen Lauf erstellt. Dadurch kann man leicht schnell wachsende Tabellen ermitteln.
Dieser Sensor generiert keine Alarme und hat dem zufolge auch keine Schwellwerte.
Sensor-Einstellungen (Default-Werte) |
Einstellung |
Wert |
Name der Monitoring-Tabelle |
sysadmin:cas_mon_table_growth |
Zugehörige Procedure |
check_table_growth |
Speicherzeit für Werte |
93 Tage |
Startzeit |
0:05 Uhr |
Frequenz |
einmal täglich |
Typ |
TABLE |
Ergebnistabelle: cas_mon_table_growth |
Spaltenname |
Datentyp |
Inhalt |
id |
int |
RunId des Laufs, der die Daten generiert hat. Dieser Wert korrespondiert mit ph_run.run_task_seq in Verbindung mit ph_run.run_task_id (Id des Tasks aus der ph_task). Mit Hilfe dieser Verknüpfung läßt sich die genaue Laufzeit ermitteln. |
database_name |
varchar(128) |
Datenbankname der Tabelle. |
table_name |
varchar(128) |
Name der Tabelle. |
date_of_record |
date |
Tag an dem der Messwert erstellt wurde. |
nrows |
bigint |
Die Anzahl Sätze der Tabelle. |
nrows_diff |
bigint |
Der Zuwachs an Sätzen seit dem letzten Lauf. |
pct_diff |
smallint |
Der prozentuale Zuwachs an Sätzen. |
Collector for table data
Der Sensor cas_mon_tabinfo prüft die Anzahl der durch eine Tabelle belegten pages. Die Anzahl pages eines Fragmentes ist auf 16,7 Millonen limitiert. Erreicht eine Tabelle diesen Wert, ist ein insert nicht mehr möglich. Hier hilft nur das Anlegen eines neuen Fragments (nur in der Enterprise/Advanced Enterprise-Edition erlaubt) oder das Umlegen einer solchen Tabelle in einen DBSpace mit größerer Pagesize.
Für diesen Sensor gibt es 3 Grenzwerte. Der 1. Grenzwert ist die Anzahl extents einer Tabelle, die sie mindestens erreicht haben muss, um geprüft zu werden. Haben sie große Tabellen, die mit großen First- und Next-Extent-Sizes angelegt wurden, so lassen sie diesen Wert auf 0 (alle Tabellen). Sind sie sicher, das Tabellen mit wenigen Extents nicht betroffen sind, so können sie diesen Wert größer setzen.
Die anderen beiden Schwellwerte sind die Schwellwerte für den Alarm Rot oder Gelb. Die Obergrenze Pages pro Fragment sind 16,7 Millionen. Die Default-Werte lassen ihnen also bei normalen Tabellen-Wachstum genügend Zeit eine Lösung zu finden.
Sensor-Einstellungen (Default-Werte) |
Einstellung |
Wert |
Name der Monitoring-Tabelle |
sysadmin:cas_mon_tabinfo |
Zugehörige Procedure |
check_tabinfo |
Speicherzeit für Werte |
93 Tage |
Startzeit |
0:09 Uhr |
Frequenz |
einmal am Tag |
Typ |
TABLES |
Schwellwert Rot |
15.500.000 |
Schwellwert Gelb |
14.000.000 |
Ergebnistabelle: cas_mon_tabinfo |
Spaltenname |
Datentyp |
Inhalt |
id |
int |
Runid des Laufs, der die Daten generiert hat. Dieser Wert korrespondiert mit ph_run.run_task_seq in Verbindung mit ph_run.run_task_id (Id des Tasks aus der ph_task). Mit Hilfe dieser Verknüpfung läßt sich die genaue Laufzeit ermitteln. |
dbname |
char(128) |
Der Name der Datenbank |
tablename |
char(128) |
Der Name der Tabelle |
dbspace |
char(128) |
Der Name des DBSpaces in dem das Fragment liegt. |
part_flags |
int |
Die Partitions-Flags des Fragments |
part_partnum |
int |
Die Partitionsnummer des Fragments |
part_lockid |
int |
Die Lockid des Fragments. Ist die Partitionsnummer == der Lockid, so handelt es sich um das 1. Fragment eines Tables. Ist die Partitionsnummer > Lockid, so ist es ein Index. Ist die Partitionsnummer < der Lockid, so ist es ein weiteres Fragment. |
rowsize |
int |
Die Satzlänge der Tabelle in Byte |
nrows |
int8 |
Die Anzahl Säze der Tabelle |
pagesize_k |
smallint |
Die Pagesize des Fragments |
num_extends |
smallint |
Die Anzahl allokierter Extents |
used_pg |
int8 |
Die Anzahl benutzter (gefüllter) Pages |
allocated_pg |
int8 |
Die Anzahl in Extents allokierter Pages. Die Differenz zu used_pg ist der Freie Platz innerhalb der allokierten Extents. |
first_extend_size |
int |
Die First-Extent-Size der Tabelle / des Index |
next_extend_size |
int |
Die Next-Extent-Size der Tabelle / des Index |
alert_color |
char(6) |
Die Farbe des generierten Alarms oder Grün, wenn kein Alarm generiert wurde. |
Collector for sessions with many locks
Dieser Sensor cas_mon_locks prüft stichprobenartig, ob es zum Zeitpunkt des Laufs des Sensors Sessions gibt, deren Anzahl Satzsperren oberhalb des Schwellwertes liegt. Werden solche Sessions gefunden, werden sie in die Monitoring-Tabelle eingetragen. Ein Alarm wird nicht generiert.
Sensor-Einstellungen (Default-Werte) |
Einstellung |
Wert |
Name der Monitoring-Tabelle |
sysadmin:cas_mon_locks |
Zugehörige Procedure |
check_locks |
Speicherzeit für Werte |
93 Tage |
Startzeit |
1:10 Uhr |
Frequenz |
alle 5 Minuten |
Typ |
USER |
Schwellwert |
10 |
Ergebnistabelle: cas_mon_locks |
Spaltenname |
Datentyp |
Inhalt |
id |
int |
Runid des Laufs, der die Daten generiert hat. Dieser Wert korrespondiert mit ph_run.run_task_seq in Verbindung mit ph_run.run_task_id (Id des Tasks aus der ph_task). Mit Hilfe dieser Verknüpfung läßt sich die genaue Laufzeit ermitteln. |
username |
char(128) |
Der Name der Users, unter dem die Session läuft. |
sid |
int |
Die Session ID |
hostname |
char(128) |
Der Name des Hosts, von dem die Session verbunden ist. |
nlocks |
int8 |
Die Anzahl locks, die die Session hält |
part_partnum |
int |
Die Partitionsnummer des Fragments |
part_lockid |
int |
Die Lockid des Fragments. Ist die Partitionsnummer == der Lockid, so handelt es sich um das 1. Fragment eines Tables. Ist die Partitionsnummer > Lockid, so ist es ein Index. Ist die Partitionsnummer < der Lockid, so ist es ein weiteres Fragment. |
nlocks |
int8 |
Die Anzahl im Moment der Prüfung gehaltener Locks. |
locksheld |
int8 |
Die Anzahl im Moment der Prüfung gehaltener Locks (andere Ermittlung). |
isreads |
int8 |
Die Anzahl Leseoperationen innerhalb dieser Session. |
iswrites |
int8 |
Die Anzahl Schreiboperationen innerhalb dieser Session. |
longtx |
int8 |
Die Anzahl langer Transaktionen innerhalb dieser Session. |
seqscans |
int8 |
Die Anzahl Sequential Scans innerhalb dieser Session. Auf Tabellen mit wenigen Sätzen ist das ein normales Verhalten. |
pagereads |
int8 |
Die Anzahl Leseoperationen innerhalb dieser Session aus dem DBSpace (Disk). |
pagewrites |
int8 |
Die Anzahl Schreiboperationen innerhalb dieser Session auf dem DBSpace (Disk). |
dsksorts |
int8 |
Die Anzahl Sortieroperationen (Disk) innerhalb der Session. |
slow SQL-Statements
Dieser Sensor cas_mon_slow_stmt prüft stichprobenartig, ob es zum Zeitpunkt des Laufs SQL-Statements gibt, deren Laufzeit oberhalb des Schwellwertes liegt. Werden solche Statements gefunden, werden sie in die Monitoring-Tabelle eingetragen. Ein Alarm wird nicht generiert.
Sensor-Einstellungen (Default-Werte) |
Einstellung |
Wert |
Name der Monitoring-Tabelle |
sysadmin:cas_mon_slow_stmt |
Zugehörige Procedure |
check_slow_stmt |
Speicherzeit für Werte |
93 Tage |
Startzeit |
1:10 Uhr |
Frequenz |
alle 2 Minuten |
Typ |
PERFORMANCE |
Schwellwert |
2 Sekunden |
Ergebnistabelle: cas_mon_slow_stmt |
Spaltenname |
Datentyp |
Inhalt |
id |
int |
Runid des Laufs, der die Daten generiert hat. Dieser Wert korrespondiert mit ph_run.run_task_seq in Verbindung mit ph_run.run_task_id (Id des Tasks aus der ph_task). Mit Hilfe dieser Verknüpfung läßt sich die genaue Laufzeit ermitteln. |
username |
char(128) |
Der Name der Users, unter dem die Session läuft. |
sid |
int |
Die Session ID |
pid |
int |
Die Prozess-ID des Client soweit bekannt. |
hostname |
char(128) |
Der Name des Hosts, von dem die Session verbunden ist. |
tty |
char(16) |
Das Terminal auf dem Client, wenn bekannt |
connected |
datetime year to second |
Die Uhrzeit, an der die Verbindung hergestellt wurde. |
feprogram |
char(256) |
Der Name des Frontend-Programms. |
cumtime |
float |
Die kumulierte Zeit, für die Ausführung des Statements. |
executions |
int |
Die Anzahl Ausführungen des Statements. |
bufreads |
int |
Die Anzahl Leseoperationen (Cache) innerhalb dieser Session. |
pagreads |
int |
Die Anzahl Leseoperationen (Disk) innerhalb dieser Session. |
bufwrites |
int |
Die Anzahl Schreiboperationen (Cache) innerhalb dieser Session. |
pagewrites |
int |
Die Anzahl Schreiboperationen (Disk) innerhalb dieser Session. |
totsorts |
int |
Die Anzahl Sortieroperationen Gesamt. |
dsksorts |
int |
Die Anzahl Sortieroperationen auf Disk. |
estcosts |
int |
Die vom Optimizer berechneten Kosten. |
estrows |
int |
Die vom Optimizer berechneten Sätze. |
seqscans |
int |
Die Anzahl Sequential Scans innerhalb dieser Session. Auf Tabellen mit wenigen Sätzen ist das ein normales Verhalten. |
statement |
lvarchar(2048) |
Der Statement-Text auf 2048 Byte gekürzt. |
Zurück