Panel nástrojů pro vývojáře na InterSystems IRIS

Panel doplňkových nástrojů pro sledování a vyšetřování chyb v aplikacích a integračních řešeních na datové platformě InterSystems IRIS, integrační platformě Ensemble a Caché DBMS nebo příběh dalšího kola.

V tomto článku chci hovořit o aplikaci, kterou spolu se standardními nástroji pro správu každodenně používám k monitorování aplikací a integračních řešení na platformě InterSystems IRIS a hledání chyb, když se vyskytnou.
Řešení zahrnuje prohlížení a úpravu globálních polí, spouštění dotazů (včetně JDBC/ODBC), odesílání výsledků hledání e-mailem jako soubory XLS se zipem. Zobrazit objekty třídy s možností úprav. Několik jednoduchých grafů pro systémové protokoly.

Toto je aplikace CSP založená na jQuery-UI, chart.js, jsgrid.js
Pokud máte zájem, podívejte se níže a v úložiště.

Všechno to začalo studiem otázky, jak protokolovat změny objektů v InterSystems IRIS, Ensemble a Caché DBMS.

Po přečtení výborný článek o tomhle jsem se rozvětvil projekt. a začal to dodělávat pro své potřeby.

Výsledné řešení je implementováno jako podtřída panelu %CSP.Util.Pane, která má hlavní příkazové okno a tlačítko Spustit, plus nastavení upřesnění příkazu.

Když zadáte „?“ dostaneme stručný popis těchto příkazů:

Panel nástrojů pro vývojáře na InterSystems IRIS

Globals

Můj nejčastější příkaz je zobrazit globální. Zpravidla se jedná o globální protokol při ladění vlastního nebo cizího projektu. Můžete jej zobrazit v opačném pořadí a také použitím filtru na odkaz i data. Nalezené uzly lze upravovat a mazat:

Panel nástrojů pro vývojáře na InterSystems IRIS

Celé globální můžete smazat zadáním mínus ^logMSW- do příkazu za jménem.
Takto ale můžete smazat pouze globaly začínající ^log (protocol globals), tzn. Bylo implementováno omezení proti náhodnému smazání.

Pokud za název zadáte „*“, získáte seznam globálních objektů s dalšími charakteristikami. Druhé „*“ přidá nové pole „Přidělené MB“ a další hvězdička bude „Použitý MB“. Tato kombinace dvou výkazů a rozdělení na „hvězdičky“ slouží k rozdělení často dlouho se tvořícího výkazu na obsazené bloky. velkých světů.

Panel nástrojů pro vývojáře na InterSystems IRIS

Z této tabulky můžete pomocí aktivních odkazů zobrazit samotný globál nebo jej zobrazit/upravit standardním způsobem z portálu pro správu kliknutím na R nebo W v poli Oprávnění.

žádosti

Převod sestavy do formátu Excel

Druhou nejčastěji používanou funkcí je provádění dotazu. Chcete-li to provést, zadejte příkaz sql jako příkaz.

Ve standardním System Management Portal mi stačilo hlavně spouštění dotazů na JDBC/ODBC zdroje nakonfigurované v DBMS a výstup výsledků ve formátu XLS, archivace a odeslání souboru emailem. Chcete-li to provést, musíte v mém nástroji před provedením příkazu zaškrtnout políčko „Stáhnout do souboru Excel“.

Tato funkce mi šetří spoustu času v každodenní rutině a úspěšně integruji hotové moduly do nových aplikací a integračních řešení.

Panel nástrojů pro vývojáře na InterSystems IRIS

Chcete-li to provést, musíte nejprve nakonfigurovat cestu pro vytváření souborů na serveru a přihlašovací údaje uživatele a poštovního serveru; k tomu musíte upravit uzly globálního nastavení programu ^%App.Setting .

Panel nástrojů pro vývojáře na InterSystems IRIS

Ukládání přehledů globálně

Velmi často je potřeba ukládat výsledky provádění reportů globálně. K tomu používám následující postupy:

Pro JDBC:
##class(App.sys).SqlToDSN

Pro ODBC:
##class(App.sys).SaveGateway

Pro SQL výrazy:
##class(App.sys).SaveSQL

Pro dotaz:
##class(App.sys).SaveQuery

Například pokud je v panelu příkaz
xec do ##class(App.sys).SaveQuery("%SYSTEM.License:Counts","^GN",0)
Uložme výsledek požadavku na počítání využití licencí do pole ^GN a pomocí příkazu se můžete podívat, co bylo v panelu uloženo: result ^GN("%SYSTEM.License:Counts",0)

Panel nástrojů pro vývojáře na InterSystems IRIS

Moduly s rozšířenou funkčností

A druhým vylepšením, které mi značně zjednodušilo a zautomatizovalo práci, je implementace možnosti spouštět speciálně napsané moduly při generování každého řádku dotazu. Tímto způsobem mohu do sestavy za chodu v jednom průchodu zabudovat nové funkce, například aktivní odkazy pro další operace s daty.

Příklad 1: Práce s třídou App.Parameter

Vytvořte parametr pomocí „Navigátoru tabulky“

Upravte parametr pomocí „Možnosti“

Panel nástrojů pro vývojáře na InterSystems IRIS

Příklad 2: Globální zobrazení přes odkaz „Historie“.

Panel nástrojů pro vývojáře na InterSystems IRIS

Grafy

Inspirována článkem [9] a pro vizualizaci růstu databází byla vytvořena stránka, která zobrazuje měsíční graf velikostí databáze vytvořený ze souboru iris.log (cconsole.log) pomocí záznamů „Expand“ retrospektivně od aktuálního dne.

Jako příklad byl v InterSystems IRIS vytvořen také graf událostí, který je také generován ze souboru protokolu:

Panel nástrojů pro vývojáře na InterSystems IRIS

Odkazy na materiály:

[1] logovací subsystém v Kasha
[2] Instantní kaše – dělání CRUD v Caché pomocí jqGrid
[3] Alternativní SQL manažeři pro Caché DBMS
[4] Příklady generování a odesílání e-mailů pomocí Caché DBMS
[5] Cache + jQuery. Rychlý start
[6] Nasazení aplikací
[7] podpora UDL
[8] Zobrazení globálních údajů na portálu Caché Management Portal
[9] Prometheus s Cache
[10] Lokalizace v Caché DBMS

Děkuji autorům těchto a dalších článků, kteří mi pomohli tento nástroj vytvořit.

PS Tento projekt se vyvíjí a mnoho nápadů ještě nebylo realizováno. V nejbližší době plánuji:

1. Šablona aplikace na frameworku uikit
2. Automatická dokumentace formátu kódu Doxegen s integrací do CStudio

Zdroj: www.habr.com

Přidat komentář