Questa pagina descrive Calíope 1.8, la versione che sto costruendo adesso. La 1.7 è sull'App Store per Mac, iPad, iPhone, Apple Watch, Apple TV e Apple Vision Pro. Il changelog dice in quale versione è arrivata ogni funzione.

Aggiunge a ogni argomento un pulsante «Apri in Calíope». Funziona solo con l'app installata.

Avvisi SQL

Avvisi SQL

Sorveglia il valore restituito da una query tua e segna AVVISO quando supera la soglia che definisci.

Dove si trova: Workspace › Strumenti › Avvisi SQL

Apri Avvisi SQL dalla barra di navigazione del workspace. La tabella elenca ogni regola configurata con il suo valore attuale e un'indicazione AVVISO / OK. Una regola la cui query fallisce mostra Errore —aprila in Configura per leggere cosa ha risposto il server—, una la cui query non restituisce righe, o restituisce NULL, mostra Nessun valore, e una non ancora misurata mostra un trattino: nessuna di queste conta come OK. Su una connessione protetta dalla sua etichetta di ambiente —conferma delle scritture o sola lettura—, una regola la cui query scrive non viene eseguita e mostra Rifiutata: scrive con il nome dell’etichetta: un avviso viene eseguito da solo e non può chiedere conferma.

Ogni regola è una query tua: Calíope la esegue nell'intervallo definito, prende il valore della colonna che hai indicato e lo confronta con la soglia usando l'operatore scelto (>, <, =, <>). Non ci sono metriche predefinite — cosa sorvegliare lo decidi tu con SQL.

Aggiorna valuta tutte le regole una volta.

Aggiornamento automatico: premi il pulsante di riproduzione e inserisci l'intervallo in secondi perché le regole si rivalutino da sole. Quando una regola soddisfa la sua condizione, la riga viene segnata con AVVISO e il piè di pagina conta quante sono attive. L'intervallo più breve è di un secondo. La rivalutazione si ferma premendo pausa o uscendo dallo strumento.

Carica esempio aggiunge una regola già scritta per partire da qualcosa che funziona.

MySQLMariaDBAuroraPostgreSQL

Ce n'è una: connessioni attive oltre 100.

SQL Server

Ce ne sono cinque, e ogni pressione aggiunge la successiva che non hai ancora: sessioni bloccate, sessioni utente oltre l'80 % del massimo, transazioni aperte da più di un minuto, il log delle transazioni del database oltre l'80 % e i secondi di attesa sui lock dall'avvio del server. Con tutte e cinque nell'elenco, il pulsante si disattiva.

ClickHouse

Ce ne sono cinque, e ogni pressione aggiunge la successiva che non hai ancora: la memoria in uso in percentuale del limite del server, le query in esecuzione ora, le repliche in ritardo di oltre un minuto, le mutazioni incompiute che hanno già fallito e la partizione con più parti in percentuale del limite oltre il quale il server rifiuta gli INSERT. Con tutte e cinque nell'elenco, il pulsante si disattiva.

Oracle

Ce ne sono cinque, e ogni pressione aggiunge la successiva che non hai ancora: più di 20 sessioni utente che stanno eseguendo qualcosa, le sessioni bloccate, il tablespace più pieno oltre l’85 % del suo massimo, gli oggetti non validi e le sessioni con la stessa chiamata da più di un minuto. Quelle che leggono V$SESSION o l’uso dei tablespace chiedono gli stessi privilegi di Informazioni server: senza, la regola dice Errore. Con tutte e cinque nell’elenco, il pulsante si spegne.

TiDB

Ce ne sono tre, e ogni pressione aggiunge la successiva che non hai ancora: le sessioni nel cluster sopra 100, le istruzioni lente nell’ultima ora sopra 100 e le modifiche dello schema in corso da oltre dieci minuti. Con tutte e tre nell’elenco, il pulsante si spegne.

Esporta salva la tabella —regole, valori e stato— in un file separato da tabulazioni (TSV).

Quando una regola scatta, Calíope ti avvisa: lascia un messaggio di sistema e, se non sei davanti, una notifica. Quando, dove arriva e come si spegne lo racconta l’argomento «Quando un avviso scatta: il messaggio e la notifica».

Parole chiave: avvisi SQL, avviso, soglia, regola, metrica, sorveglianza, aggiornamento automatico, intervallo, polling, monitor

Configurare le regole di avviso

Definisce quale query si sorveglia e con quale condizione scatta l'avviso.

Dove si trova: Avvisi SQL › Configura

Premi Configura nella barra dello strumento. Nel foglio, premi Aggiungi per aggiungere una regola e compila:

