Un panel de ferramentas adicionais para supervisar e investigar erros en aplicacións e solucións de integración na plataforma de datos InterSystems IRIS, a plataforma de integración Ensemble e o DBMS Caché, ou a historia doutra bicicleta.
Neste artigo quero falar da aplicación que, xunto coas ferramentas de administración estándar, utilizo a diario para supervisar aplicacións e solucións de integración na plataforma InterSystems IRIS e atopar erros cando se producen.
A solución inclúe ver e editar matrices globais, realizar consultas (incluíndo JDBC/ODBC), enviar resultados de busca por correo electrónico como ficheiros XLS comprimidos. Ver obxectos de clase coa posibilidade de editar. Varios gráficos sinxelos para protocolos do sistema.
Esta é unha aplicación CSP baseada en
Se estás interesado, consulta a continuación e en
Todo comezou co estudo da cuestión de como rexistrar os cambios en obxectos en InterSystems IRIS, Ensemble e o DBMS Caché.
Despois de ler
A solución resultante está implementada como unha subclase do panel de %CSP.Util.Pane, que ten unha xanela de comandos principal e un botón Executar, ademais de configuracións de refinamento de comandos.
Cando introduces "?" obtemos unha breve descrición destes comandos:
Globals
O meu comando máis común é ver o global. Como regra xeral, este é un protocolo global ao depurar o proxecto propio ou alleo. Podes visualizalo en orde inversa, así como aplicando un filtro tanto á ligazón como aos datos. Os nós atopados pódense editar e eliminar:
Podes eliminar todo o global introducindo menos ^logMSW- no comando despois do nome.
Pero deste xeito só podes eliminar globais que comezan por ^log (globais de protocolo), é dicir. Implementouse unha restrición contra a eliminación accidental.
Se introduces "*" despois do nome, obterás unha lista de globais con características adicionais. O segundo "*" engadirá un novo campo "MB asignado" e outro asterisco será "MB usado". Esta combinación de dous informes e a división en "asteriscos" realízase para dividir o informe de longa duración en bloques ocupados. dos grandes globais.
Desde esta táboa podes seguir as ligazóns activas para ver o propio global ou para velo/editar de xeito estándar desde o portal de xestión facendo clic en R ou W no campo Permiso.
Solicitudes
Converter un informe a formato Excel
A segunda función máis utilizada é a execución de consultas. Para facelo, introduza a instrución sql como comando.
O principal que me abondou no Portal de Xestión do Sistema estándar foi executar consultas en fontes JDBC/ODBC configuradas no DBMS e emitir os resultados en formato XLS, arquivar e enviar o ficheiro por correo electrónico. Para iso, na miña ferramenta, antes de executar o comando, cómpre activar a caixa de verificación "Descargar no ficheiro de Excel".
Esta función aforrame moito tempo na miña rutina diaria e integro con éxito módulos preparados en novas aplicacións e solucións de integración.
Pero para iso, primeiro cómpre configurar o camiño para crear ficheiros no servidor e as credenciais do usuario e do servidor de correo; para iso, á súa vez, cómpre editar os nodos da configuración global do programa ^%App.Setting .
Gardando informes a nivel global
Moitas veces é necesario gardar globalmente os resultados da execución do informe. Para iso uso os seguintes procedementos:
Para JDBC:
##class(App.sys).SqlToDSN
Para ODBC:
##class(App.sys).SaveGateway
Para expresións SQL:
##class(App.sys).SaveSQL
Para consulta:
##class(App.sys).SaveQuery
Por exemplo, se no panel o comando
xec do ##class(App.sys).SaveQuery("%SYSTEM.License:Counts","^GN",0)
Imos gardar o resultado da solicitude de reconto de uso da licenza na matriz ^GN, e podes ver o que se gardou no panel co comando: result ^GN("%SYSTEM.License:Counts",0)
Módulos de funcionalidades aumentadas
E a segunda mellora, que simplificou e automatizou moito o meu traballo, é a implementación da capacidade de executar módulos especialmente escritos ao xerar cada liña de consulta. Deste xeito, podo incorporar novas funcionalidades ao informe nun só paso, por exemplo, ligazóns activas para operacións adicionais sobre datos.
Exemplo 1: traballar coa clase App.Parameter
Crea un parámetro usando o "Navegador de táboas"
Edite un parámetro a través de "Opcións"
Exemplo 2: ver o global a través da ligazón "Historial".
Gráficos
Inspirado no artigo [9] e para visualizar o crecemento das bases de datos, creouse unha páxina que mostra unha gráfica mensual dos tamaños das bases de datos creada a partir do ficheiro iris.log (cconsole.log) utilizando rexistros “Expand” retrospectivamente do día actual.
Como exemplo, tamén se creou un gráfico de eventos en InterSystems IRIS, que tamén se xera a partir do ficheiro de protocolo:
Ligazóns a materiais:
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
Grazas aos autores destes e outros artigos que me axudaron a crear esta ferramenta.
PD Este proxecto estase a desenvolver e moitas ideas aínda non foron implementadas. Nun futuro próximo penso facer:
1. Modelo de aplicación no marco
2. Documentación automática do formato de código
Fonte: www.habr.com