Monitorovací panel
Sekce Monitorování je živý panel grafů a tabulek pro server za daným připojením — míra transakcí, backendy, produkce WAL, velikost databáze, poměry úspěšnosti cache a další — sestavený z malých, na sobě nezávislých karet nazývaných monitorovací jednotky. Kromě jednotek, které jsou součástí OmniDB, si můžete napsat vlastní, každou jako jediný SQL dotaz.
Vestavěné jednotky existují pro PostgreSQL (16 jednotek) a MySQL (1 jednotka, Thread Count). Připojení MariaDB a Oracle panel také mají, pro vaše vlastní jednotky. U ostatních strojů sekce zobrazí Monitorování není pro připojení … podporováno.
Otevření panelu
Klikněte na ikonu Monitorování na levé liště (mezi Databáze a Oznámení). Panel patří k připojení, které je otevřené v sekci Databáze: nahoře v sekci se zobrazuje pruh záložek otevřených připojení a výběrem záložky zobrazíte panel daného připojení. Není-li otevřeno žádné připojení, zobrazí se Není otevřeno žádné připojení.
Všechny jednotky jsou po načtení panelu pozastavené, takže samotné otevření panelu nezačne dotazovat server. Požadované jednotky spusťte jejich vlastním tlačítkem přehrávání, nebo všechny najednou tlačítkem Zapnout vše.

Panel nástrojů
Panel nástrojů nahoře zůstává na místě, zatímco se karty pod ním posouvají:
- první tlačítko, jen s ikonou (popisek Spravovat jednotky), otevře nebo zavře boční panel se seznamem jednotek, popsaný níže;
- Obnovit vše jednou obnoví všechny zobrazené jednotky;
- Zapnout vše / Pozastavit vše spustí nebo zastaví automatické obnovování všech jednotek tohoto připojení;
- Velikost karet — Malé, Střední, Velké nebo Na celou šířku — určuje, jak široká může karta být, než se mřížka zalomí do menšího počtu sloupců: úzké okno zobrazí jednu kartu na řádek, široký monitor několik vedle sebe. Volba se ukládá ve vašem prohlížeči.
Karta monitorovací jednotky
Každá karta má nahoře svůj název, ×, které jednotku z panelu odstraní (skryje), a — u vašich vlastních jednotek — tlačítko úprav, které otevře její editor (obojí se objeví po najetí myší na kartu). Pod názvem jsou ovládací prvky jednotky: okamžité obnovení, pozastavení / přehrávání a interval obnovování v sekundách. Zbytek karty zabírá graf nebo tabulka jednotky.
Jednotka je jednoho ze tří typů:
- Tabulka (Grid): při každém obnovení spustí svůj dotaz a zobrazí výsledek v datové tabulce.
- Graf (bez přidávání) (Chart (No Append)): při každém obnovení vykreslí nový kompletní graf; předchozí hodnoty se nahradí. Nejvíce se hodí pro koláčové nebo prstencové grafy aktuálního stavu.
- Časová řada (Timeseries): při každém obnovení připojí ke svému grafu novou sadu hodnot a uchovává nejnovější body, takže můžete sledovat, jak se hodnota vyvíjí v čase. Všechny vestavěné jednotky jsou časové řady.
Správa jednotek
Boční panel Spravovat jednotky (přepíná se prvním tlačítkem panelu nástrojů a jeho šířku lze měnit tažením okraje) obsahuje všechny jednotky dostupné pro dané připojení:
- zaškrtávací políčko před jednotkou ji na panelu zobrazí nebo skryje (skrytí ji zastaví, stejně jako × na její kartě, ale ponechá její interval obnovování pro příště);
- přetažením řádku nahoru nebo dolů změníte pořadí karet na panelu;
- + pod seznamem otevře editor nové jednotky;
- u vlastní jednotky pravým tlačítkem → Upravit nebo Smazat, případně dvojklikem otevřete její editor. Vestavěné jednotky nelze upravovat ani mazat, jen zobrazovat nebo skrývat.
Vaše vlastní jednotky jsou soukromé pro vašeho uživatele OmniDB.

Vestavěné jednotky
PostgreSQL: Transaction Rate, Backends, Autovacuum Workers Usage, WAL Production Rate, Temp Files Creation Rate, Autovacuum Freeze, Blocked Locks, Database Size, Database Growth Rate, Heap Cache Miss Ratio, Index Cache Miss Ratio, Seq Scan Ratio, Long Transaction, Long Query, Long Autovacuum a Checkpoints. MySQL: Thread Count. Nevyžadují v databázi instalovat nic navíc.
Psaní vlastních monitorovacích jednotek
Vlastní jednotka je jediný SQL dotaz, který se spouští podle časovače — se stejným připojením a oprávněními, jaké má váš SQL editor. Není potřeba se učit žádný zvláštní skriptovací jazyk.
Poznámka: jelikož se dotaz bez dohledu opakovaně spouští, jsou povoleny pouze
dotazy SELECT (nebo WITH ... SELECT) — destruktivní příkaz vložený omylem
je rovnou odmítnut, místo aby se tiše spouštěl podle časovače.
Klikněte na + v panelu Spravovat jednotky. Otevře se záložka editoru Monitorovací jednotka s poli Název, Typ (Časová řada, Graf (bez přidávání) nebo Tabulka), Interval obnovování (v sekundách), Šablona (volitelně můžete začít z existující jednotky), Typ grafu (Sloupcový, Koláčový, Prstencový nebo Čárový; zobrazuje se jen u typu Graf (bez přidávání)) a editorem SQL dotaz.
Podoba dotazu závisí na typu jednotky:
-
Tabulka: bez zvláštního tvaru — jakékoli sloupce a řádky, které dotaz vrátí, se stanou obsahem tabulky. Například:
SELECT * FROM pg_stat_activity -
Graf (bez přidávání): jeden řádek na kategorii — první sloupec je popisek, zbývající sloupec(-ce) je vždy jedna řada (název sloupce se stává názvem řady). Například koláčový graf velikostí databází:
SELECT datname, round(pg_catalog.pg_database_size(datname) / 1048576.0, 2) AS size_mb FROM pg_catalog.pg_database WHERE datname NOT IN ('template0', 'template1') -
Časová řada: přesně jeden řádek — každý číselný sloupec se stává jednou průběžně doplňovanou řadou. Například sledování celkové velikosti databází v čase:
SELECT round(sum(pg_catalog.pg_database_size(datname)) / 1048576.0, 2) AS total_size_mb FROM pg_catalog.pg_database WHERE NOT datistemplate
Kliknutím na Otestovat dotaz jednou spustíte a výsledek uvidíte vykreslený pod editorem — tolikrát, kolikrát chcete. Jakmile budete spokojeni, pojmenujte jednotku, nastavte interval obnovování a klikněte na Uložit. Jednotka se pak objeví v seznamu Spravovat jednotky; zaškrtněte ji, aby se zobrazila na panelu.