- Nome — come la riconoscerai nella tabella.
- SQL — la query che restituisce il valore da sorvegliare. Dovrebbe restituire una sola riga: viene letta la prima.
- Colonna — la colonna del risultato che contiene il valore. Se il nome non corrisponde a nessuna, si usa la prima colonna.
- Operatore e Soglia — la condizione che fa scattare l'avviso.

MySQLMariaDBAurora

Per esempio: SQL = SHOW STATUS WHERE Variable_name = 'Threads_connected', colonna = Value, operatore = >, soglia = 100.

TiDB

In TiDB SHOW STATUS non ha Threads_connected. Per lo stesso avviso: SQL = SELECT COUNT(*) AS n FROM information_schema.CLUSTER_PROCESSLIST, colonna = n, operatore = >, soglia = 100.

PostgreSQL

Per esempio: SQL = SELECT COUNT(*) AS "Value" FROM pg_stat_activity WHERE pid <> pg_backend_pid(), colonna = Value, operatore = >, soglia = 100.

SQL Server

Per esempio: SQL = SELECT COUNT(*) AS Value FROM sys.dm_exec_requests WHERE blocking_session_id <> 0, colonna = Value, operatore = >, soglia = 0.

ClickHouse

Per esempio: SQL = SELECT count() AS Value FROM system.processes WHERE query_id != queryID(), colonna = Value, operatore = >, soglia = 0: conta le query in corso senza contare quella della regola stessa. Gli interi a 64 bit arrivano come testo e si confrontano come numeri esatti, senza perdere cifre.

Oracle

Per esempio: SQL = SELECT COUNT(*) AS "Value" FROM v$session WHERE blocking_session IS NOT NULL, colonna = Value, operatore = >, soglia = 0: conta le sessioni che ne aspettano un'altra. Un NUMBER arriva con tutte le sue cifre e si confronta come numero esatto.

Se il valore non è numerico, viene confrontato come testo, carattere per carattere: > e < seguono l'ordine alfabetico, che va bene per le date scritte come AAAA-MM-GG.

Per cambiare una regola, selezionala nell'elenco, modificala e premi Salva; Elimina, o il cestino accanto, la rimuove. Pronto salva le regole e le valuta di nuovo.

Le regole si salvano su questo dispositivo, valgono per tutte le sessioni aperte e si sincronizzano con gli altri tuoi dispositivi se hai attiva la sincronizzazione iCloud.

Parole chiave: configurare avviso, regola, SQL, colonna, operatore, soglia, threads_connected

Quando un avviso scatta: il messaggio e la notifica

Quando una regola passa ad AVVISO, Calíope lascia un messaggio di sistema e, se non sei davanti, una notifica.

Dove si trova: Workspace › Strumenti › Avvisi SQL

Quando avvisa. Al passaggio di una regola ad AVVISO, non a ogni ciclo in cui resta in avviso. Una regola che scatta, torna OK e scatta di nuovo avvisa ogni volta. Una che alterna tra l’avviso e un errore, o una query senza righe, avvisa al massimo una volta ogni cinque minuti. Questo intervallo vale per ogni regola: due regole che scattano insieme avvisano entrambe.

Cosa lascia

• Un messaggio di sistema, con il nome della regola, il suo valore, la soglia e l’alias del profilo. Viene registrato anche con Calíope in primo piano e, se i messaggi di sistema viaggiano su iCloud, lo leggono gli altri tuoi dispositivi e Calíope sull’orologio, dove appartiene al gruppo dei server.
• Una notifica locale, con il nome della regola e, sotto, il valore e la soglia. Solo se Calíope non è in primo piano e hai attivato Avviso SQL attivato in Impostazioni › Notifiche: con Calíope in primo piano vedi già la riga in rosso.

Il valore e la soglia escono con i decimali con cui sono stati scritti: 0.15 non arriva come 0,2.

Le regole vengono valutate solo con il tab aperto. Su Mac continuano a esserlo anche con un’altra app in primo piano, e allora arriva la notifica. Su iPhone e iPad il sistema ferma Calíope pochi secondi dopo che la lasci: una regola che scatta nel frattempo viene valutata al ritorno, e il suo avviso ti aspetta nei messaggi, senza notifica.

Come si spegne. La notifica, con Avviso SQL attivato. Il messaggio, con Registra i messaggi di sistema in Impostazioni › Generali › Messaggi di sistema, che spegne tutte le classi. Sull’orologio, l’interruttore del gruppo dei server decide se suona.

Parole chiave: avviso, avvisare, notifica, messaggio di sistema, intervallo, cinque minuti, orologio, soglia, regola