Panel dodatnih alata za praćenje i istraživanje grešaka u aplikacijama i integracijskim rješenjima na podatkovnoj platformi InterSystems IRIS, integracijskoj platformi Ensemble i Caché DBMS-u ili priča o drugom biciklu.
U ovom članku želim govoriti o aplikaciji koju, uz standardne administrativne alate, svakodnevno koristim za praćenje aplikacija i integracijskih rješenja na InterSystems IRIS platformi i pronalaženje grešaka kada se pojave.
Rješenje uključuje pregled i uređivanje globalnih nizova, pokretanje upita (uključujući JDBC/ODBC), slanje rezultata pretraživanja putem e-pošte kao zipovanih XLS datoteka. Pregledajte objekte klase sa mogućnošću uređivanja. Nekoliko jednostavnih grafikona za sistemske protokole.
Ovo je CSP aplikacija zasnovana na
Ako ste zainteresovani, pogledajte ispod i u
Sve je počelo proučavanjem pitanja kako evidentirati promjene na objektima u InterSystems IRIS, Ensemble i Caché DBMS.
Poslije čitanja
Rezultirajuće rješenje implementirano je kao podklasa panela %CSP.Util.Pane, koja ima glavni prozor za komande i dugme Run, plus podešavanja za preciziranje komandi.
Kada unesete "?" dobijamo kratak opis ovih naredbi:
Globals
Moja najčešća naredba je pregled globalnog. Po pravilu, ovo je globalni protokol prilikom otklanjanja grešaka u svom ili tuđem projektu. Možete ga pregledati obrnutim redoslijedom, kao i primjenom filtera i na vezu i na podatke. Pronađeni čvorovi se mogu uređivati i brisati:
Možete izbrisati cijeli global unošenjem minus ^logMSW- u naredbu iza imena.
Ali na ovaj način možete izbrisati samo globale koji počinju sa ^log (globali protokola), tj. Uvedeno je ograničenje protiv slučajnog brisanja.
Ako unesete “*” iza imena, dobićete listu globala sa dodatnim karakteristikama. Drugo “*” će dodati novo polje “Dodijeljeni MB”, a druga zvjezdica će biti “Used MB”. Ova kombinacija dva izvještaja i podjela na “zvjezdice” je urađena kako bi se izvještaj koji se često dugo formirao podijeli na zauzete blokove velikih globala.
Iz ove tabele možete pratiti aktivne veze da vidite sam global ili da ga pregledate/uredite na standardni način sa portala za upravljanje klikom na R ili W u polju Dozvola.
Zahtjevi
Pretvaranje izvještaja u Excel format
Druga najčešće korišćena funkcija je izvršavanje upita. Da biste to učinili, unesite sql izraz kao naredbu.
Glavna stvar koja mi je bila dovoljna u standardnom System Management Portalu je izvršavanje upita na JDBC/ODBC izvorima konfigurisanim u DBMS-u i izlaz rezultata u XLS formatu, arhiviranje i slanje fajla e-poštom. Da biste to učinili, u mom alatu, prije izvršavanja naredbe, morate omogućiti potvrdni okvir „Preuzmi u Excel datoteku“.
Ova funkcija mi štedi puno vremena u svakodnevnoj rutini, a gotove module uspješno integriram u nove aplikacije i rješenja integracije.
Ali da biste to uradili, prvo morate da konfigurišete putanju za kreiranje datoteka na serveru i akreditive korisnika i servera za poštu; za to, zauzvrat, morate urediti čvorove globalnih postavki programa ^%App.Setting .
Čuvanje izvještaja na globalnom nivou
Vrlo često je potrebno globalno sačuvati rezultate izvršenja izvještaja. Za to koristim sljedeće procedure:
Za JDBC:
##class(App.sys).SqlToDSN
Za ODBC:
##class(App.sys).SaveGateway
Za SQL izraze:
##class(App.sys).SaveSQL
Za upit:
##class(App.sys).SaveQuery
Na primjer, ako je u panelu komanda
xec do ##class(App.sys).SaveQuery("%SYSTEM.License:Counts","^GN",0)
Sačuvajmo rezultat zahtjeva za brojanje korištenja licence u ^GN nizu i možete vidjeti šta je sačuvano u panelu pomoću naredbe: result ^GN("%SYSTEM.License:Counts",0)
Moduli proširene funkcionalnosti
I drugo poboljšanje, koje je u velikoj mjeri pojednostavilo i automatiziralo moj rad, je implementacija mogućnosti izvršavanja posebno napisanih modula prilikom generiranja svake linije upita. Na ovaj način mogu ugraditi novu funkcionalnost u izvještaj u hodu u jednom prolazu, na primjer, aktivne veze za dodatne operacije nad podacima.
Primjer 1: Rad s klasom App.Parameter
Kreirajte parametar koristeći "Navigator tablica"
Uredite parametar preko “Opcije”
Primjer 2: Pregled globalnog preko linka “History”.
Grafikoni
Inspirisana člankom [9] i za vizualizaciju rasta baza podataka, kreirana je stranica koja prikazuje mjesečni grafikon veličina baze podataka kreiran iz datoteke iris.log (cconsole.log) koristeći "Expand" zapise retrospektivno od tekućeg dana.
Kao primjer, u InterSystems IRIS je kreiran i graf događaja, koji se također generira iz datoteke protokola:
Linkovi na materijale:
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
Hvala autorima ovih i drugih članaka koji su mi pomogli da napravim ovaj alat.
PS Ovaj projekat se razvija i mnoge ideje još nisu realizovane. U bliskoj budućnosti planiram da uradim:
1. Šablon aplikacije na okviru
2. Auto-dokumentacija formata koda
izvor: www.habr.com