Cette page décrit Calíope 1.7, la version que je construis en ce moment. La 1.6 est sur l'App Store pour Mac, iPad, iPhone, Apple Watch, Apple TV et Apple Vision Pro. Le changelog indique dans quelle version chaque fonction est arrivée.

Ajoute un bouton « Ouvrir dans Calíope » à chaque sujet. Ne fonctionne qu'avec l'app installée.

Alertes SQL

Alertes SQL

Surveille la valeur renvoyée par une de vos requêtes et marque ALERTE quand elle franchit le seuil que vous définissez.

Où le trouver : Espace de travail › Outils › Alertes SQL

Ouvrez Alertes SQL depuis la barre de navigation de l'espace de travail. Le tableau liste chaque règle configurée avec sa valeur actuelle et une indication ALERTE / OK. Une règle dont la requête échoue affiche Erreur —ouvrez-la dans Configurer pour lire ce qu'a répondu le serveur—, une dont la requête ne renvoie aucune ligne, ou renvoie NULL, affiche Aucune valeur, et une pas encore mesurée affiche un tiret : aucune d'elles ne compte comme OK. Sur une connexion protégée par son étiquette d’environnement —confirmer les écritures ou lecture seule—, une règle dont la requête écrit n’est pas exécutée et affiche Refusée : écrit avec le nom de l’étiquette : une alerte s’exécute seule et ne peut pas demander de confirmation.

Chaque règle est une requête à vous : Calíope l'exécute à l'intervalle défini, prend la valeur de la colonne que vous avez indiquée et la compare au seuil avec l'opérateur choisi (>, <, =, <>). Il n'y a pas de métriques prédéfinies — c'est vous qui décidez quoi surveiller avec SQL.

Actualiser évalue toutes les règles une fois.

Actualisation automatique : appuyez sur le bouton de lecture et saisissez l'intervalle en secondes pour que les règles se réévaluent seules. Quand une règle remplit sa condition, sa ligne est marquée ALERTE et le pied de la vue compte combien sont actives. L'intervalle le plus court est d'une seconde. La réévaluation s'arrête si vous appuyez sur pause ou quittez l'outil.

Charger un exemple ajoute une règle déjà écrite pour partir de quelque chose qui fonctionne.

MySQLMariaDBAuroraPostgreSQL

Il y en a une : connexions actives au-delà de 100.

SQL Server

Il y en a cinq, et chaque appui ajoute la suivante que vous n'avez pas encore : sessions bloquées, sessions utilisateur au-delà de 80 % du maximum, transactions ouvertes depuis plus d'une minute, journal des transactions de la base au-delà de 80 % et secondes d'attente de verrous depuis le démarrage du serveur. Avec les cinq dans la liste, le bouton se désactive.

ClickHouse

Il y en a cinq, et chaque appui ajoute la suivante que vous n'avez pas encore : la mémoire utilisée en pourcentage de la limite du serveur, les requêtes en cours d'exécution, les répliques en retard de plus d'une minute, les mutations inachevées ayant déjà échoué et la partition comptant le plus de parts en pourcentage de la limite à partir de laquelle le serveur refuse les INSERT. Avec les cinq dans la liste, le bouton se désactive.

Exporter enregistre le tableau —règles, valeurs et état— dans un fichier séparé par des tabulations (TSV).

Cet outil n'envoie pas de notifications système : l'avertissement est la ligne marquée tant que l'onglet est ouvert. Pour des avertissements qui atteignent le système, voir les rubriques Alertes du serveur et Moniteur de réplication.

Oracle

Il y en a cinq, et chaque pression ajoute la suivante que vous n’avez pas encore : plus de 20 sessions utilisateur en train d’exécuter quelque chose, les sessions bloquées, le tablespace le plus plein au-dessus de 85 % de son maximum, les objets invalides et les sessions avec le même appel depuis plus d’une minute. Celles qui lisent V$SESSION ou l’occupation des tablespaces demandent les mêmes privilèges que Informations serveur : sans eux, la règle indique Erreur. Avec les cinq dans la liste, le bouton s’éteint.

Mots-clés : alertes SQL, alerte, seuil, règle, métrique, surveillance, actualisation automatique, intervalle, polling, moniteur

Configurer les règles d'alerte

Définit quelle requête est surveillée et à quelle condition l'alerte se déclenche.

Où le trouver : Alertes SQL › Configurer

Appuyez sur Configurer dans la barre de l'outil. Dans la feuille, appuyez sur Ajouter pour ajouter une règle et remplissez :

- Nom — comment vous la reconnaîtrez dans le tableau.
- SQL — la requête qui renvoie la valeur à surveiller. Elle devrait renvoyer une seule ligne : c'est la première qui est lue.
- Colonne — la colonne du résultat qui contient la valeur. Si le nom ne correspond à aucune, la première colonne est utilisée.
- Opérateur et Seuil — la condition qui déclenche l'alerte.

MySQLMariaDBAurora

Par exemple : SQL = SHOW STATUS WHERE Variable_name = 'Threads_connected', colonne = Value, opérateur = >, seuil = 100.

PostgreSQL

Par exemple : SQL = SELECT COUNT(*) AS "Value" FROM pg_stat_activity WHERE pid <> pg_backend_pid(), colonne = Value, opérateur = >, seuil = 100.

SQL Server

Par exemple : SQL = SELECT COUNT(*) AS Value FROM sys.dm_exec_requests WHERE blocking_session_id <> 0, colonne = Value, opérateur = >, seuil = 0.

ClickHouse

Par exemple : SQL = SELECT count() AS Value FROM system.processes WHERE query_id != queryID(), colonne = Value, opérateur = >, seuil = 0 : elle compte les requêtes en cours sans compter celle de la règle elle-même. Les entiers de 64 bits arrivent sous forme de texte et sont comparés comme des nombres exacts, sans perdre de chiffres.

Oracle

Par exemple : SQL = SELECT COUNT(*) AS "Value" FROM v$session WHERE blocking_session IS NOT NULL, colonne = Value, opérateur = >, seuil = 0 : elle compte les sessions qui en attendent une autre. Un NUMBER arrive avec tous ses chiffres et est comparé comme un nombre exact.

Si la valeur n'est pas numérique, elle est comparée comme du texte, caractère par caractère : > et < suivent l'ordre alphabétique, ce qui convient aux dates écrites AAAA-MM-JJ.

Pour modifier une règle, sélectionnez-la dans la liste, modifiez-la et appuyez sur Enregistrer ; Supprimer, ou la corbeille à côté, la retire. Terminé enregistre les règles et les évalue de nouveau.

Les règles sont enregistrées sur cet appareil, valent pour toutes les sessions ouvertes et se synchronisent avec vos autres appareils si la synchronisation iCloud est activée.

Mots-clés : configurer alerte, règle, SQL, colonne, opérateur, seuil, threads_connected