iSeries SQL AgentiSeries SQL Interactive Monitor
iSeries SQL Monitor
6.0VMC-SQL
VISUAL Message Center iSeries SQL Agent
El software descrito en este documento se distribuye bajo un contracto de licencia y puede utilizarse
únicamente de acuerdo a los términos de uso de dicho acuerdo.
Aviso de Copyright
Copyright © 2014 Tango/04. Todos los derechos reservados.
Fecha de documento: Noviembre 2014
Versión de documento: 1.5
Versión de producto: 6.0
Ninguna parte de esta publicación puede reproducirse, transmitirse, transcribirse, almacenarse en un
sistema de recuperación o traducirse a ningún idioma o lenguaje de programación, de ninguna forma ni
medio, electrónico, mecánico, magnético, óptico, químico, manual, o de cualquier otro tipo, sin el
permiso por escrito previo de Tango/04.
Marcas Registradas
Cualquier referencia a nombres de productos registrados son propiedad de las respectivas empresas.
Soporte Técnico
Para soporte técnico visite nuestra página web en www.tango04.com.
Tango/04 Computing Group S.L. Avda. Meridiana 358, 5 A-B Barcelona 08027 España
Teléfono: +34 93 274 0051
Tabla de Contenidos
Tabla de Contenidos
Tabla de Contenidos.......................................................................... III
Cómo Usar esta Guía......................................................................... VI
Capítulo 1
Presentación de iSeries SQL Agent....................................................... 11.1. Mejoras en la Seguridad de la BASE de Datos de iSeries .............................1
1.2. Funciones Principales de Interactive SQL Monitor .........................................2
1.3. Funciones Principales de iSeries SQL Agent .................................................3
1.4. Beneficios de los iSeries SQL Agent ..............................................................4
1.4.1. Alertas en Tiempo Real de Actividad SQL/STRSQL Sospechosa...........4
1.4.2. Informes Flexibles .....................................................................................4
1.4.3. Simplificación (y Reducción del Coste) de las Operaciones.....................4
1.4.4. Complementación de una Iniciativa Corporativa BSM / RTI .....................4
1.4.5. Acelerar los Cambios Ad-hoc Después del Fallo de una Aplicación ........4
1.4.6. Auditorías Más Fáciles, Sin Requerir Cambios en Aplicaciones ..............5
1.4.7. Aumento de la Disponibilidad de las Aplicaciones, con Ahorro de Costes de Indisponibilidad.........................................................................................5
1.4.8. Cumplimiento de Leyes de Seguridad para Evitar Multas ........................5
1.4.9. Control de Consultores Externos, Personal en el Exterior, Etc.................5
1.4.10. Significativa Mejora de la Seguridad.......................................................5
1.4.11. Prevención e Investigación de Fraude....................................................6
1.5. Diferencias Entre SQL Monitor e Interactive SQL Monitor .............................6
Capítulo 2
Informes de VISUAL Message Center iSeries SQL Agent ......................... 72.1. Informes Predefinidos de los Monitores SQL .................................................8
© 2014 Tango/04 Computing Group Página III
Tabla de Contenidos
2.1.1. Creación de Sub-informes Personalizados...............................................8
2.2. Formatos Disponibles para la Exportación de Informes .................................8
2.2.1. Destinos Disponibles para Informes .........................................................9
Capítulo 3
Interactive SQL Monitor (SQI) ........................................................... 103.1. Monitorización de Sentencias SQL Interactivas en Su Sistema ...................10
3.2. Instalación del Monitor SQI de iSeries..........................................................11
3.2.1. Configuración del Monitor SQI: Menú Principal ......................................11
3.3. Configuración e Inicio del Monitor SQI .........................................................13
3.3.1. Configuración ..........................................................................................13
3.3.2. Parar Auditoría de SQL Interactivo .........................................................13
3.3.3. Comprobar Auditoría de SQL Interactivo ................................................13
3.3.4. Inicio del Monitor .....................................................................................14
3.3.5. Establecer Valores para Autoarranque (Se Recomienda el Inicio en IPL) .15
3.3.6. Verificar la Actividad de Kernel Supervisor .............................................15
3.3.7. Arrancar el SQL Monitor .........................................................................15
3.4. Monitorización de los Eventos de Sentencias SQL con VISUAL Message Center.............................................................................................................15
3.4.1. Ejemplo – Mensaje de Smart Console para Eventos de Sentencias SQL Interactivas. .................................................................................................17
3.5. Limpieza de la Base de Datos del Monitor SQL Interactivo..........................18
3.5.1. Limpieza de Base de Datos SQI Utilizando SQL Interactivo ..................18
Capítulo 4
Monitor SQL .................................................................................... 204.1. Monitorización de Sentencias SQL en Su Sistema ......................................20
4.2. Instalación del iSeries SQL Monitor..............................................................21
4.3. Antes de Empezar ........................................................................................22
4.4. Configuración del Monitor SQL: Menú Principal ...........................................23
4.5. Inicio del Monitor SQL...................................................................................23
4.6. Configurar SQL Monitor ................................................................................24
4.6.1. Arranque Automático Monitor .................................................................24
4.6.2. Enviar a SmartConsole ...........................................................................24
4.6.3. Recuperar Desde....................................................................................24
4.6.4. Intervalo entre Chequeos........................................................................24
4.6.5. Recuperar Variables ...............................................................................25
4.6.6. Número de Horas para Borrado..............................................................25
4.6.7. Número de Ciclos para Borrado..............................................................25
4.6.8. Ejecutar STRDBMON .............................................................................25
4.6.9. Filtro por Trabajo, Usuario de Trabajo, Número de Trabajo ...................25
4.6.10. Filtrar por Perfil de Usuario ...................................................................26
4.6.11. Filtrar por Archivo de Base de Datos ....................................................26
© 2014 Tango/04 Computing Group Página IV
Tabla de Contenidos
4.6.12. Incluir SQL de Sistema .........................................................................26
4.6.13. Biblioteca de Salida...............................................................................27
4.6.14. Filtrar por Query Governor ....................................................................27
4.7. Verificación de los Trabajos del Monitor SQL...............................................27
4.8. Menú de Filtros de Trabajos .........................................................................27
4.9. Configuración Mediante el Mantenimiento del Monitor SQL.........................28
4.9.1. Nombre del Subsistema..........................................................................28
4.9.2. Nombre del Trabajo ................................................................................29
4.9.3. Usuario del Trabajo.................................................................................29
4.9.4. Usuario Real del Trabajo ........................................................................29
4.9.5. Tipo de Trabajo (JOBTYPE) ..................................................................30
4.9.6. Perfil de Grupo (USERGROUP) .............................................................31
4.9.7. Clase de Usuario (USERCLASS) ...........................................................31
4.9.8. Código de Contabilidad (ACGCODE) .....................................................31
4.10. Monitorización de los Eventos de Sentencias SQL con VISUAL Message Center.............................................................................................................32
4.10.1. Ejemplo – Mensaje de la SmartConsole de Eventos de Sentencias SQL.33
4.10.2. Valores Válidos de Código de Operación .............................................34
4.10.3. Valores Válidos de Tipo Commit/Rollback ............................................36
4.11. Limpieza de la Base de Datos del Monitor SQL .........................................36
4.11.1. Limpieza de Base de Datos Utilizando SQL Interactivo........................37
4.11.2. Limpieza de Base de Datos SQL Utilizando SQL Interactivo ...............37
Apéndices
Apéndice A: SQL Monitor para ODBC/JDBC ......................................... 39A.1. Instalar SQL Monitor for ODBC/JDBC..........................................................40
A.2. Configurar y Arrancar el monitor ..................................................................41
A.2.1. Configurar SQL Monitor for iSeries.........................................................41
A.2.2. Configurar SQL Monitor Personalizado para ODBC/JDBC....................43
Apéndice B: Consideraciones de Rendimiento ..................................... 46B.1. PTFs ...........................................................................................................46
B.2. Uso de CPU y Rápida Ocupación ................................................................47
B.2.1. Resolviendo Elevadas Cargas de Trabajo .............................................47
B.3. Velocidad de Procesamiento .......................................................................48
Apéndice C: Contactar con Tango/04 ................................................. 49
Acerca de Tango/04 Computing Group ............................................... 51
Aviso Legal...................................................................................... 52
© 2014 Tango/04 Computing Group Página V
Cómo Usar esta Guía
© 2014 Tango/04 Computing Group Página VI
Cómo Usar esta Guía
Este capítulo explica cómo usar las Guías de Usuario de Tango/04 y comprender las convenciones
tipográficas usadas en toda la documentación de Tango/04.
Convenciones Tipográficas
Los siguientes términos, formatos de texto y símbolos convencionales se utilizan en toda la
documentación impresa de Tango/04:
Convention Descripción
Negrita Mandatos, botones en pantalla y opciones de menú.
Cursiva azul Referencias y enlaces a otras secciones en el manual o a otra documentación que contiene información relevante.
Cursiva Texto mostrado en pantalla, o variables donde el usuario debe sustituir sus propios detalles.
Monospacia Mandatos de entrada como mandatos o código System i, o texto que los usuarios deben teclear.
MAYUSCULA Claves de teclado, como CTRL para la tecla Control y F5 para la tecla de función que está etiquetada como F5.
Notas e información adicional de utilidad.
Consejos y pistas que mejoran la experiencia de usuario al trabajar con este producto.
Importante: información adicional que es altamente recomendable que el usuario tenga en cuenta.
Aviso: El no seguir esta información podría derivar potencialmente en serios problemas.
Presentación de iSeries SQL Agent
Capítulo 11 Presentación de iSeries SQL Agent
1.1 Mejoras en la Seguridad de la BASE de Datos de iSeries Los agentes VISUAL Message Center Interactive SQL Monitor y SQL Monitor le proporcionan un medio
para hacer mucho más estricta la seguridad de la base de datos relacional que reside en sus sistemas
iSeries/i5, al capturar todas las sentencias SQL ejecutadas en sus sistemas y particiones.
Permiten a operadores, administradores de sistemas, auditores y oficiales de seguridad conocer cada
sentencia SQL que corra contra el motor de la base de datos tanto en forma histórica como en tiempo
real o resaltar solamente los eventos más sospechosos según sus propias reglas dinámicas. Junto con
la SmartConsole, pueden ejecutar acciones sin necesidad de operadores para obtener una seguridad
máxima. Por ejemplo, pueden alertarle inmediatamente acerca de un UPDATE ejecutado contra una
base de datos sensible durante una noche del fin de semana o, aún mejor, pueden detener
automáticamente el trabajo considerado ofensivo y deshabilitar al usuario sospechoso. También están
disponibles todas las ventajas de VISUAL Message Center Reports para sacar el mayor provecho a la
información recogida, por ejemplo la creación de informes periódicos para la página Web corporativa,
de una forma totalmente automatizada.
Además, el SQL Monitor puede medir el tiempo de respuesta de la base de datos y ayudarle a
comprender, perfilar y optimizar aplicaciones Web, Cliente/Servidor o nativas.
Figura 1 – Las acciones de auto-protección pueden ser ejecutadas según reglas flexibles, dinámicas y personalizables.
El Agente SQL Interactivo cubre únicamente las sentencias SQL ejecutadas desde trabajos
interactivos, mientras que el Agente SQL puede capturar todas las sentencias SQL, sin importar su
origen (es decir, también capturará transacciones SQL procedentes de sentencias SQL insertadas en
© 2014 Tango/04 Computing Group Página 1
Presentación de iSeries SQL Agent
programas RPG y COBOL, clientes ODBC/JDBC, aplicaciones Cliente/Servidor y cualquier tipo de
programa que utilice sentencias SQL para acceder a la base de datos nativa).
Los datos iSeries también pueden ser accedidos utilizando tecnología nativa, por ejemplo, acceso
nativo desde aplicaciones en cualquier lenguaje de programación (incluyendo COBOL y RPG), DFU,
UPDDTA y WRKQRY. SQL Monitor solo monitoriza accesos ejecutados mediante la utilización de SQL.
No monitoriza accesos llevados a cabo utilizando tecnología nativa.
Las acciones sospechosas y la actividad SQL pueden enviarse a una consola corporativa central,
recibir una asignación de estado y criticidad codificada por colores, y usarse como un sensor más de la
salud operativa con fines de auditoría, para proyectos de monitorización o para iniciativas de Business
Service Management (BSM).
Figura 2 – Los informes de auditoría personalizados se pueden obtener en gran variedad de formatos, ya sea bajo petición o de forma automática.
1.2 Funciones Principales de Interactive SQL Monitor Con Interactive SQL Monitor puede:
• Llevar un registro de cada sentencia SQL ejecutada a través de un trabajo interactivo,
utilizando STRSQL o SQL embebido en RPG, COBOL, o cualquier otro lenguaje.
• Ser avisado en tiempo real de sentencias SQL ejecutadas desde trabajos interactivos, por
SMS, email, ventanas emergentes, etc
• Recibir vía SMS, e-mail, ventana emergente, etc. alertas en tiempo real de sentencias
STRSQL que se están ejecutando
• Utilizar reglas de escalamiento complejas para garantizar la notificación de actividad
sospechosa
• Filtrar sentencias SQL no deseadas, seleccionando por usuario, nombre de tabla, fecha, hora,
calendario, sistema, trabajo, subsistema, código de finalización SQL, etc.
© 2014 Tango/04 Computing Group Página 2
Presentación de iSeries SQL Agent
• Ejecutar automáticamente acciones de auto-protección cuando se detecta actividad
sospechosa (para detener un trabajo, deshabilitar el perfil de usuario, quitar el permiso a las
tablas, etc.)
• Programar distintas acciones sin asistencia de operadores basadas en cualquier información
de eventos, calendario, sistema, etc.
• Navegar fácilmente rastros de auditorías utilizando la Lista de Eventos, Vistas de Negocio y
Navegador de Eventos de la SmartConsole
• Codificar por color actividades sospechosas
• Crear informes basados en Web de la actividad SQL
• Alimentar automáticamente el portal corporativo con informes de actividad SQL de forma
periódica
• Crear informes de auditoría completos para el cumplimiento de leyes y auditorías
• Monitorizar actividad SQL sin necesidad de utilizar archivos de diario o disparadores ni ningún
otro cambio en aplicaciones, y con una mínima sobrecarga de CPU
• Generar Business Views con información de estado personalizada (por ejemplo, color verde
para normal y rojo para la detección de un intento de fraude)
• Acceder en tiempo real a la información a través de Internet utilizando un explorador
• Exportar datos de auditoría a Excel y muchos otros formatos
• Descargar datos de auditoría históricos a otros sistemas (por ejemplo Windows o Linux) para
ahorrar espacio de almacenamiento en línea de iSeries o por cuestiones de seguridad (el
módulo de informes admite cualquier base de datos que cumpla con ODBC)
• Otorgar o denegar a distintos operadores acceso a los datos recogidos por el agente de forma
selectiva a través del uso de suscripciones dinámicas en tiempo real
• Integrar eventos de actividad SQL con prácticamente cualquier otra aplicación en tiempo real
• Y más
1.3 Funciones Principales de iSeries SQL AgentEl Agente iSeries SQL Monitor extiende las capacidades de Interactive SQL Monitor a cualquier tipo de
sentencia SQL, registrando de forma efectiva todo tipo de acceso SQL a la base de datos del iSeries.
Las funciones principales son:
• Todas las funciones de Interactive SQL Monitor mencionadas más arriba, más...
• Cobertura de auditoría completa de cualquier sentencia SQL, interactiva o no
• Captura completa de (y protección de) accesos sospechosos a la base de datos a través de la
red, incluyendo programas Cliente/Servidor, programas basados en Java JDBC y cualquier
tipo de sentencia SQL remota
• Captura completa de (y protección de) accesos SQL internos, en programas interactivos o
batch, SQL insertadas en RPG, COBOL o cualquier otro lenguaje
• Información fácil de analizar acerca del comportamiento de la aplicación que puede ser de
utilidad para comprender, perfilar y ajustar aplicaciones Cliente/Servidor o Web
© 2014 Tango/04 Computing Group Página 3
Presentación de iSeries SQL Agent
• Descubrimiento de sentencias SQL que abusan de la CPU (ya que cada sentencia SQL indica
tanto tiempo transcurrido en la ejecución, como tiempo de proceso estimado, cantidad
estimada de filas seleccionadas, etc.)
• Detección de cuellos de botella y medición SLA (utilizando el tiempo transcurrido en la
ejecución y el tiempo de proceso estimado)
• Enmascarar en forma selectiva valores constantes en cláusulas WHERE, SET y otras para
preservar la confidencialidad de los datos
• Control, filtrado o ejecución selectivo de acciones basándose en direcciones IP remotas
• Personalización de capturas de información mediante el establecimiento de reglas de captura
(filtrando por nombre de trabajo, usuario del trabajo, usuario real, tipo de trabajo, perfil del
grupo, clase de usuario, y/o código de contabilidad)
• Y más
1.4 Beneficios de los iSeries SQL Agent
1.4.1 Alertas en Tiempo Real de Actividad SQL/STRSQL SospechosaAl enviar eventos (sentencias SQL ejecutadas) a la SmartConsole de VISUAL Message Center, el
agente proporciona un aviso inmediato de actividad sospechosa, la cual puede ser detenida
automáticamente (por ejemplo, detener un trabajo que ejecute actualizaciones SQL en una tabla de
producción durante los fines de semana).
1.4.2 Informes Flexibles VISUAL Message Center incluye Reports, un módulo que le permite generar distintos informes
detallados o resumidos, ya sea en pantalla, en una gran variedad de formatos incluyendo PDF de
Adobe Acrobat, o incluso alimentar automáticamente un sitio Web o Intranet (generando informes
HTML).
1.4.3 Simplificación (y Reducción del Coste) de las Operaciones Al utilizar la potencia de la SmartConsole, se pueden filtrar con facilidad eventos no deseados (por
ejemplo, todas las sentencias que no alteran la base de datos pueden ser ignoradas; o se pueden
mostrar solamente sentencias SQL que accedan a archivos sensibles en tiempo real), lo que ahorra
valioso tiempo a los Operadores. Es más, se pueden especificar acciones automatizadas y se cuenta
en todo momento con la potencia de calendarios, escalamiento de eventos, supresión de duplicados,
colorización, enriquecimiento, transformación, etc.
1.4.4 Complementación de una Iniciativa Corporativa BSM / RTI Los proyectos de Business Service Management (BSM) y Real Time Infrastructure (RTI) requieren de
monitores y sensores completos en todas las funciones que puedan potencialmente afectar los
servicios empresariales. Proteger los accesos a la base de datos constituye una parte fundamental de
estos esfuerzos.
1.4.5 Acelerar los Cambios Ad-hoc Después del Fallo de una AplicaciónAlgunos oficiales de seguridad prohíben el uso de SQL para reparar bases de datos de producción, lo
que obliga a desarrolladores y operadores a escribir programas RPG o COBOL ad-hoc para corregir
tablas después de un fallo o error en las aplicaciones, ya que las sentencias SQL interactivas no
pueden registrarse (ni auditarse). Sin embargo, al utilizar Interactive SQL Agent, esta restricción pierde
© 2014 Tango/04 Computing Group Página 4
Presentación de iSeries SQL Agent
su sentido. En efecto, las sentencias SQL resultan mucho más fáciles de auditar (y requieren de menos
conocimientos técnicos) que los programas RPG o COBOL. Esto representa una clara ventaja para los
desarrolladores y los operadores, ya que ejecutar el cambio mediante una sola sentencia SQL es más
fácil y rápido que escribir y compilar un programa.
1.4.6 Auditorías Más Fáciles, Sin Requerir Cambios en Aplicaciones Este agente simplifica la tarea de auditoría ya que solamente hay que leer sentencias relevantes de
SQL. La mayoría de las sentencias irrelevantes pueden ser filtradas con facilidad. En comparación con
la auditoría a nivel de registro, la auditoría de sentencias SQL requiere de menor esfuerzo ya que una
sola sentencia puede generar millones de cambios de registro, lo que generaría un inmenso listado
impreso de cambios de registro. Los cambios a nivel de registro también requieren que los archivos
sean ordenados en un diario o que se implemente un mecanismo disparador. VISUAL Message Center
iSeries SQL Agent no requiere ningún diario ni instrumentación de base de datos.
1.4.7 Aumento de la Disponibilidad de las Aplicaciones, con Ahorro de Costes de IndisponibilidadLos monitores SQL pueden contribuir enormemente a la seguridad, integridad, confidencialidad y
disponibilidad de sus archivos sensibles mediante la inspección automática de cada sentencia SQL
ejecutada contra las tablas de producción, generando tanto rastros de auditoría como alertas en tiempo
real, e iniciando mecanismos de auto-protección sin que sea necesaria la presencia de un operador
(por ejemplo, la deshabilitación de un perfil de usuario). Al mantener las aplicaciones en
funcionamiento, su empresa ahorrará el dinero que representa cualquier periodo de indisponibilidad del
sistema.
1.4.8 Cumplimiento de Leyes de Seguridad para Evitar MultasEstos agentes le ayudan a cumplir con las leyes de seguridad que rigen el registro de accesos a
archivos, indicando fecha, hora, usuario, usuario real (que puede diferir del usuario del trabajo) y la
sentencia SQL completa que identifica el registro (o el conjunto de registros) modificado o accedido.
Las leyes de privacidad europeas, por ejemplo, requieren que los accesos a datos sensibles se
registren y almacenen durante varios años. Las leyes estadounidenses, tales como Sarbanes Oxley y
otras, también rigen controles fuertes de la integridad y/o confidencialidad de los datos. Los mercados
verticales también han especificado requerimientos, tales como Basel II para el sector financiero o
HIPAA y CFR 21-11 para la industria de la salud, los cuales pueden cumplirse con el uso de este
agente. 1
1.4.9 Control de Consultores Externos, Personal en el Exterior, Etc.Estos agentes le ayudarán enormemente a controlar todas las actividades SQL interactivas y batch
emitidas no solo por su personal interno, sino también por personal contratado externo, consultores,
etc. que trabajen temporalmente para su empresa o accedan a sus archivos en forma remota.
1.4.10 Significativa Mejora de la Seguridad Al usar las funciones anteriormente descritas, su empresa podrá mejorar sus controles de seguridad y
disfrutar de una mayor seguridad de sus datos sensibles, tanto de forma supervisada como sin
presencia de un operador.
1. El cumplimiento integral de las leyes generalmente requiere de la utilización de otras herramientas además de
estos agentes. Tango/04 Computing Group o cualquiera de sus Business Partners autorizados podrá ayudarle a
determinar sus necesidades.
© 2014 Tango/04 Computing Group Página 5
Presentación de iSeries SQL Agent
1.4.11 Prevención e Investigación de FraudeAl monitorizar la actividad SQL, los accesos, cambios, eliminaciones e inserciones a las bases de datos
de producción y archivos sensibles pueden ayudarle enormemente a prevenir e investigar casos de
fraude.
1.5 Diferencias Entre SQL Monitor e Interactive SQL MonitorComo ya mencionamos, el SQL Monitor puede registrar cada sentencia SQL ejecutada en el sistema.
El Interactive SQL Monitor sólo puede capturar sentencias SQL ejecutadas en trabajos interactivos.
Estas pueden introducirse utilizando STRSQL o SQL embebido en RPG, COBOL o cualquier otro
lenguaje.
SQL Monitor e Interactive SQL Monitor recuperan los mismos conjuntos de datos de las sentencias
SQL.
© 2014 Tango/04 Computing Group Página 6
Informes de VISUAL Message Center iSeries SQL Agent
Capítulo 22 Informes de VISUAL Message Center iSeries SQL Agent
Puede utilizar el módulo VISUAL Message Center Reports incluido o crear sus propias consultas de
base de datos internas. Reports es un medio muy flexible para obtener información, ya que le permite
definir su selección de manera intuitiva, usando una interfase gráfica fácil de utilizar, eligiendo entre una
amplia gama de parámetros de selección. Para los usuarios avanzados hay incluso una flexibilidad
mayor, ya que el criterio de selección puede expandirse a cualquier cláusula de selección SQL. Existen
más de 150 distintos informes predefinidos que cubren Operaciones, Administración de Nivel de
Servicio, Contabilidad de Trabajos, Seguridad y otras áreas, en formatos gráficos, resumidos y
detallados; y este número crece continuamente.
Los informes se pueden exportar a una gran variedad de formatos, incluyendo PDF (Adobe Acrobat),
texto plano, HTML, formato de documentos Word de Windows, etc. Al final de este capítulo encontrará
una lista completa de los formatos disponibles. Los informes también se pueden enviar por e-mail
directamente desde Reports.
Los informes también se pueden planificar. Por ejemplo, puede alimentar automáticamente su portal
corporativo con informes de auditoría cada noche (o en el intervalo que desee).
Figura 3 – Reports contiene más de 150 informes para analizar la seguridad y la salud operativa de su infraestructura de IT. Se pueden crear informes personalizados fácilmente.
© 2014 Tango/04 Computing Group Página 7
Informes de VISUAL Message Center iSeries SQL Agent
2.1 Informes Predefinidos de los Monitores SQL Existen numerosos informes predefinidos que puede utilizar inmediatamente desde Reports para
auditar y analizar sentencias SQL ejecutadas. Se encuentran dentro de la rama iSeries Reports del
árbol de Reports, agrupados bajo el nombre de SQL Monitor.
Entre los informes que encontrará están: Sentencia SQL ejecutada – Agrupadas por Trabajo,
Sentencias SQL ejecutadas – Agrupadas por Usuario Real, Interactive SQL Monitor – Sentencias SQL
ejecutadas – Agrupadas por Trabajo e Interactive SQL Monitor – Sentencias SQL Ejecutadas –
Agrupadas por Usuario Real.
Figura 4 – Con Reports puede ver, imprimir, enviar por e-mail o transformar en listados HTML fácilmente las sentencias SQL ejecutadas.
2.1.1 Creación de Sub-informes PersonalizadosTambién puede crear sub-informes, que son una variación de los informes existentes. Por ejemplo,
puede crear un informe llamado “Sentencias SQL interactivas ejecutadas este mes por QSECOFR”,
con tan solo seleccionar “Este Mes” como fecha del informe y “QSECOFR” como Usuario Real, y
guardar el archivo de parámetro con el nombre que usted desee.
También puede cambiar fácilmente el logotipo de Tango/04 Computing Group por el de su empresa y
llevar a cabo otras personalizaciones. Para obtener mayor información acerca de Reports, vea la Guía
del Usuario de Reports.
2.2 Formatos Disponibles para la Exportación de Informes Reports incluye una amplia gama de formatos de exportación para su mayor comodidad. La siguiente
lista cubre los formatos disponibles hasta la versión 1.0 de Reports. Use el icono Export en la ventana
Preview para ver una lista de todos los formatos disponibles.
• Acrobat (PDF)
• Valores separados por comas (CSV)
• Crystal Reports (RPT)
• Crystal Reports 7.0 (RPT)
© 2014 Tango/04 Computing Group Página 8
Informes de VISUAL Message Center iSeries SQL Agent
• Excel (XLS)
• HTML 3.2 (HTML)
• HTML 4.0 (DHTML)
• Formato de texto enriquecido
• Texto
• Documentos Word de Windows
• XML
2.2.1 Destinos Disponibles para InformesPuede enviar el informe generado a distintos destinos. El más común es a un archivo en disco
(guardar el informe en disco), que es la opción predeterminada, pero también se encuentran
disponibles los siguientes destinos:
• Aplicación
• Archivo en disco
• Base de datos Lotus Domino
• Correo de Microsoft (MAPI)
Por ejemplo, si desea enviar un informe por e-mail, utilice el destino Correo de Microsoft. Se le solicitará
la dirección de e-mail del destinatario. Esta opción necesita que tenga un cliente MAPI instalado en su
Escritorio.
© 2014 Tango/04 Computing Group Página 9
Interactive SQL Monitor (SQI)
Capítulo 33 Interactive SQL Monitor (SQI)
En esta sección, aprenderá cómo trabajar con el monitor iSeries SQI (SQL interactive) de VISUAL
Message Center.
Primero definiremos el alcance del producto y sus usos, y después aprenderá cómo configurar y
trabajar con el mismo.
3.1 Monitorización de Sentencias SQL Interactivas en Su SistemaLa aplicación práctica del agente es auditar los eventos de sentencias SQL interactivas en su sistema.
Estas son las sentencias SQL que se ejecutan desde una sesión SQL iniciada con el mandato STRSQL
o SQL embebido en RPG, COBOL o cualquier otro lenguaje
El monitor SQI puede almacenar estos eventos en una base de datos específica para el monitor SQI y/
o en la base de datos histórica de VISUAL Message Center. Podrá consultar la base de datos
específica con VISUAL Message Center Reports. Los eventos enviados a la base de datos histórica de
VISUAL Message Center serán recibidos en tiempo real en la SmartConsole.
Para que el monitor SQI funcione correctamente, es necesario iniciar un trabajo llamado Kernel
Supervisor. Para obtener mayor información vea la sección 3.3.4 - Inicio del Monitor en página 14.
Cada evento de sentencia SQL puede almacenar también información adicional que podrá ver en la
SmartConsole y también en los informes generados desde Reports. Esta información incluye los
siguientes campos:
• Timestamp inicial de ejecución de la sentencia.
• Timestamp final de ejecución de la sentencia.
• Tiempo transcurrido en la ejecución (microsegundos).
• Código SQL.
• Longitud de sentencia SQL.
Aviso Algunas PTFs de IBM no se pueden aplicar (tanto temporal como permanentemente) desde
una sesión interactiva donde el monitor interactivo SQL (SQI) este activo.
Tenga en cuenta que esto sólo es relevante para versiones de VISUAL Message Center
anteriores a la versión 6.00.
© 2014 Tango/04 Computing Group Página 10
Interactive SQL Monitor (SQI)
Aplicar ciertas PTFs desde una sesión controlada por SQI puede producir resultados impredecibles en
el comportamiento del sistema (no necesariamente relacionados con SQI), incluyendo el mensaje
"MCH3402: Tried to refer to all or part of an object that no longer exists". Si sospecha que una PTF se
ha aplicado desde una sesión controlada por SQI, contacte con el departamento de soporte de Tango/
04 Computing Group. Nuestros técnicos determinarán si ha sido así y le asistirán para corregir el
problema.
3.2 Instalación del Monitor SQI de iSeriesEl monitor SQI de iSeries se instala como parte del producto VISUAL Message Center. Para obtener
información acerca de la instalación y activación del mismo, por favor diríjase a las instrucciones de
instalación incluidas en el producto.
3.2.1 Configuración del Monitor SQI: Menú PrincipalDespués de haber instalado el producto en la biblioteca B_DETECTOR, puede acceder al menú
principal utilizando el siguiente mandato:
GO MENU(B_DETECTOR/BD_MENU)
Importante Para instalar cualquier PTF de forma segura, asegúrese que la está aplicando desde una
sesión no monitorizada por SQI. Para ello, deberá instalar PTFs desde un subsistema no
controlado por SQI, o finalice el monitor SQI utilizando el mandato B_DETECTOR/ENDKRNSUP.
Posteriormente, arranque una nueva sesión 5250 interactiva que no será controlada por
SQI. De forma alternativa, puede instalar cualquier PTF de IBM o paquete acumulativo
cuando el sistema este restringido, o instalarlos en modo Delayed (al hacer IPL).
Nota B_DETECTOR/ENDKRNSUP (finalizar supervisor Kernel) existe desde que el Supervisor Kernel
es un requerimiento para SQI. El Supervisor Kernel es también un requerimiento para Crash
Preventer, por lo que finalizar el Supervisor Kernel también detendrá Crash Preventer.
Tenga en cuenta que esto sólo es relevante para versiones de VISUAL Message Center
anteriores a la versión 6.00.
Nota Tango/04 o nuestros Business Partners pueden proporcionarle consejo y asistencia
profesional para la instalación. También podemos mostrarle los conceptos operativos más
importantes del producto así que ¡realmente no necesita leer este manual!
© 2014 Tango/04 Computing Group Página 11
Interactive SQL Monitor (SQI)
Figura 5 – Menú VISUAL Message Center. Opción 61.
Seleccione Opción 61 (ir a menú de monitor de SQL interactivo).
Figura 6 – Menú del monitor de SQL interactivo.
Esta pantalla le ofrece las opciones principales para trabajar con el producto. Veremos todas las
opciones del producto.
© 2014 Tango/04 Computing Group Página 12
Interactive SQL Monitor (SQI)
3.3 Configuración e Inicio del Monitor SQIPara poder recibir sentencias SQL interactivas del monitor SQI de iSeries en la SmartConsole, deberá
seguir estos pasos:
3.3.1 ConfiguraciónUse la opción 11 – “Arrancar auditoría de toda SQL Interactivo”, si desea que el monitor SQI almacene
eventos en su base de datos específica. Use la opción 14 “Cambiar los ajustes de alerta en tiempo real
desde SmartConsole” para decidir si quiere que el monitor SQI envíe eventos a la base de datos
histórica de VISUAL Message Center (SmartConsole).
Figura 7 – Opción “Enviar a SmartConsole”
3.3.2 Parar Auditoría de SQL InteractivoENDSQIMON le permite dejar de registrar actividad STRSQL en su sistema. También puede
seleccionar la Opción 12 “Parar auditoría de SQL Interactivo”.
3.3.3 Comprobar Auditoría de SQL Interactivo CHKSQIMON le permite verificar la actividad del monitor SQI. Puede seleccionar la Opción 13
“Comprobar auditoría de SQL interactivo”.
Estas opciones son dinámicas, de modo que cualquier cambio será notado de inmediato.
© 2014 Tango/04 Computing Group Página 13
Interactive SQL Monitor (SQI)
3.3.4 Inicio del MonitorDebe introducir la clave de licencia del monitor SQL Interactivo desde el menú del Monitor (seleccione
la opción 32).
Inicie el Kernel Supervisor (use la opción 21 para ir al menú Kernel Supervisor). Si no existe una clave
válida para SQI, se enviará un mensaje a QSYSOPR al iniciarse el Kernel Supervisor. Para corregir
esto, debe introducir una clave válida y reiniciar (finalizar e iniciar) el Kernel Supervisor.
Las sentencias SQL que corran en trabajos interactivos que fueron iniciadas mientras Kernel
Supervisor estaba activo (y con una clave de licencia válida) serán monitorizadas de ahora en adelante.
Para verificar si Kernel Supervisor está activo debe seleccionar la opción “Comprobar actividad de
Kernel Supervisor” en el menú de Kernel Supervisor.
Figura 8 – Menú Kernel Supervisor
Si es la primera vez que instala VISUAL Message Center (que incluye SQI), no recibirá eventos SQI
hasta que los subsistemas donde corren los trabajos interactivos no hayan sido iniciados al menos una
vez después de instalado VISUAL Message Center. Así que puede reiniciar los subsistemas
interactivos o esperar a la próxima IPL.
Nota Dado que Kernel supervisor es un requerimiento para el monitor SQI se recomienda
establecerlo con autoarranque. Puede hacerlo desde la opción 22 del menú Kernel
supervisor.
© 2014 Tango/04 Computing Group Página 14
Interactive SQL Monitor (SQI)
3.3.5 Establecer Valores para Autoarranque (Se Recomienda el Inicio en IPL)Con la Opción 22, puede especificar si Kernel Supervisor se iniciará después de un IPL o no. Los
valores posibles son:
*YES: Kernel Supervisor se iniciará automáticamente tras cada IPL.
*NO: Kernel Supervisor no se iniciará automáticamente tras cada IPL.
Para iniciarlo manualmente utilice el mandato STRKRNSUP.
Figura 9 – Cambiar Autoarranque de Kernel Supervisor
3.3.6 Verificar la Actividad de Kernel SupervisorPuede verificar la actividad de Kernel Supervisor en cualquier momento con tan solo seleccionar la
opción 24 – “Comprobar Actividad de Kernel Supervisor” en el menú de Kernel Supervisor.
3.3.7 Arrancar el SQL MonitorPara que Interactive SQL Monitor monitorice actividad SQL de trabajos interactivos, es también
necesario arrancar el trabajo SQL Monitor. Para más información, diríjase asección 1 - Presentación de
iSeries SQL Agent en página 1.
3.4 Monitorización de los Eventos de Sentencias SQL con VISUAL Message Center
Comenzará a recibir estos eventos en la SmartConsole cuando Kernel Supervisor esté activo y la
opción “Ajustes de alerta en tiempo real desde SmartConsole” esté seleccionada.
A continuación puede ver la consola:
© 2014 Tango/04 Computing Group Página 15
Interactive SQL Monitor (SQI)
Las nuevas Business Views le permiten agrupar mensajes y eventos en áreas tecnológicas o de
negocio específicas. El primer cuadro (en esta imagen) contiene su Business Network, un analizador de
impacto comercial donde puede crear y organizar sus Business Views en carpetas que reflejen la
estructura de su empresa. El segundo cuadro (de esta imagen) está dedicado a la Parrilla de Mensajes,
donde puede ver los mensajes de la Business View actualmente seleccionada.
En este caso, resulta muy útil para agrupar mensajes de seguridad – sin importar el usuario,
subsistema, trabajo, etc. del que provengan.
Note Todos los eventos recibidos de iSeries SQL Interactive Agent tienen como código de agente
“SQI”
© 2014 Tango/04 Computing Group Página 16
Interactive SQL Monitor (SQI)
3.4.1 Ejemplo – Mensaje de Smart Console para Eventos de Sentencias SQL Interactivas.
La imagen anterior nos muestra el mensaje tal como fue recibido por la consola. Este evento específico
es generado por una sesión interactiva STRSQL en el iSeries. Es importante tener presente que puede
ver información valiosa como timestamp inicial de ejecución de sentencia, timestamp final de ejecución
de sentencia, tiempo de ejecución transcurrido (en milisegundos), código SQL y longitud de la
sentencia SQL.
A continuación aparecen las variables del mensaje:
Para obtener referencias de posibles valores de “Código SQL”, diríjase al manual: DB2 Universal
Database for iSeries SQL Messages and Codes book.
© 2014 Tango/04 Computing Group Página 17
Interactive SQL Monitor (SQI)
3.5 Limpieza de la Base de Datos del Monitor SQL InteractivoEl mandato Borrar Mensajes del Monitor de SQL Interactivo (DLTSQIMSG) elimina los datos de mensajes
previamente recogidos por el Monitor SQL Interactivo. También se encuentra disponible desde la
opción 41 del menú de SQL interactivo, Borrar Mensajes del Monitor de SQL Interactivo.
El monitor SQL interactivo de VISUAL Message Center recoge datos y los almacena en un archivo
llamado SILOG01X. Se recomienda controlar el tamaño de la base de datos y hacer una operación de
limpieza con periodicidad diaria. Para el parámetro REORGANIZE, especifique si desea reorganizar el
archivo o no.
La reorganización le permite liberar el espacio de los registros eliminados. Al especificar REORGANIZE
*YES el proceso tardará más tiempo y los trabajos que bloqueen el archivo serán finalizados de
inmediato. Todos los usuarios deben desconectarse de VISUAL Message Center.
Tendría sentido incluir este mandato como una instrucción IPL. Existen dos maneras de eliminar los
registros de base de datos:
• *DATE: por fecha. Con esta opción, se eliminarán los registros de la base de datos con un
valor en el campo Fecha que esté entre las fechas definidas por el usuario. Especifique una
fecha de comienzo y una de finalización para el periodo de tiempo del que desea eliminar
registros. Los registros entre estas dos fechas serán eliminados de la base de datos. Los
datos se deberán especificar en formato de fecha de trabajo. Si especifica un valor especial
*ALL para este parámetro, se eliminarán todos los registros de la base de datos.
• *KEEP: por número de días. Con esta opción, se eliminarán los registros de la base de datos
con un valor en el campo Fecha anterior a N cantidad de días. Simplemente especifique la
cantidad de días que desea conservar los mensajes. Puede utilizar esta opción para
automatizar la limpieza de la base de datos al programar el mandato B_DETECTOR/
DLTSQIMSG, donde se especifica la cantidad de días que desea conservar los mensajes.
3.5.1 Limpieza de Base de Datos SQI Utilizando SQL InteractivoPuede vaciar la base de datos y eliminar los mensajes no deseados usando los mandatos de la base de
datos.
Este método no requiere que se desconecten todos los usuarios/clientes. El campo LIQSTI de la base
de datos B_DETECTOR/ SILOG01X contiene la fecha en que el mensaje ingresó en la base de datos.
Para eliminar un mensaje que se encuentre entre dos fechas específicas puede usar SQL Interactivo.
Para lograrlo, siga los pasos a continuación:
• Conéctese al iSeries con un perfil de usuario que esté en la lista de permisos B_DETECTOR o
que cuente con el permiso especial *ALLOBJ.
• Inicie una sesión SQL con el mandato STRSQL.
• Elimine los registros deseados con la siguiente sentencia SQL (reemplazando los valores de
fechas en el formato AAAAMMDD): DELETE FROM B_DETECTOR/SILOG01X WHERE LIQSTI >= ‘fecha de inicio’ and LIQSTI <= ‘fecha de finalización’
© 2014 Tango/04 Computing Group Página 18
Interactive SQL Monitor (SQI)
Ejemplo
Por ejemplo, para eliminar los registros con fechas entre el 1 de julio de 2003 y el 15 de julio de 2003
inclusive, ingrese:
DELETE FROM B_DETECTOR/SILOG01X WHERE LIQSTI >= ‘20030701’ and LIQSTI <= ‘20030721’
No es necesario introducir fechas completas desde/hasta. Puede eliminar todos los registros hasta
una fecha en particular, por ejemplo, para eliminar todos los mensajes hasta el 15 de julio de 2003:
DELETE FROM B_DETECTOR/SILOG01X WHERE LIQSTI >= ‘20030715’
Puede utilizar el mandato SELECT para ver el contenido resultante del archivo.
© 2014 Tango/04 Computing Group Página 19
Monitor SQL
Capítulo 44 Monitor SQL
En esta sección, aprenderá cómo trabajar con el monitor iSeries SQL de VISUAL Message Center.
Primero definiremos el alcance del producto y sus usos, y después aprenderá cómo configurar y
trabajar con el mismo.
4.1 Monitorización de Sentencias SQL en Su SistemaLa aplicación práctica del agente es auditar los eventos de sentencias SQL en su sistema. Cuando han
ocurrido estos eventos en su sistema, el monitor SQL envía un mensaje a la SmartConsole de VISUAL
Message Center.
Este agente puede filtrar las sentencias SQL basándose en los siguientes campos:
• Nombre de subsistema y nombre de biblioteca del subsistema.
• Nombre del trabajo.
• Usuario del trabajo.
• Usuario real del trabajo.
• Tipo de trabajo.
• Perfil del grupo.
• Clase del usuario.
• Código de contabilidad.
Todo evento de sentencia SQL también puede almacenar información adicional que podrá ver en la
SmartConsole. Esta información incluye:
• Timestamp inicial de ejecución de la sentencia.
• Timestamp final de ejecución de la sentencia.
• Tiempo transcurrido en la ejecución (microsegundos).
• Tiempo de proceso estimado (segundos).
• Dirección IP remota.
• Usuario real.
• Código de operación.
© 2014 Tango/04 Computing Group Página 20
Monitor SQL
• Código SQL.
• Tipo Commit/rollback.
• Identificador de thread.
• Nombre de la tabla.
• Biblioteca de la tabla.
• Miembro de la tabla.
• Número total de filas en la tabla.
• Número estimado de filas seleccionadas.
• Número estimado de filas con joins.
• Número estimado de filas recogidas.
• Código de razón.
• Puerto remoto.
• Longitud de sentencia SQL.
4.2 Instalación del iSeries SQL MonitorEl iSeries SQL monitor se instala como parte del producto VISUAL Message Center. Para obtener
información acerca de la instalación y activación del mismo, por favor diríjase a las instrucciones de
instalación que vienen con el producto.
Nota Si está actualizando su sistema operativo desde V5R1 o anterior a V5R4 o posterior,
también deberá reinstalar VISUAL Message Center, aunque la versión sea compatible con
V5R4. Cuando arranque el SQL Monitor aparecerá un mensaje recordándole que debe
reinstalar VISUAL Message Center
Consejo Tango/04 o nuestros Business Partners pueden proporcionarle consejo y asistencia
profesional para la instalación. También podemos mostrarle los conceptos operativos más
importantes del producto así que ¡realmente no necesita leer este manual!
Importante Aunque es libre de instalar el producto en cualquier ASP, el archivo de salida configurado en
CHGSQLMON debe almacenarse en una biblioteca localizada en ASP1
© 2014 Tango/04 Computing Group Página 21
Monitor SQL
4.3 Antes de EmpezarEl monitor SQL para iSeries de VISUAL Message Center SQL utiliza internamente tecnología IBM DB2
de forma extensiva. Asegúrese de comprender los siguientes requerimientos antes de activar VISUAL
Message Center SQL monitor for iSeries por primera vez en un entorno de producción:
• Este producto requiere que las últimas PTFs estén correctamente instaladas en su sistema.
• Este producto puede causar un alto uso de CPU y un rápido crecimiento de la ocupación de
almacenamiento en entornos con aplicaciones que producen un número muy elevado de
sentencias SQL por segundo.
• Los monitores SQL requieren OS/400 V4R5 o superior en el AS/400 / iSeries
La primera vez que intente arrancar el monitor aparecerá un mensaje de aviso recordándole estos
requerimientos. Una vez que haya aceptado el mensaje, no aparecerá de nuevo.
© 2014 Tango/04 Computing Group Página 22
Monitor SQL
4.4 Configuración del Monitor SQL: Menú PrincipalDespués de haber instalado el producto en la biblioteca B_DETECTOR, puede acceder al menú
principal utilizando el siguiente mandato:
GO MENU (B_DETECTOR/SQL_MENU)
Figura 10 – Menú principal del monitor SQL
Esta pantalla le ofrece las opciones principales para trabajar con el producto. Veremos las principales
opciones del monitor SQL en las siguientes secciones.
4.5 Inicio del Monitor SQLDeberá iniciar el trabajo del monitor SQL para poder recibir eventos de sentencias SQL del iSeries SQL
monitor en la consola de VISUAL Message Center. Introduzca el mandato:
B_DETECTOR/STRSQLMON
También puede seleccionar la opción 2 para iniciar el trabajo SQLMONITOR que se ejecuta en el
subsistema T4NICELINK.
Sugerencia Otra manera de iniciar el trabajo SQLMONITOR es introducir el mandato GO T4NICELINK/T4NICELINK e ir al menú de VISUAL Message Center, donde puede seleccionar la opción
correspondiente.
Cuando el usuario inicia el trabajo SQLMONITOR, se ejecutan otros dos trabajos. Estos trabajos se
llaman USRMONITOR y HSTMONITOR. Y también se ejecutan en el subsistema T4NICELINK.
El trabajo USRMONITOR funciona simultáneamente al trabajo SQLMONITOR. Cuando el monitor SQL
captura un evento de sentencia SQL de un trabajo específico, el USRMONITOR recoge el usuario real,
la dirección IP remota y el puerto remoto de ese trabajo específico. En realidad, el USRMONITOR
© 2014 Tango/04 Computing Group Página 23
Monitor SQL
almacena esta información en una base de datos histórica del usuario real cuando se inicia o finaliza el
trabajo, o cuando se ha realizado un cambio en un perfil de usuario de un trabajo.
El HSTMONITOR recoge el tipo de trabajo, el nombre del subsistema y el nombre de la biblioteca del
subsistema.
De esta forma, el monitor SQL puede obtener la información sobre el usuario real, la dirección IP
remota y el puerto remoto a través de USRMONITOR, y el tipo de trabajo, el nombre del subsistema y
el nombre de la biblioteca del subsistema a través de HSTMONITOR.
4.6 Configurar SQL Monitor La opción 3 – Configurar SQL Monitor se refiere a los ajustes de SQL monitor, como cuando arrancar o
detener el monitor, que intervalo de recolección utilizar, cuando mostrar u ocultar valores, etc. Los
ajustes de SQL Monitor se describen individualmente en las siguientes secciones.
Para especificar qué datos monitorizar diríjase a la sección 4.9 - Configuración Mediante el
Mantenimiento del Monitor SQL. en página 28.
4.6.1 Arranque Automático MonitorAquí puede especificar si desea que SQL monitor arranque automáticamente en el subsistema
especificado. Los posibles valores son:
• *YES: SQL Monitor arrancará automáticamente tras una IPL.
• *NO: SQL Monitor no arrancará automáticamente tras una IPL. Puede arrancar SQL Monitor
manualmente utilizando el mandato STRSQLMON.
4.6.2 Enviar a SmartConsole Por defecto SQL Monitor envía datos a la SmartConsole. Desde la versión V5R4 en adelante podrá
escoger no enviar los datos de SQL Monitor a la SmartConsole, mejorando potencialmente el
rendimiento de SQL Monitor. Los posibles valores son:
• *YES: Los datos se enviarán a la SmartConsole en tiempo real.
• *NO: No se envía ningún evento a la SmartConsole
4.6.3 Recuperar Desde También puede especificar desde cuando desea iniciar la recuperación de datos. Las opciones
disponibles son:
• *NOW: Recuperar eventos SQL desde el momento que se inició el monitor SQL.
• *LASTTIME: Incluye todos los eventos SQL desde la última vez que se arrancó SQL Monitor.
4.6.4 Intervalo entre Chequeos Especifique un intervalo en segundos entre ejecuciones de sentencias SQL. Esto es, el tiempo de
espera en segundos entre las sucesivas mediciones.
© 2014 Tango/04 Computing Group Página 24
Monitor SQL
4.6.5 Recuperar VariablesPuede especificar si desea recuperar u ocultar los valores de las variables en las sentencias SQL. Los
posibles valores son:
• *YES: Los valores de las variables se mostrarán en la sentencia SQL completa.
• *NO: Los valores se ocultarán en la sentencia SQL completa. Se mostrará un ? en lugar del
valor actual.
4.6.6 Número de Horas para Borrado Este valor especifica el número de horas que los eventos de sentencias SQL se mantienen en la base
de datos del sistema.
4.6.7 Número de Ciclos para Borrado Puede especificar el número de ciclos entre una eliminación dinámica y la siguiente eliminación de
registros en la base de datos del monitor del sistema.
4.6.8 Ejecutar STRDBMON Este valor indica si desea arrancar SQL monitor para todos los trabajos en su sistema o sólo unos
pocos. Los valores posibles son:
• *YES: SQL Monitor se arrancará para todos los trabajos en el sistema especificado en el
parámetro JOB de este mandato. IMPORTANTE: Si no se finaliza el monitor de SQL de forma correcta utilizando el mandato
B_DETECTOR/ENDSQLMON o bien la opción de menú 4. Finalizar Monitor, el monitor de sistema
que registra la actividad SQL continuará registrando eventos para todos los trabajos del
sistema. Por lo tanto, se seguirán insertando eventos en la base de datos B_DETECTOR/SLDBM01X. Si el monitor no se finaliza correctamente, entonces las únicas dos maneras de
finalizarlo correctamente son:
− iSeries Navigator tool
− IPL (Initial Program Load)
• *NO: SQL Monitor solo se arrancará para aquellos trabajos que se introdujeron con el mandato
ADDDBMJOB.
4.6.9 Filtro por Trabajo, Usuario de Trabajo, Número de TrabajoDesde la versión V5R4 en adelante también puede filtrar por trabajo, usuario del trabajo y número del
trabajo.
Cuando filtra por trabajo puede utilizar las siguientes variables:
• *ALL: Monitoriza sentencias SQL para todos los trabajos
• Name: SQL Monitor arranca para aquellos trabajos con el nombre especificado aquí. Si existen
duplicados también deberá especificar el usuario del trabajo o el número de trabajo.
Cuando filtra por usuario del trabajo, puede utilizar las siguientes variables:
Consejo Para que el monitor recupere todas las sentencias SQL, este valor debe ser mayor que el
tiempo máximo de ejecución de sentencias SQL en el sistema.
© 2014 Tango/04 Computing Group Página 25
Monitor SQL
• *ALL: Monitoriza sentencias SQL para todos los usuarios de trabajos
• Name: SQL Monitor arranca para aquellos usuarios de trabajo con el nombre especificado aquí
• Generic: Monitoriza sentencias SQL para trabajos cuyos nombres de usuario de trabajo
corresponden con el nombre genérico. Los trabajos en WAIT y en colas que corresponden a
los nombres de usuario genérico también serán incluidos.
Cuando filtra por número de trabajo, introduzca cualquier número entre 000000 y 999999.
Tenga en cuenta que filtrar por trabajo, usuario de trabajo y número de trabajo sólo tiene sentido si los
valores introducidos son subconjuntos de aquellos configurados en Mantenimiento de SQL Monitor.
4.6.10 Filtrar por Perfil de Usuario Como novedad en la versión V5R4 existe la posibilidad de filtrar por usuario real (filtrar por perfil de
usuario). Las variables disponibles son:
• *Name: Introduzca el nombre real. Sólo las sentencias SQL creadas o ejecutadas por este
usuario real serán monitorizadas
• *Generic: Sólo las sentencias SQL de usuario cuyos nombres comiencen con el prefijo
especificado serán monitorizadas
• *None: Se monitorizarán las sentencias SQL de todos los usuarios.
• *Current: Sólo se monitorizarán las sentencias SQL del usuario que invoque el mandato
STRDBMON.
Pulse <Av Pág> para ver más opciones
4.6.11 Filtrar por Archivo de Base de DatosDesde la versión V5R4 en adelante puede filtrar por base de datos. En este campo puede entrar el path
absoluto de la base de datos, o simplemente entrar el nombre de archivo y la biblioteca. Las opciones
disponibles son:
• *NONE
• *ALL
Además es posible filtrar archivos utilizando el mandato SETSQLFLT. Pueden ser utilizados a la vez, en
cuyo caso es importante que los archivos definidos en ambos deben solaparse para monitorizar
sentencias SQL para esos archivos.
Tenga en cuenta que filtrar por base de datos solo tiene sentido si los valores introducidos son un
subconjunto de aquellos configurados en el mandato SETSQLFLT.
4.6.12 Incluir SQL de SistemaSeleccione si desea incluir sentencias SQL generadas y ejecutadas por el sistema operativo. Las
opciones disponibles son:
• *YES: Incluye sentencias SQL del sistema operativo
• *NO: Sólo chequea sentencias SQL de los usuarios (ajuste por defecto)
• *INI: Monitoriza sentencias SQL conforme al parámetro SQL_DBMON_OUTPUT especificado en
el archivo INI actual.
© 2014 Tango/04 Computing Group Página 26
Monitor SQL
4.6.13 Biblioteca de SalidaLas sentencias SQL monitorizadas se almacenan en un archivo denominado SLDBM01X. Por defecto
este archivo se guarda en la biblioteca B_DETECTOR.
Desde la versión V5R4 en adelante puede escoger almacenar este archivo en otra biblioteca.
La biblioteca de salida es donde especifica la biblioteca que almacenará el archivo SLDBM01X. Para
utilizar la biblioteca por defecto utilice el valor por defecto *NONE.
4.6.14 Filtrar por Query GovernorDesde la versión V6R1M0 por adelante puede filtrar por Query Governor (FTRQRYGOVR). Un sistema
iSeries llama a los exit programs relacionados con el Query Governor cuando el tiempo estimado de
acabar un trabajo (job) o la utilización de almacenamiento supera los límites definidos por el usuario
que lanzó el trabajo. Con el mandato STRDBMON (Start Database Monitor) es posible recuperar los
registros generados por el Query Governer. Entonces puede filtrar por los registros que desea.
Las opciones disponibles son:
• *NONE: filtrando con este parametro no se retornan resultados sobre los trabajos manejados
por un exit program
• *ALL: con este parametro recibirá registros del Database Monitor cuando el límite del Query
Governor haya sido superado, no importa que valores (0, 1, 2, 3) hayan sido devueltos por los
exit programs. Por ejemplo, recibirá eventos aún si están cancelados los queries
• *COND: este parametro le facilita recibir registros cuando el límite del Query Governor haya
sido superado y los exit programs devuelvan un valor de 2, 3, y de manera especial, 0. Puede
encontrar las explicaciones sobre los valores retornados en este sitio Web de IBM:
http://publib.boulder.ibm.com/infocenter/iseries/v5r4/index.jsp?topic=/apis/xqrygovr.htm
4.7 Verificación de los Trabajos del Monitor SQL Puede verificar el trabajo del monitor SQL en cualquier momento con tan solo seleccionar la opción 5:
”Comprobar actividad del monitor” en el menú del monitor SQL de iSeries.
4.8 Menú de Filtros de TrabajosCon altos volúmenes de datos este filtro le ayuda a centrar su foco, por ejemplo, 2% de 20,000 trabajos.
Si utiliza este filtro antes de procesar los datos ayudará al rendimiento de su sistema.
Desde VISUAL Message Center (iSeries Modules) Service Pack 2, puede afinar la información que el
SQL Monitor (tanto para trabajos batch como interactivos) recolecta ajustando un Nuevo filtro. Las
siguientes secciones le explican cómo localizar y utilizar el filtro.
© 2014 Tango/04 Computing Group Página 27
Monitor SQL
SQL_MENU
Si desea trabajar con trabajos interactivos puede saltar a la siguiente sección.
Para configurar un filtro de trabajos para SQL Monitor:
Paso 1. Introduzca el siguiente mandato:
GO B_DETECTOR/SQL_MENU
o
GO B_DETECTOR/BD_MENU
Y seleccione la opción 60.
Paso 2. Seleccione la opción 7.
Paso 3. Seleccione la opción 14.
Puede filtrar por nombre de subsistema, biblioteca de subsistema, nombre de trabajo,
usuario de trabajo, y usuario real (diríjase a la sección 4.9.1 - Nombre del Subsistema
en página 28 para saber los valores por los que filtrar).
SQL for Interactive Jobs
Puede filtrar por nombre de subsistema, biblioteca de subsistema, nombre de trabajo, usuario de
trabajo, y usuario real.
Para configurar un filtro de trabajos para el monitor interactivo:
Paso 1. Introduzca el siguiente mandato:
GO B_DETECTOR/IS_MENU
o
GO B_DETECTOR/BD_MENU
Y seleccione la opción 61.
Paso 2. Seleccione la opción 15.
4.9 Configuración Mediante el Mantenimiento del Monitor SQL.Puede seleccionar la opción 1 del menú del monitor SQL. Con esta opción (mantenimiento del monitor
SQL) el usuario especifica que datos se van a monitorizar. También puede especificar aquí, qué
condiciones debe cumplir un evento de sentencia SQL para que dicho evento sea almacenado en la
base de datos del monitor SQL.
Estas condiciones están definidas para algunos campos que son recogidos por cada sentencia SQL. Se
puede especificar más de una entrada de configuración, cada una de estas con sus propias
condiciones. Puede seleccionar la opción para configuraciones del monitor SQL. Estas operaciones son
las siguientes: copiar, quitar, mostrar y añadir.
La configuración de SQL está basada en los siguientes parámetros:
4.9.1 Nombre del SubsistemaEl usuario puede seleccionar el nombre del subsistema para la configuración del monitor SQL.
Los valores posibles son: *ALL, un valor genérico o un nombre específico.
© 2014 Tango/04 Computing Group Página 28
Monitor SQL
El valor de este campo a veces no puede recogerse para una sentencia SQL en ejecución, debido a
una de las siguientes razones:
• El monitor del registro histórico no estaba activo cuando se inició el trabajo ejecutando la
sentencia SQL.
• El trabajo que ejecuta la sentencia SQL no estaba activado aún.
En este caso, se considerará que el evento cumple una condición para este campo y, por lo tanto, será
almacenado en la base de datos del monitor SQL.
4.9.2 Nombre del TrabajoEl usuario puede seleccionar el nombre del trabajo para la configuración del monitor SQL.
Los valores posibles son: *ALL, un valor genérico o un nombre específico.
4.9.3 Usuario del TrabajoEl usuario puede seleccionar el nombre del usuario para la configuración del monitor SQL.
Los valores posibles son: *ALL, un valor genérico o un nombre específico.
4.9.4 Usuario Real del TrabajoEl usuario puede seleccionar el usuario real para la configuración del monitor SQL.
Los valores posibles son: *ALL, un valor genérico o un nombre específico.
El valor de este campo a veces no puede recogerse para una sentencia SQL en ejecución, debido a
una de las siguientes razones:
• El monitor histórico del usuario real no estaba activado cuando se inició el trabajo ejecutando
la sentencia SQL o cuando se cambió el usuario real de este trabajo.
• El trabajo que ejecuta la sentencia SQL no estaba activado aún.
En este caso, se considerará que el evento cumple una condición para este campo y, por lo tanto, será
almacenado en la base de datos del monitor SQL.
© 2014 Tango/04 Computing Group Página 29
Monitor SQL
Figura 11 – Configuración del monitor SQL
4.9.5 Tipo de Trabajo (JOBTYPE)El usuario puede seleccionar el tipo de trabajo para la configuración del monitor SQL.
Tipo de trabajo activo. Los valores posibles son:
• ASJ: Autoarranque
• BCH: Batch
• BCI: Batch inmediato
• EVK: Iniciado por una solicitud de inicio de procedimiento
• INT: Interactivo
• M36: Trabajo avanzado de servidor 36
• MRT: Terminal de solicitudes múltiples
• PJ: Trabajo de pre-inicio
• PDJ: Trabajo de controlador de impresión
• RDR: Lectura
• SBS: Monitor del subsistema
• SYS: Sistema
Ejemplo
El mandato configuración de monitor SQL --- Add (ADDSQLCFG) añade una nueva entrada de
configuración para el monitor SQL.
© 2014 Tango/04 Computing Group Página 30
Monitor SQL
• WTR: Escritura
El valor de este campo a veces no puede recogerse para una sentencia SQL en ejecución, debido a
una de las siguientes razones:
• El monitor del registro histórico no estaba activo cuando se inició el trabajo ejecutando la
sentencia SQL.
• El trabajo que ejecuta la sentencia SQL no estaba activado aún.
En este caso, se considerará que el evento cumple condiciones para este campo y, por lo tanto, será
almacenado en la base de datos del monitor SQL.
4.9.6 Perfil de Grupo (USERGROUP)El usuario puede seleccionar el perfil de grupo del usuario real para la configuración del monitor SQL.
Los valores posibles son: *ALL, un valor genérico o un nombre específico.
El valor de este campo a veces no puede recogerse para una sentencia SQL en ejecución, debido a
una de las siguientes razones:
• El monitor histórico del usuario real no estaba activado cuando se inició el trabajo ejecutando
la sentencia SQL o cuando se cambió el usuario real de este trabajo.
• El trabajo que ejecuta la sentencia SQL no estaba activado aún.
En este caso, se considerará que el evento cumple una condición para este campo y, por lo tanto, será
almacenado en la base de datos del monitor SQL.
4.9.7 Clase de Usuario (USERCLASS)El usuario puede seleccionar la clase de usuario del usuario real para la configuración del monitor SQL.
Los valores posibles son: *ALL, un valor genérico o un nombre específico.
El valor de este campo a veces no puede recogerse para una sentencia SQL en ejecución, debido a
una de las siguientes razones:
• El monitor histórico del usuario real no estaba activado cuando se inició el trabajo ejecutando
la sentencia SQL o cuando se cambió el usuario real de este trabajo.
• El trabajo que ejecuta la sentencia SQL no estaba activado aún.
En este caso, se considerará que el evento cumple una condición para este campo y, por lo tanto, será
almacenado en la base de datos del monitor SQL.
4.9.8 Código de Contabilidad (ACGCODE)El usuario puede seleccionar el código de contabilidad del usuario real para la configuración del monitor
SQL.
Los valores posibles son: *ALL, un valor genérico o un nombre específico.
El valor de este campo a veces no puede recogerse para una sentencia SQL en ejecución, debido a
una de las siguientes razones:
• El monitor histórico del usuario real no estaba activado cuando se inició el trabajo ejecutando
la sentencia SQL o cuando se cambió el usuario real de este trabajo.
• El trabajo que ejecuta la sentencia SQL no estaba activado aún.
© 2014 Tango/04 Computing Group Página 31
Monitor SQL
En este caso, se considerará que el evento cumple una condición para este campo y, por lo tanto, será
almacenado en la base de datos del monitor SQL.
4.10 Monitorización de los Eventos de Sentencias SQL con VISUAL Message Center
Una vez que haya definido los eventos que desea monitorizar en el iSeries, y que haya iniciado el
monitor SQL, comenzará a recibir dichos eventos en la SmartConsole.
A continuación puede ver la consola:
Las nuevas Business Views le permiten agrupar mensajes y eventos en áreas tecnológicas o de
negocio específicas. El primer cuadro (en esta imagen) contiene su Business Network, un analizador de
impacto comercial donde puede crear y organizar sus Business Views en carpetas que reflejen la
estructura de su empresa. El segundo cuadro (de esta imagen) está dedicado a la Parrilla de Mensajes,
donde puede ver los mensajes de la Business View actualmente seleccionada.
En este caso, resulta muy útil para agrupar mensajes de seguridad – sin importar el usuario,
subsistema, trabajo, etc. del que provengan.
Nota Todos los eventos recibidos del iSeries SQL Agent tienen como código de agente “SQL”.
© 2014 Tango/04 Computing Group Página 32
Monitor SQL
4.10.1 Ejemplo – Mensaje de la SmartConsole de Eventos de Sentencias SQL.
La imagen anterior muestra el mensaje tal como fue recibido por la consola. Este evento específico es
generado por una solicitud ODBC al AS/400 iSeries. Es importante notar que junto a la sentencia SQL
puede ver información valiosa como el usuario real, la dirección IP remota, el puerto remoto y datos de
rendimiento.
A continuación aparecen las variables del mensaje:
Para obtener referencias de posibles valores de “Código SQL”, diríjase al manual “DB2 Universal
Database for iSeries SQL Messages and Codes book”
© 2014 Tango/04 Computing Group Página 33
Monitor SQL
4.10.2 Valores Válidos de Código de Operación• 'AL': 'ALTER TABLE'
• 'CA': 'CALL'
• 'CD': 'CREATE DISTINCT TYPE'
• 'CF': 'CREATE FUNCTION'
• 'CL': 'CLOSE'
• 'CO': 'COMMENT ON'
• 'CM': 'COMMIT'
• 'CN': 'CONNECT'
• 'CC': 'CREATE SCHEMA'
• 'CG': 'CREATE TRIGGER'
• 'CI': 'CREATE INDEX'
• 'CP': 'CREATE PROCEDURE'
• 'CS': 'CREATE ALIAS'
• 'CT': 'CREATE TABLE'
• 'CV': 'CREATE VIEW'
• 'DC': 'DECLARE CURSOR'
• 'DD': 'DELETE...DELETE'
• 'DE': 'DESCRIBE'
• 'DF': 'DELETE...FETCH'
• 'DI': 'DISCONNECT'
• 'DK': 'DELETE...CLOSE'
• 'DL': 'DELETE'
• 'DM': 'DESCRIBE INPUT'
• 'DP': 'DECLARE PROCEDURE'
• 'DR': 'DROP'
• 'DT': 'DESCRIBE TABLE'
• 'DU': 'DELETE...UPDATE'
• 'EX': 'EXECUTE'
• 'EI': 'EXECUTE IMMEDIATE'
• 'FC': 'FETCH...CLOSE'
• 'FD': 'FETCH...DELETE'
• 'FE': 'FETCH'
• 'FF': 'FETCH...FETCH'
© 2014 Tango/04 Computing Group Página 34
Monitor SQL
• 'FL': 'FREE LOCATOR'
• 'FU': 'FETCH...UPDATE'
• 'GR': 'GRANT'
• 'HC': 'CLOSE (Hard)'
• 'IC': 'INSERT'
• 'IN': 'INSERT'
• 'JR': 'Recycle Prestart Job'
• 'LO': 'LABEL ON'
• 'LK': 'LOCK'
• 'OC': 'OPEN...CLOSE'
• 'OD': 'OPEN...DELETE'
• 'OF': 'OPEN...FETCH'
• 'OO': 'OPEN'
• 'OP': 'OPEN'
• 'OU': 'OPEN...UPDATE'
• 'PD': 'PREPARE...DESCRIBE'
• 'PR': 'PREPARE'
• 'RE': 'RELEASE'
• 'RT': 'RENAME'
• 'RV': 'REVOKE'
• 'RO': 'ROLLBACK'
• 'SI': 'SELECT INTO'
• 'SC': 'SET CONNECTION'
• 'SK': 'SELECT INTO'
• 'SP': 'SET PATH'
• 'SR': 'SET RESULTS'
• 'ST': 'SET TRANSACTION'
• 'SV': 'SET VARIABLE'
• 'UC': 'UPDATE...CLOSE'
• 'UD': 'UPDATE...DELETE'
• 'UF': 'UPDATE...FETCH'
• 'UP': 'UPDATE'
• 'UU': 'UPDATE...UPDATE'
• 'VI': 'VALUES INTO'
© 2014 Tango/04 Computing Group Página 35
Monitor SQL
4.10.3 Valores Válidos de Tipo Commit/Rollback • 1=NO COMMIT (NC, NONE)
• 2=READ UNCOMMITTED (UR, CHG)
• 3=READ COMMITTED (CS)
• 4=REPEATABLE READ (RS, ALL)
• 5=SERIALIZABLE (RR)
4.11 Limpieza de la Base de Datos del Monitor SQLExisten dos mandatos para vaciar de la base de datos del monitor SQL. El mandato Borrar Mensajes
del DB Monitor de Sistema (DLTDBMMSG) y el mandato Borrar Mensajes del Monitor de SQL.
El mandato Borrar Mensajes del DB Monitor de Sistema (DLTDBMMSG) elimina los datos de mensajes
previamente recogidos por la DB Monitor del Sistema. También se encuentra disponible desde la opción
31 del menú de SQL, Borrar Mensajes del DB Monitor de Sistema.
Se recomienda controlar el tamaño de la base de datos y hacer una operación de borrado con
periodicidad diaria.
Para el parámetro REORGANIZE, especifique si desea reorganizar el archivo o no.
La reorganización le permite liberar el espacio de los registros eliminados. Al especificar REORGANIZE *YES el proceso tardará más tiempo y los trabajos que bloqueen el archivo serán finalizados de
inmediato. Todos los usuarios deben desconectarse de VISUAL Message Center.
Tendría sentido incluir este mandato como una instrucción IPL. Existen dos maneras de eliminar los
registros de base de datos:
• *DATE: por fecha. Con esta opción, se eliminarán los registros de la base de datos con un
valor en el campo Fecha que esté entre las fechas definidas por el usuario. Especifique una
fecha de inicio y una de finalización para el periodo de tiempo del que desea eliminar registros.
Los registros entre estas dos fechas serán eliminados de la base de datos. Los datos se
deberán especificar en formato de fecha de trabajo. Si especifica un valor especial *ALL para
este parámetro, se eliminarán todos los registros de la base de datos.
• *KEEP: por número de días. Con esta opción, se eliminarán los registros de la base de datos
con un valor en el campo Fecha anterior a N cantidad de días. Simplemente especifique la
cantidad de días que desea conservar los mensajes. Puede utilizar esta opción para
automatizar la limpieza de la base de datos al programar el mandato B_DETECTOR/
DLTDBMMSG, donde se especifica la cantidad de días que desea conservar los mensajes.
El mandato Borrar Mensajes del Monitor SQL (DLTSQLMSG) elimina los datos recogidos previamente
por el monitor SQL. Esto también se encuentra disponible desde la opción 32 del menú de SQL, Borrar
Mensajes del Monitor SQL.
El monitor SQL de VISUAL Message Center recoge datos y los almacena en un archivo llamado
SLLOG01X.
Se recomienda controlar el tamaño de la base de datos y hacer un operación de vaciado con
periodicidad diaria.
© 2014 Tango/04 Computing Group Página 36
Monitor SQL
4.11.1 Limpieza de Base de Datos Utilizando SQL InteractivoPuede vaciar la base de datos y eliminar los mensajes no deseados usando los mandatos de la base de
datos.
Este método no requiere que se desconecten todos los usuarios/clientes. El campo QQTIME de la base
de datos B_DETECTOR/ SLDBM01X contiene la fecha en que el mensaje ingresó en la base de datos.
Para eliminar un mensaje que se encuentre entre dos fechas específicas puede usar SQL Interactivo.
Para lograrlo, siga los pasos a continuación:
• Conéctese al iSeries con un perfil de usuario que esté en la lista de permisos B_DETECTOR o
que cuente con el permiso especial *ALLOBJ.
• Inicie una sesión SQL con el mandato STRSQL.
• Elimine los registros deseados con la siguiente sentencia SQL (reemplazando los valores de
fechas en el formato AAAAMMDD): DELETE FROM B_DETECTOR/SLDBM01X WHERE QQTIME >= ‘fecha de inicio’ and QQTIME <= ‘fecha de finalización’
4.11.2 Limpieza de Base de Datos SQL Utilizando SQL InteractivoPuede vaciar la base de datos y eliminar los mensajes no deseados usando los mandatos de la base de
datos.
Este método no requiere que se desconecten todos los usuarios/clientes. El campo LQQSTIM de la
base de datos B_DETECTOR/ SLLOG01X contiene la fecha en que el mensaje ingresó en la base de
datos. Para eliminar un mensaje que se encuentre entre dos fechas específicas puede usar SQL
Interactivo.
Para lograrlo, siga los pasos a continuación:
• Conéctese al iSeries con un perfil de usuario que esté en la lista de permisos B_DETECTOR o
que cuente con el permiso especial *ALLOBJ.
• Inicie una sesión SQL con el mandato STRSQL.
• Elimine los registros deseados con la siguiente sentencia SQL (reemplazando los valores de
fechas en el formato AAAAMMDD):
Ejemplo
Para eliminar los registros con fechas entre el 1 de julio de 2003 y el 15 de julio de 2003 inclusive,
teclee:
DELETE FROM B_DETECTOR/SLDBM01X WHERE QQTIME >= ‘20030701’ and QQTIME <= ‘20030721’
No es necesario introducir fechas completas desde/hasta. Puede eliminar todos los registros hasta
una fecha en particular, por ejemplo, para eliminar todos los mensajes hasta el 15 de julio de 2003:
DELETE FROM B_DETECTOR/SLDBM01X WHERE QQTIME >= ‘20030715’
Puede utilizar el mandato SELECT para ver el contenido resultante del archivoExample text goes here
© 2014 Tango/04 Computing Group Página 37
Monitor SQL
DELETE FROM B_DETECTOR/SLLOG01X WHERE LQQSTIM >= ‘fecha de inicio’ and LQQSTIM <= ‘fecha de finalización’
Ejemplo
Para eliminar los registros con fechas entre el 1 de julio de 2003 y el 15 de julio de 2003 inclusive,
teclee:
DELETE FROM B_DETECTOR/SLLOG01X WHERE LQQSTIM >= ‘20030701’ and LQQSTIM <= ‘20030721’
No es necesario introducir fechas completas desde/hasta. Puede eliminar todos los registros hasta
una fecha en particular, por ejemplo, para eliminar todos los mensajes hasta el 15 de julio de 2003:
DELETE FROM B_DETECTOR/SLLOG01X WHERE LQQSTIM >= ‘20030715’
Puede utilizar el mandato SELECT para ver el contenido resultante del archivo.
© 2014 Tango/04 Computing Group Página 38
Apéndice A : SQL Monitor para ODBC/JDBC
Apéndice AApéndice A: SQL Monitor para ODBC/JDBC
Bajo ciertas circunstancias, puede encontrarse que un sistema iSeries ejecutando SQL Monitor for
iSeries no tiene suficientes recursos de CPU para monitorizar todas las sentencias SQL ejecutadas por
una lista de usuarios específica, debido a que el Monitor de base de datos de sistema OS/400 necesita
estar activo para un grupo de trabajos. Este grupo puede incluir los trabajos de la lista de usuarios,
además de trabajos de muchos otros usuarios.
El Monitor de Base de Datos del Sistema crea una traza que debe filtrarse por SQL Monitor for iSeries
para seleccionar sólo las sentencias SQL de una lista de usuarios específica. Es la creación de esta
traza la que requiere un alto consumo de CPU.
Para resolver esta incidencia recomendamos:
• Seleccionar las aplicaciones o trabajos más relevantes donde se ejecutan las sentencias SQL
de la lista de usuarios específica: trabajos interactivos y servicio ODBC/JDBC.
• Añadir todos los usuarios de la lista, y solo estos usuarios, al mismo perfil de grupo para hacer
más fácil y más eficiente la identificación de trabajos a monitorizar. Asumimos en el resto del
documento que este perfil de grupo se denomina SUPERUSER.
El monitor SQI monitorizará updates, deletes e inserts SQL en pantalla verde para el grupo específico
SUPERUSER en el iSeries. El monitor SQI ya está instalado en el iSeries y puede ser configurado y
activado para monitorizar dichos usuarios.
El recientemente rediseñado monitor ODBC/JDBC (SQL Monitor for ODBC/JDBC) monitorizará ODBC/
JDBC. Las siguientes secciones cubren la instalación, configuración y activación de SQL Monitor for
ODBC/JDBC.
SQL Monitor for ODBC_JDBC incluye cuatro maneras comunes de actualizar datos de producción:
• MS Access – ODBC.
• WinSQL – ODBC.
• SQL de pantalla verde en el AS400 (SQI monitor)
• Scripts SQL en iSeries navigator que utilizan JDBC
© 2014 Tango/04 Computing Group Página 39
Apéndice A : SQL Monitor para ODBC/JDBC
A.1 Instalar SQL Monitor for ODBC/JDBCEncontrará un archivo de salvado (SAVF) llamado SQLMONODBC en la biblioteca B_DETECTOR.
Contiene todos los objetos necesarios para SQL Monitor for ODBC/JDBC. Tras la instalación, estos
objetos residirán en la biblioteca SQLMONODBC.
Por favor, siga cuidadosamente los pasos de instalación:
Paso 1. Restaure la biblioteca SQLMONODBC del archivo SAVF a la biblioteca B_DETECTOR:
RSTLIB SAVLIB(SQLMONODBC) DEV(*SAVF) SAVF(B_DETECTOR/SQLMONODBC)
Paso 2. Edite el miembro fuente CL ILE, QZDA_INIT del archivo SQLMONODBC/QCLLESRC:
Reemplace el valor por defecto SUPERUSER de la variable &SUPERUSER con el
nombre del perfil de grupo SUPERUSER del que desea monitorizar sentencias SQL
ODBC/JDBC.
La biblioteca por defecto para el SQL monitor for ODBC/JDBC es SQLMONODBC,
pero puede cambiar este valor por defecto cambiando el valor de la variable &CUSTLIB
por el nombre de la biblioteca que haya seleccionado.
Paso 3. Guarde el miembro fuente QZDA_INIT y compílelo para crear un programa (mandato
CRTBNDCL).
Paso 4. Ejecute el mandato CALL SQLMONODBC/CRTMSGSES PARM(‘SQLMONODBC’) para crear
un archive de mensaje llamado SLMSGSES en su biblioteca de instalación.
Recuerde cambiar SQLMONODBC si cambió la biblioteca (vea Paso 2.de sección A.1
- Instalar SQL Monitor for ODBC/JDBC en página 40).
Paso 5. Finalmente, asigne las autorizaciones para los siguientes objetos:
1. Asigne autoridad *PUBLIC *USE a los siguientes objetos:
Programa SQLMONODBC/QZDA_INIT (*PGM)
Programa SQLMONODBC/SLENDSEC (*PGM)
Archivo de Mensaje SQLMONODBC/SLMSGSES (*MSGF)
Biblioteca SQLMONODBC (*LIB)
2. Ciertos programas en la biblioteca SQLMONODBC deben adoptar autoridad de un
perfil de usuario *ALLOBJ (QSECOFR por ejemplo). Use los siguientes mandatos:
CHGPGM PGM(SQLMONODBC/QZDA_INIT) USRPRF(*OWNER)
CHGOBJOWN OBJ(SQLMONODBC/QZDA_INIT) OBJTYPE(*PGM)
NEWOWN(QSECOFR) CUROWNAUT(*REVOKE)
CHGPGM PGM(SQLMONODBC/SLENDSEC) USRPRF(*OWNER)
CHGOBJOWN OBJ(SQLMONODBC/SLENDSEC) OBJTYPE(*PGM) NEWOWN(QSECOFR) CUROWNAUT(*REVOKE)
© 2014 Tango/04 Computing Group Página 40
Apéndice A : SQL Monitor para ODBC/JDBC
A.2 Configurar y Arrancar el monitor
A.2.1 Configurar SQL Monitor for iSeriesA continuación debe configurar SQL Monitor para que trabaje con SQL Monitor for ODBC/JDBC. Los
pasos son los siguientes:
Paso 1. Si SQL Monitor está activo, finalícelo con la opción 4 del menú de SQL Monitor menú
(GO B_DETECTOR/SQL_MENU).
Paso 2. Abra el menú principal de SQL monitor (GO B_DETECTOR/SQL_MENU) y seleccione
Opción 1 – Mantenimiento Monitor SQL.
Pulse (F6) para insertar una entrada para filtrar sentencias SQL solo para el perfil de
grupo SUPERUSER (el resto de parámetros se asignan a *ALL).
Reemplace SUPERUSER con el nombre que haya seleccionado para el perfil de grupo
(vea Paso 2.de sección A.1 - Instalar SQL Monitor for ODBC/JDBC en página 40).
Paso 3. Abra el menú principal (GO B_DETECTOR/SQL_MENU) y seleccione Opción 3 –
Configurar Monitor del menú de SQL Monitor. Pulse F9 para mostrar todos los
parámetros. Asigne el ultimo parámetro “Ejecutar STRDBMON” al valor *NO.
Importante Antes de empezar, asegúrese que SQL Monitor no está activo.
© 2014 Tango/04 Computing Group Página 41
Apéndice A : SQL Monitor para ODBC/JDBC
Paso 4. Abra el menú principal (GO B_DETECTOR/SQL_MENU) y seleccione la opción 2. Deberá
ver un trabajo denominado SQLMONITOR en el subsistema T4NICELINK con un uso
de CPU cercano a cero.
Ahora SQL Monitor está activo pero no está auditando sentencias SQL de ninguna aplicación.
© 2014 Tango/04 Computing Group Página 42
Apéndice A : SQL Monitor para ODBC/JDBC
A.2.2 Configurar SQL Monitor Personalizado para ODBC/JDBCAquí es donde empezamos a auditar sentencias SQL ejecutadas sobre ODBC/JDBC. Lleve a cabo
estos pasos cuidadosamente:
Paso 1. Ejecute el mandato WRKREGINF EXITPNT(QIBM_QZDA_INIT)
Paso 2. Abra la opción 8 – Trabajar con exit programs para este exit point y añada el programa
SQLMONODBC/QZDA_INIT.
Paso 3. Recuerde reemplazar SQLMONODBC con la biblioteca que haya seleccionado cuando
compiló el programa QZDA_INIT en el Paso 2. de la instalación.
Paso 4. En la pantalla trabajar con programas de exit pulse F5 para refrescar. El programa
debería aparecer.
© 2014 Tango/04 Computing Group Página 43
Apéndice A : SQL Monitor para ODBC/JDBC
Paso 5. Reinicie el servicio ODBC para el exit point (en este caso las auditoría de sentencias
SQL para ODBC/JDBC) para empezar a trabajar. Use WRKACTJOB
JOB(QZDASOINIT) + F14 para localizar todos los trabajos de su sistema llamados
QZDASOINIT y finalícelos. Estos trabajos normalmente se ubican en el subsistema
QUSRWRK, pero puede diferir dependiendo de la versión de OS/400.
Aviso Al finalizar los trabajos QZDASOINIT también finaliza cualquier sesión ODBC activa.
Nota Si no es posible reiniciar ODBC deberá esperar hasta que se arranquen nuevos trabajos
QZDASOINIT o la próxima IPL. Como el servicio ODBC a veces reutiliza trabajos
QZDASOINIT es imposible controlar cuando se inician los nuevos trabajos QZDASOINIT.
© 2014 Tango/04 Computing Group Página 44
Apéndice A : SQL Monitor para ODBC/JDBC
Desde este momento todas las nuevas sesiones ODBC/JDBC de los usuarios con perfil de grupo
SUPERUSER serán auditados por SQL Monitor mientras SQL Monitor (trabajo SQLMONITOR) esté
activo y mientras las sesiones ODBC/JDBC estén arrancadas. Es por esto que le recomendamos que
configure SQL Monitor para arrancar automáticamente tras IPL.
© 2014 Tango/04 Computing Group Página 45
Apéndice B : Consideraciones de Rendimiento
Apéndice BApéndice B: Consideraciones de Rendimiento
El monitor SQL para iSeries de VISUAL Message Center SQL utiliza internamente tecnología IBM DB2
de forma extensiva. Asegúrese de comprender los siguientes requerimientos antes de activar VISUAL
Message Center SQL monitor for iSeries por primera vez en un entorno de producción:
• Este producto requiere que las últimas PTFs estén correctamente instaladas en su sistema.
• Este producto puede causar un alto uso de CPU y un rápido crecimiento de la ocupación de
almacenamiento en entornos con aplicaciones que producen un número muy elevado de
sentencias SQL por segundo.
La primera vez que intente arrancar el monitor aparecerá un mensaje de aviso recordándole estos
requerimientos. Una vez que haya aceptado el mensaje, no aparecerá de nuevo.
B.1 PTFs Este producto requiere que las últimas PTFs estén correctamente instaladas en el sistema. VISUAL
Message Center SQL monitor for iSeries utiliza el monitor de base de datos del sistema (mandato
© 2014 Tango/04 Computing Group Página 46
Apéndice B : Consideraciones de Rendimiento
STRDBMON). Asegúrese que cualquier PTF de IBM relativa a esta funcionalidad está instalada en el
sistema.
Le recomendamos encarecidamente que instale correctamente un paquete cumulativo reciente en el
sistema.
Ejecutar este monitor sin disponer de las últimas PTFs puede causar resultados impredecibles.
B.2 Uso de CPU y Rápida OcupaciónPuede ser que experimente altos niveles de uso de CPU y una rápida ocupación de disco si utiliza este
producto en un entorno que utiliza aplicaciones que producen un elevado número de sentencias SQL
por segundo. Esto incluye, por ejemplo, aplicaciones no optimizadas (que producen un número muy
elevado de sentencias SQL por segundo).
Un elevado uso de CPU incluye CPU utilizada para:
• El Monitor SQL
• Trabajos monitorizados que están ejecutando sentencias SQL. Incluye el monitor de base de
datos del sistema que se ejecuta en trabajos monitorizados, no en un trabajo del servidor.
B.2.1 Resolviendo Elevadas Cargas de TrabajoEn el caso que la ejecución del monitor cause una elevada carga de trabajo, existen varias opciones:
Comprobar el tipo de sentencias SQL que está monitorizando. Si solo necesita monitorizar actividad
SQL de trabajos interactivos, puede utilizar VISUAL Message Center Interactive SQL monitor for
iSeries, que prácticamente no tiene impacto en el rendimiento del sistema.
Compruebe que información necesita del monitor. Si simplemente necesita reportar actividad SQL, pero
no necesita alertas en tiempo real – no necesita enviar las sentencias SQL a la SmartConsole en el
momento que se producen – le recomendamos que cambie el parámetro “Enviar a SmartConsole” en la
configuración del monitor:
• Desde el menú principal de SQL monitor seleccione opción 3 – Configurar Monitor.
• Cambie el parámetro “Enviar a SmartConsole” a *NO
El monitor podrá procesar el doble de sentencias SQL en el mismo tiempo y ahorrará la mitad de
espacio en disco, ya que las sentencias no se almacenarán en la base de datos histórica de VISUAL
Message Center, únicamente en la base de datos de Log de VISUAL Message Center SQL monitor for
iSeries. Esta opción sólo está disponible en V5R4 y posteriores.
Consejo Cuando arranque VISUAL Message Center SQL monitor for iSeries por primera vez le
recomendamos que examine atentamente el monitor durante los primeros minutos y
compruebe que:
La carga en el sistema es razonable
El monitor puede porcesar toda la actividad SQL del sistema en tiempo real
Consejo Puede configurar filtros relativos a un trabajo específico para el monitor HST, el SQL Monitor
for Interactive Jobs, y el SQL Monitor for Batch Jobs. Diríjase a la sección 4.8 - Menú de
Filtros de Trabajos en página 27.
© 2014 Tango/04 Computing Group Página 47
Apéndice B : Consideraciones de Rendimiento
Reduzca el número de trabajos a monitorizar en la Configuración del Monitor. Puede filtrar trabajos por
trabajo único, perfil de usuario único y archivo de base de datos único, reduciendo fuertemente el uso
de CPU. Tenga en cuenta que esta opción solo es de ayuda en entornos simples, ya que sólo puede
seleccionar entradas únicas o genéricos, pero no listas. Esta opción sólo está disponible en V5R4 y
posteriores.
Reduzca el número de trabajos a monitorizar en entornos complejos con la opción 1 – Mantenimiento
del Monitor. Con esta solución el monitor de base de datos del sistema seguirá trabajando en todos los
trabajos, aunque los trabajos estés filtrados y reducirá parte del proceso, así como la ocupación en
disco.
Si puede identificar un número de trabajos únicos a monitorizar, puede minimizar la carga de trabajo
monitorizando únicamente los trabajos esenciales. En la configuración del monitor (opción 3 del menú):
• Cambie el parámetro “Ejecutar STRDBMON” a *NO
• Utilice el mandato "Añadir trabajo a SQL Monitor" (ADDDBMJOB) para cada trabajo único que
desee monitorizar, antes de que empiece a ejecutar sentencias SQL. Si no desea seguir
monitorizando un trabajo arrancado con ADDDBMJOB puede utilizar el mandato "Eliminar
trabajo de SQL Monitor" (RMVDBMJOB) para eliminar un trabajo único.
B.3 Velocidad de Procesamiento Por velocidad de procesamiento nos referimos al número de sentencias SQL que VISUAL Message
Center SQL monitor for iSeries puede procesar por segundo y CPW. Este número varía dependiendo
del sistema operativo en el cual SQL monitor se esté ejecutando y en el número de eventos que están
siendo enviados a la SmartConsole en tiempo real. Además este número puede diferir dependiendo del
tipo y tamaño de la sentencia SQL. Los siguientes números se presentan como una guía básica para
determinar el número máximo de sentencias SQL que VISUAL Message Center SQL monitor for iSeries
puede procesar en su sistema.
Por ejemplo un modelo 520 con capacidad de procesador 7397 tiene 2400 CPW y 1 procesador.
Utilizando todos los recursos del sistema, un SQLMONITOR en ejecución y utilizando el 50% de la CPU
de la partición, en V5R4, SQL monitor será capaz de procesar:
• 400 sentencias por segundo, si los eventos están siendo enviados a la SmartConsole en
tiempo real
• 800 si únicamente se están almacenando en la base de datos de log de VISUAL Message
Center SQL monitor for iSeries (reportes históricos).
De nuevo, estos números solo deben utilizarse como un indicador básico. Deberá monitorizar su
sistema y ajustar los filtros de SQL monitor para obtener el rendimiento actual en su entorno.
V5R3 V5R4
Tiempo Real Histórico
Sentencias SQL por Segundo y CPW 0.25 0.33 0.66
© 2014 Tango/04 Computing Group Página 48
Apéndice C : Contactar con Tango/04
Apéndice CApéndice C: Contactar con Tango/04
EMEA (European, Middle-Eastern & African) Headquarters
Tango/04 Computing Group S.L.
Avda. Meridiana 358, 12 B-C
08027 Barcelona Spain
Phone: +34 93 274 0051
Fax: +34 93 345 1329
www.tango04.com
Latin American Headquarters
Barcelona/04 Computing Group SRL
Avda. Federico Lacroze 2252, Piso 6
1426 Buenos Aires Capital Federal
Argentina
Phone: +54 11 4774-0112
Fax: +54 11 4773-9163
www.barcelona04.com
North America (USA & Canada)
Tango/04 Computing Group USA
PO Box 3301
Peterborough, NH 03458 USA
Phone: 1-800-304-6872
Fax: 858-428-2864
www.tango04.com
Sales Office in Brazil
Tango/04 Computing Group Brasil
Rua Turiassú, 591 - 5º Andar
Perdizes
Cep: 05005-001 São Paulo
Brasil
Phone: +55 (11) 3675 6228
Fax: +51 1 211-2526
www.tango04.com.br
Sales Office in Chile
Barcelona/04 Computing Group Chile
Guardia Vieja 255, Of. 1601
Providencia
Santiago
Chile
Phone: +56 2 234-0898
Fax: +56 2 234-0865
www.barcelona04.com
Sales Office in Columbia
Barcelona/04 Computing Group Colombia
Calle 125 nº 19-89, Piso 5º
Bogotá, D.C.
Colombia
Phone: + 57(1) 658 2664
Fax: +51 1 211-2526
www.barcelona04.com
© 2014 Tango/04 Computing Group Página 49
Apéndice C : Contactar con Tango/04
Sales Office in France
Tango/04 France
La Grande Arche
Paroi Nord 15ème étage
92044 Paris La Défense France
Phone: +33 01 40 90 34 49
Fax: +33 01 40 90 31 01
www.tango04.fr
Sales Office in Italy
Tango/04 Computing Group Italy
Viale Garibaldi 51
13100 Vercelli VC Italy
Phone: +39 0161 56922
Fax: +39 0161 259277
www.tango04.it
Sales Office in Peru
Barcelona/04 Computing Group Perú
Calle Isaac Albeniz 555, Dpto 201 Urb
Las Magnolias
San Borja
L 27 Lima
Perú
Phone: +51 1 640-9168
Fax: +51 1 211-2526
www.barcelona04.com
Sales Office in Switzerland
Tango/04 Computing Group Switzerland
18, Avenue Louis Casaï
CH-1209 Genève
Switzerland
Phone: +41 (0)22 747 7866
Fax: +41 (0)22 747 7999
www.tango04.fr
© 2014 Tango/04Computing Group Página 50
Acerca de Tango/04 Computing Group
Acerca de Tango/04 Computing Group
Tango/04 Computing Group es una de las principales empresas desarrolladoras de software de gestión
y automatización de sistemas informáticos. El software de Tango/04 ayuda a las empresas a mantener
la salud operativa de sus procesos de negocio, mejorar sus niveles de servicio, incrementar su
productividad y reducir costes mediante una gestión inteligente de su infraestructura informática.
Fundada en 1991 en Barcelona, Tango/04 es IBM Business Partner y miembro de la iniciativa
estratégica IBM Autonomic Computing. Además de recibir numerosos reconocimientos de la industria,
las soluciones Tango/04 han sido validadas por IBM y tienen la designación IBM ServerProven™.
Tango/04 tiene más de mil clientes y mantiene operaciones en todo el mundo a través de una red de 35
Business Partners
Alianzas
Premios
Partnerships IBM Business Partner
IBM Autonomic Computing Business Partner
IBM PartnerWorld for Developers Advanced Membership
IBM ISV Advantage Agreement
IBM Early code release
IBM Direct Technical Liaison
Microsoft Developer Network
Microsoft Early Code Release
© 2014 Tango/04 Computing Group Página 51
Aviso Legal
Aviso Legal
Este documento y su contenido son propiedad de Tango/04 Computing Group o de sus respectivos propietarios cuando así se
indique. Cualquier utilización de este documento con una finalidad distinta de aquella con la cual ha sido creado está prohibida sin la
autorización expresa de su propietario. Asimismo queda prohibida la reproducción total o parcial de este documento por cualquier
medio físico, óptico, magnético, impreso, telemático, etc., sin la autorización expresa de su propietario.
La información técnica aquí contenida fue obtenida utilizando equipamiento e instalaciones específicas, y su aplicación se limita a
esas combinaciones especiales de productos y niveles de versiones de hardware y software. Cualquier referencia en este documento
a productos, software o servicios de Tango/04 Computing Group, no implica que Tango/04 Computing Group planee introducir esos
productos, software o servicios en cada uno de los países en los que opera o está representada. Cualquier referencia a productos de
software, hardware o servicios de Tango/04 Computing Group no está hecha con el propósito de expresar que solamente pueden
utilizarse productos o servicios de Tango/04 Computing Group. Cualquier producto o servicio funcionalmente equivalente que no
infrinja la propiedad intelectual o condiciones de licenciamiento específicas se podría utilizar en reemplazo de productos, software o
servicios de Tango/04 Computing Group.
Tango/04 Computing Group puede tener patentes o estar pendiente de obtención de patentes que cubren asuntos tratados en este
documento. La entrega de este documento no otorga ninguna licencia de esas patentes. La información contenida en este
documento no ha sido sometida a ningún test formal por Tango/04 Computing Group y se distribuye tal como está. El uso de esta
información o la implementación de cualquiera de las técnicas, productos, tecnologías, ideas o servicios explicitados o sugeridos por
el presente documento es responsabilidad exclusiva del cliente a quien está dirigido este documento, y es el cliente quien debe
evaluar y determinar la aplicabilidad y consecuencias de integrar esas técnicas, productos, tecnologías, ideas o servicios en su
entorno operativo.
Si bien cada ítem puede haber sido revisado por Tango/04 Computing Group en cuanto a su exactitud en una situación específica, no
existe ni se otorga ninguna garantía de que los mismos o similares resultados puedan ser obtenidos en otras situaciones o
instalaciones. Los clientes que intenten adaptar esas técnicas en sus propias instalaciones lo hacen bajo su propia cuenta,
responsabilidad y riesgo. Tango/04 Computing Group no será en ningún caso responsable directo o indirecto de cualquier daño o
perjuicio causado por el uso de las técnicas explicitadas o sugeridas en este documento, incluso si se han efectuado notificaciones
de la posibilidad de esos daños.
Este documento puede contener errores técnicos y/o errores tipográficos. Todas las referencias en esta publicación a entidades
externas o sitios web han sido provistas para su comodidad solamente, y en ningún caso implican una validación, garantía o respaldo
a esas entidades o sitios.
Las marcas siguientes son propiedad de International Business Machines Corporation en los Estados Unidos y/o otros países: AS/
400, AS/400e, System i, iSeries, e (logo)Server, i5, Operating System/400, OS/400, i5/OS.
Microsoft, SQL Server, Windows, Windows NT, Windows XP y el logotipo de Windows son marcas registradas de Microsoft
Corporation en los Estados Unidos y/o otros países. Java y todos los logotipos y marcas basadas en Java son propiedad de Sun
Microsystems, Inc. en los Estados Unidos y otros países. UNIX es una marca registrada en los Estados Unidos y otros países y se
licencia exclusivamente a través de The Open Group. Oracle es una marca registrada de Oracle Corporation. Otras marcas,
productos o servicios pueden ser marcas registradas de otras empresas.
© 2014 Tango/04 Computing Group Página 52