Diese Seite beschreibt Calíope 1.8, die Version, die ich gerade baue. Die 1.7 ist im App Store für Mac, iPad, iPhone, Apple Watch, Apple TV und Apple Vision Pro. Das Changelog sagt, in welcher Version jede Funktion kam.
Fügt jedem Thema einen Button „In Calíope öffnen“ hinzu. Funktioniert nur mit installierter App.
Überwacht den Wert, den eine Abfrage von dir liefert, und markiert ALARM, sobald er den von dir definierten Schwellenwert überschreitet.
Wo es zu finden ist: Workspace › Werkzeuge › SQL-Warnungen
Öffne SQL-Warnungen über die Navigationsleiste des Workspace. Die Tabelle listet jede konfigurierte Regel mit ihrem aktuellen Wert und einer Anzeige ALARM / OK. Eine Regel, deren Abfrage fehlschlägt, zeigt Fehler —öffne sie unter Konfigurieren, um die Antwort des Servers zu lesen—, eine, deren Abfrage keine Zeile oder NULL liefert, zeigt Kein Wert, und eine noch nicht gemessene zeigt einen Strich: keine davon zählt als OK. Auf einer Verbindung, die ihr Umgebungs-Tag schützt —Schreiben bestätigen oder nur lesen—, wird eine Regel, deren Abfrage schreibt, nicht ausgeführt und zeigt Abgelehnt: schreibt mit dem Namen des Tags: Ein Alarm läuft von selbst und kann keine Bestätigung einholen.
Jede Regel ist eine Abfrage von dir: Calíope führt sie im festgelegten Intervall aus, nimmt den Wert der von dir angegebenen Spalte und vergleicht ihn mit dem Schwellenwert über den gewählten Operator (>, <, =, <>). Es gibt keine vordefinierten Metriken — was überwacht wird, entscheidest du mit SQL.
Aktualisieren wertet alle Regeln einmal aus.
Automatische Aktualisierung: drück die Wiedergabetaste und gib das Intervall in Sekunden ein, damit sich die Regeln selbst neu auswerten. Erfüllt eine Regel ihre Bedingung, wird ihre Zeile mit ALARM markiert und die Fußzeile zählt, wie viele aktiv sind. Das kürzeste Intervall ist eine Sekunde. Die Neuauswertung endet mit der Pausetaste oder beim Verlassen des Werkzeugs.
Beispiel laden fügt eine fertige Regel hinzu, damit du von etwas Funktionierendem ausgehst.
MySQLMariaDBAuroraPostgreSQL
Es gibt eine: aktive Verbindungen über 100.
SQL Server
Es gibt fünf, und jedes Tippen fügt die nächste hinzu, die du noch nicht hast: blockierte Sitzungen, Benutzersitzungen über 80 % des Maximums, Transaktionen, die länger als eine Minute offen sind, das Transaktionsprotokoll der Datenbank über 80 % und die Sekunden Wartezeit auf Sperren seit dem Serverstart. Sind alle fünf in der Liste, wird die Schaltfläche deaktiviert.
ClickHouse
Es gibt fünf, und jedes Tippen fügt die nächste hinzu, die du noch nicht hast: belegter Speicher in Prozent des Serverlimits, gerade laufende Abfragen, Replikate mit mehr als einer Minute Rückstand, unvollendete Mutationen, die bereits fehlgeschlagen sind, und die Partition mit den meisten Parts in Prozent des Limits, ab dem der Server INSERTs ablehnt. Sind alle fünf in der Liste, wird die Schaltfläche deaktiviert.
Oracle
Es gibt fünf, und jeder Druck fügt die nächste hinzu, die du noch nicht hast: mehr als 20 Benutzersitzungen, die gerade etwas ausführen, blockierte Sitzungen, der vollste Tablespace über 85 % seines Maximums, ungültige Objekte und Sitzungen mit demselben Aufruf seit mehr als einer Minute. Die, die V$SESSION oder die Tablespace-Belegung lesen, brauchen dieselben Rechte wie Serverinformationen: Ohne sie zeigt die Regel Fehler. Mit allen fünf in der Liste wird die Schaltfläche deaktiviert.
TiDB
Es gibt drei, und jedes Tippen fügt die nächste hinzu, die du noch nicht hast: Sitzungen im Cluster über 100, langsame Anweisungen in der letzten Stunde über 100 und Schemaänderungen, die seit über zehn Minuten laufen. Mit allen drei in der Liste wird die Schaltfläche deaktiviert.
Exportieren speichert die Tabelle —Regeln, Werte und Status— als tabulatorgetrennte Datei (TSV).
Wenn eine Regel auslöst, meldet sich Calíope: Sie hinterlässt eine Systemmeldung und, wenn du nicht davor sitzt, eine Benachrichtigung. Wann, wo sie ankommt und wie man sie ausschaltet, steht im Thema „Wenn eine Warnung auslöst: die Meldung und die Benachrichtigung“.
Legt fest, welche Abfrage überwacht wird und unter welcher Bedingung der Alarm auslöst.
Wo es zu finden ist: SQL-Warnungen › Konfigurieren
Drück Konfigurieren in der Werkzeugleiste. Drück im Blatt auf Hinzufügen, um eine Regel hinzuzufügen, und füll aus:
- Name — woran du sie in der Tabelle erkennst.
- SQL — die Abfrage, die den zu überwachenden Wert liefert. Sie sollte eine einzige Zeile liefern: gelesen wird die erste.
- Spalte — die Ergebnisspalte mit dem Wert. Passt der Name zu keiner, wird die erste Spalte genommen.
- Operator und Schwellenwert — die Bedingung, die den Alarm auslöst.
MySQLMariaDBAurora
Zum Beispiel: SQL = SHOW STATUS WHERE Variable_name = 'Threads_connected', Spalte = Value, Operator = >, Schwellenwert = 100.
TiDB
In TiDB hat SHOW STATUS kein Threads_connected. Für denselben Alarm: SQL = SELECT COUNT(*) AS n FROM information_schema.CLUSTER_PROCESSLIST, Spalte = n, Operator = >, Schwellenwert = 100.
PostgreSQL
Zum Beispiel: SQL = SELECT COUNT(*) AS "Value" FROM pg_stat_activity WHERE pid <> pg_backend_pid(), Spalte = Value, Operator = >, Schwellenwert = 100.
SQL Server
Zum Beispiel: SQL = SELECT COUNT(*) AS Value FROM sys.dm_exec_requests WHERE blocking_session_id <> 0, Spalte = Value, Operator = >, Schwellenwert = 0.
ClickHouse
Zum Beispiel: SQL = SELECT count() AS Value FROM system.processes WHERE query_id != queryID(), Spalte = Value, Operator = >, Schwellenwert = 0: zählt die laufenden Abfragen, ohne die der Regel selbst mitzuzählen. 64-Bit-Ganzzahlen kommen als Text an und werden als exakte Zahl verglichen, ohne Stellen zu verlieren.
Oracle
Zum Beispiel: SQL = SELECT COUNT(*) AS "Value" FROM v$session WHERE blocking_session IS NOT NULL, Spalte = Value, Operator = >, Schwellenwert = 0: zählt die Sitzungen, die auf eine andere warten. Ein NUMBER kommt mit allen Stellen an und wird als exakte Zahl verglichen.
Ist der Wert nicht numerisch, wird er als Text verglichen, Zeichen für Zeichen: > und < folgen der alphabetischen Reihenfolge, was für Daten im Format JJJJ-MM-TT passt.
Um eine Regel zu ändern, wähl sie in der Liste aus, bearbeite sie und drück Speichern; Löschen oder der Papierkorb daneben entfernt sie. Fertig speichert die Regeln und wertet sie erneut aus.
Die Regeln werden auf diesem Gerät gespeichert, gelten für alle offenen Sitzungen und werden mit deinen anderen Geräten synchronisiert, wenn die iCloud-Synchronisierung aktiv ist.
Wechselt eine Regel zu ALARM, hinterlässt Calíope eine Systemmeldung und, wenn du nicht davor sitzt, eine Benachrichtigung.
Wo es zu finden ist: Workspace › Werkzeuge › SQL-Warnungen
Wann sie sich meldet. Beim Wechsel einer Regel zu ALARM, nicht bei jedem Zyklus, in dem sie im Alarm bleibt. Eine Regel, die auslöst, zu OK zurückkehrt und erneut auslöst, meldet sich jedes Mal. Eine, die zwischen dem Alarm und einem Fehler oder einer Abfrage ohne Zeilen wechselt, meldet sich höchstens einmal alle fünf Minuten. Diese Sperrfrist gilt pro Regel: Zwei Regeln, die gleichzeitig auslösen, melden sich beide.
Was sie hinterlässt
• Eine Systemmeldung mit dem Namen der Regel, ihrem Wert, der Schwelle und dem Alias des Profils. Sie wird auch bei Calíope im Vordergrund aufgezeichnet, und wenn die Systemmeldungen über iCloud laufen, lesen sie deine anderen Geräte und Calíope auf der Uhr; dort gehört sie zur Gruppe der Server.
• Eine lokale Benachrichtigung mit dem Namen der Regel und darunter dem Wert und der Schwelle. Nur wenn Calíope nicht im Vordergrund ist und SQL-Warnung ausgelöst unter Einstellungen › Benachrichtigungen eingeschaltet ist: Mit Calíope im Vordergrund siehst du die Zeile schon in Rot.
Wert und Schwelle erscheinen mit den Nachkommastellen, mit denen sie geschrieben wurden: 0.15 kommt nicht als 0,2 an.
Die Regeln werden nur bei geöffnetem Tab ausgewertet. Auf dem Mac werden sie weiter ausgewertet, auch wenn eine andere App im Vordergrund ist, und dann kommt die Benachrichtigung. Auf dem iPhone und dem iPad hält das System Calíope wenige Sekunden nach dem Verlassen an: Eine Regel, die in der Zwischenzeit auslöst, wird bei der Rückkehr ausgewertet, und ihr Hinweis wartet in den Meldungen, ohne Benachrichtigung.
Wie man sie ausschaltet. Die Benachrichtigung mit SQL-Warnung ausgelöst. Die Meldung mit Systemmeldungen aufzeichnen unter Einstellungen › Allgemein › Systemmeldungen, das alle Arten ausschaltet. Auf der Uhr entscheidet der Schalter der Gruppe der Server, ob sie klingelt.
Stichwörter: warnung, alarm, melden, benachrichtigung, systemmeldung, sperrfrist, fünf minuten, uhr, schwelle, regel