« Zurück zu Produkt

Dokumentation

IPS_GetStatsHistory

 string IPS_GetStatsHistory ()

Rückgabewert

JSON kodiertes Array mit einem Eintrag je Stunde (über die JSON-RPC Schnittstelle direkt als Array). Jeder Eintrag enthält folgende key => value Paare:

Index Typ Beschreibung
TimeStamp integer Unix Zeitstempel des Beginns der Stunde
array Je aufgezeichneter Reihe ein Array mit den Schlüsseln Count und Bytes, die jeweils Min, Max und Avg (Minimum, Maximum und Durchschnitt der Stunde) enthalten

Reihen

Reihe Count Bytes
WorkingSet Anzahl der Handles des Prozesses Belegter Arbeitsspeicher (Working Set) des Prozesses
Shared Anzahl der Threads des Prozesses Gemeinsam nutzbarer Speicher (Programmdatei, Bibliotheken, OPcache)
Allocator mimalloc: aufgegebene Seiten, sonst 0 Vom Allokator belegter Speicher (nur mimalloc/jemalloc, sonst 0)
Traces siehe IPS_GetTraceStats siehe IPS_GetTraceStats
SnapshotRingBuffer siehe IPS_GetSnapshotRingBufferStats siehe IPS_GetSnapshotRingBufferStats
SnapshotBuffer siehe IPS_GetSnapshotBufferStats (stündlich) siehe IPS_GetSnapshotBufferStats (stündlich)
Settings siehe IPS_GetSettingsStats (stündlich) siehe IPS_GetSettingsStats (stündlich)
ScriptEngine siehe IPS_GetThreadStats siehe IPS_GetThreadStats
Medias siehe IPS_GetMediaStats siehe IPS_GetMediaStats
Variables siehe IPS_GetVariableStats siehe IPS_GetVariableStats
Instances siehe IPS_GetInstanceStats siehe IPS_GetInstanceStats
VideoServer Reserviert, derzeit 0 Reserviert, derzeit 0

Beschreibung

Warning

Diese Funktion ist nur für den internen Gebrauch vorgesehen und kann sich jederzeit ohne Ankündigung ändern oder entfallen.

Die Funktion liefert den stündlich zusammengefassten Verlauf der Speicherstatistiken der letzten 7 Tage, z.B. für die Anzeige in der Konsole. Solange IP-Symcon vollständig gestartet ist, werden die Statistiken einmal pro Minute abgetastet und je Stunde zu Minimum, Maximum und Durchschnitt zusammengefasst. Aufwendige Reihen ("SnapshotBuffer" und "Settings") werden nur einmal pro Stunde abgetastet, dort sind alle drei Werte gleich. Reihen ohne Abtastung in einer Stunde fehlen im jeweiligen Eintrag.

Der Verlauf wird nur im Arbeitsspeicher gehalten und ist nach einem Neustart von IP-Symcon leer. Es werden höchstens 168 Einträge (7 Tage) vorgehalten, der aktuelle Eintrag ist der letzte im Array.

Warning

In PHP liefert die Funktion den Verlauf als JSON kodierten String, der mit json_decode ausgewertet werden kann. Über die JSON-RPC Schnittstelle wird der Verlauf direkt als Array geliefert.

Alle Werte in Bytes sind in Bytes angegeben. Die Anzahl der Reihen und ihre Bedeutung können sich mit neuen Versionen ändern.

Beispiel

// Arbeitsspeicher der letzten Stunden ausgeben
$history = json_decode(IPS_GetStatsHistory(), true);
foreach (array_slice($history, -3) as $hour) {
    printf("%s: %.1f MB (max. %.1f MB)\n", date('d.m.Y H:i', $hour['TimeStamp']), $hour['WorkingSet']['Bytes']['Avg'] / 1048576, $hour['WorkingSet']['Bytes']['Max'] / 1048576);
}

/* liefert z.B.:
26.09.2026 10:00: 182.4 MB (max. 190.1 MB)
26.09.2026 11:00: 184.0 MB (max. 188.7 MB)
26.09.2026 12:00: 183.2 MB (max. 185.9 MB)
*/
Haben Sie noch Fragen?