Pannello di strumenti per sviluppatori su InterSystems IRIS

Un pannellu di arnesi supplementari per u monitoraghju è l'investigazione di l'errori in l'applicazioni è e suluzioni d'integrazione nantu à a piattaforma di dati InterSystems IRIS, a piattaforma d'integrazione Ensemble è u DBMS Caché, o a storia di una altra bicicletta.

In questu articulu vogliu parlà di l'applicazione chì, inseme cù i strumenti di amministrazione standard, aghju utilizatu ogni ghjornu per monitorà l'applicazioni è e soluzioni d'integrazione nantu à a piattaforma InterSystems IRIS è truvà l'errore quandu si verificanu.
A suluzione include a visualizazione è l'edità di array globale, l'esecuzione di dumande (inclusi JDBC / ODBC), l'inviu di risultati di ricerca via email cum'è file XLS zippati. Vede l'uggetti di classi cù a capacità di edità. Diversi grafici simplici per i protokolli di u sistema.

Questa hè una applicazione CSP basatu annantu jQuery-UI, chart.js, jsgrid.js
Sè site interessatu, vede quì sottu è in repository.

Tuttu hà cuminciatu à studià a quistione di cumu logu i cambiamenti à l'uggetti in InterSystems IRIS, Ensemble è Caché DBMS.

Dopu à leghje eccellente articulu nantu à questu, aghju furcatu scrive. è hà cuminciatu à finisce per i so bisogni.

A suluzione risultante hè implementata cum'è una subclasse di pannellu di %CSP.Util.Pane, chì hà una finestra di cumandamentu principale è un buttone Run, più paràmetri di raffinamentu di cumanda.

Quandu inserisci "?" avemu una breve descrizzione di sti cumandamenti:

Pannello di strumenti per sviluppatori su InterSystems IRIS

Globali

U mo cumandamentu più cumuni hè di vede u globale. In regula, questu hè un protokollu globale quandu debugging u vostru propiu o un altru prughjettu. Pudete vede in ordine inversu, è ancu applicà un filtru à u ligame è à i dati. I nodi truvati ponu esse editati è sguassati:

Pannello di strumenti per sviluppatori su InterSystems IRIS

Pudete sguassà tuttu u mondu inserendu minus ^ logMSW- in u cumandamentu dopu u nome.
Ma questu modu pudete sguassate solu globals cuminciendu cù ^ log (protoculu globals), i.e. Hè stata implementata una restrizione contru l'eliminazione accidentale.

Se inserite "*" dopu u nome, uttene una lista di globals cù caratteristiche supplementari. U sicondu "*" aghjunghje un novu campu "Allocated MB", è un altru asteriscu serà "Used MB". Questa cumminazione di dui rapporti è a divisione in "asterischi" hè fatta per dividisce u rapportu spessu longu in blocchi occupati. di grandi globals.

Pannello di strumenti per sviluppatori su InterSystems IRIS

Da questa tavula pudete seguità i ligami attivi per vede u glubale stessu o per vede / edità in u modu standard da u portale di gestione clicchendu R o W in u campu Permissione.

E dumande

Cunvertisce un rapportu in u furmatu Excel

A seconda funzione più usata hè l'esecuzione di query. Per fà questu, entre in a dichjarazione sql cum'è cumandamentu.

A cosa principale chì era abbastanza per mè in u Portale di Gestione di Sistema standard era eseguisce e dumande nantu à e fonti JDBC / ODBC cunfigurate in u DBMS è emette i risultati in u formatu XLS, l'archivimentu è l'inviu di u schedariu per email. Per fà questu, in u mo strumentu, prima di eseguisce u cumandamentu, avete bisognu di attivà a casella "Download to Excel file".

Questa funzione mi risparmia assai tempu in a mo rutina di ogni ghjornu, è aghju integratu cù successu moduli pronti in novi applicazioni è suluzioni d'integrazione.

Pannello di strumenti per sviluppatori su InterSystems IRIS

Ma per fà questu, prima avete bisognu di cunfigurà u percorsu per a creazione di fugliali nantu à u servitore è e credenziali di l'utilizatore è u servitore di mail; per questu, à u turnu, avete bisognu di edità i nodi di i paràmetri di u prugramma globale ^%App.Setting .

Pannello di strumenti per sviluppatori su InterSystems IRIS

Salvà i rapporti in u mondu

Moltu spessu hè necessariu di salvà i risultati di l'esekzione di rapportu in u mondu. Per fà questu, aghju utilizatu i seguenti prucedure:

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

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

Per l'espressioni SQL:
##classe(App.sys).SaveSQL

Per a dumanda:
##classe(App.sys).SaveQuery

Per esempiu, se in u pannellu u cumandamentu
xec do ##class(App.sys).SaveQuery("%SYSTEM.License:Counts","^GN",0)
Salvemu u risultatu di a dumanda di cunti di l'usu di licenza in u ^ GN array, è pudete vede ciò chì hè statu salvatu in u pannellu cù u cumandimu: result ^GN("%SYSTEM.License:Counts",0)

Pannello di strumenti per sviluppatori su InterSystems IRIS

Moduli di funziunalità aumentati

È a seconda mellura, chì hà simplificatu è automatizatu assai u mo travagliu, hè stata l'implementazione di a capacità di eseguisce moduli scritti apposta quandu generà ogni linea di dumanda. Questu modu, possu custruisce una nova funziunalità in u rapportu nantu à a mosca in un passu, per esempiu, ligami attivi per operazioni supplementari nantu à e dati.

Esempiu 1: U travagliu cù a classa App.Parameter

Crea un paràmetru cù u "Table Navigator"

Edite un paràmetru via "Opzioni"

Pannello di strumenti per sviluppatori su InterSystems IRIS

Esempiu 2: Vede u globale via u ligame "Storia".

Pannello di strumenti per sviluppatori su InterSystems IRIS

Graficu

Inspiratu da l'articulu [9] è per visualizà a crescita di e basa di dati, una pagina hè stata creata chì mostra un graficu mensuale di dimensioni di basa di dati creati da u schedariu iris.log (cconsole.log) utilizendu i registri "Expand" retrospectivamente da u ghjornu attuale.

Per esempiu, un gràficu di l'avvenimentu hè statu ancu creatu in InterSystems IRIS, chì hè ancu generatu da u schedariu di protokollu:

Pannello di strumenti per sviluppatori su InterSystems IRIS

Ligami à i materiali:

[1] sottosistema di logging in Kasha
[2] Porridge instantani - fà CRUD in Caché cù jqGrid
[3] Gestori SQL alternativi per u DBMS Caché
[4] Esempii di generazione è invià e-mail utilizendu u DBMS Caché
[5] Cache + jQuery. Partenza rapida
[6] Implementazione di l'applicazioni
[7] Support UDL
[8] Vede i globals in u Caché Management Portal
[9] Prometheus cù Cache
[10] Localizazione in u DBMS Caché

Grazie à l'autori di questi è altri articuli chì m'hà aiutatu à creà stu strumentu.

PS Stu prughjettu hè sviluppatu è parechje idee ùn sò ancu state implementate. In un futuru vicinu aghju pensatu à fà:

1. Modellu di applicazione nantu à u quadru uikit
2. Auto-documentazione di furmatu di codice Doxegen cù integrazione in CStudio

Source: www.habr.com

Add a comment