Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la...

422
Netcool/OMNIbus Versión 7 Release 3 Guía de administración SC11-8139-00

Transcript of Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la...

Page 1: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Netcool/OMNIbusVersión 7 Release 3

Guía de administración

SC11-8139-00

���

Page 2: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .
Page 3: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Netcool/OMNIbusVersión 7 Release 3

Guía de administración

SC11-8139-00

���

Page 4: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

NotaAntes de utilizar esta información y el producto al que da soporte, lea la información del apartado “Avisos” en la página397.

Esta edición se aplica a la versión 7, release 3, modificación 1 de IBM Tivoli Netcool/OMNIbus (número deproducto 5724-S44) y a todos los releases y modificaciones posteriores hasta que se indique lo contrario en nuevasediciones.

© Copyright IBM Corporation 1994, 2011.

Page 5: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Contenido

Acerca de esta publicación . . . . . . viiA quién va dirigido . . . . . . . . . . . viiContenido de esta publicación . . . . . . . . viiPublicaciones . . . . . . . . . . . . . viiiAccesibilidad . . . . . . . . . . . . . . xFormación técnica de Tivoli . . . . . . . . . xInformación de soporte . . . . . . . . . . . xConvenios utilizados en esta publicación . . . . . x

Capítulo 1. Configuración deObjectServer. . . . . . . . . . . . . 1Procesamiento de alertas en el ObjectServer . . . . 1Utilización de las propiedades de ObjectServer y lasopciones de línea de mandatos . . . . . . . . 1

Propiedades y opciones de línea de mandatos deObjectServer . . . . . . . . . . . . . 3

Ejecución del ObjectServer en modalidad segura . . 20Actualizaciones de herramienta de cliente medianteIDUC . . . . . . . . . . . . . . . . 22

Especificación del intervalo de actualizaciónIDUC . . . . . . . . . . . . . . . 22Especificación del puerto IDUC. . . . . . . 23

Configuración del ObjectServer para soportemulticultural . . . . . . . . . . . . . . 23Almacenamiento de datos y puntos de control. . . 24

Almacenamiento de datos utilizando almacenesde memoria . . . . . . . . . . . . . 25Introducción a la sincronización por puntos decomprobación . . . . . . . . . . . . 25Programa de utilidad de verificación de punto decontrol nco_check_store . . . . . . . . . 26Modificación de los límites flexibles y fijos delalmacén de memoria table_store . . . . . . 28

Envío de alertas al objectserver utilizandonco_postmsg . . . . . . . . . . . . . . 29

Propiedades y opciones de línea de mandatos denco_postmsg . . . . . . . . . . . . . 33Ejemplos de nco_postmsg y sentencias INSERTresultantes . . . . . . . . . . . . . . 36

Capítulo 2. Configuración de unservidor proxy . . . . . . . . . . . 39Inicio del servidor proxy . . . . . . . . . . 39

Inicio de un servidor proxy utilizando el controlde procesos . . . . . . . . . . . . . 40Inicio de un servidor proxy utilizando servicios(Windows). . . . . . . . . . . . . . 40Inicio manual del servidor proxy . . . . . . 40Propiedades y opciones de línea de mandatos delservidor proxy . . . . . . . . . . . . 40

Conexión al servidor proxy . . . . . . . . . 44Ejecución del servidor proxy en modalidad segura 44

Capítulo 3. Configuración de unservidor de puente de cortafuegos . . 47Configuración de un servidor de puente decortafuegos estándar . . . . . . . . . . . 48Configuración de un servidor de puente de varioscortafuegos . . . . . . . . . . . . . . 50Configuración de migración tras error de servidorde puente de cortafuegos . . . . . . . . . . 51Inicio del servidor de puente de cortafuegos . . . 53

Inicio del servidor de puente de cortafuegosutilizando el control de proceso . . . . . . 53Inicio del servidor de puente de cortafuegosutilizando servicios Windows . . . . . . . 53Inicio manual del servidor de puente decortafuegos . . . . . . . . . . . . . 53Propiedades y opciones de línea de mandatos deservidor de puente de cortafuegos . . . . . . 54

Archivo de definición de hosts de confianza . . . 59Lenguaje de mandatos servidor de puente decortafuegos . . . . . . . . . . . . . . 60

SHOW PROPS y GET CONFIG. . . . . . . 60GET PROP . . . . . . . . . . . . . 61SHOW DATAFLOWS . . . . . . . . . . 61SET LOG LEVEL TO . . . . . . . . . . 62CONCLUSIÓN . . . . . . . . . . . . 62

Capítulo 4. Utilización deladministrador de Netcool/OMNIbuspara configurar ObjectServers . . . . 63Cómo empezar con Netcool/OMNIbusAdministrator . . . . . . . . . . . . . 63

Consideraciones para soporte multicultural . . . 63Inicio del administrador de Netcool/OMNIbus 64Conexión a un ObjectServer . . . . . . . . 67Conexión a un agente de proceso . . . . . . 68Trabajo con componentes TivoliNetcool/OMNIbus . . . . . . . . . . . 70Conexiones de capa de sockets seguros . . . . 70Selección de objetos ObjectServer para configurar 71Establecimiento de preferencias enNetcool/OMNIbus Administrator . . . . . . 72Cómo salir de Netcool/OMNIbus Administrator 75

Gestión de la autorización con usuarios, grupos,roles y filtros de restricción . . . . . . . . . 75

Configuración de roles. . . . . . . . . . 76Configuración de grupos . . . . . . . . . 81Configuración de usuarios . . . . . . . . 85Configuración de filtros de restricción . . . . 89

Configuración de menús, herramientas y solicitudes 92Personalización de menús . . . . . . . . 92Herramientas de configuración . . . . . . . 96Configuración de solicitudes . . . . . . . 100

Configuración de automatizaciones . . . . . . 104Configuración de desencadenantes . . . . . 105Configuración de procedimientos . . . . . . 116

© Copyright IBM Corp. 1994, 2011 iii

Page 6: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Configuración de señales . . . . . . . . 125Configuración de la apariencia visual de la lista desucesos . . . . . . . . . . . . . . . 128

Creación y edición de conversiones . . . . . 128Supresión de conversiones . . . . . . . . 129Creación y edición de colores de gravedad desuceso para listas de sucesos de Windows . . . 129Creación y edición de elementos visuales decolumna . . . . . . . . . . . . . . 130Supresión de elementos visuales de columna 131Creación y edición de clases . . . . . . . 131Supresión de clases . . . . . . . . . . 132

Configuración de bases de datos, archivos,propiedades, conexiones y canales de ObjectServer . 132

Configuración de bases de datos . . . . . . 132Visualización y cambio de propiedades deobjectserver . . . . . . . . . . . . . 138Configuración de archivos de ObjectServer . . 139Supervisión de conexiones de objectserver. . . 141Configuración de canales . . . . . . . . 142

Utilización de la interfaz interactiva SQL en lamodalidad de interfaz gráfica de usuario . . . . 142

Capítulo 5. SQL de ObjectServer . . . 145Interfaz interactiva SQL . . . . . . . . . . 145

Inicio de la interfaz interactiva SQL . . . . . 146Ejecución de mandatos SQL en la interfazinteractiva de SQL. . . . . . . . . . . 148Ejecución de la interfaz interactiva SQL enmodalidad segura . . . . . . . . . . . 151Cifrado de contraseñas en scripts nco_sql deUNIX . . . . . . . . . . . . . . . 151Cómo salir de la interfaz interactiva SQL . . . 151

Creación, modificación y supresión de objetos deObjectServer. . . . . . . . . . . . . . 152

Bases de datos . . . . . . . . . . . . 152Tablas . . . . . . . . . . . . . . . 154Índices . . . . . . . . . . . . . . 162Vistas . . . . . . . . . . . . . . . 164Filtros de restricción . . . . . . . . . . 165Archivos . . . . . . . . . . . . . . 167

Palabras reservadas . . . . . . . . . . . 169Bloques de creación de SQL . . . . . . . . 171

Operadores . . . . . . . . . . . . . 171Funciones . . . . . . . . . . . . . 177Expresiones . . . . . . . . . . . . . 183Condiciones . . . . . . . . . . . . . 183

Consulta y manipulación de datos utilizando elSQL de objectserver . . . . . . . . . . . 184

Inserción de una fila nueva de datos en unatabla (mandato INSERT). . . . . . . . . 185Actualización de datos en columnas de tabla(mandato UPDATE) . . . . . . . . . . 186Supresión de filas de datos de una tabla(mandato DELETE) . . . . . . . . . . 187Recuperación de datos de una tabla o Vista(mandato SELECT) . . . . . . . . . . 187Información de registro en archivosObjectServer (mandato WRITE INTO) . . . . 191Visualización de detalles de columnas de unatabla o vista (mandato DESCRIBE) . . . . . 192

Adición o actualización de datos de estado deservicio (mandato SVC) . . . . . . . . . 192Envío de notificaciones de IDUC a clientes deIDUC (mandato IDUC FLUSH) . . . . . . 193

Modificación de los valores predeterminados yactuales del ObjectServer (mandato ALTERSYSTEM) . . . . . . . . . . . . . . . 193Establecimiento de la base de datospredeterminada (mandatos SET DATABASE y USEDATABASE). . . . . . . . . . . . . . 195Verificación de la sintaxis de SQL (mandatoCHECK STATEMENT) . . . . . . . . . . 195Creación, modificación y supresión de usuarios,grupos y roles . . . . . . . . . . . . . 195

Creación de un usuario (mandato CREATEUSER) . . . . . . . . . . . . . . . 196Modificación de los detalles de un usuarioexistente (mandato ALTER USER) . . . . . 197Supresión de un usuario (mandato DROPUSER) . . . . . . . . . . . . . . . 198Creación de un grupo (mandato CREATEGROUP) . . . . . . . . . . . . . . 198Modificación de los detalles de un grupoexistente (mandato ALTER GROUP) . . . . . 199Supresión de un grupo (mandato DROPGROUP) . . . . . . . . . . . . . . 199Creación de un rol (mandato CREATE ROLE) 200Modificación de la descripción de un rol(mandato ALTER ROLE) . . . . . . . . 200Utilización de roles para asignar permisos a losusuarios . . . . . . . . . . . . . . 201Supresión de un rol (mandato DROP ROLE) 207

Creación, ejecución y supresión dedesencadenantes . . . . . . . . . . . . 207

procedimientos de SQL . . . . . . . . . 208Procedimientos externos . . . . . . . . . 216Ejecución de procedimientos . . . . . . . 218Eliminación de procedimientos . . . . . . 219

Configuración de la automatización mediantedesencadenantes . . . . . . . . . . . . 219

Creación, modificación y supresión de gruposde desencadenante . . . . . . . . . . 219Creación, modificación y supresión dedesencadenantes . . . . . . . . . . . 221

Automatizaciones de Tivoli Netcool/OMNIbusestándar . . . . . . . . . . . . . . . 245

Automatización para sucesos afectados por elservicio . . . . . . . . . . . . . . 251Ejemplos de automatización . . . . . . . 251

Capítulo 6. Configuración de lanotificación de sucesos acelerados . . 255Configuración de un analizador para señalarsucesos para aceleración . . . . . . . . . . 256Configuración de una pasarela para la notificaciónde sucesos acelerados . . . . . . . . . . 256Configuración de la tabla alerts.status para recibirun distintivo AEN . . . . . . . . . . . . 257Configuración de canales para difundir datos desucesos . . . . . . . . . . . . . . . 257

Creación y edición de canales . . . . . . . 258

iv IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 7: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Copiar y pegar canales . . . . . . . . . 261Supresión de un canal . . . . . . . . . 261Envío de mensajes a destinatarios de canal . . 262Desconexión de los clientes de notificación desucesos acelerados. . . . . . . . . . . 262Cierre de clientes de notificación de sucesosacelerados . . . . . . . . . . . . . 263

Configuración de desencadenantes para darsoporte a la notificación de sucesos acelerados . . 264

Capítulo 7. Utilización del control deprocesos para gestionar procesos yprocedimientos externos . . . . . . 265Cómo se conectan los agentes de procesos. . . . 265Componentes de control de proceso . . . . . . 266

Agentes de proceso . . . . . . . . . . 266Procesos . . . . . . . . . . . . . . 267Servicios . . . . . . . . . . . . . . 267Programas de utilidad de proceso . . . . . 268

Creación e inicio de un sistema de red de controlde proceso . . . . . . . . . . . . . . 268

Antes de configurar el control de proceso . . . 269Creación de grupos de usuario Unix para elsistema de control de procesos . . . . . . 269Requisitos de cuenta de Windows para elsistema de control de procesos . . . . . . 270Configuración de información de comunicaciónde servidor para agentes de proceso . . . . . 270Actualización del archivo de configuración delcontrol de proceso por defecto. . . . . . . 271Inicio manual de agentes de proceso . . . . 272Consideraciones sobre seguridad del agente deprocesos . . . . . . . . . . . . . . 279Inicio automático de los agentes de proceso enUNIX . . . . . . . . . . . . . . . 281Inicio automático de agentes de proceso enWindows . . . . . . . . . . . . . . 283Gestión de la configuración del sistema decontrol de procesos . . . . . . . . . . 283

Configuración y gestión de control de procesodesde la línea de mandatos. . . . . . . . . 284

Definición de procesos, servicios y sistemasprincipales para el control de procesos . . . . 284Gestión de control de procesos mediante losprogramas de utilidad de control de procesos . 295

Utilización de Netcool/OMNIbus Administratorpara gestionar el control de proceso . . . . . . 303

Conexión a un agente de proceso. . . . . . 304Visualización y configuración de información deestado para un agente de proceso . . . . . 305Visualización de los procesos y servicios paraun agente de procesos . . . . . . . . . 306Configuración de servicios para un agente deprocesos . . . . . . . . . . . . . . 308Configuración de procesos . . . . . . . . 311Cómo copiar y pegar un servicio o procesoentre hosts de agente de proceso . . . . . . 316Ejecución de una acción externa . . . . . . 317Detención de un agente de procesos . . . . . 318

Utilización del control de proceso para ejecutarprocedimientos externos en las automatizaciones . 318

Capítulo 8. Ajuste del rendimiento 321Indicadores de rendimiento clave de TivoliNetcool/OMNIbus . . . . . . . . . . . 321

Indicadores de rendimiento clave deObjectServer. . . . . . . . . . . . . 322Indicadores de rendimiento clave de analizador 325Indicadores de rendimiento clave de pasarela 327

Prácticas recomendadas para el ajuste derendimiento . . . . . . . . . . . . . . 327

Ejecución de ObjectServer con el perfiladohabilitado . . . . . . . . . . . . . 328Recopilación de información estadística sobredesencadenantes . . . . . . . . . . . 330Revisión de la arquitectura del sistema . . . . 332Habilitación del grupo de desencadenantesstats_triggers . . . . . . . . . . . . 333Revisión de los archivos de configuración deanalizador . . . . . . . . . . . . . 333Configuración de la detección dedesbordamiento de sucesos . . . . . . . . 334Gestión del volumen de información en la tablaalerts.details. . . . . . . . . . . . . 334Utilización de un agente de supervisión parasupervisar y gestionar recursos TivoliNetcool/OMNIbus . . . . . . . . . . 335Revisión y modificación de consultas SQL ycreación de una selección de índices eficaces ybien diseñados . . . . . . . . . . . . 335Seguimiento de las tendencias de rendimiento aintervalos regulares . . . . . . . . . . 337

Directrices de consulta SQL . . . . . . . . 337Reglas para la optimización de consultas SQL 337Directrices de indexación . . . . . . . . 340Ejemplo de uso de índices con consultas SQL 342Ejemplo de uso de índices con losdesencadenantes o procedimientos . . . . . 343

Procedimientos recomendados para la creación dedesencadenantes . . . . . . . . . . . . 343

Apéndice A. Tablas de ObjectServer 349Tablas Alertas . . . . . . . . . . . . . 349

Tabla alerts.status . . . . . . . . . . . 349tabla alerts.details . . . . . . . . . . . 363Tabla alerts.journal . . . . . . . . . . 364Tabla alerts.iduc_messages . . . . . . . . 365Tabla alerts.application_types . . . . . . . 365Tabla master.class_membership . . . . . . 366

Tablas de servicio . . . . . . . . . . . . 366Tabla service.status . . . . . . . . . . 367

Tablas de catálogos del sistema . . . . . . . 367Tabla catalog.memstores . . . . . . . . . 367Tabla catalog.databases . . . . . . . . . 368Tabla catalog.tables . . . . . . . . . . 368Tabla catalog.base_tables . . . . . . . . 369Tabla catalog.views . . . . . . . . . . 369Tabla catalog.files . . . . . . . . . . . 370Tabla catalog.restrictions. . . . . . . . . 370

Contenido v

Page 8: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla columnas catálogo. . . . . . . . . 370Tabla catalog.primitive_signals . . . . . . 371Tabla catalog.primitive_signal_parameters . . . 371Tabla catalog.trigger_groups . . . . . . . 372Tabla catalog.triggers . . . . . . . . . . 372Tabla catalog.database_triggers . . . . . . 373Tabla catalog.signal_triggers . . . . . . . 373Tabla catalog.temporal_triggers . . . . . . 374Tabla catalog.procedures. . . . . . . . . 374Tabla catalog.sql_procedures . . . . . . . 374Tabla catalog.external_procedures . . . . . 375Tabla catalog.procedure_parameters . . . . . 375Tabla catalog.connections . . . . . . . . 376Tabla catalog.properties . . . . . . . . . 376Tabla catalog.security_permissions . . . . . 376Tabla catalog.profiles . . . . . . . . . . 377Tabla catalog.indexes . . . . . . . . . . 378

Tablas de estadísticas . . . . . . . . . . . 378Tabla catalog.profiles . . . . . . . . . . 378Tabla master.stats . . . . . . . . . . . 379Tabla catalog.trigger_stats . . . . . . . . 380Tabla catalog.channel_stats . . . . . . . . 381

Tablas de soporte de herramientas de cliente . . . 381Tabla alerts.resolutions . . . . . . . . . 381Tabla alerts.conversions . . . . . . . . . 382Tabla alerts.col_visuals . . . . . . . . . 382Tabla alerts.colors . . . . . . . . . . . 383

Tablas de herramientas de escritorio . . . . . . 384Tabla tools.actions . . . . . . . . . . . 384Tabla tools.action_access. . . . . . . . . 385Tabla tools.menus . . . . . . . . . . . 385

Tabla tools.menu_items . . . . . . . . . 385Tabla tools.prompt_defs . . . . . . . . . 386Tabla tools.menu_defs . . . . . . . . . 386

Tablas de objectserver de escritorio . . . . . . 387Tabla master.national . . . . . . . . . . 387Tabla master.servergroups . . . . . . . . 388

Tablas de seguridad para compatibilidad conversiones anteriores . . . . . . . . . . . 388Tablas IDUC. . . . . . . . . . . . . . 388

Tabla iduc_system.channel . . . . . . . . 388Tabla iduc_system.channel_interest . . . . . 389Tabla iduc_system.channel_summary . . . . 389Tabla iduc_system.channel_summary_cols . . . 389Tabla iduc_system.iduc_stats . . . . . . . 390

Tablas de sucesos afectados por servicio . . . . 390Tabla precision.service_affecting_event . . . . 390Tabla precision.service_details . . . . . . . 390Tabla precision.entity_service . . . . . . . 391

Apéndice B. Mandatos SQL,expresiones variables y botones deayudante en herramientas,automatizaciones y listas de sucesostransitorios . . . . . . . . . . . . 393

Avisos . . . . . . . . . . . . . . 397Marcas registradas. . . . . . . . . . . . 399

Índice. . . . . . . . . . . . . . . 401

vi IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 9: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Acerca de esta publicación

Tivoli Netcool/OMNIbus es un sistema SLM (gestión de nivel de servicio) queofrece una supervisión centralizada en tiempo real de redes complejas y dominiosIT.

La publicación IBM Tivoli Netcool/OMNIbus Administration Guide proporcionainformación detallada sobre las herramientas de administración, las funciones y lasprestaciones del producto Tivoli Netcool/OMNIbus. Además, se ha diseñado parautilizarla como guía de consulta que le ayudará a la hora de diseñar y configurarsu entorno.

A quién va dirigidoEsta publicación va dirigida a los administradores responsables de la configuraciónde Tivoli Netcool/OMNIbus.

Contenido de esta publicación

Esta publicación contiene las siguientes secciones:v Capítulo 1, “Configuración de ObjectServer”, en la página 1

Describe cómo configurar ObjectServer, que es el repositorio central de datos.v Capítulo 2, “Configuración de un servidor proxy”, en la página 39

Describe cómo configurar un servidor proxy para disminuir el número deconexiones de sondeo a un ObjectServer.

v Capítulo 3, “Configuración de un servidor de puente de cortafuegos”, en lapágina 47Describe cómo configurar un servidor de puente de cortafuegos para permitirque los sondeos se conecten al producto ObjectServer desde fuera de una redsegura.

v Capítulo 4, “Utilización del administrador de Netcool/OMNIbus para configurarObjectServers”, en la página 63Describe cómo utilizar Netcool/Omnibus Administrator para configurar ygestionar los productos ObjectServer.

v Capítulo 5, “SQL de ObjectServer”, en la página 145Describe las estructuras de datos de ObjectServer así como la sintaxis de SQL deObjectServer.

v Capítulo 6, “Configuración de la notificación de sucesos acelerados”, en lapágina 255Describe cómo configurar Tivoli Netcool/OMNIbus para una notificación desucesos acelerados que podrían poner en peligro al sistema.

v Capítulo 7, “Utilización del control de procesos para gestionar procesos yprocedimientos externos”, en la página 265Describe los componentes, la configuración y los programas de utilidad degestión asociados a Tivoli Netcool/OMNIbus con el sistema de control deproceso. También incluye información sobre cómo configurar y gestionar elcontrol de proceso utilizando los programas de utilidad de mandatos ynetcool/Omnibus Administrator.

© Copyright IBM Corp. 1994, 2011 vii

Page 10: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

v Capítulo 8, “Ajuste del rendimiento”, en la página 321Describe cómo supervisar y ajustar el rendimiento de Tivoli Netcool/OMNIbus.

v Apéndice A, “Tablas de ObjectServer”, en la página 349Contiene información de la tabla de base de datos de ObjectServer.

v Apéndice B, “Mandatos SQL, expresiones variables y botones de ayudante enherramientas, automatizaciones y listas de sucesos transitorios”, en la página 393Proporciona información de consulta sobre los mandatos SQL comunes, lasexpresiones variables y los botones de ayuda que se utilizan en las herramientas,las automatizaciones y las listas de sucesos transitorios.

PublicacionesEn esta sección se listan kas publicaciones de la biblioteca de TivoliNetcool/OMNIbus y los documentos relacionados. En la sección también sedescribe cómo acceder a las publicaciones en línea de Tivoli y cómo solicitarpublicaciones de Tivoli.

La biblioteca de Tivoli Netcool/OMNIbus

Los siguientes documentos están disponibles en la biblioteca de TivoliNetcool/OMNIbus:v IBM Tivoli Netcool/OMNIbus Installation and Deployment Guide, SC14-7604

Incluye procedimientos de instalación y actualización para TivoliNetcool/OMNIbus, y describe cómo configurar la seguridad y la comunicaciónentre componentes. La publicación también contiene ejemplos de lasarquitecturas de Tivoli Netcool/OMNIbus y describe cómo implementarlas.

v IBM Tivoli Netcool/OMNIbus Administration Guide, SC14-7605Describe cómo realizar tareas administrativas utilizando la GUI deadministrador de Tivoli Netcool/OMNIbus, herramientas de la línea demandatos y el control de procesos. Esta publicación también contienedescripciones y ejemplos de sintaxis y automatizaciones SQL para ObjectServers.

v IBM Tivoli Netcool/OMNIbus Web GUI Administration and User's Guide, SC14-7606Describe cómo realizar tareas administrativas y de visualización de sucesosmediante la GUI web de Tivoli Netcool/OMNIbus.

v IBM Tivoli Netcool/OMNIbus User's Guide, SC14-7607Proporciona una visión general de las herramientas de escritorio y describe lastareas del operador relacionadas con la gestión de sucesos utilizando estasherramientas.

v IBM Tivoli Netcool/OMNIbus Probe and Gateway Guide, SC14-7608Contiene información de introducción y referencia acerca de sondas y pasarelas,lo que incluye la sintaxis de archivo de reglas de sonda y mandatos de pasarela.

v IBM Tivoli Monitoring for Tivoli Netcool/OMNIbus Agent User's Guide, SC14-7610Describe cómo instalar el agente de supervisión de estado de TivoliNetcool/OMNIbus y contiene información de referencia sobre el agente.

v IBM Tivoli Netcool/OMNIbus Event Integration Facility Reference, SC14-7611Describe cómo desarrollar adaptadores de sucesos personalizados al entorno dered que se utilice y a las necesidades de la empresa. Esta publicación tambiéndescribe cómo filtrar sucesos en el origen.

v IBM Tivoli Netcool/OMNIbus Error Messages Guide, SC14-7612Describe los mensajes del sistema en Tivoli Netcool/OMNIbus y cómoresponder a esos mensajes.

viii IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 11: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

v IBM Tivoli Netcool/OMNIbus Web GUI Administration API (WAAPI) User's Guide,SC22-5403-00Muestra cómo administrar GUI web de Tivoli Netcool/OMNIbus mediante lainterfaz de programación de aplicaciones XML denominada WAAPI.

Acceso a terminología en línea

La publicaciónTivoli Software Glossary incluye las definiciones de muchos términostécnicos relacionados con el software de Tivoli. La publicación Tivoli SoftwareGlossary está disponible en el siguiente sitio web de la biblioteca de software deTivoli:

http://publib.boulder.ibm.com/tividd/glossary/tivoliglossarymst.htm

En el sitio web de terminología de IBM se consolida la terminología de lasbibliotecas del producto IBM en una ubicación adecuada. Puede acceder al sitioweb de terminología en la dirección web siguiente:

http://www.ibm.com/software/globalization/terminology

Acceso a las publicaciones en línea

IBM envía publicaciones para este producto y para otros productos Tivoli, amedida que van estando disponibles y siempre que se actualicen, al sitio web delcentro de información de Tivoli en:

http://publib.boulder.ibm.com/infocenter/tivihelp/v3r1/index.jsp

Nota: Si imprime documentos PDF en un papel distinto al de tamaño carta,establezca la opción en la ventana Archivo > Imprimir que permite que AdobeReader imprima páginas de tamaño carta en el papel local.

Solicitud de publicaciones

Puede solicitar muchas publicaciones de Tivoli en línea desde el sitio websiguiente:

http://www.elink.ibmlink.ibm.com/publications/servlet/pbi.wss

También las puede solicitar por teléfono llamando a uno de los númerossiguientes:v En los Estados Unidos: 800-879-2755v En Canadá: 800-426-4968

En otros países, póngase en contacto con su representante de software parasolicitar publicaciones deTivoli. Para localizar el número de teléfono delrepresentante local, realice los pasos siguientes:1. Vaya al siguiente sitio web:

http://www.elink.ibmlink.ibm.com/publications/servlet/pbi.wss2. Seleccione el país en la lista y pulse en Go (Ir). Aparece la página Bienvenido al

Centro de Publicaciones de IBM de su país.3. En la parte izquierda de la página, pulse Acerca de este sitio para ver una

página de información que incluye el número de teléfono del representantelocal.

Acerca de esta publicación ix

Page 12: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

AccesibilidadLas funciones de accesibilidad ayudan a los usuarios con alguna discapacidadfísica como, por ejemplo, movilidad restringida o visión limitada, a utilizarsatisfactoriamente los productos de software.

Con este producto, puede utilizar tecnologías de asistencia para escuchar ydesplazarse por la interfaz. También puede usar el teclado en lugar del ratón parautilizar algunas funciones de la interfaz gráfica de usuario.

Formación técnica de Tivoli

Si desea obtener información sobre la formación técnica de Tivoli, consulte elsiguiente sitio web de formación de IBM Tivoli:

http://www.ibm.com/software/tivoli/education

Información de soporteSi tiene un problema con su software de IBM, deseará resolverlo rápidamente. IBMproporciona las siguientes maneras para que obtenga el soporte que necesita:

En líneaVaya al sitio web de IBM Software Support en http://www.ibm.com/software/support/probsub.html y siga las instrucciones.

IBM Support AssistantIBM Support Assistant (ISA) es un entorno de trabajo gratuito decapacidad de servicio de software local que ayuda a resolver preguntas yproblemas con los productos de software de IBM. La herramienta ISAofrece acceso rápido a información y a herramientas de serviciorelacionadas con el soporte para la determinación de problemas. Parainstalar el software ISA, vaya a http://www.ibm.com/software/support/isa.

Convenios utilizados en esta publicaciónEsta publicación utiliza varios convenios para términos y acciones especiales asícomo para mandatos y vías de acceso dependientes del sistema operativo.

Convenciones tipográficas

En esta publicación se utilizan las convenciones tipográficas siguientes:

Negrita

v Mandatos en minúsculas y mandatos con mayúsculas y minúsculascombinadas que son difíciles de distinguir del texto circundante

v Controles de interfaz (recuadros de selección, pulsadores, botones deselección , selectores cíclicos, campos, carpetas, iconos, recuadros de lista,elementos dentro de cuadros de lista, listas de varias columnas,contenedores, opciones de menú, nombres de menú, separadores, hojasde propiedades), etiquetas (como Sugerencia: y Consideraciones sobreel sistema operativo:)

v Palabras clave y parámetros en formato de texto

Cursiva

x IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 13: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

v Citas (ejemplo: títulos de publicaciones, disquetes y CD)v Palabras definidas en el texto (ejemplo: una línea no conmutada se

denomina línea punto a punto)v Énfasis de palabras y letras (palabras como palabras ejemplo: "El uso de

la palabra que para introducir una sentencia restrictiva".; letras comoejemplos de letras: "La dirección LUN debe empezar con la letra L.")

v Nuevos términos en el texto (a excepción de en una lista de definición):una vista es un marco en un espacio de trabajo que contiene datos

v Variables y valores que debe proporcionar: ... donde minombrerepresenta....

Monoespacio

v Ejemplos y ejemplos de código.v Nombres de archivo, palabras clave de programación y otros elementos

que son difíciles de distinguir del texto circundantev Texto de mensajes y solicitudes dirigidas al usuariov Texto que el usuario debe especificarv Valores de argumentos u opciones de mandato

Vías de acceso y variables que dependen del sistema operativo

Esta publicación utiliza el convenio de UNIX para especificar variables de entornoy para la notación de directorios.

Cuando utilice la línea de mandatos de Windows, sustituya $variable por%variable% para las variables de entorno y sustituya cada barra inclinada (/) poruna barra inclinada invertida (\) en las vías de acceso de directorio. Por ejemplo,en los sistemas UNIX, la variable de entorno $NCHOME especifica la vía de accesodel directorio de inicio de Netcool. En los sistemas Windows, la variable deentorno %NCHOME% especifica la vía de acceso del directorio de inicio deNetcool. Los nombres de las variables de entorno no siempre son las mismas en losentornos Windows y UNIX. Por ejemplo, %TEMP% en entornos Windows esequivalente a $TMPDIR en entornos UNIX.

Si utiliza el shell bash en un sistema Windows, puede utilizar las convenciones deUNIX.

Nombres de directorio específicos del sistema operativo

Donde los archivos de Tivoli Netcool/OMNIbus se identifican como ubicados enun directorio arch bajo NCHOME, arch es una variable que representa el directoriodel sistema operativo, como se muestra en la tabla siguiente.

Tabla 1. Nombres de directorio para la variable arch

Nombre de directorio representado por arch Sistema operativo

aix5 Sistemas AIX

hpux11 Sistemas basados en HP-UX PA-RISC

hpux11hpia Sistemas basados en HP-UX Integrity

linux2x86 Sistemas Red Hat Linux y SUSE

linux2s390 Linux for System z

solaris2 Sistemas Solaris

win32 Sistemas Windows

Acerca de esta publicación xi

Page 14: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

xii IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 15: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Capítulo 1. Configuración de ObjectServer

Se requiere al menos un objectserver para almacenar y gestionar la información dealertas en una instalación de Tivoli Netcool/OMNIbus. Puede configurar elobjectserver utilizando sus opciones de propiedades y línea de mandatos ytambién puede configurar el objectserver para que sólo acepte conexiones seguras.También puede configurar manualmente el soporte IDUC y el soportemulticultural, así como la migración tras error y la recuperación tras errorautomáticas.

Procesamiento de alertas en el ObjectServerLas alertas se almacenan en forma de filas o entradas en la tabla alerts.status delObjectServer. Cada alerta tiene un campo Identificador que identifica de maneraexclusiva el origen del problema. El identificador lo genera el analizador enfunción de las especificaciones del archivo de reglas del analizador.

Cuando se envía una alerta al ObjectServer, se efectúa una búsqueda en la tablaalerts.status en busca de un campo Identificador que coincida. Si no se encuentraninguna entrada con el mismo identificador, se inserta una entrada de alertanueva. La entrada contiene información detallada sobre el problema. Por ejemplo,el campo Primera ocurrencia indica la hora a la que apareció el problema porprimera vez.

Si se encuentra una entrada con el mismo identificador, se produce unaoptimización de almacenamiento. El ObjectServer reconoce la aparición de laentrada duplicada añadiendo un recuento en la entrada existente. De manerapredeterminada, el ObjectServer actualiza el campo Última ocurrencia de laentrada existente con la hora de la nueva alerta, e incrementa el campo Cuadrar.

Nota: El desencadenante de la optimización de almacenamiento V7.0 o posteriortiene prioridad sobre el valor de actualización o de optimización dealmacenamiento del analizador, siempre que el desencadenante haga referenciaexplícita al campo Identificador.

El ObjectServer también puede responder automáticamente a las alertasespecificadas utilizando la automatización.

Puede exportar información sobre alertas a otras aplicaciones a través de unapasarela, y puede utilizar una pasarela de ObjectServer bidireccional paraproporcionar soporte de migración tras error a otro ObjectServer.

Utilización de las propiedades de ObjectServer y las opciones de líneade mandatos

ObjectServer lee su archivo de propiedades cuando se inicia. Si no se especificauna propiedad en este archivo, se utiliza el valor predeterminado a menos que seutilice una opción de línea de mandatos para sobreescribirla.

© Copyright IBM Corp. 1994, 2011 1

Page 16: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Acerca del archivo de propiedades de objectserver

La ubicación predeterminada del archivo de propiedades es $nchome/Omnibus/etc/servername . Props . En el archivo de propiedades de objectserver, una propiedady su correspondiente valor se separan con un signo de dos puntos (:). Los valoresde serie están rodeados por comillas rectas sencillas; por ejemplo:Nombre: ’NCOMS’

Cada propiedad de ObjectServer tiene un valor por defecto. En un archivo depropiedades sin editar, todas las propiedades se establecen en los valorespredeterminados. En la parte superior del archivo, se proporciona una lista de laspropiedades con sus valores predeterminados, tipos de datos y descripciones paraactuar como referencia. Estas propiedades están comentadas con un signo denúmero (#) al principio de la línea. Debajo de la lista de propiedades comentadas,se proporciona otra lista de propiedades con sus valores predeterminados paratareas de edición, si es necesario.

Nota: Si está ejecutando el objectserver en codificación UTF-8 en Windows,también se debe guardar el archivo de propiedades de objectserver en codificaciónUTF-8.

Especificación de propiedades de objectserver

Puede modificar los valores de propiedades de objectserver de una de las manerassiguientes:v Edite el archivo de propiedades y cambie el valor de las propiedades necesarias.

Canvie las entradas debajo de la lista comentada de propiedades. Cuando realicecambios en las propiedades del archivo de propiedades, los cambios no entranen vigor hasta que reinicie el objectserver.

v Ejecute el mandato ALTER SYSTEM SET de la interfaz interactiva de SQL.v Desde la interfaz de netcool/Omnibus Administrator, utilice el botón de menú

Sistema y la opción Propiedades para visualizar las propiedades y editar susvalores.Cuando se utiliza el mandato ALTER SYSTEM SET o netcool/OmnibusAdministrator para cambiar la propiedades de objectserver, los cambios enalgunas de las propiedades no entrarán en vigor hasta que reinicie elobjectserver. Para obtener más información sobre cómo visualizar laspropiedades que requieren un reinicio de objectserver, consulte la lista desugerencias que sigue.

Cada vez que modifique los valores de propiedad de Objectserver utilizando elmandato ALTER SYSTEM SET o netcool/Omnibus Administrator, se añade unalista de propiedades en la parte inferior del archivo de propiedades para reflejarlos cambios. Como resultado, varias entradas para una propiedad pueden existiren un archivo. La última entrada para una propiedad tiene prioridad sobrecualquier entrada anterior.

Consejos para visualizar información sobre propiedades de objectserver:

v Puede consultar la tabla catalog.properties para ver información acerca de laspropiedades de objectserver. Por ejemplo, para recuperar una lista depropiedades que no se pueden modificar, escriba la consulta siguiente en lainterfaz interactiva de SQL:select PropName from catalog.properties where IsModifyable=FALSE;

2 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 17: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

v Los cambios en algunas propiedades de objectserver no entran en vigor hastaque reinicie el objectserver. Para recuperar una lista de estas propiedades,especifique la siguiente consulta:select PropName from catalog.properties where IsImmediate=FALSE;

v También puede ver información sobre las propiedades de objectserver en lainterfaz de netcool/Omnibus Administrator.

Especificación de opciones de línea de mandatos deObjectServer

Al ejecutar el objectserver utilizando el mandato nco_objserv , puede especificarun conjunto de opciones de línea de mandatos. Puede alterar temporalmente tantoel valor por omisión y el valor del archivo de propiedades valor cambiando elvalor de la propiedad desde la línea de mandatos.

Las opciones de línea de mandatos para el objectserver utilizan el formatoSiguiente:nco_objserv [ -option [ value ] ... ]

En este mandato, -option es la opción de línea de mandatos y value es el valor en elque establece la opción. No todas las opciones le requieren especificar un valor.

Puede añadir opciones de línea de mandatos a mandatos nco_objserv en elarchivo de configuración de agente.Conceptos relacionados:“Recuperación de datos de una tabla o Vista (mandato SELECT)” en la página 187Tareas relacionadas:“Visualización y cambio de propiedades de objectserver” en la página 138“Definición de procesos, servicios y sistemas principales para el control deprocesos” en la página 284Referencia relacionada:“Modificación de los valores predeterminados y actuales del ObjectServer(mandato ALTER SYSTEM)” en la página 193“Tabla catalog.properties” en la página 376

Propiedades y opciones de línea de mandatos deObjectServer

Utilice las propiedades o las opciones de línea de mandatos de ObjectServer paraconfigurar los valores del ObjectServer. Para evitar errores, añada tantaspropiedades como sea posible al archivo de propiedades en lugar de utilizar lasopciones de la línea de mandatos.

Consejo: Puede cifrar valores de serie en un archivo de propiedades utilizando elcifrado de valor de propiedad.

Las propiedades y las opciones de línea de mandatos de ObjectServer se describenen la tabla siguiente.

Capítulo 1. Configuración de ObjectServer 3

Page 18: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 2. Propiedades y opciones de línea de mandatos de ObjectServer

Propiedad Opción de línea de mandatos Descripción

ActingPrimary TRUE | FALSE

Consulte la columnaDescripción.

N/D Esta propiedad se utiliza en una configuraciónde migración tras error, donde un ObjectServerprimario y de reserva están conectadosmediante una pasarela bidireccional deObjectServer, que se utiliza para replicar losdatos sobre sucesos entre los dos ObjectServers.La propiedad se actualiza solo medianteautomatizaciones y no debe actualizarsemanualmente dentro del archivo depropiedades.

ActingPrimary se establece en TRUE en elObjectServer de reserva para el periodo duranteel que el ObjectServer de reserva actúa comoservidor primario. De lo contrario, estapropiedad se establece en FALSE en elObjectServer de reserva.

ActingPrimary siempre se establece en TRUE enel ObjectServer primario.

AlertSecurityModel entero -alertsecuritymodel entero Esta propiedad determina si la seguridad denivel de fila de grupo se aplica en la lista desucesos. De manera predeterminada, laseguridad de nivel de fila de grupo estáinhabilitada (0). En tal caso:

v Un miembro del grupo Normal puedemodificar una fila que tiene asignado dichogrupo o el usuario nobody.

v Un miembro del grupo Administrador puedemodificar una fila asignada a dicho grupo, elusuario nobody o un miembro del grupoNormal.

Si la propiedad AlertSecurityModel estáhabilitada (1), sólo los usuarios del grupopropietario de la fila la pueden modificar. En talcaso, un miembro del grupo Normal oAdministrador puede modificar una filaasignada a un grupo del que es miembro.

Un miembro del grupo Sistema siempre puedemodificar cualquier fila.

Para obtener más información sobre los gruposdel sistema y predeterminado, consulte lapublicación IBM Tivoli Netcool/OMNIbusInstallation and Deployment Guide.

AllowConnections TRUE | FALSE -disallowconnections Especifica si los usuarios no root puedenconectar con el ObjectServer. Si se establece enFALSE, no se permite ninguna conexión nueva alObjectServer. El valor predeterminado es TRUE.

4 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 19: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 2. Propiedades y opciones de línea de mandatos de ObjectServer (continuación)

Propiedad Opción de línea de mandatos Descripción

AllowISQL TRUE | FALSE -disallowisql Especifica si se permiten las conexiones con elObjectServer mediante la interfaz interactivaSQL. Si se establece en FALSE, ningún usuariopuede establecer conexión mediante nco_sql. Elvalor predeterminado es TRUE.

Si se establece en TRUE, puede habilitarse paracada usuario mediante el administrador deNetcool/OMNIbus.

AllowISQLWrite TRUE | FALSE -disallowisqlwrite Especifica si se permiten modificaciones en elObjectServer mediante la interfaz interactivaSQL. Si se establece en FALSE, ningún usuariopuede modificar el Object Servermediantenco_sql. El valor predeterminado esTRUE.

Si se establece en TRUE, puede habilitarse paracada usuario mediante el administrador deNetcool/OMNIbus.

AllowTimedRefresh TRUE |FALSE

-allowtimedrefresh TRUE |FALSE

Esta propiedad determina si el usuario puedehabilitar la renovación temporizada en elseparador Renovar de la ventana Preferenciasde lista de sucesos. Si se establece en TRUE,pueden establecerse preferencias de lista desucesos para la información de alerta puedaactualizarse al intervalo especificado en lugar deesperar la notificación de actualizaciones delObjectServer. El valor predeterminado es FALSE.

Si se establece en FALSE, el recuadro de selecciónde renovación temporizada aparece atenuado enel separador Renovar de la ventana Preferenciasde lista de sucesos y la renovación temporizadase inhabilita.

Auto.Debug TRUE | FALSE -autodebug TRUE | FALSE Si se establece en TRUE, se habilita la depuraciónde automatización. El valor predeterminado esFALSE.

Auto.Enabled TRUE | FALSE -autoenabled TRUE | FALSE Si se establece en TRUE, se habilitan lasautomatizaciones. El valor predeterminado esTRUE.

Auto.StatsInterval entero -autostatsinterval entero Especifica el intervalo en segundos con el que elsistema de automatización recopila estadísticas.El valor predeterminado es 60.

Se recopilan estadísticas a menos que la opciónde línea de mandatos -autoenabled seestablezca en FALSE, con lo cual se inhabilitantodas las automatizaciones.

Capítulo 1. Configuración de ObjectServer 5

Page 20: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 2. Propiedades y opciones de línea de mandatos de ObjectServer (continuación)

Propiedad Opción de línea de mandatos Descripción

BackupObjectServer TRUE |FALSE

-backupserver Proporciona una prestación de restablecimientocon clientes de escritorio, sondas, el servidorproxy y la pasarela de ObjectServer. El valorpredeterminado es FALSE; los clientes deescritorio, las sondas, el servidor proxy y laspasarelas se presupone que se conectan con unObjectServer primario. Cuando se establece enTRUE, los clientes de escritorio, las sondas, elservidor proxy y las pasarelas reconocen queestán conectadas con el ObjectServer de reservaen un par de migración tras error. Si es el caso,los clientes de escritorio, las sondas, el servidorproxy y las pasarelas comprobaránautomáticamente la recuperación delObjectServer primario en el par de migracióntras error y se restablecerán cuando se hayareiniciado.

ClientHeartbeatDisable TRUE |FALSE

-clienthbdisable TRUE | FALSE Inhabilita el sistema de pulsación de cliente si seestablece en TRUE. Esto hace que un clienteconectado supere el tiempo de espera si elObjectServer está ocupado, por ejemplo duranteuna resincronización de pasarela o unaautomatización.

El valor FALSE predeterminado habilita lapulsación e impide tiempos de espera de clienteno válidos e innecesarios. Si el ObjectServer estáactivo aunque ocupado, este valor hace que elObjectServer envíe un mensaje emergente a uncliente conectado, con los detalles del tipo deproceso en curso.

ClientHeartbeatRate entero -clienthbrate entero Establece la velocidad en segundos de unapulsación de cliente. Esta velocidad definedurante cuánto tiempo un cliente debe esperaruna respuesta del ObjectServer antes de superarel tiempo de espera. El valor predeterminado es10.

6 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 21: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 2. Propiedades y opciones de línea de mandatos de ObjectServer (continuación)

Propiedad Opción de línea de mandatos Descripción

ConfigCryptoAlg serie N/D Especifica el algoritmo criptográfico que se va autilizar para los valores de serie de descifrado(incluidas las contraseñas) que se han cifradocon el programa de utilidad nco_aes_crypt y, acontinuación, se almacenaron en el archivo depropiedades. Establezca el valor serie tal comose indica a continuación:

v En modalidad FIPS 140–2, utilice AES_FIPS.

v En modalidad distinta de FIPS 140–2, puedeutilizar AES_FIPS o AES. Utilice AES solamentesi necesita mantener la compatibilidad concontraseñas que se cifraron utilizando lasherramientas proporcionadas en versionesanteriores a la 7.2.1 de TivoliNetcool/OMNIbus.

El valor que especifique debe ser idéntico al quese utilizó cuando se ejecutó nco_aes_crypt conel valor -c para cifrar los valores de serie.

Utilice esta propiedad junto con la propiedadConfigKeyFile.

ConfigKeyFile serie N/D Especifica la vía de acceso y el nombre delarchivo de claves que contiene la clave utilizadapara descifrar valores de series cifradas(incluidas las contraseñas) en el archivo depropiedades.

La clave se utiliza durante la ejecución paradescifrar los valores de serie que se cifraron conel programa de utilidad nco_aes_crypt. Elarchivo de claves que especifique debe seridéntico al archivo utilizado para cifrar losvalores de serie cuando se ejecutónco_aes_crypt con el valor -k.

Utilice esta propiedad junto con la propiedadConfigCryptoAlg.

Connections entero -connections entero Establece el número máximo de conexionesdisponibles para clientes de escritorio, sondas ypasarelas.

El valor máximo es 1024. El valorpredeterminado es 30. El sistema puede utilizarhasta dos conexiones. Si el ObjectServer alcanzael valor especificado, ya no es posible ningunaconexión más hasta que se descarten algunas delas conexiones establecidas anteriormente.

DeleteLogFile serie -DELETES serie Vía de acceso y nombre del archivo de registrode supresiones, donde todos los mandatos desupresión se registran si se habilita el registro desupresiones.

De manera predeterminada, las supresiones seregistran en el archivo $NCHOME/omnibus/log/nombre_servidor_deletes_file.logn.

Capítulo 1. Configuración de ObjectServer 7

Page 22: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 2. Propiedades y opciones de línea de mandatos de ObjectServer (continuación)

Propiedad Opción de línea de mandatos Descripción

DeleteLogging TRUE | FALSE -DELETE_LOGGING TRUE | FALSE Cuando se establece en TRUE, se habilita elregistro de supresiones. El valor predeterminadoes FALSE.

DeleteLogLevel entero -DELETES_LEVEL entero El nivel de registro determina la cantidad deinformación que se envía al archivo de registrode supresiones. Los valores posibles son:

v <0: sin registro

v 0: tipo de cliente (ID de aplicación; porejemplo, ctisql para nco_sql) y ejecuciónSQL. Es el nivel de registro predeterminado.

v 1: hora, ID de usuario, tipo de cliente yejecución SQL.

DeleteLogSize entero -DELETES_SIZE entero Tamaño máximo del archivo de registro desupresiones. Cuando el archivo de registronombre_servidor_deletes_file.log1 alcanza eltamaño especificado, su nombre cambia anombre_servidor_deletes_file.log2 y se creaun archivo de registro nuevonombre_servidor_deletes_file.log1. Cuando elarchivo nuevo alcanza su tamaño máximo, elarchivo anterior se suprime y el proceso serepite.

La salida de un mandato de supresión nunca sedivide entre archivos de registro. Por lo tanto,los archivos de registro pueden ser más grandesque el tamaño especificado.

El tamaño del archivo de registropredeterminado es 1024 KB.

DTMaxTopRows entero -dtmaxtoprows entero Número máximo de filas que un administradorpuede especificar cuando se utiliza View Builderpara limitar el número de filas que un usuariode lista de sucesos puede visualizar. El valorpredeterminado es 100.

8 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 23: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 2. Propiedades y opciones de línea de mandatos de ObjectServer (continuación)

Propiedad Opción de línea de mandatos Descripción

GWDeduplication entero -gwdeduplication entero Esta propiedad controla el comportamientocuando se intenta reinsertar un suceso existenteen el ObjectServer. Los valores posibles son:

0: cuando se establece en este valor (el valorpredeterminado):

v Si el cliente no es una pasarela, el número enel campo Tally aumenta.

v Los campos LastOccurrence, Summary yAlertKey se actualizan con los valores nuevosy los campos StateChange e InternalLast seactualizan con la hora actual.

v Si la nueva gravedad es superior a 0 (borrar)y la gravedad anterior era 0, la alerta tambiénse actualiza con el nuevo valor de gravedad.

1: si el cliente es una pasarela, el suceso nuevosustituye al anterior.

2: si el cliente es una pasarela, el nuevo sucesose ignora.

3: cuando se establece en este valor:

v Para todos los clientes, el número del campoTally aumenta.

v Los campos LastOccurrence, Summary yAlertKey se actualizan con los valores nuevosy los campos StateChange e InternalLast seactualizan con la hora actual.

v Si la nueva gravedad es superior a 0 (borrar)y la gravedad anterior era 0, la alerta tambiénse actualiza con el nuevo valor de gravedad.

Granularity entero -granularity entero Controla el intervalo de actualización, ensegundos, de las difusiones de IDUC aescritorios y pasarelas. Al reducir este valoraumenta la velocidad de actualización para losclientes. El intervalo predeterminado es 60segundos. Si necesita renovar IDUC con másfrecuencia, configure la velocidad de renovaciónen la parte del cliente, por ejemplo, en elarchivo de configuración de las pasarelas.

Si la propiedad Profile se establece en TRUE, alfinal de cada periodo de granularidad, elObjectServer escribe un resumen en el registrode creación de perfiles sobre el tiempo dedicadoa cada conexión de cliente.

N/D -help Muestra la ayuda sobre las opciones de línea demandatos y finaliza.

Capítulo 1. Configuración de ObjectServer 9

Page 24: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 2. Propiedades y opciones de línea de mandatos de ObjectServer (continuación)

Propiedad Opción de línea de mandatos Descripción

Iduc.ListeningHostname serie -listeninghostname serie Establece un nombre de host para que losclientes lo utilicen para localizar el ObjectServer.En los sistemas donde se utiliza DNS, es posibleque el nombre que devuelva la máquina host nosea el nombre con el que se denomina en la red.

Por ejemplo, puede ser que un sistemadenominado sfo se identifique en la red comosfo.bigcorp.org. Para permitir que los clientesconecten con el ObjectServer en sfo, establezcaesta propiedad en sfo.bigcorp.org.

El valor predeterminado es el nombre delsistema local, según notifique el mandatohostname.

Iduc.ListeningPort entero -listeningport entero Establece el puerto para la conexión decomunicación de IDUC. Se trata de un puertoen el que el ObjectServer envía actualizaciones acada lista de sucesos y pasarela. Si no seespecifica, se selecciona el puerto de IDUCmediante el ObjectServer de manera aleatoriaentre los números de puerto no utilizadosdisponibles. El valor predeterminado es 0, esdecir, adoptar el siguiente puerto disponible.

También puede especificar el puerto en elarchivo /etc/services de la máquina host.

Ipc.Timeout entero -ipctimeout entero Establece el tiempo, en segundos, que elprograma de utilidad nco_postmsg espera unarespuesta del ObjectServer, al intentar enviaralertas. El valor predeterminado es 60 segundos.

Si se supera este tiempo (o el ObjectServer estáinactivo), se produce un error de comunicacióny la alerta se envía, en cambio, al archivo dememoria caché.

LogFilePoolSize entero -logfilepoolsize entero Especifica el número de archivos de registro quese debe utilizar si el sistema de registro escribeen una agrupación de archivos. Esta propiedadsólo funciona cuando la propiedadLogFileUsePool se establece en TRUE. El tamañode la agrupación puede ir de 2 a 99.

El valor predeterminado es 10.

Esta opción sólo se admite en los sistemasoperativos Windows.

10 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 25: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 2. Propiedades y opciones de línea de mandatos de ObjectServer (continuación)

Propiedad Opción de línea de mandatos Descripción

LogFileUsePool TRUE | FALSE -logfileusepool Especifica si se debe utilizar una agrupación dearchivos de registro para los mensajes deregistro.

Si se establece en TRUE, el sistema de registroabre el número de archivos especificados para laagrupación al inicio y los mantiene abiertosmientras dura su ejecución. (El número dearchivos se define en la agrupación mediante lapropiedad LogFilePoolSize). Cuando unarchivo de la agrupación alcanza su tamañomáximo (según especifica la propiedadMaxLogFileSize), el sistema de registro escribelos datos en el archivo siguiente. Cuando todoslos archivos de la agrupación tienen el tamañomáximo, el sistema de registro trunca el primerarchivo en la agrupación y empieza a escribirdatos en él de nuevo. El formato de los archivosde la agrupación es nombre_servidor.log_ID,donde ID es un número de dos dígitos de 01 alnúmero máximo que se especifique para lapropiedad LogFilePoolSize. Cuando el sistemade registro empieza a utilizar una agrupación dearchivos, el sistema escribe los datos en elnúmero de archivo disponible más bajo,independientemente del archivo en el queestuviera escribiendo cuando se ejecutó porúltima vez.

El valor predeterminado es FALSE. Cuando seestablece en FALSE, el nombre del archivonombre_servidor.log predeterminado cambia anombre_servidor.log_OLD y se inicia un archivode registro nuevo cuando se alcanza el tamañomáximo. Si el archivo no se puede renombrar,por ejemplo, debido a un bloqueo de lectura enel archivo _OLD y la propiedad LogFileUseStdErrse establece en FALSE, el sistema de registroempieza a utilizar automáticamente unaagrupación de archivos de registro.

Esta opción sólo se admite en los sistemasoperativos Windows.

Capítulo 1. Configuración de ObjectServer 11

Page 26: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 2. Propiedades y opciones de línea de mandatos de ObjectServer (continuación)

Propiedad Opción de línea de mandatos Descripción

LogFileUseStdErr TRUE | FALSE -logfileusestderr Especifica si se debe utilizar una corriente desalida para los mensajes de registro.

El valor predeterminado es TRUE. Si este valor esTRUE y el ObjectServer se ejecute desde la líneade mandatos, los mensajes se registran en laconsola si el ObjectServer no puede escribirdatos en el archivo de registro predeterminado.Si este valor es TRUE y el ObjectServer se ejecutacomo servicio de Windows, los mensajes seescriben en un archivo denominado%NCHOME%\omnibus\log\nco_objserv*.err si elObjectServer no puede escribir datos en elarchivo de registro predeterminado.

Si se establece en FALSE y el ObjectServer nopuede escribir datos en el archivo de registropredeterminado, se escriben mensajes en unaagrupación de archivos de registro, segúnestablezca la propiedad LogFileUsePool.Nota: El valor de la propiedad LogFileUsePooltiene prioridad sobre el valor deLogFileUseStdErr.

Esta opción sólo se admite en los sistemasoperativos Windows.

MaxLogFileSize entero -maxlogfilesize entero Especifica el tamaño máximo que el archivo deregistro puede alcanzar, en KB. El valorpredeterminado es 1024 KB.

Cuando alcanza el tamaño especificado, elnombre del archivo nombre_servidor.logcambia a nombre_servidor.log_OLD y se iniciaun archivo de registro nuevo. Cuando el archivonuevo alcanza el tamaño máximo, se renombray el proceso se vuelve a iniciar.

MessageLevel serie -messagelevel serie Especifica el nivel de registro de mensajes. Losvalores posibles son: debug, info, warn, error yfatal. El nivel predeterminado es warn.

Los mensajes que se registran en cada nivel sonlos siguientes:

v fatal: solo fatal

v error: fatal y error

v warn: fatal, error y warn

v info: fatal, error, warn e info

v debug: fatal, error, warn, info y debug

Consejo: El valor de serie puede indicarse enmayúsculas, minúsculas o una combinación deambas.

12 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 27: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 2. Propiedades y opciones de línea de mandatos de ObjectServer (continuación)

Propiedad Opción de línea de mandatos Descripción

MessageLog serie -messagelog serie Especifica la vía de acceso a lo mensajesregistrados. El valor predeterminado es$NCHOME/omnibus/log/NCOMS.log.

En Windows, si el sistema no puede escribir enel archivo de registro especificado (por ejemplo,como resultado de un error muy grave), escribeel error en un archivo denominado%NCHOME%\omnibus\log\nco_objserv*.err.Nota: El ObjectServer debe ejecutarse comoservicio; de lo contrario, no puede escribirerrores en un archivo.

N/D -name serie Establece el nombre del ObjectServer, que debeser exclusivo. Se trata del nombre que seconfigura en el Editor de servidores. El valorpredeterminado es NCOMS.

OldTimeStamp TRUE | FALSE -oldtimestamp TRUE | FALSE Especifica el formato de indicación de fecha yhora que se va a utilizar en el archivo deregistro.

Establezca el valor en TRUE para visualizar elformato de indicación de fecha y hora que se hautilizado en la versión 7.2.1 o anterior de TivoliNetcool/OMNIbus. Por ejemplo:dd/MM/AAAA hh:mm:ss AM odd/MM/AAAA hh:mm:ss PM cuando elentorno local se establece en en_GB en unsistema Solaris 9.

Establezca el valor en False para visualizar elformato ISO 8601 en el archivo de registro. Porejemplo: AAAA-MM-DDThh:mm:ss, donde Tsepara la fecha y la hora, y hh es un reloj de 24horas. El valor predeterminado es FALSE.

PA.Name serie -pa serie Establece el nombre del agente de control deprocesos. Este nombre debe constar de 29 letrasmayúsculas o menos y no puede empezar conun entero. Cuando se ejecuta un procedimientoexterno desde una automatización, elObjectServer puede iniciar un proceso externo.Para iniciar el proceso, el ObjectServer se poneen contacto con un agente de control deprocesos. El nombre predeterminado para elagente de control de procesos es NCO_PA.

Capítulo 1. Configuración de ObjectServer 13

Page 28: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 2. Propiedades y opciones de línea de mandatos de ObjectServer (continuación)

Propiedad Opción de línea de mandatos Descripción

PA.Password serie -papassword serie Especifica la contraseña del usuario que conectacon un agente de control de procesos a fin deejecutar procedimientos externos enautomatizaciones. El valor predeterminado es''.Nota: Si se ejecutan procedimientos externos, eldaemon de control de procesos debe poderautenticar el usuario. Por lo tanto, se debeespecificar una combinación válida, que puedaautenticar el daemon, en los valores serie de laspropiedades PA.Username y PA.Password. De locontrario, la conexión con el agente de controlde procesos y la ejecución del procedimientoexterno fallarán.

PA.Username serie -pausername serie Especifica el nombre de usuario para conectarcon un agente de control de procesos a fin deejecutar procedimientos externos enautomatizaciones. Debe especificarse un valorcuando el agente de control de procesos seejecute en modo seguro. El valorpredeterminado es root.

En Windows, especifique el nombre de usuariode una cuenta local válida, una cuenta dedominio o una cuenta UPN.

En UNIX, cualquier usuario que necesite accesoal sistema de control de procesos debe sermiembro de un grupo de usuarios UNIX (elpredeterminado es ncoadmin) que se identifiquecomo grupo administrativo para esta finalidad.Tenga en cuenta que si utiliza PluggableAuthentication Modules (PAM) para laautenticación, los usuarios no tienen que sermiembros de un grupo de usuarios UNIX comoncoadmin para obtener acceso al sistema decontrol de procesos.

PasswordEncryption serie -pwdenc serie Define el esquema de cifrado que se utiliza paracifrar contraseñas de usuario almacenadas en elObjectServer. Los valores son:

v DES: cifrado del tipo estándar de cifrado dedatos. Solo son significativos los primerosocho caracteres de una contraseña cifrada conDES.

v AES: cifrado del tipo estándar de cifradoavanzado (AES128). Solo son significativos losprimeros dieciséis caracteres de unacontraseña cifrada con AES128. Cuando seestá en modo FIPS 140–2, el sistema imponela opción AES.

El valor predeterminado es DES parainstalaciones que no sean FIPS 140-2.

El valor predeterminado es AES parainstalaciones FIPS 140-2.

14 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 29: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 2. Propiedades y opciones de línea de mandatos de ObjectServer (continuación)

Propiedad Opción de línea de mandatos Descripción

PasswordFormat serie -pwdformat serie Define los requisitos para las contraseñas deusuario y solo funciona cuando la propiedadRestrictPasswords se establece en TRUE.

Debe especificar el valor serie de la propiedadPasswordFormat (o -pwdformat) como conjuntode valores enteros separados por dos puntos,donde cada valor define un requisito decontraseña. El formato es:long_mín:núm_alfa:núm_digit:número_punt

Donde:

v long_mín es la longitud de la contraseña.

v núm_alfa es el número mínimo de caracteresalfabéticos.

v núm_digit es el número mínimo de caracteresnuméricos.

v núm_punt es el número mínimo de caracteresde puntuación.

El valor predeterminado de 8:1:1:0 indica queuna contraseña debe tener, como mínimo, 8caracteres y contener, como mínimo, un carácteralfabético y, al menos, un carácter numérico. Lacontraseña no tiene que contener caracteres depuntuación.

ProfileStatsInterval entero -profilestatsinterval entero Especifica el intervalo en segundos con el que elperfilador escribe información en el archivo deregistro de perfiles. El valor predeterminado es60 segundos.

Profile TRUE | FALSE -profile Controla la creación de perfiles de ObjectServer.Si se establece en TRUE, la cantidad de tiempoque tardan los clientes en ejecutar SQL seregistra en la tabla catalog.profiles. El valorpredeterminado es TRUE.

Las estadísticas de perfiles también se registranen el archivo $NCHOME/omnibus/log/nombre_servidor_profiler_report.logn segúncada intervalo de estadísticas de perfil.

Props.CheckNames TRUE | FALSE N/D Cuando se establece en TRUE, el ObjectServer nose ejecuta si alguna de las propiedadesespecificadas no es válida. El valorpredeterminado es TRUE.

N/D -propsfile serie Establece el nombre del archivo de propiedadesde ObjectServer. El nombre predeterminado esnombre_servidor.props, donde elnombre_servidor se define mediante la opción-name.

Capítulo 1. Configuración de ObjectServer 15

Page 30: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 2. Propiedades y opciones de línea de mandatos de ObjectServer (continuación)

Propiedad Opción de línea de mandatos Descripción

RegexpLibrary serie -regexplib serie Define la biblioteca de expresiones regulares quese debe utilizar para el ObjectServer. Los valoresposibles son: NETCOOL y TRE.

El valor predeterminado de NETCOOL es útil parael proceso de caracteres de un solo byte yproporciona un rendimiento del sistema óptimo.

Para habilitar el uso de la sintaxis deexpresiones regulares ampliada en idiomas decaracteres de un solo byte y multibyte,establezca el valor en TRE. Este valor hace quedisminuya el rendimiento del sistema.

RestrictionFiltersAND TRUE |FALSE

-restrictfiltersand Controla cómo se concatenan los filtros derestricción de usuarios y los filtros de restricciónde grupos. Esta propiedad se establece para elsistema y no según el usuario y los cambios enel valor de la propiedad sólo entran en vigordespués de reiniciar el ObjectServer.

Los valores de esta propiedad son los siguientes:

v TRUE: todos los filtros de restricción secombinan con el operador AND. El valorpredeterminado es TRUE. Ejemplo:

user_rf AND group1 AND group2

v FALSE: todos los filtros de restricción secombinan con el operador OR. Ejemplo:

user_rf OR group1 OR group2

RestrictionUpdateCheck TRUE |FALSE

-norestrictionupdatecheck Cuando se establece en FALSE, los usuarios confiltros de restricción aplicados pueden actualizaralertas que no aparecerán en su vista tras laactualización. El valor predeterminado es TRUE.

RestrictPasswords TRUE |FALSE

-restrictpasswords TRUE |FALSE

Cuando se establece en TRUE, las contraseñasdeben cumplir estas restricciones:

v La contraseña debe constar de ocho caracteresal menos.

v La contraseña debe contener, como mínimo,un carácter numérico.

v La contraseña debe contener al menos uncarácter alfabético.

El valor predeterminado es FALSE.

RestrictProxySQL TRUE | FALSE -restrictproxysql Cuando TRUE, las conexiones de un servidorproxy se limitan en los mandatos SQL deObjectServer que de pueden ejecutar. Las únicasmodificaciones en los datos del ObjectServerque se pueden realizar son inserciones en lastablas alerts.status y alerts.details. El valorpredeterminado es FALSE.

Si se establece en FALSE, las conexiones de unservidor proxy pueden ejecutar cualquiermandato SQL de ObjectServer.

16 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 31: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 2. Propiedades y opciones de línea de mandatos de ObjectServer (continuación)

Propiedad Opción de línea de mandatos Descripción

Sec.AuditLevel serie -secauditlevel serie Especifica el nivel de auditoría de seguridadrealizado. Los valores posibles son debug, info,warn y error. El valor predeterminado es warn.

Los niveles debug e info generan mensajes sobrelas autenticaciones satisfactorias y los errores deautenticación, mientras que los niveles warn yerror solo generan mensajes en caso de erroresde autenticación.

Sec.AuditLog serie -secauditlog serie Especifica el archivo en el que se escribe lainformación de auditoría. El valorpredeterminado es $NCHOME/omnibus/log/nombre_servidor/audit.log.

Sec.ExternalAuthenticationserie

-authenticate serie Controla el módulo de autenticación que seutiliza para autenticar usuarios. Los valores son:

v none: utilice este valor para realizar unaautenticación de usuario contra los nombresde usuario y las contraseñas que sealmacenan en el ObjectServer. Este valorinhabilita la autenticación externa.

v LDAP: utilice esta valor para autenticarexternamente a los usuarios cuyascredenciales se almacenen en el repositorioLightweight Directory Access Protocol(LDAP).

v PAM: utilice este valor para autenticar a losusuarios mediante el PAM de TivoliNetcool/OMNIbus proporcionado o paraautenticar externamente a los usuariosutilizando una configuración de PAM deterceros (como el sistema operativo o unaconfiguración de PAM que se hayaconfigurado para utilizar credenciales deLDAP).

En UNIX y Linux, el valor predeterminado esPAM. En Windows, el valor predeterminado esnone.

SecureMode TRUE | FALSE -secure Establece el modo de seguridad delObjectServer. Si se establece en TRUE, elObjectServer autentica las solicitudes deconexión de sonda, pasarela y servidor proxycon un nombre de usuario y una contraseña.Otras solicitudes de conexión de cliente siemprese autentican con un nombre de usuario y unacontraseña.

Capítulo 1. Configuración de ObjectServer 17

Page 32: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 2. Propiedades y opciones de línea de mandatos de ObjectServer (continuación)

Propiedad Opción de línea de mandatos Descripción

Store.LocalizedSort TRUE |FALSE

-storelocalesort Define si la ordenación localizada está habilitadao inhabilitada.

El valor predeterminado es FALSE, que inhabilitala ordenación localizada a partir de lascomparaciones de series de biblioteca Cestándar (libc). Por ejemplo, Å se tratará comovariante de A y los dos caracteres se ordenaránuno al lado de otro. Utilice este valorpredeterminado para un rendimiento óptimo delsistema.

Establezca el valor en TRUE para habilitar laordenación localizada. Por ejemplo, en unentorno local danés, Å se tratará como letraindependiente que va justa después de Z. Tengaen cuenta que, si se especifica este valor, elrendimiento del sistema disminuirá.

Store.LocalizedSortCaseSensitiveserie

-storecasesort serie Controla las mayúsculas y minúsculas en laordenación localizada. Esta propiedad sólo esaplicable cuando Store.LocalizedSort es TRUE.

Los valores son:

v OFF: la ordenación es sensible a lasmayúsculas y las minúsculas y estas seordenan según sus pesos de ordenaciónterciarios.

v UPPERFIRST: los caracteres en mayúsculas vanantes que los caracteres en minúsculas. Porejemplo, Account va antes que account.

v LOWERFIRST: los caracteres en minúsculas vanantes que los caracteres en mayúsculas. Porejemplo, account va antes que Account.

El valor predeterminado es OFF.

UniqueLog TRUE | FALSE -uniquelog Si se establece en TRUE, el archivo de registrorecibe un nombre exclusivo al añadírsele el IDde proceso del ObjectServer al nombre dearchivo predeterminado. Por ejemplo, si elObjectServer NCOMS está ejecutando comoproceso 1234, el archivo de registro se denominaNCHOME/omnibus/log/ NCOMS.1234.log. El valorpredeterminado es FALSE.

Si la propiedad MessageLog se establece enstderr o stdout, se ignora la propiedadUniqueLog.

18 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 33: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 2. Propiedades y opciones de línea de mandatos de ObjectServer (continuación)

Propiedad Opción de línea de mandatos Descripción

N/D Windows

-utf8enabled TRUE | FALSE

Controla la codificación de datos que setraspasan o que genera esta aplicaciónWindows.

Establezca el valor de -utf8enabled en TRUEpara ejecutar la aplicación de la codificaciónUTF-8. El valor predeterminado es FALSE, queobliga a utilizar la página de códigos de sistemapredeterminada.Importante: Aunque haya disponible unapropiedad UTF8Enabled, el intento de habilitar lacodificación UTF-8 estableciendo esta propiedaden TRUE no tendrá ningún efecto. Para realizar lacodificación en formato UTF-8 en Windows,deberá utilizar siempre la opción de línea demandatos -utf8enabled.Nota: Cuando se ejecuta una codificaciónUTF-8, no establezca la propiedad OldTimeStampen TRUE.

WTPasswordCheck serie -wtpasswordcheck serie Controla el modo como el ObjectServercomprueba las contraseñas cuando se reciben delos clientes.

Esta propiedad es útil cuando los usuarios deObjectServer se autentican externamente. Losvalores posibles de la propiedad son:

v plain: se presupone que las contraseñas sehan indicado en texto sin formato. (Sólo seaplica a los clientes de Netcool/Webtop 1.3).

v encrypted: se presupone que las contraseñasse han indicado en formato cifrado. (Sólo seaplica a los clientes de Netcool/Webtop 1.3).

v default: se presupone inicialmente que lascontraseñas se han indicado en texto sinformato. Si la comprobación del ObjectServerfalla, se presupone que las contraseñas se hanindicado en un formato cifrado. (Sólo seaplica a los clientes de Netcool/Webtop 1.3).

v allplain: se presupone que las contraseñas sehan indicado en texto sin formato. Si el iniciode sesión falla con la contraseña en texto sinformato, no se realiza ningún segundointento. (Se aplica a clientes que no sean deNetcool/Webtop 1.3).

v allencrypted: se presupone que lascontraseñas se han indicado en formatocifrado y se descifran antes de laautenticación. Si el inicio de sesión falla con lacontraseña descifrada, no se realiza ningúnsegundo intento. (Se aplica a clientes que nosean de Netcool/Webtop 1.3).

N/D -version Muestra la información de versión delObjectServer y finaliza.

Capítulo 1. Configuración de ObjectServer 19

Page 34: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Nota: El mandato nco_objserv incluye propiedades avanzadas que sólo se debenutilizar siguiendo las indicaciones de IBM Software Support. Estas propiedades nose han documentado.

Ejecución del ObjectServer en modalidad seguraPuede ejecutar el ObjectServer en modalidad segura. Cuando se especifica laopción de línea de mandatos -secure, el ObjectServer autentica las conexiones desonda, pasarela y servidor proxy solicitando un nombre de usuario y unacontraseña.

Cuando se envía una solicitud de conexión, el ObjectServer emite un mensaje deautenticación. La sonda, la pasarela o el servidor proxy debe responder con lacombinación correcta de nombre de usuario y contraseña.

Si no especifica la opción -secure, las solicitudes de conexión de sonda, pasarela yservidor proxy no se autentican.

Nota: Las conexiones de otros clientes, como la lista de sucesos y la interfazinteractiva SQL, siempre se autentican.

Cuando se conecte a un ObjectServer seguro:v Cada sonda o servidor proxy que establezca una conexión debe tener las

propiedades AuthUserName y AuthPassword especificadas en su archivo depropiedades.

v Cada pasarela unidireccional que utiliza un archivo de propiedades debe tenervalores especificados para las propiedades Gate.Writer.Username,Gate.Writer.Password, Gate.Reader.Username y Gate.Reader.Password. Cadapasarela bidireccional que utiliza un archivo de propiedades tiene valoresespecificados para las propiedades Gate.ObjectServerA.Username,Gate.ObjectServerA.Password, Gate.ObjectServerB.Username yGate.ObjectServerB.Password. Cada pasarela que utilice un archivo deconfiguración debe tener valores especificados para los mandatos AUTH_USERy AUTH_PASSWORD en el archivo de configuración de pasarela.

Si la combinación de nombre de usuario y contraseña es incorrecta, el ObjectServeremite un mensaje de error y rechaza la conexión.

Puede elegir cualquier nombre de usuario válido para la propiedad AuthUserName,Gate.Writer.Username, Gate.Reader.Username, Gate.ObjectServerA.Username oGate.ObjectServerB.Username o el mandato AUTH_USER.

Los detalles de cifrado de contraseñas para trabajar en modalidad FIPS 140–2 y enmodalidad no FIPS 140–2 se describen en la tabla siguiente.

20 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 35: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 3. Cifrado de contraseñas en modalidad FIPS 140–2 y en modalidad no FIPS 140–2

Modalidad Acción

Modalidad FIPS140–2

Cuando se trabaja en modalidad FIPS 140–2, las contraseñas se puedenespecificar en texto sin formato o en formato cifrado. Puede cifrar lascontraseñas utilizando el cifrado de valor de propiedad, como se indicaa continuación:

1. Si todavía no dispone de una clave para cifrar la contraseña, creeuna ejecutando el programa de utilidad nco_keygen, que se halla en$NCHOME/omnibus/bin.

2. Ejecute el programa de utilidad nco_aes_crypt para cifrar lacontraseña con la clave que ha generado el programa de utilidadnco_keygen. El programa de utilidad nco_aes_crypt también seencuentra en $NCHOME/omnibus/bin. Fíjese que debe especificarAES_FIPS como algoritmo para utilizarlo a la hora de cifrar lacontraseña.

3. Abra el archivo de propiedades en el que desea añadir la contraseñacifrada y especifique esta salida cifrada para el valor AuthPassword.Nota: También debe establecer la propiedad ConfigKeyFile en elarchivo de claves que haya especificado cuando ejecutónco_aes_crypt y establezca la propiedad ConfigCryptoAlg en elalgoritmo de cifrado utilizado.

Modalidad noFIPS 140–2

Cuando se trabaja en modalidad distinta de FIPS 140–2, las contraseñasse pueden especificar en texto sin formato o en formato cifrado. Sinembargo, el cliente siempre transmite información de inicio de sesióncifrada independientemente del cifrado de contraseñas que se utiliza enel archivo de propiedades. Puede cifrar contraseñas utilizando elprograma de utilidad nco_g_crypt o utilizando el cifrado del valor depropiedad, como se indica a continuación:

v Para cifrar una contraseña utilizando el programa de utilidadnco_g_crypt, ejecute el mandato de la manera siguiente:

$NCHOME/omnibus/bin/nco_g_crypt contraseña_en_texto_sin_formato

En este mandato, contraseña_en_texto_sin_formato representa la formasin cifrar de la contraseña. El programa de utilidad nco_g_crypt tomala contraseña sin cifrar y muestra una versión cifrada. Abra elarchivo de propiedades en el que desea añadir la contraseña cifraday especifique esta salida cifrada para el valor AuthPassword.

v Para cifrar una contraseña utilizando el cifrado del valor depropiedad, necesita una clave que se genera con el programa deutilidad nco_keygen. Entonces podrá ejecutar nco_aes_crypt paracifrar la contraseña con la clave. Observe que puede especificarAES_FIPS o AES como algoritmo para cifrar la contraseña. Utilice AESsolamente si necesita mantener la compatibilidad con contraseñasque se cifraron utilizando las herramientas proporcionadas enversiones anteriores a la 7.2.1 de Tivoli Netcool/OMNIbus.

Abra el archivo en el que desea añadir la contraseña cifrada yespecifique esta salida cifrada para el valor AuthPassword.Nota: También debe establecer la propiedad ConfigKeyFile en elarchivo de claves que haya especificado cuando ejecutónco_aes_crypt y establezca la propiedad ConfigCryptoAlg en elalgoritmo de cifrado utilizado.

Una contraseña cifrada con nco_g_crypt se especifica del mismo modo que unacontraseña no cifrada cuando se conecta al ObjectServer. El ObjectServer detectaautomáticamente una contraseña cifrada y realiza el descifrado necesario paraverificar la contraseña durante la autenticación.

Capítulo 1. Configuración de ObjectServer 21

Page 36: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Atención: Las contraseñas cifradas con nco_g_crypt pueden utilizarse del mismomodo que las contraseñas no cifradas para acceder al ObjectServer. Por lo tanto,debe establecer los permisos adecuados en cualquier archivo que contengacontraseñas cifradas para impedir el acceso no autorizado. Como alternativa, lascontraseñas que se hayan cifrado con nco_g_crypt deben cifrarse aún más connco_aes_crypt y los permisos del archivo de claves deben establecerse del modoadecuado.

Para obtener más información sobre el uso del cifrado de valores de propiedad,consulte la publicación IBM Tivoli Netcool/OMNIbus Installation and DeploymentGuide. Para obtener información sobre la ejecución de sondas y pasarelas enmodalidad segura, consulte la publicación IBM Tivoli Netcool/OMNIbus Probe andGateway Guide.Referencia relacionada:“Ejecución del servidor proxy en modalidad segura” en la página 44“Propiedades y opciones de línea de mandatos del servidor proxy” en la página 40

Actualizaciones de herramienta de cliente mediante IDUCUna gran cantidad de datos pasa entre el objectserver y un cliente de escritoriosiempre que se actualiza una lista de sucesos. Para evitar que se sobrecargue elobjectserver con solicitudes de actualizaciones de la lista de sucesos, el objectserverenvía una solicitud para el cliente de escritorio siempre es necesaria unaactualización. El escritorio luego solicita los datos actualizados del objectserver.

Esta solicitud se envía al escritorio a través de un enlace de comunicación queutiliza un protocolo de comunicación de inserción, supresión, actualización ocontrol (IDUC). La solicitud indica al escritorio que renueve todas lasvisualizaciones de la lista de sucesos. El protocolo IDUC actualiza pasarelas delmismo modo.

El cliente de escritorio se conecta a objectserver utilizando el puerto definido por elarchivo de interfaces para establecer el enlace de comunicación IDUC. El escritoriorecibe el número de zócalo de la conexión IDUC donde se recibirán lasactualizaciones de solicitud del objectserver.

Especificación del intervalo de actualización IDUCEl intervalo de actualización se controla mediante la propiedad granularidad deObjectServer o la opción de línea de mandatos -granularity , que se establece en60 segundos de forma predeterminada. El valor por defecto és óptimo para lamayoría de los sistemas. Reduciéndolo mejora el tiempo de respuesta de laherramientas de cliente pero aumenta el tráfico de la red y la carga deObjectserver.

Si necesita renovar IDUC con más frecuencia, configure la velocidad de renovaciónen la parte del cliente, por ejemplo, en el archivo de configuración de las pasarelas.

22 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 37: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Especificación del puerto IDUCDe forma predeterminada, cuando se inicia un objectserver, se elige un número depuerto disponible para la conexión iduc. También puede especificar el puertoIDUC que debe utilizarse. Debe especificar el puerto iduc al acceder a unobjectserver protegido por un cortafuegos.

En Unix, puede definir estos puertos actualizando el archivo /etc/services . EnWindows, actualice el archivo %SystemRoot%\system32\drivers\etc\services.

El archivo services tiene una entrada para cada objectserver en el formatosiguiente:nco_servername nnnn/tcp

En esta entrada, servername es el nombre del objectserver y nnnn es el número depuerto.

Entradas de ejemplo para objectservers denominadas NCOMS y DENCO son lassiguientes:nco_NCOMS 7070/tcpnco_DENCO 7071/tcp

El puerto se puede establecer en cualquier número no utilizado fuera del rango de1 a 1024, que se suele reservar como números de sistema.

Cuando el servicio /etc/services está gestionado por el servicio de informaciónde red (NIS), debe efectuar la entrada en el archivo de servicios NIS y despuéscopiar la configuración actualizada para todas las máquinas.

También puede utilizar la opción -listeningport en la línea de mandatosObjectserver para especificar el puerto iduc.

Configuración del ObjectServer para soporte multiculturalTivoli Netcool/OMNIbus da soporte a una gran variedad de codificaciones decaracteres de un solo byte y de varios bytes para su utilización en entornos locales.

Las siguientes propiedades del ObjectServer son relevantes para el proceso decaracteres de varios bytes:v Store.LocalizedSort: Utilice esta propiedad para habilitar la ordenación

localizada. La ordenación localizada está inhabilitada de forma predeterminadapara un óptimo rendimiento del sistema.

v Store.LocalizedSortCaseSensitive: Utilice esta propiedad para controlar lasensibilidad a mayúsculas y minúsculas en la ordenación localizada.

v RegexpLibrary: Utilice esta propiedad para habilitar el uso de la biblioteca deexpresiones regulares ampliada (TRE) POSIX 1003.2. La biblioteca de expresionesregulares NETCOOL estándar está habilitada de forma predeterminada para unóptimo rendimiento del sistema.

Puede establecer estas propiedades de una de las siguientes maneras:v Establezca las propiedades en el archivo de propiedades de ObjectServer

$NCHOME/omnibus/etc/nombre_servidor.props, donde nombre_servidor es elnombre especificado para el ObjectServer durante su creación.

v Cambie los valores desde la línea de mandatos al iniciar el ObjectServer con elmandato nco_objserv. La opción de línea de mandatos para la propiedad

Capítulo 1. Configuración de ObjectServer 23

Page 38: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Store.LocalizedSort es -storelocalesort. La opción de línea de mandatos parala propiedad Store.LocalizedSortCaseSensitive es -storecasesort. La opciónde línea de mandatos para la propiedad RegexpLibrary es -regexplib.

Nota: Si el nombre de usuario y la contraseña se verifican respecto a un origen deautenticación externo, deberá comprobar si este origen también da soporte acaracteres de varios bytes. Si no se admiten los caracteres de varios bytes, debeespecificar nombres de usuario y de contraseñas que utilicen caracteres ASCII.

Los nombres de los siguientes objetos de ObjectServer están restringidos acaracteres ASCII, empezando por una letra o un carácter de subrayado ycontinuando con letras, dígitos y subrayados:v Memstoresv Bases de datosv Tablasv Columnasv Filtros de restricciónv Privilegiosv Grupos de desencadenantesv Desencadenantesv Señalesv Procedimientosv Parámetrosv Variablesv Propiedadesv Objetos de archivo

Los nombres de objeto de archivo están limitados a los caracteres ASCIIespecificados, mientras que los nombres de vías de acceso están restringidos alos caracteres que están soportados por el sistema operativo. La codificación decaracteres que se utiliza para crear los archivos es la codificación que utiliza elObjectServer; esta codificación puede ser diferente a la del cliente.

Para obtener más información sobre el soporte multicultural para TivoliNetcool/OMNIbus, consulte IBM Tivoli Netcool/OMNIbus Installation and DeploymentGuide.Referencia relacionada:“Propiedades y opciones de línea de mandatos de ObjectServer” en la página 3

Almacenamiento de datos y puntos de controlLos datos de Objectserver se almacenan en memoria para un acceso de altavelocidad. El objectserver admite persistencia de datos utilizando puntos decomprobación y registros para copiar los datos en la memoria en el disco. Esto lepermite recuperar los datos después de que se produzca una conclusiónplanificada o inesperada.

24 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 39: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Almacenamiento de datos utilizando almacenes de memoriaLos almacenes de memoria son contenedores mantenidos por el objectserver ycontienen datos y las tablas de objectserver en memoria.

El ObjectServer utiliza los almacenes de memoria que aparecen descritos en lasiguiente tabla.

Tabla 4. Almacenes de memoria

Nombre de almacén dememoria Tipo de almacenamiento Descripción

MASTER_STORE Persistente Se utiliza para almacenardescripciones internas de datos deObjectServer.

TABLE_STORE Persistente Se utiliza para almacenar informaciónpara el escritorio, incluida la tablaalerts.status.

TEMP_STORE Transitorio Se utiliza para almacenar datos queno es necesario que seanpermanentes. Las tablas del sistemaque contienen información deconfiguración se almacenan aquí y sevuelven a crear en el arranque.

VIRTUAL_STORE Virtual Se utilizan principalmente paracatalogar datos que cambianrápidamente; por ejemplo, datossobre clientes conectados.

Puede cambiar el tamaño del almacén de memoria table_store utilizando elprograma de utilidad nco_store_resize .Referencia relacionada:“Modificación de los límites flexibles y fijos del almacén de memoria table_store”en la página 28

Introducción a la sincronización por puntos de comprobaciónEl objectserver admite persistencia de datos utilizando puntos de comprobación yregistros para copiar los datos en la memoria en el disco. Esto le permite recuperarlos datos después de que se produzca una conclusión planificada o inesperada.

Los tipos de archivos siguientes se mantienen en disco:v Archivos de punto de control, que contienen los datos de las tablas enteras.v Registros de reproducción, que contienen los cambios realizados en tablas desde

el último punto de comprobación.

Cada 60 segundos, se produce un punto de control, y todos los datos persistentesse copian en los archivos de punto de comprobación. Entre puntos decomprobación, se copian datos nuevos y modificados para reproducir archivos deregistro.

También se producen puntos de comprobación cada vez que se produce unaconclusión planificada de objectserver.

Capítulo 1. Configuración de ObjectServer 25

Page 40: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Creación de archivos de punto de comprobaciónLos archivos de punto de comprobación se generan para cada almacén de memoriapermanente.

Consejo: Sólo se comprueban los puntos de los almacenes de memoriapersistentes.

Los archivos de punto de comprobación se denominan de la forma siguiente:v $NCHOME/omnibus/db/nombre_servidor/nombre_almacén.chk0

v $NCHOME/omnibus/db/nombre_servidor/nombre_almacén.chk1

Los registros de reproducción también se generan para cada almacén de memoriapermanente. Los archivos de reproducción se denominan de la forma siguiente:v $NCHOME/omnibus/db/nombre_servidor/nombre_almacén.log0

v $NCHOME/omnibus/db/nombre_servidor/nombre_almacén.log1

El proceso de punto de comprobación escribe alternativamente en archvios . chk0y chk1. . Si un archivo se ha dañado durante una conclusión inesperada, los datosdel otro archivo de punto de comprobación y los registros de reproducción seutilizan para volver a crear las tablas de base de datos en la memoria. A medidaque se inicie cada punto de comprobación, el proceso de registro cambia al archivode registro alternativo. El archivo de registro más antiguo es suprimido antes delinicio del siguiente punto de comprobación.

Cuando se produce una conclusión planificada objectserver (porque se ejecuta elmandato ALTER SYSTEM SHUTDOWN), un archivo .tab se crea para cadaalmacén de memoria permanente. Este archivo se denomina storename.tab.

Por ejemplo, el archivo .tab del almacén maestro del objectserver se denomina:

$NCHOME/omnibus/db/NCOMS/MASTER_STORE.tab

El formato de estos archivos es específico del hardware y el sistema operativo enlos que se han creado.

Recuperación de datos durante el inicio de ObjectServerCuando objectserver se reinicia después de un conclusión planificada, la base dedatos se reconstruye utilizando los archivos .tab .

Cuando objectserver se reinicia después de una conclusión inesperada, la base dedatos se reconstruye utilizando los archivos de punto de control (. chk ) y deregistro de reproducción ( .log).

Programa de utilidad de verificación de punto de controlnco_check_store

El programa de utilidad nco_check_store comprueba que los archivos de punto decomprobación existentes son válidos. Éste está pensado para ser utilizado porautomatizaciones y puede ser utilizado sólo para comprobar almacenes deObjectServer que no se encuentran actualmente en uso.

El programa de utilidad nco_check_store informa de la validez de los archivos depunto de comprobación con los siguientes códigos de retorno:v 0: Success. Los archivos de punto de comprobación son válidos.

26 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 41: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

v 1: Failure. Los archivos de punto de comprobación no son válidos y no sepueden utilizar.

También puede utilizar el programa de utilidad nco_check_store desde la línea demandatos. Cuando se invoca desde la línea de mandatos, debe establecer el nivelde registro de mensajes en info para visualizar el progreso y los resultados de laprueba.

Nota: No ejecute nco_check_store cuando se esté ejecutando ObjectServer.

Las opciones de línea de mandatos de nco_check_store se describen en la tablasiguiente.

Tabla 5. Opciones de línea de mandatos de programa de utilidad de verificación de puntode comprobación

Opción de la línea de mandatos Descripción

-help Muestra la ayuda en las opciones de la línea demandatos y sale.

-memstoredatadirectory string Especifica la vía de acceso de la base de datos deObjectServer. El valor predeterminado es$NCHOME/omnibus/db.

-messagelevel string Especifica el nivel de registro de mensajes. Los valoresposibles son: debug, info, warn, error y fatal. El nivelpredeterminado es error.

Los mensajes que están registrados en cada nivel son lossiguientes:

v fatal: fatal sólo

v error: fatal y error

v warn: fatal, error y warn

v info: fatal, error, warn y info

v debug: fatal, error, warn, info y debug

Consejo: El valor de string puede ir en mayúsculas,minúsculas, o mezcla de mayúsculas y minúsculas.

-messagelog string Especifica la vía de acceso en la que se registran losmensajes. El valor predeterminado es stderr.

-server string Especifica el nombre de la base de datos ObjectServerque debe verificarse. El valor por defecto es NCOMS.

-version Muestra la información de versión en el programa deutilidad de verificación del punto de comprobación ysale.

Ejemplo de uso

Para utilizar nco_check_store desde una automatización para comprobar que losarchivos de copia de seguridad creados por el objectserver son válidos, establezcala opción memstoredatadirectory- de línea de mandatos para el directorio quecontiene la copia de seguridad.

Capítulo 1. Configuración de ObjectServer 27

Page 42: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Modificación de los límites flexibles y fijos del almacén dememoria table_store

Si la base de datos de alertas pasa a ser excepcionalmente grande, puede utilizarun mandato para cambiar los límites flexibles y fijos.

Si la base de datos de alertas pasa a ser excepcionalmente grande, se muestra elmensaje siguiente:Se ha superado el límite flexible de región

Esto significa que el almacén de memoria table_store, donde se almacenan losdatos de tabla de alerta, ha alcanzado su tamaño máximo. Puede utilizar elmandato ALTER MEMSTORE para cambiar el límite flexible. Por ejemplo, ennco_sql, especifique:ALTER MEMSTORE table_store SET SOFT LIMIT 500 M;

El límite flexible no se puede establecer en un tamaño mayor al límite fijo, que sepuede cambiar utilizando el programa de utilidad nco_store_resize . Esteprograma permite cambiar el límite fijo del almacén de memoria table_store delobjectServer especificado.

Nota: Antes de ejecutar el programa de utilidad nco_store_resize , deberá haceruna copia de seguridad del objectserver utilizando el mandato ALTER SYSTEMBACKUP y después cerrar el objectserver.

Las opciones de línea de mandatos del programa de utilidad nco_store_resize sedescriben en la tabla siguiente.

Tabla 6. Opciones de línea de mandatos de programa de utilidad de redimensionamiento dealmacén de memoria

Opción de la línea de mandatos Descripción

-help Muestra la ayuda en las opciones de la línea demandatos y sale.

-messagelevel string Especifica el nivel de registro de mensajes. Los valoresposibles son: debug, info, warn, error y fatal. El nivelpredeterminado es error.

Los mensajes que están registrados en cada nivel son lossiguientes:

v fatal: fatal sólo

v error: fatal y error

v warn: fatal, error y warn

v info: fatal, error, warn y info

v debug: fatal, error, warn, info y debug

Consejo: El valor de string puede ir en mayúsculas,minúsculas, o mezcla de mayúsculas y minúsculas.

-messagelog string Especifica la vía de acceso en la que se registran losmensajes. El valor predeterminado es stderr.

28 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 43: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 6. Opciones de línea de mandatos de programa de utilidad de redimensionamiento dealmacén de memoria (continuación)

Opción de la línea de mandatos Descripción

-newhardlimit integer Especifica el nuevo límite fijo para el almacén dememoria, en Mb. El valor por defecto es 500 MB. Nopuede establecer un límite fijo que sea mayor que eltamaño máximo del almacén de memoria. Si supera eltamaño de almacén, se trunca el límite fijo en el tamañomáximo permitido del almacén de memoria.

El tamaño máximo permitido (en MB) de almacén dememoria para la plataforma asociada se muestra acontinuación:

v AIX: 2047

v HPUX: 1024

v Linux x86: 2047

v Solaris: 2047

v Windows: 700

v zLinux: 1024

-server string Especifica el nombre del objectserver para el que seaumentará el tamaño del almacén de memoria. El valorpor defecto es NCOMS.

-version Muestra la información de versión en el programa deutilidad de verificación del punto de comprobación ysale.

Referencia relacionada:“Modificación de los valores predeterminados y actuales del ObjectServer(mandato ALTER SYSTEM)” en la página 193

Envío de alertas al objectserver utilizando nco_postmsgPuede enviar una alerta a un objectserver directamente utilizando el programa deutilidad nco_postmsg . Este programa de utilidad acepta los pares nombre-valorpara los datos de alerta y construye una sentencia insert de SQL, que se utilizapara insertar una nueva fila de datos en una tabla de base de datos especificada enel objectserver.

Puede utilizar el programa de utilidad nco_postmsg como un reemplazo para elprograma de utilidad IBM Tivoli Enterprise console postemsg y el programa deutilidad postzmsg .

Puede ejecutar nco_postmsg desde la línea de mandatos o puede desarrollar scriptso automatizaciones que utilizan el mandato nco_postmsg para enviar alertas alobjectserver. La frecuencia de ejecución puede variar desde unas pocas veces al díacuando se ejecuta desde la línea de mandatos, a unas pocas veces al segundocuando se ejecuta desde un script. Varias instancias del programa de utilidadnco_postmsg también pueden ejecutarse simultáneamente. Algunos ejemplos deluso del programa de utilidad nco_postmsg son los siguientes:v Puede utilizar nco_postmsg para enviar alertas individuales al objectserver para

fines de diagnóstico o pruebas; por ejemplo, durante la configuración delsistema o al realizar la resolución de problemas de entrega de alerta.

v Puede utilizar nco_postmsg para enviar alertas que indican el inicio y el final deun periodo de mantenimiento.

Capítulo 1. Configuración de ObjectServer 29

Page 44: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

v Puede utilizar nco_postmsg cuando son necesarios comentarios de unaautomatización externa en el objectserver. Por ejemplo, supongamos que serecibe una alerta que genera una automatización externa que debe ejecutarse. Laautomatización externa activa un script que lleva a cabo una acción y el éxito ofracaso de esta acción debe registrarse en el objectserver. Puede incluir unmandato nco_postmsg en el script para insertar una nueva alerta con el estadode la acción, y adicionalmente configurar automatizaciones de objectserver paraprocesar la nueva alerta.

El programa de utilidad nco_postmsg se instala con la función Soporte deanalizador de Tivoli Netcool/OMNIbus, así que puede ser desplegado porseparado de otras funciones Tivoli Netcool/OMNIbus, sobre uno o más hosts. Unarchivo de propiedades llamado nco_postmsg.Props está disponible para elprograma de utilidad.

El programa de utilidad nco_postmsg puede establecer una conexión segura aobjectserver mediante SSL tanto en modalidad FIPS 140-2 como en la que no lo es.

Para enviar una alerta a un objectserver, especifique el mandato siguiente:

$NCHOME/omnibus/bin/nco_postmsg [ -option [ value ] ... ]"column_name=column_value" ...

En este mandato:v -option es la opción de línea de mandatos nco_postmsg y value es el valor para el

que está estableciendo la opción. No todas las opciones le requieren especificarun valor.

v column_name es un nombre de columna válido en la tabla de base de datos en laque desea insertar la alerta y column_value es el que coincide con el valor dedatos que desee insertar. Cada par de nombre-valor para column_name =column_value debe especificarse entre comillas dobles, tal como se muestra en lasintaxis del mandato. Adicionalmente, column_value debe incluirse entre comillassimples si no es un valor de serie.

Nota: Si envía una alerta a la tabla alerts.status, un par de nombre-valor para elcampo del identificador es obligatorio. Para obtener orientación sobre laconfiguración de un valor para la columna Identificador, consulte eldocucumento Mejores prácticas de integración de IBM Tivoli Netcool/OMNIbus, queestá disponible en https://www-304.ibm.com/jct01003c/software/brandcatalog/portal/opal/details?catalog.label=1TW10NC10.

Consejo: Al especificar column_value , utilice un tipo de datos que sea adecuadopara el campo de objectserver. Puede utilizar netcool/Omnibus Administradorpara comprobar los tipos de datos que se asignan a campos de tablas de base dedatos, o puede utilizar el mandato SQL DESCRIBE de objectserver.

Ejecución de nco_postmsg en codificación UTF-8

Puede ejecutar el programa de utilidad nco_postmsg en codificación UTF-8utilizando la opción de línea de mandatos utf8enabled-. No puede, no obstante,especificar los pares de nombre-valor directamente desde la línea de mandatos ydebe, en su lugar, añadir las parejas de nombre-valor en un archivo de texto. En elarchivo de texto, se debe especificar cada par de nombre-valor en una líneaseparada y escribir el valor entre comillas simples si es un valor de serie. Elarchivo de texto debe estar en la codificación UTF-8 y puede contener datos para

30 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 45: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

una única alerta únicamente. El archivo de propiedades nco_postmsg.propstambién debe estar en codificación UTF-8.

La sintaxis para la ejecución de nco_postmsg en codificación UTF-8 es:

$NCHOME/omnibus/bin/nco_postmsg [ -option [ value ] ... ] -utf8enabled TRUE< file_name.txt

En este mandato:v -option es cualquiera de las opciones de línea de mandatos nco_postmsg

(distintas de -utf8enabled ), y value es el valor para el que está estableciendo laopción.

v file_name.txt es el archivo que contiene los pares de nombre-valor.

Proceso de errores

Cuando el programa de utilidad nco_postmsg se ejecuta, lee su archivo depropiedades, valida cualquier opción de la línea de mandatos especificada ydespués crea la sentencia INSERT utilizando los pares nombre-valor que se hanespecificado. Se envían alertas al objectserver que proporcionan los pares denombre-valor especificados y las opciones de línea de mandatos introducidas sonválidas. Cualquier error que se produzca se categoriza de la forma siguiente:

Errores que causan que se grabe la alerta real en un archivo de caché.Si se produce un error de comunicación porque objectserver está inactivo oestá tardando demasiado en responder, el programa de utilidadnco_postmsg guardará la alerta en un archivo de memoria cachédenominado nco_postmsg memoria caché. y luego concluirá la ejecución.Las siguientes alertas generadas mientras exista una anomalía decomunicación también se graban en el archivo de memoria caché. Cuandola memoria caché alcanza su tamaño máximo, el archivo se renombra conun sufijo _old y se crea un nuevo archivo nco_postmsg.cache . Si ya existeun archivo llamado nco_postmsg cache_old. , se suprime durante elproceso de redenominación y su contenido se pierde.

Consejo: El límite de tiempo de respuesta del objectserver se establece porla propiedad Ipc.Timeout de nco_postmsg , y el tamaño máximo de lamemoria caché se establece mediante la propiedad MaxCacheFileSize .

La próxima vez que se ejecute el programa de utilidad nco_postmsg y sepuede conectar correctamente a objectserver, se envían alertas alobjectserver en el orden siguiente:1. Alertas en el archivo nco_postmsg cache_old. (si existe uno). Las

alertas se envían en orden de antigüedad, empezando por la másantigua. Una vez vacío, el archivo se suprime.

2. Alertas en el archivo nco_postmsg.cache. Cuando está vacío, el archivose trunca a 0 bytes.

3. La alerta actual, que se ha generado cuando se ha ejecutado elprograma de utilidad nco_postmsg .

Errores que causan que descarte la alerta real.Alertas que se descartan debido a las condiciones siguientes:v Errores de línea de mandatos: se ha especificado una vía de acceso del

archivo de propiedades no válida o se ha especificado una sintaxis noválida para los pares nombre-valor.

Capítulo 1. Configuración de ObjectServer 31

Page 46: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

v Errores de autenticación: la autenticación con ObjectServer ha falladodebido a que las credenciales de inicio de sesión no son válidas, elnombre de objectserver no es válido o se han producido errores de SSL.

v Errores de base de datos: no se ha establecido el permiso de escritura detabla de base de datos, el nombre de tabla de base de datos no es válidoo se ha producido un error de sintaxis en la sentencia INSERTconstruida.

v Errores de archivo: Se ha producido un error al escribir la entrada en elarchivo de memoria caché o se han producido errores de sintaxis en elarchivo de propiedades.

Todos los errore se esriben en un archivo de registro.

Notas adicionalesv Los usuarios de nco_postmsg están sujetas al sistema de autorización de

objectserver y, por tanto, necesitan permisos de inserción en la tabla de base dedatos en la que se graban los datos.

v Si no está establecido dentro del archivo de propiedades, la contraseña esobligatoria cuando el programa de utilidad nco_postmsg se ejecuta desde la líneade mandatos.

v Si el programa de utilidad nco_postmsg inserta datos en la tabla alerts.status,establece el valor de las columnas FirstOccurrence y LastOccurrence en la horaUnix actual o la hora POSIX, a menos que estos valores de columnas no esténexplícitamente especificados en la línea de mandatos o en un script.

v Si se especifica un valor para la columna Clase al ejecutar nco_postmsg , seañade un par de nombre-valor a la sentencia INSERT. Si no se especifica ningúnvalor para Clase, el ObjectServer asigna la clase predeterminada del 0 (cero) a laalerta.

v Se pueden configurar varias instancias del programa de utilidad nco_postmsgpara almacenar en caché alertas al mismo archivo utilizando la propiedadCacheFile .

v En el caso improbable de que se produzca un error de comunicación mientras seestán enviando alertas a partir de un archivo de caché a la tabla alerts.status, lasalertas se retienen en el archivo de memoria caché. El programa de utilidadnco_postmsg intenta reenviar las alertas la próxima vez que el programa deutilidad se ejecuta. Esto puede provocar que las alertas se envíen más de unavez, en cuyo caso, se incrementará el campo Tally de forma imprecisa.

Conceptos relacionados:Capítulo 4, “Utilización del administrador de Netcool/OMNIbus para configurarObjectServers”, en la página 63Referencia relacionada:“Visualización de detalles de columnas de una tabla o vista (mandato DESCRIBE)”en la página 192Apéndice A, “Tablas de ObjectServer”, en la página 349

32 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 47: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Propiedades y opciones de línea de mandatos denco_postmsg

El programa de utilidad nco_postmsg contiene un conjunto de propiedades y deopciones de línea de mandatos para enviar alertas al ObjectServer. Puede ejecutareste mandato desde el directorio $NCHOME/omnibus/bin.

El archivo de propiedades nco_postmsg es $NCHOME/omnibus/etc/nco_postmsg.props. En un archivo de propiedades sin editar, todas las propiedadesse establecen en los valores predeterminados y están comentadas con un signo dealmohadilla (#) al principio de la línea. Para sustituir un valor predeterminado,cambie su valor en el archivo de propiedades y elimine el signo de almohadilla (#).Si cambia un valor en la línea de mandatos, tanto el valor predeterminado como elvalor del archivo de propiedades se sustituyen.

Las propiedades y las opciones de línea de mandatos de nco_postmsg se describenen la tabla siguiente.

Tabla 7. Propiedades y opciones de línea de mandatos de nco_postmsg

PropiedadOpción de línea demandatos Descripción

CacheFile serie -cachefile serie Especifica la vía de acceso completa y el nombre delarchivo de memoria caché donde se almacenan las alertascuando no se pueden enviar al ObjectServer debido a unerror de comunicación. El valor predeterminado es$NCHOME/omnibus/var/nco_postmsg.cache.

Cuando el archivo de memoria caché alcanza su tamañomáximo, tal como especifica la propiedadMaxCacheFileSize, el nombre del archivonco_postmsg.cache cambia a nco_postmsg.cache_old y secrea un archivo nco_postmsg.cache nuevo.

CacheFileWarnThreshold entero N/D Hace que se escriba un mensaje de aviso en el archivo deregistro cuando el archivo nco_postmsg.cache supera unvalor de porcentaje especificado. Tenga en cuenta que estevalor no tiene ningún efecto en el archivonco_postmsg.cache_old. El valor predeterminado es 90%.

El rango es de 10% a 99%.

Capítulo 1. Configuración de ObjectServer 33

Page 48: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 7. Propiedades y opciones de línea de mandatos de nco_postmsg (continuación)

PropiedadOpción de línea demandatos Descripción

ConfigCryptoAlg serie N/D Especifica el algoritmo criptográfico que se va a utilizarpara los valores de serie de descifrado (incluidas lascontraseñas) que se han cifrado con el programa deutilidad nco_aes_crypt y, a continuación, se almacenaronen el archivo de propiedades. Establezca el valor serie talcomo se indica a continuación:

v En modalidad FIPS 140–2, utilice AES_FIPS.

v En modalidad distinta de FIPS 140–2, puede utilizarAES_FIPS o AES. Utilice AES solamente si necesitamantener la compatibilidad con contraseñas que secifraron utilizando las herramientas proporcionadas enversiones anteriores a la 7.2.1 de TivoliNetcool/OMNIbus.

El valor que especifique debe ser idéntico al que se utilizócuando se ejecutó nco_aes_crypt con el valor -c paracifrar los valores de serie.

Utilice esta propiedad junto con la propiedadConfigKeyFile.

El valor predeterminado es AES.

ConfigKeyFile serie N/D Especifica la vía de acceso y el nombre del archivo declaves que contiene la clave utilizada para descifrarvalores de series cifradas (incluidas las contraseñas) en elarchivo de propiedades.

La clave se utiliza durante la ejecución para descifrar losvalores de serie que se cifraron con el programa deutilidad nco_aes_crypt. El archivo de claves queespecifique debe ser idéntico al archivo utilizado paracifrar los valores de serie cuando se ejecutó nco_aes_cryptcon el valor -k.

Utilice esta propiedad junto con la propiedadConfigCryptoAlg.

N/D -help Muestra la ayuda sobre las opciones de línea de mandatosy finaliza.

Ipc.Timeout entero -ipctimeout entero Establece el tiempo, en segundos, que el programa deutilidad nco_postmsg espera una respuesta delObjectServer, al intentar enviar alertas. El valorpredeterminado es 60 segundos.

Si se supera este tiempo (o el ObjectServer está inactivo),se produce un error de comunicación y la alerta se envía,en cambio, al archivo de memoria caché.

MaxCacheFileSize entero -maxcachefilesizeentero

Establece el tamaño máximo del archivo de memoriacaché, en KB. El valor predeterminado es 10240 KB.

Si se establece en 0 (cero), no se crea ni se utiliza ningúnarchivo de memoria caché.

34 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 49: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 7. Propiedades y opciones de línea de mandatos de nco_postmsg (continuación)

PropiedadOpción de línea demandatos Descripción

MessageLevel serie -messagelevel serie Especifica el nivel de registro de mensajes. Los valoresposibles son: debug, info, warn, error y fatal. El nivelpredeterminado es warn.

Los mensajes que se registran en cada nivel son lossiguientes:

v fatal: solo fatal

v error: fatal y error

v warn: fatal, error y warn

v info: fatal, error, warn e info

v debug: fatal, error, warn, info y debug

Consejo: El valor de serie puede indicarse en mayúsculas,minúsculas o una combinación de ambas.

MessageLog serie -messagelog serie Especifica dónde se registran los mensajes. Los mensajesse pueden registrar en un archivo de registro o en stderr.

El valor predeterminado es $NCHOME/omnibus/log/nco_postmsg.log.

Name serie -name serie Especifica un nombre de cliente para el programa deutilidad nco_postmsg. Este nombre se utiliza comodescripción de la aplicación cuando nco_postmsg seconecta al ObjectServer. El valor predeterminado esnco_postmsg.

El valor de la propiedad Name también determina elnombre del archivo de propiedades, que adopta elformato siguiente: $NCHOME/omnibus/etc/name.props.Consejo: Puede utilizar la propiedad Name para distinguirentre varios clientes nco_postmsg que envían alertas alObjectServer y para mantener archivos de propiedadesindividuales por cliente.

Password serie -password serie Especifica la contraseña del usuario que se conecta alObjectServer. El valor predeterminado es ’’.

Props.CheckNames TRUE |FALSE

N/D Hace que el programa de utilidad nco_postmsg finalice sialguna propiedad especificada no es válida. El valorpredeterminado es TRUE.

PropsFile serie -propsfile serie Especifica la vía de acceso completa y el nombre delarchivo de propiedades del programa de utilidadnco_postmsg. El nombre predeterminado es$NCHOME/omnibus/etc/nco_postmsg.props.

Server serie -server serie Establece el nombre del ObjectServer al que se conecta elprograma de utilidad nco_postmsg y envía una alerta. Elvalor predeterminado es NCOMS.

SSLServerCommonName serie1,... N/D Especifica una lista separada por comas de nombrescomunes para utilizarla si el programa de utilidadnco_postmsg se conecta al ObjectServer mediante SSL. Elvalor predeterminado es ’’.

Table serie -table serie Establece el nombre de la tabla de base de datos en la quela sentencia INSERT añade los datos de alerta. El valorpredeterminado es alerts.status.

Capítulo 1. Configuración de ObjectServer 35

Page 50: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 7. Propiedades y opciones de línea de mandatos de nco_postmsg (continuación)

PropiedadOpción de línea demandatos Descripción

UserName serie -username serie

o

-user serie

Especifica el nombre de usuario que se utiliza paraautenticar al conectarse al ObjectServer. El valorpredeterminado es el nombre de usuario que se utilizapara iniciar sesión en el sistema.

N/D Windows

-utf8enabled TRUE |FALSE

Controla la codificación de datos que se traspasan o quegenera esta aplicación Windows.

Establezca el valor de -utf8enabled en TRUE para ejecutarla aplicación de la codificación UTF-8. El valorpredeterminado es FALSE, que obliga a utilizar la páginade códigos de sistema predeterminada.Importante: Aunque haya disponible una propiedadUTF8Enabled, el intento de habilitar la codificación UTF-8estableciendo esta propiedad en TRUE no tendrá ningúnefecto. Para realizar la codificación en formato UTF-8 enWindows, deberá utilizar siempre la opción de línea demandatos -utf8enabled.

N/D -version Muestra la información de versión del programa deutilidad y finaliza.

Ejemplos de nco_postmsg y sentencias INSERT resultantesEl programa de utilidad nco_postmsg acepta entrada de opciones de línea demandatos, scripts, o un archivo de texto y genera una sentencia SQL INSERT deObjectServer que se envía a un Objectserver. Los ejemplos siguientes muestran losmandatos nco_postmsg y las sentencias INSERT resultantes.

Ejemplo 1

Este ejemplo graba una alerta al objectserver NCOMS por defecto y la tablaalerts.status por defecto. El nombre de usuario y la contraseña para laautenticación en NCOMS no se han establecido en el archivo de propiedadesnco_postmsg y en su lugar se especifican desde la línea de mandatos.

El mandato nco_postmsg introducido es:nco_postmsg -user root -password "" "Identifier=’example 1’" "Severity=3""Manager=’nco_postmsg’" "Summary=’An event occurred’"

La sentencia INSERT resultante que se envía a la tabla alerts.status en NCOMS es:insert into alerts.status (Identifier,Severity,Manager,Summary,FirstOccurrence,LastOccurrence)values (’example 1’,3,’nco_postmsg’,’an event occurred’,1255341764,1255341764);

Puesto que los pares de nombre-valor no se han especificado explícitamente paraFirstOccurrence y LastOccurrence en el mandato nco_postmsg , FirstOccurrence yLastOccurrence se establecen automáticamente en la hora de Unix actual en lasentencia INSERT que se envía a la tabla alerts.status.

Ejemplo 2

Este ejemplo graba una alerta en la tabla alerts.status de un objectserverdenominado Presley. El programa de utilidad nco_postmsg se autentica en el

36 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 51: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

objectserver utilizando el nombre de usuario myname y una contraseña cifrada,que se especifican en el archivo de propiedades nco_postmsg .

En este caso, se supone que ha utilizado el cifrado de valor de propiedad paracifrar la contraseña en el archivo de propiedades de modo que la contraseña no sepueda leer sin una clave. Los valores del archivo de propiedades de la credencialesde inicio de sesión, incluido el cifrado de contraseña, no tienen marcas decomentario y se completan tal como se muestra a continuación:ConfigCryptoAlg: ’AES_FIPS’ConfigKeyFile: ’/dir/subdir/secret.txt’

...

Password: ’@44:Kris2m3QLsy+dZYNt3/jptl8cd7c6Fmboaj+E6XrNw8=@’UserName: ’myname’

El mandato nco_postmsg introducido es:nco_postmsg –server PRESLEY "Identifier=’example 2’" "Node=’London’"

La sentencia INSERT resultante que se envía a la tabla alerts.status en Presley es lasiguiente:insert into alerts.status (Identifier,Node,FirstOccurrence,LastOccurrence)values (’example 2’,’London’,1255341764,1255341764);

Ejemplo 3

Este ejemplo inserta una alerta en la tabla mybd.mytable en el objectserverNCOMS predeterminado. En este caso, se supone que un nombre de usuario y lacontraseña se especifican en el archivo de propiedades nco_postmsg .

El mandato nco_postmsg introducido es:nco_postmsg –table mydb.mytable "Identifier=’example 3’" "Occurrence=1234567890""Summary=’write into my table’"

La sentencia INSERT resultante que se envía a la tabla mydb.mytable en NCOMSes la siguiente:insert into mydb.mytable (Identifier,Occurrence,Summary)values (’example 3’,1234567890,’write into my table’);

Ejemplo 4

Este ejemplo muestra cómo ejecutar el programa de utilidad nco_postmsg encodificación UTF-8.

El programa de utilidad nco_postmsg se autentica en el objectserver utilizando elnombre de usuario myname y una contraseña, que se especifican en el archivo depropiedades nco_postmsg.props tal como se indica a continuación:Password: ’secret’UserName: ’myname’

Este archivo de propiedades debe guardarse en codificación UTF-8.

Un archivo de texto, my_data.txt , se crea con los siguientes pares nombre-valorpara que la alerta se envía al objectserver:Identifier=’example 2’Node=’London’

Capítulo 1. Configuración de ObjectServer 37

Page 52: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Este archivo de texto debe guardarse en codificación UTF-8.

Para ejecutar nco_postmsg en codificación UTF-8 y escribir una alerta en la tablaalerts.status de un objectserver denominado Presley (supuestamente ejecutándoseen codificación UTF-8), el mandato especificado es:nco_postmsg –server PRESLEY -utf8enabled TRUE < /file_path/my_data.txt

La sentencia INSERT resultante que se envía a la tabla alerts.status en Presley es lasiguiente:insert into alerts.status (Identifier,Node,FirstOccurrence,LastOccurrence)values (’example 2’,’London’,1255341764,1255341764);

38 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 53: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Capítulo 2. Configuración de un servidor proxy

El ObjectServer recibe información de alerta de los analizadores. En unaconfiguración estándar, las alertas se remiten directamente al ObjectServer. Puedeconfigurar un servidor proxy para reducir el número de conexiones de analizadorcon un ObjectServer.

Cuando un gran número de analizadores está enviando información de alertadirectamente al ObjectServer y se realiza también un gran número de conexionesde escritorio en el mismo ObjectServer, el impacto en el rendimiento puede sernegativo.

Un servidor proxy ofrece un almacenamiento intermedio para reducir el númerode conexiones directas al ObjectServer primario. Las diversas conexiones que elanalizador establece con el servidor proxy se multiplican y se remiten a través deuna sola conexión al ObjectServer.

En la figura siguiente se muestra cómo se comunican los analizadores con elservidor proxy.

Inicio del servidor proxyPuede iniciar el servidor proxy automáticamente utilizando el control de procesosen UNIX y Windows, y utilizando los servicios de Windows. También puedeiniciar manualmente el servidor proxy desde la línea de mandatos. En general,utilice el control de procesos para iniciar el servidor proxy.

Figura 1. Arquitectura de servidor proxy de ejemplo

© Copyright IBM Corp. 1994, 2011 39

Page 54: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Inicio de un servidor proxy utilizando el control de procesosEn UNIX y Windows, puede iniciar un servidor proxy como un proceso medianteel control de procesos. El servidor proxy debe estar definido como un proceso ocomo parte de un servicio.Conceptos relacionados:Capítulo 7, “Utilización del control de procesos para gestionar procesos yprocedimientos externos”, en la página 265

Inicio de un servidor proxy utilizando servicios (Windows)En Windows, opcionalmente puede instalar y ejecutar el servidor proxy comoservicio de Windows. Cuando el servicio está establecido en automático, elservidor proxy se inicia cuando se inicia el sistema.

Debe instalar y configurar manualmente el servidor proxy para que se ejecutecomo un servicio en un host de Windows.

Inicio manual del servidor proxyUtilice el mandato nco_proxyserv para iniciar el servidor proxy manualmente.

En la línea de mandatos, entre el mandato apropiado para el sistema operativo:

Tabla 8. Inicio del servidor proxy desde la línea de mandatos

Sistema operativo Mandato

UNIX $NCHOME/omnibus/bin/nco_proxyserv [ -name nombre_proxy ] [-server nombre_servidor]

Windows %NCHOME%\omnibus\bin\nco_proxyserv [ -name nombre_proxy ] [-server nombre_servidor]

En ambos mandatos, nombre_proxy es el nombre del servidor proxy ynombre_servidor es el nombre del ObjectServer. Si no especifica la opción de línea demandatos -name, el nombre del servidor proxy predeterminado es NCO_PROXY. Si noespecifica la opción de línea de mandatos -server, el servidor proxy guarda en elalmacenamiento intermedio las conexiones para el ObjectServer NCOMS.

Puede iniciar el servidor proxy con opciones de línea de mandatos adicionales.

Propiedades y opciones de línea de mandatos del servidorproxy

El servidor proxy lee su archivo de propiedades cuando se inicia. Si no seespecifica una propiedad en este archivo, se utiliza el valor predeterminado, amenos que se utilice una opción de línea de mandatos para alterarlotemporalmente. La ubicación predeterminada del archivo de propiedades es$NCHOME/omnibus/etc/servidor_proxy.props.

En el archivo de propiedades, una propiedad y su correspondiente valor seseparan con un signo de dos puntos (:). Los valores de serie van entre comillas;por ejemplo:ServerName: "NCO_PROXY"

Consejo: Puede cifrar valores de serie en un archivo de propiedades utilizando elcifrado de valores de propiedad.

40 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 55: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Las opciones de línea de mandatos para el servidor proxy utilizan el formatosiguiente:

nco_proxyserv [ -option [ value ] ... ]

En este mandato, -option es la opción de línea de mandatos y value es el valor queestá estableciendo para la opción. No cada opción precisa que especifique un valor.

Si no especifica un archivo de propiedades al iniciar un servidor proxy, se utilizaráel archivo predeterminado. Utilice la opción de línea de mandatos -propsfile paraespecificar la vía de acceso completa y el nombre de archivo de un archivo depropiedades alternativo.

La tabla siguiente lista las propiedades y las opciones de línea de mandatos delservidor proxy.

Tabla 9. Propiedades y opciones de línea de mandatos del servidor proxy

Propiedad Opción de línea de mandatos Descripción

AuthPassword serie N/D La contraseña asociada al nombre de usuarioutilizado para autenticar el servidor proxy alconectarse a un ObjectServer que se ejecuta enmodalidad segura. El valor predeterminado es’’.

Cuando se trabaja en modalidad FIPS 140–2, lacontraseña se puede especificar en texto sinformato o se puede cifrar con el programa deutilidad nco_aes_crypt. Si está cifrandocontraseñas mediante nco_aes_crypt enmodalidad FIPS 140–2, deberá especificarAES_FIPS como algoritmo de cifrado.

Cuando se trabajo en una modalidad distinta deFIPS 140–2, la contraseña se puede cifrar con losprogramas de utilidad nco_g_crypt onco_aes_crypt. Si está cifrando contraseñasutilizando nco_aes_crypt en una modalidaddistinta de FIPS 140–2, puede especificarAES_FIPS o AES como algoritmo de cifrado.Utilice AES solamente si necesita mantener lacompatibilidad con contraseñas que se cifraronutilizando las herramientas proporcionadas enversiones anteriores a la 7.2.1 de TivoliNetcool/OMNIbus.

AuthUserName serie N/D El nombre de usuario que se utiliza paraautenticar el servidor proxy al conectarse a unObjectServer que se ejecuta en modalidadsegura. El valor predeterminado es root.

Capítulo 2. Configuración de un servidor proxy 41

Page 56: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 9. Propiedades y opciones de línea de mandatos del servidor proxy (continuación)

Propiedad Opción de línea de mandatos Descripción

ConfigCryptoAlg serie N/D Especifica el algoritmo criptográfico que se va autilizar para los valores de serie de descifrado(incluidas las contraseñas) que se han cifradocon el programa de utilidad nco_aes_crypt y, acontinuación, se almacenaron en el archivo depropiedades. Establezca el valor serie tal comose indica a continuación:

v En modalidad FIPS 140–2, utilice AES_FIPS.

v En modalidad distinta de FIPS 140–2, puedeutilizar AES_FIPS o AES. Utilice AES solamentesi necesita mantener la compatibilidad concontraseñas que se cifraron utilizando lasherramientas proporcionadas en versionesanteriores a la 7.2.1 de TivoliNetcool/OMNIbus.

El valor que especifique debe ser idéntico al quese utilizó cuando se ejecutó nco_aes_crypt conel valor -c para cifrar los valores de serie.

Utilice esta propiedad junto con la propiedadConfigKeyFile.

ConfigKeyFile serie N/D Especifica la vía de acceso y el nombre delarchivo de claves que contiene la clave utilizadapara descifrar valores de series cifradas(incluidas las contraseñas) en el archivo depropiedades.

La clave se utiliza durante la ejecución paradescifrar los valores de serie que se cifraron conel programa de utilidad nco_aes_crypt. Elarchivo de claves que especifique debe seridéntico al archivo utilizado para cifrar losvalores de serie cuando se ejecutónco_aes_crypt con el valor -k.

Utilice esta propiedad junto con la propiedadConfigCryptoAlg.

ConnectionRatio entero -ratio entero Establece la proporción de conexiones entrantesde analizadores a conexiones salientes a unObjectServer. El valor predeterminado de 10crea una proporción de 10:1 entre conexionesentrantes y salientes.

N/D -help Muestra las opciones de línea de mandatossoportadas y sale.

N/D -logfile serie Establece el nombre del archivo en el que elservidor proxy anota mensajes, incluidos loserrores. De forma predeterminada, el archivo es$NCHOME/omnibus/log/nombre_servidor.log,donde el nombre_servidor está definido por laopción -name.

MaxConnections entero -max entero Establece el número máximo de conexionesdisponibles para analizadores. El valor mínimo(y predeterminado) es 30, y el valor máximo es250.

42 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 57: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 9. Propiedades y opciones de línea de mandatos del servidor proxy (continuación)

Propiedad Opción de línea de mandatos Descripción

NetworkTimeout entero -networktimeout entero Especifica un tiempo en segundos tras el cualun intento de inicio de sesión o conexión alObjectServer excede el tiempo de espera, si seproduce una anomalía en la red. Después delperiodo de espera especificado, el servidorproxy intenta volver a conectar con elObjectServer. Si la conexión no es correctadespués de un segundo período de espera, elservidor proxy intenta conectarse a unObjectServer de reserva, si hay uno disponible.El valor predeterminado es de 20 segundos.

OldTimeStamp TRUE | FALSE -oldtimestamp TRUE | FALSE Especifica el formato de indicación de fecha yhora que se va a utilizar en el archivo deregistro.

Establezca el valor en TRUE para visualizar elformato de indicación de fecha y hora que se hautilizado en la versión 7.2.1 o anterior de TivoliNetcool/OMNIbus. Por ejemplo:dd/MM/AAAA hh:mm:ss AM odd/MM/AAAA hh:mm:ss PM cuando elentorno local se establece en en_GB en unsistema Solaris 9.

Establezca el valor en False para visualizar elformato ISO 8601 en el archivo de registro. Porejemplo: AAAA-MM-DDThh:mm:ss, donde Tsepara la fecha y la hora, y hh es un reloj de 24horas. El valor predeterminado es FALSE.

N/D -propsfile serie Establece el nombre del archivo de propiedadesdel servidor proxy. El nombre predeterminadoes $NCHOME/omnibus/etc/nombre_servidor.props,donde el nombre_servidor está definido por laopción -name.

RemoteServer serie -server serie Establece el nombre del ObjectServer al que seconecta el servidor proxy. El valorpredeterminado es NCOMS.

SecureMode TRUE | FALSE -secure Establece la modalidad de seguridad delservidor proxy. Si está habilitado, el servidorproxy autentica solicitudes de conexión deanalizador con un nombre de usuario ycontraseña. Si está inhabilitado (el valorpredeterminado), los analizadores puedenconectarse al servidor proxy sin un nombre deusuario y una contraseña.

ServerName serie -name serie Establece el nombre del servidor proxy. Este esel nombre que se ha configurado en el Editor deservidor. El valor predeterminado es NCO_PROXY.

N/D -version Muestra información de la versión sobre elservidor proxy y sale.

Capítulo 2. Configuración de un servidor proxy 43

Page 58: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Referencia relacionada:“Ejecución del servidor proxy en modalidad segura”“Ejecución del ObjectServer en modalidad segura” en la página 20

Conexión al servidor proxyPara conectar analizadores al servidor proxy, especifique el nombre del servidorproxy en la propiedad Server del archivo de propiedades del analizador, o utilicela opción de línea de mandatos -server.

Todas las alertas se envían al servidor proxy.

Ejecución del servidor proxy en modalidad seguraPuede ejecutar el servidor proxy en modalidad segura. Al especificar la propiedadSecureMode o la opción de línea de mandatos -secure, el servidor proxy autenticalas conexiones de analizador solicitando un nombre de usuario y contraseña.

Cuando se envía una solicitud de conexión, el servidor proxy emite un mensaje deautenticación. El analizador debe responder con el nombre de usuario y contraseñacorrectos.

Si no especifica la opción -secure, las solicitudes de conexión de analizador no seautentican.

Al conectarse a un servidor proxy seguro, cada analizador debe tener unapropiedad AuthUserName y una propiedad AuthPassword especificada en su archivode propiedades. Si la combinación de nombre de usuario y contraseña esincorrecta, el servidor proxy emite un mensaje de error.

Puede elegir cualquier nombre de usuario válido para la propiedad AuthUserName.

Los detalles del cifrado de contraseñas para la ejecución en la modalidad FIPS140–2 y en modalidad no FIPS 140–2 se describen en la siguiente tabla.

44 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 59: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 10. Cifrado de contraseñas en modalidad FIPS 140–2 y modalidad no FIPS 140–2

Modalidad Acción

Modalidad FIPS140-2

Cuando se trabaja en modalidad FIPS 140–2, las contraseñas se puedenespecificar en texto sin formato o en formato cifrado. Puede cifrar lascontraseñas utilizando el cifrado de valor de propiedad, como se indicaa continuación:

1. Si todavía no dispone de una clave para cifrar la contraseña, creeuna ejecutando el programa de utilidad nco_keygen, que se halla en$NCHOME/omnibus/bin.

2. Ejecute el programa de utilidad nco_aes_crypt para cifrar lacontraseña con la clave que ha generado el programa de utilidadnco_keygen. El programa de utilidad nco_aes_crypt también seencuentra en $NCHOME/omnibus/bin. Fíjese que debe especificarAES_FIPS como algoritmo para utilizarlo a la hora de cifrar lacontraseña.

3. Abra el archivo de propiedades en el que desea añadir la contraseñacifrada y especifique esta salida cifrada para el valor AuthPassword.Nota: También debe establecer la propiedad ConfigKeyFile en elarchivo de claves que haya especificado cuando ejecutónco_aes_crypt y establezca la propiedad ConfigCryptoAlg en elalgoritmo de cifrado utilizado.

Modalidad noFIPS 140–2

Cuando se trabaja en modalidad distinta de FIPS 140–2, las contraseñasse pueden especificar en texto sin formato o en formato cifrado. Sinembargo, el cliente siempre transmite información de inicio de sesióncifrada independientemente del cifrado de contraseñas que se utiliza enel archivo de propiedades. Puede cifrar contraseñas utilizando elprograma de utilidad nco_g_crypt o utilizando el cifrado del valor depropiedad, como se indica a continuación:

v Para cifrar una contraseña utilizando el programa de utilidadnco_g_crypt, ejecute el mandato de la manera siguiente:

$NCHOME/omnibus/bin/nco_g_crypt contraseña_en_texto_sin_formato

En este mandato, contraseña_en_texto_sin_formato representa la formasin cifrar de la contraseña. El programa de utilidad nco_g_crypt tomala contraseña sin cifrar y muestra una versión cifrada. Abra elarchivo de propiedades en el que desea añadir la contraseña cifraday especifique esta salida cifrada para el valor AuthPassword.

v Para cifrar una contraseña utilizando el cifrado del valor depropiedad, necesita una clave que se genera con el programa deutilidad nco_keygen. Entonces podrá ejecutar nco_aes_crypt paracifrar la contraseña con la clave. Observe que puede especificarAES_FIPS o AES como algoritmo para cifrar la contraseña. Utilice AESsolamente si necesita mantener la compatibilidad con contraseñasque se cifraron utilizando las herramientas proporcionadas enversiones anteriores a la 7.2.1 de Tivoli Netcool/OMNIbus.

Abra el archivo en el que desea añadir la contraseña cifrada yespecifique esta salida cifrada para el valor AuthPassword.Nota: También debe establecer la propiedad ConfigKeyFile en elarchivo de claves que haya especificado cuando ejecutónco_aes_crypt y establezca la propiedad ConfigCryptoAlg en elalgoritmo de cifrado utilizado.

Si el ObjectServer se ejecuta en modalidad segura, el servidor proxy debe tenertambién las propiedades AuthUserName y AuthPassword en su archivo depropiedades para conectar el ObjectServer. Si la combinación de nombre de usuario

Capítulo 2. Configuración de un servidor proxy 45

Page 60: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

y contraseña es incorrecta, el ObjectServer emite un mensaje de error. El valorAuthPassword puede ser en texto sin formato o cifrado, como se describe en la tablaanterior.

Atención: Las contraseñas cifradas con nco_g_crypt se pueden utilizar de lamisma forma que las contraseñas no cifradas para acceder al ObjectServer. Por lotanto, debe establecer los permisos adecuados en los archivos que contengancontraseñas cifradas para impedir el acceso no autorizado. Como alternativa, lascontraseñas que se han cifrado con nco_g_crypt deben cifrarse más aún connco_aes_crypt, y los permisos en el archivo de claves deben establecerseadecuadamente.

Para obtener más información sobre las propiedades de analizador, consulte IBMTivoli Netcool/OMNIbus Probe and Gateway Guide.

46 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 61: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Capítulo 3. Configuración de un servidor de puente decortafuegos

En un entorno seguro en el que el objectserver y los sondeos están separados porun cortafuegos, configure un servidor de puente de cortafuegos, de modo que lossondeos puedan conectarse a objectserver desde fuera de la red segura.

En una configuración segura estándar, se reenvían alertas desde sondeosdirectamente al objectserver. Si los sondeos se encuentran fuera del cortafuegos, elcortafuegos rechaza conexiones al objectserver. Mediante la configuración de unservidor de puente de cortafuegos, puede solucionar esta restricción de seguridad.

El puente de cortafuegos consta de dos servidores: un puente de acceso deservidor y un puente de acceso de cliente que se ejecutan en cualquier lado delcortafuegos. El puente de acceso de servidor inicia un canal de comunicación entrelos dos servidores.

El puente de cortafuegos utiliza este canal de comunicación para crear nuevoscanales de datos entre el puente de acceso de servidor y el puente de acceso decliente. Las conexiones de cliente y los datos se pueden enviuar a objectserverfuera del cortafuegos. Los sondeos aún inician una conexión pero ahora se realizacon el puente de acceso de cliente local, situado en el mismo lado del cortafuegos.Esto permite al puente de acceso de cliente, situado fuera del cortafuegos,proporcionar flujo de datos al objectserver, situado dentro del cortafuegos.

La figura siguiente muestra el flujo de datos a través de un cortafuegos entre elobjectserver y dos sondeos situadas fuera del cortafuegos.

© Copyright IBM Corp. 1994, 2011 47

Page 62: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Configuración de un servidor de puente de cortafuegos estándarUn puente de cortafuegos puede configurarse para que un analizador puedaconectarse con un objectserver desde fuera de la red segura.

La figura siguiente muestra la preparación de configuración para un puente decortafuegos estándar:

Figura 2. Arquitectura de servidor de puente de cortafuegos de ejemplo

48 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 63: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

El flujo de configuración es el siguiente:

�1� El puente de acceso de cliente

El puente de acceso de cliente escucha las conexiones del puente de accesode servidor en el puerto y el nombre de host establecido en laspropiedades Bridge.ClientAP.Serverport y Bridge.ClientAP.Hostname delarchivo de propiedades de puente de acceso de cliente. El puente de accesode cliente también escucha las conexiones de analizadores en el puertoespecificado por la propiedad BridgeClientAP. Clientport .

�2� El puente de acceso de servidor

El puente de acceso de servidor realiza una conexión con el puente deacceso de cliente (en el cortafuegos) en el puerto y el nombre de hostestablecidos en las propiedades Bridge.ClientAP.Serverport yBridge.ClientAP.Hostname del archivo de propiedades de puente deacceso de servidor.

�3� El analizador

El analizador establece una conexión con el puerto de acceso de cliente delpuente de acceso de cliente conectando el puerto y el nombre de hostasociados con el nombre de servidor definido en el archivo de interfacesomni.dat.

�1� El puente de acceso de cliente

El puente de acceso de cliente solicita un nuevo flujo de datos desde elpuente de acceso de servidor.

�2� El puente de acceso de servidor

Figura 3. Configuración de servidor de puente de cortafuegos estándar

Capítulo 3. Configuración de un servidor de puente de cortafuegos 49

Page 64: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

El puente de acceso de servidor realiza una nueva conexión con elObjectServer (NCOMS) utilizando el puerto y el nombre de host asociadoscon el NCOMS en el archivo de interfaces omni.dat.

El puente de acceso de servidor realizar una nueva conexión de flujo dedatos con el puente de acceso de cliente.

�4� ObjectServer

Los paquetes de datos enviados desde el analizador (3) son recibidos por elpuente de acceso de cliente (1) y se direccionan a lo largo de la conexiónde flujo de datos asociada al puente de acceso de servidor (2). El puente deacceso de servidor reenvía los datos a lo largo de la conexión de redasociada a ObjectServer (4) y se devuelven datos en la misma conexión.

Configuración de un servidor de puente de varios cortafuegosLos servidores de puente de varios servidores pueden configurarse de modo quelos sondeos puedan conectarse con un objectserver de varios cortafuegos.

La figura siguiente muestra la preparación de configuración para servidores depuente de varios cortafuegos:

El flujo de configuración es el siguiente:

�1�

El analizador realiza una conexión inicial con el servidor de puente deacceso de cliente (CLIENT_ACCESS_A) en el host externo. Utiliza el puerto(10001) (externo) y el nombre de host (externo) asociado con el nombre deservidor NCOMS definido en el archivo Omni.DAT .

�2�

El servidor de puente de acceso de cliente (CLIENT_ACCESS_A)seguidamente solicita una nueva conexión del flujo de datos (a través de

Figura 4. Configuración de servidor de puente de cortafuegos múltiple

50 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 65: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

cortafuegos 2) de su servidor de puente de acceso de servidor asociado(SERVER_ACCESS_B) utilizando el canal de comunicación entre puentesexistente.

�3�

El servidor de puente de acceso de servidor (SERVER_ACCESS_B) realizauna nueva conexión con el servidor de puente de acceso de cliente(CLIENT_ACCESS_B). Utiliza el puerto (10001) y el nombre de host (dmz)asociado con el nombre de servidor NCOMS definido en el archivoOmni.DAT .

�4�

El servidor de puente de acceso de cliente (CLIENT_ACCESS_B)seguidamente solicita una nueva conexión del flujo de datos (a través decortafuegos 1) de su servidor de puente de acceso de servidor asociado(SERVER_ACCESS_A) utilizando el canal de comunicación entre puentesexistente.

�5�

El servidor de puente de acceso de servidor (SERVER_ACCESS_A) realizauna nueva conexión con el objectserver (NCOMS) en el host interno.Utiliza el puerto y el nombre de host asociados con NCOMS en el archivode interfaces Omni.DAT .

La nueva conexión es reconocida por el ObjectServer (NCOMS).

�6� y �7�

El servidor de puente de acceso de servidor (SERVER_ACCESS_A) iniciauna nueva conexión de flujo de datos (en el cortafuegos 1) con el servidorde puente de acceso de cliente (CLIENT_ACCESS_B) y, a su vez, se realizauna nueva conexión con el servidor de puente de acceso de servidor(SERVER_ACCESS_B).

�8� y �9�

El servidor de puente de acceso de servidor (SERVER_ACCESS_B) crea unanueva conexión de flujo de datos (en el cortafuegos 2) con el servidor depuente de acceso de cliente (CLIENT_ACCESS_A). Esta conexión esreconocida por el puente de acceso de cliente y, a su vez, se acepta laconexión de analizador entrante.

Los paquetes de datos están direccionados desde el analizador junto lasconexiones abiertas y los canales de flujo de datos iniciados por losservidores de puente y, finalmente, al ObjectServer (NCOMS).

Configuración de migración tras error de servidor de puente decortafuegos

Una arquitectura de migración tras error de servidor de puente de cortafuegosbásica incluye todos los componentes de la arquitectura básica junto con elservidor de puente de acceso de servidor y el servidor de puente de acceso decliente. Si una conexión inicial con el objectserver falla, el analizador intentaconectar con el objectserver utilizando un servidor de copia de seguridad depuernte de acceso de servidor y de puente de acceso de cliente.

Capítulo 3. Configuración de un servidor de puente de cortafuegos 51

Page 66: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

La siguiente figura ilustra una configuración de migración tras error básica deservidor de puente de configuración:

En la configuración básica de migración tras error de servidor de puente decortafuegos, host_a y host_b despliegan dentro del cortafuegos, y un nuevo host sedespliega fuera del cortafuegos.

El servidor de puente de acceso de servidor (Server_Access_P) se ejecuta en unhost_a (interno) y el puerto 4500 y se configura para que se conecte a objectserver(NCOMS_P) utilizando el nombre de host (primario) y el puerto (4100) definidosen el archivo de interfaces Omni.DAT . El servidor de puente de acceso de servidorse conecta al servidor de puente de acceso de cliente correspondientes(Client_Access_P) que se ejecuta en el host externo con el puerto de servidorexterno: 10002 y puerto de cliente: 10001 definido.

El servidor de puente de acceso de servidor (Server_Access_B) se ejecuta en unhost_b (interno) y el puerto 4500 y se configura para que se conecte a objectserver(NCOMS_B) utilizando el nombre de host (primario) y el puerto (4100) definidosen el archivo de interfaces Omni.DAT . El servidor de puente de acceso de servidorse conecta al servidor de puente de acceso de cliente correspondientes(Client_Access_B) que se ejecuta en el host externo con el puerto de servidorexterno: 10102 y puerto de cliente: 10101 definido.

Figura 5. Configuración de migración tras error básica

52 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 67: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

El analizador crea una conexión inicial con el puerto 10001 en el servidor depuente de acceso de cliente (Client_Access_P) y, a continuación, direcciona losdatos por el cortafuegos a ObjectServer (NCOMS_P) utilizando el servidor depuente de acceso de servidor (Server_Access_P). Si dicha conexión no se encuentradisponible, el analizador utiliza el puerto 10101 en el servidor de puente de accesode cliente (Client_Access_B) para direccionar los datos por el cortafuegos alObjectServer (NCOMS_B) utilizando el servidor de puente de acceso de servidor(Server_Access_B).

Inicio del servidor de puente de cortafuegosPuede iniciar el servidor de puente de cortafuegos automáticamente utilizandocontrol de proceso en Unix y Windows y también utilizando servicios en Windows.También puede iniciar el servidor de puente de cortafuegos manualmente desde lainterfaz de línea de mandatos.

Inicio del servidor de puente de cortafuegos utilizando elcontrol de proceso

En Unix y Windows, puede iniciar un servidor de puente de cortafuegos como unproceso utilizando el control de proceso. El servidor de puente de cortafuegos debedefinirse como proceso o parte de un servicio.Conceptos relacionados:Capítulo 7, “Utilización del control de procesos para gestionar procesos yprocedimientos externos”, en la página 265

Inicio del servidor de puente de cortafuegos utilizandoservicios Windows

En Windows, opcionalmente, puede instalar y ejecutar el servidor de puente decortafuegos como un servicio Windows. Cuando el servicio se establece enautomático, el servidor de puente se inicia cuando se inicia el sistema.

Debe instalar y configurar manualmente el servidor de puente de cortafuegos paraejecutarse como un servicio en un host Windows.

Para obtener más información sobre cómo instalar y configurar un agente deproceso como servicio Windows, consulte IBM Tivoli Netcool/OMNIbus Installationand Deployment Guide.

Inicio manual del servidor de puente de cortafuegosUtilice el mandto nco_bridgeserv para iniciar el servidor de puente de cortafuegosmanualmente.

En la línea de mandatos, especifique el mandato adecuado para el sistemaoperativo:

Tabla 11. Inicio del servidor de puente de cortafuegos desde la interfaz de línea de mandatos

Sistema operativo Mandato

UNIX $NCHOME/omnibus/bin/nco_bridgeserv [ -name bridgename ]

Windows %NCHOME%\omnibus\bin\nco_bridgeserv [ -name bridgename ]

Capítulo 3. Configuración de un servidor de puente de cortafuegos 53

Page 68: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

En ambos mandatos, bridgename es el nombre del servidor de puente decortafuegos. Si no especifica la opción de línea de mandatos -name, el nombre poromisión del servidor de puente de cortafuegos será NCO_BRIDGE .

Puede iniciar el servidor de puente de cortafuegos con opciones adicionales delínea de mandatos.

Propiedades y opciones de línea de mandatos de servidor depuente de cortafuegos

El servidor de puente de cortafuegos lee su archivo de propiedades cuando seinicia. Si no se especifica una propiedad en este archivo, se utiliza el valorpredeterminado a menos que se utilice una opción de línea de mandatos parasobreescribirla. La ubicación predeterminada del archivo de propiedades es$nchome/Omnibus/etc/ bridgeserver . Props .

En el archivo de propiedades, una propiedad y su correspondiente valor seseparan con un signo de dos puntos (:). Los valores de serie están rodeados porcomillas; por ejemplo:ServerName: "NCO_BRIDGE"

Consejo: Puede cifrar valores de serie en un archivo de propiedades utilizando elcifrado de valor de propiedades.

Las opciones de línea de mandatos para el servidor de puente de cortafuegosutilizan el formato siguiente:

nco_bridgeserv [ -option [ value ] ... ]

En este mandato, -option es la opción de línea de mandatos y value es el valor enque está estableciendo la opción. No todas las opciones le requieren especificar unvalor.

Si no especifica un archivo de propiedades cuando se inicia un servidor de puentede cortafuegos, se utiliza el archivo predeterminado. Utilice la opción de línea demandatos -Propsfile para especificar la vía de acceso completa y el nombre dearchivo de propiedades alternativo.

La tabla siguiente lista las propiedades y las opciones de línea de mandatos delservidor de puente de cortafuegos.

54 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 69: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 12. Propiedades y opciones de línea de mandatos de servidor de puente de cortafuegos

PropiedadOpción de la línea demandatos Descripción

AuthPassword string -authpasswd string La contraseña asociada al nombre de usuarioutilizado para autenticar el servidor proxycuando se conecta a un objectserver que seejecuta en modalidad segura. El valor pordefecto es ’’.

Cuando se trabaja en modalidad FIPS 140–2, lacontraseña se puede especificar en texto sinformato o se puede cifrar con el programa deutilidad nco_aes_crypt. Si está cifrandocontraseñas mediante nco_aes_crypt enmodalidad FIPS 140–2, deberá especificarAES_FIPS como algoritmo de cifrado.

Cuando se trabajo en una modalidad distinta deFIPS 140–2, la contraseña se puede cifrar con losprogramas de utilidad nco_g_crypt onco_aes_crypt. Si está cifrando contraseñasutilizando nco_aes_crypt en una modalidaddistinta de FIPS 140–2, puede especificarAES_FIPS o AES como algoritmo de cifrado.Utilice AES solamente si necesita mantener lacompatibilidad con contraseñas que se cifraronutilizando las herramientas proporcionadas enversiones anteriores a la 7.2.1 de TivoliNetcool/OMNIbus.

AuthUserName string -authusername string El nombre de usuario que se utiliza paraautenticar el servidor proxy cuando se conecta aun ObjectServer que se ejecuta en modalidadsegura. El valor por defecto es ’’.

Bridge.AllowConnections TRUE| FALSE

-disallowconnections Si es true , un usuario puede conectarse alpuerto de mandato del servidor de puente decortafuegos. El valor predeterminado es TRUE.

Bridge.ClientAP.ClientPortunsigned

-cpclientport Especifica el puerto de escucha de cliente paraclientes Netcool de entrada (sólo CLIENT_AP).El valor por defecto es 10001.

Bridge.ClientAP.Hostnamestring

-cpclienthname string Especifica el nombre de host del servidor depuente de punto de acceso de cliente (sóloSERVER_AP). El valor predeterminado eslocalhost.

Bridge.ClientAP.ServerPortunsigned

-cpserverport Especifica el puerto de escucha de servidor declientes de puente de entrada. El valor pordefecto es 10002.

Bridge.PAMEnable TRUE | FALSE -pamdisable Si es true , un módulo PAM se utiliza paraautenticar inicios de sesión de cliente. El valorpredeterminado es TRUE.

Bridge.PAMServiceName string -pamsrvname string Especifica el nombre de servicio PAM utilizadopara la autenticación PAM. El valor por defectoes nco_bridgeserv.

Capítulo 3. Configuración de un servidor de puente de cortafuegos 55

Page 70: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 12. Propiedades y opciones de línea de mandatos de servidor de puente de cortafuegos (continuación)

PropiedadOpción de la línea demandatos Descripción

Bridge.RetryInterval unsigned -retryinterval string Especifica el intervalo de reintento (ensegundos) para comunicaciones de puente apuente (sólo SERVER_AP).

El valor por defecto es 30.

Bridge.Role string -bridgerole string Especifica el rol que realiza el servidor depuente de cortafuegos:

CLIENT_AP : El servidor de puente decortafuegos se ejecuta como un puente decliente.

SERVER_AP : El servidor de puente decortafuegos se ejecuta como un puente deservidor.

El valor por defecto es SERVER_AP.

Bridge.ServerAP.Server string -spserver string Especifica el nombre del objectserver al que elservidor de puente de cortafuegos debe remitirconexiones (sólo SERVER_AP). El valor pordefecto es NCOMS.

Bridge.ThreadPool.MaxJobsunsigned

-tpmaxjobs Especifica el número máximo de flujos de datosmanejados por un trabajador de la agrupaciónde hebras. El valor predeterminado es 10.

Bridge.TrustedHostFile boolean -trustedhostfile Especifica la vía de acceso del archivo deseguridad de hosts de confianza que utiliza elservidor de puente de cortafuegos. El valor pordefecto es $OMNIHOME/etc/NCO_BRIDGE.thosts.

Nota: Esto sólo se aplica al servidor de puentede CLIENT_AP. El servidor de puente deSERVER_AP no acepta ninguna conexión deentrada.

ConfigCryptoAlg serie N/D Especifica el algoritmo criptográfico que se va autilizar para los valores de serie de descifrado(incluidas las contraseñas) que se han cifradocon el programa de utilidad nco_aes_crypt y, acontinuación, se almacenaron en el archivo depropiedades. Establezca el valor serie tal comose indica a continuación:

v En modalidad FIPS 140–2, utilice AES_FIPS.

v En modalidad distinta de FIPS 140–2, puedeutilizar AES_FIPS o AES. Utilice AES solamentesi necesita mantener la compatibilidad concontraseñas que se cifraron utilizando lasherramientas proporcionadas en versionesanteriores a la 7.2.1 de TivoliNetcool/OMNIbus.

El valor que especifique debe ser idéntico al quese utilizó cuando se ejecutó nco_aes_crypt conel valor -c para cifrar los valores de serie.

Utilice esta propiedad junto con la propiedadConfigKeyFile.

56 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 71: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 12. Propiedades y opciones de línea de mandatos de servidor de puente de cortafuegos (continuación)

PropiedadOpción de la línea demandatos Descripción

ConfigKeyFile serie N/D Especifica la vía de acceso y el nombre delarchivo de claves que contiene la clave utilizadapara descifrar valores de series cifradas(incluidas las contraseñas) en el archivo depropiedades.

La clave se utiliza durante la ejecución paradescifrar los valores de serie que se cifraron conel programa de utilidad nco_aes_crypt. Elarchivo de claves que especifique debe seridéntico al archivo utilizado para cifrar losvalores de serie cuando se ejecutónco_aes_crypt con el valor -k.

Utilice esta propiedad junto con la propiedadConfigCryptoAlg.

Connections integer -connections integer Establece el número máximo de conexionesdisponibles para los clientes que se conectan alpuerto de administración.

El valor máximo es 1024. El valorpredeterminado es 30. El sistema puede utilizarun máximo de dos conexiones.

N/D -help Muestra las opciones de línea de mandatoscompatibles y sale.

Ipc.Timeout integer -ipctimeout integer Establece el tiempo, en segundos, que elprograma de utilidad nco_bridgeserv esperauna respuesta del objectserver. El valor pordefecto es 60.

MaxLogFileSize integer -maxlogfilesize integer Especifica el tamaño máximo (en KB) que elarchivo de registro puede alcanzar. El valor pordefecto es 1024 KB.

Cuando alcanza el tamaño especificado, elarchivo servername .log se renombraservername log_OLD. y se inicia un nuevoarchivo de registro. Cuando el nuevo archivoalcanza el tamaño máximo, se redenomina y elproceso se inicia de nuevo.

MessageLevel string -messagelevel string Especifica el nivel de registro de mensajes. Losvalores posibles son: debug, info, warn, error yfatal. El nivel predeterminado es warn.

Los mensajes que están registrados en cadanivel son los siguientes:

v fatal: fatal sólo

v error: fatal y error

v warn: fatal, error y warn

v info: fatal, error, warn y info

v debug: fatal, error, warn, info y debug

Consejo: El valor de string puede ir enmayúsculas, minúsculas, o mezcla demayúsculas y minúsculas.

Capítulo 3. Configuración de un servidor de puente de cortafuegos 57

Page 72: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 12. Propiedades y opciones de línea de mandatos de servidor de puente de cortafuegos (continuación)

PropiedadOpción de la línea demandatos Descripción

MessageLog string -messagelog string Especifica la vía de acceso en la que se registranlos mensajes. La vía de acceso por defecto es$NCHOME/omnibus/log/NCOMS.log.

Windows Si el sistema no puede escribir en elarchivo de registro especificado (por ejemplo,como resultado de un error muy grave) escrbieel error en un archivo denominado%NCHOME%\omnibus\log\nco_objserv*.err.

Name string -name string Establece el nombre de servidor de puente decortafuegos, que debe ser exclusivo. Este es elnombre que se ha configurado en el editor delservidor. El nombre por defecto es NCO_BRIDGE.

Props.CheckNames TRUE | FALSE N/D Cuando true , el servidor de puente decortafuegos no se ejecutará si ningunapropiedad especificada no es válida. El valorpredeterminado es TRUE.

PropsFile string -propsfile string Establece el nombre del archivo de propiedadesdel servidor de puente de cortafuegos. Elnombre predeterminado es servername . Props, donde servername está definido por la opción-name .

SecureMode TRUE | FALSE -secure Establece la modalidad de seguridad delservidor de puente de cortafuegos. Si se habilita,el servidor de puente de cortafuegos autenticasolicitudes de conexión de cliente con unnombre de usuario y contraseña. Si estáinhabilitada (valor predeterminado), los clientespueden conectarse con el servidor de puente decortafuegos sin un nombre de usuario y unacontraseña.

UniqueLog TRUE | FALSE -uniquelog Si es True , el archivo de registro se denominade forma exclusiva adjuntando el ID de procesodel servidor de puente al nombre del archivo deregistro predeterminado. Por ejemplo, si elservidor de puente de cortafuegosNCO_BRIDGE se está ejecutando como proceso1234, el archivo de registros se denominaNCHOME/omnibus/log/ NCO_BRIDGE.1234.log. Elvalor predeterminado es FALSE.

Si la propiedad messagelog se establece enstderr o stdout , la propiedad UniqueLog seignorará.

N/D -version Muestra información de versión sobre elservidor de puente y sale.

58 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 73: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Archivo de definición de hosts de confianzaEl servidor de puente de acceso de cliente se desplega a menudo en una red queno es segura y proporciona acceso remoto a un objectserver ubicado en una redinterna. Para impedir el acceso no autorizado al objectserver, el servidor de puentede acceso de cliente utiliza el archivo de definición de sistemas principales deconfianza para determinar qué sistemas principales tienen permiso para acceder asu puerto de cliente.

El archivo de definición de sistemas principales de confianza es un archivo detexto que lista todos los sistemas principales que poseen autoridad para acceder alpuerto de cliente de un servidor de puente de acceso del cliente. La conexión secancelará si el cliente que está intentando conectar con el puerto de cliente noaparece en el archivo de definición de sistemas principales de confianza. Si elarchivo de definición de sistemas principales de confianza contiene al menos unaentrada todas las conexiones entrantes deben coincidir con esa entrada. Si elarchivo de definición de sistemas principales de confianza no contiene ningunaentrada, se aceptarán todas las conexiones entrantes.

El archivo de definición de hosts de confianza se encuentra en la ubicaciónsiguiente: $OMNIHOME/etc/NCO_BRIDGE.thosts (UNIX) o %OMNIHOME%\etc\NCO_BRIDGE.thosts (Windows).

Nota: El archivo de hosts de confianza se comprueba sólo para conexiones deentrada al servidor de puente de acceso de cliente. No lo comprueba el servidor depuente de acceso de servidor.

Sintaxis

El archivo de definición de sistemas principales de confianza acepta entradas endiversos formatos: direcciones IP de ejemplo de IPv4 o IPv6, comodines y formatosde nombre de host legible. Se admiten comentarios adicionales.

## Trusted Hosts File## IPv4 address - Match this IPv4 address only:192.168.1.1

# IPv4 address/netmask - Match any IPv4 address within the 192.168.1.0 network:192.168.1.0/255.255.255.0

# IPv4 CIDR notation - Match any IPv4 address within the 192.168.1.0 network:192.168.1.0/24

# Hostname - Match that host name only:darkstar.example.com

# Hostname with wildcard - Match all hosts in the ibm.com domain:*.ibm.com

# IPv6 address - Match this IPv6 address only:[3ffe:1900:4545:3:200:f8ff:fe21:67cf]

# IPv6 CIDR notation - Match any IPv6 address within the3ffe:1900:4545:3:200:f8ff:fe21:0000 network:[3ffe:1900:4545:3:200:f8ff:fe21:67cf]/120

Capítulo 3. Configuración de un servidor de puente de cortafuegos 59

Page 74: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Inhabilitación del acceso al puerto de mandato interactivo en elservidor de puente de acceso de cliente

Para aumentar la seguridad, cualquier conexión realizada con el servidor depuente de acceso de cliente, mediante la interfaz interactiva SQL, puede serinhabilitada estableciendo la propiedad Bridge.AllowConnections en FALSE oejecutando el servidor de puente de acceso de cliente con el argumento de línea demandatos -disallowconnections. Esto puede ser necesario si el servidor de puentede acceso de cliente se ejecuta en una red no segura fuera de un cortafuegos.

Lenguaje de mandatos servidor de puente de cortafuegosEl servidor de puente de cortafuegos proporciona una interfaz de mandatos SQLpara fines de configuración y administración. Puede utilizar la interfaz interactivade SQL para conectarse a un servidor de puente de cortafuegos y ejecutarmandatos servidor de puente de cortafuegos.

Antes de empezar a utilizar el lenguaje de mandatos de puente cortafuegos,asegúrese de que se ha familiarizado con la interfaz interactiva de SQL, cómoiniciarla y cómo ejecutar mandatos SQL en la interfaz interactiva de SQL.Conceptos relacionados:“Interfaz interactiva SQL” en la página 145

SHOW PROPS y GET CONFIGUtilice los mandatos SHOW PROPS y GET CONFIG para listar todas laspropiedades de servidor de puente de cortafuegos y sus valores asociados.

SintaxisSHOW PROPS;GET CONFIG;

Ejemplo

Para listar todas las propiedades del servidor de puente cortafuegos y sus valoresasociados:1> show props;2> goNombre de propiedad Tipo Valor de propiedad-------------------------------- ---- -----------------------------------------------AuthPassword 7AuthUserName 7Bridge.AllowConnections 4 TRUEBridge.ClientAP.ClientPort 3 10001Bridge.ClientAP.Hostname 7 omnihostBridge.ClientAP.ServerPort 3 10002Bridge.PAMEnable 4 TRUEBridge.PAMServiceName 7 netcoolBridge.Role 7 SERVER_APBridge.ServerAP.Server 7 NCOMSBridge.ThreadPool.MaxJobs 3 10Bridge.TrustedHostFile 7 /opt/ibm/netcool/omnibus/etc/NCO_BRIDGE.thostsConfigCryptoAlg 7 AESConfigKeyFile 7Connections 2 30Help 4 FALSEIpc.QueueSize 2 1024Ipc.ServerCharacterSet 7 iso_1Ipc.ServerLanguage 7 us_englishIpc.ServerLocale 7 defaultIpc.SingleThreaded 4 FALSEIpc.SSLCertificate 7Ipc.SSLEnable 4 FALSEIpc.SSLPrivateKeyPassword 7

60 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 75: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Ipc.StackSize 2 131072Ipc.Timeout 2 60Ipc.TruncateVendorLogFile 4 TRUEIpc.VendorClientLibraryVersion 7 version stringIpc.VendorLogFileSize 2 1024Ipc.VendorServerLibraryVersion 7 version stringMaxLogFileSize 2 1024MessageLevel 7 debugMessageLog 7 stdoutName 7 NCO_BRIDGEPAAwareID 2 0PAServerName 7Props.CheckNames 4 TRUEPropsFile 7 /opt/ibm/netcool/omnibus/etc/NCO_BRIDGE.propsSecureMode 4 FALSEUniqueLog 4 FALSEVersion 4 FALSE

GET PROPUtilice el mandato GET PROP para devolver el valor de una propiedad específicade servidor de puente de cortafuegos.

SintaxisGET PROP[ERTY] <propname>;

Ejemplo

Para visualizar una propiedad de servidor de puente de cortafuegos y su valorasociado:1> get prop ’Name’;2> goProperty Name Type Property Value--------------------------------- ---- ----------------Name 7 NCO_BRIDGE

SHOW DATAFLOWSUtilice el mandato SHOW DATAFLOWS para listas los flujos de datos activos porun servidor de puente de cortafuegos.

SintaxisSHOW DATAFLOWS;

Ejemplo

Para listar los flujos de datos activos a través de un servidor de puente decortafuegos:1> show dataflows;2> goTPWorkerName DataflowID SPSocketFD CPSocketFD SPBytes CPBytes---------------------- ----------- ----------- ----------- ------- -------TPWorkerThread_0x74340 4033280 16 17 81 615

La salida representa una sola conexión de flujo de datos activa en el servidor depuente de cortafuegos, donde cada columna representa lo siguiente:

TPWorkerName Nombre interno de la hebra.

DataflowID Nombre interno del flujo de datos.

SPSocketFD El descriptor de archivo del sistema operativo del lado del servidor dela conexión.

Capítulo 3. Configuración de un servidor de puente de cortafuegos 61

Page 76: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

CPSocketFD El descriptor de archivo del sistema operativo del lado del cliente de laconexión.

SPBytes Número de bytes transferidos de nuevo desde el servidor a la conexióndel cliente.

CPBytes El número de bytes transferidos desde el cliente a la conexión delservidor.

SET LOG LEVEL TOUtilice el mandato SET LOG LEVEL TO para especificar el nivel de registro.

SintaxisSET LOG LEVEL TO level;

Donde level toma uno de los valores siguientes:

debug

información

aviso

error

muy grave

Ejemplo

Para listar todas las propiedades del servidor de puente cortafuegos y sus valoresasociados:1> set log level to DEBUG;2> go

CONCLUSIÓNUtilice el mandato SHUTDOWN para indicar al servidor de puente de cortafuegosque concluya.

Sintaxisshutdown;

Ejemplo

Para cerrar el servidor de puente de cortafuegos:shutdown;

62 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 77: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Capítulo 4. Utilización del administrador de Netcool/OMNIbuspara configurar ObjectServers

El ObjectServer almacena, gestiona y procesa datos de alerta y estado que serecopilan mediante aplicaciones externas, como sondas y pasarelas. Puede utilizarel administrador de Netcool/OMNIbus para configurar los objetos de ObjectServery para configurar el control de procesos.

Puede utilizar el administrador de Netcool/OMNIbus para configurar los objetosde ObjectServer siguientes:v Usuarios, grupos, roles y filtros de restricciónv Menús de lisa de sucesosv Herramientas y solicitudesv Grupos de desencadenantes y desencadenantesv Procedimientosv Señales definidas por el usuariov Colores de gravedad de alerta de lista de sucesos (sólo listas de sucesos de

Windows)v Conversionesv Clasesv Elementos visuales de columnav Bases de datos, archivos y propiedades de ObjectServerv Canales para la notificación acelerada de sucesos

Cómo empezar con Netcool/OMNIbus AdministratorNetcool/OMNIbus Administrator proporciona una interfaz visual en la que puedegestionar los objectservers y configurar el control de proceso.

Consideraciones para soporte multiculturalTivoli Netcool/OMNIbus da soporte a una amplia gama de codificaciones de unbyte i de varios bytes para su uso en distintos entornos locales.

Si se especifican nombres de usuario y contraseñas en caracteres de varios bytes yestas credenciales se van a verificar contra orígenes de autenticación externos,entonces esos orígenes también deben dar soporte a los caracteres de varios bytes.Si los caracteres multi-byte no están soportadas, nombres de usuario y contraseñasse deben especificar utilizando caracteres ASCII.

cuando utilice Netcool/OMNIbus Administrator, deberá asegurarse de que lacodificación del juego de caracteres de cada ObjectServer que se gestiona tenga unaentrada correspondiente en el archivo $NCHOME/omnibus/java/jars/csemap.dat. Estearchivo proporciona una correlación entre los convenios de denominaciones decodificaciones de juegos de caracteres Sybase y JRE. Si la codificación del juego decaracteres de un producto ObjectServer faltara en csemap.dat, deberá añadir unacorrelación a este archivo con el formato:Sybase_encoding Java_encoding

Por ejemplo:

© Copyright IBM Corp. 1994, 2011 63

Page 78: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

ascii_7 ASCII

Para obtener más información sobre el soporte multicultural, consulte lapublicación IBM Tivoli Netcool/OMNIbus Installation and Deployment Guide.

Inicio del administrador de Netcool/OMNIbusDebe ejecutar el programa de utilidad nco_config para iniciar el administrador deNetcool/OMNIbus.

Para iniciar el administrador de Netcool/OMNIbus en la línea de mandatos:1. Especifique el mandato adecuado para el sistema operativo:

Tabla 13. Inicio del administrador de Netcool/OMNIbus

Opción Descripción

UNIX $NCHOME/omnibus/bin/nco_config [ -opción valor ... ]

Windows %NCHOME%\omnibus\bin\nco_config.vbs [ -opción valor ... ]

En este mandato, -opción es una opción de línea de mandatos válida y valores el valor en el que va a establecer la opción.

2. Si es la primera vez que va a iniciar el administrador de Netcool/OMNIbus elarchivo de valores de comunicaciones ($NCHOME/etc/omni.dat en UNIX y%NCHOME%\ini\sql.ini en Windows) ha cambiado desde la última vez queinició el administrador de Netcool/OMNIbus, se ejecuta el asistente deimportación de conexiones. El asistente permite elegir los ObjectServers y losagentes de procesos que desea configurar mediante el administrador deNetcool/OMNIbus.

Consejo: Después de haber iniciado el administrador de Netcool/OMNIbus,puede seleccionar Archivo > Importar en cualquier momento para importar lainformación sobre comunicaciones nueva del archivo omni.dat (sql.ini enWindows). Para obtener más información sobre la configuración de lascomunicaciones de los componentes, consulte la publicación IBM TivoliNetcool/OMNIbus Installation and Deployment Guide.

Propiedades y opciones de línea de mandatos deNetcool/OMNIbus Administratornetcool/Omnibus Administrator contiene un conjunto de propiedades y opcionesde línea de mandatos para la configuración del componente.

El archivo de propiedades de Netcool/OMNIbus Administrator por defecto es$NCHOME/omnibus/etc/nco_config.props (%NCHOME%\omnibus\etc\nco_config.propsen Windows). El archivo de propiedades predeterminado se lee cada vez que inicienetcool/Omnibus Administrator; sin embargo, puede utilizar la opción de línea demandatos -propsfile para especificar un archivo de propiedades alternativas.

Puede utilizar el archivo de propiedades como plantilla y modificarlo para finesdiferentes. Por ejemplo, puede utilizar archivos de propiedades diferentes para elregistro cronológico en objectservers distintos.

Las propiedades y las opciones de línea de mandatos de nco_config ( nco_config.VBS en Windows) se describen en la siguiente tabla.

64 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 79: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 14. Propiedades y opciones de línea de mandatos de Netcool/OMNIbus Administrator

PropiedadOpción de la línea demandatos Descripción

audit.active 0 | 1 -auditlogactive 0 | 1 Determina si el registro de auditoría está habilitado.

El valor por defecto es 1; el registro de auditoría estáhabilitado.

audit.file.max.count integer -auditfilecount integer El número máximo de archivos de registro de auditoríade Netcool/OMNIbus Administrator.

El valor por defecto es 4.

audit.file.max.size integer -auditfilesize integer El tamaño máximo de archivo (en bytes) para los archivosde registro de auditoría de netcool/OmnibusAdministrator.

El valor predeterminado es 10000.

audit.file.name string -auditfile string La vía de acceso completa al archivo de registro deauditoría de netcool/Omnibus Administrator.

El valor por defecto es $NCHOME/omnibus/log/nco_config_audit.log.

N/D -help Muestra la ayuda en las opciones de la línea de mandatosy sale.

java.security.policy string -policyfile string La vía de acceso completa al archivo de política deseguridad Java.

log.console.active 0 | 1 -logtoconsole 0 | 1 Determina si la información de registro se envía al shellde mandatos.

El valor predeterminado es 1 ; la información de registrose envía al shell de mandatos.

log.directory.name string -logdir string La ubicación en la se guarda el archivo de registro desistema de netcool/Omnibus Administrator.

El valor por defecto es NCHOME/omnibus/log.

log.file.max.count integer -logfilecount integer El número máximo de archivos de registro de sistema deNetcool/OMNIbus Administrator.

El valor por defecto es 4.

log.file.max.size integer -logfilesize integer El tamaño máximo de archivo (en bytes) para los archivosde registro de sistema de netcool/Omnibus Administrator.

El valor predeterminado es 10000.

log.file.name string -logfile string El nombre del archivo de registro de sistema deNetcool/OMNIbus Administrator.

El valor por defecto es nco_config_system.log.Consejo: Para cambiar el directorio en el que se almacenaeste archivo, utilice la propiedad log.directory.name o laopción -logdir .

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 65

Page 80: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 14. Propiedades y opciones de línea de mandatos de Netcool/OMNIbus Administrator (continuación)

PropiedadOpción de la línea demandatos Descripción

messagelevel string -messagelevel string Especifica el nivel de registro de mensajes de sistema y elregistro de auditoría. Los valores posibles son: FATAL,ERROR, WARN, INFO y DEBUG. El nivel por defecto es ERROR.

Los mensajes que se registran en cada nivel se listan acontinuación:

FATAL - FATAL solamente.

ERROR - FATAL y ERROR.

WARN - FATAL, ERROR y WARN.

INFO - FATAL, ERROR, WARN y INFO.

DEBUG - FATAL, ERROR, WARN, INFO y DEBUG.Nota: El valor de string debe estar en mayúsculas.

nco_jdbc.timeout integer -jdbctimeout integer El tiempo de espera de Java Database Connectivity (JDBC)en segundos.

El valor predeterminado es 600.

N/D -propsfile string La vía de acceso completa al archivo de propiedades denetcool/Omnibus Administrator.

El valor por defecto es $NCHOME/omnibus/etc/nco_config.props (%NCHOME%\omnibus\etc\nco_config.props en Windows).

server string -server string El nombre de ObjectServer al que se está conectando.

system.create.conversion 0 |1

-createconversion 0 |1

Configure el sistema de forma que éste creeautomáticamente la conversión para usuarios que cree.

El valor predeterminado es 1 , que indica que lasconversiones se crean automáticamente.

system.conversion.type string -conversiontype string Crea una conversión entre el ID de usuario y el nombrede usuario o el nombre completo de cada usuario reciéncreado. Los valores posibles son fullname y username.

El valor por defecto es Fullname , que crea unaconversión entre el ID de usuario y el nombre completo.

user.name string -user string El nombre de usuario de inicio de sesión deNetcool/OMNIbus Administrator.

user.password string -password string La contraseña de inicio de sesión de Netcool/OMNIbusAdministrator.

N/D -version Muestra la información de versión y, a continuación, secierra.

66 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 81: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Proceso de línea de mandatos y propiedadCada propiedad del archivo de propiedades del netcool/Omnibus Administratortiene un valor predeterminado. En un archivo de propiedades sin editar, laspropiedades se listan con sus valores predeterminados, comentadas con un signo(#) al principio de la línea. Una propiedad y su correspondiente valor se separancon un signo de dos puntos (:).

Puede editar los valores de propiedad utilizando un editor de texto. Para alterartemporalmente el valor por omisión, cambie un valor en el archivo de propiedadesy elimine (#).

Si cambia un valor en la línea de mandatos, esto altera temporalmente tanto elvalor por omisión y el valor en el archivo de propiedades. Para simplificar elmandato que especifica para ejecutar nco_config , añada tantas propiedades comosea posible al archivo de propiedades, en lugar de utilizar las opciones de línea demandatos.

Conexión a un ObjectServerDespués de iniciar netcool/Omnibus Administrator, debe conectarse con elobjectserver que desea configurar.

Para conectarse a un ObjectServer:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Informes en el panel de la izquierda.

2. Pulse SO. Se abre la ventana Informe de ObjectServer. Muestra todos losobjectservers que se seleccionaron cuando se ejecutó por última vez el asistentede importación de conexiones.

3. Pulse el botón derecho del ratón sobre el ObjectServer al que desea conectarse.Desde el menú desplegable, lleve a cabo una de las acciones siguientes:v Pulse Conectarse como si se conecta por primera vez o desea especificar

información de conexión actualizada. Se le solicitará un nombre de usuario yla contraseña de objectserver.Si selecciona el recuadro de selección Utilizar siempre para esta conexión ,elnombre de usuario y la contraseña se guardan y se reutilizanautomáticamente para las conexiones con este objectserver. Si selecciona elrecuadro de selección Utilizar como predeterminado , los valoresespecificados para el nombre de usuario y contraseña se rellenanautomáticamente la próxima vez que aparece la ventana la conexión. Siselecciona ambos recuadros de selección, los valores de nombre de usuario ycontraseña de Utilizar siempre para esta conexión tienen prioridad. Estosvalores permanecen activos durante toda la sesión de aplicación.

v Pulse Conectar para utilizar la información de conexión previamenteespecificada.

4. Pulse Aceptar.

Figura 6. Botones de los menús Navegador e Informes

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 67

Page 82: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Resultados

El panel del centro es la ventana de configuración del ObjectServer. En esta área detrabajo puede ver, modificar, y gestionar objetos de objectserver.

Tareas relacionadas:“Selección de objetos ObjectServer para configurar” en la página 71

Conexión a un agente de procesoAntes de poder conectarse a un agente de proceso, debe asegurarse de que elproceso se ha iniciado.

Para conectarse a un agente de proceso:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Informes en el panel de la izquierda.

2. Pulse PA. El panel Informe de agente de procesos se abre y muestra todos losagentes de proceso que se han seleccionado cuando se ha ejecutado el asistenteImportar conexiones por última vez.

Consejo: Después de haber iniciado netcool/Omnibus Administrator, puedepulsar Archivo > Importar en cualquier momento para importar informaciónde nuevas comunicaciones del archivo Omni. DAT ( sql.ini en Windows). Para

Figura 7. Administrador de Netcool/OMNIbus: ventana de configuración de ObjectServer

Figura 8. Botones de los menús Navegador e Informes

68 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 83: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

obtener más información sobre la configuración de comunicaciones decomponente, consulte IBM Tivoli Netcool/OMNIbus Installation and DeploymentGuide.

3. Pulse con el botón derecho del ratón sobre el agente de procesos. Desde elmenú desplegable, lleve a cabo una de las acciones siguientes:v Pulse Conectarse como si se conecta por primera vez o desea especificar

información de conexión actualizada. Se abre la ventana Seguridad de agentede proceso. Complete esta ventana del modo siguiente:

Nombre de usuarioEscriba el nombre de usuario que se utiliza para iniciar la sesión enel agente de procesos.

En UNIX, cualquier usuario que necesite acceso al agente deprocesos deberá ser miembro de un grupo de usuarios de UNIX quese identifica como grupo de administración para este fin. EnWindows, el usuario debe ser un usuario válido con una cuenta localo de dominio.

ContraseñaEscriba la contraseña que se utiliza para iniciar la sesión en el agentede procesos.

Utilizar siempre para esta conexiónMarque esta casilla de verificación para indicar que debe guardarseel nombre de usuario y la contraseña especificados para reutilizarlosautomáticamente en sucesivos intentos de conexión a este agente deprocesos. Estos valores se mantendrán mientras permanezca activa lasesión de la aplicación.

Utilizar como valor predeterminadoMarque esta casilla de verificación si desea que los valoresespecificados como nombre de usuario y contraseña se rellenenautomáticamente la próxima vez que se muestre esta ventana. Estosvalores se mantendrán mientras permanezca activa la sesión de laaplicación.

Nota: Si marca ambas casillas, el valor de Utilizar siempre para estaconexión tendrá prioridad sobre el otro.

v Pulse Conectar para utilizar la información de conexión previamenteespecificada.

4. Pulse Aceptar.Se abre la ventana Detalles de clase/proceso. Esta ventana contiene informaciónacerca de los procesos y servicios configurados bajo este agente de proceso.

Conceptos relacionados:Capítulo 7, “Utilización del control de procesos para gestionar procesos yprocedimientos externos”, en la página 265

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 69

Page 84: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Trabajo con componentes Tivoli Netcool/OMNIbusDesde la barra de botones del panel de la izquierda de la ventana denetcool/Omnibus Administrator, debe seleccionar los componentes que desea ver oconfigurar.v Seleccione el botón de menú Informes y luego pulse Host , OS o PA . Seleccione

un objectserver para configurar desde la ventana Informe Objectserver o unagente de procesos para configurar en la ventana Informe PA .

v Seleccione el botón de menú Navegador para ver los componentes por nombrede host y, a continuación, seleccione el componente que desea configurar.

En la figura siguiente se muestran los botones de menú utilizados para seleccionarun componente.

Cuando selecciona un componente, la ventana o panel asociados se muestra en elárea de visualización de la derecha. Los botones de la barra de herramientas y loselementos de menú disponibles de la ventana netcool/Omnibus Administratorcambian en función de su selección.

Conexiones de capa de sockets segurosSi netcool/Omnibus Administrator está utilizando una conexión SSL cifrada paraun objectserver o agente de proceso, aparecerá un icono de bloqueo en la parteinferior, a la izquierda de la ventana.

Para obtener información sobre la utilización de SSL con Tivoli Netcool/OMNIbus,consulte IBM Tivoli Netcool/OMNIbus Installation and Deployment Guide.

Validación de certificados de servidorCuando Tivoli Netcool/OMNIbus está configurado para la comunicación SSL, elobjectserver y el agente de proceso presentan sus certificados de servidor al clientede netcool/Omnibus Administrator, bajo solicitud, para establecer una conexión.

Si se detecta un desajuste entre el nombre común definido en el certificado deservidor y el nombre de servidor que el cliente de netcool/Omnibus Administratorutiliza para identificar y conectarse al servidor, se abre una ventana Validación decertificados para que pueda elegir si se debe aceptar o rechazar el certificado deservidor. Las conexiones no se pueden establecer si el certificado no es válido.

La ventana Validación de certificados proporciona una razón para la solicitud devalidación y presenta unas opciones. Complete la ventana como se indica acontinuación:1. Seleccione una de las opciones para aceptar o rechazar el certificado:

v Aceptar este certificado de forma permanente : seleccione esta opción paraaceptar permanentemente este certificado como válido. Ya no se le pediráque acepte este certificado durante sesiones actuales o posteriores denetcool/Omnibus Administrator.

Figura 9. Botones de los menús Navegador e Informes

70 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 85: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Importante: Antes de aceptar el certificado, pulse Examinar certificado pararevisar el contenido del certificado en el archivo de la ventana Detalles decertificado . Tras un cuidadoso examen, pulse Aceptar para volver a laventana Validación de certificados .

v Aceptar este certificado temporalmente para esta sesión : seleccione estaopción para aceptar el certificado sólo para la sesión actual, después deexaminar el certificado utilizando el botón Examinar certificado . No segenerará ninguna otra solicitud mientras dure la sesión.

v No aceptar este certificado : seleccione esta opción para rechazar elcertificado y cancelar la conexión entre el servidor y el cliente.

2. Pulse Aceptar para continuar con el proceso de conexión. Pulse Cancelar (o elbotón Cerrar en la barra de título) para rechazar el certificadoindependientemente de la opción que haya seleccionado en el paso 1 en lapágina 70.

Resultados

Si opta por aceptar el certificado de forma permanente, el nombre común y laclave pública del certificado se registran en el archivo siguiente:

userdir/.netcool/nco_config_settings/user_allowed_certs.properties

En esta vía de acceso de archivo, userdir representa el directorio de inicio.

El archivo user_allowed_certs.properties es un archivo de sistema y no estápensado para ser modificado por usuarios. En siguientes intentos de conexión, estearchivo se lee y utiliza para identificar los nombres comunes que se han aceptadopreviamente.

Puede borrar el contenido del archivo de propiedades especificando el siguienteargumento de línea de mandatos:

mode.clear.certs "true"

Para obtener más información sobre certificados SSL, consulte IBM TivoliNetcool/OMNIbus Installation and Deployment Guide.

Selección de objetos ObjectServer para configurarUn conjunto de botones de menú está disponible en la parte izquierda de laventana de netcool/Omnibus Administrator para seleccionar el objeto ObjectServerque desea configurar.

Estos botones de menú se etiquetan de la manera siguiente:v Usuariov Menúv Automatizaciónv Visualv Sistema

Resultados

La figura siguiente muestra estos botones.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 71

Page 86: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Pulse cada botón del menú del para obtener un conjunto de objetos relacionadosque puede configurar. Los botones de la barra de herramientas y los elementos demenú disponibles de la ventana netcool/Omnibus Administrator cambian enfunción de su selección.

Trabajo con objetos

Cuando se trabaja con un objeto, hay varias formas disponibles para seleccionaruna opción: la barra de menús, la barra de herramientas y un menú emergente.Por ejemplo, si desea crear un usuario, primero debe seleccionar el botón deusuario Usuario y luego pulsar Usuarios para obtener el panel Usuarios. Acontinuación, puede llevar a cabo cualquiera de las acciones siguientes para crearel usuario:v Pulsar en Elemento > Añadir usuario.v Desde la barra de herramientas, pulse Añadir usuario.v Desde el panel Usuarios , pulse con el botón derecho del ratón y luego pulse

Añadir usuario en el menú emergente.Si está editando o suprimiendo objetos, puede realizar un conjunto equivalentede acciones. Si está editando objetos, también puede haga doble clic en el objetopara abrir la ventana para editar.

Consejo: También puede utilizar mandatos SQL para configurar el ObjectServer einteractuar con éste.

Establecimiento de preferencias en Netcool/OMNIbusAdministrator

Puede establecer preferencias en netcool/Omnibus Administrator ordenando tablas de resultados, establec iendo el aspecto de visualización utilizando vistas yseleccionando filas a visualizar utilización filtros. También puede copiar y pegar,configurar el coloreado de sintaxis y seleccionar un navegador de internet paravisualizar ayuda en línea.

Cómo ordenar tablas de resultadosMuchas ventanas de netcool/Omnibus Administrator (incluidas las ventanasInforme de host , Informe PA e Informe objectserver , los resultados de SQL y lastablas de base de datos) muestran información como tablas de resultados.

Puede hacer clic en un título de columna para clasificar las filas de la tabla por losvalores de esa columna. Pulse varias veces para seleccionar una clasificaciónascendente o descendente, indicada por la flecha hacia arriba o hacia abajo al ladodel título de columna.

Figura 10. Botones de menú Usuario, Menú, Automatización, Visual y Sistema

72 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 87: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Establecimiento del aspecto de visualización de columnautilizando vistasPuede cambiar cómo se muestran las columnas en tablas de resultados, queincluyen las ventanas Informe de host , Informe PA , Informe objectserver , losresultados de SQL y tablas de base de datos.

Para ocultar una columna, pulse con el botón derecho del ratón sobre la cabecerade columna y pulse Ocultar columna .

Para alinear una columna, pulse con el botón derecho del ratón sobre la cabecerade columna y pulse Alinear columna . A continuación, pulse Izquierda, Derecha oCentro.

Para seleccionar las columnas que se visualizarán de una lista de todas lascolumnas:1. Pulse el botón derecho del ratón sobre la cabecera de columna y pulse

Columnas de tabla. Se abrirá la ventana Valores de la columna.2. Seleccione las columnas que desea ver en la ventana actual. Puede pulsar el

nombre de una columna para seleccionarla o deseleccionarla. Aparecerá unamarca al lado de las columnas seleccionadas para su visualización. Pulse Cerrarpara guardar los valores.

Selección de filas para visualizar la utilización de filtrosPuede cambiar las filas que se visualizan en tablas de resultados, que incluyen lasventanas Informe de host , Informe PA e Informe objectserver , los resultados deSQL y las tablas de base de datos, mediante la creación de condiciones de filtro.

Para crear un filtro:1. Pulse con el botón derecho del ratón la cabecera de columna correspondiente a

la columna a la que desea aplicar un filtro y pulse Filtro en . Se abrirá laventana Filtrar.

2. Seleccione la columna, la operación de filtrado y el valor para la condición.

En la ventana Filtro, puede:v Pulse Aceptar para crear el filtro y cerrar la ventana.v Pulse Aplicar para crear el filtro y mantener la ventana abierta.v Pulse Cancelar para cerrar la ventana sin crear un filtro.

Para crear un filtro basándose en los valores de una celda de tabla particular:1. Pulse con el botón derecho del ratón en la celda y seleccione el icono de filtro.

Aparecerá un submenú con coincidencia de nombre y valor de la columna yuna selección de los operadores equals o not equals .

2. Seleccione la condición adecuada para el filtro.

Cuando se aplica un filtro a una tabla de resultados, el icono de filtro sevisualiza en la barra de estado. Para cada columna a la que se aplica un filtro, elicono también aparecerá en la cabecera de la columna.

Para ver todas las condiciones de filtro que se han aplicado a la tabla, pulse con elbotón derecho del ratón sobre la cabecera de columna y pulse Detalles de filtro .La ventana Valores de filtro muestra todas las condiciones de filtro que se aplicanactualmente a la tabla.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 73

Page 88: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Para eliminar todos los filtros, pulse el botón derecho del ratón sobre la cabecerade columna y pulse Consultar todos los valores .

Operaciones de copiar y pegarPuede utilizar las funciones Copiar y Pegar en el menú Editar en algunos tipos demenús. Por ejemplo, puede copiar una herramienta de objectserver existente,pegarla y, a continuación, modificarla para crear una nueva herramienta.

Puede copiar y pegar los elementos siguientes:v Usuarios (sólo en el mismo ObjectServer)v Filtros de restricciónv Menús y elementos de menúv Herramientasv Solicitudesv Desencadenantesv Procedimientosv Señales definidas por el usuariov Coloresv Elementos visuales de columnav archivos de objectserverv Bases de datosv Tablasv Procesos (en control de proceso)v Servicios (en control de proceso)

Configuración de colores de elementos de sintaxis en loseditores SQL por defectoPuede especificar sintaxis SQL en algunas ventanas de netcool/OmnibusAdministrator (por ejemplo, al crear o editar desencadenantes). De formapredeterminada, netcool/Omnibus Administrator proporciona coloreado paradestacar distintos elementos de sintaxis. Puede cambiar el esquema de coloreadode sintaxis por defecto.

Para cambiar el esquema de coloreado de sintaxis por defecto:1. Desde la ventana Netcool/OMNIbus Administrator, pulse Herramientas >

Opciones de editor. Se abre la ventana Resaltar detalles.2. Complete esta ventana del modo siguiente:

ElementoSeleccione el elemento de sintaxis del que desea ver o cambiar el color.

Color Este campo muestra el color actualmente seleccionado para el elemento.Pulse el botón situado junto a este campo para seleccionar un nuevocolor. Puede elegir el color mediante la gama de colores y los valoresde HSB o RGB.

Utilizar el valor predeterminadoMarque esta casilla de verificación para utilizar el color predeterminadopara el elemento seleccionado.

3. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar los detalles de color y cerrar la ventana.

74 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 89: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Selección de un navegador web para visualizar la ayuda en líneaEn el administrador de Netcool/OMNIbus, debe seleccionar un navegador web enel que desee visualizar la ayuda en línea. La ayuda en línea se despliega medianteel sistema de ayuda de IBM® Eclipse, en el que se admiten varios navegadores.

Para obtener una lista de navegadores web para la ayuda en línea, consulte lapublicación IBM Tivoli Netcool/OMNIbus Installation and Deployment Guide.

Para seleccionar el navegador web para visualizar la ayuda en línea:1. Desde el administrador de Netcool/OMNIbus, seleccione Herramientas >

Configurar herramientas. Se abrirá la ventana Elegir herramienta.2. Seleccione Navegador. Se abrirá la ventana Programa externo.3. Complete esta ventana como se indica a continuación:

Nombre de la herramientaEste campo muestra el tipo de herramienta que va a configurar.

EjecutableEscriba la vía de acceso completa y el nombre del programa ejecutablepara el tipo de herramienta. Como alternativa, pulse el botón situado ala derecha del campo para buscar y seleccionar el programa ejecutable.

ArgumentosEscriba los argumentos de línea de mandatos que se deben ejecutar coneste programa ejecutable.

Entorno de tiempo de ejecuciónSeleccione el entorno de tiempo de ejecución.

Nota: El campo Entorno de tiempo de ejecución no está disponible si va aconfigurar un navegador web.

4. Guarde o cancele los cambios como se indica a continuación:

AceptarPulse este botón para guardar los detalles del programa externo ycerrar la ventana.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Cómo salir de Netcool/OMNIbus AdministratorPara salir de Netcool/OMNIbus Administrator, pulse Archivo > Salir.

Gestión de la autorización con usuarios, grupos, roles y filtros derestricción

Autorización es la verificación de los derechos para ver y modificar información.

El acceso a objetos objectserver se controla mediante grupos (colecciones deusuarios), y roles (colecciones de permisos de sistema y objeto) otorgado a grupos.Los permisos controlan el acceso a los objectos y datos en el objectserver.Combinando uno o más permisos en roles, puede gestionar el acceso de formarápida y eficaz.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 75

Page 90: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Los administradores pueden permitir y denegar acciones en el sistema y paraobjetos individuales mediante la asignación de permisos a los roles, otorgando orevocando los roles para los grupos de usuarios apropiados. Puede utilizarnetcool/Omnibus Administrator para otorgar y revocar permisos para los usuariosde un sistema Tivoli Netcool/OMNIbus.

Por ejemplo, la creación de automatizaciones requiere conocimientos deoperaciones de Tivoli Netcool/OMNIbus y la manera en que se configura undeterminado ObjectServer. Generalmente, no se debe permitir a todos los usuarioscrear o modificar automatizaciones. Una solución es crear un rol llamadoAutoAdmin, con los permisos para crear y modificar desencadenantes, grupos dedesencadenante, archivos, procedimientos SQL, procedimientos externos y señales.A continuación puede otorgar dicho rol a un grupo de administradores que crearány actualizarán desencadenantes.

Para configurar la autorización de Tivoli Netcool/OMNIbus, configure objetos deseguridad en el orden siguiente:1. Roles: Asginar permisos a roles.2. Grupos: Asignar uno o varios roles a cada grupo. Los roles asignados

determinan los miembros de grupo pueden realizar en los objetos de base dedatos.

3. Usuarios: Añadir usuarios a grupos. Debe asignar a cada usuario uno o másgrupos.

Resultados

Puede crear agrupaciones lógicas como, por ejemplo, superusuarios oadministradores del sistema, agrupaciones físicas como centros de operacions dered Londres o Nueva York, o cualquier otra agrupación para simplificar laconfiguración de seguridad.

Configuración de rolesLos roles son colecciones de permisos que puede asignar a los usuarios y grupos.

Tivoli Netcool/OMNIbus proporciona una serie de roles predeterminados y lepermite crear roles personalizados para asociarlos a usuarios y grupos. Los rolespredeterminados se describen en la tabla siguiente.

Tabla 15. Roles predeterminados

Nombre de rol Descripción

CatalogUser Este rol incluye permisos para ver información acerca delsistema, herramientas, seguridad y tablas de bases de datosde escritorio.

Este rol proporciona una base para los permisos de TivoliNetcool/OMNIbus. Este rol proporciona permisossuficientes para utilizar aplicaciones de TivoliNetcool/OMNIbus.

Todos los grupos se deben asignar a este rol.

76 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 91: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 15. Roles predeterminados (continuación)

Nombre de rol Descripción

AlertsUser Este rol incluye los siguientes permisos:

v Vea, actualice y suprima las entradas de la tablaalerts.status

v Vea, inserte y suprima las entradas de la tablaalerts.journal

v Vea y suprima las entradas de la tabla alerts.details

Este rol, junto con el rol CatalogUser, le permite ver ymanipular alertas, crear filtros y vistas y ejecutarherramientas estándar en la lista de sucesos.

AlertsProbe Este rol incluye permisos para insertar y actualizar entradasen la tabla alert.status e insertar entradas en la tablaalerts.details.

Este rol, junto con el rol CatalogUser, proporciona lospermisos que necesita un sondeo para generar alertas en elproducto ObjectServer. Estos permisos se deben conceder acualquier usuario que ejecute una aplicación de sondeo.

AlertsGateway Este rol incluye permisos para insertar, actualizar ysuprimir entradas en la tabla alerts.status, la tablaalerts.details, la tabla alerts.journal, la tablaalerts.conversions, la tabla alerts.col_visuals, la tablaalerts.colors, las tablas de escritorio tools y las tablas de labase de datos transfer. La base de datos transfer la utilizainternamente la pasarela bidireccional ObjectServer parasincronizar la información de seguridad entre variosproductos ObjectServer.

Este rol también incluye permisos para seleccionar, insertar,actualizar y suprimir entradas de la tablamaster.servergroups y permisos para obtener las siguientesseñales:gw_counterpart_down, gw_counterpart_up,gw_resync_start y gw_resync_finish.

Este rol, junto con el rol CatalogUser, proporciona lospermisos que necesita una pasarela para generar alertas enel producto ObjectServer. Estos permisos se deben concedera cualquier usuario que ejecute una aplicación de pasarela.

DatabaseAdmin Este rol incluye permisos para crear bases de datos yarchivos así como para crear tablas en las bases de datosalerts, tools y service. Este rol también incluye permisospara modificar o descartar las tablas alerts.status,alerts.details y alerts.journal así como permisos para crear yborrar índices de las tablas alerts.status, alerts.details yalerts.journal.

Este rol, junto con el rol CatalogUser, proporciona permisospara crear estructuras de datos relacionales en el productoObjectServer.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 77

Page 92: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 15. Roles predeterminados (continuación)

Nombre de rol Descripción

AutoAdmin Este rol incluye permisos para crear grupos dedesencadenantes, archivos, procedimientos SQL,procedimientos externos y señales de usuario. Este roltambién incluye permisos para crear, modificar y eliminardesencadenantes de los grupos de desencadenantespredeterminados y para modificar o eliminar grupos dedesencadenantes predeterminados.

Este rol, junto con el rol CatalogUser, proporciona permisospara crear automatizaciones en el producto ObjectServer.

ToolsAdmin Este rol incluye permisos para suprimir, insertar yactualizar todas las tablas de herramientas.

Este rol, junto con el rol CatalogUser, proporciona permisospara crear y modificar herramientas que se pueden ejecutardesde el escritorio y Netcool/OMNIbus Administrator .

DesktopAdmin Este rol incluye permisos para actualizar todos loscatálogos de escritorio con el fin de insertar, actualizarsuprimir colores, ilustraciones, menús, clases, resoluciones yconversiones.

Este rol, junto con el rol CatalogUser, proporciona permisospara personalizar el escritorio.

SecurityAdmin Este rol, junto con el rol CatalogUser, incluye permisos paramanipular usuarios, grupos y roles utilizandoNetcool/OMNIbus Administrator o la interfaz interactivade SQL. Este rol también incluye permisos para establecerpropiedades y eliminar conexiones de usuario.

ISQL Este rol, junto con el rol CatalogUser, incluye permisos paraver datos de ObjectServer mediante la interfaz interactivade SQL.

ISQLWrite Este rol, junto con el rol CatalogUser, incluye permisos paraver y Modificar datos de ObjectServer mediante la interfazinteractiva de SQL.

SuperUser Este rol tiene todos los permisos disponibles. No puedemodificar el rol SuperUser.

Public Todos los usuarios tienen asignado este rol. De formapredeterminada, el rol Public no tiene asignado ningúnpermiso. Puede modificar, pero no eliminar, el rol Public.

ChannelAdmin Este rol incluye permisos para configurar canales denotificación de sucesos acelerados.

ChannelUser Este rol incluye permisos para recibir y actuar sobrenotificaciones para sucesos acelerados que se difunden através de canales.

Los roles determinan los tipos de tareas que los usuarios del grupo puedenrealizar. Por ejemplo, si asigna el rol AlertsUser a un grupo, a los usuarios de esegrupo se le otorgan los permisos siguientes:v Visualizar, actualizar y suprimir entradas en la tabla alerts.statusv Visualizar, insertar y suprimir entradas en la tabla alerts.journalv Visualizar y suprimir entradas en la tabla alerts.details

78 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 93: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Conceptos relacionados:“Configuración de grupos” en la página 81“Configuración de usuarios” en la página 85

Creación y edición de rolesRoles de usuario para asignar permisos a los usuarios que son miembros de ungrupo concreto.

Antes de empezar

Debe haber iniciado Netcool/OMNIbus Administrator ejecutando el programa deutilidad nco_config. Para obtener más información, consulte “Inicio deladministrador de Netcool/OMNIbus” en la página 64.

Para crear o editar un rol:1. En la ventana del administrador de Netcool/OMNIbus, seleccione el botón del

menú Usuario.2. Pulse Roles. Se abre el panel Roles.3. Para añadir un rol, pulse Añadir rol en la barra de herramientas. Se abre la

ventana Detalles del rol.4. Para editar un rol, seleccione el rol que se debe editar y, a continuación, pulse

Editar rol en la barra de herramientas. Se abre la ventana Detalles del rol.5. Defina un rol nuevo de la manera siguiente:

Nombre del rolEscriba un nombre exclusivo para el rol. Si va a editar un rol, no puedecambiar el nombre.

Consejo: Cuando cree objetos ObjectServer, sus nombres debencomenzar con una letra en mayúsculas o minúsculas, seguida de otrasletras en mayúsculas o minúsculas, números o caracteres de subrayado(_), hasta una longitud máxima de 40. Los nombres de usuarios, grupos yroles puede ser cualquier serie de texto con una longitud de hasta 64 caracteresy puede incluir espacios. Los nombres de los objetos de ObjectServer sonsensibles a mayúsculas y minúsculas.

ID del rolEspecifique un identificador numérico exclusivo para este rol. Si va aeditar un rol, no puede cambiar el ID del rol.

6. En el separador Detalles, especifique una descripción del rol o actualice laexistente.

7. En el separador Permisos, otorgue o revoque permisos al rol como se indica acontinuación:

Añadir permisoPulse este botón para otorgar permisos al rol. Se abre la ventanaObjetos de permiso. Rellene esta ventana como se indica acontinuación:

Tipo de objetoSeleccione el tipo de objeto para el que desea otorgar o revocarpermisos.

Objetos disponiblesEl contenido de esta lista depende del tipo de objeto que hayaseleccionado. La lista Objetos disponibles muestra los objetos

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 79

Page 94: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

para los que no se han otorgado permisos. Para otorgarpermisos a uno o más objetos, utilice las teclas de flecha paramover los objetos a la lista Objetos seleccionados.

Para mover todos los objetos a la lista Objetos seleccionados,pulse >>. Para mover un solo objeto o varios objetos a la listaObjetos seleccionados, seleccione cada objeto y, a continuación,pulse >. Puede utilizar la tecla MAYÚS para seleccionesconsecutivas o la tecla CTRL para selecciones no consecutivas.

Objetos seleccionadosEsta lista muestra los objetos para los que se han otorgadopermisos. Para revocar permisos para uno o más objetos, utilicelas teclas de flecha para mover los objetos a la lista Objetosdisponibles.

Para mover todos los objetos a la lista Objetos disponibles,pulse <<. Para mover un solo objeto o varios objetos a la listaObjetos disponibles, seleccione cada objeto y, a continuación,pulse <. Puede utilizar la tecla MAYÚS para seleccionesconsecutivas o la tecla CTRL para selecciones no consecutivas.

Consejo: Puede añadir varios permisos de objeto seleccionandocada tipo de objeto necesario uno tras otro desde la lista Tipode objeto y, a continuación, añadiendo el objeto a la listaObjetos seleccionados.

AceptarPulse este botón para guardar los permisos configurados parael rol y cerrar la ventana Objetos de permiso.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Cuando vuelva al separador Permisos en la ventana Detalles del rol, elárbol de permisos se actualiza con los cambios. El nodo padre muestrael objeto principal y los nodos hijo anidados muestran los subobjetosasociados. Puede expandir estos subojetos para ver los permisos SQLasociados; por ejemplo, ALTER, DELETE y DROP. Seleccione la casillade verificación asociada con el permiso SQL para asignar ese permiso alrol. Desmarque la casilla de verificación para revocar el permiso.

Suprimir permisoEn el árbol de permisos, seleccione un nodo padre o hijo para el quedesee revocar los permisos y, a continuación, pulse este botón. El nodose suprime del árbol.

8. Guarde o cancele los cambios como se indica a continuación:

AceptarPulse este botón para guardar los detalles del rol y cerrar la ventana.Los nuevos roles se añaden al panel Roles.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64

80 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 95: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Supresión de roles

Antes de empezar

Debe haber iniciado Netcool/OMNIbus Administrator ejecutando el programa deutilidad nco_config. Para obtener más información, consulte “Inicio deladministrador de Netcool/OMNIbus” en la página 64.

Para suprimir una función:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Usuario.2. Pulse Roles. Se abre el panel Reglas.3. Seleccione el rol que desea suprimir y pulse Suprimir en la barra de

herramientas. El rol se ha suprimido. Si el rol fue asignado a un grupo, el rol seelimina del grupo.

Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64

Configuración de gruposUtilice grupos para organizar usuarios Tivoli Netcool/OMNIbus en unidades conobjetivos funcionales comunes. Todos los miembros de un grupo tienen lospermisos asignados a roles de grupo.

Tivoli Netcool/OMNIbus proporciona diferentes grupos predeterminados y lepermite crear grupos personalizados. Los grupos predeterminados se describen enla tabla siguiente.

Tabla 16. Grupos predeterminados

Nombre de grupo Descripción

Probe Este grupo tiene asignados los roles CatalogUser,AlertsUser y AlertsProbe.

Pasarela Este grupo tiene asignados los roles CatalogUser,AlertsUser y AlertsGateway.

ISQL Este grupo tiene asignado el rol ISQL.

ISQLWrite Este grupo tiene asignado el rol ISQLWrite.

Public Este grupo tiene asignado el rol Public. Todos los usuariosson miembros de este grupo.

Normal Este grupo tiene asignados los roles CatalogUser,AlertsUser y ChannelUser. Este grupo no puede suprimirseni redenominarse.

Administrador Este grupo tiene asignados los roles CatalogUser,AlertsUser, ToolsAdmin, DesktopAdmin, ChannelUser yChannelAdmin. Este grupo no puede suprimirse niredenominarse.

Sistema Este grupo tiene asignados los roles CatalogUser,AlertsUser, ToolsAdmin, DesktopAdmin, AlertsProbe,AlertsGateway, DatabaseAdmin, AutoAdmin,SecurityAdmin, ISQL, ISQLWrite, SuperUser, ChannelUsery ChannelAdmin. Este grupo no puede suprimirse niredenominarse.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 81

Page 96: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Conceptos relacionados:“Configuración de roles” en la página 76“Configuración de usuarios” en la página 85

Creación y edición de grupos

Antes de empezar

Debe haber iniciado Netcool/OMNIbus Administrator ejecutando el programa deutilidad nco_config. Para obtener más información, consulte “Inicio deladministrador de Netcool/OMNIbus” en la página 64.

Para crear o editar un grupo:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Usuario.2. Pulse Grupos. Se abre el panel Grupos.3. Para añadir un grupo, pulse Añadir grupo en la barra de herramientas. Se abre

la ventana Detalles de grupo.4. Para editar un grupo, seleccione el grupo a editar y, a continuación, pulse

Editar grupo en la barra de herramientas. Se abre la ventana Detalles de grupo.5. Defina el grupo de la forma siguiente:

Nombre de grupoEscriba un nombre exclusivo para el grupo. Si está editando un grupo,no puede cambiar el nombre.

Consejo: Cuando cree objetos ObjectServer, sus nombres debencomenzar con una letra en mayúsculas o minúsculas, seguida de otrasletras en mayúsculas o minúsculas, números o caracteres de subrayado(_), hasta una longitud máxima de 40. Los nombres de usuarios, grupos yroles puede ser cualquier serie de texto con una longitud de hasta 64 caracteresy puede incluir espacios. Los nombres de los objetos de ObjectServer sonsensibles a mayúsculas y minúsculas.

ID de grupoEspecifique un identificador numérico exclusivo para el grupo. Si estáeditando un grupo, no puede cambiar el ID de grupo.

DescripciónEscriba una descripción significativa para el grupo, o actualice ladescripción.

6. Desde la ficha Roles , especifique los roles que desea asignar al grupo. Cuandose asigna un rol a un grupo de usuarios, cualquier usuario añadido a dichogrupo asume los permisos de seguridad otorgados al rol. Cumplimente elseparador tal como se muestra a continuación:

Roles disponiblesEsta lista visualiza los roles disponibles que puede asignar al grupo.Para asignar uno o más de estos roles, utilice las teclas de flecha paramover los roles hasta la lista de Roles aplicados.

Para mover todos los roles a la lista de Roles aplicados, pulse >>. Paramover un solo rol o varios roles a la lista de Roles aplicados, seleccionecada rol y luego pulse >. Puede utilizar la tecla MAYÚS para realizarselecciones consecutivas, o la tecla CONTROL para realizar seleccionesno consecutivas.

82 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 97: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Roles aplicadosEsta lista visualiza los roles que ya están asignados al grupo. Paradesasignar roles, utilice las teclas de flecha para mover los roles hasta lalista de Roles disponibles.

Para mover todos los roles a la lista de Roles disponibles, pulse <<.Para mover un solo rol o varios roles a la lista de Roles disponibles,seleccione cada rol y luego pulse <. Puede utilizar la tecla MAYÚS pararealizar selecciones consecutivas, o la tecla CONTROL para realizarselecciones no consecutivas.

Añadir nuevo rolPulse este botón si desea crear un nuevo rol que luego se puedaasignar a este grupo. Se abrirá la ventana Detalles del rol. Completeesta ventana y guarde los cambios.

Cuando vuelva al separador Roles, el nuevo rol se añadirá a la lista deRoles disponibles. Luego puede añadir este rol al grupo.

7. Desde la ficha Filtros de restricción , especifique los filtros de restricción quedesee asignar al grupo. Puede utilizar filtros de restricción para impedir que elgrupo de usuarios visualice o modifique determinadas filas de las tablasObjectServer. Cumplimente el separador tal como se muestra a continuación:

Todos los filtros de restricciónEsta lista muestra los filtros de restricción disponibles que se hanconfigurado. Para asignar un filtro de restricción al grupo, seleccione lafila de filtro de restricción y pulse Añadir filtro de restricción. El filtrode restricción seleccionado se transfiere a la lista de Filtros derestricción asignados.

Si no se habían configurado previamente filtros de restricción, o sidesea crear un nuevo filtro de restricción y asignarlo al grupo, pulseNuevo filtro de restricción. Se abre la ventana Detalles del filtro derestricción. Complete esta ventana y guarde los cambios.

Cuando regresa al separador Filtros de restricción, el nuevo filtro derestricción se añadirá a la lista de Todos los filtros de restricción.Luego puede asignar este filtro de restricción al grupo.

Filtros de restricción asignadosEsta lista muestra los filtros de restricción que están asignados algrupo. Para desasignar un filtro de restricción, seleccione la fila de filtrode restricción y pulse Eliminar filtro de restricción. El filtro derestricción seleccionado se transfiere a la lista de Todos los filtros derestricción.

8. Desde la ficha Usuarios , especifique los usuarios que desea añadir comomiembros del grupo. Cumplimente el separador tal como se muestra acontinuación:

No miembrosEsta lista visualiza los usuarios disponibles que puede asignar comomiembros del grupo. Para asignar una o más de estos usuarios, utilicelas teclas de flecha para mover los usuarios hasta la lista de Miembros.

Para mover todos los usuarios a la lista de Miembros, pulse >>. Paramover un solo usuario o varios usuarios a la lista de Miembros,seleccione cada usuario y luego pulse >. Puede utilizar la tecla MAYÚSpara realizar selecciones consecutivas, o la tecla CONTROL pararealizar selecciones no consecutivas.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 83

Page 98: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

MiembrosEsta lista visualiza los usuarios que ya están asignados al grupo. Paradesasignar usuarios, utilice las teclas de flecha para mover los usuarioshasta la lista de No miembros.

Para mover todos los usuarios a la lista de No miembros, pulse <<.Para mover un solo usuario o varios usuarios a la lista de Nomiembros, seleccione cada usuario y luego pulse <. Puede utilizar latecla MAYÚS para realizar selecciones consecutivas, o la teclaCONTROL para realizar selecciones no consecutivas.

Añadir nuevo usuarioPulse este botón si desea crear un nuevo usuario que luego se puedaasignar a este grupo. Se abre la ventana Detalles del usuario. Completeesta ventana y guarde los cambios.

Cuando regrese al separador Usuarios, el nuevo usuario se añadirá a lalista de No miembros. Luego puede añadir este usuario al grupo.

9. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar los detalles del grupo y cerrar laventana. Se añaden nuevos grupos al panel Grupos.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64“Creación y edición de roles” en la página 79“Creación y edición de filtros de restricción” en la página 90“Creación y edición de usuarios” en la página 85

Supresión de gruposNo puede suprimir los grupos Normal, Administrador ni Sistema.

Antes de empezar

Debe haber iniciado Netcool/OMNIbus Administrator ejecutando el programa deutilidad nco_config. Para obtener más información, consulte “Inicio deladministrador de Netcool/OMNIbus” en la página 64.

Para suprimir un grupo:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Usuario.2. Pulse Grupos. Se abre el panel Grupos.3. Seleccione el grupo que desea suprimir y pulse Suprimir en la barra de

herramientas. Se suprime el grupo.Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64

84 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 99: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Configuración de usuariosPuede crear y modificar usuarios de Tivoli Netcool/OMNIbus y organizarlos engrupos. Puede asignar roles a los grupos de usuarios, para controlar el acceso a losobjetos de objectserver.

Tivoli Netcool/OMNIbus proporciona un conjunto de cuentas de usuariospredeterminados. Los usuarios predeterminados se describen en la tabla siguiente.

Tabla 17. Usuarios predeterminados

Nombre de usuario Descripción

root Este usuario se crea con una serie vacía como contraseñapredeterminada. Puede restablecer la contraseña utilizandoNetcool/OMNIbus Administrator o el mandato SQL ALTERUSER de ObjectServer.

nobody Este usuario está inhabilitado y no se puede utilizar paraacceder a ObjectServer. La propiedad de cada alerta de latabla alerts.status tiene asignado un usuario cuando seinserta la fila. De forma predeterminada, los sondeosasignan filas al usuario nobody.

Conceptos relacionados:“Configuración de grupos” en la página 81“Configuración de roles” en la página 76

Creación y edición de usuariosAl configurar los usuarios, debe asignarlos a grupos con roles asignados. Estodetermina los permisos de usuario.

Antes de empezar

Debe haber iniciado Netcool/OMNIbus Administrator ejecutando el programa deutilidad nco_config. Para obtener más información, consulte “Inicio deladministrador de Netcool/OMNIbus” en la página 64.

Para crear o editar un usuario:1. En la ventana del administrador de Netcool/OMNIbus, seleccione el botón del

menú Usuario.2. Pulse Usuarios. Se abre el panel Usuarios.3. Para añadir un usuario, pulse Añadir usuario en la barra de herramientas. Se

abre la ventana Detalles del usuario.4. Para editar un usuario, seleccione el usuario que se debe editar y, a

continuación, pulse Editar usuario en la barra de herramientas. Se abre laventana Detalles del usuario.

5. Defina el usuario de la manera siguiente:

Nombre de usuarioEscriba un nombre exclusivo para el usuario. Si el usuario se debeautenticar externamente, por ejemplo en un repositorio LDAP(Lightweight Directory Access Protocol) o mediante PAM (PluggableAuthentication Modules), el nombre que especifique en este campodebe ser idéntico al nombre almacenado en el repositorio deautenticación externo. Si va a editar un usuario, no puede cambiar elnombre.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 85

Page 100: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Consejo: Cuando cree objetos ObjectServer, sus nombres debencomenzar con una letra en mayúsculas o minúsculas, seguida de otrasletras en mayúsculas o minúsculas, números o caracteres de subrayado(_), hasta una longitud máxima de 40. Los nombres de usuarios, grupos yroles puede ser cualquier serie de texto con una longitud de hasta 64 caracteresy puede incluir espacios. Los nombres de los objetos de ObjectServer sonsensibles a mayúsculas y minúsculas.

ID de usuarioEspecifique un identificador numérico exclusivo para el usuario. Debeestablecerse para que coincida con el UID de UNIX siempre que seaposible. Si va a editar un usuario, no puede cambiar el ID de usuario.

El identificador del usuario root es 0. El identificador del usuarionobody es 65534. Los identificadores para los demás usuarios se puedenestablecer en cualquier valor entre 1 y 2147483647.

Nombre completoEscriba el nombre completo del usuario.

Crear conversiónSeleccione este recuadro de selección si desea crear una conversión parael usuario. Esto hace que el nombre de usuario o el nombre completodel usuario se muestre en las lista de sucesos de TivoliNetcool/OMNIbus. El nombre que se muestra queda determinado porel valor de la propiedad system.conversion.type del archivo depropiedades de administrador de Netcool/OMNIbusNCHOME/omnibus/etc/nco_config.props. (Esta propiedad crea unaconversión entre el ID de usuario y el nombre de usuario o el nombrecompleto de cada usuario recién creado).

6. En el separador Grupos, especifique los grupos a los que debe pertenecer elusuario. Rellene el separador como se indica a continuación:

Grupos sin asignarEsta lista muestra los grupos disponibles a los que puede asignar elusuario. Para asignar el usuario a uno o más de estos grupos, utilice lasteclas de flecha para mover los grupos a la lista Grupos asignados.

Para mover todos los grupos a la lista Grupos asignados, pulse >>.Para mover un grupo o varios grupos a la lista Grupos asignados,seleccione cada grupo y, a continuación, pulse >. Puede utilizar la teclaMAYÚS para selecciones consecutivas o la tecla CTRL para seleccionesno consecutivas.

Nota: Si no desea añadir el usuario a un grupo, el usuario no tendrápermisos.

Grupos asignadosEsta lista muestra los grupos a los que se asigna el usuario. Paradesasignar grupos, utilice las teclas de flecha para mover los grupos ala lista Grupos sin asignar.

Para mover todos los grupos a la lista Grupos sin asignar, pulse <<.Para mover un grupo o varios grupos a la lista Grupos sin asignar,seleccione cada grupo y, a continuación, pulse <. Puede utilizar la teclaMAYÚS para selecciones consecutivas o la tecla CTRL para seleccionesno consecutivas.

Añadir un grupo nuevoPulse este botón si desea crear un grupo nuevo al que se pueda asignar

86 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 101: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

el usuario, a continuación. Se abrirá la ventana Detalles del grupo.Rellene esta ventana y guarde los cambios.

Cuando vuelva al separador Grupos en la ventana Detalles del usuario,el nuevo grupo se añadirá a la lista Grupos sin asignar. Acontinuación, puede asignar el usuario a este grupo.

7. En el separador Filtros de restricción, especifique los filtros de restricción quedesee asignar al usuario. Puede utilizar filtros de restricción para impedir queel usuario visualice o modifique algunas filas de las tablas de ObjectServer.Rellene el separador como se indica a continuación:

Todos los filtros de restricciónEsta lista muestra los filtros de restricción disponibles que se hanconfigurado. Para asignar un filtro de restricción al usuario, seleccionela fila de filtro de restricción y, a continuación, pulse Añadir filtro derestricción. El filtro de restricción seleccionado se transfiere a la listaFiltros de restricción asignados.

Si no se ha configurado ningún filtro de restricción anteriormente o sidesea crear un filtro de restricción nuevo y asignarlo al usuario, pulseNuevo filtro de restricción. Se abrirá la ventana Detalles del filtro derestricción. Rellene esta ventana y guarde los cambios.

Cuando vuelva al separador Filtros de restricción, el nuevo filtro derestricción se añadirá a la lista Todos los filtros de restricción. Acontinuación, asigne este filtro de restricción al usuario.

Filtros de restricción asignadosEsta lista muestra los filtros de restricción asignados al usuario. Paradesasignar un filtro de restricción, seleccione el filtro de restricción y, acontinuación, pulse Eliminar filtro de restricción. El filtro de restricciónseleccionado se transfiere a la lista Todos los filtros de restricción.

8. En el separador Valores, especifique los detalles de autenticación del usuario yactive el usuario en el sistema.

ContraseñaEscriba una contraseña opcional para el usuario. Los asteriscos (*)aparecen en lugar de los caracteres de la contraseña que escriba.

Si el usuario se autentica externamente, la contraseña se almacena en elrepositorio externo, por lo que debe dejar este campo en blanco.

VerificarSi ha escrito una contraseña en el campo Contraseña, vuelva a escribiraquí la contraseña.

CambiarPulse este botón para restablecer la contraseña de usuario. Acontinuación, debe volver a escribirlo en los campos Contraseña yVerificar.

Este botón sólo está visible cuando se edita un usuario.

Autenticación externaSeleccione este recuadro de selección para autenticar externamente elusuario. Desmarque este recuadro de selección para almacenar elnombre de usuario y la contraseña asociada en el ObjectServer y pararealizar la autenticación del ObjectServer.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 87

Page 102: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tipo de usuarioEste campo de sólo lectura indica el tipo de usuario. Se estableceautomáticamente según los grupos a los que pertenece el usuario.

Habilitado por el usuarioSeleccione este recuadro de selección para activar la cuenta de usuarioy permitir el acceso de inicio de sesión a Tivoli Netcool/OMNIbus. Lasnuevas cuentas de usuario se activan de manera predeterminada.

Desmarque este recuadro de selección para crear la cuenta de usuariosin activarla. Puede hacerlo si desea denegar el acceso de inicio desesión al usuario hasta que se le hayan asignado todos los permisospertinentes.

9. Guarde o cancele los cambios como se indica a continuación:

AceptarPulse este botón para guardar los detalles del usuario y cerrar laventana. Los nuevos usuarios se añaden al panel Usuarios.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64“Creación y edición de grupos” en la página 82“Creación y edición de filtros de restricción” en la página 90

Supresión de usuarios

Antes de empezar

Debe haber iniciado Netcool/OMNIbus Administrator ejecutando el programa deutilidad nco_config. Para obtener más información, consulte “Inicio deladministrador de Netcool/OMNIbus” en la página 64.

Para suprimir un usuario:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Usuario.2. Pulse Usuarios. Se abre el panel Usuarios.3. Seleccione el usuario que desea suprimir y pulse Suprimir en la barra de

herramientas. Se suprime el usuario.Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64

Visualización de conexiones de usuario con ObjectServerPuede ver los detalles de conexión de cualquiera de los usuarios que actualmentehan iniciado sesión en el objectserver.

Antes de empezar

Debe haber iniciado Netcool/OMNIbus Administrator ejecutando el programa deutilidad nco_config. Para obtener más información, consulte “Inicio deladministrador de Netcool/OMNIbus” en la página 64.

Para ver las conexiones de usuario:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Usuario.

88 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 103: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

2. Pulse Usuarios. Se abre el panel Usuarios , que muestra una fila para cadausuario que se ha configurado en el sistema.Se muestra un icono de indicador de estado a la izquierda del nombre deusuario. El color del icono describe el estado de la conexión del usuario talcomo se indica a continuación:v El color verde indica que el usuario está conectado.v El color azul indica que el usuario está habilitado, pero no conectado.v El color gris indica que el usuario no está habilitado.En el panel Usuarios puede ver los detalles de conexión de cualquier usuarioseleccionado que tiene iniciada actualmente la sesión en el ObjectServer. Porejemplo, si desea ver cuántos usuarios están actualmente conectados comoroot, y sus detalles de conexión, puede seleccionar la fila para el usuario root.Pulse el botón derecho del ratón sobre la fila seleccionada y luego pulse Verconexiones desde el menú emergente. Aparece el panel Conexiones delObjectServer. Se aplica automáticamente un filtro dinámico rápido a la columnaNombre de inicio de sesión, de manera que solamente se mostrarán lasaplicaciones a las que está conectado el usuario seleccionado. El icono Filtro

rápido se muestra en la cabecera de la columna Nombre de inicio de sesiónpara indicar que se ha aplicado un filtro a dicho nombre. Puede eliminar estefiltro para mostrar todas las conexiones para todos los usuarios pulsandoConexiones en el botón de menú Sistema.

Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64“Supervisión de conexiones de objectserver” en la página 141

Configuración de filtros de restricciónPuede utilizar los filtros de restricción para impedir que los usuarios visualicen omodifiquen ciertas filas en las tablas de ObjectServer.

Puede asignar filtros de restricción a usuarios individuales o a una recopilación deusuarios en un grupo. Después de aplicar un filtro de restricción a uno o másusuarios, el filtro de restricción controla los datos que los usuarios pueden ver ymodificar en las aplicaciones de cliente de Tivoli Netcool/OMNIbus y los datosque los usuarios pueden modificar en las sentencias INSERT, UPDATE y DELETE.Sólo puede asignar un filtro de restricción por tabla de ObjectServer a un usuario oun grupo.

Por ejemplo, puede crear un filtro de restricción para la tabla alerts.status queimpide que los operadores con sede en Londres vean las alertas originadas desdeel centro de operaciones de Nueva York.

Si está utilizando varios filtros de restricción, asegúrese de establecer la propiedadRestrictionFiltersAND de ObjectServer correctamente.Referencia relacionada:“Propiedades y opciones de línea de mandatos de ObjectServer” en la página 3

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 89

Page 104: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Creación y edición de filtros de restricción

Antes de empezar

Debe haber iniciado Netcool/OMNIbus Administrator ejecutando el programa deutilidad nco_config. Para obtener más información, consulte “Inicio deladministrador de Netcool/OMNIbus” en la página 64.

Para crear o editar un filtro de restricción:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Usuario.2. Pulse Filtros de restricción. Se abre el panel Filtros de restricción.3. Para añadir un filtro de restricción, pulse Añadir filtro de restricción en la

barra de herramientas. Se abrirá la ventana Detalles de fitro de restricción.4. Para editar un filtro de restricción, seleccione la restricción filtro a editar y

después pulse Editar filtro de restricción en la barra de herramientas. Se abrirála ventana Detalles de fitro de restricción.

5. Complete esta ventana del modo siguiente:

NombreEscriba un nombre exclusivo para el filtro de restricción.

Consejo: Cuando cree objetos ObjectServer, sus nombres debencomenzar con una letra en mayúsculas o minúsculas, seguida de otrasletras en mayúsculas o minúsculas, números o caracteres de subrayado(_), hasta una longitud máxima de 40. Los nombres de usuarios, grupos yroles puede ser cualquier serie de texto con una longitud de hasta 64 caracteresy puede incluir espacios. Los nombres de los objetos de ObjectServer sonsensibles a mayúsculas y minúsculas.

Base de datosSeleccione la base de datos para la que está creando el filtro derestricción.

Tabla Seleccione la tabla para la que está creando el filtro de restricción.

CondiciónEscriba la condición de SQL (sentencia WHERE) para el filtro derestricción. Por ejemplo: Tally > 100 AND Severity >=4

Esta condición de ejemplo impide que un usuario o grupo al que seaplica el filtro de restricción vea alertas en la lista de sucesos si éstas seproducen más de 100 veces y tienen una gravedad mayor o igual que 4.

Puede utilizar los botones de ayuda de SQL para ayudar a crear lacondición de filtro, tal como se describe en la tabla siguiente.

Tabla 18. Botones para crear condiciones de filtro

Botón Descripción

Pulse este botón para seleccionar un nombre de columna detabla para añadirlo al mandato. El nombre de la columna sesustituye por el valor de la fila de lista de sucesoscorrespondiente cuando se ejecuta la herramienta.

Pulse este botón para elegir entre una lista de conversionesdisponibles.

90 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 105: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 18. Botones para crear condiciones de filtro (continuación)

Botón Descripción

Pulse este botón para activar una lista de palabras claveque complete el código SQL especificado.Consejo: De forma alternativa, puede escribir uno o máscaracteres y pulsar Control+F1 para obtener un cuadro dediálogo con una lista de palabras clave que puedencoincidir con su entrada. Seleccione la palabra clavenecesaria y pulse Aceptar para completar la entrada. Si sólocoincide una palabra clave con los caracteres que ha escrito,la palabra clave se completará automáticamente por usted.Si pulsa Control+F1 después de escribir una palabra claverelacionada con la base de datos, el cuadro de diálogoincluye una lista de posibles bases de datos de ObjectServerdesde las que puede seleccionar. Si pulsa Control+F1después de escribir un nombre de base de datos seguidopor un punto (por ejemplo: alertas.),puede pulsarControl+F1 nuevamente para ver y seleccionar en una listade tablas de la base de datos.

Pulse este botón para comprobar la validez de la sintaxis deSQL especificada.

AceptarPulse este botón para guardar los detalles del filtro de restricción ycerrar la ventana. Se añaden nuevos filtros de restricción al panelFiltros de restricción.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64“Creación y edición de conversiones” en la página 128

Supresión de filtros de restricciónNo puede suprimir filtros de restricción que actualmente están asignados a unusuario o grupo.

Antes de empezar

Debe haber iniciado Netcool/OMNIbus Administrator ejecutando el programa deutilidad nco_config. Para obtener más información, consulte “Inicio deladministrador de Netcool/OMNIbus” en la página 64.

Para suprimir filtro de restricción:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Usuario.2. Pulse Filtros de restricción. Se abre el panel Filtros de restricción.3. Seleccione el filtro de restricción que desea suprimir y pulse Suprimir en la

barra de herramientas. Se suprime el filtro de restricción.Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 91

Page 106: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Configuración de menús, herramientas y solicitudesPuede configurar menús, herramientas y solicitudes para el escritorio de TivoliNetcool/OMNIbus (conductor y lista de sucesos).

Cada menú consta de un nombre de menú y una lista de elementos de menú. Loselementos de menú son herramientas, separadores y submenús. Los submenús seutilizan en menús para agrupar dos o más elementos de menú a la vez.

Las herramientas permiten controlar las funciones de gestión de alertas de TivoliNetcool/OMNIbus. Cada herramienta tiene una sentencia SQL asociada(denominada efecto interno ), un ejecutable (denominado efecto externo ), o ambos.Puede asociar herramientas con una clase o clases de alerta y puede agruparherramientas y menús de herramientas.

Una herramienta puede incluir una ventana de solicitud o un menú emergentedonde el usuario pueda introducir información.

Personalización de menúsUtilice netcool/Omnibus Administrator para personalizar los menús de escritoriode Tivoli Netcool/OMNIbus para la lista de sucesos y Conductor.

Puede personalizar un menú de cualquiera de los modos siguientes:v Adición de herramientas, submenús y separadores en un menúv Edición de elementos de menúv Modificación del orden de elementos en un menúv Eliminación de herramientas, submenús o separadores de un menú

Después de personalizar un menú, puede ver previamente su estructura para vercómo aparecerá en la lista de sucesos o conductor.

La tabla siguiente muestra los menús que puede personalizar.

Tabla 19. Menús personalizables de lista de sucesos

Nombre de menú en el administrador deNetcool/OMNIbus - ventana Menús

Nombre de menú en el escritorio deNetcool/OMNIbus

AlertsMenu Menú Alertas y menú emergente en la listade sucesos, cuando se selecciona una alerta

MainEventListMenu Menú Herramientas de la ventana desupervisión Lista de sucesos

SubEventListMenu Menú Herramientas de cualquier ventana delista de sucesos

ConductorMenu Menú Herramientas del Conductor

92 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 107: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Adición de herramientas, submenús y separadores en un menúPuede añadir herramientas, submenús y separadores como elementos de menú enun menú de escritorio.

Para agregar una herramienta, submenú o separador a un menú:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Menú .2. Pulse en Menús. Se abre el panel Menús.

Consejo: Puede hacer doble clic en el menú para ver los elementos de menú yherramientas existentes. También puede pulsar el símbolo redondo (en Unix) oel signo más (+) (en Windows) que está a la izquierda de un menú.

3. De la estructura en árbol, seleccione el menú al que desea agregar un elementode menú y luego pulse Añadir elemento en la barra de herramientas. Se abrirála ventana Detalles de elemento de menú.

4. Complete esta ventana del modo siguiente:

Tipo de elemento de menúSi va a añadir un elemento de menú, seleccione el tipo de elemento demenú que desea añadir al menú seleccionado. Si va a editar unaherramienta o un submenú, este campo es de sólo lectura.

Nota: Si va a añadir un separador, esta es la única entrada necesaria enesta ventana.

HerramientaSeleccione la herramienta que desea añadir. Si está editando unaherramienta, puede optar por seleccionar otra herramienta de esta listadesplegable.

Nota: Este campo está disponible sólo para herramientas.

Si desea crear una nueva herramienta que luego pueda añadirse comoun elemento de menú en el menú seleccionado, pulse Añadirherramienta. Se abre la ventana Detalles de la herramienta. Completeesta ventana y guarde los cambios. Cuando regrese a la ventanaDetalles del elemento de menú, la herramienta estará disponible paraque pueda seleccionarse en la lista desplegable de Herramientas.

Si desea editar los valores de la herramienta seleccionada, pulse Editarherramienta. Se abre la ventana Detalles de la herramienta. Completeesta ventana y guarde los cambios. Regresará a la ventana Detalles delelemento de menú.

Título Si va a añadir o a editar una herramienta o un submenú, acepte el textopredeterminado, si se proporciona, de este campo, o escriba otro título.Incluya un ampersand (&) en el título si desea crear un códigomnemotécnico. Este texto se mostrará como el nombre de elemento demenú dentro del menú.

Nota: Si está añadiendo una herramienta, el campo Título tomarácomo valor predeterminado el nombre de la herramienta seleccionada.Sin embargo, si posteriormente selecciona otra herramienta, la entradainicial del campo Título permanecerá sin cambios a menos que loactualice manualmente.

5. Guarde o cancele los cambios de la forma siguiente:

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 93

Page 108: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

AceptarPulse este botón para guardar los detalles del elemento de menú ycerrar la ventana. El panel Menús se actualiza para reflejar los cambiosrealizados. Los cambios también quedarán reflejados en la lista desucesos relevante o en el menú Conductor la próxima vez que se inicieel escritorio o cuando la lista de sucesos vuelva a sincronizarse con elObjectServer.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Qué hacer a continuación

Consejo: Si ha añadido un submenú al menú seleccionado, ahora debe añadirelementos de menú en el submenú. Seleccione el submenú dentro del panel Menúsy luego siga los pasos 3 en la página 93, 4 en la página 93 y 5 en la página 93 paraañadir cada elemento de menú.Tareas relacionadas:“Creación y edición de herramientas” en la página 97

Edición de elementos de menúPuede cambiar el título de herramientas y submenús que se incluyen en la lista desucesos los menús Conductor. También puede sustituir una herramienta con otra ypuede editar la definición de herramienta.

Para editar un elemento de menú:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Menú .2. Pulse en Menús. Se abre el panel Menús.3. Desde la estructura en árbol, seleccione la herramienta o el submenú que desee

editar, y pulse Editar elemento en la barra de herramientas. Se abrirá laventana Detalles de elemento de menú.

4. Edite el elemento de menú del siguiente modo:

Tipo de elemento de menúSi va a añadir un elemento de menú, seleccione el tipo de elemento demenú que desea añadir al menú seleccionado. Si va a editar unaherramienta o un submenú, este campo es de sólo lectura.

Nota: Si va a añadir un separador, esta es la única entrada necesaria enesta ventana.

HerramientaSeleccione la herramienta que desea añadir. Si está editando unaherramienta, puede optar por seleccionar otra herramienta de esta listadesplegable.

Nota: Este campo está disponible sólo para herramientas.

Si desea crear una nueva herramienta que luego pueda añadirse comoun elemento de menú en el menú seleccionado, pulse Añadirherramienta. Se abre la ventana Detalles de la herramienta. Completeesta ventana y guarde los cambios. Cuando regrese a la ventanaDetalles del elemento de menú, la herramienta estará disponible paraque pueda seleccionarse en la lista desplegable de Herramientas.

94 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 109: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Si desea editar los valores de la herramienta seleccionada, pulse Editarherramienta. Se abre la ventana Detalles de la herramienta. Completeesta ventana y guarde los cambios. Regresará a la ventana Detalles delelemento de menú.

Título Si va a añadir o a editar una herramienta o un submenú, acepte el textopredeterminado, si se proporciona, de este campo, o escriba otro título.Incluya un ampersand (&) en el título si desea crear un códigomnemotécnico. Este texto se mostrará como el nombre de elemento demenú dentro del menú.

Nota: Si está añadiendo una herramienta, el campo Título tomarácomo valor predeterminado el nombre de la herramienta seleccionada.Sin embargo, si posteriormente selecciona otra herramienta, la entradainicial del campo Título permanecerá sin cambios a menos que loactualice manualmente.

5. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar los detalles del elemento de menú ycerrar la ventana. El panel Menús se actualiza para reflejar los cambiosrealizados. Los cambios también quedarán reflejados en la lista desucesos relevante o en el menú Conductor la próxima vez que se inicieel escritorio o cuando la lista de sucesos vuelva a sincronizarse con elObjectServer.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Tareas relacionadas:“Creación y edición de herramientas” en la página 97

Modificación del orden de elementos en un menúPuede reorganizar los elementos de un menú para mejorar los flujos de trabajo deusuario.

Para cambiar el orden de los elementos de menú del escritorio:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Menú .2. Pulse en Menús. Se abre el panel Menús.3. Para cada elemento de menú que desee recolocar, seleccione el elemento de

menú y muévalo a la posición necesaria utilizando cualquiera de los métodossiguientes:v Para mover un elemento a la parte superior del menú, seleccione Mover al

principio desde el menú Elemento , la barra de herramientas o en el menúemergente que se obtiene cuando se pulsa el botón derecho del ratón sobre elelemento.

v Para mover un elemento arriba una posición, seleccione Subir desde el menúElemento , la barra de herramientas o en el menú emergente que se obtienecuando se pulsa el botón derecho del ratón sobre el elemento.

v Para mover un elemento abajo una posición, seleccione Bajar desde el menúElemento , la barra de herramientas o en el menú emergente que se obtienecuando se pulsa el botón derecho del ratón sobre el elemento.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 95

Page 110: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

v Para mover un elemento a la parte inferior del menú, seleccione Mover alfinal desde el menú Elemento , la barra de herramientas o en el menúemergente que se obtiene cuando se pulsa el botón derecho del ratón sobre elelemento.

Los elementos de menú reposicionados se visualizan en el nuevo orden lapróxima vez que se inicia el escritorio o la lista de sucesos se vuelve asincronizar con el objectserver.

Eliminación de herramientas, submenús o separadores de unmenú

Para eliminar un elemento de menú del escritorio:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Menú .2. Pulse en Menús. Se abre el panel Menús.3. Seleccione el elemento de menú que desea eliminar. Para los submenús, puede

seleccionar un elemento individual para su eliminación o puede seleccionar elnombre de submenú para suprimir el submenú y su contenido.

4. Desde la barra de herramientas, pulse Suprimir.

Resultados

El elemento de menú se elimina del escritorio la próxima vez que se inicie elescritorio o que la lista de sucesos se vuelva a sincronizar con el objectserver.

Visualización previa de la estructura de los menúspersonalizadosPuede visualizar previamente menús personalizados para ver cómo aparecerán enel escritorio.

Para obtener una vista previa de menús:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Menú .2. Pulse en Menús. Se abre el panel Menús.3. Desde la barra de herramientas, pulse Mostrar estructura de menú. La ventana

de vista previa se abre con los menús que se muestran horizontalmente. Puedepulsar cada nombre de menú para expandir su contenido.

Resultados

Nota: Los nombres de menú tal como aparecen en netcool/OmnibusAdministrator difieren de sus nombres en el escritorio.

Herramientas de configuraciónLas herramientas ayudan a los operadores a gestionar alertas en la lista de sucesos.Puede crear herramientas que los operadores pueden utilizar para ejecutarmandatos SQL en el objectserver, o ejecutar mandatos externos que inician unaaplicación local, el archivo de proceso por lotes o script.

Una herramienta puede tener asociada una sentencia SQL, los mandatosejecutables, o ambos. Una herramienta también puede incluir una ventana desolicitud o un menú emergente para que los operadores especifiquen o seleccioneninformación.

96 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 111: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Puede agregar herramientas alos menús de lista de sucesos y asociar herramientascon clases de alerta. Esas herramientas están disponibles desde los menús sólocuando las alertas de clases asociadas se han seleccionado en la lista de sucesos.

Nota: Puede utilizar el programa de utilidad nco_elct dentro de una herramientapara abrir una lista de sucesos transitorios personalizados. Por ejemplo, puedeabrir una lista de sucesos y aplicar un filtro para ver todas las alertas críticas de undeterminado objectserver. Para obtener información sobre nco_elct, consulte IBMTivoli Netcool/OMNIbus User's Guide.Tareas relacionadas:“Adición de herramientas, submenús y separadores en un menú” en la página 93

Creación y edición de herramientasCuando cree una herramienta, se añade a la base de datos de herramientas. Lasherramientas que aparecen en el panel Herramientas son enlaces a entradas en estabase de datos.

Para crear o editar una herramienta:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Menú .2. Pulse Herramientas. Se abre el panel Herramientas.3. Para añadir una herramienta, pulse Añadir herramienta en la barra de

herramientas. Se abre la ventana Detalles de herramienta.4. Para editar una herramienta, seleccione la herramienta a editar y después

pulse Editar herramienta en la barra de herramientas. Se abre la ventanaDetalles de herramienta.

5. Defina la herramienta de la forma siguiente:

NombreEscriba un nombre exclusivo para la herramienta. Si está editando unaherramienta, no puede cambiar el nombre.

HabilitadoMarque esta casilla de verificación para activar la herramienta en elsistema y que esté disponible para que los operadores la utilicen.Anule la marca de esta casilla para crear la herramienta sin activarlaen este momento, o para que no esté disponible.

6. Desde la ficha SQL , especifique los mandatos SQL que deben ejecutarse en elobjectserver cuando la herramienta se selecciona para utilizarse. Cumplimenteel separador tal como se muestra a continuación:

HabilitadoMarque esta casilla de verificación para especificar que los mandatosSQL especificados deben ejecutarse cuando se utiliza la herramienta.

Ejecutar en filas seleccionadasMarque esta casilla de verificación para especificar que los mandatosSQL deben ejecutarse una vez por cada fila en una selección de filasde la lista de sucesos.

Mandatos SQLEspecifique los mandatos SQL que deben ejecutarse cuando se ejecutala herramienta.

Puede utilizar los botones de ayuda de SQL que se muestran a laderecha de este campo para construir los mandatos SQL.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 97

Page 112: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Consejo: Puede incluir una solicitud en una sentencia SQL de maneraque cuando la herramienta se ejecuta, llama a una ventana desolicitud o a un menú emergente para que los usuarios especifiquen oseleccionen información.

7. Desde la ficha Ejecutable , escriba los mandatos externos que se debenejecutar cuando la herramienta se selecciona para su uso. Cumplimente elseparador tal como se muestra a continuación:

HabilitadoMarque esta casilla de verificación para especificar que los mandatosejecutables especificados deben ejecutarse cuando se utiliza laherramienta.

Ejecutar en filas seleccionadasMarque esta casilla de verificación para especificar que los mandatosejecutables deben ejecutarse una vez por cada fila en una selección defilas de la lista de sucesos.

Redirigir salidaMarque esta casilla de verificación para especificar que la salida deberedirigirse a través de una ventana de sólo lectura cuando se ejecutanlos mandatos. Quite la marca de esta casilla para descartar la salida.

Redirigir erroresMarque esta casilla de verificación para especificar que los erroresdeben redirigirse a través de una ventana de sólo lectura cuando seejecutan los mandatos. Quite la marca de esta casilla para descartar losmensajes de error.

Mandatos ejecutablesEspecifique los mandatos que deben ejecutarse cuando se utiliza estaherramienta.

Puede utilizar los botones de ayuda de SQL que se muestran a laderecha de este campo para construir los mandatos ejecutables.

Consejo: Puede incluir una solicitud en un mandato externo demanera que cuando la herramienta se ejecuta, llama a una ventana desolicitud o a un menú emergente para que los usuarios especifiquen oseleccionen información.

8. Desde la ficha Diario , especifique los valores de diario que deben aplicarsecuando la herramienta se selecciona para su uso. Cumplimente el separadortal como se muestra a continuación:

Forzar entrada de diarioMarque esta casilla de verificación para forzar que los usuariosespecifiquen un texto de diario antes de ejecutar la herramienta. Estetexto se agregará al diario de la alerta o alertas seleccionadas cuandose utilice la herramienta.

Ejecutar en filas seleccionadasMarque esta casilla de verificación para especificar la información dediario una vez por cada fila en una selección de filas de la lista desucesos.

Entrada de diarioEscriba el texto de la entrada de diario.

Puede utilizar los botones de ayuda que se muestran a la derecha deeste campo para construir el texto de diario.

98 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 113: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Consejo: Puede incluir una solicitud en una entrada de diario demanera que cuando la herramienta se ejecuta, llama a una ventana desolicitud o a un menú emergente para que los usuarios especifiquen oseleccionen información.

9. Desde la ficha Acceso , especifique las clases de alertas a las que se aplica laherramienta y los grupos de usuarios a los que se les permite utilizar laherramienta. Cumplimente el separador tal como se muestra a continuación:

Acceso de claseSeleccione las clases de alerta para las que se puede utilizar laherramienta. Para seleccionar todas las clases de alerta, pulse Marcartodos justo a la derecha de esta lista. Para borrar todas las selecciones,pulse No marcar nada justo a la derecha de esta lista. También puedemarcar individualmente cada casilla de verificación necesaria.

Acceso de grupoSeleccione el grupo de usuarios que puede utilizar esta herramienta.Para seleccionar todos los grupos, pulse Marcar todos justo a laderecha de esta lista. Para borrar todas las selecciones, pulse Nomarcar nada justo a la derecha de esta lista. También puede marcarindividualmente cada casilla de verificación necesaria.

10. Desde la ficha Plataforma , especifique las plataformas de sistema operativoen las que la herramienta estará disponible. Cumplimente el separador talcomo se muestra a continuación:

Plataformas disponiblesMarque estas casillas de verificación para los sistemas operativos enlos que está disponible la herramienta. Para seleccionar todos lossistemas operativos, pulse Marcar todos a la derecha de esta lista.Para borrar todas las selecciones, pulse No marcar nada a la derechade esta lista.

Importante: Debe especificar siempre los sistemas operativos en losque puede utilizarse la herramienta. La herramienta sólo estádisponible en las plataformas que están seleccionadas.

11. Desde la ficha Descripción , escriba una descripción de texto opcional paraesta herramienta. Esto puede ser útil para todo aquel que esté intentandocomprender cómo funciona la herramienta.

12. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar los detalles de la herramienta y cerrarla ventana. Se añaden nuevas herramientas al panel Herramientas.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Qué hacer a continuación

Las herramientas que se muestran en el panel Herramientas pueden añadirse a lalista de sucesos y a los menús del escritorio de Conductor para ayudar en lagestión de alertas.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 99

Page 114: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tareas relacionadas:“Adición de herramientas, submenús y separadores en un menú” en la página 93“Creación y edición de solicitudes”Referencia relacionada:Apéndice B, “Mandatos SQL, expresiones variables y botones de ayudante enherramientas, automatizaciones y listas de sucesos transitorios”, en la página 393

Supresión de herramientas

Para suprimir una herramienta:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Menú .2. Pulse Herramientas. Se abre el panel Herramientas.3. Seleccione la herramienta que desea suprimir y pulse Suprimir en la barra de

herramientas. Se suprime la herramienta.

Configuración de solicitudesUna herramienta de lista de sucesos puede incluir una ventana de solicitud o unmenú emergente donde los usuarios pueden introducir o seleccionar información.

Al crear o editar una herramienta, puede incluir una solicitud en una sentenciaSQL, un mandato externo o una entrada de diario.

Puede crear los siguientes tipos de solicitud:v Serie: crea una ventana de solicitud que acepta uno o más caracteres.v Entero: crea una ventana de solicitud que acepta un valor entero.v Flotante: crea una ventana de solicitud que acepta un número de punto flotante,

que puede contener un punto decimal.v Tiempo: crea una ventana de solicitud que acepta una hora.v Opción fija: crea un menú emergente que se rellena con las opciones que

especifique.v Búsqueda: crea un menú emergente o una lista desplegable que se rellena con

los valores de un archivo especificado.v Contraseña: crea una ventana de solicitud que acepta uno o más caracteres como

contraseña.v Opción dinámica: crea un menú emergente o una lista desplegable que se rellena

con los resultados de una consulta de base de datos.

Creación y edición de solicitudesPuede crear solicitudes para utilizarlas con herramientas.

Para crear o editar una solicitud:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Menú .2. Pulse en Solicitudes. Se abre el panel Solicitudes.3. Para agregar una solicitud, pulse Añadir solicitud en la barra de

herramientas. Se abre la ventana Detalles de solicitud. Los campos de estaventana varían de acuerdo con el tipo de solicitud que se va a crear o a editar.

100 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 115: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

4. Para editar una solicitud, seleccione la solicitud a editar y después pulseEditar solicitud en la barra de herramientas. Se abre la ventana Detalles desolicitud. Los campos de esta ventana varían de acuerdo con el tipo desolicitud que se va a crear o a editar.

5. Para crear o editar una solicitud de serie, complete la ventana como se indicaa continuación:

NombreEscriba un nombre exclusivo para la solicitud. Este nombre debecumplir los convenios de denominación del ObjectServer. Si estáeditando una solicitud, no puede cambiar el nombre.

PromptEscriba el texto de la solicitud que debe aparecer cuando laherramienta solicita información del usuario.

Tipo Seleccione Serie para crear una ventana de solicitud que acepte uno omás caracteres.

Valor predeterminadoEscriba un valor predeterminado para que se visualice en la solicitud.

6. Para crear o editar una solicitud de entero, complete la ventana como seindica a continuación:

NombreEscriba un nombre exclusivo para la solicitud. Este nombre debecumplir los convenios de denominación del ObjectServer. Si estáeditando una solicitud, no puede cambiar el nombre.

PromptEscriba el texto de la solicitud que debe aparecer cuando laherramienta solicita información del usuario.

Tipo Seleccione Entero para crear una ventana de solicitud que acepte unvalor entero.

Valor predeterminadoEscriba un valor predeterminado para que se visualice en la solicitud.

7. Para crear o editar una solicitud de flotante, complete la ventana como seindica a continuación:

NombreEscriba un nombre exclusivo para la solicitud. Este nombre debecumplir los convenios de denominación del ObjectServer. Si estáeditando una solicitud, no puede cambiar el nombre.

PromptEscriba el texto de la solicitud que debe aparecer cuando laherramienta solicita información del usuario.

Tipo Seleccione Flotante para crear una ventana de solicitud que acepte unnúmero con coma flotante, que puede contener una coma decimal.

Valor predeterminadoEscriba un valor predeterminado para que se visualice en la solicitud.

8. Para crear o editar una solicitud de tiempo, complete la ventana como seindica a continuación:

NombreEscriba un nombre exclusivo para la solicitud. Este nombre debe

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 101

Page 116: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

cumplir los convenios de denominación del ObjectServer. Si estáeditando una solicitud, no puede cambiar el nombre.

PromptEscriba el texto de la solicitud que debe aparecer cuando laherramienta solicita información del usuario.

Tipo Seleccione Hora para crear una ventana de solicitud que acepte unvalor de hora. En una solicitud de hora, el valor predeterminado esmostrar la hora actual.

9. Para crear o editar una solicitud de opción fija, complete la ventana como seindica a continuación:

NombreEscriba un nombre exclusivo para la solicitud. Este nombre debecumplir los convenios de denominación del ObjectServer. Si estáeditando una solicitud, no puede cambiar el nombre.

PromptEscriba el texto de la solicitud que debe aparecer cuando laherramienta solicita información del usuario.

Tipo Seleccione Opción fija para crear un menú emergente que se rellenacon las opciones que especifique.

OpcionesUtilice este campo para especificar opciones de menú e incluirlas en elmenú emergente. Para crear una opción nueva, pulse Añadir opción yescriba un nombre para la opción en el recuadro que se muestra en lalista de Opciones. Pulse fuera del recuadro para finalizar la entrada.También puede editar una opción existente pulsando la entrada en lalista de Opciones y luego pulsando Editar opción. Para suprimir unaopción, pulse la entrada y luego pulse en Suprimir opción.

10. Para crear o editar una solicitud de búsqueda, complete la ventana como seindica a continuación:

NombreEscriba un nombre exclusivo para la solicitud. Este nombre debecumplir los convenios de denominación del ObjectServer. Si estáeditando una solicitud, no puede cambiar el nombre.

PromptEscriba el texto de la solicitud que debe aparecer cuando laherramienta solicita información del usuario.

Tipo Seleccione Búsqueda para crear un menú emergente o una listadesplegable que se rellena con los valores de un archivo especificado.

ArchivoEscriba la vía de acceso y el nombre del archivo cuyo contenido debeutilizarse para rellenar el menú emergente o la lista desplegableasociada con la solicitud. De forma alternativa, pulse Examinar paraabrir una ventana de selección de archivos, navegar hasta la ubicaciónapropiada, y seleccionar el archivo.

11. Para crear o editar una solicitud de contraseña, complete la ventana como seindica a continuación:

NombreEscriba un nombre exclusivo para la solicitud. Este nombre debecumplir los convenios de denominación del ObjectServer. Si estáeditando una solicitud, no puede cambiar el nombre.

102 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 117: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

PromptEscriba el texto de la solicitud que debe aparecer cuando laherramienta solicita información del usuario.

Tipo Seleccione Contraseña para crear una ventana de solicitud que acepteuno o más caracteres como contraseña. Para una solicitud decontraseña, los caracteres de contraseña aparecen como asteriscoscuando el usuario cumplimenta la solicitud.

12. Para crear o editar una solicitud de opción dinámica, complete la ventanacomo se indica a continuación:

NombreEscriba un nombre exclusivo para la solicitud. Este nombre debecumplir los convenios de denominación del ObjectServer. Si estáeditando una solicitud, no puede cambiar el nombre.

PromptEscriba el texto de la solicitud que debe aparecer cuando laherramienta solicita información del usuario.

Tipo Seleccione Opción dinámica para crear un menú emergente o una listadesplegable que se rellena con los resultados de una consulta de basede datos.

Base de datosSeleccione una base de datos en la lista desplegable.

Tabla Seleccione una tabla en la base de datos seleccionada, en la listadesplegable.

MostrarSeleccione un nombre de columna de la lista desplegable. Esto definela columna que se utiliza para rellenar el menú de la solicitud.

AsignarSeleccione un nombre de columna de la lista desplegable. Esto definela columna que se utiliza para devolver un valor al mandato SQL,mandato externo o entrada de diario que contiene la solicitud.

Where Escriba una condición de búsqueda de SQL. Por ejemplo:Colname='Gravedad'.

Ordenar porSeleccione un nombre de columna de la lista desplegable. Esto definela columna por la que se ordenan los elementos en el menú de lasolicitud. Utilice las opciones Ascendente y Descendente paraespecificar la dirección de clasificación.

13. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar los detalles de solicitud y cerrar laventana. Se añaden nuevas solicitudes al panel Solicitudes.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Qué hacer a continuación

Las solicitudes que se muestran en el panel Solicitudes pueden añadirse a lasherramientas que están configuradas para ayudar a los operadores a gestionaralertas en la lista de sucesos. Cuando se ejecuta una herramienta así, aparece una

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 103

Page 118: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

ventana de solicitud o un menú emergente donde los usuarios pueden escribir oseleccionar información.Conceptos relacionados:“Convenciones de denominación para los objetos ObjectServer” en la página 149Tareas relacionadas:“Creación y edición de herramientas” en la página 97

Supresión de solicitudes

Para suprimir una solicitud:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Menú .2. Pulse en Solicitudes. Se abre el panel Solicitudes.3. Seleccione la solicitud que desea suprimir y pulse Suprimir en la barra de

herramientas. Se suprime la solicitud.

Configuración de automatizacionesPuede utilizar la automatización para detectar cambios en el ObjectServer yejecutar respuestas automáticas a dichos cambios. Esto permite al ObjectServerprocesar alertas sin necesidad de que un operador deba desempeñar una acción.

Por ejemplo, las alertas de red suelen incluir el mensaje Enlace inactivo , queindica que hay un problema en la red. Cuando se resuelve el problema, elobjectserver recibe otra alerta que incluye el mensaje Enlace activo . Utilizandouna automatización correctamente configurada, el objectserver puede asociarautomáticamente las dos alertas, reconocer que el mensaje Enlace activo indicaque el problema está resuelto y suprimir alertas de ambos.

También puede utilizar la automatización para gestionar la optimización dealmacenamiento, lo que reduce la cantidad de datos retenidos en el objectservermediante la eliminación de sucesos duplicados. Netcool/OMNIbus incluye variasautomatizaciones estándar.

Desencadenantes forma la base del subsistema de automatización de ObjectServer.Los desencadenantes realizan automáticamente una acción de desencadenante o seactivan cuando el objectserver detecta una incidencia asociada con undesencadenante. En un desencadenante, puede ejecutar mandatos SQL y llamarprocedimientos en respuesta al cambio.

Las señales y los procedimientos forman también parte del subsistema deautomatización. Las señales puede tener desencadenantes conectados, de modo queel objectserver puede responder automáticamente cuando se genera una señal. Losprocedimientos son programas ejecutables que se crean para realizar operacionescomunes y los puede ejecutar en un desencadenante o desde la interfaz interactivade SQL.Conceptos relacionados:“Interfaz interactiva SQL” en la página 145Referencia relacionada:“Ejecución de procedimientos” en la página 218“Automatizaciones de Tivoli Netcool/OMNIbus estándar” en la página 245

104 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 119: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Configuración de desencadenantesExisten tres tipos de desencadenantes: desencadenantes de base de datos,desencadenantes de señal y desencadenantes temporales. Los desencadenantes debase de datos se activan cuando se produce un incidente de base de datos. Losdesencadenantes de señal se activan cuando se emite una señal definida por elsistema o el usuario. Los desencadenantes temporales se activan de forma repetidasegún una frecuencia especificada.

Cada desencadenante debe pertenecer a un grupo de desencadenantes, que es unarecopilación de desencadenantes relacionados. Puede habilitar o inhabilitar todoslos desencadenantes de un grupo de desencadenantes determinado en una solaacción.

Consejo: Puede crear y editar desencadenantes desde las ventanaspredeterminadas del administrador de Netcool/OMNIbus o desde un editor detexto externo que elija.

Nota: El ObjectServer está configurado para escribir la salida de undesencadenante en un archivo de registro. El archivo tiene un tamaño máximodefinido, cuando se alcanza este tamaño el ObjectServer empieza a escribir en unarchivo de registro nuevo. Hay un número máximo de archivos. Cuando se superael tamaño máximo y el número máximo de archivos, tiene lugar una rotación dearchivos. Durante la rotación de archivos, no abra los archivos de registro conacceso de escritura exclusivo (por ejemplo, utilizando Microsoft Excel), porque elObjectServer no puede realizar la rotación de los archivos.

Creación y edición de grupos de desencadenanteAl crear un desencadenante, es necesario asignarle un grupo de desencadenantes.Puede crear grupos de desencadenante antes de crear sus desencadenantes (comouna acción separada) o mientras crea los desencadenantes. Esta tarea describe cómocrear un grupo de desencadenantes en una acción aparte.

Para crear o editar un grupo de desencadenantes:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Automatización.2. Pulse en Grupos de desencadenantes. Se abre el panel Grupos de

desencadenantes.3. Para añadir un grupo de desencadenantes, pulse Añadir grupo de

desencadenantes en la barra de herramientas. Se abre la ventana Detalles degrupo de desencadenantes.

4. Para editar un grupo de desencadenantes, seleccione el grupo dedesencadenantes a editar y, a continuación, pulse Editar grupo dedesencadenantes en la barra de herramientas. Se abre la ventana Detalles degrupo de desencadenantes.

5. Complete los campos como se indica a continuación:

Nombre de grupoEscriba un nombre exclusivo para el grupo de desencadenantes. Si estáeditando un grupo de desencadenantes, no puede cambiar el nombre.

Consejo: Cuando cree objetos ObjectServer, sus nombres debencomenzar con una letra en mayúsculas o minúsculas, seguida de otrasletras en mayúsculas o minúsculas, números o caracteres de subrayado(_), hasta una longitud máxima de 40. Los nombres de usuarios, grupos yroles puede ser cualquier serie de texto con una longitud de hasta 64 caracteres

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 105

Page 120: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

y puede incluir espacios. Los nombres de los objetos de ObjectServer sonsensibles a mayúsculas y minúsculas.

HabilitadoMarque esta casilla de verificación para activar el grupo dedesencadenantes.

Borre la marca de esta casilla de verificación para crear el grupo dedesencadenantes sin activarlo en este momento, o para que no estédisponible. Cuando un grupo de desencadenantes no está disponible,tampoco lo está ninguno de los desencadenantes del grupo. Tambiénpuede hacer que haya desencadenantes individuales disponibles o nodisponibles mientras los crea o los edita.

6. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar los detalles del grupo dedesencadenantes y cerrar la ventana. Se añaden nuevos grupos dedesencadenantes al panel Grupos de desencadenantes.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Tareas relacionadas:“Creación y edición de desencadenantes de base de datos”“Creación y edición de desencadenantes de señal” en la página 109“Creación y edición de desencadenantes temporales” en la página 111

Creación y edición de desencadenantes de base de datosUn desencadenante de base de datos se activa cuando se produce una modificaciónde base de datos de desencadenante. Por ejemplo, puede crear un desencadenantepara realizar una acción cada vez que tiene lugar una inserción en la tablaalerts.status.

Para crear o editar un desencadenante de base de datos:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Automatización.2. Pulse Desencadenantes. Se abre el panel Desencadenantes.

Este panel lista todos los desencadenantes de base de datos, señal ytemporales que se configuran.

Consejo: Para ver solamente un tipo de desencadenante, pulse Mostrardesencadenantes de base de datos solamente, Mostrar desencadenantestemporales solamente o Mostrar desencadenantes de señal solamente en labarra de herramientas.

3. Para añadir un desencadenante de base de datos, pulse Añadirdesencadenante de base de datos en la barra de herramientas. Se abre laventana Detalles de desencadenante de base de datos.

4. Para editar un desencadenante de base de datos, seleccione el desencadenantede base de datos a editar y después pulse Editar desencadenante en la barrade herramientas. Se abre la ventana Detalles de desencadenante de base dedatos.

5. Defina o edite los detalles de configuración de desencadenante de la formasiguiente:

106 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 121: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

NombreEscriba un nombre de desencadenante exclusivo. Si está editando undesencadenante, no puede cambiar el nombre.

Consejo: Cuando cree objetos ObjectServer, sus nombres debencomenzar con una letra en mayúsculas o minúsculas, seguida de otrasletras en mayúsculas o minúsculas, números o caracteres desubrayado (_), hasta una longitud máxima de 40. Los nombres deusuarios, grupos y roles puede ser cualquier serie de texto con una longitudde hasta 64 caracteres y puede incluir espacios. Los nombres de los objetosde ObjectServer son sensibles a mayúsculas y minúsculas.

Grupo Seleccione el grupo de desencadenantes al que desea asignar eldesencadenante.

Añadir nuevo grupo de desencadenantesPulse este botón si desea crear un nuevo grupo de desencadenantes alque asignar el desencadenante. Aparece la ventana Detalles del grupode desencadenantes. Complete esta ventana y guarde los cambios.

Cuando vuelve a la ventana Detalles del desencadenante de base dedatos, el nuevo grupo de desencadenantes aparece como el grupo dedesencadenantes actualmente seleccionado.

6. Complete la pestaña Parámetros del modo siguiente:

ActivadoSeleccione la base de datos de ObjectServer y la tabla de base de datosque ha iniciado el desencadenante.

PrioridadSeleccione una prioridad que determine el orden en el queObjectServer inicia los desencadenantes cuando la modificación deesta base de datos activa más de un desencadenante. Puedeseleccionar números del 1 al 20, siendo 1 el de máxima prioridad.

Acción de base de datos previa/Acción de base de datos posteriorPulse Acción de base de datos previa para indicar que la acción deldesencadenante debe ejecutarse antes de que se produzca lamodificación de la base de datos que originó el desencadenante. PulseAcción de base de datos posterior para indicar que la acción deldesencadenante debe ejecutarse después de que se produzca lamodificación de la base de datos que originó el desencadenante.

Por ejemplo, puede pulsar Acción de base de datos previa paraevaluar un nombre de usuario antes de que se suprima una fila de latabla alerts.status. En el desencadenante, puede detectar si el usuariotiene permiso para suprimir elementos de la tabla alerts.status y, si nolo tiene, impedir que se realicen modificaciones en la base de datos. Sipulsa Acción de base de datos posterior, siempre se realizanmodificaciones en la base de datos.

Suprimir/Insertar/Reinsertar/ActualizarUtilice estas opciones para especificar el tipo de modificación de basede datos que debe producirse.

Fila/SentenciaPulse Fila para definir el desencadenante que debe iniciarse una vezpara cada fila que coincida con la condición del desencadenante. PulseSentencia para definir el desencadenante que debe iniciarse una vezindependientemente del número de filas coincidentes en la tabla.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 107

Page 122: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

DepurarMarque esta casilla de verificación para enviar información dedepuración al registro de mensajes del ObjectServer cada vez que seinicia el desencadenante.

HabilitadoMarque esta casilla de verificación para activar el desencadenante yque esté disponible para su uso. Anule la marca de esta casilla paracrear el desencadenante sin activarlo en este momento, o para que noesté disponible. Los desencadenantes inhabilitados no se iniciancuando se produce una modificación de base de datos asociada.

7. Desde la pestaña Cuando, especifique una cláusula WHEN opcional que lepermita probar una determinada condición antes de que se realice la acción. Sila condición no se cumple, la acción no se realiza. Puede utilizar los botonesde ayuda que se muestran a la derecha del campo para construir la cláusulaWHEN.

8. Desde la ficha Acción , entre los mandatos SQL para el desencadenante.El cuerpo de un desencadenante contiene un conjunto de mandatos SQL yconstrucciones de programación que manipulan los datos en el ObjectServer.El cuerpo del desencadenante se encuentra entre las palabras clave BEGIN yEND. Cada sentencia, excepto la última, debe estar separada por el signo depunto y coma (;).Puede definir (mediante Declare) opcionalmente variables locales parautilizarlas en un desencadenante. Una variable local es un marcador de losvalores que se utilizan durante la ejecución del desencadenante. Lasdeclaraciones de variables locales en un desencadenante deben separarsemediante signos de punto y coma (;).El cuerpo del desencadenante tiene la sintaxis siguiente:[ DECLARE declaración_variable;...[;] ]BEGINlista_sentencias_desencadenanteEND;

Puede utilizar los botones de ayuda de SQL que se muestran a la derecha delpanel del editor de SQL para construir los mandatos SQL.

9. Desde la ficha Comentario , escriba un comentario de texto opcional para eldesencadenante. Esto puede ser de utilidad para todo aquel que trata deentender cómo funciona el desencadenante.

10. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar los detalles del desencadenante y cerrarla ventana. Se añaden nuevos desencadenantes al panelDesencadenantes.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

108 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 123: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Conceptos relacionados:“Condiciones” en la página 183Tareas relacionadas:“Creación y edición de grupos de desencadenante” en la página 105Referencia relacionada:“Creación de desencadenantes de base de datos (mandato CREATE TRIGGER)” enla página 222“Procedimientos recomendados para la creación de desencadenantes” en la página343Apéndice B, “Mandatos SQL, expresiones variables y botones de ayudante enherramientas, automatizaciones y listas de sucesos transitorios”, en la página 393

Creación y edición de desencadenantes de señalLos desencadenantes de señal se activan cuando se emite una señal de sistema odefinida por el usuario. Las señales de sistema se activan espontáneamente por elobjectserver cuando detecta cambios en el sistema. Las señales definidas por elusuario se han creado activados y descartado de forma explícita.

Por ejemplo, puede crear un desencadenante de señal para enviar un correoelectrónico a un operador cuando el objectserver se inicia o se detiene, ya que segenera una señal de un sistema cuando esto ocurre.

Para crear o editar un desencadenante de señal:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Automatización.2. Pulse Desencadenantes. Se abre el panel Desencadenantes.

Este panel lista todos los desencadenantes de base de datos, señal ytemporales que se configuran.

Consejo: Para ver solamente un tipo de desencadenante, pulse Mostrardesencadenantes de base de datos solamente, Mostrar desencadenantestemporales solamente o Mostrar desencadenantes de señal solamente en labarra de herramientas.

3. Para añadir un desencadenante de señal, pulse Añadir desencadenante deseñal en la barra de herramientas. Se abre la ventana Detalles dedesencadenante de señal.

4. Para editar un desencadenante de señal, seleccione el desencadenante de señala editar y después pulse Editar desencadenante en la barra de herramientas.Se abre la ventana Detalles de desencadenante de señal.

5. Defina o edite los detalles de configuración de desencadenante de la formasiguiente:

NombreEscriba un nombre de desencadenante exclusivo. Si está editando undesencadenante, no puede cambiar el nombre.

Consejo: Cuando cree objetos ObjectServer, sus nombres debencomenzar con una letra en mayúsculas o minúsculas, seguida de otrasletras en mayúsculas o minúsculas, números o caracteres desubrayado (_), hasta una longitud máxima de 40. Los nombres deusuarios, grupos y roles puede ser cualquier serie de texto con una longitudde hasta 64 caracteres y puede incluir espacios. Los nombres de los objetosde ObjectServer son sensibles a mayúsculas y minúsculas.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 109

Page 124: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Grupo Seleccione el grupo de desencadenantes al que desea asignar eldesencadenante.

Añadir nuevo grupo de desencadenantesPulse este botón si desea crear un nuevo grupo de desencadenantes alque asignar el desencadenante. Aparece la ventana Detalles del grupode desencadenantes. Complete esta ventana y guarde los cambios.

Cuando vuelve a la ventana Detalles del desencadenante de señal, elnuevo grupo de desencadenantes aparece como el grupo dedesencadenantes actualmente seleccionado.

6. Complete la pestaña Parámetros del modo siguiente:

Señal Seleccione la señal que provoque la activación del desencadenante.

PrioridadSeleccione una prioridad que determine el orden en el queObjectServer inicia los desencadenantes cuando esta señal activa másde un desencadenante. Puede seleccionar números del 1 al 20, siendo1 el de máxima prioridad.

DepurarMarque esta casilla de verificación para enviar información dedepuración al registro de mensajes del ObjectServer cada vez que seinicia el desencadenante.

HabilitadoMarque esta casilla de verificación para activar el desencadenante yque esté disponible para su uso. Anule la marca de esta casilla paracrear el desencadenante sin activarlo en este momento, o para que noesté disponible. Los desencadenantes inhabilitados no se iniciancuando se produce una señal asociada.

7. Desde la pestaña Cuando, especifique una cláusula WHEN opcional que lepermita probar una determinada condición antes de que se realice la acción. Sila condición no se cumple, la acción no se realiza. Puede utilizar los botonesde ayuda que se muestran a la derecha del campo para construir la cláusulaWHEN.

8. Desde la ficha Evaluar , opcionalmente cree un conjunto de resultadostemporal de una sentencia SELECT individual para que se procese durante laacción desencadenante que se define en la ficha Acción . Cumplimente elseparador tal como se muestra a continuación:

Enlazar comoEscriba el nombre de la tabla temporal en la que se almacenará elconjunto de resultados.

Panel del editor de SQLEscriba la sentencia en este formato:

EVALUATE SELECT_mandato

Puede utilizar los botones de ayuda de SQL que se muestran a laderecha del campo para construir la sentencia.

9. Desde la ficha Acción , entre los mandatos SQL para el desencadenante.El cuerpo de un desencadenante contiene un conjunto de mandatos SQL yconstrucciones de programación que manipulan los datos en el ObjectServer.El cuerpo del desencadenante se encuentra entre las palabras clave BEGIN yEND. Cada sentencia, excepto la última, debe estar separada por el signo depunto y coma (;).

110 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 125: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Puede definir (mediante Declare) opcionalmente variables locales parautilizarlas en un desencadenante. Una variable local es un marcador de losvalores que se utilizan durante la ejecución del desencadenante. Lasdeclaraciones de variables locales en un desencadenante deben separarsemediante signos de punto y coma (;).El cuerpo del desencadenante tiene la sintaxis siguiente:[ DECLAREdeclaración_variable;...[;] ]BEGINlista_sentencias_desencadenanteEND;

Puede utilizar los botones de ayuda de SQL que se muestran a la derecha delpanel del editor de SQL para construir los mandatos SQL.

10. Desde la ficha Comentario , escriba un comentario de texto opcional para eldesencadenante. Esto puede ser de utilidad para todo aquel que trata deentender cómo funciona el desencadenante.

11. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar los detalles del desencadenante y cerrarla ventana. Se añaden nuevos desencadenantes al panelDesencadenantes.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Conceptos relacionados:“Configuración de señales” en la página 125“Condiciones” en la página 183Tareas relacionadas:“Creación y edición de grupos de desencadenante” en la página 105Referencia relacionada:“Creación de desencadenantes de señal (mandato CREATE TRIGGER)” en lapágina 226“Señales del sistema y sus atributos” en la página 232“Procedimientos recomendados para la creación de desencadenantes” en la página343Apéndice B, “Mandatos SQL, expresiones variables y botones de ayudante enherramientas, automatizaciones y listas de sucesos transitorios”, en la página 393

Creación y edición de desencadenantes temporalesLos desencadenantes temporales se activan repetidamente basándose en unafrecuencia determinada.

Por ejemplo, puede utilizar un desencadenante temporal para suprimir todas lasfilas vacías ( gravedad = 0 ) de la tabla de estado de las alertas que no han sidomodificadas en un periodo determinado de tiempo.

Para crear o editar un desencadenante temporal:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Automatización.2. Pulse Desencadenantes. Se abre el panel Desencadenantes.

Este panel lista todos los desencadenantes de base de datos, señal ytemporales que se configuran.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 111

Page 126: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Consejo: Para ver solamente un tipo de desencadenante, pulse Mostrardesencadenantes de base de datos solamente, Mostrar desencadenantestemporales solamente o Mostrar desencadenantes de señal solamente en labarra de herramientas.

3. Para añadir un desencadenante temporal, pulse Añadir desencadenantetemporal en la barra de herramientas. Se abre la ventana Detalles dedesencadenante temporal.

4. Para editar un desencadenante temporal, seleccione el desencadenantetemporal a editar y después pulse Editar desencadenante en la barra deherramientas. Se abre la ventana Detalles de desencadenante temporal.

5. Defina o edite los detalles de configuración de desencadenante de la formasiguiente:

NombreEscriba un nombre de desencadenante exclusivo. Si está editando undesencadenante, no puede cambiar el nombre.

Consejo: Cuando cree objetos ObjectServer, sus nombres debencomenzar con una letra en mayúsculas o minúsculas, seguida de otrasletras en mayúsculas o minúsculas, números o caracteres desubrayado (_), hasta una longitud máxima de 40. Los nombres deusuarios, grupos y roles puede ser cualquier serie de texto con una longitudde hasta 64 caracteres y puede incluir espacios. Los nombres de los objetosde ObjectServer son sensibles a mayúsculas y minúsculas.

Grupo Seleccione el grupo de desencadenantes al que desea asignar eldesencadenante.

Añadir nuevo grupo de desencadenantesPulse este botón si desea crear un nuevo grupo de desencadenantes alque asignar el desencadenante. Aparece la ventana Detalles del grupode desencadenantes. Complete esta ventana y guarde los cambios.

Cuando vuelve a la ventana Detalles del desencadenante temporal, elnuevo grupo de desencadenantes se añadirá a la lista de Grupo. Acontinuación puede asignar el desencadenante a este grupo dedesencadenantes.

6. Complete la pestaña Parámetros del modo siguiente:

Cada vezDefina cuándo debe iniciarse el desencadenante. Especifique un valornumérico y seleccione horas, minutos o segundos de la listadesplegable.

PrioridadSeleccione una prioridad que determine el orden en el queObjectServer inicia los desencadenantes cuando se produce más de undesencadenante en esta frecuencia. Puede seleccionar números del 1 al20, siendo 1 el de máxima prioridad.

DepurarMarque esta casilla de verificación para enviar información dedepuración al registro de mensajes del ObjectServer cada vez que seinicia el desencadenante.

HabilitadoMarque esta casilla de verificación para activar el desencadenante yque esté disponible para su uso. Anule la marca de esta casilla para

112 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 127: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

crear el desencadenante sin activarlo en este momento, o para que noesté disponible. El desencadenante inhabilitado no se inicia.

7. Desde la pestaña Cuando, especifique una cláusula WHEN opcional que lepermita probar una determinada condición antes de que se realice la acción. Sila condición no se cumple, la acción no se realiza. Puede utilizar los botonesde ayuda que se muestran a la derecha del campo para construir la cláusulaWHEN.

8. Desde la ficha Evaluar , opcionalmente cree un conjunto de resultadostemporal de una sentencia SELECT individual para que se procese durante laacción desencadenante que se define en la ficha Acción . Cumplimente elseparador tal como se muestra a continuación:

Enlazar comoEscriba el nombre de la tabla temporal en la que se almacenará elconjunto de resultados.

Panel del editor de SQLEscriba la sentencia en este formato:

EVALUATE SELECT_mandato

Puede utilizar los botones de ayuda de SQL que se muestran a laderecha del panel del editor de SQL para construir la sentencia.

9. Desde la ficha Acción , entre los mandatos SQL para el desencadenante.El cuerpo de un desencadenante contiene un conjunto de mandatos SQL yconstrucciones de programación que manipulan los datos en el ObjectServer.El cuerpo del desencadenante se encuentra entre las palabras clave BEGIN yEND. Cada sentencia, excepto la última, debe estar separada por el signo depunto y coma (;).Puede definir (mediante Declare) opcionalmente variables locales parautilizarlas en un desencadenante. Una variable local es un marcador de losvalores que se utilizan durante la ejecución del desencadenante. Lasdeclaraciones de variables locales en un desencadenante deben separarsemediante signos de punto y coma (;).El cuerpo del desencadenante tiene la sintaxis siguiente:[ DECLAREdeclaración_variable;...[;] ]BEGINlista_sentencias_desencadenanteEND;

Puede utilizar los botones de ayuda de SQL que se muestran a la derecha delpanel del editor de SQL para construir los mandatos SQL.

10. Desde la ficha Comentario , escriba un comentario de texto opcional para eldesencadenante. Esto puede ser de utilidad para todo aquel que trata deentender cómo funciona el desencadenante.

11. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar los detalles del desencadenante y cerrarla ventana. Se añaden nuevos desencadenantes al panelDesencadenantes.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 113

Page 128: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Conceptos relacionados:“Condiciones” en la página 183Tareas relacionadas:“Creación y edición de grupos de desencadenante” en la página 105Referencia relacionada:“Creación de desencadenantes temporales (mandato CREATE TRIGGER)” en lapágina 225“Procedimientos recomendados para la creación de desencadenantes” en la página343Apéndice B, “Mandatos SQL, expresiones variables y botones de ayudante enherramientas, automatizaciones y listas de sucesos transitorios”, en la página 393

Utilización de un editor externo para crear y editardesencadenantesDesde netcool/Omnibus Administrator, puede configurar un editor de textosexterno y luego utilizarlo para crear o editar desenca5denantes.

Configuración de un editor externo para los desencadenantes:

Si es necesario, se pueden crear y editar desencadenantes desde un editor de textoexterno que elija. Primero debe configurar qué editor desea utilizar.

Para configurar un editor externo:1. Desde Netcool/OMNIbus Administrator, pulse Herramientas > Configurar

herramientas. Se abrirá la ventana Elegir herramienta.2. Seleccione Editor de texto. Se abre la ventana Programa externo.3. Complete esta ventana de la forma siguiente:

Nombre de la herramientaEste campo muestra el tipo de herramienta que va a configurar.

EjecutableEscriba la vía de acceso completa y el nombre del programa ejecutablepara el tipo de herramienta. Como alternativa, pulse el botón situado ala derecha del campo para buscar y seleccionar el programa ejecutable.

ArgumentosEscriba los argumentos de línea de mandatos que se deben ejecutar coneste programa ejecutable.

Entorno de tiempo de ejecuciónSeleccione el entorno de tiempo de ejecución.

4. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar los detalles del programa externo ycerrar la ventana.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Tareas relacionadas:“Creación y edición de desencadenantes en un editor externo” en la página 115

114 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 129: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Creación y edición de desencadenantes en un editor externo:

Puede utilizar un editor externo para crear o editar un desencadenante de base dedatos, señal o temporal.

Antes de empezar

Debe haber configurado un editor externo que se va a utilizar para crear o editardesencadenantes.

Para crear o editar un desencadenante:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Automatización.2. Pulse Desencadenantes. Se abre el panel Desencadenantes. Este panel lista

todos los desencadenantes de base de datos, señal y temporales que seconfiguran.

Consejo: Para ver solamente un tipo de desencadenante, pulse Mostrardesencadenantes de base de datos solamente, Mostrar desencadenantestemporales solamente o Mostrar desencadenantes de señal solamente en labarra de herramientas.

3. Para crear un desencadenante, asegúrese de que no hay ninguna filaseleccionada en el panel Desencadenantes y pulse Editar en editor externo enla barra de herramientas. (Puede deseleccionar una fila presionando Ctrl yluego pulsando en la fila.) Se abre el cuadro de diálogo Seleccionar tipo dedesencadenante. Proceda como se explica a continuación:a. Desde la lista Plantilla de desencadenante , seleccione la plantilla para el

tipo de desencadenante que desea crear. Si selecciona Base de datos , Señal, o Temporal , el editor externo se abre con una sintaxis estándar para esetipo de desencadenante. Si selecciona <blank>, el editor externo se abre sintexto.

b. Rellene la sintaxis para el desencadenante. Si está utilizando una plantilla,sustituya las variables trigger_name y group_name por los valores reales.Adicionalmente, para un desencadenante de señal, sustituya la variablesignalName con un valor real, y para un desencadenante de base de datos,sustituya la variable database_name table_name. con un valor real. Añadasentencias específicas de desencadenante, cláusulas opcionales ydeclaraciones de variables, según sea necesario. A continuación, añada elcuerpo del desencadenante entre las palabras clave begin y end. La plantillaincluye comentarios (precedidos de--) para la colocación de texto.

c. Guarde las entradas. Cuando se guarda, el desencadenante se guarda en elobjectserver. Si hay errores de sintaxis, se le solicitará volver a cargar elcontenido del editor externo.

d. Cierre el editor externo.4. Para editar un desencadenante, seleccione el desencadenante a editar y, a

continuación, pulse Editar en editor externo en la barra de herramientas opulse con el botón derecho del ratón y seleccione Editar en editor externo en elmenú emergente. Se abre el editor externo, con la sintaxis del desencadenantevisualizada. Proceda como se explica a continuación:a. Edite la sintaxis del desencadenante y guarde los cambios. Cuando se

guarda, el desencadenante se guarda en el objectserver. Si hay errores desintaxis, se le solicitará volver a cargar el contenido del editor externo.

b. Cierre el editor externo.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 115

Page 130: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Resultados

Consejo: El SQL que especifique en un editor externo se guarda en el objectservercomo un archivo . ed . Puede comprobar la validez de la sintaxis en los archivos .ed y otros SQL. de la interfaz interactiva de SQL (ejecución en la modalidad deGUI).Tareas relacionadas:“Configuración de un editor externo para los desencadenantes” en la página 114“Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica deusuario” en la página 142Referencia relacionada:“Creación de desencadenantes de base de datos (mandato CREATE TRIGGER)” enla página 222“Creación de desencadenantes de señal (mandato CREATE TRIGGER)” en lapágina 226“Creación de desencadenantes temporales (mandato CREATE TRIGGER)” en lapágina 225

Supresión de grupos de desencadenantesNo puede suprimir un grupo de desencadenantes que contenga desencadenantes.

Para suprimir un grupo de desencadenantes:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Automatización.2. Pulse en Grupos de desencadenantes. Se abre el panel Grupos de

desencadenantes.3. Seleccione el grupo de desencadenantes que desea suprimir y pulse Suprimir

en la barra de herramientas. Se suprime el grupo de desencadenantes.

Supresión de desencadenantes

Para suprimir un desencadenante:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Automatización.2. Pulse Desencadenantes. Se abre el panel Desencadenantes.3. Seleccione el desencadenante que desea suprimir y pulse Suprimir en la barra

de herramientas. Se suprime el desencadenante.

Configuración de procedimientosUn procedimiento es un objeto SQL ejecutable que se puede llamar para realizaroperaciones comunes.

Los tipos de procedimientos son los siguientes:v Procedimientos SQL, que manipulan datos en una base de datos objectserverv Los procedimientos externos, que ejecutan un archivo ejecutable en un sistema

remoto o local.

Consejo: Puede crear y editar procedimientos de desde la ventana denetcool/Omnibus Administrator por defecto, o desde un editor de texto externo desu elección.

116 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 131: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Creación y edición de procedimientos SQLLos procedimientos SQL tienen los siguientes componentes principales: parámetros,declaraciones de variable local y el cuerpo del procedimiento.

Los parámetros son valores que se pasan a un procedimiento o se extraen de éste.Puede declarar los parámetros del procedimiento cuando cree el procedimiento yespecificar qué valores se pasan como parámetros cuando ejecute el procedimiento.

Las declaraciones de variable local se declaran antes del cuerpo del procedimientoy se pueden utilizar para definir los valores que se utilizan cuando se ejecuta elprocedimiento.

Para crear o editar un procedimiento SQL:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Automatización.2. Pulse Procedimientos. Se abre el panel Procedimientos.3. Para agregar un procedimiento SQL, pulse Añadir procedimiento SQL en la

barra de herramientas. Se abre la ventana Detalles de procedimiento SQL.4. Para editar un procedimiento SQL, seleccione el procedimiento SQL a editar y

después pulse Editar procedimiento en la barra de herramientas. Se abre laventana Detalles de procedimiento SQL.

5. Complete esta ventana del modo siguiente:

NombreEscriba un nombre exclusivo para el procedimiento. Si está editando unprocedimiento, no puede cambiar el nombre.

Consejo: Cuando cree objetos ObjectServer, sus nombres debencomenzar con una letra en mayúsculas o minúsculas, seguida de otrasletras en mayúsculas o minúsculas, números o caracteres de subrayado(_), hasta una longitud máxima de 40. Los nombres de usuarios, grupos yroles puede ser cualquier serie de texto con una longitud de hasta 64 caracteresy puede incluir espacios. Los nombres de los objetos de ObjectServer sonsensibles a mayúsculas y minúsculas.

ParámetrosEsta área visualiza los parámetros que se han creado para pasar dentroy fuera del procedimiento.

Puede utilizar las flechas arriba y abajo de la derecha del recuadro delista para cambiar el orden de los parámetros seleccionados. Tambiénpuede pulsar Eliminar parámetro de la derecha del recuadro de listapara eliminar los parámetros seleccionados de la lista.

Para crear un parámetro, utilice los campos Entrada/Salida, Nombre yTipo de datos, la casilla de verificación Matriz (si es necesario) y elbotón Añadir parámetro a la lista.

Entrada/salidaSeleccione una modalidad para que se cree el parámetro. Cadaparámetro de procedimiento tiene una modalidad, que puedeser in, out o in out. En función de la modalidad que elija parasus parámetros, puede utilizarlos de diferentes formas.

NombreEscriba un nombre para el parámetro que está creando. Losnombres de parámetro deben ser exclusivos en elprocedimiento.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 117

Page 132: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Consejo: Cuando cree objetos ObjectServer, sus nombres debencomenzar con una letra en mayúsculas o minúsculas, seguidade otras letras en mayúsculas o minúsculas, números ocaracteres de subrayado (_), hasta una longitud máxima de 40.Los nombres de usuarios, grupos y roles puede ser cualquier serie detexto con una longitud de hasta 64 caracteres y puede incluirespacios. Los nombres de los objetos de ObjectServer sonsensibles a mayúsculas y minúsculas.

Tipo de datosSeleccione el tipo de datos que el parámetro puede pasardentro o fuera del procedimiento. El tipo de datos puede sercualquier tipo de datos de ObjectServer válido exceptoVARCHAR o INCR.

MatrizSi ha seleccionado la modalidad in de la lista desplegableEntrada/Salida, puede marcar esta casilla de verificación parapasar una matriz del tipo de datos seleccionado dentro delprocedimiento.

Añadir parámetro a la listaDespués de completar los campos Entrada/Salida, Nombre yTipo de datos, y la casilla de verificación Matriz opcional,pulse este botón para añadir el parámetro a la lista deparámetros.

AccionesEscriba los mandatos SQL correspondientes a este procedimiento. Elcuerpo de un procedimiento contiene un conjunto de mandatos SQL yconstrucciones de programación que manipulan los datos en elObjectServer. El cuerpo del procedimiento se encuentra entre laspalabras clave BEGIN y END. Cada sentencia, excepto la última, debeestar separada por el signo de punto y coma (;).

Puede definir (mediante Declare) opcionalmente variables locales parautilizarlas en un procedimiento. Una variable local es un marcador delos valores que se utilizan durante la ejecución del procedimiento. Lasdeclaraciones de variables locales en un procedimiento deben separarsemediante signos de punto y coma (;).

Puede utilizar los botones de ayuda de SQL que se muestran a laderecha del panel del editor de SQL para construir los mandatos SQL.

6. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar el procedimiento SQL y cerrar laventana. Se añaden nuevos procedimientos SQL al panelProcedimientos.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Qué hacer a continuación

Después de crear un procedimiento en el ObjectServer, puede ejeuctarlo desde lainterfaz interactiva SQL (iSQL), utilizando el mandato EXECUTE PROCEDURE.

118 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 133: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Referencia relacionada:“Creación de procedimientos SQL (mandato CREATE PROCEDURE)” en la página208“Ejecución de procedimientos” en la página 218“Especificación de tipos de datos para columnas” en la página 155Apéndice B, “Mandatos SQL, expresiones variables y botones de ayudante enherramientas, automatizaciones y listas de sucesos transitorios”, en la página 393

Ejemplo: Procedimiento SQLEste ejemplo de procedimiento SQL genera un informe en el número total dealertas recibidas (y duplicados) de un determinado nodo.

Dentro de la ventana Detalles de procedimiento SQL , el procedimiento SQLdenominado node_report se crea con las entradas siguientes:

Tabla 20. Entradas para el procedimiento SQL node_report en la ventana Detalles de procedimiento SQL

Campo Entrada

Nombre node_report

Parámetros in node_name Char(255)

Esta entrada de sólo lectura en la lista Parámetros se construye a partir de entradasrealizadas en los campos Entrada/salida , Nombre , Tipo de datos y Longitud delárea Parámetros . Por ejemplo:

v In/Out: in

v Name: node_name

v Data Type: Char

v Length: 255

Acciones declaretally_total integer;

beginset tally_total = 0;for each row tmprow in alerts.status where tmprow.Node = node_namebeginset tally_total = tally_total + tmprow.Tally;end;write into node_report_file values ( ’Total tally for node ’, node_name,

’ = ’, tally_total );end

El mandato SQL para crear el archivo ObjectServer de node_report_file y todo eltexto SQL del mismo procedimiento node_report es el siguiente:create file node_report_file ’/tmp/node_report’;

create procedure node_report( node_name char(255) )declare

tally_total integer;begin

set tally_total = 0;for each row tmprow in alerts.status where tmprow.Node = node_namebeginset tally_total = tally_total + tmprow.Tally;end;write into node_report_file values ( ’Total tally for node ’, node_name,

’ = ’, tally_total );end;

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 119

Page 134: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Creación y edición de procedimientos externosPuede crear procedimientos externos para ejecutar un programa ejecutable en unsistema remoto o local.

Para crear o editar un procedimiento externo:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Automatización.2. Pulse Procedimientos. Se abre el panel Procedimientos.3. Para agregar un procedimiento externo, pulse Añadir procedimiento externo

en la barra de herramientas. Se abre la ventana Detalles de procedimientoexterno.

4. Para editar un procedimiento externo, seleccione el procedimiento externo aeditar y después pulse Editar procedimiento en la barra de herramientas. Seabre la ventana Detalles de procedimiento externo.

5. Complete esta ventana del modo siguiente:

NombreEscriba un nombre exclusivo para el procedimiento. Si está editando unprocedimiento, no puede cambiar el nombre.

Consejo: Cuando cree objetos ObjectServer, sus nombres debencomenzar con una letra en mayúsculas o minúsculas, seguida de otrasletras en mayúsculas o minúsculas, números o caracteres de subrayado(_), hasta una longitud máxima de 40. Los nombres de usuarios, grupos yroles puede ser cualquier serie de texto con una longitud de hasta 64 caracteresy puede incluir espacios. Los nombres de los objetos de ObjectServer sonsensibles a mayúsculas y minúsculas.

ParámetrosEsta área visualiza los parámetros que se han creado para elprocedimiento. Estos parámetros pueden ser variables de tipo base,matrices de valores de tipo base o filas de tablas con nombre.

Puede utilizar las flechas arriba y abajo de la derecha del recuadro delista para cambiar el orden de los parámetros seleccionados. Tambiénpuede pulsar Eliminar parámetro de la derecha del recuadro de listapara eliminar los parámetros seleccionados de la lista.

Para crear un parámetro, utilice los campos Entrada/Salida, Nombre yTipo de datos, la casilla de verificación Matriz y el botón Añadirparámetro a la lista.

Entrada/salidaLa modalidad de entrada es la seleccionada de manerapredeterminada. No puede cambiar este valor porque losparámetros de procedimiento externo siempre son parámetrosIN (entrada). Puede utilizar un parámetro IN (entrada) enexpresiones para ayudar a calcular un valor, pero no puedeasignar un valor al parámetro.

NombreEscriba un nombre para el parámetro que está creando. Losnombres de parámetro deben ser exclusivos en elprocedimiento.

Consejo: Cuando cree objetos ObjectServer, sus nombres debencomenzar con una letra en mayúsculas o minúsculas, seguidade otras letras en mayúsculas o minúsculas, números o

120 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 135: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

caracteres de subrayado (_), hasta una longitud máxima de 40.Los nombres de usuarios, grupos y roles puede ser cualquier serie detexto con una longitud de hasta 64 caracteres y puede incluirespacios. Los nombres de los objetos de ObjectServer sonsensibles a mayúsculas y minúsculas.

Tipo de datosSeleccione el tipo de datos que el parámetro puede pasar en elprocedimiento. El tipo de datos puede ser cualquier tipo dedatos de ObjectServer válido excepto VARCHAR o INCR.

MatrizMarque esta casilla de verificación para pasar una matriz deltipo de datos seleccionado en el procedimiento.

Añadir parámetro a la listaDespués de completar los campos Entrada/Salida, Nombre yTipo de datos, y la casilla de verificación Matriz, pulse estebotón para añadir el parámetro a la lista de parámetros.

EjecutableEscriba la vía de acceso completa del mandato que se va a ejecutar.Puede pulsar Examinar para ayudar a localizar y seleccionar el archivo.

ArgumentosEscriba los argumentos de línea de mandatos correspondientes almandato que va a ejecutar.

Host Escriba el nombre del host en el que se va a ejecutar el procedimiento.El nombre del equipo que ha iniciado la sesión se muestra de manerapredeterminada.

ID de usuarioEspecifique el ID de usuario (UNIX) bajo el cual se ejecutará elprograma ejecutable.

ID de grupoEspecifique el ID de grupo (UNIX) bajo el cual se ejecutará el programaejecutable.

6. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar el procedimiento externo y cerrar laventana. Se añaden nuevos procedimientos externos al panelProcedimientos.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Qué hacer a continuación

Después de crear un procedimiento en el ObjectServer, puede ejeuctarlo desde lainterfaz interactiva SQL (iSQL), utilizando el mandato EXECUTE PROCEDURE.

Nota: Para ejecutar un procedimiento externo, debe disponer de un daemon deagente de control de proceso ( nco_pad ) ejecutándose en el host donde elejecutable se ha almacenado.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 121

Page 136: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Conceptos relacionados:Capítulo 7, “Utilización del control de procesos para gestionar procesos yprocedimientos externos”, en la página 265Referencia relacionada:“Especificación de tipos de datos para columnas” en la página 155“Ejecución de procedimientos” en la página 218

Ejemplo: Procedimiento externoLas siguientes llamadas de procedimiento externo llamadas nco_mail , que envíacorreo electrónico sobre alertas críticas reconocidas.

Dentro de la ventana Detalles de procedimiento externo , el procedimiento externodenominado send_email se crea con las entradas siguientes:

Tabla 21. Entradas para el procedimiento externo de send_email la ventana de detalles deprocedimiento externo

Campo Entrada

Nombre send_email

Parámetros in node Char(255)in severity Integerin subject Char(255)in email Char(255)in summary Char(255)in hostname Char(255)

Estas entradas de sólo lectura en la lista de parámetros seconstruyen a partir de entradas realizadas en los camposEntrada/salida , Nombre , Tipo de datos y Longitud del áreaParámetros . Por ejemplo, para in node Char(255), las entradasson:

v In/Out: in

v Name: node

v Data Type: Char

v Length: 255

Executable $NCHOME/omnibus/utils/nco_mail

Argumentos '\''+node+'\'', severity,'\''+subject+'\'','\''+email+'\'','\''+summary+'\''

Host localhost

El texto SQL completo del mismo procedimiento send_email es el siguiente:create or replace procedure send_email(in node character(255), in severity integer, in subject character(255),in email character(255), in summary character(255), in hostname character(255))executable ’$NCHOME/omnibus/utils/nco_mail’host ’localhost’user 0group 0arguments ’\’’ + node + ’\’’, severity, ’\’’ + subject + ’\’’,’\’’ + email + ’\’’, ’\’’ + summary + ’\’’;

Este ejemplo también muestra cómo pasar cadenas de texto a un ejecutable. Lasseries deben estar encerrados entre comillas dobles y las comillas dobles debenincluirse entre barras invertidas. Todas las comillas de este ejemplo son comillassimples.

122 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 137: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Utilización de un editor externo para crear y editarprocedimientosDesde netcool/Omnibus Administrator, puede configurar un editor de textosexterno y luego utilizarlo para crear o editar procedimientos.

Configuración de un editor externo para los desencadenantes:

Si es necesario, se pueden crear y editar procedimientos desde un editor de textoexterno que elija. Primero debe configurar qué editor desea utilizar.

Para configurar un editor externo:1. Desde Netcool/OMNIbus Administrator, seleccione Herramientas > Configurar

herramientas. Se abrirá la ventana Elegir herramienta.2. Seleccione Editor de texto. Se abre la ventana Programa externo.3. Complete esta ventana de la forma siguiente:

Nombre de la herramientaEste campo muestra el tipo de herramienta que va a configurar.

EjecutableEscriba la vía de acceso completa y el nombre del programa ejecutablepara el tipo de herramienta. Como alternativa, pulse el botón situado ala derecha del campo para buscar y seleccionar el programa ejecutable.

ArgumentosEscriba los argumentos de línea de mandatos que se deben ejecutar coneste programa ejecutable.

Entorno de tiempo de ejecuciónSeleccione el entorno de tiempo de ejecución.

4. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar los detalles del programa externo ycerrar la ventana.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Tareas relacionadas:“Creación y edición de procedimientos en un editor externo”

Creación y edición de procedimientos en un editor externo:

Puede utilizar un editor externo para crear o editar un procedimiento SQL oexterno.

Antes de empezar

Debe haber configurado un editor externo que se va a utilizar para crear o editarprocedimientos.

Para crear o editar un procedimiento:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Automatización.2. Pulse Procedimientos. Se abre el panel Procedimientos.3. Para crear un procedimiento, asegúrese de que no hay ninguna fila

seleccionada en el panel Procedimientos y pulse Editar en editor externo en la

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 123

Page 138: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

barra de herramientas. (Puede deseleccionar una fila presionando Ctrl y luegopulsando en la fila.) Se abre el cuadro de diálogo Seleccionar tipo deprocedimiento. Proceda como se explica a continuación:a. Desde la lista Plantilla de procedimiento , seleccione la plantilla para el

tipo de procedimiento que desea crear. Si selecciona SQL o Externo , eleditor externo se abre con una sintaxis estándar para ese tipo deprocedimiento. Si selecciona <blank>, el editor externo se abre sin texto.

b. Rellene la sintaxis para el procedimiento. Si está utilizando una plantilla,sustituya la variable procedure_name con un valor real. Adicionalmente, paraun procedimiento externo, sustituya las variables executablename , nombrehost, idusuario y groupid por los valores reales. Añada sentencias específicas deprocedimiento y otras declaraciones según convenga. La plantilla incluyecomentarios (precedidos de--) para la colocación de texto.

c. Guarde las entradas. Cuando se guarda, el procedimiento se guarda en elobjectserver. Si hay errores de sintaxis, se le solicitará volver a cargar elcontenido del editor externo.

d. Cierre el editor externo.4. Para editar un procedimiento, seleccione el procedimiento que desea editar y, a

continuación, pulse Editar en editor externo en la barra de herramientas opulse el botón derecho del ratón y seleccione Editar procedimiento en editorexterno desde el menú emergente. Se abre el editor externo, con la sintaxis delprocedimiento visualizada. Proceda como se explica a continuación:a. Edite la sintaxis del procedimiento y guarde los cambios. Cuando se

guarda, el procedimiento se guarda en el objectserver. Si hay errores desintaxis, se le solicitará volver a cargar el contenido del editor externo.

b. Cierre el editor externo.

Resultados

Consejo: El SQL que especifique en un editor externo se guarda en el objectservercomo un archivo . ed . Puede comprobar la validez de la sintaxis en los archivos .ed y otros SQL. de la interfaz interactiva de SQL (ejecución en la modalidad deGUI).Tareas relacionadas:“Configuración de un editor externo para los desencadenantes” en la página 123“Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica deusuario” en la página 142Referencia relacionada:“Creación de procedimientos externos (mandato CREATE PROCEDURE)” en lapágina 217“Creación de procedimientos SQL (mandato CREATE PROCEDURE)” en la página208

124 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 139: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Supresión de procedimientosNo puede suprimir un procedimiento si se está utilizando en un desencadenante.

Para suprimir un procedimiento:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Automatización.2. Pulse Procedimientos. Se abre el panel Procedimientos.3. Seleccione el procedimiento que desea suprimir y pulse Suprimir en la barra de

herramientas. Se suprime el procedimiento.

Configuración de señalesLas señales son apariciones en el objectserver que se pueden detectar y sobre lasque se puede actuar al respecto. Las señales son parte del subsistema deautomatización.

Los parámetros de este mandato son los siguientes:v Señales de sistemav Señales definidas por el usuario

Un objectserver automáticamente activa señales de sistema cuando se producendeterminados cambios en el sistema; por ejemplo, durante el arranque del sistemao un error de conexión. No puede crear ni modificar estas señales. Puede adjuntarseñala desencadenantes a las señales del sistema para crear respuestas automáticasa incidencias en el objectserver.

Las señales definidas por el usuario son definidas por el usuario. Puede utilizar eladministrador de netcool/Omnibus para crear señales definidas por el usuario.Tareas relacionadas:“Creación y edición de desencadenantes de señal” en la página 109

Creación y edición de señales definidas por el usuarioA diferencia de las señales del sistema, que son predefinidas y no se puedenconfigurar, las señales definidas por el usuario deben crearse o suprimirse deforma explícita.

Para crear o editar una señal definida por el usuario:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Automatización.2. Pulse Señales definidas por el usuario . Se abre el panel Señales definidas por

el usuario.3. Para añadir una señal definida por el usuario, pulse Añadir señal definida por

el usuario en la barra de herramientas. Se abre la ventana Detalles de señaldefinida por el usuario.

4. Para editar una señal definida por el usuario, seleccione la señal definida por elusuario a editar y después pulse Editar señal definida por el usuario en labarra de herramientas. Se abre la ventana Detalles de señal definida por elusuario.

5. Complete esta ventana del modo siguiente:

Nombre de señalEscriba un nombre exclusivo para la señal. Si está editando una señal,no puede cambiar el nombre.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 125

Page 140: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Consejo: Cuando cree objetos ObjectServer, sus nombres debencomenzar con una letra en mayúsculas o minúsculas, seguida de otrasletras en mayúsculas o minúsculas, números o caracteres de subrayado(_), hasta una longitud máxima de 40. Los nombres de usuarios, grupos yroles puede ser cualquier serie de texto con una longitud de hasta 64 caracteresy puede incluir espacios. Los nombres de los objetos de ObjectServer sonsensibles a mayúsculas y minúsculas.

ComentarioEscriba un comentario de texto para la señal. Por ejemplo, puede añadirun comentario para indicar qué desencadenante se inicia cuando seemite esta señal.

ParámetrosEsta área visualiza los parámetros que comprenden la señal definidapor el usuario.

El orden en el que aparecen los parámetros debe coincidir con el ordenen que aparecen en el mandato RAISE SIGNAL para el desencadenante.Puede utilizar las flechas arriba y abajo de la derecha del recuadro delista para cambiar el orden de los parámetros seleccionados. Tambiénpuede pulsar Eliminar parámetro de la derecha del recuadro de listapara eliminar los parámetros seleccionados de la lista.

Para crear un parámetro, utilice los campos Nombre y Tipo de datos, yel botón Añadir parámetro a la lista.

NombreEscriba un nombre para el parámetro que está creando. Los nombres deparámetro deben ser exclusivos en la señal.

Tipo de datosSeleccione el tipo de datos que el parámetro puede pasar en la señal. Eltipo de datos puede ser cualquier tipo de datos de ObjectServer válidoexcepto VARCHAR o INCR.

Longitud de datosPara los tipos de datos Char únicamente, escriba la longitud delparámetro.

Añadir parámetro a la listaDespués de completar los campos Nombre y Tipo de datos, y si esnecesario, Longitud de datos, pulse este botón para añadir elparámetro a la lista de parámetros.

6. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar la señal definida por el usuario y cerrarla ventana. Las señales definidas por el usuario se añaden al panelSeñales definidas por el usuario.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Resultados

126 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 141: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Ejemplo: Señal y desencadenante definido por el usuarioEn este ejemplo muestra una señal definida por el usuario denominadaillegal_delete y el desencadenante de base de datos DETECT_AN_ILLEGAL_DELETE

en el que se utiliza. El desencadenante de base de datos utiliza la señal paraatrapar supresiones que están fuera del rango de horas de oficina estándar.

Dentro de la ventana Detalles de señales definidas por el usuario , la señal definidapor el usuario llamada illegal_delete se crea con las entradas siguientes:

Tabla 22. Entradas de la señal definida por el usuario illegal_delete en la ventana Detallesde señal definida por el usuario

Campo Entrada

Nombre de señal illegal_delete

Comentario Debe utilizarse con el desencadenanteDETECT_AN_ILLEGAL_DELETE.

Parámetros user_name Char(20)row_summary Char(20)

Estos entradas de sólo lectura en la lista de parámetros seconstruyen a partir de entradas realizadas en los campos Nombre ,Tipo de datos y Longitud de datos del área Parámetros . Porejemplo, para user_name char (20) las entradas son:

v Name: user_name

v Data Type: Char

v Data Length: 20

En el siguiente texto de SQL del desencadenante de base de datos previo a lainserción DETECT_AN_ILLEGAL_DELETE , el mandato raise signal se muestra ennegrita.create trigger DETECT_AN_ILLEGAL_DELETEgroup default_triggerspriority 1before delete on alerts.statusfor each rowbegin

if( ( (hourofday() > 17) and (minuteofhour() > 30) ) or (hourofday() < 9) ) thenraise signal ILLEGAL_DELETE %user.user_name, old.Summary;

cancel;end if;

end;

Este desencadenante genera la señal definida por el usuario illegal_delete .Normalmente, la señal generada se detectaría y se actuaría en consecuencia, porejemplo, mediante otro desencadenante.

Supresión de señales definidas por el usuarioNo puede suprimir una señal definida por el usuario si es utilizada por undesencadenante de señal.

Para suprimir una señal definida por el usuario:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Automatización.2. Pulse Señales definidas por el usuario . Se abre el panel Señales definidas por

el usuario.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 127

Page 142: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

3. Seleccione la señal definida por el usuario que desea suprimir y pulse Suprimiren la barra de herramientas. Se suprime la señal definida por el usuario.

Configuración de la apariencia visual de la lista de sucesosLas conversiones, los colores, los efectos visuales de columna y las clasesdeterminan cómo la información de alerta se muestra en la lista de sucesos.

Creación y edición de conversionesLas conversiones se asocian con columnas en la tabla alerts.status de objectserver ycorrelacionan los valores de entero en series para las columnas. Las conversionesque se configuran en el netcool/Omnibus Administrator se utilizan en la lista desucesos para convertir valores de entero en series, para facilitar la lectura.

Por ejemplo, existen conversiones por defecto para gravedades de suceso. Si unsuceso tiene la gravedad de 4 , el texto principal aparece para la gravedad delsuceso en la lista de sucesos.

Para crear o editar una conversión:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Visual .2. Pulse en Conversiones. Se abre el panel Conversiones.

Para ver las conversiones para una columna, efectúe una doble pulsación en elnombre de columna. También puede pulsar el símbolo redondo (en Unix) o elsigno más (+) (en Windows) que está the la izquierda del nombre de columna.

3. Para agregar una conversión, pulse Añadir conversión en la barra deherramientas. Se abre la ventana Detalles de conversión.

4. Para editar una conversión, seleccione la conversión a editar y, a continuación,pulse Editar en la barra de herramientas. Se abre la ventana Detalles deconversión.

5. Complete esta ventana del modo siguiente:

ColumnaSeleccione el nombre de la columna que contiene los datos que se van aconvertir.

Valor Especifique el valor de entero que se va a convertir.

ConversiónEscriba la serie que se va a visualizar en lugar del valor.

6. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar la conversión y cerrar la ventana. Seañaden nuevas conversiones al panel Conversiones.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

128 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 143: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Supresión de conversiones

Para suprimir una conversión:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Visual .2. Pulse en Conversiones. Se abre el panel Conversiones.3. Seleccione la conversión que desea suprimir y pulse Suprimir en la barra de

herramientas. Se suprime la conversión.

Creación y edición de colores de gravedad de suceso paralistas de sucesos de Windows

En las listas de sucesos, se utilizan colores diferentes para representar los diferentesgrados de gravedad de sucesos. Puede ver, crear y modificar los colores degravedad utilizados en las listas de sucesos Windows. Puede seleccionar distintoscolores para alertas reconocidas y no reconocidas.

Para crear o editar los colores de gravedad de suceso en listas de sucesosWindows:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Visual .2. Pulse Colores. Se abre el panel Colores.3. Para añadir un color de gravedad, pulse Añadir definición de color en la barra

de herramientas. Se abre la ventana Detalles de color.4. Para editar un color de gravedad, seleccione el color de gravedad a editar y

después pulse Editar definición de color en la barra de herramientas. Se abrela ventana Detalles de color.

5. Complete esta ventana del modo siguiente:

GravedadSi está creando un color nuevo, especifique el valor de gravedad de laalerta.

ConversiónEste campo muestra la conversión correspondiente a esta gravedad dealerta, si existe. Las conversiones se utilizan para convertir valores deenteros en series para facilitar su legibilidad. Por ejemplo, la conversiónpredeterminada de una gravedad de 4 es Importante.

No confirmadoEsta área muestra el color de la gravedad de la alerta si no estáconfirmada en las listas de sucesos. Los colores de gravedad de alertaspredeterminados para alertas sin confirmar son:v 0 - Verdev 1 - Violetav 2 - Azulv 3 - Amarillov 4 - Naranjav 5 - Rojo

Pulse el botón Mostrar selector de color para seleccionar el color paraalertas sin confirmar de esa gravedad. En el cuadro de diálogo Selectorde color resultante, elija un color utilizando la gama de colores y losvalores de HSB y RGB, y luego pulse Aceptar.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 129

Page 144: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

ReconocidoEsta área muestra el color de la gravedad de la alerta si estáconfirmada en las listas de sucesos. Los colores de gravedad de alertaspredeterminados para alertas confirmadas son:v 0 - Verde oscurov 1 - Violeta oscurov 2 - Azul oscurov 3 - Amarillo oscurov 4 - Naranja oscurov 5 - Rojo oscuro

Pulse el botón Mostrar selector de color para seleccionar el color paraalertas confirmadas de esa gravedad. En el cuadro de diálogo Selectorde color resultante, elija un color utilizando la gama de colores y losvalores de HSB y RGB, y luego pulse Aceptar.

6. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar los detalles de color y cerrar la ventana.Se añaden nuevos colores de gravedad al panel Colores.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Creación y edición de elementos visuales de columnaEl aspecto visual de las listas de sucesos queda definido por los valores de loselementos visuales de columna. Para cada columna de la lista de sucesos, puedeestablecer el texto del título, los anchos predeterminado y máximo, y el título y lajustificación de datos.

Para crear o editar un elemento visual de columna:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Visual .2. Pulse Elementos visuales de columna. Se abre el panel Elementos visuales de

columna.3. Para añadir un elemento visual de columna, pulse Añadir elemento visual de

columna en la barra de herramientas. Se abrirá la ventana Detalles de elementovisual de la columna.

4. Visual para editar un elemento visual de columna, seleccione el elemento visuala editar y después pulse Editar elemento visual de columna en la barra deherramientas. Se abrirá la ventana Detalles de elemento visual de la columna.

5. Complete esta ventana del modo siguiente:

ColumnaSi va a crear una nueva vista de columna, seleccione la columna para laque está añadiendo la vista.

Título Escriba el título que desea que se visualice como cabecera de columnaen las listas de sucesos de Tivoli Netcool/OMNIbus.

PredeterminadoEspecifique la anchura predeterminada de la columna (en caracteres).

MáximoEspecifique la anchura máxima de la columna (en caracteres).

130 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 145: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Título Seleccione el valor de justificación o alineación del título de la columna.

ColumnaSeleccione el valor de justificación o alineación de la información de lacolumna.

6. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar los detalles de la vista de columna ycerrar la ventana. Se añaden nuevas vistas de columna al panel Vistasde columna.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Supresión de elementos visuales de columna

Para suprimir un elemento visual de columna:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Visual .2. Pulse Elementos visuales de columna. Se abre el panel Elementos visuales de

columna.3. Seleccione el elemento visual de columna que desea suprimir y pulse Suprimir

en la barra de herramientas. Se suprime el elemento visual de columna.

Creación y edición de clasesLos sucesos de objectserver tienen una clase que se asigna mediante el analizador.Cada clase puede estar asociada a un menú de herramienta de lista de sucesos quecontiene herramientas útiles para los sucesos de dicha clase.

Para crear o editar una clase:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Visual .2. Pulse en Clases. Se abre el panel Clases.3. Para agregar una clase, pulse Añadir clase en la barra de herramientas. Se abre

la ventana Detalles de clase.4. Para editar una clase, seleccione la clase a editar y después pulse Editar clase

en la barra de herramientas. Se abre la ventana Detalles de clase.5. Complete esta ventana del modo siguiente:

IdentificadorSi está creando una clase nueva, especifique el identificador de clasecorrespondiente a la clase. El analizador asigna a las alertas delObjectServer un identificador de clase.

IBM define identificadores de clase para determinados tipos deequipos. Póngase en contacto con el Soporte de IBM si desea reservarun rango de clases para su tipo de equipo. También hay disponible unrango de 88000 a 89000 reservado para el cliente, de libre uso paratodos los clientes.

NombreEscriba una etiqueta para el tipo de equipo que se va a asociar con elnúmero de clase.

6. Guarde o cancele los cambios de la forma siguiente:

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 131

Page 146: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

AceptarPulse este botón para guardar los detalles de la clase y cerrar laventana. Se añaden nuevas clases al panel Clases.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Supresión de clases

Para suprimir una clase:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Visual .2. Pulse en Clases. Se abre el panel Clases.3. Seleccione la clase que desea suprimir y pulse Suprimir en la barra de

herramientas. La clase se suprime.

Configuración de bases de datos, archivos, propiedades, conexiones ycanales de ObjectServer

Puede configurar los siguientes componentes del sistema ObjectServer: estructurasde base de datos del objectserver, archivos, propiedades, conexiones y canales.

Una base de datos es un conjunto estructurado de datos organizados para unacceso rápido a la información deseada. Una base de datos relacional utiliza tablascomo contenedores lógicos para almacenar estos datos en filas y columnas.

Un archivo de objectserver proporciona una forma de registrar o notificarinformación sobre sucesos objectserver.

Las propiedades de ObjectServer controlan el comportamiento de ObjectServer.

Las conexiones con el objectserver pueden visualizarse y gestionarse.

Los canales se utilizan para definir el tipo de datos de suceso que deben difundirseen notificacions de sucesos acelerados y los destinatarios de los datos.Conceptos relacionados:Capítulo 6, “Configuración de la notificación de sucesos acelerados”, en la página255

Configuración de bases de datosLa configuración de base de datos implica la creación y el mantenimiento de tablasde base de datos y columnas dentro de las tablas.

Puede crear y eliminar bases de datos, y puede crear, eliminar y editar (o alterar)tablas y columnas de base de datos.

Restricción: No se le permite realizar cambios en bases de datos del sistema. En eladministrador de Netcool/OMNIbus, las bases de datos del sistema se muestrancon un icono de bloqueo al lado.Conceptos relacionados:“Bases de datos inicializadas por sistema” en la página 153

132 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 147: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Creación de bases de datosPuede utilizar el administrador de netcool/Omnibus para crear y gestionar basesde datos de ObjectServer.

Para crear una base de datos de ObjectServer:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Sistema .2. Pulse Bases de datos. Se abre el panel Bases de datos, tablas y columnas.

Puede ver y configurar información de tabla y columnas de cada base de datosenumerada que no es de sistema. Utilice la pestaña Vista de datos para verdatos contenidos en la tabla. Utilice la ficha Definiciones de columna para verinformación sobre las columnas de tabla, por ejemplo, sus tipos de datos yatributos.Para renovar cualquier información visualizada, pulse el icono de la base dedatos o tabla seleccionada actualmente o el botón de la barra de herramientasRenovar .

3. Desde la barra de herramientas, pulse Crear base de datos. Se abre la ventanaDetalles de base de datos.

4. Complete esta ventana del modo siguiente:

NombreEscriba un nombre exclusivo para la base de datos.

Consejo: Cuando cree objetos ObjectServer, sus nombres debencomenzar con una letra en mayúsculas o minúsculas, seguida de otrasletras en mayúsculas o minúsculas, números o caracteres de subrayado(_), hasta una longitud máxima de 40. Los nombres de usuarios, grupos yroles puede ser cualquier serie de texto con una longitud de hasta 64 caracteresy puede incluir espacios. Los nombres de los objetos de ObjectServer sonsensibles a mayúsculas y minúsculas.

AceptarPulse este botón para guardar la base de datos y cerrar la ventana. Seañaden las nuevas bases de datos al ObjectServer y al panel Bases dedatos, tablas y columnas.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Qué hacer a continuación

Ahora puede añadir tablas a la base de datos.Tareas relacionadas:“Creación de tablas” en la página 134

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 133

Page 148: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Creación de tablasUna tabla tiene un número fijo de columnas de tipo de datos. El nombre de cadacolumna es exclusivo de la tabla. Una tabla contiene cero o más filas de datos en elformato definido por la columna de la tabla de la lista. El nombre de la tablatotalmente calificado incluye el nombre de base de datos y nombre de la tabla,separados por un punto.

Por ejemplo, la tabla status en la base de datos de alerts se identifica comoalerts.status.

Para crear una tabla:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Sistema .2. Pulse Bases de datos. Se abre el panel Bases de datos, tablas y columnas.3. Seleccione la base de datos en la que está creando la tabla.4. Desde la barra de herramientas, pulse Crear tabla. Se abre la ventana Detalles

de tabla.5. Complete esta ventana del modo siguiente:

NombreEscriba el nombre de la tabla.

Consejo: Cuando cree objetos ObjectServer, sus nombres debencomenzar con una letra en mayúsculas o minúsculas, seguida de otrasletras en mayúsculas o minúsculas, números o caracteres de subrayado(_), hasta una longitud máxima de 40. Los nombres de usuarios, grupos yroles puede ser cualquier serie de texto con una longitud de hasta 64 caracteresy puede incluir espacios. Los nombres de los objetos de ObjectServer sonsensibles a mayúsculas y minúsculas.

Tipo Seleccione uno de estos tipos de tabla:v Persistente: cuando el ObjectServer se reinicia, vuelve a crearse una

tabla persistente con todos los datos.v Virtual: cuando el ObjectServer se reinicia, vuelve a crearse una tabla

virtual con la misma descripción de tabla, pero sin datos.

Área de tablaEsta área enumera los detalles de todas las columnas de la tabla. Puedeutilizar las flechas arriba y abajo de la derecha para cambiar el ordende una columna seleccionada en la tabla.

Añadir columnaPulse este botón si desea añadir una nueva columna a la tabla. Seabrirá la ventana Detalles de la columna. Complete esta ventana yguarde los cambios.

Cuando vuelve a la ventana Detalles de la tabla, la nueva columna seañade a la lista de columnas.

Editar columnaPulse este botón si desea editar los detalles de una columnaseleccionada. Se abrirá la ventana Detalles de la columna. Edite losdetalles y guarde los cambios.

Cuando vuelva a la ventana Detalles de la tabla, las actualizaciones delos detalles de columna quedarán reflejadas en la lista de columnas.

134 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 149: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Suprimir columnaPulse este botón si desea eliminar una columna seleccionada de latabla. No se necesita confirmación para la supresión.

6. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar los detalles de la tabla y cerrar laventana. Se añaden las nuevas tablas al panel Bases de datos, tablas ycolumnas.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Resultados

Consejo: Puede utilizar la pestaña Vista de datos del panel Bases de datos, tablasy columnas para ver los datos de la tabla y utilice la pestaña Definiciones decolumna para ver información detallada sobre las columnas de la tabla.Tareas relacionadas:“Adición y edición de columnas de tabla”

Adición y edición de columnas de tabla

Para añadir o editar una columna de tabla:1. En la ventana del administrador de Netcool/OMNIbus, seleccione el botón de

menú Sistema.2. Pulse Bases de datos. Se abre el panel Bases de datos, tablas y columnas.3. Seleccione la tabla en la que vaya a añadir o editar la columna.4. Pulse el separador Definiciones de columna.5. Para añadir una columna, pulse Añadir columna en la barra de herramientas.

Se abrirá la ventana Detalles de la columna.6. Para editar una columna, seleccione la columna que se debe editar y, a

continuación, pulse Editar columna en la barra de herramientas. Se abrirá laventana Detalles de la columna.

7. Rellene esta ventana como se indica a continuación:

Nombre de la columnaEscriba el nombre de la columna. Si va editar la columna, no puedecambiar el nombre.

Consejo: Cuando cree objetos ObjectServer, sus nombres debencomenzar con una letra en mayúsculas o minúsculas, seguida de otrasletras en mayúsculas o minúsculas, números o caracteres de subrayado(_), hasta una longitud máxima de 40. Los nombres de usuarios, grupos yroles puede ser cualquier serie de texto con una longitud de hasta 64 caracteresy puede incluir espacios. Los nombres de los objetos de ObjectServer sonsensibles a mayúsculas y minúsculas.

Tipo de datosSeleccione un tipo de datos para la columna. El tipo de datos determinacómo procesa el ObjectServer los datos de la columna. Si va a editar lacolumna, no puede cambiar el tipo de datos. Puede elegir entre lostipos de datos siguientes:v Integer: entero con signo de 32 bits

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 135

Page 150: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

v UTC: tiempo, almacenada como número de segundos desde lamedianoche del 1 de enero de 1970

v VarChar: serie de caracteres de tamaño variable de una longitudmáxima de 8192 bytes

v Incr: entero de incremento automático sin firmar de 32 bits que sólopuede actualizar el sistema

v Char: serie de caracteres de tamaño fijo de una longitud máxima de8192 bytes

v Unsigned: entero sin signo de 32 bitsv Boolean: TRUE o FALSEv Real: número de coma flotante con signo de 64 bitsv Integer64: entero con signo de 64 bitsv Unsigned64: entero sin signo de 64 bits

LongitudEste campo sólo está disponible cuando se selecciona VarChar o Char enla lista Tipo de datos. Especifique la longitud de la columna.

Clave primariaSeleccione este recuadro de selección para indicar que la columna esuna clave primaria. Las columnas de clave primaria identifican deforma exclusiva cada fila. Una columna de clave primaria tiene unvalor predeterminado.

Sin modificarSeleccione este recuadro de selección para indicar que los usuario nopueden modificar los datos de esta columna.

Sin valor predeterminadoSeleccione la casilla de verificación para indicar que se debe especificarun valor para esta columna en cualquier mandato INSERT.

8. Guarde o cancele los cambios como se indica a continuación:

AplicarSi desea añadir varias columnas si salir de la ventana Detalles de lacolumna, pulse este botón para guardar los detalles de la columnadespués de añadir cada conjunto de entradas.

AceptarTras especificar los valores de la última columna que desea añadirahora mismo, pulse este botón para guardar los detalles de la columnay cierre la ventana. Se añaden columnas nuevas al panel Bases dedatos, tablas y columnas.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Resultados

Nota: El número máximo de columnas en una tabla es 512, incluidas las columnasmantenidas por el sistema. El tamaño de fila máximo de una tabla, que es la sumade la longitud de las columnas en la fila es 64 KB.

Consejo: Puede utilizar el separador Vista de datos en la ventana Bases de datos,tablas y columnas para ver los datos de la tabla.

136 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 151: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Supresión de bases de datosNo está permitido Eliminar bases de datos del sistema, que tienen un icono debloqueo junto a ellas.

Atención: Cuando se descarta una base de datos que contiene datos de tabla, lastablas se vacían y eliminar en primer lugar.

Para suprimir una base de datos:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Sistema .2. Pulse Bases de datos. Se abre el panel Bases de datos, tablas y columnas.3. Seleccione la base de datos que desea suprimir y pulse Suprimir base de datos

en la barra de herramientas. La base de datos se elimina de ObjectServer.

Supresión de tablasNo se le permite suprimir tablas en bases de datos del sistema.

Para suprimir una tabla:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Sistema .2. Pulse Bases de datos. Se abre el panel Bases de datos, tablas y columnas.3. Seleccione la base de datos que contiene la columna que desea suprimir.4. Seleccione la tabla que desea suprimir y pulse Suprimir tabla en la barra de

herramientas. Todos los datos se suprimen de la tabla y la tabla entonces seelimina de la base de datos.

Supresión de columnas de tablaNo tiene permiso para suprimir columnas de clave primaria o columnas en tablasdel sistema.

Atención: Para eliminar una columna se precisa de una cantidad considerable deacciones preliminares para identificar y eliminar las dependencias externas en lacolumna. Esto implica la búsqueda de cualquier referencia en la columna en losdesencadenantes, procedimientos, vistas, filtros de restricción, archivos de reglas deanalizador y archivos de correlación de pasarela. Tenga en cuenta también que sielimina una columna que tiene desencadenantes, procedimientos, vistas, o filtrosde restricción que dependen de ésta, estos objetos dependientes también sesuprimen, y se escribirá un aviso en el archivo de registro de objectserver.

Para suprimir una columna de tabla después de confirmar que existendependencias externas:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Sistema .2. Pulse Bases de datos. Se abre el panel Bases de datos, tablas y columnas.3. Seleccione la tabla que contiene la columna que desea suprimir.4. Pulse la ficha Definiciones de columna.5. Seleccione la columna que desea suprimir y pulse Suprimir columna en la

barra de herramientas. La columna se elimina de la tabla.Referencia relacionada:“Eliminación de una columna” en la página 159

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 137

Page 152: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Visualización y cambio de propiedades de objectserverLas propiedades de ObjectServer ayudan a determinar el comportamiento deObjectServer. Puede ver y cambiar propiedades de objectserver utilizandonetcool/Omnibus Administrator. No puede añadir propiedades de objectserver;sólo puede editar las existentes.

La ubicación predeterminada del archivo de propiedades de objectserver es$NCHOME/omnibus/etc/servername.props. ObjectServer lee su archivo de propiedadescuando se inicia.

Importante: Es fundamental que esté familiarizado con las propiedades deobjectserver antes de modificarlas. La configuración incorrecta puede afectarnegativamente al rendimiento del sistema y la funcionalidad.

Para cambiar el valor de una propiedad ObjectServer:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Sistema .2. Pulse Propiedades. Se abre el panel Propiedades de ObjecServer.

Consejo: Las propiedades de sólo vista tienen el texto False en la columnaeditable .

3. Para editar una propiedad, seleccione la columna a editar y, a continuación,pulse Editar propiedad en la barra de herramientas. Se abre la ventana Detallesde propiedad.

4. Complete esta ventana del modo siguiente:

NombreEl nombre exclusivo asignado a la propiedad de ObjectServer semuestra aquí. No puede cambiar este valor.

DescripciónLa descripción de la propiedad de ObjectServer se muestra aquí. Nopuede cambiar este valor.

Valor Edite el valor de la propiedad según corresponda.5. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar los detalles de propiedad y cerrar laventana. El valor actualizado se refleja en el panel Propiedades deObjectServer.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Resultados

Consejo: Los cambios en algunas propiedades de objectserver no entran en vigorhasta que reinicie el objectserver. Estas propiedades tienen el texto false en lacolumna Immediate.Referencia relacionada:“Propiedades y opciones de línea de mandatos de ObjectServer” en la página 3

138 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 153: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Configuración de archivos de ObjectServerLos archivos de objectserver son objetos de almacenamiento definidos por elusuario que mantienen los datos de registro o informe.

Un archivo objectserver es un archivo lógico, que tiene el correspondiente archivoo conjunto de archivos en el sistema de archivos físicos. Puede definir tamaños dearchivo de Objectserver y el número de archivos físicos en un conjunto.

Secuencia de creación de archivos de objectserverCada archivo en un conjunto de archivos se indica mediante un número añadido alnombre de archivo (o extensión de archivo, si hay una).

Por ejemplo, si crea un archivo llamado logfile en el directorio logfile/ yespecifica que su tamaño máximo sea de 20 kB y el número máximo de archivosdel conjunto sea 3, se crea y utiliza la secuencia siguiente de archivos:1. Cuando pulse Aceptar para crear el archivo, el objectserver crea un archivo

vacío denominado logfile1 en el directorio /log .2. El objectserver graba datos en logfile1 hasta exceder el tamaño máximo de

archivo (20 kB).3. El objectserver cambia el nombre logfile1 por logfile2 . Después, crea un

nuevo logfile1 y graba en éste hasta que sobrepasa el tamaño máximo.4. El objectserver cambia el nombre logfile2 por logfile3 y logfile1 por

logfile2 . Después, crea un nuevo logfile1 y graba en éste hasta quesobrepasa el tamaño máximo.

5. El ObjectServer suprime el archivo más antiguo (logfile3). A continuación,cambia el nombre logfile2 por logfile3 y logfile1 por logfile2 . Después,crea un nuevo archivo logfile1 y graba en éste hasta que sobrepasa el tamañomáximo.

Esta secuencia se repite hasta que el archivo se puede modificar o eliminar.

Creación y edición de archivos ObjectServerUn archivo de objectserver proporciona una forma de registrar o notificarinformación sobre sucesos objectserver.

Por ejemplo, puede crear un desencadenante que escriba una entrada en unarchivo objectserver cada vez que un usuario realiza una conexión con unobjectserver.

Para crear o editar un archivo ObjectServer:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Sistema .2. Pulse Archivos de registro. Se abre el panel Archivos de registro.3. Para agregar un archivo, pulse Añadir archivo de registro en la barra de

herramientas. Se abre la ventana Detalles de archivo.4. Para editar los detalles de archivo, seleccione el archivo a editar y, a

continuación, pulse Editar archivo de registro en la barra de herramientas. Seabre la ventana Detalles de archivo.

5. Complete esta ventana del modo siguiente:

NombreEscriba un nombre exclusivo para el archivo de ObjectServer; porejemplo, un nombre que proporcione algún significado sobre su uso.Tenga en cuenta que éste no es el nombre de archivo tal como se creará

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 139

Page 154: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

en el sistema de archivos; para especificarlo, utilice el campo Vía deacceso completa del archivo. Si está editando un archivo, no puedecambiar el nombre.

Consejo: Cuando cree objetos ObjectServer, sus nombres debencomenzar con una letra en mayúsculas o minúsculas, seguida de otrasletras en mayúsculas o minúsculas, números o caracteres de subrayado(_), hasta una longitud máxima de 40. Los nombres de usuarios, grupos yroles puede ser cualquier serie de texto con una longitud de hasta 64 caracteresy puede incluir espacios. Los nombres de los objetos de ObjectServer sonsensibles a mayúsculas y minúsculas.

Vía de acceso completa del archivoEscriba la vía de acceso completa y el nombre de archivo del archivofísico; por ejemplo, /opt/netcool/omnibus/log/status.log.

Nota: Se agrega automáticamente un número al nombre de archivo enel sistema de archivos.

HabilitadoMarque esta casilla de verificación para activar el archivo deObjectServer. Si no se activa, el archivo existirá en el sistema dearchivos, pero no se podrá escribir en él. Puede especificar lainformación de archivo del ObjectServer y luego activar el archivo enotro momento.

Tamaño de archivo ilimitadoMarque esta casilla de verificación si desea que la información seescriba en un único archivo con un tamaño ilimitado. Si elige este valor,los campos Tamaño máximo y Número máximo de archivos no semostrarán en la ventana.

Cuando no se marca esta casilla de verificación, se puede grabarinformación en un solo archivo o en una agrupación de archivos en losque se escribirá por orden cuando se alcance el tamaño máximoespecificado. Si elige este valor, deberá especificar los valores asociadosen los campos Tamaño máximo y Número máximo de archivos.

TruncarPulse este botón para eliminar la información que se haya escrito en elarchivo físico. Esto no suprime el archivo. En situaciones en las que haymás de un archivo físico en un conjunto, sólo se truncará el archivo enel que se esté escribiendo actualmente en el sistema de archivos.

Nota: Este botón sólo es visible al editar los detalles del archivo.

Tamaño máximoEspecifique el tamaño máximo del archivo de ObjectServer y luegoseleccione una unidad de medida. El tamaño mínimo de archivo es 1KB y el tamaño máximo, 4 GB.

Nota: El sistema operativo puede incorporar nuevas restricciones sobreel tamaño máximo de un archivo individual.

Número máximo de archivosEspecifique el número máximo de archivos de ObjectServer para crear.

6. Guarde o cancele los cambios de la forma siguiente:

140 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 155: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

AceptarPulse este botón para guardar los detalles de archivo y cerrar laventana. Los nuevos detalles de archivo se añaden al panel Archivos deregistro.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Conceptos relacionados:“Secuencia de creación de archivos de objectserver” en la página 139

Supresión de archivos de objectserverNo puede suprimir un archivo si se está utilizando, por ejemplo, en undesencadenante.

Para suprimir un archivo ObjectServer:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Sistema .2. Pulse Archivos de registro. Se abre el panel Archivos de registro.3. Seleccione el archivo ObjectServer que desea suprimir y pulse Suprimir en la

barra de herramientas. Se suprime el archivo ObjectServer. El ObjectServer ja noescribe información en este archivo.

Resultados

Cuando se suprime un archivo, se suprime sólo el archivo de objectserver; losarchivos físicos creados en el sistema de archivos no se suprimen.

Supervisión de conexiones de objectserverPuede ver todas las conexiones actuales a objectserver y desconectar una o más delas conexiones. Debe tener asignado el permiso ALTER SYSTEM DROPCONNECTION para desconectar las conexiones de objectserver.

Para ver y desconectar desconexiones de ObjectServer:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Sistema .2. Pulse Connections. El panel Conexiones de objectserver se abre con una fila de

información para cada aplicación que actualmente está conectada.3. Selecciones las filas que desea desconectar. Puede utilizar la tecla Mayús para

selecciones consecutivas o la tecla CTRL para selecciones no consecutivas.4. Pulse Desconectar en la barra de herramientas. A su vez, se le solicitará que

confirme que desea desconectar cada una de las aplicaciones que haseleccionado.

5. Pulse Sí para cada aplicación que se ha de desconectar y pulse No paracancelar una desconexión.

Tareas relacionadas:“Visualización de conexiones de usuario con ObjectServer” en la página 88

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 141

Page 156: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Configuración de canalesEl sistema de notificación de sucesos acelerados (AEN) le permite acelerar lossucesos de prioridad alta como ayuda para garantizar que los sistemas puedencontinuar ejecutándose sin interrupciones. Utilice los canales para definir el tipo dedatos de suceso que se incluirán en las notificaciones de sucesos acelerados, y losdestinatarios de estos datos de suceso.Conceptos relacionados:Capítulo 6, “Configuración de la notificación de sucesos acelerados”, en la página255“Configuración de canales para difundir datos de sucesos” en la página 257Tareas relacionadas:“Creación y edición de canales” en la página 258“Copiar y pegar canales” en la página 261“Supresión de un canal” en la página 261“Envío de mensajes a destinatarios de canal” en la página 262“Desconexión de los clientes de notificación de sucesos acelerados” en la página262“Cierre de clientes de notificación de sucesos acelerados” en la página 263

Utilización de la interfaz interactiva SQL en la modalidad de interfazgráfica de usuario

Puede utilizar la interfaz interactiva de SQL para configurar el objectserveremitiendo mandatos SQL.

Nota: Sólo los usuarios que sean miembros de un grupo a los que se otorga el rolISQL pueden acceder a un objectserver utilizando la interfaz interactiva de SQL.Sólo los usuarios que sean miembros de un grupo a los que se otorga el rolISQLWrite pueden actualizar datos objectserver utilizando la interfaz interactiva deSQL.

Para abrir la interfaz interactiva SQL en modalidad de interfaz gráfica de usuario:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Sistema .2. Pulse en SQL. Se abre el panel SQL.3. Complete esta ventana del modo siguiente:

Editor de SQLUtilice el campo de texto y los botones de esta área para emitirmandatos. Escriba SQL en el campo de texto y utilice un signo depunto y coma para separar los diferentes mandatos. Puede utilizar losbotones de ayuda de SQL y los botones adicionales para facilitar lacreación de mandatos SQL.

Al escribir mandatos SQL dentro de los paneles de editor de SQL deTivoli Netcool/OMNIbus, puede escribir uno o más caracteres y, acontinuación, pulsar Ctrl+F1 para obtener un cuadro de diálogo conuna lista de palabras clave que es posible que coincidan con la entrada.Seleccione la palabra clave necesaria y pulse Aceptar para completar laentrada. Si sólo una palabra clave coincide con los caracteres escritos, lapalabra clave se completa automáticamente. Si pulsa Ctrl+F1 despuésde escribir una palabra clave relacionada con la base de datos, elrecuadro de diálogo proporcione una lista de bases de datos de

142 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 157: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

ObjectServer posibles entre las que elegir. Si pulsa Ctrl+F1 tras escribirun nombre de base de datos seguido de un punto (por ejemplo:alerts.), puede volver a pulsar Ctrl+F1 para ver y seleccionar unatabla en la lista de tablas de la base de datos.

La tabla siguiente describe los botones de ayuda.

Tabla 23. Botones de interfaz interactiva de SQL

Botón Descripción

Pulse este botón para seleccionar un mandato SQL en el menúdesplegable. Según el mandato que seleccione, rellene laventana resultante como se indica a continuación:

v Seleccionar: seleccione la base de datos y la tabla en la quedesee ejecutar el mandato SELECT. A continuación, elija lascolumnas de tabla que se deban seleccionar.

v Insertar: seleccione la base de datos y la tabla en la que deseeejecutar el mandato INSERT. A continuación, seleccione lascolumnas de tabla en las que se deben insertar valores. Paracada columna seleccionada, especifique el valor que se debeinsertar. Para las sentencias INSERT, debe incluir la claveprimaria. Las claves primarias se indican con un asterisco (*).

v Actualizar: seleccione la base de datos y la tabla en la quedesee ejecutar el mandato. A continuación, seleccione lascolumnas de tabla que se deban actualizar. Para cadacolumna seleccionada, especifique el nuevo valor. Para lassentencias UPDATE, debe excluir la clave primaria. Lasclaves primarias se indican con un asterisco (*).Nota: Para inserciones y actualizaciones en la tablaalerts.status, las conversiones existentes aparecen en las listasdesplegables:

v Suprimir: seleccione la tabla que se deba suprimir.

v Utilizar: seleccione la base de datos que se deba utilizar.

v Servicio: seleccione un nombre de servicio y un valor. Losvalores pueden ser Bueno, Marginal o Malo.

Pulse este botón para seleccionar un nombre de columna detabla para añadirlo al mandato. El nombre de la columna sesustituye por el valor de la fila de lista de sucesoscorrespondiente cuando se ejecuta la herramienta. Cuando vaprecedido por el símbolo @, el nombre de columna se sustituyepor el valor de fila de lista de sucesos correspondiente durantela ejecución. Se puede utilizar en una consulta SQL o en unfiltro de restricción, como: RemoteNodeAlias =’@LocalNodeAlias’

Pulse este botón para elegir entre una lista de conversionesdisponibles. Efectúe una doble pulsación para añadir laconversión.

Pulse este botón para borrar el SQL especificado.

Pulse este botón para activar una lista de palabras clave quecomplete el código SQL especificado.

Pulse este botón para comprobar la validez de la sintaxis deSQL especificada.

Capítulo 4. Utilización del administrador de Netcool/OMNIbus para configurar ObjectServers 143

Page 158: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 23. Botones de interfaz interactiva de SQL (continuación)

Botón Descripción

Pulse este botón para localizar un archivo del tipo .sql o .ed ycomprobar la validez de su sintaxis. Al finalizar, se muestranlos resultados. (Cuando se utiliza un editor externo para crear oeditar desencadenantes y procedimientos, se guardan comoarchivos .ed).

Pulse este botón para enviar los mandatos SQL.

Una vez completado el mandato SQL, pulse Enviar.

HistorialEsta lista desplegable proporciona un historial de los mandatos SQLque se han especificado. Puede seleccionar un mandato emitido conanterioridad de la lista. También puede borrar la lista de mandatosemitidos con anterioridad efectuando una pulsación con el botónderecho del ratón en la lista y seleccionando Borrar historial.

Vista ResultadoDespués de emitir el mandato, aparece en este separador unarepresentación visual de la tabla en la que ha ejecutado el mandatoSQL.

Vista ConsolaEn este separador se muestra el historial de un mandato.

Conceptos relacionados:Capítulo 5, “SQL de ObjectServer”, en la página 145Tareas relacionadas:“Creación y edición de conversiones” en la página 128

144 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 159: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Capítulo 5. SQL de ObjectServer

El ObjectServer proporciona una interfaz SQL para definir y manipular objetos debase de datos relacional, como tablas y vistas.

Los mandatos SQL de ObjectServer son:v Mandatos de lenguaje de definición de datos (DDL) para crear, alterar y

descartar objetos de base de datosv Mandatos de lenguaje de manipulación de datos (DML) para consultar y

manipular los datos de los objetos de base de datos existentesv Mandatos del sistema para alterar la configuración de un ObjectServerv Mandatos de control de sesiones para alterar los valores en las sesiones de

clientev Mandatos de seguridad para controlar el acceso de los usuarios a los objetos de

base de datos

El ObjectServer también proporciona mandatos de lenguaje de procedimientos, queproporcionan construcciones de programación para definir acciones que tienenlugar cuando se producen los incidentes especificados y se cumplen lascondiciones definidas. Puede utilizar procedimientos y desencadenantes para crearautomatizaciones, lo que permite procesar sucesos de forma automática.

Puede utilizar la interfaz interactiva SQL para conectar con un ObjectServer yejecutar mandatos SQL de ObjectServer.

Consejo: Muchas de las tareas que se realizan ejecutando mandatos SQL deObjectServer desde la interfaz interactiva SQL también pueden realizarse desde lainterfaz de administrador de Netcool/OMNIbus.Tareas relacionadas:“Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica deusuario” en la página 142

Interfaz interactiva SQLPuede utilizar la interfaz interactiva SQL (denominada nco_sql en UNIX e isql enWindows) para conectar con un ObjectServer y utilizar mandatos SQL parainteractuar con el ObjectServer y configurarlo.

Al ejecutar la interfaz interactiva SQL, puede realizar tareas como la creación deuna tabla de base de datos nueva o detener el ObjectServer.

Nota: Sólo los usuarios que sean miembros de un grupo al que se le hayaotorgado el rol ISQL pueden conectarse con un ObjectServer utilizando la interfazinteractiva SQL. Sólo los usuarios que son miembros de un grupo al que se le haotorgado el rol ISQLWrite pueden modificar los datos del ObjectServer utilizandola interfaz interactiva SQL. Estos roles están predefinidos en TivoliNetcool/OMNIbus.

© Copyright IBM Corp. 1994, 2011 145

Page 160: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Conceptos relacionados:“Configuración de roles” en la página 76“Configuración de grupos” en la página 81“Utilización de roles para asignar permisos a los usuarios” en la página 201

Inicio de la interfaz interactiva SQLAntes de iniciar la interfaz interactiva SQL, tiene que conectarse a un ObjectServercomo usuario específico.

Para iniciar la interfaz interactiva SQL:

Ejecute el mandato nco_sql en UNIX y el mandato isql en Windows como seindica a continuación:

Opción Descripción

UNIX $NCHOME/omnibus/bin/nco_sql -server nombre_servidor -usernombre_usuario

Windows %NCHOME%\omnibus\bin\isql -S nombre_servidor -U nombre_usuario

En estos mandatos, nombre_servidor es el nombre de un ObjectServer ynombre_usuario es un nombre de usuario válido. Si no especifica un nombre deObjectServer, se utiliza el nombre predeterminado NCOMS. Si no especifica unnombre de usuario, el valor predeterminado es el usuario que ejecuta el mandato.Debe especificar una contraseña válida para el usuario, cuando se le solicite oespecificando la opción de línea de mandatos -password (-P en Windows).

Nota: En Windows, debe especificar el nombre del ObjectServer y el nombre delusuario.

Resultados

Atención: Tenga en cuenta que al especificar la contraseña en la línea demandatos, ésta se visualiza. Si no especifica una contraseña, se le solicitará una.

Hay varias opciones de línea de mandatos disponibles para utilizarlas con estosmandatos.

Opciones de línea de mandatos para iniciar la interfaz interactivaSQLCuando utilice el mandato nco_sql o isql para iniciar la interfaz interactiva deSQL, puede especificar un número de opciones de línea de mandatos paramodificar la configuración. Puede ejecutar el mandato nco_sql o isql desde eldirectorio $nchome/bin/Omnibus .

Las opciones de línea de mandatos de la interfaz interactiva SQL se describen en latabla siguiente.

Tabla 24. Opciones de línea de mandatos para mandatos nco_sql e isql

Opción Descripción

-help Muestra información de ayuda sobre las opciones de líneade mandatos y sale.

146 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 161: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 24. Opciones de línea de mandatos para mandatos nco_sql e isql (continuación)

Opción Descripción

-networktimeout integer

-l logintimeout y -t timeout enWindows

Especifica un tiempo en segundos después del cual finalizael tiempo de espera de un intento de inicio de sesión oconexión con objectserver, en el caso de que se produzcauna anomalía. Después del periodo de espera especificado,la interfaz interactiva de SQL intenta volver a conectar conel objectserver. Si la conexión no es correcta después de unsegundo de espera, la interfaz interactiva de SQL intentaráconectarse con un objectserver de copia de seguridad,siempre que esté disponible. De forma predeterminada, nose especifica ningún tiempo de espera.

En Windows, -L especifica el tiempo de espera máximocuando se conecta al servidor, y -T especifica el número desegundos antes de que un mandato excede el tiempo deespera. Si no especifica un valor de tiempo de espera, unmandato se ejecuta indefinidamente. Esto afecta a losmandatos emitidos desde dentro isql , no el tiempo deconexión. El tiempo de espera por defecto para el registroen isql es de 60 segundos.Nota: El mandato nco_sql ejecuta nco_get_login_tokenpara obtener una señal de inicio de sesión y, acontinuación, se ejecuta la interfaz interactiva de SQL (isql ) con esta señal. El tiempo de espera de redespecificada se pasa a los binarios nco_get_login_token yisql cuando se inicia. Si ejecuta nco_sql con -secure , ¿ noestablezca el tiempo de espera en un valor mayor que 14segundos porque una señal de inicio de sesión segura sóloes válida durante 15 segundos. Se puede utilizar un tiempode espera mayor con la opción -nosecure.

-nosecure Cuando se especifica, la información de inicio de sesión nose cifra cuando se transmite entre componentes.

-password password

-P password en Windows

Especifica la contraseña del usuario.

En Windows, si utiliza una contraseña vacía, como porejemplo con el ObjectServer NCOMS predeterminado, laopción -P debe especificarse como el último elemento. Porejemplo:

"%NCHOME%\omnibus\bin\isql" -U root -S NCOMS -iupdate71to72.sql -P

Atención: La contraseña es visible si se especifica en lalínea de mandatos. Si no se especifica, se le solicitará lacontraseña.

-secure Cuando se especifica, la información de inicio de sesión secifra cuando se transmite entre componentes.

Este es el valor por defecto para todas las versionessoportadas de Tivoli Netcool/OMNIbus.

-server servername

-S servername en Windows

Especifica el nombre del ObjectServer al que se conecta. Elvalor por defecto es NCOMS.

-user username

-U username en Windows

Especifica el nombre del usuario Tivoli Netcool/OMNIbus.El valor por defecto es el usuario que ejecuta el mandato.Nota: La interfaz interactiva de SQL no permite espacios enlos nombres de usuario.

Capítulo 5. SQL de ObjectServer 147

Page 162: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Después de la conexión, puede escribir mandatos SQL de objectserver.Conceptos relacionados:“Ejecución de la interfaz interactiva SQL en modalidad segura” en la página 151Tareas relacionadas:“Ejecución de mandatos SQL en la interfaz interactiva de SQL”

Ejecución de mandatos SQL en la interfaz interactiva de SQLDespués de conectar a la interfaz interactiva de SQL con un nombre de usuario ycontraseña, se muestra la solicitud numerada. Especifique mandatos SQL deObjectServer en la solicitud.

La solicitud se muestra del modo siguiente:1>

Al escribir texto:v Los mandatos se pueden dividir en varias líneas.v Los mandatos no se procesan hasta que se introduce la palabra clave go en

letras minúsculas al principio de una nueva línea y se pulsa Intro.

Nota: El programa de utilidad nco_sql no permite preceder la palabra clave gocon espacios en blanco. Por ejemplo, si ejecuta nco_sql de forma no interactivadesde un script y utiliza espacios en blanco para sangrar la palabra clave go , lassentencias SQL fallarán.

v Varios mandatos, separados por un punto y coma, pueden ejecutarse con unsolo mandato go .

v Puede entrar un mandato de hasta 4094 caracteres.

Además:v Para cancelar un mandato, escriba reset al principio de una nueva línea, o

pulse Control + C en cualquier parte de una línea. Los mandatos que no se hanejecutado se descartan.

v Para ejecutar el editor predeterminado (tal como lo define la variable de entornoEDITOR) en el programa de utilidad nco_sql , especifique VI al principio deuna nueva línea.

v Para leer en un archivo, escriba : r nombrearchivo al principio de una nuevalínea. No incluya el mandato go en el archivo. En su lugar, especifique elmandato go al principio de una nueva línea.

v Para ejecutar un mandato del sistema operativo, especifique !! seguido delmandato (por ejemplo, !! ls ) al principio de una nueva línea.

Notación de sintaxis SQLUna notación de sintaxis SQL se utiliza para describir mandatos SQL deobjectserver que pueden ejecutarse desde la interfaz interactiva de SQL.

Un ejemplo de notación de sintaxis para la creación de tablas:CREATE TABLE [database_name.]table_namePERSISTENT | VIRTUAL(column_name data_type [ PRIMARY KEY | NODEFAULT | NOMODIFY | HIDDEN ],...[, PRIMARY KEY(column_name,...) ] );

Consejo: Al entrar un mandato SQL, debe especificar las palabras clave en elorden descrito en las descripciones de sintaxis.

148 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 163: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

La tabla siguiente describe la notación de sintaxis utilizada para mandatos SQL.

Tabla 25. Notación de sintaxis SQL

Sintaxis Descripción

{ a | b } En la notación de sintaxis SQL, las llaves incluyen dos omás opciones alternativas obligatorias, separadas por barrasverticales.

[ ] En la notación de sintaxis SQL, los corchetes indican uncláusula o un elemento opcional. Varios elementos ocláusulas estarán separados por barras verticales.

| En la notación de sintaxis SQL, las barras verticales separandos o más elementos de sintaxis alternativa.

... En la notación de sintaxis SQL, los puntos suspensivosindican que se puede repetir el elemento anterior. Larepetición es ilimitada a menos que se indique lo contrario.

,... En la notación de sintaxis SQL, los puntos suspensivosprecedidos de una coma indican que se puede repetir elelemento precedente, con cada elemento separado delúltimo por una coma. La repetición es ilimitada a menosque se indique lo contrario.

a En la notación de sintaxis SQL, un elemento subrayadoindica una opción predeterminada.

( ) En la notación de sintaxis SQL, los paréntesis que aparecendentro de la sintaxis de la sentencia forman parte de lasintaxis y deberán escribirse tal como se muestra, a menosque se indique lo contrario.

Dentro de la sintaxis:v Las palabras clave SQL se muestran en mayúsculas; por ejemplo, CREAT, TABLE

y PERSISTENT. Tenga en cuenta, no obstante, que las palabras clave SQL nodistinguen en mayúsculas y minúsculas, y pueden aparecer en mayúsculas, enminúsculas o mezcladas.

v Los valores variables de describen mediante cursiva. Por ejemplo, database_namerequiere la entrada de un nombre de base de datos real, table_name requiere laentrada de un nombre de tabla real, column_name requiere la entrada de unnombre de columna real y data_type requiere la entrada de un tipo de datos real.

Convenciones de denominación para los objetos ObjectServerCuando se emiten mandatos SQL, debe adherirse a los convenios de denominacióndefinidos para objectservers.

El nombre de un ObjectServer debe consistir en 29 o menos caracteres enmayúscula y no puede empezar por un entero.

Al crear un objeto de objectserver, debe asignarle un nombre exclusivo para esetipo de objeto. Los nombres de objetos ObjectServer deben comenzar con una letramayúscula o minúscula seguida de letras mayúsculas o minúsculas, números ocaracteres de subrayado (_) hasta 40 caracteres de longitud.

Nota: Los nombres de usuario, grupo y rol pueden ser cualquier serie de textoentre comillas con una longitud máxima de 64 caracteres.

Los nombres de objetos e identificadores de ObjectServer son sensibles a lasmayúsculas y minúsculas.

Capítulo 5. SQL de ObjectServer 149

Page 164: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Especificación de las vías de acceso en la interfaz interactivaSQLAlgunos mandatos SQL exigen la especificación de nombres de vías de acceso.

Por ejemplo, en UNIX puede crear un archivo especificando el mandato siguiente:

create file TESTFILE01 '/tmp/testfile01';

En Windows, debe indicar un carácter de escape para el carácter de barra inclinadainvertida en las vías de acceso de archivo o las vías de acceso no se interpretaráncorrectamente. Por ejemplo, puede crear un archivo ObjectServer en Windows conel mandato siguiente:

create file TESTFILE01 'c:\\temp\\testfile01.txt';

También puede utilizar el separador de vía de acceso de UNIX cuando especifiquevías de acceso en Windows. La vía de acceso siguiente de UNIX también seinterpreta correctamente en Windows:create file TESTFILE01 ’c:/temp/testfile01.txt’;

Utilización de archivos de texto para la entrada y la salidaPuede redirigir archivos de texto utilizando la interfaz interactiva de SQL. Estafunción es útil cuando necesita realizar tareas repetitivas.

El archivo de texto debe contener sólo mandatos SQL y debe terminar con lapalabra clave go . De lo contrario, los mandatos no se procesarán.

Por ejemplo, para ejecutar los mandatos de SQL en un archivo de texto llamadomy_SQL_file.txt desde una línea de mandatos de Unix, entre el mandatosiguiente:

nco_sql -server OS1 -username myuser -password mypass < my_SQL_file.txt

También puede dirigir la salida a un archivo. Por ejemplo:

nco_sql -server OS1 -username myuser -password mypass< my_SQL_file.txt >output.txt

Windows No puede utilizar los caracteres de redireccionamiento est y > pararedirigir la entrada en un archivo de texto, o redireccionar la salida de un archivode texto. En su lugar, utilice el argumento de línea de mandatos -I filename enlugar de y utilice el argumento de línea de mandatos -o en lugar de > .

Ejemplo: Sesión de intefaz interactiva SQL en UNIXEste ejemplo muestra una sesión de interfaz interactiva de SQL en Unix, paraejecutar nco_sql y la entrada de mandatos.nco_sql -server OS1 -username myuser -password mypass

1> select * from alerts.status;2> go

Se muestran los resultados del mandato.

150 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 165: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Ejecución de la interfaz interactiva SQL en modalidad seguraCuando un ObjectServer se ejecuta en modalidad segura, exige que los clientes,como sondas, escritorios, pasarelas y la interfaz interactiva SQL, se conecten connombres de usuario y contraseñas válidos. La información de inicio de sesión secifra automáticamente cuando se transmite entre los componentes para evitar elespionaje.

La interfaz interactiva SQL se ejecuta en la modalidad segura a menos que seespecifique la opción de línea de mandatos -nosecure cuando se inicia la interfazinteractiva SQL.

Cuando se ejecuta la interfaz interactiva SQL en modalidad segura, utiliza elprograma de utilidad nco_get_login_token para cifrar sus datos de inicio de sesiónpara la transmisión. El programa de utilidad genera una señal que sólo se utilizapara iniciar sesión en el ObjectServer. La señal tiene un límite de tiempo tras elcual caduca y queda invalidado.Tareas relacionadas:“Inicio de la interfaz interactiva SQL” en la página 146

Cifrado de contraseñas en scripts nco_sql de UNIXPuede utilizar el programa de utilidad nco_sql_crypt para cifrar contraseñas deinicio de sesión de texto sin formato para que no se muestran en los scripts deUNIX que ejecutan nco_sql. Esto sólo es aplicable cuando se trabaja en unamodalidad no FIPS 140–2.

Cuando trabaje en modalidad FIPS 140–2, deje las contraseñas en texto sin formatoen los scripts o utilice el programa de utilidad nco_aes_crypt con la opción -d paradescifrar los datos confidenciales antes de utilizarlos.

Para cifrar y utilizar una contraseña de texto sin formato en modalidad no FIPS140–2:1. Especifique el mandato siguiente:

$NCHOME/omnibus/bin/nco_sql_crypt contraseña_texto_sin_formato

En este mandato, contraseña_texto_sin_formato representa la forma no cifrada dela contraseña. El programa de utilidad nco_sql_crypt muestra una versióncifrada de la contraseña.

2. Copie la contraseña cifrada en el script.

Resultados

El ObjectServer descifra las contraseñas cifradas con el programa de utilidadnco_sql_crypt cuando se establece la conexión.

Cómo salir de la interfaz interactiva SQL

Para salir de la interfaz interactiva de SQL:

Ejecute la acción adecuada correspondiente al sistema operativo:

Opción Descripción

UNIX Pulse Control + D o escriba quit o exit al principio de una nueva línea.

Windows Especifique quit o exit al principio de una nueva línea.

Capítulo 5. SQL de ObjectServer 151

Page 166: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Se le desconectará del objectserver y se le devolverá al indicador del sistemaoperativo.

Creación, modificación y supresión de objetos de ObjectServerEl objectserver almacena, gestiona y procesa los datos de sucesos recopilados porparte de aplicaciones externas, como los analizadores y las pasarelas. Lasestructuras de almacenamiento por defecto (u objetos) se crean de acuerdo a losarchivos de definición de SQL.

Puede utilizar mandatos de lenguaje de definición de datos (DDL) para crear,modificar y eliminar objetos de objectserver. La siguiente tabla lista cada objeto ylos mandatos DDL que se pueden utilizar.

Tabla 26. Objetos ObjectServer y mandatos DDL asociados

Objeto de objectserver Mandatos DDL permitidos

DATABASE CREATE DATABASE

DROP DATABASE

TABLA CREATE TABLE

ALTER TABLE

DROP TABLE

INDEX CREATE INDEX

DROP INDEX

VIEW CREATE VIEW

DROP VIEW

RESTRICTION FILTER CREATE RESTRICTION FILTER

DROP RESTRICTION FILTER

ARCHIVO CREATE FILE

ALTER FILE

DROP FILE

Bases de datosUna base de datos es un conjunto estructurado de datos organizados para unacceso rápido a la información deseada. Una base de datos relacional utiliza tablascomo contenedores lógicos para almacenar estos datos en filas y columnas.

Puede crear i eliminar bases de datos utilizando SQL de ObjectServer.

Creación de una base de datosUtilice el mandato CREATE DATABASE para crear una base de datos.

SintaxisCREATE DATABASE database_name;

El nombre de base de datos debe ser exclusivo dentro del objectserver deobjectserver y a cumplir con los convenios de denominación.

152 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 167: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Una base de datos siempre es persistente.

Ejemplocreate database mydb;

Conceptos relacionados:“Convenciones de denominación para los objetos ObjectServer” en la página 149

Eliminación de una base de datosUtilice el mandato DROP DATABASE para descartar una base de datos existente.

No puede descartar una base de datos si contiene objetos. Tampoco puededescartar las bases de datos de catálogo o seguridad, que son las bases de datosinicializadas por sistema.

SintaxisDROP DATABASE database_name;

Ejemplodrop database mydb;

Conceptos relacionados:“Bases de datos inicializadas por sistema”

Bases de datos inicializadas por sistemaAl inicializar un objectserver, se crean una serie de bases de datospredeterminadas.

La tabla siguiente describe estas bases de datos inicializadas por el sistema.

Tabla 27. Bases de datos inicializadas por sistema

Nombre de la base dedatos Tipo de base de datos Descripción

seguridad Sistema Contiene información sobre el sistemade seguridad, incluidos los usuarios,roles, grupos y permisos.

catálogo Sistema Contiene metadatos sobre objetosObjectServer.

alertas Usuario Contiene información de estado dealerta, reenviada al objectserver porsondeos y pasarelas.

servicio Usuario Se utiliza para dar soporte a IBMTivoli Composite ApplicationManager for Internet ServiceMonitoring.

personalizado Usuario Se puede utilizar para tablasañadidas por usuarios.

persist Sistema Registra información de estadoObjectServer interna.

transfer Sistema Se utiliza internamente por laspasarleas unidireccionales ybidireccionales de objectServer parasincronizar la información deseguridad entre objectservers.

Capítulo 5. SQL de ObjectServer 153

Page 168: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 27. Bases de datos inicializadas por sistema (continuación)

Nombre de la base dedatos Tipo de base de datos Descripción

master Usuario Se utiliza para compatibilidad conversiones anteriores deTivoliNetcool/OMNIbus. Las tablas de labase de datos maestra tambiénsoportan la arquitectura objectserverdel escritorio.

Para obtener detalles sobre laarquitectura de ObjectServer deescritorio, consulte IBM TivoliNetcool/OMNIbus Installation andDeployment Guide.

herramientas Usuario Se utiliza para compatibilidad conversiones anteriores deTivoliNetcool/OMNIbus.

iduc_system Usuario Contiene todas las tablas necesariaspara el soporte de la aplicación iducpara la notificación de sucesosacelerados, el envío de mensajes deinformación y la invocación demandatos.

precisión Usuario Utilizado por IBM Tivoli NetworkManager IP Edition para implementarla aplicación de sucesos afectados porservicio.

Restricción: El ObjectServer mantiene las bases de datos de sistema. Puede ver,pero no modificar, los datos contenidos en ellas.Conceptos relacionados:“Configuración de bases de datos” en la página 132Referencia relacionada:Apéndice A, “Tablas de ObjectServer”, en la página 349

TablasLa principal estructura de almacenamiento de la tabla es el objectserver.

Una tabla tiene un número fijo de columnas de tipo de datos. El nombre de cadacolumna es exclusivo de la tabla. Una tabla contiene cero o más filas de datos en elformato definido por la columna de la tabla de la lista.

El nombre de la tabla totalmente calificado incluye el nombre de base de datos ynombre de la tabla, separados por un punto. Por ejemplo, la tabla status en labase de datos de alerts se identifica como alerts.status.

154 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 169: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Creación de una tablaUtilice el mandato CREATE TABLE para crear una tabla.

SintaxisCREATE TABLE [database_name.]table_namePERSISTENT | VIRTUAL(column_name data_type [ PRIMARY KEY | NODEFAULT | NOMODIFY | HIDDEN],...[, PRIMARY KEY(column_name,...) ] );

El nombre de tabla debe ser exclusivo dentro de la base de datos y cumplir con losconvenios de denominación.

El tipo de almacenamiento es persistente o virtual . Una tabla persistente sevuelve a crear, se completa con todos sus datos, cuando el objecserver se reinicia.Una tabla virtual se vuelve a crear con la misma descripción, pero sin datos,cuando el ObjectServer se reinicia.

Cuando el usuario define columnas, debe especificar el nombre de columna y eltipo de datos, y puede también especificar propiedades opcionales.

El número máximo de columnas en una tabla es 512, excluidas las columnasmantenida por el sistema. El tamaño máximo de fila para una tabla, que es lasuma de la longitud de las columnas de la fila, es 64 kB.

Ejemplocreate table mydb.mytab persistent(col1 integer primary key, col2 varchar(20));

Conceptos relacionados:“Convenciones de denominación para los objetos ObjectServer” en la página 149

Especificación de tipos de datos para columnas:

Cada valor de columna en el objectserver tiene asociado un tipo de datos. El tipode datos determina cómo el objectserver procesa los datos de la columna.

Por ejemplo, el signo más ( + ) añade valores enteros o concatena valores de serie,pero no actúa en valores booleanos.

Al crear una tabla utilizando el mandato CREATE TABLE, debe especificar un tipode datos para cada columna que defina. Los tipos de datos soportados por elObjectServer se listan en la tabla siguiente.

Tabla 28. Tipos de datos de objectserver

Tipo de SQL DescripciónValorpredeterminado

ID de objectserverpara tipo de datos

INTEGER Entero firmado de 32bits.

0 0

INCR Entero no firmado de32 bits con aumentoautomático. Sólo seaplica a columnas dela tabla, y solamentese puede actualizarpor el sistema.

1 5

Capítulo 5. SQL de ObjectServer 155

Page 170: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 28. Tipos de datos de objectserver (continuación)

Tipo de SQL DescripciónValorpredeterminado

ID de objectserverpara tipo de datos

UNSIGNED Entero sin firmar de32 bits.

0 12

BOOLEAN TRUE o FALSE. FALSE 13

REAL Número de puntoflotante firmado de64 bits.

0.0 14

TIME Tiempo, almacenadocomo el número desegundos desde lamedianoche el 1 deenero de 1970. Estees el estándard dehora internacionalUTC.

Jueves 1 Enero01:00:00 1970

1

CHAR(integer) Serie de caracteres detamaño fijo, enterocaracteres delongitud (8192 byteses el máximo).

El tipo char esidéntico en operacióna varchar, aunque elrendimiento es mejorpara actualizacionesmasivas que cambianla longitud de laserie.

'' 10

VARCHAR(integer) Serie de caracteres detamaño variable,hasta entero caracteresde longitud (8192bytes es la máxima).

El tipo varchar usamenos espacio dealmacenamiento queel tipo char y elrendimiento es mejorpara las operacionesde eliminación deduplicados,exploración, insercióny supresión.

'' 2

INTEGER64 Entero firmado de 64bits.

0 16

UNSIGNED64 Entero sin firmar de64 bits.

0 17

Nota: Sólo puede visualizar columnas de tipo CHAR, VARCHAR, INCR,INTEGER y TIME en la lista de sucesos. No añada ningún otro tipo de columnas ala tabla alerts.status.

156 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 171: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Referencia relacionada:“Creación de una tabla” en la página 155“Tabla alerts.status” en la página 349“Creación de una señal definida por usuario” en la página 228

Especificación de propiedades opcionales para columnas:

Puede especificar las propiedades personalizadas de las columnas que define alcrear una tabla.

Las propiedades de columna opcionales aparecen descritas en la siguiente tabla.

Tabla 29. Propiedades de columna

Propiedad de columna Descripción

PRIMARY KEY La columna se crear como clave primaria. La columna ocolumnas de la clave primaria identifican de formaexclusiva cada fila. Una columna clave primaria debe tenerun valor predeterminado y no pueden ser ocultada.

NODEFAULT El valor de esta columna inicial debe especificarse en elmandato INSERT. Puede utilizar el mandato INSERT parainsertar una nueva fila de datos a una tabla existente.

NOMODIFY El valor de esta columna no se puede cambiar una vez quese haya realizado el mandato INSERT.

HIDDEN Los datos no se graban ni leen desde una columna oculta alinsertar o seleccionar una fila. El nombre de la columna sedebe especificar explícitamente para insertar datos oseleccionarlos. Las columnas ocultas contienen informacióndel sistema o información que no es aplicable a la mayoríade los usuarios.

En el mandato CREATE TABLE, la sintaxis para especificar qué columnas sonclaves primarias es la siguiente:(column_name data_type [ PRIMARY KEY | NODEFAULT | NOMODIFY | HIDDEN ],...[, PRIMARY KEY(column_name,...) ] );

Basándose en esta sintaxis, puede crear columnas como claves primarias en una oambas de las siguientes formas:v Especifique la propiedad de columna PRIMARY KEY como parte de una

definición de columna.v Especifique una o más columnas que componen la clave primaria incluyendo

una lista separada por comas de las columnas en la cláusula PRIMARY KEYdespués de las definiciones de columna.

Referencia relacionada:“Creación de una tabla” en la página 155“Inserción de una fila nueva de datos en una tabla (mandato INSERT)” en lapágina 185

Capítulo 5. SQL de ObjectServer 157

Page 172: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Alteración de una tablaUtilice el mandato ALTER TABLE para cambiar las características de un tablaexistente y sus columnas. Puede añadir, descartar y alterar columnas.

Restricción: No puede alterar tablas del sistema que contengan metadatos sobrelos objetos de ObjectServer.

SintaxisALTER TABLE [nombre_base_datos.]nombre_tablaADD [COLUMN] nombre_columna tipo_datos [ NODEFAULT | NOMODIFY | HIDDEN ]DROP [COLUMN] nombre_columnaALTER [COLUMN] nombre_columna SET NOMODIFY { TRUE | FALSE }ALTER [COLUMN] nombre_columna SET HIDDEN { TRUE | FALSE }ALTER [COLUMN] nombre_columna SET NODEFAULT { TRUE | FALSE }ALTER [COLUMN] nombre_columna SET WIDTH valor;

Puede especificar más de un valor ADD, DROP o ALTER en un mandato ALTERTABLE.

Ejemploalter table mytab add col3 real;

Conceptos relacionados:“Tablas del sistema” en la página 162

Adición de una columna:

Para añadir columnas a una tabla existente, utilice el valor ADD COLUMN DELmandato ALTER TABLE.

En este mandato, la sintaxis para añadir columnas es la siguiente:ADD [COLUMN] column_name data_type [ NODEFAULT | NOMODIFY | HIDDEN ]

Al añadir las columnas, debe especificar el nombre de columna y el tipo de datos.También puede especificar propiedades opcionales.

No puede añadir claves primarias a una tabla existente.

Cuando se añade una columna nueva a la tabla utilizando la cláusula nodefault ,cualquier sentencia INSERT que se envía desde los analizadores o pasarelas fallará.La anomalía se produce porque no cumplen con la restricción nodefault .

Al marcar una columna como NODEFAULT e insertar una fila en esa tabla, lasentencia de inserción debe establecer explícitamente un valor para esa columna ola sentencia INSERT dejará de ser válida.

Esto se produce porque la sentencia INSERT no intentará completar la columnaNODEFAULT. El desencadenante tampoco será válido y no se podrá volver a compilarsatisfactoriamente.Referencia relacionada:“Alteración de una tabla”“Especificación de tipos de datos para columnas” en la página 155“Especificación de propiedades opcionales para columnas” en la página 157

158 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 173: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Eliminación de una columna:

Para eliminar columnas de una tabla existente, utilice el valor DROP COLUMNcon el mandato ALTER TABLE.

En este mandato, la sintaxis es la siguiente columnas para eliminar columnas:DROP [COLUMN] column_name

No puede descartar una columna si la columna es una clave principal.

Cuando elimine una columna, una cantidad considerable de acciones preliminaresson necesarias para identificar y eliminar las dependencias externas en la columna.Debe buscar las referencias a la columna dentro de desencadenantes,procedimientos, vistas y filtros de restricción consultando los correspondientestablas de base de datos. También debe buscar referencias a la columna en losarchivos de reglas de analizador y los archivos de correlación de pasarela.

Atención: Si elimina una columna de la que dependen desencadenantes,procedimientos, vistas, filtros de restricción o índices, estos objetos dependientestambién se suprimen y se grabará un aviso en el archivo de registro deobjectserver. Para evitar suprimir accidentalmente desencadenantes,procedimientos, vistas o filtros de restricción, lea las siguientes directrices paradescartar columnas. (Como los índices están relacionados directamente concolumnas, siempre se suprimen cuando sus columnas asociadas se inactivan.)

Las siguientes directrices se basan en un caso de ejemplo donde se descarta lacolumna País de objectserver:1. Conéctese a objectserver (por ejemplo, Owl) utilizando la interfaz interactiva de

SQL, como se muestra en la tabla siguiente. Su nombre de usuario se suponepor omisión, pero deberá especificar su contraseña.

Tabla 30. Inicio de la interfaz interactiva SQL

Opción Descripción

UNIX Escriba:

$NCHOME/omnibus/bin/nco_sql -server OWL

Windows Escriba:

%NCHOME%\omnibus\bin\isql -S OWL

2. Haga una copia de seguridad del objectserver en una ubicación temporal (porejemplo, /tmp/mybackup ) utilizando el mandato ALTER SYSTEM BACKUP.Esta medida de precaución le garantiza que podrá restaurar el sistema si esnecesario.1> alter system backup ’/tmp/mybackup’;2> go

3. Liste los detalles de los desencadenantes, tal como están almacenados en latabla catalog.triggers:1> describe catalog.triggers;2> go

El tipo de clave, el nombre, el tipo de datos y la longitud de cada columna dela tabla se muestran en la pantalla.

4. Recupere los nombres de todos los desencadenantes que hacen referencia apaís en el cuerpo del desencadenante:

Capítulo 5. SQL de ObjectServer 159

Page 174: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

1> select TriggerName from catalog.triggers where CodeBlock like ’Country’;2> go

Los nombres de desencadenante de todos los desencadenante afectados semuestran.

5. Tome nota de todos los desencadenantes enumerados y elimine las referenciasPaís editando cada desencadenante. Puede hacerlo desde la ventana Detalles

de desencadenante (ficha acción ) en el netcool/Omnibus Administrator.6. Repita los pasos 3 a 5 para identificar cualquier otro objeto que haga referencia

la columna de país, y elimine todas las instancias de la referencia. La tablasiguiente lista las tablas de base de datos donde el usuario debe buscar, lascorrespondientes sentencias SELECT y las ventanas de netcool/OmnibusAdministrator que puede utilizar para editar el objeto.

Tabla 31. Tablas de catálogo de sistema que deben ser objeto de búsqueda, sentencias SELECT y ventanas deNetcool/OMNIbus Administrator

Tipo de objeto Nombre de tabla Sentencia SELECT

Ventana deNetcool/OMNIbusAdministrator

Procedimientos catalog.sql_procedures select ProcedureName fromcatalog.sql_procedures whereCodeBlock like ’Country’;

Ventana Detalles deprocedimiento SQL

Filtros de restricción catalog.restrictions select RestrictionName fromcatalog.restrictions whereConditionText like ’Country’;

Ventana Detalles defiltro de restricción

Vistas catalog.views select ViewName fromcatalog.views where CreationTextlike ’Country’;

7. Busque en los archivos de normas de analizador $NCHOME/omnibus/probes/arch/*.rules y elimine todas las referencias a la columna.

8. Busque los archivos de correlación de pasarela $NCHOME/omnibus/gates/objserv_type/objserv_type.map, donde type representa uni o bi. Elimine todaslas referencias a la columna.

9. Después de que todas las referencias hayan sido eliminadas, elimine la columnaPaís utilizando la sintaxis ALTER TABLE... DROP COLUMN .

Conceptos relacionados:“Recuperación de datos de una tabla o Vista (mandato SELECT)” en la página 187Referencia relacionada:“Modificación de los valores predeterminados y actuales del ObjectServer(mandato ALTER SYSTEM)” en la página 193“Visualización de detalles de columnas de una tabla o vista (mandato DESCRIBE)”en la página 192“Alteración de una tabla” en la página 158

160 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 175: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Alteración de una columna:

Para alterar las columnas de una tabla existente, utilice el valor ALTER COLUMNcon el mandato ALTER TABLE.

En este mandato, la sintaxis es la siguiente columnas para alterar columnas:ALTER [COLUMN] nombre_columna SET NOMODIFY { TRUE | FALSE }ALTER [COLUMN] nombre_columna SET HIDDEN { TRUE | FALSE }ALTER [COLUMN] nombre_columna SET NODEFAULT { TRUE | FALSE }ALTER [COLUMN] nombre_columna SET WIDTH value

Utilice las directrices siguientes para alterar las propiedades de columna:v Para alterar las propiedades NOMODIFY , HIDDEN, y NODEFAULT de una columna

existente, establezca la propiedad apropiada para true o False . Una columnaclave primaria debe tener un valor predeterminado y no pueden ser ocultada.

v Para alterar el ancho de una columna con un tipo de datos de varchar , utilicela propiedad WIDTH y especifique el parámetro value como una longitud enbytes. No puede alterar la anchura de las claves primarias.

Al marcar una columna como NODEFAULT e insertar una fila en esa tabla, lasentencia de inserción debe establecer explícitamente un valor para esa columna ola sentencia INSERT dejará de ser válida.

Esto se produce porque la sentencia INSERT no intentará completar la columnaNODEFAULT. El desencadenante tampoco será válido y no se podrá volver a compilarsatisfactoriamente.Referencia relacionada:“Especificación de propiedades opcionales para columnas” en la página 157“Alteración de una tabla” en la página 158

Eliminación de una tablaUtilice el mandato DROP TABLE para eliminar una tabla existente.

No puede eliminar una tabla si está referenciada por otros objetos, por ejemplo,desencadenantes o si contiene datos. Tampoco puede eliminar tablas del sistema,que albergan metadatos sobre objetos ObjectServer.

SintaxisDROP TABLE [database_name.]table_name;

Ejemplo

Para suprimir todas las filas de una tabla:delete from mytab;

Para eliminar la tabla:drop table mytab;

Conceptos relacionados:“Tablas del sistema” en la página 162

Capítulo 5. SQL de ObjectServer 161

Page 176: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tablas del sistemaLas tablas del sistema son tablas especiales mantenidas por el objectserver ycontienen metadatos sobre objetos ObjectServer.

Las tablas de sistema se identifican mediante el nombre de la base de datoscatálogo . Por ejemplo, la tabla catalog.columns contiene metadatos sobre todaslas columnas de todas las tablas en el objectserver.

Puede ver la información de las tablas del sistema utilizando los mandatosSELECT i DESCRIBE, pero no puede añadir, modificar ni suprimir tablas delsistema ni su contenido utilizando SQL de objectserver.Conceptos relacionados:“Recuperación de datos de una tabla o Vista (mandato SELECT)” en la página 187Referencia relacionada:“Visualización de detalles de columnas de una tabla o vista (mandato DESCRIBE)”en la página 192“Tablas de catálogos del sistema” en la página 367

ÍndicesPuede utilizar índices para mejorar el rendimiento de la base de datos delobjectserver. El uso de índices bien diseñados puede reducir o eliminar lanecesidad de llevar a cabo exploraciones de tabla completas durante la ejecuciónde consultas SQL e incrementar la velocidad de la recuperación de datos.

Creación de un índiceUtilice el mandato CREATE INDEX para crear un índice en una tabla de base dedatos.

Consejo: Las directrices de indexación y consulta SQL están disponibles paraayudarle a determinar qué columnas deben indexarse y qué tipo de índice debecrearse para una columna.

SintaxisCREATE INDEX index_nameON database_name.table_name[USING { HASH | TREE }] (column_name);

El valor index_name debe ser exclusivo del ObjectServer y debe estar enconformidad con las convenciones de denominación de ObjectServer. Para facilitarla identificación y singularidad, considere utilizar un convenio de denominaciónpara los índices; por ejemplo, column_name idx o column_name Index, dondecolumn_name es el nombre de la columna.

El nombre de tabla especificado después de la palabra clave ON debe estartotalmente calificado con el nombre de la base de datos; por ejemplo, alerts.status.

Restricción: No puede crear los índices de las columnas en las tablas de sistema.Estas tablas contienen metadatos sobre objetos objectserver y se almacenan en labase de datos del catálogo.

Utilice el parámetro opcional USING para crear un índice hash o de árbol. Si seomite, un índice Hash se crea de forma predeterminada. Un índice Hash esapropiado para utilizarse sólo con consultas de SQL que denotan la igualdad. Uníndice de árbol también se puede utilizar para consultas ordenadas.

162 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 177: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Restricción: No puede crear un índice Hash en un único campo de clave primaria.No puede crear un índice de árbol en columnas con valores de datos booleanos.

Debe especificar el nombre de la única columna que se está indexando.

Ejemplocreate index SeverityIdx on alerts.status (Severity);

create index ExpireTimeIdx on alerts.status using tree (ExpireTime);

Conceptos relacionados:“Convenciones de denominación para los objetos ObjectServer” en la página 149Referencia relacionada:“Directrices de consulta SQL” en la página 337“Directrices de indexación” en la página 340“Tablas de catálogos del sistema” en la página 367

Eliminación de un índiceUtilice el mandato DROP INDEX para eliminar un índice en una tabla de base dedatos redundantes.

SintaxisDROP INDEX index_name;

El valor index_name es el nombre exclusivo para el índice que se está descartando.

Nota: Si se elimina una columna indexada, el índice se descarta automáticamente.

Ejemplodrop index SeverityIdx;

Visualización de detalles del índicePara ver qué columnas están por ahora indexadas, puede examinar el contenido dela tabla catalog.indexes desde la interfaz de netcool/Omnibus Administrator, obien utilizando el mandato SELECT.

Para ver detalles de índice en la tabla catalog.indexes, siga uno de estos pasos:v Desde la ventana de Netcool/OMNIbus Administrator:

1. Seleccione el botón de menú Sistema.2. Pulse Bases de datos. Se abre el panel Bases de datos, tablas y columnas.3. Seleccione catalog.indexes.4. Pulse la ficha Vista de datos en el panel Bases de datos, tablas y columnas

para ver los datos de tabla.v Desde la intefaz interactiva SQL, especifique el mandato siguiente:

select * from catalog.indexes;

Capítulo 5. SQL de ObjectServer 163

Page 178: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Conceptos relacionados:“Interfaz interactiva SQL” en la página 145“Recuperación de datos de una tabla o Vista (mandato SELECT)” en la página 187Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64Referencia relacionada:“Tabla catalog.indexes” en la página 378

VistasUna vista es una tabla virtual proyecta desde filas y columnas seleccionadas deuna tabla real, lo que permite visualizar y manipular subconjuntos de datos detabla fácilmente.

Por ejemplo, si desea que un grupo de usuarios vea sólo determinadas columnasrelevantes de una tabla, puede crear una vista que contenga únicamente lascolumnas. También puede tener columnas virtuales , creadas utilizando expresionesen columnas de la tabla subyacente.

Nota: Las vistas están pensadas principalmente para uso interno. No utilice lasvistas en automatizaciones.Conceptos relacionados:“Expresiones” en la página 183

Creación de una vistaUtilice el mandato CREATE VIEW para crear una vista.

SintaxisCREATE [ OR REPLACE ] VIEW [database_name.]view_name[ (view_column_name,...) ][ TRANSIENT | PERSISTENT ]AS SELECT_cmd;

Si existe una posibilidad de que ya exista una vista con el mismo nombre que elque desea crear, utilice las palabras clave opcionales OR REPLACE. Si existe lavista, se sustituirá por la que esté creando. Si la vista no existe, se crea una nueva.

El nombre de vista debe ser exclusivo dentro de la base de datos y cumplir con losconvenios de denominación. Se aplican las siguientes restricciones adicionales parala creación de vistas:v Si no especifica un nombre de base de datos, la vista se crea en la base de datos

de alertas.v No puede crear una vista en una vista.v No puede crear una vista en una base de datos de catálogo.

Puede especificar un tipo de almacenamiento TRANSIENT o PERSISTENT en funciónde los requisitos de almacenamiento de datos. Una vista transitoria se destruyecuando se desconecta el cliente que lo ha creado. Una vista persistente se duplicaen disco. Cuando el objectserver se reinicia, la vista se vuelve a crear.

SELECT_cmd es cualquier mandato SELECT (incluidos los mandatos SELECT deagregación), con las restricciones siguientes:v Debe especificar todos los nombres de columna explícitamente, en lugar de

utilizar un comodín ( * ), en la lista de selección.

164 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 179: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

v Si incluye columnas virtuales, no puede actualizarlas.v Si no especifica un nombre de base de datos, el valor por defecto es alerts.v No puede especificar una cláusula GROUP BY.v Sólo puede tener una subconsulta que contegna una cláusula WHERE en una

sentencia SELECT de agregación.v No puede utilizar columnas virtuales en una sentencia SELECT de agregación.v Si crea una vista incorporada, no podrá efectuar un SELECT de agregación.

Ejemplocreate view alerts.myview persistent as select Severity, LastOccurrence, Summaryfrom alerts.status order by Severity, LastOccurrence;

Conceptos relacionados:“Convenciones de denominación para los objetos ObjectServer” en la página 149“Recuperación de datos de una tabla o Vista (mandato SELECT)” en la página 187

Eliminación de una vistaUtilice el mandato DROP VIEW para eliminar una vista existente.

No se puede eliminar una vista si otros objetos hacen referencia ésta.

SintaxisDROP VIEW [database_name.]view_name;

Si no especifica un nombre de base de datos, la vista se elimina en la base de datosde alertas.

Ejemplodrop view myview;

Filtros de restricciónUn filtro de restricción proporciona una forma para restringir las filas que sevisualizan cuando un usuario visualiza una tabla.

Después de que el filtro de restricción se ha asignado a un usuario o grupo, elfiltro de restricción controla los datos que se pueden mostrar y modificar desdeaplicaciones cliente y modificar en mandatos INSERT, UPDATE y DELETE. Sólo sedevuelven las filas que cumplen los criterios especificados en la condición del filtrode restricción.

Puede asignar sólo un filtro de restricción por tabla a un usuario o un grupo. Sivarios filtros de restricción se aplican a un usuario o grupo, los datos resultantesserán una combinación de todos los filtros de restricción aplicables para el usuarioo grupo.

Si está utilizando varios filtros de restricción, asegúrese de establecer la propiedadRestrictionFiltersAND de ObjectServer correctamente.

Capítulo 5. SQL de ObjectServer 165

Page 180: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Referencia relacionada:“Propiedades y opciones de línea de mandatos de ObjectServer” en la página 3“Modificación de los detalles de un usuario existente (mandato ALTER USER)” enla página 197“Modificación de los detalles de un grupo existente (mandato ALTER GROUP)” enla página 199

Creación de un filtro de restricciónUtilice el mandato CREAT RESTRICTION FILTER para crear un filtro derestricción.

SintaxisCREATE [ OR REPLACE ] RESTRICTION FILTER filter_nameON database_name.table_name WHERE condition;

Si existe una posibilidad de que ya exista un filtro de restricción con el mismonombre que el que desea crear, utilice las palabras clave opcionales OR REPLACE.Si existe el filtro de restricción, se sustituirá por el que esté creando. Si el filtro derestricción no existe, se crea uno nuevo.

Nota: Si está sustituyendo un filtro de restricción, sólo se podrá modificar lacondición . Un filtro puede sustituirse incluso si se ha asignado a cualquier usuarioo grupo.

El nombre de filtro de restricción debe ser exclusivo y cumplir con los conveniosde denominación de ObjectServer.

El nombre de tabla especificado después de la palabra clave ON debe estartotalmente calificado con el nombre de la base de datos; por ejemplo, alerts.status.

La condición consta de una o varias expresiones que devuelven un subconjunto defilas de la tabla. Si es aplicable, debe especificar nombres de tabla completamentecalificados dentro de la cláusula WHERE y cualquier sentencias SELECT en lacondición. Utilice el formato database_name.table_name para un nombre de tablacompletamente calificado.

Un filtro de restricción siempre es persistente, y se vuelve a crear cuando elobjectserver se reinicia.

Ejemplocreate restriction filter myfilter on alerts.status where Severity = 5;

Consejo: También puede crear filtros de restricción en el creador de filtros.Conceptos relacionados:“Convenciones de denominación para los objetos ObjectServer” en la página 149“Condiciones” en la página 183

166 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 181: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Eliminación de un filtro de restricciónUtilice el mandato DROP RESTRICTION FILTER para eliminar un filtro derestricción existente.

No puede eliminar un filtro de restricción si se ha asignado a ningún usuario ogrupo.

SintaxisDROP RESTRICTION FILTER filter_name;

Ejemplodrop restriction filter myfilter;

ArchivosLos archivos de objectserver son objetos de almacenamiento definidos por elusuario que mantienen los datos de registro o informe.

Un archivo objectserver es un archivo lógico, que tiene el correspondiente archivoo conjunto de archivos en el sistema de archivos físicos. Puede definir tamaños dearchivo de Objectserver y el número de archivos físicos en un conjunto.

Creación de un archivoUtilice el mandato CREAT FILE para crear un archivo de objectserver.

SintaxisCREATE [ OR REPLACE ] FILE file_name ’path_to_physical_file’[ MAXFILES number_files ][ MAXSIZE file_size { GBYTES | MBYTES | KBYTES | BYTES } ];

Si existe una posibilidad de que ya exista un archivo con el mismo nombre que elque desea crear, utilice las palabras clave opcionales OR REPLACE. Si elObjectServer no existe, se crea uno nuevo. Si existe el archivo de ObjectServer, sesustituirá por el que esté creando.

Nota: Si no utiliza las palabras clave OR REPLACE, debe especificar un archivofísico que todavía no existe. Si utiliza las palabras clave OR REPLACE, ya existe elarchivo físico, el archivo físico se sobrescribe si no hay ningún archivo asociado aobjectserver.

El nombre de archivo debe ser exclusivo y cumplir con los convenios dedenominación de ObjectServer.

path_to_physical_file es la vía de acceso completa y el nombre del archivocorrespondiente en el sistema de archivos físicos, por ejemplo, /log/out.log . Enplataformas Windows, debe incluir el caràcter de barra inclinada invertida (\) (porejemplo: c:\\tmp\\testfile.txt) o utilizar la vía de acceso UNIX equivalente (porejemplo: c:/tmp/testfile.txt).

Si lo desea, puede establecer MAXFILES para especificar el número de archivos enel conjunto de archivos. El valor predeterminado es 1 . Si establece MAXFILES enun valor mayor que 1 , cuando el primer archivo sobrepasa el tamaño máximo, secrea un archivo nuevo. Cuando este archivo sobrepasa el tamaño máximo, se creaotro archivo nuevo y el proceso se repite hasta que el número máximo de archivosdel conjunto es alcanzado. Luego se suprime el archivo más antiguo y el procesose repite.

Capítulo 5. SQL de ObjectServer 167

Page 182: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Nota: Un número, empezando por 1 que se incrementa según el número dearchivos en el conjunto de archivos, siempre se añade al nombre de archivoespecificado (o extensión de archivo si hay una).

Opcionalmente, puede establecer el tamaño máximo para especificar el tamañomáximo de archivo. Una vez que un registro se graba en el archivo que cumple osupera dicho tamaño, se crea un archivo nuevo. El valor predeterminado es 0 . Sise establece en 0 , no hay ningún tamaño máximo de archivo y, por tanto, elarchivo siempre se compone de un conjunto.

El tamaño de archivo mínimo es 1 KB. El tamaño máximo es 4 GB.

Si el objectserver se reinicia, se añadirán nuevos datos al archivo existente.

Ejemplocreate file logit ’/log/logfile’maxfiles 3maxsize 20 KBytes;

Si ejecuta este mandato de ejemplo, la siguiente secuencia de archivos se crea yutiliza:1. El objectserver crea un archivo vacío denominado logfile1 en el directorio

/log .2. El objectserver graba datos en logfile1 hasta exceder el tamaño máximo de

archivo (20 kB).3. El objectserver cambia el nombre logfile1 por logfile2 . Después, crea un

nuevo logfile1 y graba en éste hasta que sobrepasa el tamaño máximo.4. El objectserver cambia el nombre logfile2 por logfile3 y logfile1 por

logfile2 . Después, crea un nuevo logfile1 y graba en éste hasta quesobrepasa el tamaño máximo.

5. El ObjectServer suprime el archivo más antiguo (logfile3). A continuación,cambia el nombre logfile2 por logfile3 y logfile1 por logfile2 . Después,crea un nuevo archivo logfile1 y graba en éste hasta que sobrepasa el tamañomáximo.

Esta secuencia se repite hasta que el archivo se puede modificar o eliminar.Conceptos relacionados:“Convenciones de denominación para los objetos ObjectServer” en la página 149

Alteración de un archivoUtilice el mandato ALTER FILE para cambiar la configuración de un archivo deobjectserver existente.

SintaxisALTER FILE file_nameTRUNCATE |SET ENABLED { TRUE | FALSE };

El valor TRUNCATE borra cualquier información que se haya escrito en el archivofísico. Cuando hay más de un archivo físico, el archivo en el que se está grabandoactualmente será truncado; los demás archivos del conjunto se suprimen.

El valor ENABLED activa y desactiva el registro. Si es TRUE , un mandato WRITEINTO segraba en el archivo. Si es FALSE , los mandatos WRITE INTO se ignoran yno se graba nada en el archivo. La inhabilitación de un archivo es útil cuando

168 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 183: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

desea detener temporalmente el registro, pero no desea descartar el archivo que haconfigurado.

Ejemploalter file logit truncate;

Referencia relacionada:“Información de registro en archivos ObjectServer (mandato WRITE INTO)” en lapágina 191

Eliminación de un archivoUtilice el mandato DROP FILE para eliminar un archivo ObjectServer existente.

No puede descartar un archivo si se está utilizando, por ejemplo, en undesencadenante.

SintaxisDROP FILE file_name;

La eliminación de un archivo suprime el archivo objectserver; no suprime ningunode los archivos físicos creados en el sistema de archivos.

Ejemplodrop file logit;

Palabras reservadasEn el objectserver, determinados términos están reservados como palabras claveobjectserver o SQL.

No puede utilizar estas palabras reservadas como nombres de objeto en SQL deobjectserver:

Tabla 32. Palabras reservadas de objectserver

ACTCMD ADD AFTER TODOS ALTER

AND ANY APR[IL] ARGUMENTS ARRAY

AS ASC ASSIGN AUG[UST] AUTHORIZE |AUTHORISE

AVERAGE | AVG BACKUP BEFORE BEGIN BETWEEN

BIDIRECTIONAL BINARY BIND BOOL[EAN] BREAK

BY CACHE CALL CANCEL CASE

CHAR[ACTER] CHECK CHECKPOINTING COLUMN COMMENT

COMMIT CONN[ECTION] COUNT CREATE ACTUAL

DATABASE DATE[TIME] DEBUG DEC[EMBER] DECLARE

DEFERRED DELAYED DELETE DESC DESCENT

DESCRIBE DETACHED DISABLE DIST DISTINCT

DO DOUBLE DROP EACH EDGE

ELSE ELSEIF EMPTY END ENCRYPTED

EVALUATE EVENT EVERY EVTFT EXECUTABLE

EXEC[UTE] EXTENSION EXTERNAL FALSE FANP

FEB[RUARY] ARCHIVO FILTER FLUSH FOR

Capítulo 5. SQL de ObjectServer 169

Page 184: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 32. Palabras reservadas de objectserver (continuación)

FORMAT FRI[DAY] FROM FULL GET

GETIDUC GRANT GROUP HARD HAVING

HIDDEN HOST HOURS ID IDUC

IF IMMEDIATE IN INCLUDING INCR

INCREMENT INITIAL INSERT INT[EGER] INT[EGER]64

INTO ISQL JAN[UARY] JOIN JUL[Y]

JUN[E] LEAVE LIKE LIMIT LINK

LOAD LOCK[PH] LOGIN MAR[CH] MAX

MAXFILES MAXSIZE MAY MEMSTORE MESSAGE

METRIC MIN MINUTES MON[DAY] NAMING

NEXT NO NODEFAULT NOMODIFY NOT

NOTIFY NOV[EMBER] OCT[OBER] OF ON

ONCE ONLY OPTION OR ORDER

OUT PAM PASSWORD PERSISTENT PRIMARY

PRIORITY PRIVILEGE PROCEDURE PROP[S] PROTECT

PUBLISH QUERY RAISE REAL REGISTER

REINSERT REMOVE REPLACE RESTRICTION RESYNC

RETRY REVOKE ROLE ROW ROWOF

SAT[URDAY] SAVE SECONDS SELECT SELF

SEND SEP[TEMBER] SESSION SET SHORT

SHOW SIGNAL SKIP SNDMSG SOFT

SQL STATEMENT STORE SUBSCRIBE SUM

SUN[DAY] SVC SYNC SYSTEM TABLA

TEMPORAL TEMP[ORARY] THEN THU[RSDAY] TIME

TO TOKEN TOP TRANS[ACTION] TRANSIENT

TRIGGER TRUE TRUNCATE TUE[SDAY] TYPEOF

UNIDIRECTIONAL UNION UNIQUE UNLOAD UNREGISTER

UNSIGNED UNSIGNED64 UNSUBSCRIBE UNTIL UPDATE

UPDATING USE USER UTC VALUES

VARCHAR[ACTER] VERBOSE VIA VIEW VIRTUAL

WAIT WED[NESDAY] WHEN WHERE WIDTH

WITH WORK WRITE YES XST

170 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 185: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Bloques de creación de SQLUtilice los siguientes bloques de creación para manipular datos en mandatos SQLde objectserver: operadores, funciones, expresiones y condiciones.

OperadoresPuede utilizar operadores para calcular valores de elementos de datos.

Un operador proceso (añade, Resta, etc.) un elemento o elementos de datos. Loselementos de datos en los que se realiza la computación son operandos . Juntos, losoperadores y operandos forman expresiones . En la expresión 7 + 3 , el símbolomás (+) es el operador y 7 y 3 son los operandos.

Los operadores pueden ser unarios o binarios. Los operadores unarios actúan sobreun solo operando. Por ejemplo, el signo de resta (-) se puede utilizar para indicarla negación. Los operadores binarios actuan sobre dos operandos. Por ejemplo, elsigno menos (-) puede utilizarse para restar un operando de otro.

Algunos operadores, como por ejemplo el signo más (+), son polimórficos y se lespuede asignar un significado diferente en distintos contextos. Por ejemplo, puedeutilizar el signo más (+) para añadir dos números ( 7+3 ) o para concatenar dosseries (' el objectserver ' + ' iniciado ').

Los operadores utilizados en el SQL de objectserver se dividen en las siguientescategorías:v Operadores matemáticos y de seriev Operadores de comparación binariosv Operadores de comparación de listav Operadores lógicosConceptos relacionados:“Expresiones” en la página 183

Operadores matemáticos y de serieUtilice los operadores matemáticos para añadir, restar, multiplicar y dividiroperandos numéricos en expresiones. Utilizar operadores de serie para manipularseries de caracteres (tipos de datos char y varchar).

La siguiente tabla describe los operadores matemáticos soportados por elobjectserver.

Tabla 33. Operadores matemáticos

Operador Descripción Ejemplo

+

-

Operadores unarios queindican un operando positivoo negativo.

SELECT * FROM london.status WHERESeverity = -1;

*

/

Operadores binariosutilizados para multiplicar (*)o dividir (/) dos operandos.

SELECT * FROM london.status WHERE Tally* Severity > 10;

+

-

Operadores binariosutilizados para sumar (+) orestar (-) dos operandos.

SELECT * FROM london.status WHERESeverity = Old_Severity - 1;

La siguiente tabla describe el operador de serie soportado por el objectserver.

Capítulo 5. SQL de ObjectServer 171

Page 186: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 34. Operador de serie de caracteres

Operador Descripción Ejemplo

+ Operador binario utilizadopara concatenar dos series decaracteres.

UPDATE mydb.mystatus SET Location = Node+ NodeAlias;

Operadores de comparación binariosPuede utilizar estos operadores para comparar valores numéricos y de serie paraver si son iguales o no.

La siguiente tabla describe los operadores de comparación soportados por elobjectserver.

Tabla 35. Operadores de comparación

Operador Descripción Ejemplo

= Prueba si son iguales SELECT * FROM london.status WHERESeverity = 3;

!=

<>

Prueba si son desiguales SELECT * FROM london.status WHERESeverity <> 1;

<

>

<=

>=

Prueba si es mayor que (>),menor que (<), mayor que oigual que (>=) o menos queo igual que (<=).

Estos operadores realizancomparaciones de seriessensibles a mayúsculas yminúsculas. En lascomparaciones ASCIIestándar sensibles amayúsculas y minúsculas, lasletras mayúsculas aparecenantes que las letrasminúsculas.

SELECT * FROM london.status WHERESeverity > 5;

%=

%!=

%<>

Prueba la igualdad (%=) o lano igualdad (%!=, %<>) entreseries, sin distinguir entremayúsculas y minúsculas.Para que sean iguales, lasseries debe contener todoslos mismos caracteres, en elmismo orden, pero no tienenpor qué tener la mismasmayúsculas/minúsculas.

SELECT * FROM london.status WHERELocation %= ’New York’;

172 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 187: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 35. Operadores de comparación (continuación)

Operador Descripción Ejemplo

%<

%>

%<=

%>=

Compara la relaciónlexicográfica entre dos series,sin distinguir mayúsculas deminúsculas. Estacomparación determina si lasseries aparecen antes (%<) odespués (%>) de otras seriesde forma alfabética. Tambiénpuede encontrar series queson menos que o igual a(%<=) o mayores que oiguales a (%>=) otras series.

Por ejemplo, aaa viene antesde AAB porquealfabéticamente aaa es menosque (aparece antes) AABcuando no se distingue entremayúsculas y minúsculas.

SELECT * FROM london.status WHEREsite_code %< ’UK3’;

[NOT] LIKE El operador LIKE realizacomparaciones de series. Laserie que sigue al operadorLIKE, que puede ser elresultado de una expresiónregular, es el patrón con elque se compara la expresiónde columna. Una expresiónregular puede incluir lasintaxis de coincidencia depatrones descrita en el IBMTivoli Netcool/OMNIbus User'sGuide.

La palabra clave NOTinvierte el resultado de lacomparación.

SELECT * FROM london.status WHERESummary LIKE ’down’;

El resultado es todas las filas en las que laSummary contiene la subserie down .

Los operadores de comparación LIKE y NOT LIKE permiten la coincidencia depatrones de expresión regular en la serie que se compara con la expresión decolumna. Las expresiones regulares son secuencias de átomos secuencias de queestán formadas por caracteres normales y metacaracteres. Un átomo es un únicocarácter o un patrón de uno o más caracteres entre paréntesis. Los caracteresnormales incluyen las letras mayúsculas y minúsculas, así como números. Losmetacaracteres son caracteres no alfabéticos que poseen un significado especial enlas expresiones regulares. El objectserver da soporte a dos tipos de bibliotecas deexpresión regular:v NETCOOL: esta biblioteca es útil para el proceso de caracteres de un solo byte.v TRE: esta biblioteca permite el uso de la sintaxis de expresiones regulares POSIX

1003.2 ampliada y proporciona soporte tanto para los idiomas de carácter de unocomo de varios bytes.

Para obtener más información sobre estas bibliotecas, así como descripciones de losformatos de la sintaxis de expresiones regulares y ejemplos de uso, consulte la IBMTivoli Netcool/OMNIbus User's Guide.

Capítulo 5. SQL de ObjectServer 173

Page 188: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Operadores de comparación de listaUtilizar los operadores de comparación de lista para comparar un valor con unalista de valores.

Las condiciones que utilizan operadores de comparación de lista utilizan losoperadores de comparación binaria con los operadores lógicos (ANY, ALL, IN oNOT IN).

La sintaxis de una expresión de comparación de lista es:expression comparison_operator { ANY | ALL } ( expression,... )

oexpression [ NOT ] IN ( expression,... )

Si utiliza la palabra clave ANY, la condición de comparación de lista se evalúacomo true si la comparación de la expresión izquierda respecto de las expresionesde la derecha devuelve true para cualquiera de los valores. Si utiliza la palabraclave ALL, la condición de comparación de lista se evalúa como true si lacomparación de la expresión izquierda respecto de las expresiones de la derechadevuelve true para todos los valores.

Una comparación IN devuelve los mismos resultados que la comparación =ANY.Una comparación NOT IN devuelve los mismos resultados que la comparación <>=NOT IN.

Restricción: Los operadores ANY y ALL no se soportan en las subconsultas.

Ejemplo

La consulta siguiente devuelve las filas en las que severity -1 es igual al valorde Old_Severity o el número 5 .select * from mystatus where Severity - 1 IN (Old_Severity, 5)

Conceptos relacionados:“Operadores de comparación binarios” en la página 172“Operadores lógicos”

Operadores lógicosPuede utilizar operadores lógicos para formar expresiones en valores booleanosque se resuelvan como True o False.

El ObjectServer soporta los operadores siguientes:v NOTv ANDv OR

Puede combinar comparaciones utilizando operadores lógicos.

Las tablas siguientes verdaderas muestran los resultados de las operaciones lógicasen valores booleanos. En la tabla verdadera de ejemplo, un y B representancualquier valor o expresión.

Una expresión NO es true sólo si su entrada es False , como se muestra en latabla siguiente.

174 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 189: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 36. Tabla verdadera para operador NOT

A NOT A

FALSE TRUE

TRUE FALSE

Una expresión AND es verdadera si todas sus entradas son true , como semuestra en la tabla siguiente.

Tabla 37. Tabla verdadera para el operador AND

A B A AND B

FALSE FALSE FALSE

FALSE TRUE FALSE

TRUE FALSE FALSE

TRUE TRUE TRUE

Una expresión OR es true si cualquiera de sus entradas es true , como se muestraen la tabla siguiente.

Tabla 38. Tabla verdadera para operador OR

A B A OR B

FALSE FALSE FALSE

FALSE TRUE TRUE

TRUE FALSE TRUE

TRUE TRUE TRUE

Ejemplo

La consulta siguiente combina comparaciones utilizando operadores lógicos:SELECT * from alerts.status where Node = ’node1’ and Severity > 4 andSummary like ’alert on .*’

Ejemplo

La consulta siguiente devuelve todas las filas de tabla T1 donde el valor de col1no es igual a 0:select * from t1 where NOT(col1 = 0);

Operadores bit a bitUtilice los operadores bit a bit para formar expresiones que prueban o manipularoperandos en el nivel binario.

El ObjectServer soporta operadores bit a bit a los siguientes tipos de datos: entero,sin firma, booleano y integer64 64. Si intenta realizar operaciones bit a bit en tiposde datos no soportados, se genera un error “ Tipo no válido ”.

La tabla siguiente describe los operadores bit a bit soportados por el objectserver:

Capítulo 5. SQL de ObjectServer 175

Page 190: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 39. Operadores bit a bit

Operador Descripción Ejemplo

& AND a nivel de bit En el ejemplo siguiente, elresultado es 0:

SET ValueA = 1; SET ValueB= 0; SET result = ValueA& ValueB;

| OR a nivel de bit En el ejemplo siguiente, elresultado es 1:

SET ValueA = 1; SET ValueB= 0; SET result = ValueA| ValueB;

~ NOT a nivel de bit En el ejemplo siguiente, elresultado es -1:

SET ValueA = 0; SET result= ~ValueA;

Precedencia de los operadoresSi una expresión contiene múltiples operadores, el ObjectServer utiliza laprecedencia del operador para determinar el orden en el que se puede evaluar laexpresión.

Los operadores se evalúan a partir de los que tiene mayor prioridad respecto a losque tienen menos. Por ejemplo, el binario ( + ) tiene menor precedencia que un (*).En la expresión 3 + 5 * 2 , el resultado es 13 porque 5 se multiplica por 2 antesde que el resultado (10) se añada a 3.

Utilizar el paréntesis en una expresión para cambiar el orden en que los elementosse evalúan. El contenido del paréntesis siempre se evalúa antes que nada fuera delparéntesis. En la expresión (3 + 5) * 2, el resultado es 16 porque 3 se añade a 5antes de que el resultado (8) se multiplique por 2.

Si los operadores tienen igual precedencia, se evalúan en orden de izquierda aderecha. La tabla siguiente muestra el orden de prioridad de todos los operadoresde objectserver.

Tabla 40. Precedencia de los operadores

Prioridad máxima

Unitario + - ~

Matemático * /

Binario + - & |

Operadores de comparación (incluyendo comparaciones de lista)

NOT

AND

OR

Prioridad más baja

176 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 191: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

FuncionesUna función procesa un elemento de datos o elementos en un mandato SQL ydevuelve un valor.

La notación de sintaxis de una función es:function(operand,...)

Consejo: Los paréntesis son opcionales si no hay operandos en la función.

La siguiente tabla describe las funciones soportadas por el objectserver.

Tabla 41. Funciones de objectserver

Función Descripción Ejemplo

array_len(array) Devuelve el número de elementos deuna matriz. Esta función sólo puedeutilizarse en procedimientos odesencadenantes.

Si la matriz myarray tiene diez elementos,array_len (myarray) devuelve 10 .

ceil(real) Toma un argumento real y devuelveel valor integral más pequeño noinferior al argumento.

ceil(2.01) devuelve 3.000000

dayasnum(time) Obtiene un argumento de tiempo yextrae el día de la semana comoentero. Si no se especifica ningúnargumento, se supone que elargumento es la hora actual.

select dayasnum(LastOccurrence) from mytab;

Domingo es 0 , lunes es 1 , y asísucesivamente.

dayname(time) Obtiene una hora argumento ydevuelve el nombre del día. Si no seespecifica ningún argumento, sesupone que el argumento es la horaactual.

select dayname(LastOccurrence) from mytab;

La salida es lunes , martes , y asísucesivamente.

dayofmonth(time) Obtiene un argumento de hora yextrae el día del mes como un entero.Si no se especifica ningún argumento,se supone que el argumento es lahora actual.

select dayofmonth(LastOccurrence) from mytab;

dayofweek(time) Obtiene un argumento de tiempo yextrae el día de la semana comoentero. Si no se especifica ningúnargumento, se supone que elargumento es la hora actual.

select dayofweek(LastOccurrence) from mytab;

A diferencia de dayasnum , el domingo es 1 ,lunes es 2 , y así sucesivamente.

getdate() No acepta argumentos y devuelve lafecha y hora actuales como un valor(UTC) (el número de segundos desdeel 1 de enero de 1970).

Para devolver todas las filas de la tablaalerts.status que tienen más de diez minutos

de antigüedad:

select Summary, Severity from alerts.statuswhere LastOccurrence < getdate - 600;

getenv(string) Devuelve el valor de la variable deentorno especificada como una serie.

getenv (’nchome’) devuelve un nombre dedirectorio, por ejemplo, /opt/netcool .

get_prop_value(string) Devuelve el valor de la propiedadObjectServer especificada como serie.

get_prop_value (’nombre’) devuelve el nombrede objectserver, por ejemplo, ncoms .

getservername() No acepta argumentos y devuelve elnombre de objectserver como unaserie.

select LastOccurrence from alerts.statuswhere ServerName = getservername();

Capítulo 5. SQL de ObjectServer 177

Page 192: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 41. Funciones de objectserver (continuación)

Función Descripción Ejemplo

hourofday(time) Obtiene un argumento de tiempo yextrae la hora del día como entero. Sino se especifica ningún argumento,se supone que el argumento es lahora actual.

select hourofday(LastOccurrence) from mytab;

instance_of(class,parent_class)

Devuelve true si clase es unasubclase de parent_class o si soniguales, utilizando la jerarquíadefinida en la tablamaster.class_membership. De locontrario, devuelve FALSE.

Las variables class y parent_classpueden tanto ser serie como entero.

select Node, Summary, AlertGroup,Server from alerts.statuswhere instance_of(Class, ’DB2’) = true;

is_env_set(string) Devuelve 1 si la variable de entornoespecificada se establece; 0 , en casocontrario.

Cuando se establece la variable de entornonchome , is_env_set (’NCHOME’) devuelve 1 .

log_2(real) Toma un argumento real positivo ydevuelve el logaritmo en base 2.

log_2(4.0) devuelve 2.000000

lower(string) Convierte un argumento de serie decaracteres en caracteres en minúscula.

lower(’LIMA’) devuelve lima

ltrim(string) Elimina el espacio en blanco de laizquierda de una serie.

ltrim(’ tree’) devuelve tree.

minuteofhour(time) Obtiene un argumento de hora yextrae el minuto de la hora como unentero. Si no se especifica ningúnargumento, se supone que elargumento es la hora actual.

select minuteofhour(LastOccurrence) frommytab;

mod(int1,int2) Devuelve el resto del entero de int1dividido por int2 .

mod(12,5) returns 2

monthasnum(time) Obtiene un argumento de tiempo yextrae el mes del año como entero. Sino se especifica ningún argumento,se supone que el argumento es lahora actual.

select monthasnum(LastOccurrence) from mytab;

Enero es 0 , febrero es 1 , y así sucesivamente.

monthname(time) Obtiene una hora argumento ydevuelve el nombre del mes. Si no seespecifica ningún argumento, sesupone que el argumento es la horaactual.

select monthname(LastOccurrence) from mytab;

La salida es enero , febrero , y asísucesivamente.

monthofyear(time) Obtiene un argumento de tiempo yextrae el mes del año como entero. Sino se especifica ningún argumento,se supone que el argumento es lahora actual.

select monthofyear(LastOccurrence) frommytab;

A diferencia de monthasnum , enero es 1 ,febrero es 2 , y así sucesivamente.

nvp_exists(string_nameval_pairs,string_name)

Verifica que existe un parnombre-valor.

Se utiliza con atributos ampliados.

nvp_exists(ExtendedAttr, ’Region’)

Devuelve true si existe la región en los atributosampliados como el nombre de un parnombre-valor. Si el nombre no existe, la funcióndevolverá False .

178 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 193: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 41. Funciones de objectserver (continuación)

Función Descripción Ejemplo

stringnvp_get(stringname_value_pairs,string key)

Recupera el valor de name en un parnombre-valor.

Si existe el nombre en el atributo, lafunción devuelve el valor.

Si name_value_pairs no es válido, laserie vacía se devuelve y se registraun error.

Si key no está presente, se devolverála serie vacía ('').

Si hay múltiples entradas para elnombre, se devuelve la primera.

nvp_get(ExtendedAttr, ’Region’)

Devuelve el atributo Región.

stringnvp_set(stringname_value_pairs,string key,any value)

Sustituye o añade un par denombre-valor a una serie de paresnombre-valor. Devuelve una nuevaserie de pares nombre-valor con elnuevo nombre-valor añadido osustituido.

Añade o sustituye las claves de unaserie de par de nombre-valor ydevuelve la serie de paresnombre-valor nueva. Una fecha sealmacena en segundos desde 1970 ;es decir, el formato Unix.

Si name_value_pairs no es una serieválida (es decir, no es una serie vacíao no contiene entradas que no seajustan al formato correcto), entoncesse devuelve $key = "value $" y unerror registrado.

Si hay múltiples entradas para laclave, sólo la primera se sustituye.

ExtendedAttr = nvp_set(ExtendedAttr,’Region’, ’EMEA’);

Establece el atributo Región en los atributosampliados.

power(real1, real2) Toma dos argumentos reales ydevuelve real1 elevado a la potenciade real2 .

power(2.0, 3.0) devuelve 8.000000

rtrim(string) Elimina el espacio en blanco de laderecha de una serie.

rtrim(’tree ’) devuelve tree.

secondofminute(time) Obtiene un argumento de hora yextrae el segundo del minuto comoun entero. Si no se especifica ningúnargumento, se supone que elargumento es la hora actual.

select secondofminute(LastOccurrence) frommytab;

Capítulo 5. SQL de ObjectServer 179

Page 194: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 41. Funciones de objectserver (continuación)

Función Descripción Ejemplo

split_multibyte(string_message,int_chunk_no,int_chunk_len)

Devuelve la serie de varios bytescompleta strout de como máximoint_chunk_len bytes, comenzandodesde el mensaje (int_chunk_no -1)*int_chunk_len of string de byte.

Si la división provoca que un carácterde varios bytes sea incompleto en laserie de destino, la función devuelvela serie completar más grande quepuede. La siguiente llamada a lafunción (siempre que int_chunk_lensea el mismo que la llamada anterior)se iniciará desde el carácter que no seha podido extraer completamente.

La función dividirá una serie devarios bytes en series más pequeñasque contienen sólo caracteres devarios bytes completos. Esto tienecomo finalidad principal almacenarseries grandes en varios campos debase de datos más pequeños.

El int_chunk_len en todas las llamadaspara la función split en la mismaserie deben ser iguales.

Consulte el ejemplo que aparece en esta tabla.

substr(string_message,int_startpos, int_len)

Extrae una subserie, comenzando enla posición especificada en elsegundo parámetro, para el númerode caracteres especificados por eltercer parámetro. La serie se indexadesde 1.

substr(’abcdefg’, 2, 3) devuelve bcd, desde elsegundo carácter, devolviendo el siguiente 3.

to_char(argument [,’conversion_spec’])

Convierte el argumento en una serie.El argumento puede ser cualquiertipo de datos excepto una serie.

La coma (,) es necesaria sólo si se haespecificado una serie de conversión.

Si el argumento es un tipo de tiempo,puede especificar un segundoargumento que conste de unaespecificación de conversión paraaplicar formato a la salida. Esteformato se define en referencia a lasección de formato de fecha/hora. Elformato predeterminado es EEE mmmdd HH:mm:SS aaaa o en formatoPOSIX %a %b %d %T %Y. Tenga encuenta que el formato POSIX con %está en desuso.

to_char(73) devuelve 73

to_char(FirstOccurrence) devuelve una seriecomo Thu Dec 11 16:02:05 2003

to_char(LastOccurrence, ’%Y’) devuelve unaserie como 2010

180 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 195: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 41. Funciones de objectserver (continuación)

Función Descripción Ejemplo

to_int(’argument’) Convierte el argumento en un entero.El argumento puede ser cualquiertipo de datos excepto entero.

Esta función quita los espacios enblanco iniciales del argumento, ydespués explora el resto de la serie.La exploración se detiene cuandoencuentra un carácter que no sepuede convertir a un carácterdecimal, o cuando alcanza el final dela serie, lo que se produzca antes.Cuando la exploración se detiene, lafunción convierte los caracteres a suvalor decimal, o devuelve 0 si no seha podido encontrar ninguno de loscaracteres que podría convertirse endecimal.

to_int('73') devuelve 73

to_int('3F') devuelve 3

to_int('UK') devuelve 0

to_int('F3') devuelve 0

to_real(’argument’) Convierte el argumento en unnúmero real de 64 bits. El argumentopuede ser cualquier tipo de datosexcepto real.

Esta función quita los espacios enblanco iniciales del argumento, ydespués explora el resto de la serie.La exploración se detiene cuandoencuentra un carácter que no sepuede convertir a un carácterdecimal, o cuando alcanza el final dela serie, lo que se produzca antes.Cuando la exploración se detiene, lafunción convierte los caracteres a suvalor decimal, o devuelve 0 si no seha podido encontrar ninguno de loscaracteres que podría convertirse endecimal.

to_real(’7.3’) devuelve 7.300000

to_real(’3F’) devuelve 3.000000

to_real(’UK’) devuelve 0

to_real('F3') devuelve 0

to_time(argument[,’conversion_spec’])

to_date(argument[,’conversion_spec’])

Convierte el argumento en un tipo detiempo. El argumento puede sercualquier tipo de datos excepto untipo de tiempo.

La coma (,) es necesaria sólo si se haespecificado una serie de conversión.

Si el argumento es un tipo de serie,puede especificar un segundoargumento consta de unaespecificación de conversión paraaplicar formato a la salida. El formatopredeterminado es EEE mmm ddHH:mm:SS aaaa o en formato POSIX%a %b %d %T %Y. Tenga en cuenta

que el formato POSIX con % está endesuso.

update mytab set my_utc_col = to_time(’ThuDec 11 16:00:00 2003’)

Capítulo 5. SQL de ObjectServer 181

Page 196: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 41. Funciones de objectserver (continuación)

Función Descripción Ejemplo

to_unsigned(argument) Convierte el argumento en unnúmero sin firmar de 64 bits. Elargumento puede ser cualquier tipode datos excepto entero sin firmar de64 bits.

Esta función quita los espacios enblanco iniciales del argumento, ydespués explora el resto de la serie.La exploración se detiene cuandoencuentra un carácter que no sepuede convertir a un carácterdecimal, o cuando alcanza el final dela serie, lo que se produzca antes.Cuando la exploración se detiene, lafunción convierte los caracteres a suvalor decimal, o devuelve 0 si no seha podido encontrar ninguno de loscaracteres que podría convertirse endecimal.

to_unsigned(’73’) devuelve 73

to_unsigned(73) devuelve 73

to_unsigned(’UK’) devuelve 0

to_unsigned('F3') devuelve 0

upper(string) Convierte un argumento de serie decaracteres en caracteres enmayúscula.

upper(’Vancouver’) devuelve VANCOUVER

year(time) Obtiene un argumento de tiempo yextrae el año como entero. Si no seespecifica ningún argumento, sesupone que el argumento es la horaactual.

select year(LastOccurrence) from mytab;

Ejemplo: Uso de split_multi-bytepara cada fila res_filter en catalog.restrictions donde

res_filter.RestrictionName = rf_users.RestrictionNamebegin

-- Populate master.profile with the new row.-- Cut up the filter text into 255 byte chunksupdate master.profiles set HasRestriction = 1,Restrict1 = split_multibyte( res_filter.ConditionText, 1, 255),Restrict2 = split_multibyte( res_filter.ConditionText, 2, 255),Restrict3 = split_multibyte( res_filter.ConditionText, 3, 255),Restrict4 = split_multibyte( res_filter.ConditionText, 4, 255)Where UID = rf_users.GranteeID;

end;

En este ejemplo:

Restrict1 se asigna a como mucho 255 de res.filter.ConditionText del byte 1

Restrict2 se asigna a como mucho 255 bytes de res.filter.ConditionText del byte(2-1) * 255

Restrict1 se asigna a como mucho 255 bytes de res.filter.ConditionText del byte(3-1) * 255

Restrict1 se asigna a como mucho 255 bytes de res.filter.ConditionText del byte(4-1) * 255

182 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 197: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Referencia relacionada:“Tabla alerts.status” en la página 349“Tabla master.class_membership” en la página 366

ExpresionesUna expresión es una combinación sintáctica de valores y operaciones combinadaspara calcular valores nuevos. Las expresiones pueden ser simples o complejas.

Expresiones simples

Una expresión simple es un valor constante o variable, nombre de columna oreferencia de variable. Puede ser una de las entidades siguientes:v Una serie entrecomillada (’Node XB1’)v Un número (9)v Un nombre de columna (Severity)v Una propiedad de ObjectServer (ServerName)v Una variable de entorno (NCHOME)v Una variable que alberga un valor temporal en un procedimiento o un

desencadenante

Expresiones complejas

Una expresión compleja se crea a partir de expresiones simples combinadasmediante operadores ( severity -1 ) y funciones SQL ( (servername)get_prop_value ). Puede combinar expresiones simples o complejas con otrasexpresiones simples o complejas para crear expresiones cada vez más complejas,como por ejemplo -(gravedad + Tally) .

Nota: Las expresiones complejas están sujetas a restricciones de tipo de datos. Porejemplo, la expresión 5 * ’XB1 node’ no es válida porque no puede multiplicarun entero y una cadena.Referencia relacionada:“Especificación de tipos de datos para columnas” en la página 155

CondicionesUna condición es una combinación de expresiones y operadores que evalúan entrue o False.

Puede utilizar condiciones para buscar, filtrar y probar filas en:v Filtros de restricciónv La cláusula WHERE de los mandatos SELECT, UPDATE y DELETEv La cláusula HAVING del mandato SELECT GROUP BYv La cláusula WHEN en desencadenantesv Las sentencias IF THEN ELSE, CASE WHEN y FOR EACH ROW de

procedimientos y desencadenantes

Las condiciones pueden contener operadores de comparación ( Severity <3 ),operadores lógicos ( no (Is_Enabled) ) y operadores de comparación de lista( Severity IN ANY (0,5)).

Las condiciones válidos se muestran en la lista siguiente:

Capítulo 5. SQL de ObjectServer 183

Page 198: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

TRUE | FALSE( condition )NOT conditioncondition AND conditioncondition OR conditionexpression operator expressionexpression operator ANY ( expression, ... )expression operator ALL ( expression, ... )expression[ NOT ] IN( subquery )expression operator ANY ( subquery )expression [ NOT ] IN ( expression, ... )expression [ NOT ] LIKE regexp_patternexpression [ NOT ] LIKE ANY ( regexp_pattern, ... )expression [ NOT ] LIKE ALL ( regexp_pattern, ... )

Nota: Los operadores ANY y ALL no se soportan en las subconsultas.

Puede combinar condiciones en condiciones cada vez más complejas.

Ejemplo(Severity > 4) AND (Node = ’node%’)

El ejemplo siguiente muestra el uso de una condición en una subconsulta:select * from alerts.status where Serial in (select Serial from alerts.journal);

Conceptos relacionados:“Operadores de comparación binarios” en la página 172“Operadores de comparación de lista” en la página 174“Operadores lógicos” en la página 174“Expresiones” en la página 183Referencia relacionada:“Creación de desencadenantes de base de datos (mandato CREATE TRIGGER)” enla página 222

Consulta y manipulación de datos utilizando el SQL de objectserverPuede utilizar mandatos de lenguaje de manipulación de datos (DML) paraconsultar y modificar datos en las tablas, vistas y archivos existentes.

SQL de objectserver proporciona los siguientes mandatos para manipular datos.

Tabla 42. Objetos de objectserver y mandatos DML asociados

Objeto de objectserver Mandatos de DML permitidos

TABLA SELECT

INSERT

UPDATE

DELETE

DESCRIBE

SVC

184 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 199: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 42. Objetos de objectserver y mandatos DML asociados (continuación)

Objeto de objectserver Mandatos de DML permitidos

VIEW SELECT

DESCRIBE

SVC

ARCHIVO WRITE INTO

Consejo: Los filtros de restricción se aplican automáticamente en los mandatosSELECT, INSERT, UPDATE y DELETE.

Inserción de una fila nueva de datos en una tabla (mandatoINSERT)

Utilice el mandato INSERT para insertar una fila de datos nueva en una tablaexistente.

SintaxisINSERT INTO [nombre_base_datos.]nombre_tabla[ (nombre_columna,...) ] VALUES (expresión,...);

Debe especificar un valor para cada columna de clave primaria de la tabla.

Si va a insertar valores para cada columna de la fila, especifique la palabra claveVALUES seguida de una lista separada por comas de valores de columna entreparéntesis. Especifique los valores en orden secuencial de columnas.

Si no va a insertar los valores de cada columna de la fila, especifique una lista delas columnas separadas por comas que se van a insertar entre paréntesis, seguidapor la palabra clave VALUES y una lista de valores de columna separados porcomas entre paréntesis. Especifique los valores en la misma secuencia que lascolumnas especificadas. Las demás columnas se llenan con los valorespredeterminados.

Consejo: No puede asignar valores a columnas mantenidas por el sistema comoSerial.

Ejemplo

Para insertar una alerta en la tabla mydb.mystatus que especifique los valores en lascolumnas indicadas, especifique:insert into mydb.mystatus (Identifier, Severity, LastOccurrence)values (’MasterMachineStats15’, 5, getdate);

Capítulo 5. SQL de ObjectServer 185

Page 200: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Actualización de datos en columnas de tabla (mandatoUPDATE)

Utilice el mandato UPDATE para actualizar una o más columnas en una filaexistente de datos de una tabla.

SintaxisUPDATE [database_name.]object_name[ VIA (value_of_primary_key_column,...) ]SET column_name = expression,...[ WHERE condition ];

No puede actualizar columnas mantenida por el sistema como, por ejemplo, serie,o columnas donde la propiedad NOMODIFY se establece en true . Cuando lapropiedad NOMODIFY se establece en true , el valor de una columna no sepuede modificar una vez que se haya realizado el mandato INSERT.

Si va a actualizar una sola fila y conoce el valor de la clave primaria de la fila quedesea actualizar, especifique el valor mediante la cláusula opcional VIA paramejorar el rendimiento del mandato UPDATE. Si hay más de una columna declave primaria, debe especificar los valores en orden, separados por comas y entreparéntesis. Las columnas que tienen valores de serie deben incluirse entre comillas.

Si incluye una cláusula WHERE, sólo se actualizarán las filas que cumplen loscriterios especificados en la condición . Si no se especifica ninguna condición en lacláusula WHERE, se actualizan todas las filas.

Ejemplos

Para establecer Severity en 0 para las filas de la tabla alerts.status donde Nodo esigual a Fred, especifique:

update alerts.status set Severity = 0 where Node = 'Fred';

Puede utilizar los valores de columna en cálculos. En el ejemplo siguiente,gravedad se establece en 0 cuando una alerta se ha reconocido:

update status set Severity=(1-Acknowledged)*Severity;

Para buscar filas donde Severity es igual a 1 y el Nodo es igual a Fred y, acontinuación, establecer Severity en 0 y cambiar el campo Resumen por la serieDiscarded , escriba:

update alerts.status set Severity = 0, Summary = 'Discarded'where Severity = 1 and Node = 'Fred';

Conceptos relacionados:“Condiciones” en la página 183Referencia relacionada:“Inserción de una fila nueva de datos en una tabla (mandato INSERT)” en lapágina 185

186 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 201: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Supresión de filas de datos de una tabla (mandato DELETE)Utilice el mandato DELETE para suprimir una o más filas de datos de una tablaexistente.

SintaxisDELETE FROM [database_name.]object_name[ VIA (’value_of_primary_key_column’,...) ][ WHERE condition ];

Si va a suprimir una sola fila y conoce el valor de la clave primaria de la fila quedesea eliminar, especifique el valor mediante la cláusula opcional VIA para mejorarel rendimiento del mandato DELETE. Si hay más de una columna de claveprimaria, debe especificar los valores en orden, separados por comas y entreparéntesis. Si la columna tiene un valor de serie, debe indicarse entre comillas.

Si incluye una cláusula WHERE, sólo se suprimirán las filas que cumplen loscriterios especificados en la condición . Si se especifica la cláusula WHERE, sesuprimen todas las filas.

Ejemplo

Para eliminar todas las filas de la tabla alerts.status donde el valor del campoNodo es igual a Fred entre:

delete from alerts.status where Node = 'Fred' ;

Conceptos relacionados:“Condiciones” en la página 183

Recuperación de datos de una tabla o Vista (mandatoSELECT)

Utilice el mandato SELECT para recuperar una o más filas, o filas parciales, de losdatos de una tabla o vista existente y para realizar funciones de agrupación en losdatos.

Puede utilizar el mandato SELECT para realizar las acciones siguientes:v Recuperar datos que coinciden con un criterio especificado (SELECT escalar)v Devolver un único valor que se basa en un cálculo en un número de filas

(SELECT de agregación)v Agrupar todas las filas que contienen valores idénticos en una o más columnas y

realizar funciones de agregado en las columnas (Group by SELECT)

SELECT básico (escalar)El mandato SELECT escalar recupera columnas y filas de una tabla en función delcriterio especificado.

SintaxisSELECT [ TOP num_rows ] { * | scalar_column_expr [ AS alias_name ],... }FROM [ database_name.]object_name[ WHERE condition ][ ORDER BY column_name_or_alias [ ASC | DESC ] ,... ];

Utilice la palabra clave opcional TOP para mostrar sólo el primer númeronum_rows de filas de los resultados de la consulta que coincidan con los criterios

Capítulo 5. SQL de ObjectServer 187

Page 202: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

de selección. Si incluye la palabra clave TOP, también debe incluir una cláusulaORDER BY para ordenar (o clasificar) las filas seleccionadas.

Utilice un asterisco (*) para recuperar todas las columnas visibles en la tabla. De locontrario, puede especificar una lista separada por comas de las columnas quedesea recuperar o crear columnas virtuales utilizando:v Expresiones simples (por ejemplo, Gravedad )v Expresiones complejas que contienen operadores de matemáticas de serie (por

ejemplo, gravedad + Tally )v Funciones (por ejemplo, getdate -60 )

Siguiendo una columna o columna virtual, puede incluir la palabra clave ASseguida de un alias. Este alias es una cabecera de reemplazo para el nombre decolumna o columna virtual y se visualiza en los resultados de la consulta. Siespecifica un alias de columna, utilice ese alias en todas las referencias que sehacen en la cláusula ORDER BY. La longitud máxima de un nombre de columna oalias es de 40 caracteres.

Si incluye una cláusula WHERE, sólo se devolverán las filas que cumplen loscriterios especificados en la condición .

Utilice la cláusula ORDER BY opcional para visualizar los resultados en ordensecuencial, en función de los valores de uno o más nombres de columna, en orden(DESC) descendente o ascendente (ASC). Si la cláusula ORDER BY no se especifica,no se utiliza la clasificación. Si se ha especificado un alias de columna utilizando lapalabra clave AS, utilice ese alias en todas las referencias que se hacen en la listade columna ORDER BY en lugar del nombre de columna correspondiente.

Ejemplos

El ejemplo siguiente selecciona todas las filas de la tabla alerts.status donde lagravedad es igual a 4 :select * from alerts.status where Severity = 4;

El ejemplo siguiente selecciona todas las filas de la tabla alerts.status donde elnodo contiene la serie terminal seguida de cualquier otro carácter:select * from alerts.status where Node like ’terminal.*’;

En el ejemplo anterior, se utiliza la sintaxis de expresión regular en la comparaciónlike. Para obtener información sobre la sintaxis de expresión regular utilizada en lacomparación like, consulte el apéndice sobre expresiones regulares en el IBM TivoliNetcool/OMNIbus User's Guide.

En el ejemplo siguiente, la columna virtual gravedad + Tally se llena sumandolos valores de las dos columnas entre sí:select Severity, Severity + Tally from alerts.status;

El ejemplo siguiente es igual que el ejemplo anterior, excepto que la columnavirtual gravedad + Tally se renombra Real_Severity .select Severity, Severity + Tally as Real_Severity from alerts.status;

188 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 203: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Conceptos relacionados:“Condiciones” en la página 183“Expresiones” en la página 183“Funciones” en la página 177“Operadores matemáticos y de serie” en la página 171

Agregado SELECTUn mandato SELECT de agregado realiza un cálculo en un número de filas ydevuelve un solo valor.

SintaxisSELECT aggr_expression [ AS alias_name ],...FROM [database_name.]table_name[ WHERE condition ];

Las siguientes funciones de agregación (representadas por aggr_expression en lasintaxis) están soportadas.

Tabla 43. Funciones de agregación

Función Resultado devuelto

max(scalar_column_expr) Esto devuelve el valor numérico máximopara la expresión de la columna de las filasque satisfacen la condición SELECT.

min(scalar_column_expr) Esto devuelve el valor numérico mínimopara la expresión de la columna de las filasque satisfacen la condición SELECT.

avg(scalar_column_expr) Esto devuelve el valor numérico promediopara la expresión de la columna de las filasque satisfacen la condición SELECT.

sum(scalar_column_expr) Esto devuelve la suma (total) de los valoresnuméricos de la expresión de columna delas filas que satisfacen la condición SELECT.

count(scalar_column_expr)

count(*)

Esto devuelve el número total de filas quecumplen la condición SELECT.

dist(scalar_column_expr, value) Esto devuelve el número total de las filaspara las que la columna es igual al valorespecificado. El resultado de:

dist(scalar_column_expr, value)

es equivalente a:

SELECT count(scalar_column_expr) FROMtable_name WHERE scalar_column_expr =value;

Siguiendo un expresión de agregación, puede incluir la palabra clave AS seguidade un alias. Este alias es una cabecera de reemplazo para la expresión agregada yse visualiza en los resultados de la consulta.

La longitud máxima de un nombre de columna o alias es de 40 caracteres.

Si incluye una cláusula WHERE, sólo se devolverán las filas que cumplen loscriterios especificados en la condición .

Capítulo 5. SQL de ObjectServer 189

Page 204: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Ejemplos

El ejemplo siguiente devuelve el valor de gravedad más alto, el valor de gravedadpromedio y el número de filas para las que la gravedad es igual a 4 :select MAX(Severity), AVG(Severity), DIST(Severity, 4) from alerts.status;

El ejemplo siguiente devuelve el número de filas para las que el valor de nodo esmyhost :

select DIST(Node, ’myhost’) from alerts.status;

Los siguientes ejemplos realizan comparaciones utilizando la función getdate ,que devuelve la hora actual:select MAX(getdate-LastOccurrence) from alerts.status;

select AVG((getdate-LastOccurrence)/60) as ResponseTime from alerts.statuswhere OwnerUID=34;

Conceptos relacionados:“Condiciones” en la página 183“Funciones” en la página 177

Agrupar por SELECTPuede utilizar un mandato SELECT con una cláusula GROUP BY para agrupartodas las filas que tengan valores idénticos en una columna especificada o unacombinación de columnas en una única fila. También puede encontrar el valoragregado para cada grupo de valores de columna.

SintaxisSELECT [ TOP num_rows ] scalar_column_expr_and_aggr_column_expr [ AS alias_name ] ,...FROM [database_name.]table_name[ WHERE condition ]GROUP BY scalar_column_expr_or_alias ,... [ HAVING condition ][ ORDER BY aggr_expr_or_alias [ { ASC | DESC } ] ,... ];

La sintaxis GROUP BY combina las expresines de columna escalar y lasexpresiones de agregación. Un asterisco (*) sólo se permite en la función deagregación COUNT(*) .

Siguiendo un expresión de agregación o escalar, puede incluir la palabra clave ASseguida de un alias. Este alias es una cabecera de reemplazo para la expresión decolumna escalar o de agregación y se visualiza en los resultados de la consulta.Debe especificar un alias para cada columna virtual. Esto permite hacer referenciaal mismo en la cláusula GROUP BY. Si no especifica un alias para una expresiónagregada, no puede hacer referencia al mismo en la expresión agregada en lacláusula ORDER BY.

La longitud máxima de un nombre de columna o alias es de 40 caracteres.

La cláusula GROUP BY reúne todas las filas que contienen datos en las columnasespecificadas y permite que se lleven a cabo las funciones de agregación en estascolumnas en función de los valores de columna. Si se ha especificado un alias decolumna utilizando la palabra clave AS, utilice ese alias en la columna GROUP BYen lugar del nombre o expresión de columna correspondiente.

Nota: La lista de columnas de la cláusula GROUP BY debe coincidir con la lista decolumnas seleccionadas y no puede contener ninguna de las expresiones deagregados.

190 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 205: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

La condition que sigue a la palabra clave HAVING es una expresión o expresionesque devuelve un subconjunto de filas de la tabla. A diferencia de otras condicionesdel SQL de objectserver, las de la cláusula HAVING pueden incluir funciones detotales.

Utilice la cláusula ORDER BY opcional para visualizar los resultados en ordensecuencial, en función de los valores de uno o más expresiones de agregación, enorden (DESC) descendente o ascendente (ASC). Si la cláusula ORDER BY no seespecifica, no se utiliza la clasificación. Debe utilizar el alias para la expresiónagregada en la cláusula ORDER BY en vez de la correspondiente expresiónagregada.

Ejemplos

El ejemplo siguiente devuelve el valor de gravedad más alto encontrado para cadanodo:select Node, max(Severity) from alerts.status group by Node;

El ejemplo siguiente devuelve el valor de gravedad más alto encontrado paratodos los nodos, salvo el nodo denominado Sun1 , ordenados de menor a mayorgravedad máxima:select Node, max(Severity) as MAX_Sev from alerts.statuswhere Node <> ’Sun1’ group by Node order by MAX_Sev;

El alias de columna para máx (gravedad) , que es MAX_Sev , se visualiza como lacabecera en los resultados de la consulta.Conceptos relacionados:“Condiciones” en la página 183Referencia relacionada:“SELECT básico (escalar)” en la página 187“Agregado SELECT” en la página 189

Información de registro en archivos ObjectServer (mandatoWRITE INTO)

Utilice el mandato WRITE INTO para grabar información de registro en archivosObjectserver. Un archivo objectserver es un archivo lógico, que tiene elcorrespondiente archivo o conjunto de archivos en el sistema de archivos físicos.

SintaxisWRITE INTO file_name [ VALUES ] (expression, ...);

Después de cada mensaje hay un retorno de carro.

Ejemplo

El siguiente mandato añade un mensaje en el archivo físico asociado con elobjectserver arch1 cada vez que un usuario se conecta a una base de datos.WRITE INTO file1 VALUES(’User’, %user.user_name, ’connected to the system at’, getdate );

La variable de usuario %user.user_name utilizada en este ejemplo sólo estádisponible en los procedimientos y desencadenantes.

Capítulo 5. SQL de ObjectServer 191

Page 206: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Conceptos relacionados:“Archivos” en la página 167Referencia relacionada:“Variables de usuario implícitas en procedimientos y desencadenantes” en lapágina 215

Visualización de detalles de columnas de una tabla o vista(mandato DESCRIBE)

Utilice el mandato DESCRIBE para visualizar información sobre las columnas de latabla o vista especificada.

SintaxisDESCRIBE [database_name.]object_name;

La salida de este mandato incluye el nombre de la columna, el tipo de datos(devuelto como ID de objectserver), la longitud de la columna y si la columnaforma parte de una clave primaria ( 1 si es, 0 si no lo es).

Las columnas ocultas no se muestran porque son mantenidos por el sistema, yunusuario típico no necesita ver ni actualizar estas columnas.

Ejemplo

Utilice el siguiente mandato para mostrar información acerca de las columnas de latabla catalog.tables:describe catalog.tables;

Ejemplo de salida del mandato anterior:ColumnName Type Size Key-------------------- --------- --------- ------------TableName 2 40 1DatabaseName 2 40 1Status 0 4 0NumDependents 12 4 0TableID 0 4 0TableKind 0 4 0StorageKind 0 4 0ServerID 0 4 0

Referencia relacionada:“Especificación de tipos de datos para columnas” en la página 155

Adición o actualización de datos de estado de servicio(mandato SVC)

Utilice el mandato SVC para añadir o actualizar el estado de alerta de estado deun servicio en la tabla service.status de IBM Tivoli Composite Application Managerfor Internet Service Monitoring.

SintaxisSVC UPDATE ’name’ integer;

En este mandato, name es el nombre del elemento de perfil que genera la alerta yinteger es su estado actual. Los valores válidos para el estado de servicio semuestran en la tabla siguiente. Si entra cualquier otro valor, el nivel de servicio seestablece en 3 (desconocido).

192 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 207: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 44. Niveles de estado de servicio

Entero Nivel de estado de servicio

0 Correcto.

1 Marginal.

2 Erróneo.

3 Nivel de servicio desconocido.

Ejemplosvc update ’newservice’ 2;

Envío de notificaciones de IDUC a clientes de IDUC (mandatoIDUC FLUSH)

Utilice el mandato IDUC FLUSH para enviar notificaciones de IDUC a los clientesde IDUC.

SintaxisIDUC FLUSH destino

En este mandato:v destino = spid

v spid = expresión_entero (ID de conexión del cliente literal)

Ejemplocreate or replace trigger exmple_triggergroup default_triggersenabled truepriority 2on signal iduc_data_fetchbeginfor each row conn in iduc_system.iduc_statsbeginIDUC FLUSH conn.connectionid;end;end;go

Modificación de los valores predeterminados y actuales delObjectServer (mandato ALTER SYSTEM)

Utilice el mandato ALTER SYSTEM para cambiar los valores predeterminados yactuales del ObjectServer estableciendo las propiedades, descartar una o másconexiones de usuario o hacer una copia de seguridad del ObjectServer.

SintaxisALTER SYSTEM{SHUTDOWN |SET ’nombre_propiedad’ = valor [ ... ] |DROP CONNECTION ID_conexión [, ... ] |BACKUP ’nombre_directorio’};

Puede detener el ObjectServer con el mandato ALTER SYSTEM SHUTDOWN.

Capítulo 5. SQL de ObjectServer 193

Page 208: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Puede establecer las propiedades del ObjectServer con la palabra clave SET,seguida por el nombre de la propiedad especificado entre comillas y un valor parala propiedad. Puede cambiar más de una propiedad en un mandato individual.Además de actualizar la tabla catalog.properties, las propiedades cambiados seescriben en el archivo de propiedades.

Puede descargar conexiones de usuario con el mandato ALTER SYSTEM DROPCONNECTION. Especifique uno o más identificadores de conexión en una listaseparada por comas. Puede encontrar los identificadores para todas las conexionesactuales consultando la tabla del sistema catalog.connections. La columnaConnectionID contiene el identificador de conexión.

Puede hacer una copia de seguridad del ObjectServer con el mandato ALTERSYSTEM BACKUP. Especifique la vía de acceso a un directorio existente dondedesee almacenar las copias de seguridad de los archivos. Este valor no debeespecificarse entre comillas.

Nota: El directorio no puede ser el directorio en el que se almacenan los archivosde datos del ObjectServer, que es $NCHOME/omnibus/db/nombre_servidor de manerapredeterminada.

La copia de seguridad genera copias de los archivos .tab del ObjectServer en eldirectorio especificado.

Consejo: Los desencadenantes del grupo de desencadenantesautomatic_backup_system, definido en el archivo automation.sql, utilizan elmandato ALTER SYSTEM BACKUP para proporcionar un recurso de copia deseguridad automática. El desencadenante automatic_backup está inhabilitado demanera predeterminada; debe habilitarlo para crear copias de seguridad de formaautomática. También puede personalizar este desencadenante para que se adapte alentorno. Por ejemplo, puede cambiar el número de copias de seguridad guardadas.

Para recuperar el ObjectServer en el punto en el tiempo en el que se ha emitido elmandato BACKUP, copie los archivos .tab del ObjectServer en el directorio dearchivos de datos de ObjectServer. Los archivos de copia de seguridad sólo sepueden utilizar en un sistema que tenga el mismo sistema operativo que el sistemaen el que se han creado.

Ejemplosalter system set ’Auto.StatsInterval’ = 15 set ’AlertSecurityModel’ = 1;

alter system shutdown;

Conceptos relacionados:“Creación de archivos de punto de comprobación” en la página 26Referencia relacionada:“Propiedades y opciones de línea de mandatos de ObjectServer” en la página 3

194 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 209: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Establecimiento de la base de datos predeterminada (mandatos SETDATABASE y USE DATABASE)

Utilice el mandato SET DATABASE o USE DATABASE para establecer una base dedatos como predeterminada para una sesión nco_sql de interfaz interactiva SQL.Estos dos mandatos realizan la misma función.

Restricción: No puede utilizar este mandato en desencadenantes o procedimientos.

Después de establecer la base de datos por omisión con el mandato SETDATABASE o USE DATABASE, puede especificar un nombre de objeto sinprecederlo con el nombre de la base de datos. El valor de base de datospredeterminado duran según la longitud de la sesión en la que se establece.

Sintaxis{ SET | USE } DATABASE database_name;

Nota: La base de datos predeterminada no se aplica en los mandatos CREATEVIEW ni DROP VIEW. Si no se especifica el nombre de la base de datos en estosmandatos, la vista siempre se crea o elimina en la base de datos de alertas.

Ejemplosuse database newthings;

set database mydb;

Verificación de la sintaxis de SQL (mandato CHECK STATEMENT)El mandato CHECK STATEMENT analiza y comprueba la sintaxis de los mandatosde SQL entre comillas y devuelve un mensaje de éxito o una descripción de loserrores.

SintaxisCHECK STATEMENT ’command; command; ...’;

Puesto que el mandato CHECK STATEMENT no ejecuta los mandatos de SQL, nose detectan errores de tiempo de ejecución. Además, es posible que se visualizanalgunos errores falsos si hay una serie de mandatos que se basa en los mandatosanteriores.

Creación, modificación y supresión de usuarios, grupos y rolesPuede utilizar mandatos SQL para organizar colecciones de usuarios en grupos y acontinuación asignar roles a cada grupo para controlar el acceso a objetosObjectServer. Puede crear, modificar y eliminar usuarios, grupos y roles.

Los permisos controlan el acceso a los objectos y datos en el objectserver.Combinando uno o más permisos en roles, puede gestionar el acceso de formarápida y eficaz.

A cada usuario se le asigna uno o más grupos. A continuación, puede asignarpermisos de grupo para realizar acciones en objetos de base de datos al otorgaruno o más roles para el grupo. Puede crear agrupaciones lógicas como, porejemplo, superusuarios o administradores del sistema, agrupaciones físicas como

Capítulo 5. SQL de ObjectServer 195

Page 210: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

centros de operacions de red Londres o Nueva York, o cualquier otra agrupaciónpara simplificar la configuración de seguridad.

Por ejemplo, la creación de automatizaciones requiere conocimientos deoperaciones de Tivoli Netcool/OMNIbus y la manera en que se configura undeterminado ObjectServer. Generalmente, no se debe permitir a todos los usuarioscrear o modificar automatizaciones. Una solución es crear un rol llamadoAutoAdmin, con los permisos para crear y modificar desencadenantes, grupos dedesencadenante, archivos, procedimientos SQL, procedimientos externos y señales.A continuación puede otorgar dicho rol a un grupo de administradores que crearány actualizarán desencadenantes.

Los grupos y roles predeterminados de operadores y administradores de gestiónde red se definen en el script SQL security.SQL . También puede utilizar estescript como plantilla para crear sus propios grupos y roles.

Creación de un usuario (mandato CREATE USER)Utilice el mandato CREATE USER para añadir un usuario al ObjectServer.

SintaxisCREATE USER ’nombre_usuario’[ ID identificador ]FULL NAME ’nombre_usuario_completo’[ PASSWORD ’contraseña’ [ ENCRYPTED] ][ PAM { TRUE | FALSE } ];

El nombre_usuario es una serie de texto que contiene un nombre de usuarioexclusivo para el usuario que se va a añadir. Ese nombre puede tener un máximode 64 caracteres. Si el usuario se debe autenticar externamente, por ejemplo en unrepositorio Lightweight Directory Access Protocol (LDAP) o utilizando PAM(Pluggable Authentication Modules), especifique el nombre de usuario que sealmacena en el repositorio de autenticación externo.

Nota: Los nombres de usuario son sensibles a las mayúsculas y minúsculas ydeben especificarse entre comillas. Los espacios en blanco iniciales o finales sedescartan.

El identificador es un valor entero que identifica exclusivamente al usuario. Si noespecifica un identificador, se asigna uno automáticamente. El identificador delusuario root es 0. El identificador del usuario nobody es 65534. Se puedenestablecer identificadores para otros usuarios en cualquier valor entre 1 y2147483647.

El nombre_usuario_completo es una serie de texto que contiene el nombre completodel usuario.

Puede especificar la contraseña del usuario con la palabra clave PASSWORD. Elvalor predeterminado es una serie vacía. Si añade la palabra clave ENCRYPTED, sepresupone que la contraseña está cifrada. No se exige ninguna contraseña para unusuario autenticado externamente.

Para especificar que el usuario se autentica externamente, establezca PAM enTRUE. La propiedad de ObjectServer Sec.ExternalAuthentication también debeestablecerse en PAM o LDAP, según convenga para el sistema de autenticación. Si seestablece PAM en FALSE o Sec.ExternalAuthentication en none, el usuario no sepuede autenticar externamente. Si desea almacenar el nombre de usuario y la

196 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 211: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

contraseña asociada en el ObjectServer y llevar a cabo la autenticación deObjectServer, establezca PAM en FALSE. Para obtener más información sobre PAMo LDAP, consulte la publicación IBM Tivoli Netcool/OMNIbus Installation andDeployment Guide.

Ejemplocreate user ’joe’ id 1 full name ’Joseph R. User’;

Referencia relacionada:“Propiedades y opciones de línea de mandatos de ObjectServer” en la página 3

Modificación de los detalles de un usuario existente (mandatoALTER USER)

Utilice el mandato ALTER USER para cambiar los valores, como la contraseña, delusuario especificado. Puede cambiar más de un valor en un solo mandato ALTERUSER.

SintaxisALTER USER ’nombre_usuario’SET PASSWORD ’contraseña’ [ AUTHORIZE PASSWORD ’contraseña_anterior’ ] [ ENCRYPTED ]SET FULL NAME ’nombre_usuario_completo’SET ENABLED { TRUE | FALSE }SET PAM { TRUE | FALSE }ASSIGN [ RESTRICTION ] FILTER nombre_filtro_restricciónREMOVE [ RESTRICTION ] FILTER nombre_filtro_restricción ;

El nombre_usuario es una serie de texto que contiene un nombre de usuarioexclusivo para el usuario que se va a modificar. Este nombre no puede modificarse.

Utilice el valor PASSWORD para cambiar la contraseña para el usuarioespecificado. Tenga en cuenta que no puede cambiar la contraseña de un usuarioque se autentique externamente en un sistema LDAP. Puede cambiar la contraseñade un usuario que se autentique externamente en un sistema PAM sólo si elsistema PAM externo se ha configurado para permitirlo. Si se permite cambiar lacontraseña de un usuario autenticado por PAM, también debe utilizar las palabrasclave AUTHORIZE PASSWORD para especificar la contraseña anterior.

Utilice el valor ENABLED para activar (TRUE) o desactivar (FALSE) el usuarioespecificado. Un usuario activado tiene acceso de inicio de sesión al sistema.

Establezca PAM en TRUE para permitir al usuario que se autentique externamente.La propiedad de ObjectServer Sec.ExternalAuthentication también debeestablecerse en PAM o LDAP, según convenga para el sistema de autenticación. Si seestablece PAM en FALSE o Sec.ExternalAuthentication en none, el usuario no sepuede autenticar externamente. Si desea realizar la autenticación del ObjectServer,establezca PAM en FALSE. Para obtener más información sobre PAM o LDAP,consulte la publicación IBM Tivoli Netcool/OMNIbus Installation and DeploymentGuide.

Utilice los valores de ASSIGN o REMOVE RESTRICTION FILTER para asignar oeliminar los filtros de restricción que se aplican al usuario. Sólo se puede asignarun filtro de restricción por tabla a un usuario.

Ejemploalter user ’joe’ set password ’topsecret’;

Capítulo 5. SQL de ObjectServer 197

Page 212: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Conceptos relacionados:“Filtros de restricción” en la página 165Referencia relacionada:“Propiedades y opciones de línea de mandatos de ObjectServer” en la página 3

Supresión de un usuario (mandato DROP USER)Utilice el mandato DROP USER para suprimir el usuario especificado.

SintaxisDROP USER ’user_name’;

user_name es una serie de texto que contiene el nombre de usuario excluisvo delusuario que se está descartando.

Ejemplodrop user ’joe’;

Creación de un grupo (mandato CREATE GROUP)Utilice el mandato CREATE GROUP para crear un grupo de uno o más usuarios.

SintaxisCREATE GROUP ’group_name’[ ID identifier ][ COMMENT ’comment_string’ ][ MEMBERS ’user_name’, ... ] ;

El group_name es una serie de texto que contiene un nombre exclusivo para elgrupo que se va a crear. Este nombre puede tener hasta 64 caracteres de longitud.

Nota: Los nombres de grupo son sensibles a mayúsculas y minúsculas y debenescribirse entre comillas. Los espacios iniciales o finales se descartan.

El identificador es un valor entero que identifica de forma exclusiva el grupo. Si noespecifica un identificador, se asigna uno automáticamente. Los identificadores de0 a 7 se reservan para grupos de sistema. Los identificadores para otros grupos sepueden establecer en cualquier valor entre 8 y 2147483647.

Utilice el parámetro COMMENT opcional para añadir una descripción del grupoque está creando.

Utilice la palabra clave MEMBERS para especificar los nombres de usuario de unoo más usuarios que desea añadir como miembros del grupo.

Ejemplocreate group ’AutoAdmin’ id 3 COMMENT ’Group to manage Automations’

members ’joe’, ’bob’;

198 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 213: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Modificación de los detalles de un grupo existente (mandatoALTER GROUP)

Utilice el mandato ALTER GROUP para cambiar los valores de usuario para elgrupo especificado. Puede modificar más de un valor en un solo mandato ALTERGROUP.

SintaxisALTER GROUP ’group_name’SET COMMENT ’comment_string’ASSIGN [ RESTRICTION ] FILTER restriction_filter_nameREMOVE [ RESTRICTION ] FILTER restriction_filter_nameASSIGN MEMBERS ’user_name’, ...REMOVE MEMBERS ’user_name’, ... ;

group_name es una serie de texto que contiene el nombre exclusivo del grupo quese modifica. No puede modificar este nombre.

Utilice el valor SET COMMENT para modificar la descripción del grupo.

Utilice el parámetro ASSIGN o REMOVER RESTRICTION FILTER valor paraasignar o eliminar filtros de restricción que se apliquen al grupo. Sólo se puedeasignar un filtro de restricción por tabla a un grupo.

Utilice el valor ASSIGN o REMOVE MEMBERS para asignar usuarios comomiembros del grupo o eliminar usuarios del grupo.

Ejemploalter group ’AutoAdmin’ assign members ’sue’;

Conceptos relacionados:“Filtros de restricción” en la página 165

Supresión de un grupo (mandato DROP GROUP)Utilice el mandato DROP GROUP para suprimir el grupo especificado.

SintaxisDROP GROUP ’group_name’;

group_name es una serie de texto que contiene el nombre exclusivo del grupo quese elimina.

Nota: Los grupos predeterminados Normal, Administrador y Superusuarioproporcionan seguridad de nivel de fila en la lista de sucesos. Estos grupos no sepueden suprimir ni renombrar. Estos y otros grupos predeterminados se creanmediante el script security.sql.

Ejemplodrop group ’LondonAdmin’;

Capítulo 5. SQL de ObjectServer 199

Page 214: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Creación de un rol (mandato CREATE ROLE)Utilice el mandato CREATE ROLE para crear un rol, que es una colección depermisos.

SintaxisCREATE ROLE ’role_name’[ ID identifier ][ COMMENT ’comment_string’ ];

Cada role_name es una serie de texto que contiene el nombre exclusivo de un rolque se está creando. Este nombre puede tener hasta 64 caracteres de longitud.

Nota: Los nombres de rol son sensibles a mayúsculas y minúsculas y debenescribirse entre comillas. Los espacios iniciales o finales se descartan.

El identificador es un valor entero que identifica de forma exclusiva el rol. Si noespecifica un identificador, se asigna uno automáticamente. El rol Normal tiene elidentificador 3. El rol de administrador tiene el identificador 2. El rol desuperusuario tiene el identificador -1 y se otorga a todos los permisos sobre todoslos objetos. Los identificadores para otros roles se pueden establecer en cualquiervalor entre 13 y 2147483647.

Utilice el parámetro COMMENT opcional para añadir una descripción del rol queestá creando.

Los valores por defecto se crean mediante el script security.sql.

Ejemplocreate role ’SuperAdmin’ id 500comment ’only users with root access should be granted this role’;

Conceptos relacionados:“Utilización de roles para asignar permisos a los usuarios” en la página 201

Modificación de la descripción de un rol (mandato ALTERROLE)

Utilice el mandato ALTER ROLES para modificar la descripción de un rolexistente.

SintaxisALTER ROLE ’role_name’ SET COMMENT ’comment_string’;

Cada role_name es una serie de texto que contiene el nombre exclusivo de un rolque se está modificando. Este nombre no puede modificarse.

Utilice el valor COMMENT para modificar la descripción del rol.

Ejemploalter role ’SuperAdmin’ set comment ’enhanced description of role’;

200 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 215: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Utilización de roles para asignar permisos a los usuariosTras crear un rol, debe asignar permisos al rol con el mandato GRANT. Acontinuación, puede utilizar el mandato GRANT ROLE para asignar el rol a uno omás grupos. A todos los usuarios que son miembros del grupo se les asignan lospermisos definidos para ese rol.

Asignación de permisos a roles (mandato GRANT)Utilice el mandato GRANT para asignar permisos del sistema y de objeto a losroles. Los permisos del sistema controlan los mandatos que se pueden ejecutar en elObjectServer. Los permisos de objeto controlan el acceso a objetos individuales, comolas tablas.

Sintaxis para otorgar permisos del sistemaGRANT permiso_sistema,...TO ROLE ’nombre_rol’,...[ WITH GRANT OPTION ];

El valor de permiso_sistema puede ser cualquiera de los submandatos siguientes:ISQLISQL WRITEALTER SYSTEM DROP CONNECTIONALTER SYSTEM SHUTDOWNALTER SYSTEM BACKUPALTER SYSTEM SET PROPERTYCREATE DATABASECREATE FILECREATE RESTRICTION FILTERCREATE SQL PROCEDURECREATE EXTERNAL PROCEDURECREATE SIGNALCREATE TRIGGER GROUPCREATE USERCREATE GROUPCREATE ROLEALTER USERALTER GROUPALTER ROLEDROP USERDROP GROUPDROP ROLEGRANT ROLEREVOKE ROLE

El nombre_rol es una serie de texto que contiene el nombre exclusivo del rol o losroles al que vaya a asignar los permisos.

La opción WITH GRANT OPTION permite que los roles a los que se ha otorgadopermiso otorguen permiso a otros roles

Consejo: Puede consultar la tabla catalog.security_permissions para verinformación sobre los permisos. Por ejemplo, para ver cada permiso del sistema,utilice el mandato SQL siguiente: SELECT * FROM catalog.security_permissionsWHERE Object = ’SYSTEM’ ORDER BY Permission;

Ejemplo de cómo otorgar permisos del sistemagrant create database to role ’DDL_Admin’;

Capítulo 5. SQL de ObjectServer 201

Page 216: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Sintaxis para otorgar permisos de objetoGRANT permiso_objeto,... ON objeto_permiso nombre_objetoTO ROLE ’nombre_rol’,...[ WITH GRANT OPTION ];

Puede asignar uno o más permisos a los objetos de to ObjectServer. Utilicepermiso_objeto para definir los mandatos SQL que los usuarios autorizados puedenejecutar en un objeto ObjectServer del tipo objeto_permiso. El nombre_objeto es unaserie de texto que contiene el nombre exclusivo del objeto.

El propietario del objeto (su creador) tiene automáticamente los permisos deconcesión y revocación asociados con ese objeto y puede otorgar y revocar esospermisos a otros roles. En la tabla siguiente se listan los permisos que elpropietario tiene para cada tipo de objeto. El propietario también puede otorgaresos permisos a otros usuarios.

Tabla 45. Objetos y permisos asociados

Objetos (objeto_permiso) Permisospermiso_objeto)

DATABASE DROP

CREATE TABLE

CREATE VIEW

TABLE DROP

ALTER

SELECT

INSERT

UPDATE

DELETE

CREATE INDEX

DROP INDEX

VIEW DROP

ALTER

SELECT

UPDATE

DELETE

TRIGGER GROUP DROP

ALTER

CREATE TRIGGER

TRIGGER DROP

ALTER

FILE DROP

ALTER

WRITE

202 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 217: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 45. Objetos y permisos asociados (continuación)

Objetos (objeto_permiso) Permisospermiso_objeto)

SQL PROCEDURE

EXTERNAL PROCEDURE

DROP

ALTER

EXECUTE

SIGNAL DROP

ALTER

RAISE

RESTRICTION FILTER DROP

ALTER

El nombre_rol es una serie de texto que contiene el nombre exclusivo del rol o losroles a los que se vayan a asignar los permisos.

La opción WITH GRANT OPTION permite que los roles a los que se ha otorgadopermiso otorguen permiso a otros roles

Consejo: En los mandatos donde puede sustituir un objeto existente utilizando lasintaxis de CREATE OR REPLACE, necesita el permiso ALTER para sustituir unobjeto existente. Algunos objetos sólo se pueden alterar utilizando la sintaxis deCREATE OR REPLACE; por ejemplo, no existe ningún mandato ALTER VIEW,pero puede sustituir una vista existente si tiene el permiso ALTER en la vista.

Ejemplo de cómo otorgar permisos de objetogrant drop on database testdb to role ’DDL_Admin’;

Referencia relacionada:“Revocación de permisos de roles (mandato REVOKE)” en la página 204

Herencia de permisos de objetoCuando se crea un objeto nuevo, los permisos se otorgan automáticamente alnuevo objeto, según los permisos que se conceden en su principal.

La tabla siguiente lista el objeto principal del que deriva cada objeto ObjectServer.

Tabla 46. Herencia de permisos de objeto

Objeto principal Objetos hijos

Sistema DATABASE

TRIGGER GROUP

ARCHIVO

SQL PROCEDURE

EXTERNAL PROCEDURE

SIGNAL

RESTRICTION FILTER

Capítulo 5. SQL de ObjectServer 203

Page 218: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 46. Herencia de permisos de objeto (continuación)

Objeto principal Objetos hijos

DATABASE TABLA

VIEW

TABLA INDEX

TRIGGER GROUP TRIGGER

Por ejemplo, si SuperAdmin tiene el permiso CREATE_DATABASE yLondonAdmin crea una base de datos, de forma predeterminada SuperAdmintiene todos los permisos sobre la base de datos que LondonAdmin ha creado.

Si los permisos del nivel superior se modifican una vez que el objeto hijo se crea,ello no tendrá efecto alguno en los permisos en el nivel inferior.

Asignación de roles a grupos (mandato GRANT ROLE)Después de crear roles como colecciones de permisos, puede asignar los roles agrupos y revocar los roles de los grupos. Utilice el mandato GRANT ROLE paraasignar roles a grupos.

Las asignaciones de rol entran en vigor en la siguiente sesión de cliente.

SintaxisGRANT ROLE ’role_name’,...TO GROUP ’group_name’,...;

Cada role_name es una serie de texto que contiene el nombre exclusivo de un rolque se está asignando.

Cada group_name es el nombre de un grupo al que el rol o roles se estánasignando.

Ejemplogrant role ’AutoAdmin’ to group ’LondonAdministrators’;

Referencia relacionada:“Revocación de roles de grupos (mandato REVOKE ROLE)” en la página 207

Revocación de permisos de roles (mandato REVOKE)Utilice el mandato REVOKE para revocar permisos de sistema y objeto de roles.

Sintaxis para revocar permisos del sistemaREVOKE system_permission,...FROM ROLE ’role_name’,... ;

La lista siguiente muestra cada system_permission que se puede revocar desde unrol:ISQLISQL WRITEALTER SYSTEM DROP CONNECTIONALTER SYSTEM SHUTDOWNALTER SYSTEM BACKUPALTER SYSTEM SET PROPERTYCREATE DATABASECREATE FILECREATE RESTRICTION FILTER

204 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 219: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

CREATE SQL PROCEDURECREATE EXTERNAL PROCEDURECREATE SIGNALCREATE TRIGGER GROUPCREATE USERCREATE GROUPCREATE ROLEALTER USERALTER GROUPALTER ROLEDROP USERDROP GROUPDROP ROLEGRANT ROLEREVOKE ROLE

Cada role_name es una serie de texto que contiene el nombre exclusivo de un roldesde el cual se revoca el permiso.

Ejemplo de revocación de permisos del sistemarevoke create table from role ’DDL_Admin’;

Sintaxis para revocar permisos de objetoREVOKE object_permission,...ON permission_object object_nameFROM ROLE ’role_name’,... ;

Puede revocar uno o varios permisos para uno o más objetos de objectserver.Utilice object_permission para especificar los mandatos SQL que desea revocar paraun objeto de objectserver de tipo permission_object . El object_name es una cadena detexto que contiene el nombre exclusivo del objeto.

Los detalles de cada objeto y los permisos asociados que puede revocar semuestran en la tabla siguiente.

Tabla 47. Objetos y permisos asociados

Objetos (objeto_permiso) Permisospermiso_objeto)

DATABASE DROP

CREATE TABLE

CREATE VIEW

TABLE DROP

ALTER

SELECT

INSERT

UPDATE

DELETE

CREATE INDEX

DROP INDEX

Capítulo 5. SQL de ObjectServer 205

Page 220: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 47. Objetos y permisos asociados (continuación)

Objetos (objeto_permiso) Permisospermiso_objeto)

VIEW DROP

ALTER

SELECT

UPDATE

DELETE

TRIGGER GROUP DROP

ALTER

CREATE TRIGGER

TRIGGER DROP

ALTER

FILE DROP

ALTER

WRITE

SQL PROCEDURE

EXTERNAL PROCEDURE

DROP

ALTER

EXECUTE

SIGNAL DROP

ALTER

RAISE

RESTRICTION FILTER DROP

ALTER

Cada role_name es una serie de texto que contiene el nombre exclusivo de un roldesde el cual se revoca el permiso.

Nota: El mandato REVOKE no crea cascada dentro de la jerarquía de permisos.Por ejemplo, si revoca el permiso CREATE TABLE desde el rol SuperAdmindespués de que Superadmin haya otorgado este permiso al rolLondonAdministrators, dicho rol mantiene el permiso CREATE TABLE.

Ejemplo de revocación de permisos de objetorevoke drop on database testdb from role ’DDL_Admin’;

Referencia relacionada:“Asignación de permisos a roles (mandato GRANT)” en la página 201

206 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 221: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Revocación de roles de grupos (mandato REVOKE ROLE)Utilice el mandato REVOKE ROLE para revocar roles de los grupos.

SintaxisREVOKE ROLE ’role_name’,...FROM GROUP ’group_name’,... ;

Cada role_name es una serie de texto que contiene el nombre exclusivo de un rolque se está revocando.

Cada group_name es el nombre de un grupo al que no se le asignará ningún rol.

Nota: El mandato REVOKE ROLE no coloca cascada dentro de la jerarquía deroles. Por ejemplo, si revoca el rol AutoAdmin del grupo Superadmin después deque SuperAdmin haya otorgado el rol AutoAdmin al grupoLondonAdministrators, este grupo todavía tendrá el rol AutoAdmin.

Ejemplorevoke role ’AutoAdmin’ from group ’LondonAdministrators’;

Referencia relacionada:“Asignación de roles a grupos (mandato GRANT ROLE)” en la página 204

Supresión de un rol (mandato DROP ROLE)Utilice el mandato DROP ROLE para suprimir un rol existente.

SintaxisDROP ROLE ’role_name’;

Cada role_name es una serie de texto que contiene el nombre exclusivo de un rolque se está eliminando. Cuando se elimina un rol, todos los permisos de rolrelacionados son eliminados.

Ejemplodrop role ’AutoAdmin’;

Creación, ejecución y supresión de desencadenantesUn procedimiento es un objeto SQL ejecutable que se puede llamar para realizaroperaciones comunes.

Los tipos de procedimientos que puede crear son:v Procedimientos SQL, que manipulan datos en una base de datos objectserverv Procedimientos externos, que ejecutan un ejecutable en un sistema remoto

Después de crear un procedimiento en el objectserver, puede ejecutar elprocedimiento desde la interfaz interactiva de SQL ( nco_sql ). También puedeejecutar el procedimiento en un desencadenante utilizando el mandato EXECUTEPROCEDURE.

Capítulo 5. SQL de ObjectServer 207

Page 222: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

procedimientos de SQLUn procedimiento SQL es un conjunto de mandatos de SQL parametrizados, ofragmentos de código, con construcciones de lenguaje de programación que puedeutilizar para realizar tareas complejas en objetos de base de datos.

Puede crear un procedimiento que contenga un conjunto lógico de mandatos, porejemplo un conjunto de consultas, actualizaciones o inserciones que componen unatarea.

Los procedimientos expanden la sintaxis SQL para que pueda:v Pasar parámetros dentro y fuera de un procedimientov Crear variables locales a las que se asigna valoresv Realizar pruebas de condiciónv Realizar operaciones de exploración en tablas y vistas

Componentes de un procedimiento SQLLos procedimientos SQL tienen los siguientes componentes principales: parámetros,declaraciones de variable local y el cuerpo del procedimiento.

Los parámetros son valores que se pasan a un procedimiento o se extraen de éste.Puede declarar los parámetros del procedimiento cuando cree el procedimiento yespecificar qué valores se pasan como parámetros cuando ejecute el procedimiento.El nombre de la variable que contiene un parámetro se denomina parámetro formal ,mientras que el valor del parámetro cuando se ejecute el procedimiento sedenomina parámetro real .

Los valores que pasa al procedimiento deben ser del mismo tipo de datos que losde la declaración del parámetro.

También puede crear variables locales para su uso en el procedimiento para albergary cambiar valores temporales en el cuerpo del procedimiento. Los valores yvariables locales siempre se descartan cuando el procedimiento se cierra. Porejemplo, puede crear un contador de enteros como una variable local.

Nota: Puesto que ambos parámetros y variables locales contienen datos quepueden cambiar, se conocen como ' variables' dentro de procedimientos.

El cuerpo de un procedimiento contiene un conjunto de sentencias que pruebacondiciones y manipula datos en la base de datos.Referencia relacionada:“Creación de procedimientos SQL (mandato CREATE PROCEDURE)”

Creación de procedimientos SQL (mandato CREATEPROCEDURE)Utilice el mandato CREATE PROCEDURE para crear procedimientos SQL.

Este mandato define la estructura y el funcionamiento del procedimiento, incluidoslos tipos de parámetro que se introducen y extraen del procediiento, y las variableslocales, pruebas de condición, operaciones de fila, y asignaciones que se realizan enel procedimiento.

208 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 223: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

SintaxisCREATE [ OR REPLACE ] PROCEDURE procedure_name([

[ IN | OUT | IN OUT ] parameter_name{ parameter_type | ARRAY OF parameter_type }, ...

])[ DECLARE variable_declaration;...[;] ]BEGINprocedure_body_statement;...[;]END

Si existe una posibilidad de que ya exista un procedimiento con el mismo nombreque el que desea crear, utilice las palabras clave opcionales OR REPLACE. Si existeel procedimiento, se sustituirá por el que esté creando. Si el procedimiento noexiste, se crea uno nuevo.

El valor procedure_name debe ser exclusivo dentro del objectserver de objectserver ya cumplir con los convenios de denominación.

Siguiendo procedure_name , especifique los parámetros que se pueden pasar dentroy fuera del procedimiento, dentro de paréntesis (). Debe incluir paréntesis despuésde procedure_name incluso si el procedimiento no tiene parámetros.

Cada procedimiento de parámetro tiene una modalidad que puede ser IN, OUT oIN OUT. Dependiendo de la modalidad que elija para los parámetros, puedeutilizarla de distintas formas:v Un parámetro IN es una variable de sólo lectura. Puede utilizar un parámetro

IN en expresiones para ayudarle calcular un valor, pero no puede asignar unvalor para el parámetro. Si no desea cambiar el valor de una variable dentro delprocedimiento, utilice un parámetro IN para pasar el valor de variable en elprocedimiento. Este parámetro se utiliza de forma predeterminada si no seespecifica la modalidad de parámetro.

v Un parámetro OUT es una variable de sólo lectura. Puede utilizar un parámetroOUT para asignar un valor al parámetro, pero no puede leer en este dentro delcuerpo del procedimiento. Por lo tanto, no puede utilizar este tipo de parámetroen una expresión. Los parámetros OUT son útiles para pasar valores calculadosdentro de un procedimiento, al margen del procedimiento.

v En un parámetro IN OUT es una variable de lectura y escritura, sin ninguna delas restricciones de un parámetro de entrada o salida. Este parámetro es útil paravariables que desea cambiar dentro del procedimiento y pasar fuera delprocedimiento.

Cada parameter_name debe ser exclusivo dentro del procedimiento y debe cumplircon los convenios de denominación de objectserver.

El parameter_type define el tipo de datos que el parámetro puede pasar hacia dentroo fuera del procedimiento. El tipo de datos puede ser cualquier tipo de datosObjectServer válido, excepto VARCHAR o INCR.

ARRAY OF parameter_type es una matriz de cualquier tipo de parámetro válido.

En la sección DECLARE de un procedimiento opcional, puede definir (declarar)variables locales para su utilización en un procedimiento. Una variable local es unespacio reservado para los valores utilizados durante la ejecución delprocedimiento. Utilice puntos y coma para separar declaraciones de variable local.Los nombres de variable deben ser exclusivas en el procedimiento y cumplir con

Capítulo 5. SQL de ObjectServer 209

Page 224: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

los convenios de denominación de ObjectServer. variable_declaration puede incluircualquiera de los siguientes tipos de variable:v Variables simples:

variable_name variable_type

v Variables de matriz:variable_name variable_type [ ARRAY ] [ integer ]

variable_type es un tipo de datos objectserver válido, excepto VARCHAR o INCR.Defina el tamaño de un matriz especificando un valor entero mayor que 1 entrecorchetes.

Nota: Los corchetes en negrita alrededor del valor entero son necesarios paraespecificar el tamaño de la matriz; no indican la notación de sintaxis de cláusulapara una palabra clave o cláusula opcional.

El cuerpo de un procedimiento está encerrado entre las palabras clave BEGIN yEND. Puede utilizar la sentencia SET, la sentencia IF THEN ELSE, la sentenciaCASE WHEN, el bucle FOR EACH ROW y el bucle FOR en el cuerpo delprocedimiento.

Ejemplo

En la siguiente declaración de procedimiento, el parámetro formal es la variablecurrent_severity . Cuando se ejecuta el procedimiento, pasa un parámetro real.

CREATE PROCEDURE calculate_average_severity( IN current_severity INTEGER )

Por ejemplo, en la llamada a procedimiento siguiente, el parámetro real es el valor5 , que está asignado al parámetro formal current_severity .

EXECUTE PROCEDURE calculate_average_severity(5);

EjemploCREATE PROCEDURE add_or_concat( IN counter INTEGER, IN one_char_string CHAR(1))

Ejemplo

En el ejemplo siguiente, una matriz de enteros se pasa al procedimiento y se utilizapara calcular el promedio de gravedad de un subconjunto de alertas:CREATE PROCEDURE calculate_average_severity( IN severity_arr ARRAY OF INTEGER)

Una matriz de enteros se pasa al procedimiento cuando se ejecuta. Estos enteros seasignan a una matriz llamada severity_arr .

Ejemplo

Para crear una variable booleana utilizada en el procedimiento para indicar cuándouna gravedad supera un valor determinado:DECLARE SeverityTooHigh BOOLEAN;

Para crear una matriz de 20 valores de enteros utilizados en el procedimiento paraalmacenar nombres de nodo:DECLARE NodeNameArray INTEGER [20];

210 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 225: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Conceptos relacionados:“Convenciones de denominación para los objetos ObjectServer” en la página 149“Componentes de un procedimiento SQL” en la página 208“Expresiones” en la página 183Referencia relacionada:“Especificación de tipos de datos para columnas” en la página 155“Cómo se construye una sentencia cuerpo del procedimiento SQL”

Cómo se construye una sentencia cuerpo del procedimiento SQL:

El cuerpo de un procedimiento SQL contiene un conjunto de sentencias de SQL yconstrucciones de programación que manipulan datos en el objectserver.

SintaxisCREATE [ OR REPLACE ] PROCEDURE procedure_name ([ procedure_parameter,... ])[ DECLARE variable_declaration;...[;] ]BEGINprocedure_body_statement;...[;]

END

En este tema se describen sólo las entradas necesarias para el cuerpo de unprocedimiento ( procedure_body_statement ), que se indica entre las palabras claveBEGIN y END.

En el cuerpo de un procedimiento, debe separar cada sentencia, excepto la última,por un punto y coma.

Las sentencias del procedimiento pueden incluir mandatos SQL y construccionesde programación adicional.

Puede ejecutar los siguientes mandatos SQL en un procedimiento:ALTER SYSTEM BACKUPALTER SYSTEM SETALTER SYSTEM DROP CONNECTIONALTER TRIGGERALTER TRIGGER GROUPALTER USERUPDATEINSERTDELETEWRITE INTORAISE SIGNAL{ EXECUTE | CALL } PROCEDURE

El usuario que crea el procedimiento debe tener los permisos adecuados paraejecutar los mandatos del cuerpo de procedimiento.

Atención: No puede tener dependencias circulares en procedimientos odesencadenantes; por ejemplo, no debe crear un procedimiento que llame a unprocedimiento que a continuación, llama al procedimiento original.

Puede utilizar las siguientes construcciones de programación adicionales en uncuerpo de procedimiento:v Sentencia de asignación SETv Sentencia IF THEN ELSEv Sentencia CASE WHEN

Capítulo 5. SQL de ObjectServer 211

Page 226: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

v Bucle FOR EACH ROWv Bucle FORReferencia relacionada:“Creación de procedimientos SQL (mandato CREATE PROCEDURE)” en la página208“Variables de usuario implícitas en procedimientos y desencadenantes” en lapágina 215“Sentencia SET”“Sentencia IF THEN ELSE”“Sentencia CASE WHEN” en la página 213“Bucle FOR EACH ROW” en la página 213“Bucle FOR” en la página 214

Sentencia SET:

Al crear el cuerpo de un procedimiento SQL, puede utilizar la sentencia deasignación SET para escribir el valor de una experesión para una variable oparámetro.

SintaxisSET { parameter_name | variable_name } = expression

Puede asignar un valor a un parámetro, variable o una referencia de fila en unbucle FOR EACH ROW.

La expresión es cualquier expresión válida.

Nota: El valor devuelto por la expresión debe ser de un tipo compatible con lavariable en la que se escribe el valor.Conceptos relacionados:“Expresiones” en la página 183Referencia relacionada:“Cómo se construye una sentencia cuerpo del procedimiento SQL” en la página211

Sentencia IF THEN ELSE:

Cuando se construye el cuerpo de un procedimiento SQL, puede utilizar lasentencia IF THEN ELSE para realizar una o varias acciones basándose en lascondiciones especificadas.

SintaxisIF condition THEN action_command_list[ ELSEIF condition THEN action_command_list ]...[ ELSE action_command_list ]END IF;

Si la primera condición se cumple (se evalúa en true), las sentencias que siguen ala palabra clave THEN se ejecutan en secuencia hasta que se alcanza un ELSEIF,ELSE o END IF. Si la primera condición no se cumple y hay una instrucciónELSEIF para la que la condición se cumple, los mandatos que siguen a esasentencia ELSEIF se ejecutan hasta que se llega a la próxima palabra clave. Si existe

212 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 227: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

una sentencia ELSE y no se cumplen las condiciones anteriores, la instrucción quesigue a la sentencia ELSE se ejecutan hasta que se alcanza el final de la sentenciaIF.Conceptos relacionados:“Condiciones” en la página 183Referencia relacionada:“Cómo se construye una sentencia cuerpo del procedimiento SQL” en la página211

Sentencia CASE WHEN:

Cuando se construye el cuerpo de un procedimiento SQL, puede utilizar lasentencia CASE WHEN para realizar una o varias acciones basándose en unacondición. Si no se cumple la condición, de manera opcional, puede realizar unaacción diferente.

SintaxisCASE

WHEN condition THEN action_command_list...[ ELSE action_command_list ]END CASE;

Si la primera condición se cumple (se evalúa en true), las sentencias que siguen ala palabra clave THEN se ejecutan en secuencia hasta que se alcanza un WHEN,ELSE o END CASE. De lo contrario, si hay alguna sentencia WHEN para la cual secumpla la condición, las sentencias que siguen la palabra clave THEN se ejecutanhasta que se llega a un WHEN, ELSE o END CASE. Si no se cumple ningunacondición anterior y hay una sentencia ELSE, la sentencia que sigue a la sentenciaELSE se ejecuta hasta que se alcanza una sentencia END CASE.Conceptos relacionados:“Condiciones” en la página 183Referencia relacionada:“Cómo se construye una sentencia cuerpo del procedimiento SQL” en la página211

Bucle FOR EACH ROW:

Cuando se construye el cuerpo de un procedimiento SQL, puede utilizar el bucleFOR EACH ROW para realizar acciones en un conjunto de filas que cumplen unadeterminada condición.

SintaxisFOR EACH ROW variable_name in database_name.table_name[ WHERE condition ]BEGIN

action_command_list;END;

En esta sentencia, el nombre de variable esté declarado implícitamente comoreferencia de fila. Por lo tanto, no es necesario declarar la variable al principio delprocedimiento. Esto significa que los cambios realizados en las columnas a las quese hace referencia mediante la variable afectan directamente a las filas delobjectserver. Cuando se alcanza el END , la variable declarada implícitamente sedescarta y no se puede utilizar en otro lugar del procedimiento.

Capítulo 5. SQL de ObjectServer 213

Page 228: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Nota: Sólo las tablas base (no vistas) se pueden actualizar en el bucle FOR EACHROW. No se puede insertar en la tabla que se procesa dentro del bucle FOR EACHROW.

Si incluye una cláusula WHERE, sólo se devolverán las filas que cumplen loscriterios especificados en la condición.

Un mandato BREAK sale del bucle actual, y la siguiente sentencia en elprocedimiento se empieza a ejecutar.

Un mandato CANCEL detiene la ejecución de un procedimiento.

Atención: No utilice el mandato de cancelación al utilizar un objectserver deescritorio en modalidad DualWrite .

Ejemplo

El ejemplo siguiente aumenta la gravedad de todas las alertas de la tablaalerts.status que tienen una gravedad de 3 para una gravedad de 4 .FOR EACH ROW alert_row in alerts.status WHERE alert_row.Severity=3BEGIN

SET alert_row.Severity = 4;END;

Cuando se ejecuta esta sentencia, el objectserver lee cada fila de la tablaalerts.status y lo prueba para ver si el valor en la columna Gravedad es 3 . Paracada fila que coincide con esta condición, las sentencias dentro de BEGIN y ENDse ejecutan, hasta que todas las filas se procesan.Conceptos relacionados:“Condiciones” en la página 183Referencia relacionada:“Cómo se construye una sentencia cuerpo del procedimiento SQL” en la página211

Bucle FOR:

Al crear el cuerpo de un procedimiento SQL, puede utilizar el bucle FOR parallevar a cabo acciones un número determinado de veces, según una variable derecuento.

SintaxisFOR counter = 1 to integer DOBEGIN

action_command_list;END;

Un mandato BREAK sale del bucle actual, y la siguiente sentencia en elprocedimiento se empieza a ejecutar.

Un mandato CANCEL detiene la ejecución de un procedimiento.

Atención: No utilice el mandato de cancelación al utilizar un objectserver deescritorio en modalidad DualWrite .

214 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 229: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Ejemplo

El procedimiento siguiente actualiza cada fila de la tabla alerts.status y establece eldistintivo reconocido en true:CREATE PROCEDURE ACKNOWLEDGE_TOOL( ids ARRAY OF CHAR(255) )DECLARE

k INTEGER;BEGIN

FOR k = 1 TO array_len( ids ) DOBEGINUPDATE alerts.status VIA ( ids[k] ) SET Acknowledged = TRUE;END;

END;

Referencia relacionada:“Cómo se construye una sentencia cuerpo del procedimiento SQL” en la página211

Variables de usuario implícitas en procedimientos y desencadenantes:

Puede utilizar variables de usuario para acceder a la información sobre losusuarios conectados dentro de una expresión SQL en el cuerpo del desencadenanteo procedimiento.

Utilice la notación %user para especificar variables de usuario, por ejemplo:%user.attribute_name. El símbolo % indica que está haciendo referencia a unavariable implícita. La palabra clave usuario hace referencia al usuario actual.

Consejo: También puede utilizar el botón de ayuda % para seleccionar lasvariables %user.

La siguiente tabla lista los atributos de sólo lectura que están disponibles enprocedimientos y desencadenantes.

Tabla 48. Variables de usuario implícitas

Atributo de variable Tipo de datos Descripción

%user.user_id INTEGER Identificador del usuario conectado.

%user.user_name STRING Nombre del usuario conectado.

%user.app_name STRING Nombre de la aplicación conectada(como por ejemplo nco_sql).

%user.host_name STRING Nombre del host conectado.

%user.connection_id UNSIGNED Identificador de conexión.

Consulte “Ejemplo: Uso de%user.counterpart_id and%user.connection_id” en la página216.

%user.counterpart_id UNSIGNED Identificador de conexióncorrespondiente.

Consulte “Ejemplo: Uso de%user.counterpart_id and%user.connection_id” en la página216.

Capítulo 5. SQL de ObjectServer 215

Page 230: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 48. Variables de usuario implícitas (continuación)

Atributo de variable Tipo de datos Descripción

%user.is_auto BOOLEAN Si es True , la acción actual se haprovocado por la ejecución de unaautomatización (por ejemplo, undesencadenante temporal).

%user.is_gateway BOOLEAN Si es True , la acción actual se haprovocado por un cliente de pasarela.

%user.is_eventlist BOOLEAN Si es True , la acción actual se haprovocado por un cliente de lista desucesos.

%user.description STRING Nombre descriptivo de la aplicación.Sólo aplicable a pasarelas oanalizadores objectserver.

Ejemplo: Uso de %user.user_name

Para hacer referencia al nombre del usuario actual en el cuerpo de unprocedimiento o desencadenante, utilice la sintaxis:

%user.user_name

Ejemplo: Uso de %user.counterpart_id and %user.connection_id

Para las pasarelas, si %user.connection_id hace referencia a un componente degrabador de pasarela, %user.counterpart_id es el ID omisión del componente delector de pasarela. Este ejemplo muestra cómo estas variables se pueden utilizar enla migración tras error y la recuperación tras error automatizadas para desconectartodos los clientes (excepto la pasarela) a partir de un objectserver de copia deseguridad cuando el objectserver primario se haya activado. Se puede añadir elsiguiente código backup_counterpart_up en el desencadenante:For each row connected in catalog.connections where(connected.ConnectionID <> %user.connection_id andconnected.ConnectionID <> %user.counterpart_id andconnected.AppName == ’GATEWAY’) orconnected.AppName <> ’GATEWAY’beginalter system drop connection connected.ConnectionID;end;

Referencia relacionada:Apéndice B, “Mandatos SQL, expresiones variables y botones de ayudante enherramientas, automatizaciones y listas de sucesos transitorios”, en la página 393

Procedimientos externosPuede crear procedimientos externos para ejecutar un programa ejecutable en unsistema remoto o local.

216 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 231: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Creación de procedimientos externos (mandato CREATEPROCEDURE)Utilice el mandato CREATE PROCEDURE para crear procedimientos externos.

SintaxisCREATE [ OR REPLACE ] PROCEDURE procedure_name( [ parameter_name{ parameter_type | ARRAY OF parameter_type

| ROW OF database_name.table_name },... ] )EXECUTABLE ’executable_name’HOST ’host_name’USER user_idGROUP group_id[ ARGUMENTS expression,... ] [;]

Si existe una posibilidad de que ya exista un procedimiento con el mismo nombreque el que desea crear, utilice las palabras clave opcionales OR REPLACE. Si existeel procedimiento, se sustituirá por el que esté creando. Si el procedimiento noexiste, se crea uno nuevo.

El valor procedure_name debe ser exclusivo dentro del objectserver de objectserver ya cumplir con los convenios de denominación.

Después de procedure_name , incluya la declaración de parámetro entre paréntesis(), para especificar los parámetros que se pueden pasar en el procedimientoexterno. Debe incluir paréntesis después de procedure_name incluso si elprocedimiento no tiene parámetros. Cada parameter_name debe ser exclusivo dentrodel procedimiento y debe cumplir con los convenios de denominación deobjectserver.

Consejo: Los parámetros de procedimiento externo son de sólo lectura. Lepermiten pasar valores de variables en un procedimiento externo. No puededevolver valores de un procedimiento externo.

El parameter_type define el tipo de datos que el parámetro puede pasar alprocedimiento. El tipo de datos puede ser cualquier tipo de datos ObjectServerválido, excepto VARCHAR o INCR.

El executable_name es la vía de acceso a un programa ejecutable en un sistema dearchivos local o remoto.

Consejo: En Windows, debe indicar un carácter de escape para el carácter de barrainclinada invertida en las vías de acceso de archivo o las vías de acceso no seinterpretarán correctamente. También puede utilizar el separador de vía de accesode UNIX cuando especifique vías de acceso en Windows.

El host_name es el nombre del host en el que se ejecuta el programa ejecutable parael procedimiento.

El user_id es el ID de usuario efectivo bajo el cual ejecutar el programa ejecutable.

El group_id es el ID de grupo efectivo bajo el cual ejecutar el programa ejecutable.

Los argumentos son los que se pasan al ejecutable. Sólo se pueden utilizar espaciospara separar los argumentos. Por ejemplo: cool tool se interpreta como cool tool,mientras que cool’tool o cool"tool se interpreta como cooltool.

Capítulo 5. SQL de ObjectServer 217

Page 232: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Ejemplo

Las siguientes llamadas de procedimiento externo llamadas nco_mail , que envíacorreo electrónico sobre alertas críticas reconocidas:create or replace procedure send_email(in node character(255), in severity integer, in subject character(255),in email character(255), in summary character(255), in hostname character(255))executable ’$NCHOME/omnibus/utils/nco_mail’host ’localhost’user 0group 0arguments ’\’’ + node + ’\’’, severity, ’\’’ + subject + ’\’’,’\’’ + email + ’\’’, ’\’’ + summary + ’\’’;

Este ejemplo también muestra cómo pasar cadenas de texto a un ejecutable. Debeencerrar las series de caracteres entre comillas y deben incluirse entre comillas conbarras invertidas. Todas las comillas de este ejemplo son comillas simples.

Nota: Para ejecutar un procedimiento externo, debe disponer de un daemon deagente de control de proceso ( nco_pad ) ejecutándose en el host donde el mandatoejecutable se ha almacenado.Conceptos relacionados:“Convenciones de denominación para los objetos ObjectServer” en la página 149Capítulo 7, “Utilización del control de procesos para gestionar procesos yprocedimientos externos”, en la página 265Tareas relacionadas:“Especificación de las vías de acceso en la interfaz interactiva SQL” en la página150Referencia relacionada:“Especificación de tipos de datos para columnas” en la página 155

Ejecución de procedimientosDespués de crear un procedimiento, debe ejecutarlo utilizando el mandatoEXECUTE PROCEDURE para que se produzcan las acciones del procedimiento.Puede hacerlo utilizando la interfaz interactiva de SQL ( nco_sql ) o en undesencadenante o procedimiento.

Sintaxis{ EXECUTE | CALL } [ PROCEDURE ] procedure_name[ ( expression,... ) | ( [ expression, expression,... ] ,... ) ];

Utilice procedure_name para especificar el procedimiento a ejecutar.

Cada una de las expresiones pasadas como parámetros reales se deben resolver enun valor asignable que coincida con el tipo de parámetro especificado cuando secreó el procedimiento.

Nota: Si pasa un parámetro de matriz, los corchetes alrededor de la lista deexpresiones, que aparecen en negrita en la descripción de sintaxis anterior, no sonopcionales.

218 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 233: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Ejemplo

Para ejecutar el procedimiento descrito en “Creación de procedimientos externos(mandato CREATE PROCEDURE)” en la página 217, utilice la llamada siguiente enun desencadenante:execute send_email( critical.Node, critical.Severity, ’Netcool E-mail’,’root@localhost’, critical.Summary, ’localhost’);

Conceptos relacionados:“Componentes de un procedimiento SQL” en la página 208Referencia relacionada:“Creación de procedimientos externos (mandato CREATE PROCEDURE)” en lapágina 217

Eliminación de procedimientosUtilice el mandato DROP PROCEDURE para suprimir un procedimiento existente.

No puede descartar un procedimiento al que se hace referencia en otros objetos,por ejemplo, desencadenantes.

SintaxisDROP PROCEDURE procedure_name;

Ejemplodrop procedure testproc;

Configuración de la automatización mediante desencadenantesPuede utilizar la automatización para detectar cambios en el ObjectServer yejecutar respuestas automáticas a dichos cambios. Esto permite al ObjectServerprocesar alertas sin necesidad de que un operador deba desempeñar una acción.También puede utilizar la automatización para gestionar la optimización dealmacenamiento, lo que reduce la cantidad de datos retenidos en el objectservermediante la eliminación de sucesos duplicados.

Un conjunto de automatizaciones estándar se incluye con Tivoli netcool/Omnibus.Estas automatizaciones se crean durante la inicialización de base de datos.

Creación, modificación y supresión de grupos dedesencadenante

Cada desencadenante pertenece a un grupo de desencadenante, que es unacolección de desencadenantes relacionados.

Creación de un grupo de desencadenantes (mandato CREATETRIGGER GROUP)Utilice el mandato CREATE TRIGGER GROUP para crear un nuevo grupo.Cuando crea un desencadenante, debe asignarse a un grupo de desencadenante.

SintaxisCREATE TRIGGER GROUP trigger_group_name;

El valor trigger_group_name debe ser exclusivo del ObjectServer y debe estar enconformidad con las convenciones de denominación de ObjectServer.

Capítulo 5. SQL de ObjectServer 219

Page 234: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Ejemplocreate trigger group update_database_triggers;

Conceptos relacionados:“Convenciones de denominación para los objetos ObjectServer” en la página 149

Modificación de un grupo de desencadenantes (mandato ALTERTRIGGER GROUP)Utilice el mandato ALTER TRIGGER GROUP para habilitar o inhabilitar un grupode desencadenantes existente.

SintaxisALTER TRIGGER GROUP trigger_group_name | expressionSET ENABLED { TRUE | FALSE };

Un grupo de desencadenantes está habilitado de forma predeterminada.

Desencadenante puede especificar un nombre de grupo de o una expresión dedesencadenante con este mandato. Si se trata de una expresión, el nombre no seevalúa hasta el momento de la ejecución.

Ejemplos

Este ejemplo inhabilita el grupo de desencadenantes update_database_triggers.alter trigger group update_database_triggers set enabled false;

Este ejemplo inhabilita todos los desencadenantes excepto los de pasarela(pertenecientes al grupo de desencadenante gateway_triggers) listando de formaindividual los nombres de todos los demás grupos de desencadenante que debeninhabilitarse.Create trigger disable_triggersGroup gateway_triggersPriority 1on signal gw_counterpart_upbeginalter trigger group trigger_group_name_1 set enabled false;...alter trigger group trigger_group_name_n set enabled false;end;

Este ejemplo utiliza una expresión para inhabilitar todos los desencadenantesexcepto los desencadenantes de pasarela que pertenecen al grupo dedesencadenantes gateway_triggers. En tiempo de ejecución, el bucle FOR EACHROW se utiliza para realizar las acciones en la expresión, en cada fila de la tablacatalog.triggers.Create trigger disable_triggersGroup gateway_triggersPriority 1on signal gw_counterpart_upbeginfor each row tg in catalog.triggers wheretg.GroupName <> ’gateway_triggers’beginalter trigger group tg.GroupName set enabled false;end;end;

220 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 235: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Supresión de un grupo de desencadenantes (mandato DROPTRIGGER GROUP)Utilice el mandato DROP TRIGGER GROUP para eliminar un grupo dedesencadenantes.

SintaxisDROP TRIGGER GROUP trigger_group_name;

No puede eliminar un grupo de desencadenantes si éste contiene desencadenantes.

Ejemplodrop trigger group update_database_triggers;

Creación, modificación y supresión de desencadenantesPuede utilizar desencadenantes de bases de datos, desencadenantes temporales ydesencadenantes de señales en automatizaciones.

Los desencadenantes de base de datos se activan si produce alguno de lossiguientes cambios de base de datos:v Se realiza un intento de insertar una fila en una tabla.v Se realiza un intento de actualizar una fila de una tabla.v Se realiza un intento de suprimir una fila de una tabla.v Se realiza un intento de insertar una fila en una tabla, pero ya existe una fila con

el mismo valor de clave primaria Identificador. Puede utilizar undesencadenante reinsert para omitir duplicados en el objectserver.

Nota: Puede crear su propio desencadenante de eliminación de duplicados paraque se produzca una acción diferente.

Los desencadenantes temporales se activan repetidamente basándose en unafrecuencia determinada.

Por ejemplo, puede utilizar un desencadenante temporal para suprimir todas lasfilas vacías ( gravedad = 0 ) de la tabla de estado de las alertas que no han sidomodificadas en un periodo determinado de tiempo.

Los desencadenantes de señal se activan cuando se emite una señal del sistemapredefinida o cuando se emite una señal definida por el usuario utilizando elmandato RAISE SIGNAL.

Por ejemplo, puede enviar un correo electrónico a un operador cuando elobjectserver se inicia o se detiene porque se generan señales del sistema.

No tiene que hacer nada para crear o configurar las señales del sistema. Debecrear, emitir i eliminar señales definidas por el usuario de forma explícita.

Capítulo 5. SQL de ObjectServer 221

Page 236: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Creación de desencadenantes de base de datos (mandatoCREATE TRIGGER)Utilice el mandato CREAT TRIGGER para crear desencadenantes de base de datosque se activen cuando se produzca una modificación o intentos de modificación enuna tabla de objectserver (o cuando una modificación o intentos de modificaciónafecten a la vista de una tabla base).

SintaxisCREATE [ OR REPLACE ] TRIGGER trigger_nameGROUP group_name[ DEBUG { TRUE | FALSE } ][ ENABLED { TRUE | FALSE } ]PRIORITY integer[ COMMENT ’comment_string’ ]{ BEFORE | AFTER } { INSERT | UPDATE | DELETE | REINSERT }ON database_name.table_nameFOR EACH { ROW | STATEMENT }[ WHEN condition ][ DECLARE variable_declaration ]BEGIN

trigger_actionEND;

Si hay una posibilidad de que ya exista un desencadenante con el mismo nombreque el que desea crear, utilice las palabras clave opcionales OR REPLACE. Si existeel desencadenante, se sustituye por el que se está creando. Si el desencadenante noexiste, se creará uno nuevo.

El valor nombre_desencadenante debe ser único en el producto ObjectServer y debecumplir con los convenios de denominación del producto ObjectServer.

El valor nombre_grupo puede ser cualquier grupo de desencadenantes que ya sehaya creado utilizando el mandato CREATE TRIGGER GROUP.

Si DEBUG se ha establecido en TRUE, la información de depuración se envía alregistro de mensajes del producto ObjectServer, si el nivel de mensaje se haestablecido en debug.

Si se ha establecido ENABLED en TRUE, el desencadenante se activa cuando seproduce el incidente asociado. De lo contrario, el desencadenante no se activacuando se produce el incidente.

El valor PRIORITY (prioridad) de un desencadenante determina el orden en que elproducto ObjectServer activa los desencadenantes cuando hay más de undesencadenante asociado al mismo incidente. La prioridad puede estar entre 1 y20. Cuando más bajo sea el número, más alta será la prioridad, por lo que undesencadenante con una prioridad de 2 se activa antes que un desencadenante conuna prioridad de 3. Si se activa más de un desencadenante de la misma prioridadpor tener el mismo incidente, el orden en que se activan estos desencadenantes noestá determinado.

Utilice la palabra clave opcional COMMENT para añadir un comentario(serie_comentario) para el desencadenante.

La palabra clave de temporización BEFORE o AFTER especifica si eldesencadenante se ejecuta antes o después de la modificación de base de datos queha ocasionado que se active el desencadenante. Por ejemplo, puede crear undesencadenante BEFORE que evalúa el nombre del usuario antes de que una fila

222 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 237: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

en la tabla alerts.status se suprima. En el desencadenante, puede detectar si elusuario puede suprimir de la tabla alerts.status, y si no, evitar que tenga lugar lamodificación de la base de datos. Con un desencadenante AFTER, la modificaciónde la base de datos siempre tiene lugar.

database_name . table_name es el nombre de la base de datos y la tabla afectados porla acción de desencadenante.

Un desencadenante de base de datos se activa en uno de los niveles siguientes:v FOR EACH ROW (conocido como desencadenante a nivel de fila ): los

desencadenantes de nivel de fila se activan una vez para cada fila devuelta comoresultado de la modificación de la base de datos.

v FOR EACH STATMENT (conocido como desencadenante de nivel de sentencia ): losdesencadenantes de nivel de sentencia se activan una vez para cadamodificación de base de datos.

Nota: Sólo los desencadenantes a nivel de fila se pueden definir para activarse eninserciones y reinserciones.

Nota: Los desencadenantes de nivel de sentencia BEFORE siempre se activan antesque los desencadenantes de nivel de fila BEFORE, y los desencadenantes de nivel desentencia AFTER siempre se activan después de los desencadenant es de nivel defil AFTER, independientemente de la prioridad del desencadenante.

Utilice la cláusula opcional WHEN para probar una determinada condición antes deejecutar la acción del desencadenante. Si no se cumple la condición, no se ejecutarála acción del desencadenante.

De forma opcional puede declarar variables del desencadenante local parautilizarlas en el cuerpo del desencadenante. Estas variables se declaran y seutilizan de la misma forma que las variables de procedimiento. Sin embargo, lasvariables de desencadenante son estáticas, por lo que conservan su valor entre lostiempos en que se ejecuta el desencadenante.

Ejemplo

Se genera una señal de base de datos como resultado de la sentencia SQLsiguiente:DELETE FROM alerts.status WHERE Severity = 5;

Cuando se ejecuta esta sentencia, el objectserver suprime todas las filas de la tablaalerts.status con una gravedad de 5. Si hay 20 filas en la tabla con este gravedad yel nivel se establece en FOR EACH ROW, se suprimirán 20 filas y eldesencadenante se activa 20 veces. Si el nivel se establece en FOR EACHSTATEMENT, el desencadenante se genera una vez.Conceptos relacionados:“Convenciones de denominación para los objetos ObjectServer” en la página 149“Condiciones” en la página 183Referencia relacionada:“Ejecución de mandatos en acciones de desencadenante” en la página 229“Procedimientos recomendados para la creación de desencadenantes” en la página343

Capítulo 5. SQL de ObjectServer 223

Page 238: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Variables implícitas NEW y OLD en desencadenantes de bajo nivel:

Además de las variables locales declaradas en el desencadenante, losdesencadenantes de nivel de fila tienen acceso a variables implícitas cuyos valoresse establecen automáticamente por el sistema.

La variable OLD hace referencia al valor de una columna antes de la incidencia seproduzca; La variable NEW hace referencia a una columna afectada por laincidencia, una vez que haya pasado. Puede utilizar expresiones para realizaroperaciones de lectura y asignación de valores a las variables de fila.

Ciertas operaciones de las variables de fila NEW o OLD pueden no ser accesibles omodificables según el tipo de modificación. Por ejemplo, si el objectserver suprimeuna fila, no habrá ninguna fila NEW que leer o modificar.

La tabla siguiente muestra las variables NEW y OLD están disponibles en funciónde la operación de la base de datos.

Tabla 49. Disponibilidad de variables de fila especiales

Operación

Modalidaddetemporización

¿Está lavariableNEWdisponible?

¿Se puedemodificar lavariableNEW?

¿Está lavariable OLDdisponible?

¿Se puedemodificar lavariableOLD?

INSERT BEFORE Y Y N N

INSERT AFTER Y N N N

UPDATE BEFORE Y Y Y N

UPDATE AFTER Y N N N

DELETE BEFORE N N Y N

DELETE AFTER N N Y N

REINSERT BEFORE Y N Y Y

REINSERT AFTER Y N N N

Nota: En un desencadenante posterior a la reinserción, sólo se encuentradisponible la variable NEW y esto representa los datos de la sentencia INSERT. Porejemplo, si no se especifica el Tally en la sentencia INSERT, new.Tally tendrá elvalor por defecto de 0 (cero).

Ejemplo

El desencadenante de base de datos siguiente utiliza la variable NEW paraactualizar la columna statechange cuando una fila de la tabla alerts.status semodifica para cambiar la indicación de la hora.create trigger SetStateChangegroup default_triggerspriority 1before update on alerts.statusfor each rowbegin

set new.StateChange = getdate;end;

224 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 239: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Creación de desencadenantes temporales (mandato CREATETRIGGER)Utilice el mandato CREATE TRIGGER para crear desencadenantes temporales quese activan a una frecuencia determinada.

SintaxisCREATE [ OR REPLACE ] TRIGGER trigger_nameGROUP group_name[ DEBUG { TRUE | FALSE } ][ ENABLED { TRUE | FALSE } ]PRIORITY integer[ COMMENT ’comment_string’EVERY integer { HOURS | MINUTES | SECONDS }[ EVALUATE SELECT_cmd BIND AS variable_name ][ WHEN condition ][ DECLARE variable_declaration ]

BEGINtrigger_action

END;

Si hay una posibilidad de que ya exista un desencadenante con el mismo nombreque el que desea crear, utilice las palabras clave opcionales OR REPLACE. Si existeel desencadenante, se sustituye por el que se está creando. Si el desencadenante noexiste, se creará uno nuevo.

El valor nombre_desencadenante debe ser único en el producto ObjectServer y debecumplir con los convenios de denominación del producto ObjectServer.

El valor nombre_grupo puede ser cualquier grupo de desencadenantes que ya sehaya creado utilizando el mandato CREATE TRIGGER GROUP.

Si DEBUG se ha establecido en TRUE, la información de depuración se envía alregistro de mensajes del producto ObjectServer, si el nivel de mensaje se haestablecido en debug.

Si se ha establecido ENABLED en TRUE, el desencadenante se activa cuando seproduce el incidente asociado. De lo contrario, el desencadenante no se activacuando se produce el incidente.

El valor PRIORITY (prioridad) de un desencadenante determina el orden en que elproducto ObjectServer activa los desencadenantes cuando hay más de undesencadenante asociado al mismo incidente. La prioridad puede estar entre 1 y20. Cuando más bajo sea el número, más alta será la prioridad, por lo que undesencadenante con una prioridad de 2 se activa antes que un desencadenante conuna prioridad de 3. Si se activa más de un desencadenante de la misma prioridadpor tener el mismo incidente, el orden en que se activan estos desencadenantes noestá determinado.

Utilice la palabra clave opcional COMMENT para añadir un comentario(serie_comentario) para el desencadenante.

Dentro de un desencadenante temporal, debe especificar con qué frecuencia seactivará el desencadenante. Especifique un valor en segundos entero (la unidad detiempo por omisión), minutos u horas.

Utilice la cláusula opcional EVALUATE para construir un conjunto de resultadostemporal a partir de una sola sentencia SELECT que debe procesarse entrigger_action . La sentencia SELECT no puede contener una cláusula ORDER BY.

Capítulo 5. SQL de ObjectServer 225

Page 240: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Nota: La cláusula EVALUATE debe calificar completamente cualquier tabla, que seincluya en la sentencia SELECT, con un nombre de base de datos. Por ejemplo, seconsidera no válida la sintaxis siguiente: evaluate select Node from status... Lasintaxis correcta es: evaluate select Node from alerts.status...

Una cláusula EVALUATE debe sustituirse principalmente por una FOR EACHROW. Utilice una cláusula EVALUATE sólo cuando una cláusula GROUP BY seanecesaria.

Utilice la cláusula opcional WHEN para probar una determinada condición antes deejecutar la acción del desencadenante. Si no se cumple la condición, no se ejecutarála acción del desencadenante.

De forma opcional puede declarar variables del desencadenante local parautilizarlas en el cuerpo del desencadenante. Estas variables se declaran y seutilizan de la misma forma que las variables de procedimiento. Sin embargo, lasvariables de desencadenante son estáticas, por lo que conservan su valor entre lostiempos en que se ejecuta el desencadenante.

Ejemplo

Este desencadenante temporal suprime todas las filas borradas (Gravedad = 0) dela tabla alerts.status que no han sido modificdas en los dos últimos minutos.create trigger DeleteClearsgroup my_triggerspriority 1every 60 secondsbegin

delete from alerts.status where Severity = 0and StateChange < (getdate - 120);

end;

Conceptos relacionados:“Convenciones de denominación para los objetos ObjectServer” en la página 149“Condiciones” en la página 183Referencia relacionada:“Ejecución de mandatos en acciones de desencadenante” en la página 229“Procedimientos recomendados para la creación de desencadenantes” en la página343

Creación de desencadenantes de señal (mandato CREATETRIGGER)Utilice el mandato CREATE TRIGGER para crear un desencadenante de señal quese activa en respuesta a incidencias en el objectserver, o que se activa en respuestaa una señal definida por el usuario.

SintaxisCREATE [ OR REPLACE ] TRIGGER trigger_nameGROUP group_name[ DEBUG { TRUE | FALSE } ][ ENABLED { TRUE | FALSE } ]PRIORITY integer[ COMMENT ’comment_string’ ]ON SIGNAL { system_signal_name | user_signal_name }[ EVALUATE SELECT_cmd BIND AS variable_name ][ WHEN condition ]

226 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 241: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

[ DECLARE variable_declaration ]BEGINtrigger_action

END;

Si hay una posibilidad de que ya exista un desencadenante con el mismo nombreque el que desea crear, utilice las palabras clave opcionales OR REPLACE. Si existeel desencadenante, se sustituye por el que se está creando. Si el desencadenante noexiste, se creará uno nuevo.

El valor nombre_desencadenante debe ser único en el producto ObjectServer y debecumplir con los convenios de denominación del producto ObjectServer.

El valor nombre_grupo puede ser cualquier grupo de desencadenantes que ya sehaya creado utilizando el mandato CREATE TRIGGER GROUP.

Si DEBUG se ha establecido en TRUE, la información de depuración se envía alregistro de mensajes del producto ObjectServer, si el nivel de mensaje se haestablecido en debug.

Si se ha establecido ENABLED en TRUE, el desencadenante se activa cuando seproduce el incidente asociado. De lo contrario, el desencadenante no se activacuando se produce el incidente.

El valor PRIORITY (prioridad) de un desencadenante determina el orden en que elproducto ObjectServer activa los desencadenantes cuando hay más de undesencadenante asociado al mismo incidente. La prioridad puede estar entre 1 y20. Cuando más bajo sea el número, más alta será la prioridad, por lo que undesencadenante con una prioridad de 2 se activa antes que un desencadenante conuna prioridad de 3. Si se activa más de un desencadenante de la misma prioridadpor tener el mismo incidente, el orden en que se activan estos desencadenantes noestá determinado.

Utilice la palabra clave opcional COMMENT para añadir un comentario(serie_comentario) para el desencadenante.

El nombre ON SIGNAL puede ser el nombre de una señal de sistema o definidapor el usuario que activa el desencadenante.

La cláusula opcional EVALUATE le permite crear un único conjunto de resultadosdesde una sentencia SELECT para que se procese en trigger_action . La sentenciaSELECT no puede contener una cláusula ORDER BY.

Nota: La cláusula EVALUATE debe calificar completamente cualquier tabla, que seincluya en la sentencia SELECT, con un nombre de base de datos. Por ejemplo, seconsidera no válida la sintaxis siguiente: evaluate select Node from status... Lasintaxis correcta es: evaluate select Node from alerts.status...

Cuando se genera una señal de sistema o definida por el usuario, los atributos queidentifican la causa de la señal están conectados a la señal. Estos atributos se pasancomo variables implícitas en el desencadenante de señal asociado.

Utilice la cláusula opcional WHEN para probar una determinada condición antes deejecutar la acción del desencadenante. Si no se cumple la condición, no se ejecutarála acción del desencadenante.

Capítulo 5. SQL de ObjectServer 227

Page 242: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

De forma opcional puede declarar variables del desencadenante local parautilizarlas en el cuerpo del desencadenante. Estas variables se declaran y seutilizan de la misma forma que las variables de procedimiento. Sin embargo, lasvariables de desencadenante son estáticas, por lo que conservan su valor entre lostiempos en que se ejecuta el desencadenante.Conceptos relacionados:“Convenciones de denominación para los objetos ObjectServer” en la página 149“Condiciones” en la página 183Referencia relacionada:“Señales del sistema y sus atributos” en la página 232“Procedimientos recomendados para la creación de desencadenantes” en la página343

Creación de una señal definida por usuario:

Utilice el mandato CREATE SIGNAL para crear una señal definida por usuario.Cuando se crea una señal, se define una lista de los atributos de tipo de datos.

SintaxisCREATE [ OR REPLACE ] SIGNAL signal_name[ (signal_attribute_name data_type,...) ][ COMMENT ’comment_string’ ]

El nombre de señal debe ser exclusivo dentro del objectserver de objectserver y acumplir con los convenios de denominación. No puede crear una señal definidapor el usuario con el mismo nombre que una señal del sistema.

Al definir atributos, especifique el nombre de atributo y cualquier tipo de datosobjectserver válido excepto varchar o incr.

Puede añadir un comentario después de la palabra clave opcional COMMENT.

Ejemplo

Para crear una señal denominada illegal_delete con atributos de serie de doscaracteres, user_name y row_summary , utilice el mandato:CREATE SIGNAL illegal_delete( user_name char(40), row_summary char(255) );

Entonces puede crear un desencadenante, como por ejemplo el desencadenante debase de datos previo a la inserción, para atrapar supresiones que están fuera delrango de horas de oficina estándar y plantear esta señal.create trigger DETECT_AN_ILLEGAL_DELETE

group default_triggerspriority 1before delete on alerts.statusfor each rowbeginif( ( (hourofday() > 17) and (minuteofhour() > 30) ) or (hourofday() < 9) ) then

raise signal ILLEGAL_DELETE %user.user_name, old.Summary;cancel;

end if;end;

228 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 243: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

El desencadenante de señal definida por el usuario siguiente, el cual sedesencadena por el desencadenante de base de datos anterior, ejecuta unprocedimiento externo para enviar una notificación por correo electrónico delintento de operación de supresión.create trigger AFTER_HOURS_DELETE_WARNING

group default_triggerspriority 1on signal ILLEGAL_DELETEbeginexecute MAIL_THE_BOSS( ’User ’ + ’%signal.user_name ’ +’attempted to remove the row ’ + %signal.row_summary + ’ at ’ +to_char(getdate) )

end;

Conceptos relacionados:“Convenciones de denominación para los objetos ObjectServer” en la página 149Referencia relacionada:“Especificación de tipos de datos para columnas” en la página 155

Generación de una señal definida por el usuario:

Utilice el mandato RAISE SIGNAL para generar una señal definida por el usuario.

SintaxisRAISE SIGNAL signal_name expression,...;

Las expresiones deben resolverse en un valor compatible con el tipo de datos delatributo asociado como se define utilizando el mandato CREATE SIGNAL.

EjemploRAISE SIGNAL illegal_delete %user.user_name, old.Summary;

Eliminación de una señal definida por usuario:

Utilice el mandato DROP SIGNAL para eliminar una señal definida por el usuario.

No puede eliminar una señal si un desencadenante hace referencia a ésta.

SintaxisDROP SIGNAL signal_name;

Ejecución de mandatos en acciones de desencadenantetrigger_action contiene un conjunto de mandatos que manipulan datos en el

objectserver.

Puede ejecutar los siguientes mandatos SQL en un desencadenante:ALTER SYSTEM BACKUPALTER SYSTEM DROP CONNECTIONALTER SYSTEM SETALTER TRIGGERALTER TRIGGER GROUPALTER USERUPDATEINSERTDELETEWRITE INTORAISE SIGNAL{ EXECUTE | CALL } PROCEDURE

Capítulo 5. SQL de ObjectServer 229

Page 244: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

El usuario que crea el desencadenante debe tener los permisos adecuados paraejecutar los mandatos del cuerpo de desencadenante.

Atención: No puede tener dependencias circulares en desencadenantes oprocedimientos; por ejemplo, no debe crear un desencadenante que llama a unprocedimiento que hace que se active el desencadenante original.

Puede utilizar las siguientes construcciones de programación adicionales en undesencadenante:v La sentencia de asignación SETv La sentencia IF THEN ELSEv La sentencia CASE WHENv El bucle FOR EACH ROWv El bucle FORReferencia relacionada:“Creación de desencadenantes de base de datos (mandato CREATE TRIGGER)” enla página 222“Sentencia SET” en la página 212“Sentencia IF THEN ELSE” en la página 212“Sentencia CASE WHEN” en la página 213“Bucle FOR EACH ROW” en la página 213“Bucle FOR” en la página 214

Utilización de variables de desencadenante en las condiciones yacciones de desencadenantePuede utilizar las variables de desencadenante para acceder a la información sobrelas ejecuciones anteriores y actuales del desencadenante. Utilice la notación%trigger para especificar variables de desencadenante. El símbolo % indica queestá haciendo referencia a una variable implícita. La palabra clave trigger hacereferencia al desencadenante actual.

Por ejemplo, para hacer referencia al recuento defila de desencadenante anterior,utilice la sintaxis siguiente:%trigger.previous_rowcount

Consejo: También puede utilizar el botón de ayuda % para seleccionar variables%trigger.

La siguiente tabla lista los atributos de sólo lectura disponibles en la cláusulaWHEN y la sección de acción de un desencadenante.

Tabla 50. Variables de desencadenante implícitas

Atributo de desencadenante Tipo de datos Descripción

%trigger.previous_condition BOOLEAN Valor de la condición en laúltima ejecución.

%trigger.previous_rowcount UNSIGNED Número de filas devueltas por lacláusula EVALUATE la últimavez que se ha activado eldesencadenante.

230 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 245: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 50. Variables de desencadenante implícitas (continuación)

Atributo de desencadenante Tipo de datos Descripción

%trigger.num_positive_rowcount UNSIGNED Número de activacionesconsecutivas con una o máscoincidencias en cláusulaEVALUATE.

%trigger.num_zero_rowcount UNSIGNED Número de activacionesconsecutivas con cerocoincidencias en cláusulaEVALUATE.

%rowcount UNSIGNED Número de filas que coincidencon la cláusula EVALUATEcuando se activa undesencadenante temporal.Nota: Esta variable no requiereel prefijo de palabra clavetrigger. El valor de la variablesólo se aplica si estáseleccionado si se compruebacomo la primera acción delcuerpo del desencadenante.Después de esto, el valor esindeterminado.

Nota: En un desencadenante de base de datos, la única variable dedesencadenante válida es %trigger.previous_condition. Todas las demás variablesde desencadenante proporcionan el resultado de una cláusula EVALUATE, que nose admite para los desencadenantes de base de datos.

Ejemplo

Este desencadenante de señal de sistema registra el nombre de cada usuario que seconecta a objectserver en un archivo.CREATE TRIGGER LogConnectionsGROUP default_triggersPRIORITY 1ON SIGNAL connectBEGINWRITE INTO file1 VALUES (’User’, %user.user_name, ’has logged on.’);END;

Referencia relacionada:Apéndice B, “Mandatos SQL, expresiones variables y botones de ayudante enherramientas, automatizaciones y listas de sucesos transitorios”, en la página 393“Variables de usuario implícitas en procedimientos y desencadenantes” en lapágina 215

Capítulo 5. SQL de ObjectServer 231

Page 246: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Señales del sistema y sus atributosCuando se emite una señal del sistema, se establecen los atributos que identificanla causa de la señal. Estos atributos se pasan como variables implícitas aldesencadenante de señal asociado.

Puede hacer referencia a las variables de señales del sistema utilizando la notación%signal en la sección de acción de un desencadenante de señal. El símbolo % indicaque se hace referencia a una variable implícita. La palabra clave señal hacereferencia a la señal pasada actualmente al desencadenante. Por ejemplo, parahacer referencia a la que se ha emitido una señal del sistema en un desencadenantede señal, utilice la sintaxis siguiente:%signal.at

Consejo: También puede utilizar el botón de ayudante % para seleccionar lasvariables %signal.

Las señales del sistema que puede emitir el ObjectServer o la pasarela son lassiguientes:v “Señal de inicio” en la página 233v “señal de conclusión” en la página 233v “Señal de conexión” en la página 233v “Señal de desconexión” en la página 233v “Señal backup_failed (error de copia de seguridad)” en la página 234v “Señal backup_succeeded (copia de seguridad correcta)” en la página 234v “Señal login_failed (error de inicio de sesión)” en la página 235v “Señal security_timeout” en la página 235v “Señal create_object” en la página 235v “Señal alter_object” en la página 236v “Señal drop_object” en la página 237v “Señal permission_denied” en la página 238v “Señal gw_counterpart_down” en la página 239v “Señal gw_counterpart_up” en la página 239v “Señal iduc_missed” en la página 239v “Señal iduc_connect” en la página 240v “Señal iduc_disconnect” en la página 240v “Señal iduc_data_fetch” en la página 241v “Señal resync_lock” en la página 241v “Señal resync_unlock” en la página 242v “Señal gw_resync_start” en la página 242v “Señal gw_resync_finish” en la página 242

Consejo: Puede consultar la tabla catalog.primitive_signals y la tablacatalog.primitive_signal_parameters para ver información sobre señales delsistema. Por ejemplo, para ver los atributos de cada señal del sistema, utilice elmandato SQL siguiente:SELECT * FROM catalog.primitive_signal_parameters ORDER BY SignalName,OrdinalPosition;

232 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 247: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Señal de inicio

La señal de inicio se emite cuando se inicia el ObjectServer. En la tabla siguiente sedescriben los atributos de esta señal.

Tabla 51. Atributos de la señal de inicio

Atributos Tipo de datos Descripción

server serie Indica el nombre del ObjectServer que se hainiciado.

node serie Indica el sistema en el que se ha iniciado elObjectServer.

at UTC Indica la hora a la que se ha iniciado el ObjectServer.

señal de conclusión

La señal de conclusión se emite al apagar el ObjectServer. En la tabla siguiente sedescriben los atributos de esta señal.

Tabla 52. Atributos de la señal de conclusión

Atributos Tipo de datos Descripción

server serie Indica el nombre del ObjectServer que ha concluido.

node serie Indica el sistema en el que se apaga el ObjectServer.

at UTC Indica la hora a la que se apaga el ObjectServer.

Señal de conexión

La señal de conexión se emite cuando un cliente conecta con el ObjectServer. En latabla siguiente se describen los atributos de esta señal.

Tabla 53. Atributos de la señal de conexión

Atributos Tipo de datos Descripción

process serie Indica el tipo de proceso de cliente conectado con elObjectServer.

description serie Contiene información adicional sobre el cliente quese ha conectado, donde proceda. Por ejemplo, si elcliente es una sonda, la descripción contiene elnombre de la sonda.

username serie Indica el nombre del usuario que se ha conectado alObjectServer.

node serie Indica el nombre del sistema cliente que se haconectado al ObjectServer.

connectionid int Identifica exclusivamente la conexión.

at UTC Indica la hora a la que se ha conectado el cliente.

Señal de desconexión

La señal de desconexión se emite cuando un cliente se desconecta del ObjectServer.En la tabla siguiente se describen los atributos de esta señal.

Capítulo 5. SQL de ObjectServer 233

Page 248: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 54. Atributos de la señal de desconexión

Atributos Tipo de datos Descripción

process serie Indica el tipo de proceso que se ha desconectado delObjectServer.

description serie Contiene información adicional sobre el cliente quese ha desconectado, donde proceda. Por ejemplo, siel cliente es una sonda, la descripción contiene elnombre de la sonda.

username serie Indica el nombre del usuario que se ha desconectadodel ObjectServer.

node serie Indica el nombre del sistema cliente que se hadesconectado del ObjectServer.

connectionid int Identifica exclusivamente la conexión.

at UTC Indica la hora a la que se ha desconectado el cliente.

Señal backup_failed (error de copia de seguridad)

La señal backup_failed se emite cuando falla un intento de realizar una copia deseguridad del ObjectServer. En la tabla siguiente se describen los atributos de estaseñal.

Tabla 55. Atributos de la señal backup_failed

Atributos Tipo de datos Descripción

error serie Indica un motivo por el que ha fallado un intento decopia de seguridad.

at UTC Indica la hora a la que ha tenido lugar el intento decopia de seguridad.

path_prefix serie Indica el directorio en el que la copia de seguridadha intentado escribir.

elapsed_time real Indica la cantidad de tiempo durante el que se haejecutado la copia de seguridad antes de que fallara.

node serie Indica el nombre del sistema desde el que se haejecutado la copia de seguridad.

Señal backup_succeeded (copia de seguridad correcta)

La señal backup_succeede se emite cuando se realiza correctamente una copia deseguridad del ObjectServer. En la tabla siguiente se describen los atributos de estaseñal.

Tabla 56. Atributos de la señal backup_succeeded

Atributos Tipo de datos Descripción

at UTC Indica la hora a la que ha tenido lugar la copia deseguridad.

path_prefix serie Indica el directorio en el que se escribe la copia deseguridad.

elapsed_time real Indica la cantidad de tiempo que ha tardado enrealizarse la copia de seguridad.

node serie Indica el nombre del sistema desde el que se haejecutado la copia de seguridad.

234 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 249: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Señal login_failed (error de inicio de sesión)

La señal login_failed se emite cuando un cliente no puede iniciar sesión en elObjectServer. En la tabla siguiente se describen los atributos de esta señal.

Tabla 57. Atributos de la señal login_failed

Atributos Tipo de datos Descripción

process serie Indica el nombre del proceso que no ha podidoconectarse porque se ha denegado el inicio desesión.

username serie Indica el nombre del usuario que no ha podidoconectarse porque se ha denegado el inicio desesión.

node serie Indica el nombre del sistema cliente que no hapodido conectarse porque se ha denegado el iniciode sesión.

at UTC Indica la hora a la que el cliente no ha podidoconectarse porque se ha denegado el inicio desesión.

Señal security_timeout

La señal security_timeout se emite cuando un intento de inicio de sesión en elObjectServer supera el tiempo de espera. En la tabla siguiente se describen losatributos de esta señal.

Tabla 58. Atributos de la señal security_timeout

Atributos Tipo de datos Descripción

process serie Indica el nombre del proceso que no ha podidoconectarse porque las credenciales de inicio desesión no se han podido validar.

username serie Indica el nombre del usuario que no ha podidoconectarse porque las credenciales de inicio desesión no se han podido validar.

node serie Indica el nombre del sistema cliente que no hapodido conectarse porque las credenciales de iniciode sesión no se han podido validar.

at UTC Indica la hora a la que el cliente no ha podidoconectarse porque las credenciales de inicio desesión no se han podido validar.

Señal create_object

La señal create_object se emite cuando se crea un objeto en el ObjectServer. En latabla siguiente se describen los atributos de esta señal.

Capítulo 5. SQL de ObjectServer 235

Page 250: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 59. Atributos de la señal create_object

Atributos Tipo de datos Descripción

objecttype serie Indica el tipo de objeto, que es de uno de los tipossiguientes:

v CREATE DATABASE

v CREATE TABLE

v CREATE INDEX

v CREATE TRIGGER GROUP

v CREATE TRIGGER

v CREATE PROCEDURE

v CREATE RESTRICTION FILTER

v CREATE USER SIGNAL

v CREATE FILE

v CREATE USER

v CREATE GROUP

v CREATE ROLE

parentname serie Indica el nombre del objeto padre. Para losdesencadenantes, es el nombre del grupo dedesencadenantes. En el caso de las tablas, es elnombre de la base de datos. Otros objetos no tienenun objeto padre.

name serie Indica el nombre del objeto. Por ejemplo, el valor dela tabla alerts.status es status.

username serie Indica el nombre del usuario que ha ejecutado elmandato.

server serie Indica el nombre del ObjectServer al que se haañadido el objeto.

node serie Indica el nombre del sistema que está ejecutando elObjectServer al que se ha añadido el objeto.

hostname serie Indica el nombre del sistema cliente desde el que seha realizado la solicitud de adición del objeto.

at UTC Indica la hora a la que se ha añadido el objeto.

Señal alter_object

La señal alter_object se emite cuando se altera un objeto en el ObjectServer. En latabla siguiente se describen los atributos de esta señal.

236 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 251: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 60. Atributos de la señal alter_object

Atributos Tipo de datos Descripción

objecttype serie Indica el tipo de objeto, que es de uno de los tipossiguientes:

v ALTER TABLE

v ALTER TRIGGER GROUP

v ALTER TRIGGER

v ALTER PROCEDURE

v ALTER RESTRICTION FILTER

v ALTER USER SIGNAL

v ALTER FILE

v ALTER USER

v ALTER GROUP

v ALTER ROLE

Nota: Los permisos ALTER PROCEDURE, ALTERRESTRICTION FILTER y ALTER USER SIGNAL sonobligatorios si se ejecuta un mandato CREATE oREPLACE en un objeto de uno de estos tipos y elobjeto ya existe. Debe tener el permiso ALTERadecuado aunque no haya ningún mandato ALTERpara esos objetos.

parentname serie Indica el nombre del objeto padre. Para losdesencadenantes, es el nombre del grupo dedesencadenantes. En el caso de las tablas, es elnombre de la base de datos. Otros objetos no tienenun objeto padre.

name serie Indica el nombre del objeto. Por ejemplo, el valor dela tabla alerts.status es status.

username serie Indica el nombre del usuario que ha ejecutado elmandato.

server serie Indica el nombre del ObjectServer en el que se haalterado el objeto.

node serie Indica el nombre del sistema que está ejecutando elObjectServer en el que se ha alterado el objeto.

hostname serie Indica el nombre del sistema cliente desde el que seha realizado la solicitud de alteración del objeto.

at UTC Indica la hora a la que se ha alterado el objeto.

Señal drop_object

La señal drop_object se emite cuando se descarta un objeto en el ObjectServer. Enla tabla siguiente se describen los atributos de esta señal.

Capítulo 5. SQL de ObjectServer 237

Page 252: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 61. Atributos de la señal drop_object

Atributos Tipo de datos Descripción

objecttype serie Indica el tipo de objeto, que es de uno de los tipossiguientes:

v DROP DATABASE

v DROP TABLE

v DROP INDEX

v DROP TRIGGER GROUP

v DROP TRIGGER

v DROP PROCEDURE

v DROP RESTRICTION FILTER

v DROP USER SIGNAL

v DROP FILE

v DROP USER

v DROP GROUP

v DROP ROLE

parentname serie Indica el nombre del objeto padre. Para losdesencadenantes, es el nombre del grupo dedesencadenantes. En el caso de las tablas, es elnombre de la base de datos. Otros objetos no tienenun objeto padre.

name serie Indica el nombre del objeto. Por ejemplo, el valor dela tabla alerts.status es status.

username serie Indica el nombre del usuario que ha ejecutado elmandato.

server serie Indica el nombre del ObjectServer del que se hadescartado el objeto.

node serie Indica el nombre del sistema que está ejecutando elObjectServer de que se ha descartado el objeto.

hostname serie Indica el nombre del sistema cliente desde el que seha realizado la solicitud de descarte del objeto.

at UTC Indica la hora a la que se ha descartado el objeto.

Señal permission_denied

La señal permission_denied se emite cuando se deniega el permiso para realizaruna operación. En la tabla siguiente se describen los atributos de esta señal.

Tabla 62. Atributos de la señal permission_denied

Atributos Tipo de datos Descripción

username serie Indica el nombre del usuario que ha realizado lasolicitud que ha ocasionado el error de permisodenegado.

server serie Indica el nombre del ObjectServer que ha generadoel error de permiso denegado.

node serie Indica el nombre del sistema que ejecuta elObjectServer que ha generado el error de permisodenegado.

238 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 253: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 62. Atributos de la señal permission_denied (continuación)

Atributos Tipo de datos Descripción

hostname serie Indica el nombre del sistema cliente desde el que seha realizado la solicitud que ha ocasionado el errorde permiso denegado.

at UTC Indica la hora a la que se ha producido el error depermiso denegado.

sql_cmd serie Indica el mandato SQL que ha ocasionado el errorde permiso denegado.

Señal gw_counterpart_down

La pasarela emite una señal gw_counterpart_down en el ObjectServer de reservacuando detecta que el ObjectServer primario no está disponible. En la tablasiguiente se describen los atributos de esta señal.

Tabla 63. Atributos de la señal gw_counterpart_down

Atributos Tipo de datos Descripción

server serie Indica el nombre del ObjectServer equivalente queha fallado en un par de migración traserror/restablecimiento.

node serie Indica el nombre del sistema desde el que se haejecutado el ObjectServer equivalente.

at UTC Indica la hora a la que se ha iniciado el ObjectServerequivalente.

gateway_name serie Indica el nombre de la pasarela entre losObjectServers primario y de reserva.

Señal gw_counterpart_up

La pasarela emite una señal gw_counterpart_up en el ObjectServer de reservacuando detecta que el ObjectServer primario vuelve a estar disponible. En la tablasiguiente se describen los atributos de esta señal.

Tabla 64. Atributos de señal gw_counterpart_up

Atributos Tipo de datos Descripción

server serie Indica el nombre del ObjectServer equivalente quevuelve a estar disponible en un par de migracióntras error/restablecimiento.

node serie Indica el nombre del sistema desde el que se haejecutado el ObjectServer equivalente.

at UTC Indica la hora a la que se ha iniciado el ObjectServerequivalente.

gateway_name serie Indica el nombre de la pasarela entre losObjectServers primario y de reserva.

Señal iduc_missed

La señal iduc_missed se emite siempre que un cliente de escritorio o pasarela nopuede responder a una solicitud de IDUC del ObjectServer. En la tabla siguiente sedescriben los atributos de esta señal.

Capítulo 5. SQL de ObjectServer 239

Page 254: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 65. Atributos de la señal iduc_missed

Atributos Tipo de datos Descripción

process serie Indica el tipo de proceso de cliente que no hapodido responder a la solicitud IDUC delObjectServer.

description serie Contiene información adicional sobre el cliente,donde proceda.

username serie Indica el nombre del usuario que se ha conectado alObjectServer.

node serie Indica el nombre del sistema cliente que se haconectado al ObjectServer.

connectionid int Identifica exclusivamente la conexión.

at UTC Indica la hora a la que se ha perdido el ciclo deIDUC.

missed_cycles int Indica el número de ciclos de IDUC que se hanperdido de forma consecutiva.

Señal iduc_connect

La señal iduc_connect se emite cuando un cliente establece una conexión IDUC. Enla tabla siguiente se describen los atributos de esta señal.

Tabla 66. Atributos de la señal iduc_connect

Atributos Tipo de datos Descripción

process serie Indica el tipo de proceso de cliente conectado con elObjectServer.

description serie Contiene información adicional sobre el cliente quese ha conectado, donde proceda. Por ejemplo, si elcliente es una sonda, la descripción contiene elnombre de la sonda.

username serie Indica el nombre del usuario que se ha conectado alObjectServer.

node serie Indica el nombre del sistema cliente que se haconectado al ObjectServer.

conn_id int Indica el ID de la conexión.

Señal iduc_disconnect

La señal iduc_disconnect se emite cuando un cliente desconecta una conexión deIDUC establecida. En la tabla siguiente se describen los atributos de esta señal.

Tabla 67. Atributos de la señal iduc_disconnect

Atributos Tipo de datos Descripción

process serie Indica el tipo de proceso de cliente que se hadesconectado del ObjectServer.

description serie Contiene información adicional sobre el cliente quese ha desconectado, donde proceda. Por ejemplo, siel cliente es una sonda, la descripción contiene elnombre de la sonda.

240 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 255: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 67. Atributos de la señal iduc_disconnect (continuación)

Atributos Tipo de datos Descripción

username serie Indica el nombre del usuario que se ha desconectadodel ObjectServer.

node serie Indica el nombre del sistema cliente que se hadesconectado del ObjectServer.

conn_id int Indica el ID de la conexión.

Señal iduc_data_fetch

La señal iduc_data_fetch se emite siempre que un cliente de IDUC recupera suscambios de IDUC del ObjectServer. En la tabla siguiente se describen los atributosde esta señal.

Tabla 68. Atributos de la señal iduc_data_fetch

Atributos Tipo de datos Descripción

process serie Indica el tipo de proceso de cliente que ha solicitadocambios de IDUC pendientes al ObjectServer.

description serie Contiene información adicional sobre el cliente,donde proceda. Por ejemplo, si el cliente es unasonda, la descripción contiene el nombre de lasonda.

username serie Indica el nombre del usuario que se ha conectado alObjectServer.

node serie Indica el nombre del sistema cliente que se haconectado al ObjectServer.

connectionid int Identifica exclusivamente la conexión.

at UTC Indica la hora a la que el cliente ha recuperado loscambios correspondientes a la última notificación deIDUC.

Señal resync_lock

ObjectServer emite la señal resync_lock cuando se bloquea el bloqueo desincronización. En la tabla siguiente se describen los atributos de esta señal.

Tabla 69. Atributos de la señal resync_lock

Atributos Tipo de datos Descripción

process serie Indica el tipo de proceso de cliente que habloqueado el bloqueo de resincronización.

description serie Contiene información adicional sobre el cliente queha bloqueado el bloqueo de resincronización, dondeproceda. Por ejemplo, si el cliente es una sonda, ladescripción contiene el nombre de la sonda.

username serie Indica el nombre del usuario que ejecuta el proceso.

node serie Indica el nombre del sistema cliente conectado alObjectServer.

at UTC Indica la hora a la que se ha emitido la señal.

Capítulo 5. SQL de ObjectServer 241

Page 256: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Señal resync_unlock

ObjectServer emite la señal resync_unlock cuando se desbloquea el bloqueo desincronización. En la tabla siguiente se describen los atributos de esta señal.

Tabla 70. Atributos de la señal resync_unlock

Atributos Tipo de datos Descripción

process serie Indica el tipo de proceso de cliente que hadesbloqueado el bloqueo de resincronización.

description serie Contiene información adicional sobre el cliente queha desbloqueado el bloqueo de resincronización,donde proceda. Por ejemplo, si el cliente es unasonda, la descripción contiene el nombre de lasonda.

username serie Indica el nombre del usuario que ejecuta el proceso.

node serie Indica el nombre del sistema cliente conectado alObjectServer.

at UTC Indica la hora a la que se ha emitido la señal.

Señal gw_resync_start

La pasarela emite la señal gw_resync_start para indicar el inicio de una operaciónde resincronización. En la tabla siguiente se describen los atributos de esta señal.

Tabla 71. Atributos de la señal gw_resync_start

Atributos Tipo de datos Descripción

gateway_name serie Indica el nombre de la pasarela que está iniciando laresincronización.

node serie Indica el nombre de host del sistema en el que seestá ejecutando la pasarela.

at UTC Indica la hora a la que se ha iniciado laresincronización.

is_master Booleano Indica si el ObjectServer local es el maestro o elesclavo de la resincronización.

Señal gw_resync_finish

La pasarela emite la señal gw_resync_finish para indicar el fin de una operación deresincronización. En la tabla siguiente se describen los atributos de esta señal.

Tabla 72. Atributos de la señal gw_resync_finish

Atributos Tipo de datos Descripción

gateway_name serie Indica el nombre de la pasarela que está finalizandola resincronización.

node serie Indica el nombre de host del sistema en el que seestá ejecutando la pasarela.

at UTC Indica la hora a la que ha finalizado laresincronización.

is_master Booleano Indica si el ObjectServer local es el maestro o elesclavo de la resincronización.

242 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 257: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Referencia relacionada:Apéndice B, “Mandatos SQL, expresiones variables y botones de ayudante enherramientas, automatizaciones y listas de sucesos transitorios”, en la página 393

Creación de desencadenantes para la notificación de sucesosaceleradosPara dar soporte a la notificación de sucesos acelerados, cree desencadenantesposteriores a la inserción, posteriores a la actualización o posteriores a lareinserción que se conecten a la tabla alerts.status. En los desencadenantes,configure las condiciones para definir o identificar sucesos acelerados cuando seinserten o se actualicen en la tabla alerts.status, y para reenviar tales sucesos a losclientes relevantes de notificación de sucesos relevantes.

Hay dos mandatos SQL disponibles para utilizarlos con los desencadenantes: unmandato de seguimiento de sucesos rápido (o sucesos acelerados) (IDUC EVTFT) yun mandato de envío de mensajes (IDUC SNDMSG).

Consejo: Le puede parecer útil agrupar desencadenantes que den soporte a lanotificación de sucesos acelerada dentro de su propio grupo de desencadenantes.Conceptos relacionados:Capítulo 6, “Configuración de la notificación de sucesos acelerados”, en la página255

Activación de la notificación de sucesos acelerados (mandato IDUC EVTFT):

Utilice el mandato IDUC EVTFT para activar los notificadores emergentes desucesos acelerados que deben enviarse a clientes y para habilitar la funcionalidadde clic a la lista de sucesos del escritorio o la lista de sucesos activos de GUI web.

SintaxisIDUC EVTFT destination, action_type, row

Las variables de este mandato pueden tomar los siguientes valores:v destination = spid | iduc_channel

v spid = integer_expression (el ID de conexión de cliente literal)v iduc_channel = string_expression (nombre de canal)v action_type = INSERT | UPDATE | DELETEv row = variable (referencia de nombre de variable de una fila en la automatización)

Por ejemplo, si ha configurado un indicador de sucesos acelerados dentro delarchivo de reglas de analizador y ha añadido una columna para este distintivo enla tabla alerts.status, puede añadir una condición dentro de un desencadenanteposterior a inserción para examina el valor en esta columna. Si el valor cumplencon la notificación de sucesos acelerados, el suceso se reenvía entonces como unanotificación emergente a clientes específicos de notificación de sucesos acelerados.Puede definir la condición en el desencadenante utilizando el siguiente formato:beginif ( new.accelerated_event_column_name = 1 )theniduc evtft ’channel_name’ , insert , new ;

end if;end;

En esta sintaxis, accelerated_event_column_name es el nombre de la columna quecontiene el distintivo de suceso acelerado en la tabla alerts.status y channel_name es

Capítulo 5. SQL de ObjectServer 243

Page 258: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

el nombre de un canal sobre el que se difunden datos de sucesos acelerados. Tengaen cuenta que el nombre del canal es sensible a las mayúsculas y minúsculas, demodo que asegúrese de utilizar correctamente las mayúsculas y minúsculas en lasintaxis.

Ejemplocreate or replace trigger evtft_insertgroup channel_triggerspriority 1comment ’Fast track critical events from alerts.status’after insert on alerts.statusfor each rowbeginif ( new.FastTrack = 1 )theniduc evtft ’FastTrack’ , insert , new ;

end if;end;

Envío de mensajes a clientes AEN (mandato IDUC SNDMSG):

Utilice el mandato IDUC SNDMSG para enviar mensajes de información a uncliente de notificación de sucesos acelerados.

SintaxisIDUC SNDMSG destination, string_expression

Las variables de este mandato pueden tomar los siguientes valores:v destination = spid | iduc_channel

v spid = integer_expression (el ID de conexión de cliente literal)v iduc_channel = string_expression (nombre de canal)v string_expression = Texto descriptor para ser enviado como mensaje

Ejemplocreate trigger notify_isqlconngroup default_triggerspriority 1on signal connectbeginif( %signal.process = ’isql’ )theniduc sndmsg ’notif_isql’, ’ISQL Connection from ’ +%signal.node + ’ from user ’ +%signal.username + ’ at ’ +to_char(%signal.at)

end if;end;

244 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 259: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Modificación de un desencadenante (mandato ALTER TRIGGER)Utilice el mandato ALTER TRIGGER para cambiar los valores de undesencadenante existente. Puede cambiar más de un valor en un solo mandatoALTER TRIGGER.

SintaxisALTER TRIGGER nombre_desencadenanteSET PRIORITY enteroSET ENABLED { TRUE | FALSE }SET GROUP nombre_grupo_desencadenantesSET DEBUG { TRUE | FALSE };

Utilice SET PRIORITY para cambiar la prioridad de un desencadenante en un valorentre 1 y 20. Cuanto más bajo sea el número, mayor será al prioridad.

Utilice SET ENABLED TRUE para activar un desencadenante o SET ENABLEDFALSE para desactivar un desencadenante. Si un activador se ha establecido comoENABLED (habilitado), se activa cuando se produce el incidente asociado. Si unactivador no se ha establecido como ENABLED (habilitado), no se activa cuando seproduce el incidente asociado.

Utilice SET GROUP para cambiar el grupo del desencadenante por el nombre degrupo especificado.

Utilice SET DEBUG para activar o desactivar la depuración del desencadenante. Sise activa, la información de depuración se envía al registro de mensajes deObjectServer, si el nivel del mensaje se establece en debug.

Ejemploalter trigger mytrig set priority 1;

Supresión de un desencadenante (mandato DROP TRIGGER)Utilice el mandato DROP TRIGGER para eliminar un desencadenante existente.

SintaxisDROP TRIGGER trigger_name;

No puede eliminar un desencadenante si tiene objetos dependientes.

Ejemplodrop trigger mytrig;

Automatizaciones de Tivoli Netcool/OMNIbus estándarCon Tivoli Netcool/OMNIbus se incluye un conjunto de automatizacionesestándar. Dichas automatizaciones se crean durante la inicialización de la base dedatos.

Las automatizaciones estándar se almacenan en la ubicación: $NCHOME/omnibus/etc/automation.sql. Puede abrir el archivo automation.sql en un editor de texto y verla sintaxis de cada automatización. Se incluyen comentarios para describir lafinalidad de las automatizaciones. Algunas de las automatizaciones del archivoautomation.sql no están habilitadas de manera predeterminada.

También puede utilizar el administrador de Netcool/OMNIbus para navegar pordichas automatizaciones seleccionando el botón de menú Automatización en la

Capítulo 5. SQL de ObjectServer 245

Page 260: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

ventana Administrador de Netcool/OMNIbus. Es posible que detecte que algunosgrupos de desencadenantes están inhabilitados de manera predeterminada,mientras que los desencadenantes que pertenecen al grupo de desencadenantestienen un estado habilitado. Debe habilitar esos grupos de desencadenantes parapoder ejecutar los desencadenantes. Un ejemplo de este tipo es el grupo dedesencadenantes audit_config, que proporciona la capacidad de emitir alertassiempre que se efectúan cambios en los objetos del ObjectServer. Este grupo dedesencadenantes se puede utilizar como mecanismo de auditoría junto con losarchivos de registro de auditoría que se escriben en el directorio$NCHOME/omnibus/log.

Las funciones que realizan algunas de las automatizaciones estándar son:v Copia de seguridad del ObjectServerv Adición de alertas al ObjectServerv Inserción de entradas de diariov Eliminación de entradas redundantes de varias tablas

Las automatizaciones estándar se detallan en la tabla siguiente.

Tabla 73. Automatizaciones estándar

Nombre del desencadenante o delprocedimiento Descripción

audit_config_alter_class Crea una alerta que indica que se ha alterado unaclase.

audit_config_alter_col_visual Crea una alerta que indica que se ha alterado unelemento visual de columna.

audit_config_alter_conv Crea una alerta que indica que se ha alterado unaconversión.

audit_config_alter_menu Crea una alerta que indica que se ha alterado unmenú.

audit_config_alter_object Crea una alerta que indica que se ha alterado unobjeto.

audit_config_alter_prompt Crea una alerta que indica que se ha alterado unasolicitud.

audit_config_alter_property Crea una alerta que indica que se ha alterado unapropiedad.

audit_config_alter_tool Crea una alerta que indica que se ha alterado unaherramienta.

audit_config_create_class Crea una alerta que indica que se ha creado unaclase.

audit_config_create_col_visual Crea una alerta que indica que se ha creado unelemento visual de columna.

audit_config_create_conv Crea una alerta que indica que se ha creado unaconversión.

audit_config_create_menu Crea una alerta que indica que se ha creado unmenú.

audit_config_create_object Crea una alerta que indica que se ha creado unobjeto.

audit_config_create_prompt Crea una alerta que indica que se ha creado unasolicitud.

246 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 261: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 73. Automatizaciones estándar (continuación)

Nombre del desencadenante o delprocedimiento Descripción

audit_config_create_tool Crea una alerta que indica que se ha creado unaherramienta.

audit_config_drop_class Crea una alerta que indica que se ha descartado unaclase.

audit_config_drop_col_visual Crea una alerta que indica que se ha descartado unelemento visual de columna.

audit_config_drop_conv Crea una alerta que indica que se ha descartado unaconversión.

audit_config_drop_menu Crea una alerta que indica que se ha descartado unmenú.

audit_config_drop_object Crea una alerta que indica que se ha descartado unobjeto.

audit_config_drop_prompt Crea una alerta que indica que se ha descartado unasolicitud.

audit_config_drop_tool Crea una alerta que indica que se ha descartado unaherramienta.

audit_config_permission_denied Crea una alerta que indica que se ha denegado unpermiso.

automatic_backup Realiza una copia de seguridad de todos losalmacenes de memoria de ObjectServer en unasecuencia de ubicaciones que dependen del valordefinido de una variable num_backups.

automation_disable Inhabilita las automatizaciones que no debenejecutarse cuando el ObjectServer es un ObjectServerde reserva.

automation_enable Habilita las automatizaciones que se deben ejecutarcuando el ObjectServer es un ObjectServer primario.

backup_counterpart_down Habilita las automatizaciones que deben ejecutarsecuando el ObjectServer primario deja de funcionar yel ObjectServer de reserva actúa como ObjectServerprimario.

backup_counterpart_up Inhabilita las automatizaciones que no debenejecutarse en el ObjectServer de reserva cuando sereinicia el ObjectServer primario.

backup_failed Especifica una acción que realizar en una operaciónde copia de seguridad que ha fallado.

backup_startup Inhabilita las automatizaciones que no debenejecutarse cuando se inicia un ObjectServer designadocomo reserva.

backup_state_integrity Garantiza que sólo haya un registro presente en latabla de estado de copia de seguridad cancelando lasinserciones que pudiera haber.

backup_succeeded Especifica una acción que realizar tras una operaciónde copia de seguridad satisfactoria.

clean_details_table Realiza una limpieza de mantenimiento en la tablaalerts.details. Suprime las entradas no encontradas enla tabla alerts.status.

Capítulo 5. SQL de ObjectServer 247

Page 262: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 73. Automatizaciones estándar (continuación)

Nombre del desencadenante o delprocedimiento Descripción

clean_journal_table Realiza una limpieza de mantenimiento en la tablaalerts.journal. Suprime las entradas no encontradas enla tabla alerts.status.

connection_watch_connect Crea una alerta cuando se conecta un cliente nuevo.El proceso o el nombre de aplicación identificado porla señal se compara con la tablaalerts.application_types para identificar la gravedadadecuada y el tipo de suceso para la conexión. Unaconexión de pasarela, por ejemplo, se considera unaresolución (borrado de una desconexión), mientrasque una conexión de lista de sucesos es un suceso detipo 1, que se resolverá mediante una desconexión.

connection_watch_disconnect Crea una alerta cuando se desconecta un cliente. Elproceso o el nombre de aplicación identificado por laseñal se compara con la tabla alerts.application_typespara identificar la gravedad adecuada y el tipo desuceso para la desconexión. Una desconexión depasarela, por ejemplo, se considera un problema,mientras que una desconexión de lista de sucesos esuna resolución.

dedup_status_inserts Cuenta las inserciones de tabla de estadodesduplicado.

deduplicate_details Desduplica las filas en la tabla alerts.details.

deduplicate_iduc_stats Desduplica las filas en la tablaiduc_system.iduc_stats.

deduplication Proceso de desduplicación de la tabla alerts.status.Lleva el recuento de desduplicación y renueva losdetalles de alertas.

delete_clears Suprime, cada 60 segundos, las alertas que tienenmás de dos minutos en la tabla alerts.status.

details_inserts Cuenta las inserciones de la tabla de detalles.

disable_inactive_users Se ejecuta una vez al día para inhabilitar a losusuarios que no han iniciado sesión en elObjectServer en un periodo definido.

disable_user Inhabilita a los usuarios cuando no pueden iniciarsesión tras n errores consecutivos.

disconnect_iduc_missed Desconecta los clientes en tiempo real que no se hancomunicado con el ObjectServer durante 100 periodosde granularidad.

escalate_off Establece el campo de Flash en 0 (sin parpadeo) ySuppressEscl en 0 (no escalado en este ejemplo)cuando un suceso que antes tenía el campo Flashestablecido en 1 se reconoce o si el suceso se borra(Severity = 0).

expire Gestiona la caducidad de las alertas. Establece lagravedad de una alerta en 0 si se supera el valor deExpireTime (durante el cual la alerta es válida).

248 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 263: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 73. Automatizaciones estándar (continuación)

Nombre del desencadenante o delprocedimiento Descripción

flash_not_ack Activa el parpadeo (Flash = 1) para los sucesos quetienen 10 minutos y son graves (Severity = 5), peroque aún no han sido reconocidos por un usuario(Acknowledge = 0). Establece SuppressEscl en 1 comoindicación adicional del estado de escalamiento delsuceso.

generic_clear Borra (Severity = 0) todas las filas de la tablaalerts.status que indican un dispositivo que nofunciona (Type = 1), donde haya una fila insertadaposteriormente que indique que el dispositivo vuelvea funcionar (Type = 2).

iduc_messages_tblclean Realiza una limpieza de mantenimiento en la tablaalerts.iduc_messages. Se ejecuta cada 60 segundos ysuprime los mensajes que tienen más de dos minutos.

iduc_stats_insert Inserta una entrada de cliente en la tablaiduc_system.iduc_stats cuando se emite la señaliduc_connect.

iduc_stats_update Actualiza el campo LastIducTime en la tablaiduc_system.iduc_stats cuando se emite la señaliduc_data_fetch.

jinsert Inserta un registro en la tabla alerts.journal. Lasautomatizaciones que exigen entradas de diariodeben ejecutar este procedimiento.

journal_inserts Cuenta las inserciones de tabla de diario.

mail_on_critical Envía un correo electrónico sobre las alertas gravesque se reconocen tras 30 minutos.Nota: Esta herramienta es específica de UNIX amenos que haya un mailer NT disponible.

new_row Establece los valores predeterminados para lasnuevas alertas de la tabla alerts.status.

new_status_inserts Cuenta las nuevas inserciones de tabla de estado.

pass_deletes Suprime del ObjectServer de destino las filas que noexisten en el ObjectServer de origen, tras laresincronización.

profiler_group_report Escribe en el archivo profiler_report una fila para lasuma de la cantidad de tiempo que dedica cada tipode aplicación individual durante el último periodo decreación de perfiles.

profiler_report Escribe en el archivo profiler_report una fila paracada cliente conectado con la cantidad de tiempo queha dedicado ese cliente durante el último periodo decreación de perfiles.

profiler_toggle Notifica que el perfilador se ha conmutado.

reset_user Restablece el recuento de errores de un usuariocuando inicia sesión satisfactoriamente.

resync_finished Identifica cuándo finaliza la resincronización yestablece la propiedad ActingPrimary delObjectServer de reserva en FALSE para definirlocomo reserva.

Capítulo 5. SQL de ObjectServer 249

Page 264: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 73. Automatizaciones estándar (continuación)

Nombre del desencadenante o delprocedimiento Descripción

security_watch_security_failure Crea una alerta cuando un cliente no puedeautenticarse.

service_insert Proceso de servicio de la tabla service.status.

service_reinsert Proceso de servicio de la tabla service.status.

service_update Proceso de servicio de la tabla service.status.

state_change Proceso de cambio de estado de la tabla alerts.status.Mantiene la indicación de fecha y hora deObjectServer de la última inserción y actualización deuna alerta procedente de cualquier origen.

statistics_cleanup Suprime las estadísticas que tienen una horaaproximadamente.

statistics_gather Recopila métricas, por ejemplo el número total declientes conectados al ObjectServer, el número declientes en tiempo real y el número de insercionesnuevas en la tabla alerts.status e inserta las métricasen la tabla master.stats.

Estos datos se pueden visualizar mediante eladministrador de Netcool/OMNIbus o nco_sql, sepueden escribir en un archivo o las pueden procesarotras automatizaciones.

stats_reset Restablece los datos de estadísticas.

system_watch_shutdown Crea una alerta que indica que el ObjectServer estáconcluyendo.

system_watch_startup Crea una alerta que indica que el ObjectServer se hainiciado.

trigger_stats_report Escribe en el archivo trigger_stats.log, la cantidadde tiempo que cada desencadenante ha utilizado enel último periodo de creación de perfiles.

update_service_affecting_events Se ejecuta con una frecuencia especificada parapermitir que los sucesos afectados por el servicio enNetwork Manager IP Edition se borrenautomáticamente cuando se borren todos sus sucesosrelacionados. Un suceso afectado por el servicio esuna alerta que avisa a los operadores que un serviciode cliente muy importante se ha visto afectado poruno o más sucesos de red.

Esta automatización sólo funciona con TivoliNetcool/OMNIbus V7 .0 o posterior.Consejo: la automatización sólo es necesaria siNetwork Manager IP Edition se va a utilizar y seutiliza con las tablas precision.entity_service,precision.service_details, yprecision.service_affecting_event.

webtop_compatibility Llena la tabla master.profiles con los usuarios deObjectServer que la GUI web (o Netcool/Webtop)debe leer. Además, establece el campo AllowISQLpara cada usuario al que se le ha otorgado permisopara utilizar la herramienta SQL interactiva en la GUIweb (o Netcool/Webtop).

250 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 265: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Automatización para sucesos afectados por el servicioUn suceso afectado por el servicio (SAE) es una alerta que avisa a los operadoresde que hay un servicio al cliente grave afectado por uno o varios sucesos de red.Los sucesos afectados por el servicio se generan en IBM Tivoli Network ManagerIP Edition.

Puede configurar Tivoli Netcool/OMNIbus para ejecutar una automatización a unafrecuencia determinada para habilitar sucesos afectados por servicio en NetworkManager IP Edition para borrarse automáticamente cuando se borran todos sussucesos relacionados.

Para que esta función esté operativa para una instalación de Network Manager IPEdition y Tivoli Netcool/OMNIbus, debe configurar Network Manager IP Editioncomo se describe en el IBM Tivoli Network Manager IP Edition: Guía de instalación yconfiguración, SC11-7918-00. Cuando instale Tivoli Netcool/OMNIbus, los objectosde objectserver necesarios siguientes se añaden para dar soporte a la operación deSAE:v Tablas de base de datos para uso de aplicación SAE: precision.entity_service,

precision.service_details, precision.service_affecting_eventsv El Campo nmosentityid de la tabla alerts.statusv Un grupo de desencadenantes sae y el desencadenante

update_service_affecting_eventsLa automatización de desencadenante update_service_affecting_events funcionasólo con Tivoli Netcool/OMNIbus V7.0 o posterior.

v Herramientas de lista de sucesos para gestionar sucesos afectados por servicioen Unix y Windows

Desde la lista de sucesos de Tivoli Netcool/OMNIbus, puede supervisar lossucesos afectados por el servicio tal como se indica a continuación:v Para mostrar los sucesos subyacentes (por ejemplo, linkDowns) asociados a un

suceso afectado por el servicio, seleccione el suceso afectado por el servicio,pulse con el botón derecho sobre él y, a continuación, pulse Mostrar sucesosrelacionados SAE del menú emergente. Todos los sucesos que están asociados alsuceso seleccionado aparecerán en una ventana nueva.

v Para mostrar los sucesos afectados por el servicio al que hace referencia unsuceso (por ejemplo, un linkDown), seleccione el suceso, pulse con el botónderecho del ratón sobre él y, a continuación, pulse Mostrar serviciosrelacionados SAE del menú emergente. En una ventana nueva aparecerá unalista de todos los sucesos afectados por el servicio relacionados. Por ejemplo, siha seleccionado un suceso linkDown de la lista de sucesos, esta ventanamostrará todos los servicios que se vean afectados por ese suceso linkDown.

Ejemplos de automatizaciónEste tema contiene ejemplos de algunas automatizaciones realizadas normalmente.

Capítulo 5. SQL de ObjectServer 251

Page 266: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Ejemplo: Desencadenante para eliminar duplicados de la tablade estadoEste desencadenante de base de datos intercepta un intento de reinserción en latabla alerts.status e incrementa la Tally para mostrar que una fila nueva de estetipo ha llegado al objectserver. También establece el campo LastOccurrence.create or replace trigger deduplicationgroup default_triggerspriority 1comment ’Deduplication processing for ALERTS.STATUS’before reinsert on alerts.statusfor each rowbeginset old.Tally = old.Tally + 1;set old.LastOccurrence = new.LastOccurrence;set old.StateChange = getdate();set old.InternalLast = getdate();set old.Summary = new.Summary;set old.AlertKey = new.AlertKey;if ((old.Severity = 0) and (new.Severity > 0))

then set old.Severity = new.Severity;end if;end;

Ejemplo: Desencadenante para omitir duplicados de la tabla dedetallesEste desencadenante de base de datos intercepta un intento de reinserción en latabla alerts.details.create or replace triggerdeduplicate_detailsgroup default_triggerspriority 1comment ’Deduplicate rows on alerts.details’before reinsert on alerts.detailsfor each rowbegincancel; -- Do nothing. Allow the row to be discardedend;

Ejemplo: Desencadenante para limpiar la tabla de detallesEste desencadenante temporal periódicamente borra entradas de detalles en latabla alerts.details cuando no existe ninguna entrada correspondiente en la tablaalerts.status.create or replace triggerclean_details_tablegroup default_triggerspriority 1comment ’Housekeeping cleanup of ALERTS.DETAILS’ every 60 secondsbegindelete from alerts.details

where Identifier not in (select Identifier from alerts.status);end;

252 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 267: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Ejemplo: Desencadenante para establecer la columnaStateChange de la tabla de alertasCuando una fila de la tabla alerts.status se modifica, este desencadenante de basede datos actualiza la columna Statechange para marcar el cambio con indicación dehora.create or replace trigger state_changegroup default_triggerspriority 1comment ’State change processing for ALERTS.STATUS’before update on alerts.statusfor each rowbeginset new.StateChange = getdate;end;

Ejemplo: Desencadenante para suprimir filas borradasEste desencadenante temporal suprime todas las filas borradas (Gravedad = 0) dela tabla alerts.status que no han sido modificdas en los dos últimos minutos.create or replace trigger delete_clearsgroup default_triggerspriority 1comment ’Delete cleared alerts over 2 minutes old every 60 seconds’every 60 secondsbegindelete from alerts.status where Severity = 0 and StateChange < (getdate() - 120);end;

Ejemplo: Desencadenante para enviar notificaciones de correoelectrónico para alertas críticasEste desencadenante temporal envía por correo electrónico, llamando a unprocedimiento externo y, si no se han reconocido alertas en 30 minutos.create or replace trigger mail_on_criticalgroup default_triggersenabled falsepriority 1comment ’Send email about critical alerts that areunacknowledged after 30 minutes. NOTE This tool isUNIX specific unless an equivalent NT mailer is available.’every 10 secondsbegin

for each row critical in alerts.status where critical.Severity = 5 andcritical.Grade < 2 and critical.Acknowledged = 0 andcritical.LastOccurrence <= ( getdate() - (60*30) )

beginexecute send_email( critical.Node, critical.Severity, ’Netcool Email’,’root@localhost’, critical.Summary, ’localhost’);update alerts.status via critical.Identifier set Grade=2;

end;end;

El procedimiento externo send_email se declara de la siguiente manera y llama alprograma de utilidad nco_mail :create or replace procedure send_email(in node character(255), in severity integer, in subject character(255),in email character(255), in summary character(255), in hostname character(255))executable ’$NCHOME/omnibus/utils/nco_mail’ host ’hostname’ user 0 group 0arguments ’\’’ + node + ’\’’, severity, ’\’’ + subject + ’\’’,’\’’ + email + ’\’’, ’\’’ + summary + ’\’’;

Este ejemplo también muestra cómo pasar cadenas de texto a un ejecutable. Lasseries deben estar encerrados entre comillas dobles y las comillas dobles debenincluirse entre barras invertidas. Todas las comillas de este ejemplo son comillas

Capítulo 5. SQL de ObjectServer 253

Page 268: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

simples.

Ejemplo: Procedimiento para insertar una entrada de diario paradesencadenantesEl procedimiento jinsert le permite insertar filas en la tabla alerts.journal. Lasautomatizaciones que requieren que entradas de diario llaman al procedimiento ypasan el número de serie de la fila, el ID de usuario del usuario que realiza elcambio (si es aplicable), la hora en que se produjo la acción y cualquier textodescriptivo de la acción que se registra por diario.create or replace triggertrigger_namegroup default_triggerspriority 10before delete on alerts.statusfor each rowbeginexecute jinsert( old.Serial, %user.user_id, getdate(), ’string’);end;

En esta automatización, trigger_name es una variable que representa el nombre deldesencadenante, y string es un texto de entrada de diario.

254 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 269: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Capítulo 6. Configuración de la notificación de sucesosacelerados

Puede configurar Tivoli Netcool/OMNIbus para la notificación de sucesosacelerados de sucesos que puedan poner en peligro al sistema. El sistema denotificación de sucesos acelerados (AEN) proporciona un medio para acelerar lossucesos de prioridad alta como ayuda para garantizar que los sistemas puedencontinuar ejecutándose sin interrupciones.

Al configurar la notificación de sucesos acelerados, utilice las directrices siguientes:v Determine las condiciones bajo las que desea acelerar sucesos. Considere si debe

utilizar el archivo de reglas de sondeo para señalar sucesos para la aceleración osi se han de configurar condiciones dentro de un desencadenante posterior a unainserción, actualizació o reinserción en elobjectserver.Si las condiciones bajo las que conviene acelerar sucesos están configuradas en elarchivo de reglas, y son complejas, es posible que sea necesario configurar latabla alerts.status con una columna dedicada para recibir un distintivo queidentifique un suceso como un sucesos acelerados.Normalmente, puede ejecutar un desencadenante posterior a la inserción ensucesos insertados para determinar si satisfacen las condiciones de aceleración, oejecutar un desencadenante de postactualización en sucesos actualizados que sehan enriquecido con información de otras fuentes, o ejecutar un desencadenanteposterior a reinserción para escalar eventos iterativos.

v Determine si se va a necesitar una pasarela dedicada para el reenvío de sucesosacelerados. Considere el uso de una pasarela dedicada si desea eliminar laposibilidad de retardos imprevistos causados por volúmenes elevados desucesos, la mayoría de los cuales pueden no ser críticos, o si desea enviarsucesos acelerados a otro objectserver del que se utiliza para la actualizacionesIDUC normales. Si se utiliza una pasarela dedicada, debe configurar esa pasarelapara duplicar sólo las inserciones y actualizaciones aceleradas.

También necesita utilizar el administrador de netcool/Omnibus para configurar lanotificación de sucesos acelerados, como se indica a continuación:v Configure una columna de suceso dedicada para marcar un suceso para la

aceleración, si es necesario.v Configure canales para definir el tipo de datos de suceso que se incluirán en las

notificaciones de sucesos acelerados, y los destinatarios de estos datos de suceso.v Configure desencadenantes posteriores a la inserción, la actualización o la

reinserción para que actuen sobre sucesos acelerados que se insertan o seactualizan en la tabla alerts.status.

Para obtener información sobre la supervisión y gestión de sucesos acelerados,consulte IBM Tivoli Netcool/OMNIbus User's Guide.

© Copyright IBM Corp. 1994, 2011 255

Page 270: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Configuración de un analizador para señalar sucesos para aceleraciónSi las condiciones de notificación de sucesos acelerados son complejas, determine sidebe configurar las condiciones dentro del archivo de reglas del analizador.

Es posible que también necesite añadir una columna dedicada para el suceso a latabla alerts.status para señalar sucesos para aceleración, y utilizar este campo en elarchivo de reglas del analizador.

El siguiente ejemplo de archivo de reglas de analizador muestra cómo unasecuencia de suceso puede analizarse para determinar qué sucesos se considerande alta prioridad. En la parte superior del archivo de reglas, se asignan elementos(indicados por el símbolo $) a campos objectserver (indicados por el símbolo @). Lasentencia condicional utiliza el elemento $Summary para establecer los valoresAlertKey y FastTrack en la tabla alerts.status.

La sentencia se convierte en: si el valor de resumen empieza con 'Anomalía depuerto' , inserte el valor de número de puerto en el Campo Alertkey de la tablaalerts.status e inserte un valor de 1 en el campo FastTrack de la tabla alerts.status.De lo contrario, si el valor de resumen empieza con la serie 'Espacio en disco' ,inserte el valor de porcentaje % completo concatenado y el campo AlertKey en latabla alerts.status.@Manager = "Simnet Probe"@Class = 3300@Node = $Node@Agent = $Agent@AlertGroup = $Group@Summary = $Summary@Severity = $Severity@Identifier = $Node + $Agent + $Severity + $Group

if (nmatch($Summary, "Port failure")){@AlertKey = $PortNumber@FastTrack = 1}else if (nmatch($Summary, "Diskspace")){@AlertKey = $PercentFull + "% full"}

Configuración de una pasarela para la notificación de sucesosacelerados

Puede optar por utilizar una pasarela dedicada para reenviar sucesos aceleradosprincipalmente por razones de rendimiento o para enviar los sucesos alobjectserver determinado. Si utiliza una pasarela dedicada, debe actualizar suarchivo de definición de réplica de tabla de manera que sólo se reenvíen lasinserciones aceleradas y las actualizaciones.

Para configurar una pasarela de objectserver unidireccional para notificación desucesos acelerados:1. Abra el archivo de definición de réplica de tabla de pasarela siguiente:

$OMNIHOME/gates/objserv_uni/objserv_uni.reader.tblrep.def

2. Localice las siguientes líneas:

256 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 271: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

REPLICATE ALL FROM TABLE ’alerts.status’ USING MAP ’StatusMap’;REPLICATE ALL FROM TABLE ’alerts.journal’ USING MAP ’JournalMap’;REPLICATE ALL FROM TABLE ’alerts.details’ USING MAP ’DetailsMap’;

3. Sustituya estas tres líneas con la línea individual siguiente:REPLICATE FT_INSERT,FT_UPDATE FROM TABLE ’alerts.status’ USING MAP ’StatusMap’;

4. Guarde el archivo.

Qué hacer a continuación

Para una pasarela bidireccional, debe modificar los archivos correspondientes enuna forma parecida. El archivo de definición de réplica de tabla de pasarela parauna pasarela bidireccional es $omnihome/gates/objserv_bi/objserv_bi tblrep.def.Reader. .

Configuración de la tabla alerts.status para recibir un distintivo AENSi se ha configurado el archivo de reglas de analizador con un distintivo paranotificación de sucesos acelerados, es posible que tenga que añadir una columnapara dar soporte a la aceleración de sucesos, a la tabla alerts.status.

Por ejemplo, desde netcool/Omnibus Administrator, añada una columna con unnombre de columna de fasttrack y un tipo de datos de entero .Tareas relacionadas:“Adición y edición de columnas de tabla” en la página 135Referencia relacionada:“Alteración de una tabla” en la página 158

Configuración de canales para difundir datos de sucesosAl configurar la notificación de sucesos acelerados, debe utilizar canales paradefinir el tipo de datos de suceso que deben difundirse en las notificaciones desucesos acelerados, y los destinatarios de estos datos. Puede configurar varioscanales con datos de sucesos diferentes y destinatarios.

La administración del canal está permitida sólo para usuarios con el rol deChannelAdmin.

Los datos de sucesos para canales se derivan a partir de columnas en las tablas deobjectserver.

Consejo: Las columnas que seleccione para un canal debe contener suficientesdatos de resumen para ayudar a los operadores a interpretar cuestiones vitales aprimera vista, cuando estas cuestiones se reenvíen a la pantalla como notificadoresemergentes. Los operadores pueden, a continuación, pulsar en la lista de sucesosdel escritorio o la lista de sucesos activos de GUI web para obtener detallescompletos del suceso y para gestionar el suceso.

Tenga en cuenta que la funcionalidad de clic de un notificador emergente a la listade sucesos o la lista de sucesos activos sólo está disponible para los sucesos en latabla alerts.status.

Capítulo 6. Configuración de la notificación de sucesos acelerados 257

Page 272: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Creación y edición de canalesDebe crear canales en un objectserver desde el que se reenviarán los sucesosacelerados.

Antes de empezar

Debe estar conectado al objectserver en el que desea crear un canal.

Para crear o editar un canal:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Sistema .2. Pulse Canales. Se abre el panel Canales.3. Para añadir un canal, pulse Añadir canal en la barra de herramientas. Se abre

la ventana Detalles de canal.4. Para editar un canal, seleccione el canal a editar y después pulse Editar canal

en la barra de herramientas. Se abre la ventana Detalles de canal.5. Defina el canal de la forma siguiente:

NombreEscriba un nombre exclusivo para el canal. Si está editando un canal,no puede cambiar el nombre.

DescripciónEscriba un texto significativo que resuma la función del canal.

6. Desde la ficha Columnas , especifique qué columnas desea incluir en ladefinición de canal. Cumplimente el separador tal como se muestra acontinuación:

Añadir nuevas Columnas de canalPulse este botón para añadir columnas al canal. Aparece la ventanaDetalles de columna de canal. Complete esta ventana como se indica acontinuación, y guarde los cambios:

Tabla En la lista de la izquierda, seleccione una base de datos deObjectServer. En la lista de la derecha, seleccione una tabla endicha base de datos.

Si está editando columnas de canal, no puede cambiar la basede datos o el nombre de la tabla.

Restricción: Actualmente, sólo hay soporte disponible para loseventos de la tabla alerts.status.

Columnas: DisponiblesEsta lista se rellena con los nombres de las columnas que estándefinidas en la tabla de la base de datos seleccionada, y quepuede asignar al canal. Para asignar una o más de estascolumnas, utilice las teclas de flecha para mover las columnashasta la lista de Seleccionados.

Para mover todas las columnas a la lista de Seleccionados,pulse >>. Para mover una sola columna o varias columnas a lalista de Seleccionados, seleccione cada columna y luego pulse>. Puede utilizar la tecla MAYÚS para realizar seleccionesconsecutivas, o la tecla CONTROL para realizar selecciones noconsecutivas.

258 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 273: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

También puede efectuar una doble pulsación en una columnapara moverla desde la lista de Disponibles a la lista deSeleccionados. Las columnas se añaden al final de la lista deSeleccionados.

Columnas: SeleccionadosEsta lista contiene las columnas que se incluyen en la definiciónde canal. Para eliminar columnas de la definición de canal,utilice las teclas de flecha para mover las columnas a la lista deDisponibles.

Para mover todas las columnas a la lista de Disponibles, pulse<<. Para mover una sola columna o varias columnas a la listade Disponibles, seleccione cada columna y luego pulse <.Puede utilizar la tecla MAYÚS para realizar seleccionesconsecutivas, o la tecla CONTROL para realizar selecciones noconsecutivas.

También puede efectuar una doble pulsación en una columnapara moverla desde la lista de Seleccionados a la lista deDisponibles.

Utilice los botones de flecha de la derecha de la lista deSeleccionados para especificar la posición de los datos decolumna en el notificador emergente en el cliente denotificación de sucesos acelerados. La lista de Seleccionadosmuestra los siguientes marcadores predeterminados paraindicar la posición de los datos de columna:v H: Encabezadov F: Primera líneav S: Segunda líneav M: Mensaje principalv N: Nota

Para cambiar la posición de una columna, selecciónela y pulseel botón de flecha correspondiente. Utilice los botones de flechacomo sigue:

Tabla 74. Botones de flecha

Botón Descripción

Mueve la columna seleccionada a la partesuperior de la lista de Seleccionados.

Mueve la columna seleccionada una posiciónhacia arriba en la lista de Seleccionados.

Mueve la columna seleccionada una posiciónhacia abajo en la lista de Seleccionados.

Mueve la columna seleccionada a la parteinferior de la lista de Seleccionados.

Cuando regrese al separador Columnas en la ventana Detalles de canal,las selecciones de columna se muestran en una sola fila. (No puedeañadir más de una fila.)

Editar las columnas de canal seleccionadasPulse este botón para editar la definición de columna del canal.Seleccione la fila en el separador Columnas y luego pulse el botón.

Capítulo 6. Configuración de la notificación de sucesos acelerados 259

Page 274: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Aparece la ventana Detalles de columna de canal. Corrija lasselecciones de columna en esta ventana y guarde los cambios paravolver al separador Columnas.

Suprimir las columnas de canal seleccionadasUtilice este botón para suprimir una definición de columna del canal.Seleccione la fila en la tabla Columnas y pulse Suprimir. Cuando se leindique, confirme la supresión. Los cambios quedan reflejados en elseparador Columnas.

7. Desde la ficha Destinatarios , especifique el usuario o grupo de usuarios a losque se debe enviar el canal de datos. Cumplimente el separador tal como semuestra a continuación:

Añadir nuevo destinatario de canalPulse este botón para especificar los destinatarios de la información delcanal. Se abre la ventana Detalles del destinatario de canal. Completeesta ventana como se indica a continuación, y guarde los cambios:

isGroupMarque esta casilla de verificación para indicar que losdestinatarios del canal son un grupo de usuarios. Elimine lamarca de esta casilla si el destinatario del canal es un solousuario.

NombreEsta lista trabaja juntamente con la casilla de verificaciónisGroup, y se rellena con una lista de todos los usuarios, o conuna lista de todos los grupos del ObjectServer. Seleccione elnombre del usuario o grupo que debe recibir los datos delcanal.

Nombre de hostEscriba el nombre del host conectado. Puede utilizarexpresiones regulares para filtrar las conexiones que coincidencon este valor. Deje el campo en blanco para que se establezcauna coincidencia con cualquier nombre de host. Por ejemplo,escriba la expresión regular *prueba* para que coincida concualquier host que tenga la serie prueba en el nombre.

Nombre de la aplicaciónEscriba el nombre de una aplicación que esté conectada alObjectServer. Puede utilizar expresiones regulares para filtrarlas conexiones que coinciden con la entrada. Por ejemplo,*suceso* indica una coincidencia con cualquier host que tengala serie suceso en su nombre. Deje este campo en blanco paraque se establezca una coincidencia con cualquier nombre deaplicación.

Descripción de la aplicaciónEscriba una descripción de aplicación. Puede utilizarexpresiones regulares para filtrar las conexiones que coincidencon la entrada. Por ejemplo, *tiempo real* coincide concualquier host que tenga la serie tiempo real en su descripciónde aplicación. Deje este campo en blanco para que se establezcauna coincidencia con cualquier descripción de aplicación.

Cuando vuelve al separador Destinatarios en la ventana Detalles decanal, los detalles del destinatario aparecen en una sola línea. (Puedeañadir más filas de destinatarios.)

260 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 275: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Editar el recipiente de canal seleccionadoPulse este botón para editar los detalles del destinatario de una filaseleccionada en el separador Destinatarios. Se abre la ventana Detallesdel destinatario de canal. Corrija los detalles del destinatario y guardelos cambios para volver al separador Destinatarios.

Suprimir el destinatario de canal seleccionadoUtilice este botón para eliminar los destinatarios de la definición decanal. Seleccione la fila de destinatarios que desea eliminar y luegopulse este botón. Cuando se le indique, confirme la supresión. Loscambios quedan reflejados en el separador Destinatarios.

8. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar los detalles de canal y cerrar la ventana.Se añaden nuevos canales al panel Canales.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Copiar y pegar canalesPuede utilizar un canal como plantilla para otro copiando y pegando la definiciónde canal. Esto es útil si desea crear canales con ligeras variaciones en susdefiniciones.

Restricción: No puede copiar y pegar entre ObjectServers.

Para copiar y pegar un canal:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Sistema .2. Pulse Canales. Se abre el panel Canales.3. Para copiar un canal, seleccione el canal desde el panel Canales y, a

continuación, pulse Copiar en la barra de herramientas.4. Para pegar el canal, pulse Pegar en la barra de herramientas. Se abre la ventana

Nuevo canal.5. Escriba un nombre exclusivo para el canal.6. Confirme o cancele los cambios de la forma siguiente:

v Pulse Aceptar para crear el nuevo canal con una definición idéntica a la delcanal seleccionado. La ventana Detalles de canal se abre para que puedarealizar los cambios necesarios en este nuevo canal.

v Pulse Cancelar para cancelar la acción de copiar y pegar.

Supresión de un canal

Para suprimir un canal:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Sistema .2. Pulse el icono Canales. Se abre la ventana Canales.3. Seleccione el canal que desea suprimir y pulse Suprimir en la barra de

herramientas. Se suprime el canal.

Capítulo 6. Configuración de la notificación de sucesos acelerados 261

Page 276: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Envío de mensajes a destinatarios de canalPuede enviar mensajes a destinatarios de canal que se están ejecutandoactualmente el cliente de notificación de sucesos acelerados.

Puede enviar mensajes a destinatarios a la escucha en un canal único o en varioscanales.

Para enviar mensajes:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Sistema .2. Pulse Canales. Se abre el panel Canales.3. Desde el panel Canales , seleccione uno o más canales que están asociados con

el mensaje que debe enviarse. Puede utilizar la tecla Mayús para seleccionesconsecutivas o la tecla CTRL para selecciones no consecutivas.

4. Desde la barra de herramientas, pulse Enviar mensaje. Se abre la ventanaEnviar mensaje.

5. Escriba un mensaje de texto en el campo Texto de mensaje. Este campo sedesplazará horizontalmente para permitir la introducción de texto.

6. Confirme o cancele los cambios de la forma siguiente:v Pulse aceptar para iniciar la acción enviar y, a continuación, confirmar que

desea enviar el mensaje pulsando Sí .

Nota: Si el campo Texto de mensaje está en blanco, no se enviará ningúnmensaje.

v Pulse Cancelar para cancelar la acción de envío.

Resultados

El mensaje se visualiza en un recuadro de mensajes en todas las pantallas decliente de notificación de sucesos acelerados relevantes. La palabra de texto demensaje se ajusta a 120 caracteres. Si ha enviado el mensaje a varios canales, uncliente que escuche en más de uno de estos canales sólo recibe el mensaje una vez.

Desconexión de los clientes de notificación de sucesosacelerados

Si necesita realizar un mantenimiento menor en el objectserver, como por ejemplola resincronización, puede desconectar de forma remota (o salir) a los clientes denotificación de sucesos acelerados que se están ejecutando actualmente. Comoparte de la acción de desconexión, especifique un breve mensaje a los usuarios coninformación relevante.

Para desconectar los clientes de notificación de sucesos acelerados que estánescuchando en uno o más canales:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Sistema .2. Pulse Canales. Se abre el panel Canales.3. Desde el panel Canales , seleccione uno o más canales que están asociados con

la acción de desconexión. Puede utilizar la tecla Mayús para seleccionesconsecutivas o la tecla CTRL para selecciones no consecutivas.

4. Desde la barra de herramientas, pulse Desconectar clientes. Se abre la ventanaEnviar mandato de desconexión.

262 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 277: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

5. Especifique un mensaje de texto en el Campo Razón para desconectar . Estecampo se desplazará horizontalmente para permitir la introducción de texto.

6. Confirme o cancele los cambios de la forma siguiente:v Pulse Aceptar para iniciar la acción de desconexión y, a continuación,

confirme que desea desconectar pulsando Sí .

Nota: Si el campo Razón para desconectar está en blanco, los clientes sedesconectarán, pero no habrá ninguna razón para la acción en el recuadro demensaje.

v Pulse Cancelar para cancelar la acción de desconexión.

Resultados

Después de confirmar la acción de desconexión, cualquier mensaje que especifiquese mostrará en un recuadro de mensaje en todas las pantallas de cliente denotificación de sucesos acelerados relevantes. La palabra de texto de mensaje seajusta a 120 caracteres. Se produce una finalización de sesión automática. Elindicador de estado de los clientes de la notificación de sucesos acelerados reflejael estado fuera de sesión, aunque los clientes continúan ejecutándose en segundoplano.

Cierre de clientes de notificación de sucesos aceleradosSi necesita concluir el objectserver, puede remotamente concluir los clientes denotificación de sucesos acelerados que se están ejecutando actualmente. Comoparte del cierre, especifique un breve mensaje a los usuarios con informaciónrelevante.

Para cerrar los clientes de notificación de sucesos acelerados que están escuchandoen uno o más canales:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Sistema .2. Pulse Canales. Se abre el panel Canales.3. Desde el panel Canales , seleccione uno o más canales que están asociados con

la acción de cierre. Puede utilizar la tecla Mayús para selecciones consecutivaso la tecla CTRL para selecciones no consecutivas.

4. Desde la barra de herramientas, pulse Cerrar clientes. Se abre la ventanaEnviar mandato de cierre.

5. Especifique un mensaje de texto en el Campo Razón para cierre . Este campose desplazará horizontalmente para permitir la introducción de texto.

6. Confirme o cancele los cambios de la forma siguiente:v Pulse Aceptar para iniciar la acción de cierre y, a continuación, confirme que

desea cerrar pulsando Sí .

Nota: Si el campo Razón para cierre está en blanco, los clientes se cerrán,pero no habrá ninguna razón para la acción en el recuadro de mensaje.

v Pulse Cancelar para cancelar la acción de cierre.

Resultados

Después de confirmar la acción de cierre, cualquier mensaje que especifique semostrará en un recuadro de mensaje en todas las pantallas de cliente denotificación de sucesos acelerados relevantes. La palabra de texto de mensaje seajusta a 120 caracteres. Después de cinco segundos, se producirán una salida de

Capítulo 6. Configuración de la notificación de sucesos acelerados 263

Page 278: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

sesión y una desconexión de forma automática.

Configuración de desencadenantes para dar soporte a la notificaciónde sucesos acelerados

Para dar soporte a la notificación de sucesos acelerados, cree desencadenantesposteriores a la inserción, posteriores a la actualización o posteriores a lareinserción que se conecten a la tabla alerts.status. En los desencadenantes,configure las condiciones para definir o identificar sucesos acelerados cuando seinserten o se actualicen en la tabla alerts.status, y para reenviar tales sucesos a losclientes relevantes de notificación de sucesos relevantes.

Hay dos mandatos SQL disponibles para utilizarlos con los desencadenantes: unmandato de seguimiento de sucesos rápido (o sucesos acelerados) (IDUC EVTFT) yun mandato de envío de mensajes (IDUC SNDMSG).

Consejo: Le puede parecer útil agrupar desencadenantes que den soporte a lanotificación de sucesos acelerada dentro de su propio grupo de desencadenantes.Conceptos relacionados:“Configuración de la automatización mediante desencadenantes” en la página 219“Configuración de desencadenantes” en la página 105Referencia relacionada:“Activación de la notificación de sucesos acelerados (mandato IDUC EVTFT)” en lapágina 243“Envío de mensajes a clientes AEN (mandato IDUC SNDMSG)” en la página 244

264 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 279: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Capítulo 7. Utilización del control de procesos para gestionarprocesos y procedimientos externos

El sistema de control de procesos de Tivoli Netcool/OMNIbus realiza dos tareasprincipales. Gestiona los procesos locales y remotos y ejecuta los procedimientosexternos que se especifican en las automatizaciones.

Puede utilizar el control de procesos para simplificar la gestión de componentes deTivoli Netcool/OMNIbus como ObjectServers, sondas y pasarelas. Puede instalaragentes de procesos en cada host y configurarlos para gestionar procesos. Losagentes de procesos configurados colaboran automáticamente y comprenden supropia configuración. Inician procesos y pueden mantener esos procesos enejecución. Puede definir procesos que dependen de otros procesos y procesos quetienen dependencias de umbral temporizadas. Si se reinicia un host gestionado, elagente de procesos puede configurarse para reiniciar componentes localesautomáticamente.

El sistema de control de procesos incluye un conjunto de programas de utilidad delínea de mandatos que proporcionan una interfaz para la gestión de procesos.Puede configurar y gestionar el control de procesos desde la línea de mandatos outilizando el administrador de Netcool/OMNIbus.

Cómo se conectan los agentes de procesosPuede configurar un sistema de red de control de proceso mediante laconfiguración del control de proceso en varios hosts de Tivoli Netcool/OMNIbus.

Los agentes de proceso pueden comunicarse los unos con los otros y ejecutarprogramas bajo solicitud. Los agentes de proceso que se ejecutan en sistemasoperativos Windows pueden comunicarse con agentes de proceso en ejecución ensistemas operativos Unix y viceversa.

Ejecución de agentes de proceso en una configuración dedireccionamiento

Cuando varios agentes de proceso se conectan mediante sentencias dedireccionamiento, cada agente de proceso de la red de control de proceso puederecibir una notificación de los procesos de otros agentes de proceso. Un archivo deconfiguración de agente de proceso se utiliza para definir procesos, servicios yhosts de la red de control de proceso y para definir las sentencias dedireccionamiento.

El sistema de control de procesos da soporte a la gestión remota completa de losagentes de proceso de una única consola. Puede añadir, modificar, suprimir, iniciary detener servicios y procesos de forma remota. También puede ver el estado delos procesos locales y remotos. Si utiliza netcool/Omnibus Administrator paragestionar el control de proceso, de manera opcional, puede guardar los cambios enlos archivos de configuración de los agentes de proceso.

© Copyright IBM Corp. 1994, 2011 265

Page 280: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Los agentes de proceso admiten la adición dinámica de sentencias dedireccionamiento de netcool/Omnibus Administrator. También puede agregar unnuevo agente de proceso a un grupo de direccionamiento como se indica acontinuación:1. Copie y modifique la configuración actual desde un agente de proceso existente

para tener visibilidad de los procesos actuales.2. Actualice los archivos de configuración para cada uno de los otros agentes de

proceso añadiendo la nueva entrada de direccionamiento para la zona dedefinición de direccionamiento en los archivos.

3. Detenga cada uno de los agentes de proceso existentes y sus procesossecundarios ejecutando el programa de utilidad nco_pa_shutdown con el valor-option STOP . A continuación, reinicie cada agente de procesos para poderincorporar el nuevo direccionamiento.

Nota: Los nombres de servicio y proceso deben ser únicos dentro de la red decontrol de proceso.Tareas relacionadas:“Creación e inicio de un sistema de red de control de proceso” en la página 268“Definición de procesos, servicios y sistemas principales para el control deprocesos” en la página 284“Visualización y configuración de información de estado para un agente deproceso” en la página 305Referencia relacionada:“Visualización del estado de los servicios y procesos (nco_pa_status)” en la página295“Adición de un servicio o proceso nuevos (nco_pa_addentry)” en la página 300

Componentes de control de procesoEl sistema de control de procesos está disponible como una característica instalabledurante la instalación de Tivoli Netcool/OMNIbus e incluye una serie decomponentes configurables y estándar.

El control de proceso consta de:v Agentes de procesos y archivos de configuración asociadosv Procesosv Servicios, donde se organizar y ejecutan procesosv Programas de utilidad de control de proceso para ayudarle a gestionar agentes

de procesos, procesos y servicios

Agentes de procesoLos agentes de programa son programas que se instalan en cada host paragestionar los procesos de un sistema de control de procesos. Cualquier host queparticipe debe tener un agente de proceso y un archivo de configuración asociadoinstalados.

Puede existir cualquier número de agentes de proceso en cualquier número desistemas principales. Los agentes de proceso pueden gestionar cualquier númerode procesos.

266 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 281: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

ProcesosLos procesos son programas que son ejecutados por un agente de procesos en lamisma estación de trabajo, dentro de un sistema de control de procesos. Losprocesos deben definirse en un servicio , para facilitar la gestión.

Reconocimiento del control de procesos

Un proceso que reconoce el agente de procesos es uno que forma parte de laconfiguración de control de procesos y que conoce el control de proceso. Todas lasfunciones de control de proceso, como las dependencias de proceso, puedenutilizarse. Por ejemplo, objectservers, los servidores proxy y las pasarelasObjectServer son conscientes de los agentes de procesos. Un proceso que no tieneen cuenta el agente de procesos puede ser gestionado por el control de procesos,pero no puede utilizar todas las funciones de control de proceso. Por ejemplo, elescritorio de Tivoli Netcool/OMNIbus no tiene en cuenta los agentes de procesos.

Procesos dependientes

El orden en que se inician las aplicaciones puede ser importante. Puede utilizar elcontrol de proceso para configurar los procesos para que sean dependientes entresí si están en el mismo servicio . Por ejemplo, un proceso se puede configurar parainiciarse sólo después de que otro procesos se hayan iniciado y se hayancompletado diversas tareas de inicio.

Un proceso que tiene en cuenta el agente de procesos se comunica con el agente deprocesos. Cuando el proceso alcanza el punto de su arranque donde reconoce queestá ejecutándose, envía un mensaje al agente de procesos. Cuando el agente deprocesos recibe este mensaje, inicia los procesos dependientes.Tareas relacionadas:“Definición de procesos, servicios y sistemas principales para el control deprocesos” en la página 284

ServiciosDentro de un sistema de control de procesos, deberán agruparse en servicios.Puede agrupar procesos relacionados en un servicio para que resulten más fácilesde gestionar.

Después de que un servicio se haya configurado correctamente, puede sergestionado por el control de proceso.

Puede configurar un servicio para que se inicie automáticamente cuando se iniciael agente de procesos. Como alternativa, puede iniciar un servicio de formamanual.

Un servicio puede configurarse como un servicio maestro del que dependen otrosservicios o como un servicio no maestro. Cuando se inicia automáticamentemediante el control de proceso, los servicios maestros se inician antes de losservicios no maestro.Tareas relacionadas:“Definición de procesos, servicios y sistemas principales para el control deprocesos” en la página 284

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 267

Page 282: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Programas de utilidad de procesoLos programas de utilidad de línea de mandatos están disponibles para ayudarle agestionar los agentes de proceso, procesos y servicios en un sistema de control deprocesos.

La tabla siguiente muestra estos programas de utilidad de línea de mandatos.

Tabla 75. Programas de utilidad de línea de mandatos de control de proceso

Programa de utilidad Descripción

nco_pa_status Este programa de utilidad recupera y muestra elestado de los servicios y procesos que se estáncontrolados por el agente de procesos.

nco_pa_start Este programa de utilidad inicia un servicio o procesoque se encuentra en cualquier lugar de laconfiguración.

nco_pa_stop Este programa de utilidad detiene un servicio oproceso que se encuentra en cualquier lugar de laconfiguración.

nco_pa_shutdown Este programa de utilidad cierra un agente deprocesos.

nco_pa_addentry Este programa de utilidad añade una entrada deservicio o proceso mientras se está ejecutando elagente de un proceso.

Referencia relacionada:“Visualización del estado de los servicios y procesos (nco_pa_status)” en la página295“Inicio de un servicio o proceso (nco_pa_start)” en la página 297“Detención de un servicio o de un proceso (nco_pa_stop)” en la página 298“Cierre de un agente de procesos (nco_pa_shutdown)” en la página 299“Adición de un servicio o proceso nuevos (nco_pa_addentry)” en la página 300

Creación e inicio de un sistema de red de control de procesoPara gestionar el control de proceso, primero debe determinar los requisitos deconfiguración de control de procesos y luego realizar una serie de tareas deconfiguración.

A continuación, se indica un resumen de las tareas de configuración:1. Si utiliza el mecanismo de autenticación predeterminado en Unix , configure un

grupo de usuarios dedicado que puede utilizar para controlar el acceso alsistema de control de procesos. Asigne usuarios a este grupo.En Windows, el acceso al sistema de control de procesos se rige por ladisponibilidad de una cuenta de usuario local o del dominio válida. Cualquiercuenta que se utiliza para iniciar la sesión en el sistema en el que se estáejecutando el agente de un proceso también puede utilizarse para conectar conel agente de procesos, siempre que el usuario tenga el privilegio Acceder alsistema desde la red .

2. Para cada agente de proceso, configure información de comunicación delservidor de (es decir, un nombre de host y número de puerto) en el sistemaprincipal y en cada sistema que necesite conectarse a la red de control de

268 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 283: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

proceso. Debe configurar la información de comunicación del servidor en eleditor del servidor (o nco_xigen ) antes de iniciar un agente de proceso.

3. Actualice por omisión el archivo de configuración de agente para cada agentede procesos definiendo procesos, servicios y sistemas principales.

Qué hacer a continuación

Cuando finaliza la configuración, inicie los agentes de proceso. Puede iniciar unagente de proceso ya sea manualmente desde la línea de mandatos, oautomáticamente, cuando se inicia el sistema. Para iniciar un agente de procesoautomáticamente, puede utilizar los scripts de inicio en Unix o instalar yconfigurar el agente de procesos para ejecutarse como un servicio Windows. Losprocesos se ejecutan automáticamente tal como se ha definido en el archivo deconfiguración para cada agente de proceso y los agentes de proceso se comunicansegún se ha configurado.Tareas relacionadas:“Configuración y gestión de control de proceso desde la línea de mandatos” en lapágina 284

Antes de configurar el control de procesoAntes de configurar el control de proceso en uno o varios sistemas principales,determine los requisitos de configuración de control de procesos.

Las tareas de requisitos previos son las siguientes:v Asegúrese de que la función de control de proceso está instalada. Esta función se

instala cuando selecciona Control de proceso como característica instalabledurante la instalación deTivoli Netcool/OMNIbus. Adicionalmente,netcool/Omnibus Administrator debe estar instalado si desea gestionar elcontrol de proceso desde una interfaz gráfica de usuario. Consulte IBM TivoliNetcool/OMNIbus Installation and Deployment Guide para obtener informaciónadicional sobre cómo instalar el control de proceso y netcool/OmnibusAdministrator.

v Determine qué componentes de Tivoli Netcool/OMNIbus se instalan y dónde seencuentran. Asegúrese de que ha tenido en cuenta todos los componentes ycualquier sustitución por anomalía o sistemas de copia de seguridad. Losescritorios de Tivoli Netcool/OMNIbus no son gestionados por el control deprocesos.

Creación de grupos de usuario Unix para el sistema decontrol de procesos

El daemon de control de proceso controla quien puede conectarse a éste. En Unix,cualquier usuario que deba acceder al sistema de control de procesos debe sermiembro de un grupo de usuarios Unix que se identifica como grupoadministrativo para este fin.

De forma predeterminada, el sistema de control de procesos utiliza nombres deusuario y contraseñas Unix para otorgar acceso. Cuando se ejecuta el daemon deagente de procesos ( nco_pad ), puede especificar otras modalidades deautorización soportadas utilizando la opción de línea de mandatos -authenticate .

Puede utilizar un grupo de usuarios existente Unix o crear uno nuevo y añadirusuarios de control de proceso a este grupo. Si ejecuta Nis, Nis +, o algún otroservicio de información global, esta configuración debe realizarla el administrador

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 269

Page 284: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

de ese servicio. Consulte la documentación proporcionada con el sistema operativopara obtener información sobre grupos de usuarios.

Cuando ejecute el daemon de control de proceso, identifique el grupoadministrativo con la opción de línea de mandatos -admingroup. Si no especificaun nombre de grupo, el control de proceso comprueba si el usuario es un miembrodel grupo predeterminado ncoadmin.

Atención: Si utiliza módulos de autenticación conectables (PAM) para laautenticación, no es necesario que los usuarios sean miembros de un grupo deusuarios Unix como por ejemplo ncoadmin para obtener acceso al sistema decontrol de procesos. Con clientes PAM, el sistema de control de proceso no validausuarios contra el grupo de usuarios Unix y, como resultado, el acceso no estárestringido.Conceptos relacionados:“Servicios” en la página 267Referencia relacionada:“Opciones de línea de mandatos de agente de procesos” en la página 273

Requisitos de cuenta de Windows para el sistema de controlde procesos

En Windows, el agente de proceso debe ejecutarse como una cuenta que sea unadministrador en el equipo local.

Para conectarse al agente de proceso desde netcool/Omnibus Administrator, otroagente de proceso, el objectserver o un programa de utilidad de control de proceso,es necesario uno de los siguientes tipos de cuenta:v Una cuenta de usuario local Windowsv Una cuenta de dominio Windows localv Una cuenta en formato de nombre principal de usuario; es decir, nombre_usuario

@ nombre_dominio_DNS

Para las conexiones de igual a igual entre agentes de proceso, desconfíe de utilizarpolíticas de contraseña que bloqueen cuentas Windows después de un númeroestablecido de intentos. Los agentes de proceso repetidamente intentan iniciar unasesión porque fallan al intentar conectarse; por lo tanto, la utilización de unacontraseña incorrecta podría provocar que las cuentas de Windows que bloqueenmuy rápidamente.

Configuración de información de comunicación de servidorpara agentes de proceso

Debe utilizar el editor de servidor para asignar un nombre de servidor exclusivo acada proceso de agente y especificar otra información de comunicación y, acontinuación, hacer que estos detalles estén disponibles para cada uno de los hostsdel sistema de red de control de proceso. Este proceso permite a todos los agentesde proceso en todos los sistemas comunicarse unos con otros.

Realice las acciones siguientes para configurar la información de comunicación deservidor para agentes de proceso:1. Inicie el editor de servidor en un sistema principal y añada una entrada de

servidor para cada agente de proceso que desee incluir en el sistema de red decontrol de proceso. Guarde esta información.

270 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 285: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Consejo: El nombre de una entrada de servidor debe consistir en 29 o menoscaracteres en mayúscula y no puede empezar por un entero. El convenio dedenominación també indica que se adjunte _PA al nombre para que puedaidentificar fácilmente el servidor como un agente de proceso en el editor delservidor. Por ejemplo, si está configurando el agente de procesos en un sistemaprincipal denominado sfosys1, el agente de proceso puede denominarseSFOSYS1_PA. De forma predeterminada, el primer agente de proceso instaladoen una configuración se denomina NCO_PA.

2. En Unix , genere un archivo de interfaz que contenga la información decomunicación de servidor. El archivo de interfaces se denomina generalmente$nchome/etc/interfaces. Arch , donde Arch es el nombre del sistemaoperativo Unix .En un entorno Windows, configure comunicaciones de servidor en cada sistemaWindows.

3. En Unix , distribuya el archivo de interfaces actualizado a todas las estacionesde trabajo de sistema principal en la configuración.

Qué hacer a continuación

Consulte IBM Tivoli Netcool/OMNIbus Installation and Deployment Guide para obtenermás detalles sobre la configuración de definiciones de servidor en el editor deservidor y la generación de archivos de interfaces.

Actualización del archivo de configuración del control deproceso por defecto

Un archivo de configuración de control de proceso se instala para cada agente deproceso. Este archivo contiene definiciones para cada proceso, servicio y sistemaprincipal dentro de la configuración de sistema de control de proceso.

El archivo de configuración de control de proceso nco_pa. Conf se encuentra en eldirectorio $nchome/Omnibus/etc .

Determinar qué procesos se deben ejecutar bajo el control de proceso e identifiquelas dependencias de proceso. Edite manualmente el archivo de configuración decontrol de proceso para configurar las definiciones de control de proceso:v Cree definiciones de servicio para agrupar procesos relacionados o dependientes.

Esto determinará el orden en el que se ejecuten procesos.v Cree definiciones de direccionamiento para especificar cada agente de proceso y

su sistema host asociado que se deberían incluir en la configuración.

Resultados

Cuando se inicia el agente de procesos, lee este archivo para establecer los valoresde configuración.Tareas relacionadas:“Definición de procesos, servicios y sistemas principales para el control deprocesos” en la página 284

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 271

Page 286: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Inicio manual de agentes de procesoPuede iniciar agentes de proceso de forma manual desde la línea de mandatos.

Para iniciar manualmente un agente de proceso, entre el siguiente mandato en lalínea de mandatos del sistema principal:

$NCHOME/omnibus/bin/nco_pad -name process_agent

En este mandato, process_agent es el nombre del agente de proceso, como se defineen el archivo Omni. DAT ( Unix) o archivo sql.ini ( Windows). Puede especificaropciones de línea de mandatos adicionales con este mandato.

El daemon del agente de procesos ( nco_pad ) se ejecuta en relación con laubicación $nchome/Omnibus .

UNIX El daemon de agente de procesos ( nco_pad ) sigue reglas de cita deestilo UNIX a la hora de decidir si expande variables de entorno dentro deargumentos de acciones externas. Las reglas son las siguientes, en orden deprioridad:v Las comillas dobles ("") dentro de una subserie delimitada por comillas sencillas

no tienen ningún efecto.v Las comillas simples ('') dentro de una subcadena delimitada por comillas dobles

no tienen ningún efecto.v Las variables de entorno dentro de comidas simples no se expanden.

Consulte la sección “Ejemplo” para ver más información.

Nota: Una nueva instancia del agente de procesos no puede gestionar los procesosiniciados por otra instancia y que se siguen ejecutando. Cuando el agente deprocesos se detiene y se reinicia, no conoce dichos procesos, y por lo tanto inicianuevas instancias de éstos. Las instancias anteriores siguen ejecutándose.

Nota: Si ejecuta el mandato nco_pad en un sistema que ya contiene un agente deprocesos que se instala como un servicio Windows, ningún mandato de que seespecifica para el servicio Windows se fusiona con opciones de línea de mandatospara ejecutar nco_pad desde el indicador de mandatos. Si hay un conflicto entre lasopciones que se han especificado para el servicio y las opciones que especifica enel indicador de mandatos, las opciones que especifique en el indicador demandatos tienen prioridad. La salida de la pantalla muestra las opcionesfusionadas.

Ejemplo

UNIX En el ejemplo siguiente, sólo $B se expande, porque $B está fuera deun par de comillas simples:’$A’$B’$C’

El ejemplo siguiente muestra cómo se puede evitar la expansión de salida aunquese utilicen comillas de salida. Para obtener las comillas simples de la salida, debeindicarse un carácter de escape con la serie entre comillas dobles, tal como seindica a continuación:"’"’$A’"’"’$B’"’"’$C’"’"

Esta serie genera la salida Siguiente:

272 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 287: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

’$A’$B’$C’

Para obtener la salida ’$A’$B’$C’ sin expansión, no basta con colocar la serie entrecomillas dobles porque, de acuerdo con las reglas de cita Unix, la serie seexpandiría. Para que ninguna expansión tenga lugar, toda la serie debe estar entrecomidas simples.

Opciones de línea de mandatos de agente de procesosCuando se ejecuta el agente de procesos con el mandato nco_pad, se puedenespecificar varias opciones de línea de mandatos para obtener una configuraciónadicional.

Las opciones de línea de mandaos del mandato $NCHOME/omnibus/bin/nco_pad sedescriben en la tabla siguiente. Las opciones de línea de mandatos de UNIX yLinux, que no se admiten en Windows, se marcan en la tabla.

Tabla 76. Opciones de línea de mandatos del daemon de agente de procesos nco_pad

Opción de línea de mandatos Descripción

UNIX

Linux

-admingroup serie

Especifica el nombre del grupo de usuarios de UNIXque tiene privilegios de administrador. Los miembrosde este grupo pueden acceder al sistema de controlde procesos. El nombre de grupo predeterminado esncoadmin.Nota: La opción -admingroup sólo es aplicable a lamodalidad de autenticación de UNIX.

-apicheck Si se especifica, se habilita la comprobación de API deSybase.

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 273

Page 288: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 76. Opciones de línea de mandatos del daemon de agente de procesosnco_pad (continuación)

Opción de línea de mandatos Descripción

-authenticate serie Especifica la modalidad de autenticación que se debeutilizar para verificar las credenciales de un usuario ode un daemon de agente de procesos remoto.

Nota: Cuando se está en modalidad FIPS 140-2, sólose puede especificar la opción PAM para laautenticación.

En UNIX, los valores son:

v UNIX: es la modalidad de autenticaciónpredeterminada, lo que significa que la funcióngetpwnam o getspnam de Posix se utiliza paraverificar las credenciales de usuario en lasplataformas UNIX. Según la configuración delsistema, las contraseñas se verifican utilizando elarchivo /etc/password, el archivo de contraseñaduplicado /etc/shadow, NIS o NIS+.

v PAM: si se especifica PAM como modalidad deautenticación, se utilizan Pluggable AuthenticationModules para verificar las credenciales de usuario.El nombre de servicio que utiliza la pasarelacuando se inicializa la interfaz PAM es netcool. Laautenticación PAM sólo está disponible en lasplataformas Linux, Solaris y HP-UX 11.

v KERBEROS: si se especifica KERBEROS comomodalidad de autenticación, la autenticaciónKerberos IV se utiliza para verificar las credencialesde usuario. Esto sólo está disponible en lossistemas Solaris que tengan un servidor deautenticación Kerberos IV instalado.

v HPTCB: si se especifica HPTCB como modalidad deautenticación, se utiliza el sistema de protección decontraseñas de HP-UX. Sólo está disponible ensistemas HP de confianza (seguros).

En Windows, el agente de procesos se autenticasegún la cuenta de Windows. El único valor para laopción -authenticate es WINDOWS; también es el valorpredeterminado.

-configfile serie Utilice este nombre de archivo, con una vía de accesorelativa a $NCHOME/omnibus, como archivo deconfiguración, en lugar del archivo predeterminado$NCHOME/omnibus/etc/nco_pa.conf.

-connections entero Establece el número máximo de conexiones que estándisponibles para ejecutar acciones externas. El valorpredeterminado es 30.

274 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 289: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 76. Opciones de línea de mandatos del daemon de agente de procesosnco_pad (continuación)

Opción de línea de mandatos Descripción

-cryptalgorithm serie Especifica el algoritmo criptográfico que se debeutilizar para descifrar contraseñas que se han cifradocon el programa de utilidad nco_aes_crypt y, acontinuación, se almacenan en el archivo deconfiguración del agente de procesos. Establezca elvalor serie de la siguiente manera:

v En modalidad FIPS 140–2, utilice AES_FIPS.

v Cuando se encuentre en una modalidad que no seaFIPS 140–2, podrá utilizar AES_FIPS o AES. UtiliceAES solo si tiene que mantener la compatibilidadcon contraseñas que se hayan cifrado utilizando lasherramientas proporcionadas en versionesanteriores a Tivoli Netcool/OMNIbus V7.2.1.

El valor que especifique debe ser idéntico al utilizadoal ejecutar el mandato nco_aes_crypt con el valor -c,para cifrar las contraseñas en la sección de definiciónde direccionamiento del archivo.

Utilice la opción de línea de mandatos-cryptalgorithm junto con la opción -keyfile.

-debug entero Habilita la depuración. El valor entero especifica lacantidad de información de depuración que se escribeen el registro. Los niveles disponibles son 1(depuración), 2 (información), 3 (aviso), 4 (error) y 5(muy grave). El valor predeterminado es 3.

Cuando se ejecuta en el nivel de depuración 1, elagente de procesos registra información sobre losprocesos que está a punto de iniciar. Esta informaciónincluye la vía de acceso al programa, cada uno de losargumentos de línea de mandatos y el ID de usuarioreal del proceso. Si procede, el registro tambiénincluye el directorio de trabajo actual y, además paraUNIX, el ID de grupo real y la umask (en formatooctal) del proceso.

Cuando se ejecuta en el nivel de depuración 2, elregistro contiene un mensaje que muestra la cuentade usuario en la que se está ejecutando el agente deprocesos.

-DNS serie Especifica un valor para sustituir el nombre de hosten entornos DNS. Debe ser igual que la entrada delarchivo de configuración.

-help Muestra información de ayuda sobre el agente deprocesos y finaliza.

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 275

Page 290: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 76. Opciones de línea de mandatos del daemon de agente de procesosnco_pad (continuación)

Opción de línea de mandatos Descripción

-keyfile serie Especifica la vía de acceso y el nombre del archivoque contiene la clave que se debe utilizar paradescifrar las contraseñas cifradas que se almacenanen el archivo de configuración del agente deprocesos.

El archivo de claves que especifique debe ser idénticoal que se utilizó al ejecutar el programa de utilidadnco_aes_crypt con el valor -k, a fin de cifrar lascontraseñas en la sección de definición dedireccionamiento del archivo.

Utilice la opción de línea de mandatos -keyfile juntocon la opción -cryptalgorithm para descifrarcontraseñas.

UNIX

Linux

-killprocessgroup

Si se especifica, cuando el daemon de agente deprocesos detiene un proceso, también envía una señalpara finalizar los procesos del mismo grupo deprocesos del sistema operativo.

-logfile serie Especifica un archivo de registro alternativo. EnUNIX, el registro puede redirigirse a stderr y stdout.En Windows, el registro siempre se escribe en unarchivo.

El archivo de registro predeterminado es:

$NCHOME/omnibus/log/nombre_pa.log

Donde nombre_pa es el nombre del agente de procesosque se especifica con la opción -name.

-logsize entero Especifica el tamaño de archivo de registro máximoen KB. El valor predeterminado es 1024 KB y eltamaño mínimo es 16 KB.

-msgpoolsize entero Especifica el número de mensajes disponibles para elagente de control de procesos.

-name serie Especifica el nombre del servidor de este agente deprocesos. Si no se especifica, el nombre del agente deprocesos predeterminado es NCO_PA.

-newlog Esta opción ha quedado obsoleta.

El agente de procesos siempre sobrescribe el archivode registro anterior.

-noautostart Si se especifica, el agente de procesos no inicianingún servicio automáticamente, aunque losservicios se hayan iniciado automáticamente en elarchivo nco_pa.conf.

-noconfig Si se especifica, el agente de procesos no lee elarchivo de configuración nco_pa.conf. Ello hace queel control de procesos se inicie sin información deconfiguración.

276 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 291: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 76. Opciones de línea de mandatos del daemon de agente de procesosnco_pad (continuación)

Opción de línea de mandatos Descripción

UNIX

Linux

-nodaemon

De forma predeterminada, el control de procesos sebifurca en segundo plano para ejecutarse comoproceso de daemon. Cuando se especifica -nodaemon,el proceso se ejecuta en primera plano.

-password serie Especifica la contraseña que se utiliza para iniciarsesión en otros agentes de procesos.

UNIX

Linux

-pidfile serie

Especifica la vía de acceso, relativa a$NCHOME/omnibus, del archivo en el que se almacena elPID del daemon de control de procesos. Cadadaemon de agente de procesos debe tener un archivode PID propio. El valor predeterminado es$NCHOME/omnibus/var/nombre_pa.pid, dondenombre_pa representa el nombre del agente deprocesos. Siempre que se asignen nombres exclusivosa todos los agentes de procesos, no habrá ningunanecesidad de cambiar este valor. Esto posibilita laejecución de más de un daemon de agente deprocesos en el mismo sistema.Consejo: En Windows, no hay ninguna restricciónsobre el número de agentes de procesos que sepueden ejecutar como servicios de Windows en elmismo host.

UNIX

Linux

-pidmsgpool entero

Especifica el tamaño de la agrupación de mensajes demanejo de señales.

UNIX

Linux

-redirectfile serie

Especifica un archivo al que se dirigen los mensajesde stderr y de stdout de los procesos iniciados por elagente de procesos. Es útil para la resolución deproblemas.Consejo: En Windows, se puede alcanzar unresultado similar ejecutando el agente de procesosdesde la línea de mandatos. Cada proceso hijo tienesu propia ventana de consola en la que se muestra lasalida del proceso. Como alternativa, si el agente deprocesos se ejecuta como servicio de Windows, abrala ventana Servicios y especifique los valoressiguientes en la ventana Propiedades para el servicio:Inicio de sesión, seleccione Cuenta del sistema localy, a continuación, seleccione Permitir que el serviciointeractúe con el escritorio.

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 277

Page 292: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 76. Opciones de línea de mandatos del daemon de agente de procesosnco_pad (continuación)

Opción de línea de mandatos Descripción

-retrytime entero Especifica el número de segundos durante el que unproceso iniciado por el control de procesos debeejecutarse para que se considere que se ha iniciadocorrectamente. El retrytime predeterminado es 5.

El agente de procesos intenta reiniciar un proceso siel proceso finaliza. Si el proceso finaliza tras elnúmero de segundos que indique retrytime, el agentede procesos intenta reiniciar el proceso de inmediato.Si el proceso finaliza antes del número de segundosindicado por retrytime, el agente de procesos intentareiniciar el proceso con un intervalo exponencial de 2,4, 8, 16, 32, ..., 256 segundos. El agente de procesosrestablece el intervalo de temporización tras ochointentos de inicio del proceso.

Si el proceso no puede ejecutarse durante más delnúmero de segundos que indique retrytime, tambiénse reduce el RetryCount (especificado en la definiciónde proceso) de ese proceso. Si el proceso se ejecutacorrectamente durante, al menos, el número desegundos que indique retrytime, el RetryCount sevuelve a establecer en su valor original. Si elRetryCount es 0, no existe ningún límite sobre elnúmero de intentos de reinicio.

-roguetimeout entero Especifica el tiempo en segundos que se debe esperara que el proceso concluya. El valor predeterminado es30 segundos y el mínimo es 5 segundos.

-secure Si se especifica -secure, todos los clientes tienen queautenticarse con un nombre de usuario válido y unacontraseña, que se especifican con las opciones delínea de mandatos -user y -password.

En modalidad no FIPS 140–2, la información de iniciode sesión se cifra automáticamente en la transmisióncuando el agente de procesos conecta con otro agentede procesos. En la modalidad FIPS 140–2, lainformación de inicio de sesión se pasa como textosin formato y SSL debe utilizarse si necesita cifradodurante la transmisión.

-stacksize entero Especifica el tamaño de la pila de hebras.

UNIX

Linux

-ticketdir serie

Directorio de tíquets de Kerberos si -authenticate seestablece en KERBEROS.

-traceevtq Habilita el rastreo de la actividad de cola de sucesos.

-tracemsgq Habilita el rastreo de la actividad de la cola demensajes.

-tracemtx Habilita el rastreo de los bloqueos de mútex.

-tracenet Habilita el rastreo de la biblioteca de red.

278 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 293: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 76. Opciones de línea de mandatos del daemon de agente de procesosnco_pad (continuación)

Opción de línea de mandatos Descripción

-user serie Especifica el nombre de usuario que se utiliza parainiciar sesión en otro agente de procesos.

Si no se especifica la opción -user, el nombre delusuario que se utiliza para establecer la conexión esel usuario que ejecuta el mandato.

Esta opción debe especificarse si se conecta con unagente de procesos que se ejecuta en modalidadsegura (mediante la opción -secure).

Este nombre de usuario y su contraseña asociada(que se especifica mediante -password) se utilizan sino se especifica ninguna credencial de inicio desesión en la sección de direccionamiento del archivode configuración de control de procesos.

-version Muestra la información de versión sobre el agente deprocesos y finaliza.

Consideraciones sobre seguridad del agente de procesosSi el agente de procesos se ejecuta como usuario con privilegios o un superusuarioen la máquina host, un administrador de Netcool/OMNIbus puede configuraracciones externas que se ejecutan en el sistema host como usuario privilegiado. Porejemplo, como usuario root (UNIX) o como el usuario del sistema local(Windows). Esto plantea un posible riesgo de seguridad. Por lo tanto, el agente deprocesos debe ejecutarse como un usuario no privilegiado.

Nota: Existen instancias cuando el agente de procesos debe ejecutarse como unusuario privilegiado. Por ejemplo, cuando se ejecuta la sonda SNMP que tiene queabrir el puerto 162 y cuando se está utilizando la autenticación de archivos localesy el agente de procesos debe poder leer el archivo /etc/shadow para autenticarusuarios (sólo UNIX).Tareas relacionadas:“Ejecución del agente de proceso como un usuario sin privilegios ( UNIX)”“Ejecución del agente de proceso como un usuario sin privilegios ( Windows)” enla página 280“Ejecución del agente de procesos como usuario privilegiado” en la página 281

Ejecución del agente de proceso como un usuario sin privilegios( UNIX)Utilice este procedimiento para configurar un agente de proceso se ejecute comousuario no privilegiado en UNIX.

Para configurar un agente de proceso para que se ejecute como usuario noprivilegiado en UNIX:1. Como un usuario raíz , instalará el script de arranque de agente de procesos.

El script de inicio se instala en el subdirectorio /etc/.2. Como usuario raíz , localice la entrada siguiente en el script de inicio (éste se

utiliza para iniciar el agente de procesos como usuario raíz ):

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 279

Page 294: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

if [ "$SECURE" = "Y" ]; then${OMNIHOME}/bin/nco_pad -name ${NCO_PA} -authenticate PAM -secure > /dev/null 2> /dev/nullelse${OMNIHOME}/bin/nco_pad -name ${NCO_PA} -authenticate PAM >/dev/null 2> /dev/nullfi

3. Para iniciar el agente de procesos como un usuario netcool , sustituya laentrada que se muestra anteriormente con lo siguiente:if [ "$SECURE" = "Y" ]; thensu - netcool -c "${OMNIHOME}/bin/nco_pad -name ${NCO_PA} -authenticate PAM -secure > /dev/null 2> /dev/null"elsesu - netcool -c "${OMNIHOME}/bin/nco_pad -name ${NCO_PA} -authenticate PAM > /dev/null 2> /dev/null"fi

El agente de procesos se ejecutará como el usuario netcool local y los permisosde acción externos de objectserver ahora se limitan a los privilegios de usuarionetcool en el sistema host.

Ejecución del agente de proceso como un usuario sin privilegios( Windows)Utilice este procedimiento para configurar un agente de proceso se ejecute comousuario no privilegiado en Windows.

Para configurar un agente de proceso para que se ejecute como usuario noprivilegiado en Windows:1. Como administrador, instale el agente de procesos como un servicio de

Windows. Para obtener más información, consulte Ejemplo: Instalar y ejecutarel agente de procesos como un servicio.

2. Desde el panel de control de Windows, haga doble clic en Herramientasadministrativas y, a continuación, en Servicios.

3. En la ventana Detalles de servicios, seleccione el servicio del agente de procesoy pulse Editar en la barra de herramientas.

4. Pulse la pestaña Iniciar sesión y cambie la selección del botón de selecciónIniciar la sesión como: de Cuenta de sistema local por Esta cuenta: y despuésseleccione el usuario netcool local.

5. Pulse Aceptar.

Nota: Es posible que tenga que reiniciar el servicio si previamente se hainiciado automáticamente como usuario privilegiado.El agente de procesos se ejecutará como el usuario netcool local y los permisosde acción externos de objectserver ahora se limitan a los privilegios de usuarionetcool en el sistema host.

280 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 295: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Ejecución del agente de procesos como usuario privilegiadoUtilice este procedimiento para configurar un agente de proceso para que seejecute como usuario privilegiado.

Hay instancias cuando el agente de procesos se debe ejecutar como usuarioprivilegiado. Por ejemplo, cuando se ejecuta el analizador SNMP que debe abrir elPuerto 162, o cuando se está utilizando la autenticación del archivo local y elagente deproceso debe poder leer el archivo /etc/shadow para autenticar usuarios (Unix sólo).

Para configurar un agente de proceso para ejecutarse como usuario privilegiado:1. Instale y ejecute el agente de proceso primario como usuario privilegiado y

configúrelo para que se ejecute en la máquina host utilizando el script de inicio( Unix ) o utilizando un servicio ( Windows ).

2. Ejecute un agente de proceso secundario como un usuario sin privilegios, yconfigúrelo para ejecutar acciones objectserver externas. También debeconfigurarse para que se ejecute en modalidad no de daemon, como un procesohijo del agente de proceso hijo. Por lo tanto, debe crear una entrada de procesoadicional en el archivo de configuración de agente de proceso primario, comose muestra en el ejemplo siguiente:nco_process ’NON_ROOT_PA’{Command ’$OMNIHOME/bin/nco_pad -name NON_ROOT_PA -nodaemon -configfile$OMNIHOME/etc/NON_ROOT_PA.conf’ run as 1000Host = ’hostx’Managed = TrueRestartMsg = ’${NAME} running as ${EUID} has been restored on ${HOST}.’AlertMsg = ’${NAME} running as ${EUID} has died on ${HOST}.’RetryCount = 0ProcessType = PaPA_AWARE}

Notas adicionales:

v En el ejemplo anterior, el agente de proceso secundario está establecido parainiciarse como usuario (UID) 1000 . También se establece para iniciarse conel conmutador de arranque nodaemon-. Esto le impide bifurcarse para unproceso hijo y permite gestionarlo mediante el agente de proceso primario.

v Debe definir un archivo de configuración para el agente de procesossecundario. Los permisos de archivo deben permitir acceder al usuario a ésteen el agente de proceso secundario en el que se está ejecutando actualmente.

v Debe modificar el archivo de propiedades asociado con el objectserver queactualmente se está ejecutando como un proceso bajo el agente de procesoprimario. Esto incluye establecer las propiedades siguientes: PA.Name,PA.Username y PA.Password.

Inicio automático de los agentes de proceso en UNIXEn UNIX, los scripts de inicio están disponibles para iniciar automáticamente elagente de procesos cuando se inicia el sistema.

Antes de empezar

Puede modificar los scripts de inicio antes de instalarlos, si es necesario.

En los sistemas operativos Linux, modifique el script de inicio denominado ncopara la versión de Linux que vaya a utilizar. El script contiene secciones para las

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 281

Page 296: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

versiones Red Hat y SUSE de Linux y esas secciones quedan delimitada porcomentarios en el script como se indica a continuación:### REDHAT ONLY...### END REDHAT ONLY

### SUSE ONLY...### END SUSE ONLY

Tenga en cuenta que el script contiene varias secciones independientes para lasversiones Red Hat y SUSE de Linux.

Además en Linux, modifique el script nco si va a utilizar PAM (PlugableAuthentication Modules) para la autenticación añadiendo el argumento-authentication PAM al script. Para la autenticación UNIX predeterminada, notiene que añadir nada.

Estos scripts se encuentran en el directorio siguiente:

$NCHOME/omnibus/install/startup

Este directorio contiene uno de los scripts de instalación siguientes, en función delsistema operativo:v aix5install

v hpux11install

v hpux11hpiainstall

v solaris2install

v linux2x86install

v linux2s390install

Para utilizar los scripts de inicio del agente de procesos, debe ejecutar el script deinstalación adecuado para el sistema operativo. (Es posible que tenga que convertirel script en ejecutable antes de ejecutarlo).

Para instalar los scripts de inicio de agente de procesos:1. Ejecute el script de instalación como usuario root. Por ejemplo, para instalar los

scripts en Solaris, ejecute solaris2install desde la ubicación$NCHOME/omnibus/install/startup. Se muestra la salida siguiente:Name of the Process Agent Daemon [NCO_PA]

2. Pulse Intro para aceptar el nombre del servidor de agentes de procesospredeterminado NCO_PA o especifique otro nombre de servidor. Se muestra lasalida siguiente:Should pa_name run in secure mode (y/n)? [y]

3. Pulse Intro para incluir la opción de línea de mandatos -secure cuando inicie elagente de procesos. La modalidad segura controla la autenticación de lassolicitudes de conexión con un nombre de usuario y una contraseña.Se muestra el mensaje siguiente:Enter value for environment variable NETCOOL_LICENSE_FILE,if required [27000@localhost]:

Nota: Aunque Tivoli Netcool/OMNIbus no exige una clave de licencia paraejecutarse, algunas sondas y pasarelas que no han pasado por un ciclo de

282 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 297: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

mantenimiento siguen exigiendo claves de licencia. Si va a ejecutar esospaquetes anteriores de sondas o pasarelas, seguirán exigiendo que se establezcala variable de entorno NETCOOL_LICENSE_FILE y que haya disponible unservidor de licencias de Netcool.

4. Si no utiliza un servidor de licencias, puede pulsar Intro con total seguridadpara ejecutar el script. Si tiene un servidor de licencias, pulse Intro para aceptarel valor predeterminado para la variable de entorno de licencias o especifiqueotro valor.

Resultados

Cada script de instalación copia o enlaza los archivos de configuración necesariosen el directorio de inicio del sistema. En algunos sistemas (por ejemplo, Solaris yHP-UX), también se proporciona la capacidad de detener los procesos al concluir elsistema.

Qué hacer a continuación

Para obtener información sobre la modificación de los scripts de inicio, consulte ladocumentación del sistema operativo en cuestión.

Inicio automático de agentes de proceso en WindowsEn Windows, puede instalar el agente de procesos como servicio Windows.

Utilice la ventana Servicios del Panel de control para asignar cualquiera de lassiguientes cuentas de inicio de sesión al servicio:v Cuenta de sistema local (LocalSystem).v Una cuenta que pertenezca al grupo de administradores en el sistema local.

Para obtener más información sobre cómo instalar y configurar un agente deproceso como servicio Windows, consulte IBM Tivoli Netcool/OMNIbus Installationand Deployment Guide.

Gestión de la configuración del sistema de control deprocesos

Después de que su sistema de control de proceso esté definido y que se esténejecutando los agentes del proceso, puede optar por efectuar cambios en laconfiguración de ejecutando los programas de utilidad de control de proceso. Loscambios de configuración que efectúe se aplican a la sesión actual solamente y nose guardan en el archivo de configuración.

También puede utilizar Netcool/OMNIbus Administrator para cambiar laconfiguración. Los cambios de configuración realizados desde netcool/OmnibusAdministrator pueden guardarse en el archivo de configuración.Conceptos relacionados:“Utilización de Netcool/OMNIbus Administrator para gestionar el control deproceso” en la página 303Tareas relacionadas:“Configuración y gestión de control de proceso desde la línea de mandatos” en lapágina 284

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 283

Page 298: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Configuración y gestión de control de proceso desde la línea demandatos

Puede definir los procesos, servicios y sistemas principales dentro del archivo deconfiguración de control de proceso. También puede utilizar los programas deutilidad de línea de mandatos para iniciar, detener y añadir un servicio o proceso,visualizar el estado de los servicios y procesos y concluir un agente de procesos.

Antes de poder gestionar el control de proceso utilizando cualquiera de estosrecursos, debe haber creado la configuración del sistema de control de proceso.Conceptos relacionados:“Utilización de Netcool/OMNIbus Administrator para gestionar el control deproceso” en la página 303Tareas relacionadas:“Creación e inicio de un sistema de red de control de proceso” en la página 268

Definición de procesos, servicios y sistemas principales parael control de procesos

Para ejecutar bajo el control de proceso, debe definir los procesos, servicios ysistemas principales dentro de un archivo de configuración de agente de proceso.Cuando se inicia el agente de procesos, lee este archivo para establecer los valoresde configuración.

El archivo de configuración del agente de procesos por defecto es:

$NCHOME/omnibus/etc/nco_pa.conf

El archivo consta de definiciones, cada una de las cuales contiene atributos yvalores asociados, para cada proceso, servicio y sistema principal. Las definicionesse listan en el orden siguiente en el archivo:1. Definiciones de proceso2. Definiciones de servicios3. Definiciones de seguridad (opcional)4. Definiciones de direccionamiento

Edite este archivo directamente para agregar o modificar definiciones. Mantengalos archivos de configuración en todos los hosts para asegurar que la informaciónde configuración del sistema principal permanece sincronizada en todos losagentes de proceso en la configuración.

Nota: Para impedir el acceso a los usuarios no autorizados, debe establecerse laseguridad de sistema operativo para archivos adecuadamente, tales como archivosde configuración, que pueden contener nombres de usuario y contraseñas.

284 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 299: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Definición de procesos en el archivo de configuración de agentede procesosDentro del archivo de configuración de agente del proceso, debe definir la lista deprocesos que deben estar ejecutando los agentes de proceso.

Ejemplo de definición de proceso

Un ejemplo de definición de proceso del archivo de configuración$NCHOME/omnibus/etc/nco_pa.conf se muestra a continuación:nco_process ’ObjectServer’{Command ’$NCHOME/omnibus/bin/nco_objserv -name NCOMS -pa SFOSYS1_PA’ run as 0Host = ’sfosys1’Managed = TrueRestartMsg = ’${NAME} running as ${EUID} has been restored on ${HOST}.’AlertMsg = ’${NAME} running as ${EUID} has died on ${HOST}.’RetryCount = 0ProcessType = PaPA_AWARE}

Descripción de definición de proceso

En la tabla siguiente se utiliza el ejemplo anterior para describir la información dela definición de proceso contenida en el archivo de configuración.

Tabla 77. Descripción de definición de proceso

Información deconfiguración Descripción

nco_process’ObjectServer’

Define el nombre del proceso. Este ejemplo es para un ObjectServer.Nota: Los nombres de proceso deben ser únicos para este agente de procesos. Si utiliza elmismo nombre de proceso más de una vez, todas las definiciones, excepto la primeradefinición de proceso, se ignoran y se genera un mensaje de aviso.

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 285

Page 300: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 77. Descripción de definición de proceso (continuación)

Información deconfiguración Descripción

Mandato La serie de mandato que inicia el proceso, tal como se entraría en la línea de mandatos.Utilice la vía de acceso completa para el mandato. Por ejemplo, para configurar unobjectserver denominado ncoms, escriba:

'$NCHOME/omnibus/bin/nco_objserv -name NCOMS -pa SFOSYS1_PA' run as 0

O escriba:

'$NCHOME/omnibus/bin/nco_objserv -name NCOMS -pa SFOSYS1_PA' run as 'root'

En este ejemplo:

v La opción -pa especifica el agente de proceso que utiliza objectserver para ejecutarautomatizaciones externas. En este ejemplo, el nombre de agente de proceso se especificacomo SFOSYS1_PA.

v La opción run as indica al sistema de host que ejecute el objectserver como el usuarioespecificado. En Unix, puede entrar el ID de Usuario (generalmente 0 ), o escribir elnombre de usuario que aparece entre comillas simples (normalmente root). Cuando seentra un nombre de usuario, el agente de procesos busca el ID de usuario a utilizar. Si elagente de procesos no se está ejecutando como root , la opción run as se ignora, y elproceso se ejecuta como el usuario que ejecuta el agente de proceso.

En Windows, todos los procesos se ejecutan con la misma cuenta de usuario que elagente de procesos; establezca siempre la opción run as en 0 .Consejo: En Windows, puede utilizar %NCHOME%, $NCHOME, o el formatoexpandido de la variable de entorno, en la vía de acceso para el mandato. También esposible utilizar barras inclinadas (/), barras inclinadas invertidas (\) o dobles barrasinclinadas invertidas (\\) como separadores.

Puede establecer los siguientes atributos de proceso adicionales añadiéndolos al principiode la serie de mandato:

v Cwd : Establezca el directorio de trabajo actual para el valor especificado.

En Windows, puede especificar el directorio con cualquiera de estos formatos: MS-DOS(por ejemplo, C:\temp),Unix (por ejemplo,/temp/mydir),y UNC(por ejemplo,\ \servidor\ share\ mydir ). Las barras inclinadas invertidas individuales y doblestambién puede utilizarse como separadores.

Cuando ejecute el agente de proceso desde la línea de mandatos en Unix y Windows, eldirectorio de trabajo para todos los procesos hijo es el directorio desde el que se hainiciado el agente de procesos. Cuando ejecute el agente de proceso como daemon Unix,el directorio de trabajo para todos los procesos hijo es $nchome/Omnibus . Cuando ejecutael agente de proceso como un servicio Windows, el directorio de trabajo predeterminadodel agente de proceso de todos los procesos secundarios originados por el agente deproceso es %NCHOME%\omnibus\log.

v Setgid : establezca el ID de grupo del proceso con el valor especificado. Es un atributoespecífico de UNIX.

v Umask : establezca umask del proceso al valor especificado. Es un atributo específico deUNIX.

El formato para especificar cada uno de estos atributos es el siguiente:

Command ’[CWD=directory_path]commandpath options’ run as user

Command ’[SETGID=groupID]commandpath options’ run as user

Command ’[UMASK=permission]commandpath options’ run as user

Nota: Debe especificar los atributos como se muestra, entre corchetes, sin espacios.

286 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 301: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 77. Descripción de definición de proceso (continuación)

Información deconfiguración Descripción

Mandato (continúa de la página anterior)

Ejemplos (UNIX):

Command ’[CWD=/opt/netcool/]$NCHOME/omnibus/bin/nco_objserv -name NCOMS2 -paNCO_PA’ run as 1253

Command ’[SETGID=ncoadmin]$NCHOME/omnibus/bin/nco_objserv -name NCOMS2 -pa NCO_PA’run as 1253

Command ’[UMASK=u=rwx,g=rx,o=rx]$NCHOME/omnibus/bin/nco_objserv -name NCOMS2 -paNCO_PA’ run as 1253Consejo: En el ejemplo anterior con el valor UMASK, se asignan permisos de escritura alusuario actual, pero se eliminan para todos los otros usuarios. Alternativamente, puedeespecificar esto como [UMASK=022].

Command ’[UMASK=077]$NCHOME/omnibus/bin/nco_objserv -name NCOMS2 -pa NCO_PA’ run as1253

Puede especificar uno o más de los atributos de la serie de mandato. Por ejemplo:

Command ’[CWD=/tmp][SETGID=ncoadmin][UMASK=u=rwx,g=,o=]$NCHOME/omnibus/bin/nco_objserv -name NCOMS2 -pa NCO_PA’ run as 1253

Ejemplo (Windows):

Command ’[CWD=C:\temp]%NCHOME%\omnibus\bin\nco_objserv -name NCOMS2 -pa NCO_PA’ runas 0

Host El nombre del host en el que se debe ejecutar el proceso. El control de proceso resuelveautomáticamente el nombre del agente de proceso cuandosea necesario.

Gestionado Puede tener cualquiera de estos valores:

v True : el proceso se reinicia automáticamente si se cierra.

v False : el proceso no se reinicia automáticamente si se cierra.

RestartMsg Contiene el mensaje que debe enviarse al syslog UNIX o el visor de sucesos de Windows siel proceso se reinicia. Por ejemplo, El ObjectServer se ha reiniciado.

AlertMsg Contiene el mensaje que debe enviarse al syslog UNIX o el visor de sucesos de Windows siel proceso se cierra. Por ejemplo, El ObjectServer se ha desconectado.

RetryCount Especifica el número de intentos de reinicio que han de aplicarse si el proceso se cierra enel tiempo especificado por la opción de línea de mandatos nco_pad -retrytime . Si seestablece en 0, no hay límite en el número de intentos de reinicio. El valor por omisión es 0.

ProcessType Puede tener el valor PaPA_AWARE para procesos que tienen en cuenta los agentes de procesoy PaNOT_PA_AWARE para los que no los tienen en cuenta.

Palabras clave de expansión

Puede incluir palabras clave de expansión en las entradas RestartMsg yAlertMsg del archivo de configuración. Las palabras clave de expansión actúan

como variables y contienen información sobre el proceso que se haya reiniciado.

Las palabras clave de expansión se muestran en la tabla siguiente.

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 287

Page 302: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 78. Palabras clave de expansión

Palabra clave de expansión Descripción

${NAME} El nombre del proceso.

${HOST} El nombre del host que ejecuta el proceso.

${EUID} El ID de usuario efectivo bajo el cual seejecuta el proceso.

${COMMAND} El mandato que define el proceso.

Alerta y reinicio de syslog o mensajes del visor de sucesos

Cuando un mensaje de alerta o reinicio son generados por el daemon del agentede procesos nco_pad, se pasa al Unix syslog o el visor de sucesos de Windows.syslog Tivoli Netcool/OMNIbus tiene un analizador de syslog que puedesupervisar estos mensajes y convertirlos en las alertas de objectserver. Para obtenermás información sobre el analizador Syslog, consulte la documentación deanalizador que está disponible en el Tivoli Network Management InformationCenter enhttp://publib.boulder.ibm.com/infocenter/tivihelp/v8r1/index.jsp.

Los mensajes de alerta y reinicio seenvían al Unix syslog o al visor de sucesos deWindows como avisos. El mensaje tiene el formato siguiente:HOSTNAME : ALERT_OR_RESTART_MSG : MSG

HOSTNAME es el nombre del sistema principal que ha informado del problema.ALERT_OR_RESTORE_MSG describe el tipo de mensaje. Msg es el texto que se hadefinido en el archivo de configuración para ese proceso.

Definición de servicios en el archivo de configuración de agentede procesosEn el archivo de configuración de agente dentro del proceso, puede definirservicios para agrupar procesos relacionados y configurar las interdependencias delos procesos. Los procesos ya deben estar definidos en la lista de procesos dentrodel archivo.

Ejemplo de definición de servicio

Un ejemplo de definición de servicio del archivo de configuración$NCHOME/omnibus/etc/nco_pa.conf se muestra a continuación:nco_service ’Omnibus’{ServiceType = MasterServiceStart = Non-Autoprocess ’ObjectServer’ NONEprocess ’Proxy’ ’ObjectServer’process ’Probe’ ’Proxy’process ’Probe-1’ ’ObjectServer’process ’Sleep’ 5}

Descripción de definición de servicio

En la tabla siguiente se utiliza el ejemplo anterior para describir la información dela definición de servicio contenida en el archivo de configuración.

288 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 303: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 79. Descripción de definición de servicio

Información de configuración Descripción

nco_service ’Omnibus’ Define el nombre del Servicio (por ejemplo, Omnibus).Nota: Cada nombre de servicio debe ser exclusivodentro de la red de control de proceso.

ServiceType Define si este servicio debe estar iniciado antes detodos los demás servicios y manejado como elservicio maestro del que dependen otros servicios.Esto puede establecerse como maestro o no maestro.

ServiceStart Esto se puede establecer en Auto para iniciar elservicio tan pronto como nco_pad se haya iniciado, yno-auto si el servicio debe iniciarse manualmente conel mandato nco_pa_start .

proceso Cada entrada de proceso define un proceso que debeejecutarse como parte del servicio. Puede indicardependencias de proceso de manera que no se puedainiciar el proceso antes de que otro ya esté enejecución.Nota: Debe incluir un proceso sólo una vez dentro decualquiera de las definiciones de servicio en elarchivo de configuración.

Especificación de dependencias de proceso

Al definir un servicio, puede utilizar el atributo proceso para definir los procesosque se deben ejecutar como parte de los servicios. Puede añadir dependencias encada uno de los procesos en el servicio. El formato del atributo process es elsiguiente:process ’processname’ dependency

En este atributo, processname es el nombre del proceso que se ha definido en la listade procesos y dependency puede ser un valor numérico, un valor de serie o NONE .

Si dependency es un número, indica una dependencia de tiempo, en segundos, parainiciar el proceso dependientes. Una dependencia de tiempo siempre se midedesde el inicio del servicio. Por ejemplo, si especifica 5 , el proceso se inicia cincosegundos después de que se haya iniciado el servicio.

Si dependency es una serie, indica otro proceso que tiene en cuenta el agente deprocesos en el mismo servicio.

Restricción: Un proceso no puede depender de otro proceso que es dependientedel tiempo. Si especifica una dependencia en un proceso dependiente de la hora, seañade un mensaje de error al archivo de registro de control para el proceso y acualquier proceso dependiente y proceso hijo se le asigna un estado DEAD. Elarchivo de registro predeterminado es $NCHOME/omnibus/log/pa_name.log, dondepa_name es el nombre del agente de procesos.

El tipo dependency NONE no especifica ninguna dependencia.

En el ejemplo de la definición de servicio anterior del servicio Omnibus , elproceso objectserver se inicia primero porque no tiene ninguna dependencia.Cinco segundos después de que se inicie el ObjectServer, lo hace el proceso Sleep.

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 289

Page 304: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Cuando objectserver se ejecuta satisfactoriamente, proxy y Probe-1 se inician.Cuando el servidor proxy está en ejecución, se inicia el proceso probe . Si hayalgún proceso que no se ha especificado como dependiente del proceso Sleepdependiente de la hora, dicho proceso no se inicia y se le asigna el estado DEAD.Referencia relacionada:“Definición de procesos en el archivo de configuración de agente de procesos” enla página 285

Definición de hosts seguros en el archivo de configuración deagente de procesosPuede especificar que sólo determinados hosts se puedan conectar a agentes deproceso añadiendo una definición de seguridad en el archivo de configuración deagente de procesos. Si no crea una definición de seguridad, cualquier procesopuede conectarse desde cualquier host.

Dentro del archivo de configuración $NCHOME/omnibus/etc/nco_pa.conf, ladefinición de seguridad se inserta entre las definiciones de servicio y lasdefiniciones de direccionamiento para los hosts. Puede crear una definición deseguridad sin hosts especificados, como se indica a continuación:nco_security{}

Cuando no se especifica ningún sistema principal, sólo los procesos que se estánejecutando en el sistema principal actual o que se encuentran en cualquier host quese lista en la definición de direccionamiento pueden conectarse.

Los procesos que se ejecutan en hosts que no se listan en la definición dedireccionamiento pueden conectarse sólo si su sistema principal se lista en ladefinición de seguridad.

El agente de procesos compara la dirección IP de la conexión de entrada con ladirección IP de cada entrada de las definiciones de seguridad y direccionamiento.El agente de proceso también comprueba la dirección IP del host local. Sólo laprincipal dirección del host que ejecuta el daemon de agente de proceso se añadeautomáticamente a la definición de seguridad. Debe añadir la dirección de bucle(127.0.0.1) y las interfaces secundaris, si es necesario.

Nota: Cuando un proceso que se conecta al agente de procesos se ejecuta en unhost con varias interfaces, debe añadir la dirección de la interfaz más próxima aldaemon del agente de proceso. No es necesario que sea la dirección principal dedicho host ni, en el caso del objectserver ( nco_objserv ) o el daemno de agente deproceso ( nco_pad ), no tiene que ser la dirección en el editor de servidor (editornco_xigen ).

Puede especificar los siguientes tipos de entradas en la definición de seguridad:v Un nombre de host, en cuyo caso se realiza una búsqueda para encontrar la

dirección IP correspondientev Una dirección IPv4 completa en notación de puntos decimalv Una dirección IPv6 completa, en notación de taquigrafía o separada por dos

puntos

Una dirección IPv4 en notación decimal con puntos puede contener los siguientescomodines:v ? coincide con un carácter

290 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 305: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

v * coincide con cualquier número de caracteres

Puede agregar/ n para una dirección IPv6 especificada, donde n es un número,para representar direcciones IPv6 para las que los primeros n bits coinciden con ladirección IP.

Ejemplo de definición de seguridad

El ejemplo siguiente de definición de seguridad permite conexiones desde procesosen los hosts siguientes:v alphav 192.9.200.34v Cualquier host de subred 193.42.52.0v Cualquier host con una dirección IPv6 donde los primeros 10 bits coinciden con

fe80 :: 203: baff: fe2a : 6bf0v fe80::203:baff:fe2a:6bf0nco_security{host ’alpha’host ’192.9.200.34’host ’193.42.52.*’host ’fe80::203:baff:fe2a:6bf0/10’host ’fe80::203:baff:fe2a:6bf0’}

Definición de los hosts de direccionamiento en el archivo deconfiguración del agente de procesosPara especificar los hosts que participan en el sistema de control de procesos, debedefinir los nombres de host de agente de procesos en el archivo de configuracióndel agente de procesos.

Cada entrada de host define el nombre del host (por ejemplo, sfosys1) y el nombredel agente de procesos que se debe utilizar en el sistema de control de procesos(por ejemplo, SFOSYS1_PA). Para cada definición de host, también puedeespecificar las credenciales de nombre de usuario y contraseña para conectarse alagente de procesos.

Ejemplo de definición de direccionamiento

A continuación se muestra una definición de direccionamiento de ejemplo en elarchivo de configuración $NCHOME/omnibus/etc/nco_pa.conf:nco_routing{host ’sfosys1’ ’SFOSYS1_PA’ ’nombre_usuario’ ’contraseña’host ’sfosys2’ ’SFOSYS2_PA’ ’nombre_usuario’ ’contraseña’}

Nota: Las entradas nombre_usuario y contraseña son obligatorias si se ejecuta elagente de procesos remoto en modalidad segura. Si va a ejecutar el agente deprocesos remoto en modalidad segura, los nombres de usuario y las contraseñasson opcionales.

Si el agente de procesos utiliza la autenticación de UNIX (el valor predeterminadoen UNIX), el nombre_usuario debe ser un usuario del sistema operativo que seamiembro del grupo ncoadmin (el valor predeterminado) o cualquier otro grupo

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 291

Page 306: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

administrativo que se crea para otorgar acceso al sistema de control de procesos. Elusuario root debe ejecutar un daemon de agente de procesos que se ejecute enmodalidad segura.

En Windows, nombre_usuario debe ser el nombre del usuario de una cuenta localválida, una cuenta de dominio o una cuenta de UPN.

Nota: Para impedir que usuarios no autorizados obtengan acceso, debeestablecerse correctamente la seguridad del sistema operativo para los archivos quecontengan nombres de usuario y contraseñas.

Cuando ejecute el daemon de agente de procesos nco_pad, puede especificar elnombre de usuario y la contraseña utilizando las opciones de línea de mandatos-user y -password. Esto sustituye las entradas del archivo de configuraciónnco_pa.conf.

Cifrado de contraseñas de texto sin formato en las definiciones dedireccionamiento

Podemos cifrar las contraseñas de inicio de sesión de texto sin formato que sealmacenan en el archivo nco_pa.conf.

Los detalles de cifrado de contraseñas para trabajar en modalidad FIPS 140–2 y enmodalidad no FIPS 140–2 se describen en la tabla siguiente.

Tabla 80. Cifrado de contraseñas en modalidad FIPS 140–2 y en modalidad no FIPS 140–2

Modalidad Acción

Modalidad FIPS140–2

Cuando se trabaja en modalidad FIPS 140–2, las contraseñas se puedenespecificar en texto sin formato o en formato cifrado. Puede cifrar lascontraseñas utilizando el cifrado de valor de propiedad, como se indicaa continuación:

1. Si todavía no dispone de una clave para cifrar la contraseña, creeuna ejecutando el programa de utilidad nco_keygen, que se halla en$NCHOME/omnibus/bin.

2. Ejecute el programa de utilidad nco_aes_crypt para cifrar lacontraseña con la clave que ha generado el programa de utilidadnco_keygen. El programa de utilidad nco_aes_crypt también seencuentra en $NCHOME/omnibus/bin. Fíjese que debe especificarAES_FIPS como algoritmo para utilizarlo a la hora de cifrar lacontraseña.

3. Copie la contraseña cifrada en la definición de direccionamientoadecuada en el archivo de configuración.

292 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 307: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 80. Cifrado de contraseñas en modalidad FIPS 140–2 y en modalidad no FIPS140–2 (continuación)

Modalidad Acción

Modalidad noFIPS 140–2

En modalidad no FIPS 140–2, puede utilizar el programa de utilidadnco_pa_crypt o utilizar el cifrado de valores de propiedad para cifrarcontraseñas de inicio de sesión de texto sin formato en UNIX. EnWindows, puede utilizar el programa de utilidad nco_g_crypt o utilizarel cifrado de valores de propiedad. Lleve a cabo las acciones siguientes:

v Para cifrar una contraseña con el programa de utilidad nco_pa_crypto nco_g_crypt, ejecute el mandato como se indica a continuación:

– UNIX:

$NCHOME/omnibus/bin/nco_pa_cryptcontraseña_texto_sin_formato

– Windows:

%NCHOME%\omnibus\bin\nco_g_cryptcontraseña_texto_sin_formato

En estos mandatos, contraseña_texto_sin_formato representa lacontraseña en formato sin cifrar. El programa de utilidad de cifradomuestra una versión cifrada de la contraseña. Copie la contraseñacifrada en la definición de direccionamiento adecuada en el archivode configuración.

v Para cifrar una contraseña utilizando el cifrado del valor depropiedad, necesita una clave que se genera con el programa deutilidad nco_keygen. Entonces podrá ejecutar nco_aes_crypt paracifrar la contraseña con la clave. Observe que puede especificarAES_FIPS o AES como algoritmo para cifrar la contraseña. Utilice AESsolamente si necesita mantener la compatibilidad con contraseñasque se cifraron utilizando las herramientas proporcionadas enversiones anteriores a la 7.2.1 de Tivoli Netcool/OMNIbus.

Copie la contraseña cifrada en la definición de direccionamientoadecuada en el archivo de configuración.

Nota: En UNIX, aunque la contraseña se especifique en el línea de mandatos, noaparece en la salida del mandato ps.

Las contraseñas que se cifran con nco_pa_crypt se descifran mediante el agente decontrol de procesos remoto.

Las contraseñas que se cifran con nco_aes_crypt se descifran mediante el daemonde agente de procesos y se pasan a los agentes de proceso remotos como texto sinformato. Para descifrar las contraseñas, debe establecer las opciones de línea demandatos -cryptalgorithm y -keyfile cuando ejecute nco_pad. Estas opcionesespecifican el algoritmo y el archivo de claves que se debe utilizar para eldescifrado.

Para obtener más información sobre el uso del cifrado de valores de propiedad,consulte la publicación IBM Tivoli Netcool/OMNIbus Installation and DeploymentGuide.

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 293

Page 308: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tareas relacionadas:“Creación de grupos de usuario Unix para el sistema de control de procesos” en lapágina 269Referencia relacionada:“Opciones de línea de mandatos de agente de procesos” en la página 273

Ejemplo: Archivo de configuración de agente de procesoEste ejemplo muestra el contenido de un archivo de configuración de agente deprocesos $NCHOME/omnibus/etc/nco_pa.conf.#############################################################################NCO_PA3## Process Agent Daemon Configuration File 1.1## Ident: $Id: nco_pa.conf 1.3 2002/05/21 15:28:10### List of processes#nco_process ’NO1_PROXY_ProxyServer’{Command ’$NCHOME/omnibus/bin/nco_proxyserv -name NETPROXY -server NETOPS1’ run as 0Host = ’objser1’Managed = TrueRestartMsg = ’${NAME} running as ${EUID} has been restored on ${HOST}.’AlertMsg = ’${NAME} running as ${EUID} has died on ${HOST}.’RetryCount = 0ProcessType = PaPA_AWARE}nco_process ’SFOSYS_ObjectServer’{Command ’$NCHOME/omnibus/bin/nco_objserv -name NETOPS1 -pa OBJSER1_PA’ run as 0Host = ’objser1’Managed = TrueRestartMsg = ’${NAME} running as ${EUID} has been restored on ${HOST}.’AlertMsg = ’${NAME} running as ${EUID} has died on ${HOST}.’RetryCount = 0ProcessType = PaPA_AWARE}nco_process ’Syslog_Probe’{Command ’$NCHOME/omnibus/probes/nco_p_syslog’ run as 0Host = ’objser1’Managed = TrueRestartMsg = ’${NAME} running as ${EUID} has been restored on ${HOST}.’AlertMsg = ’${NAME} running as ${EUID} has died on ${HOST}.’RetryCount = 0ProcessType = PaNOT_PA_AWARE}nco_process ’Mttrapd_Probe’{Command ’$NCHOME/omnibus/probes/nco_p_mttrapd’ run as 0Host = ’objser1’Managed = TrueRestartMsg = ’${NAME} running as ${EUID} has been restored on ${HOST}.’AlertMsg = ’${NAME} running as ${EUID} has died on ${HOST}.’RetryCount = 0ProcessType = PaNOT_PA_AWARE}nco_process ’MyScript’{Command ’$HOME/myscript.sh’ run as 0Host = ’objser1’Managed = FalseRestartMsg = ’${NAME} running as ${EUID} has been restored on ${HOST}.’AlertMsg = ’${NAME} running as ${EUID} has died on ${HOST}.’RetryCount = 0ProcessType = PaNOT_PA_AWARE}## List of Services#nco_service ’Core’{ServiceType = MasterServiceStart = Auto

294 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 309: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

process ’MyScript’ NONE# ObjectServer started after 20 seconds to allow the script to finishprocess ’SFOSYS_ObjectServer’ 20# Proxy server started after the ObjectServer startsprocess ’NO1_PROXY_ProxyServer’ ’SFOSYS_ObjectServer’# Trapd probe and then Syslog probe started after the proxy server startsprocess ’Mttrapd_Probe’ ’NO1_PROXY_ProxyServer’process ’Syslog_Probe’ ’NO1_PROXY_ProxyServer’}## ROUTING TABLE## ’user’ - (optional) only required for secure mode PAD on target host# ’user’ must be member of a UNIX administrative group if using UNIX authentication# On Windows, ’user’ must be the user name of a valid local, domain, or UPN account# ’password’ - (optional) only required for secure mode PAD on target host# can be plain text, or encrypted using encryption tool provided for specific# platform and security requirementsnco_routing{host ’objser1’ ’OBJSER1_PA’}

Gestión de control de procesos mediante los programas deutilidad de control de procesos

El sistema de control de procesos proporciona programas de utilidad de línea demandatos para gestionar y cambiar la configuración de Tivoli Netcool/OMNIbus.Puede utilizar esos programas de utilidad para iniciar, detener y añadir un servicioo proceso, mostrar el estado de los servicios y los procesos y concluir un agente deprocesos.

Los programas de utilidad de línea de mandatos son los siguientes:v nco_pa_status

v nco_pa_start

v nco_pa_stop

v nco_pa_shutdown

v nco_pa_addentry

Cada programa de utilidad solicita la contraseña.

Visualización del estado de los servicios y procesos(nco_pa_status)Puede ejecutar el programa de utilidad nco_pa_status para recuperar el estado deservicos en la configuración del sistema de control de proceso. Para cada servicio,el programa de utilidad nco_pa_status devuelve una lista de procesos definidos, elestado de cada proceso y el identificador de proceso.

Para visualizar el estado de servicio, especifique el mandato siguiente:

$NCHOME/omnibus/bin/nco_pa_status -server string

En este mandato, serie es el nombre de agente de proceso. De forma opcional,puede ejecutar el mandato con opciones adicionales de línea de mandatos.

A continuación se muestra un ejemplo de la salida:

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 295

Page 310: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

--------------------------------------------------------------------------Service Name Process Name Hostname User Status PID--------------------------------------------------------------------------Master Service ObjectServer SFOSYS1 root RUNNING 16751

Proxy SFOSYS1 root RUNNING 16752Sleep SFOSYS1 root RUNNING 16753Probe SFOSYS1 root RUNNING 16754

--------------------------------------------------------------------------

El valor PID para procesos gestionados es el identificador de proceso Unix, o elPID como se muestra en el Administrador de tareas de Windows.

La tabla siguiente describe cada uno de los niveles de estado.

Tabla 81. Descripciones de los estados de servicio

Nivel de estado Descripción

EN EJECUCIÓN El proceso está activo.

INICIANDO Una solicitud de inicio ha sido emitida.

PENDIENTE El proceso está a la espera de que se complete unadependencia de tiempo. Este estado también puedeindicar que el proceso no ha podido iniciarsecorrectamente (independientemente de cualquierdependencia de proceso).

ESPERANDO El proceso está a la espera de que empiece unadependencia.

ELIMINADO El proceso no está en ejecución.

ERROR No ha sido posible recuperar un estado en el agentede procesos.

Si se indica a un agente de proceso que ejecute un proceso mediante un agente deproceso que se ejecuta en una máquina distinta, el agente de proceso remoto noconserva ningún registro de los procesos. Si el agente de proceso remoto sedetiene, el proceso continúa ejecutándose. Cuando el agente de proceso remoto sereinicia, no tiene ningún registro del proceso, y, por tanto, el estado de procesopara este proceso huérfano se lista como inactivo.

Puede reiniciar manualmente el proceso mediante el programa de utilidadnco_pa_start .

Opciones de línea de mandatos para nco_pa_status

Las opciones de línea de mandatos del programa de utilidad nco_pa_status sedescriben en la tabla siguiente.

Tabla 82. Opciones de línea de mandatos para nco_pa_status

Opción de la línea de mandatos Descripción

-help Muestra la ayuda en las opciones de la línea demandatos y sale.

-nosecure Se conecta a agentes de proceso en una modalidad noprotegida que no cifra la información de inicio desesión durante la transmisión.

-password string La contraseña que debe utilizarse para el agente deprocesos.

296 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 311: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 82. Opciones de línea de mandatos para nco_pa_status (continuación)

Opción de la línea de mandatos Descripción

-server string Nombre del agente de proceso con el que se debecontactar.

-user string Nombre de usuario del agente de procesos. El valorpor defecto es el usuario que ejecuta el mandato.

-version Muestra la información de versión de software y, acontinuación, se cierra.

Referencia relacionada:“Inicio de un servicio o proceso (nco_pa_start)”

Inicio de un servicio o proceso (nco_pa_start)Puede ejecutar el programa de utilidad nco_pa_start para iniciar un proceso oservicio en cualquier ubicación de la configuración del sistema de control deproceso.

Si el servicio o proceso ya se ha iniciado, se ignora el mandato.

Para iniciar un proceso o servicio, entre el mandato:

$NCHOME/omnibus/bin/nco_pa_start command_line_options

En este mandato, command_line_options representa una o más opciones de línea demandatos que puede especificar para el programa de utilidad nco_pa_start .Puede especificar solo un servicio o proceso.

Opciones de línea de mandatos para nco_pa_start

Las opciones de línea de mandatos del programa de utilidad nco_pa_start sedescriben en la tabla siguiente.

Tabla 83. Opciones de línea de mandatos para nco_pa_start

Opción de la línea de mandatos Descripción

-help Muestra información de ayuda sobre las opciones delínea de mandatos y sale.

-nosecure Se conecta a agentes de proceso en una modalidad noprotegida que no cifra la información de inicio desesión durante la transmisión.

-password string La contraseña que debe utilizarse para el agente deprocesos.

-process string Nombre del proceso que debe iniciarse.

-server string Nombre del agente de proceso con el que se debecontactar.

-service string Nombre del servicio que debe iniciarse.

-user string Nombre de usuario del agente de procesos. El valorpor defecto es el usuario que ejecuta el mandato.

-version Muestra la información de versión de software y, acontinuación, se cierra.

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 297

Page 312: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Detención de un servicio o de un proceso (nco_pa_stop)Puede ejecutar el programa de utilidad nco_pa_stop para detener un servicio o unproceso en cualquier ubicación de la configuración del sistema de control deprocesos.

Si el servicio o el proceso ya se ha detenido, el mandato se pasa por alto.

Cuando detenga un servicio, se detendrán todos los procesos que estén definidosen ese servicio. cuando detenga un proceso, el estado de los procesos dependientespermanecerá inalterado; por ejemplo, si se ha detenido un producto ObjectServer,los sondeos que dependan de él seguirán ejecutándose.

Para detener un servicio o un proceso, especifique el mandato siguiente:

$NCHOME/omnibus/bin/nco_pa_stop opciones_línea_mandatos

En este mandato, opciones_línea_mandatos representa una o más opciones de líneade mandatos que se pueden especificar para el programa de utilidad nco_pa_stop.Sólo puede especificar un servicio o un proceso.

Opciones de línea de mandatos para nco_pa_stop

Las opciones de línea de mandatos del programa de utilidad nco_pa_stop sedescriben en la tabla siguiente.

Tabla 84. Opciones de línea de mandatos para nco_pa_stop

Opción de línea de mandatos Descripción

-force Si se especifica, no se emite ningún aviso si elproceso o el servicio no se está ejecutando.

-help Muestra la ayuda sobre las opciones de línea demandatos y finaliza.

-nosecure Conecta con los agentes de procesos en unamodalidad no segura que no cifra la información deinicio de sesión durante la transmisión.

-password serie Contraseña que se debe utilizar para el agente deprocesos.

-process serie Nombre del proceso que se debe detener.

-server serie Nombre del agente de procesos con el que se debecontactar.

-service serie Nombre del servicio que se debe detener.

-user serie Nombre del usuario del agente de procesos. El valorpredeterminado es el usuario que ejecuta el mandato.

-version Muestra la información de versión del software yfinaliza.

298 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 313: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Cierre de un agente de procesos (nco_pa_shutdown)Puede ejecutar el programa de utilidad nco_pa_shutdown para concluir unprocesode agente y opcionalmente detener los servicios y procesos asociados.

Para cerrar un agente de procesos, especifique el mandato siguiente:

$NCHOME/omnibus/bin/nco_pa_shutdown command_line_options

En este mandato, command_line_options representa una o más opciones de línea demandatos que puede especificar para el programa de utilidad nco_pa_shutdown .

Opciones de línea de mandatos para nco_pa_shutdown

Las opciones de línea de mandatos del programa de utilidad nco_pa_shutdown sedescriben en la tabla siguiente.

Tabla 85. Opciones de línea de mandatos para nco_pa_shutdown

Opción de la línea de mandatos Descripción

-help Muestra información de ayuda sobre las opciones delínea de mandatos y sale.

-nosecure Se conecta a agentes de proceso en una modalidad noprotegida que no cifra la información de inicio desesión durante la transmisión.

-option string Especifica como se completa el cierre. Puede ser STOPpara concluir todos los procesos que el agente deprocesos gestiona localmente, o LEAVE para dejar laprocesos gestionados localmente que se ejecutandespués de la conclusión. Si -option no se especificaen la línea de mandatos, el programa de utilidadmuestra un menú con las opciones de conclusión y lesolicita el tipo de conclusión a realizar.Consejo: Para detener un proceso gestionado deforma remota, debe ejecutar el programa de utilidadnco_pa_stop .

-password string La contraseña que debe utilizarse para el agente deprocesos.

-server string Nombre del agente de procesos que debe cerrarse.

-user string Nombre de usuario del agente de procesos. El valorpor defecto es el usuario que ejecuta el mandato.

-version Muestra la información de versión de software y, acontinuación, se cierra.

Consejo: Si ejecuta un agente de proceso como servicio Windows y detiene elservicio, también se detendrán los procesos gestionados. Esto significa que todoslos procesos gestionados se han detenido de forma controlada cuando el sistemaestá apagado.Referencia relacionada:“Detención de un servicio o de un proceso (nco_pa_stop)” en la página 298

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 299

Page 314: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Adición de un servicio o proceso nuevos (nco_pa_addentry)Puede ejecutar el programa de utilidad nco_pa_addentry para añadir un nuevoservicio o proceso mientras se está ejecutando el agente de procesos.

Utilice este programa de utilidad para:v Añada un servicio nuevo a un agente de procesos en ejecución.v Inicie un proceso fire-and-forget. Tales procesos se inician automáticamente y no

se pueden modificar. Al configurar un proceso fire-and-forget, defina el procesocomo no gestionado si desea asegurarse de que sólo se ejecuta una vez. Paraello, especifique la opción de línea de mandatos -unmanaged al ejecutar elprograma de utilidad nco_pa_addentry .

v Añada un proceso gestionado nuevo a un servicio.

Nota: El nuevo servicio o proceso no se añade al archivo de configuración delagente de procesos, a menos que elija actualizar el archivo de configuracióncuando se utiliza netcool/Omnibus Administrator.

Para agregar un servicio o proceso a un agente de proceso en ejecución, entre elmandato siguiente. Los corchetes denotan entradas opcionales.

$NCHOME/omnibus/bin/nco_pa_addentry [-process string | -service string]command_line_options

En este mandato, command_line_options representa una o más opciones de línea demandatos que puede especificar para el servicio o proceso o para el programa deutilidad nco_pa_addentry .

Opciones de línea de mandatos para nco_pa_addentry

Las opciones de línea de mandatos del programa de utilidad nco_pa_addentry sedescriben en la tabla siguiente.

Importante: Para asegurarse de que el proceso o el servicio se cree correctamente,todas las opciones de la línea de mandatos relevantes deben especificarse de formaexplícita con un valor serie asignado. Esto también se aplica a los valorespredeterminados que puede aplicar.

Tabla 86. Opciones de línea de mandatos para nco_pa_addentry

Opción de la línea de mandatos Descripción

-alert_msg string Especifica el mensaje que debe enviarse al syslogUNIX o el visor de sucesos de Windows si el procesoexiste.

En Unix, encierre el valor serie entre comillas simplessi el texto contiene espacios. En Windows, encierre elvalor serie entre comillas dobles si el texto contieneespacios.

-auto

-nonauto

Si se especifica -auto , el servicio o proceso se iniciatan pronto como se inicia el agente de proceso. Deforma predeterminada, el servicio debe ser iniciadomanualmente con el mandato nco_pa_start .

-command string Especifica la línea de mandatos de proceso. Porejemplo:

$NCHOME/omnibus/bin/nco_objserv -name NCOMS-pa SFOSYS1_PA

300 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 315: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 86. Opciones de línea de mandatos para nco_pa_addentry (continuación)

Opción de la línea de mandatos Descripción

-delay string Especifica el retraso de tiempo en segundos antes deque se inicie el proceso especificado.

-depend string Especifica un proceso del que depende el procesodefinido.

-help Muestra la ayuda en las opciones de la línea demandatos y sale.

-host string Especifica el host donde se ejecuta el proceso.

-managed

-unmanaged

Si se especifica -managed , el proceso se reiniciaautomáticamente si se cierra. El valor por defecto es-managed.

-master

-nonmaster

Si se especifica -master , el tipo de servicio seestablece en maestro. El valor por defecto es -master.

-nosecure Se conecta a agentes de proceso en una modalidad noprotegida que no cifra la información de inicio desesión durante la transmisión.

-pa_aware

-not_pa_aware

Si se especifica -pa_aware , el processtype seestablece en PaPA_AWARE . Por defecto, el proceso notiene en cuenta el agente de procesos.

-parentservice string Especifica el servicio donde añadir el proceso.Nota: Cuando se añade un proceso a un servicio, sedebe definir el servicio principal utilizandoparentservice-.

-password string Especifica la contraseña que se utilizará al conectar alagente de proceso.

-process string Especifica el nombre del proceso a añadir.

-restart_msg string Especifica el mensaje que debe enviarse al syslogUNIX o el visor de sucesos de Windows si el procesose reinicia.

En Unix, encierre el valor serie entre comillas simplessi el texto contiene espacios. En Windows, encierre elvalor serie entre comillas dobles si el texto contieneespacios.

-retrycount integer Especifica el número de intentos de reinicio que hande aplicarse si el proceso se cierra en el tiempoespecificado por la opción de línea de mandatosnco_pad -retrytime . Si se establece en 0 , no hayningún límite en el número de intentos de reinicio. Elvalor por omisión es 0.

-runas integer Especifica el ID de usuario que debe utilizarse paraejecutar el proceso.

-server string Especifica el nombre del agente de proceso. El valorpor defecto es NCO_PA.

-service string Especifica el nombre del servicio a añadir.

-user string Especifica el nombre de usuario que se utilizará alconectar al agente de proceso. El valor por defecto esel usuario que ejecuta el mandato.

-version Muestra la información de versión de software y, acontinuación, se cierra.

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 301

Page 316: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Ejemplo: utilización de nco_pa_addentry para añadir un procesofire-and-forget ( Unix)1. Entre el mandato siguiente para añadir un proceso fire-and-forget llamado

simnet1, que se inicia automáticamente y sólo se ejecuta una vez (como unproceso no gestionado):./nco_pa_addentry -server TEST_PA -process 'simnet1' -command'$NCHOME/omnibus/probes/nco_p_simnet' -host 'owl' -retrycount 0-unmanaged -restart_msg 'test' -alert_msg 'testalert'

2. Ejecute el programa de utilidad nco_pa_status para recuperar el estado deservicios en la configuración:$NCHOME/omnibus/bin/nco_pa_status -server TEST_PA

Donde TEST_PA es el nombre del agente de procesos.

Cuando el programa de utilidad nco_pa_status se ejecuta, la salida no mostraráuna definición de proceso simnet1 como parte de una entrada de servicio. Sinembargo, el mandato ps-EF mostrará el proceso simnet1 como en ejecución,aunque no lo reiniciará automáticamente si se cierra.

Ejemplo: utilización de nco_pa_addentry para añadir un procesofire-and-forget ( Windows)1. Entre el mandato siguiente para añadir un proceso fire-and-forget llamado

simnet1, que se inicia automáticamente y sólo se ejecuta una vez (como unproceso no gestionado):"%NCHOME%"\omnibus\bin\nco_pa_addentry -server TEST_PA -process simnet1-command "%NCHOME%"\omnibus\probes\win32\nco_p_simnet -host owl-retrycount 0 -unmanaged -restart_msg "Probe restarted" -alert_msg"Probe stopped" -password secret

2. Ejecute el programa de utilidad nco_pa_status para recuperar el estado deservicios en la configuración:"%NCHOME%"\omnibus\bin\nco_pa_status -server TEST_PA

Donde TEST_PA es el nombre del agente de procesos.

Cuando el programa de utilidad nco_pa_status se ejecuta, la salida no mostraráuna definición de proceso simnet1 como parte de una entrada de servicio. Sinembargo, el gestor de tareas Windows mostrará el proceso simnet1 como enejecución, aunque no se reiniciará automáticamente si se cierra.

Ejemplo: utilización de nco_pa_addentry para añadir un procesogestionado a un servicio ( Unix)1. Entre el mandato siguiente para añadir un proceso denominado simnet2 a un

servicio principal :./nco_pa_addentry -server TEST_PA -process 'simnet2' -command'$NCHOME/omnibus/probes/nco_p_simnet' -host 'owl' -retrycount 0 -managed-restart_msg 'test' -alert_msg 'testalert' -parentservice 'Core'

2. Ejecute el programa de utilidad nco_pa_status para recuperar el estado deservicios en la configuración:$NCHOME/omnibus/bin/nco_pa_status -server TEST_PA

Donde TEST_PA es el nombre del agente de procesos.

Cuando nco_pa_status se ejecuta, la salida mostrará un proceso simnet2 con unestado DEAD , como parte de la definición de servicio principal . El procesosimnet2 no se iniciará automáticamente porque forma parte de un servicio y lo

302 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 317: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

debe ejecutar utilizando el programa de utilidad nco_pa_start .

Ejemplo: Utilización de nco_pa_addentry para añadir un procesogestionado a un servicio (Windows)1. Entre el mandato siguiente para añadir un proceso denominado simnet2 a un

servicio principal :"%NCHOME%"\omnibus\bin\nco_pa_addentry -server TEST_PA -process simnet2-command "%NCHOME%"\omnibus\probes\win32\nco_p_simnet -host owl-retrycount 0 -managed -restart_msg "test" -alert_msg "testalert"-parentservice "Core"

2. Ejecute el programa de utilidad nco_pa_status para recuperar el estado deservicios en la configuración:"%NCHOME%"\omnibus\bin\nco_pa_status -server TEST_PA

Donde TEST_PA es el nombre del agente de procesos.

Cuando nco_pa_status se ejecuta, la salida mostrará un proceso simnet2 con unestado DEAD , como parte de la definición de servicio principal . El procesosimnet2 no se iniciará automáticamente porque forma parte de un servicio y lodebe ejecutar utilizando el programa de utilidad nco_pa_start .Referencia relacionada:“Inicio de un servicio o proceso (nco_pa_start)” en la página 297

Utilización de Netcool/OMNIbus Administrator para gestionar el controlde proceso

Netcool/OMNIbus Administrator proporciona una interfaz visual en la que puedegestionar el control de proceso. Puede utilizar netcool/Omnibus Administratorpara ver y gestionar agentes de proceso, procesos y servicios en los hosts de TivoliNetcool/OMNIbus.

Por ejemplo, puede ver el estado de los servicios que están bajo el control deproceso en un sistema host y, a continuación, iniciar o detener los procesos en estosservicios.

Debe conectarse a un agente de proceso para poder gestionar sus servicios yprocesos. Los cambios de configuración que realice en los servicios y procesos sepueden guardar en el archivo de configuración del control de proceso, que sesobrescribe cada vez que guarda.

Nota: No puede utilizar netcool/Omnibus Administrator para especificar que sólodeterminados hosts puedan conectarse a agentes de proceso. Para definir dichoshosts protegidos, por ejemplo, debe añadir una definición de seguridad al archivode configuración de agente de proceso de forma manual.Tareas relacionadas:“Configuración y gestión de control de proceso desde la línea de mandatos” en lapágina 284“Inicio del administrador de Netcool/OMNIbus” en la página 64

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 303

Page 318: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Conexión a un agente de procesoAntes de poder conectarse a un agente de proceso utilizando netcool/OmnibusAdministrator, debe asegurarse de que el proceso se ha iniciado.

Puede iniciar el agente de proceso utilizando automáticamente los scripts de iniciosuministrados en Unix o ejecutando el agente de proceso como servicio Windows.También puede iniciar el agente de proceso manualmente ejecutando el mandato$nchome/Omnibus/bin/nco_pad .

Para conectarse a un agente de proceso:1. Desde la ventana de netcool/Omnibus Administrator, seleccione el botón de

menú Informes.2. Pulse el icono PA. Se abre la ventana Informe de agente de proceso. Esta

ventana muestra todos los agentes de proceso que se han seleccionado cuandose ha ejecutado el asistente Importar conexiones por última vez.

Consejo: Después de iniciar el administrador de Netcool/OMNIbus, puedeseleccionar Archivo > Importar en cualquier momento para importar lainformación nueva de comunicación del servidor que se haya especificado en elEditor del servidor. Esta información facilita la comunicación entre loscomponentes de servidor de Tivoli Netcool/OMNIbus, como ObjectServers,pasarelas, agentes de procesos y servidores proxy.

3. Seleccione el agente de proceso al que desea conectarse y, a continuación,realice una de las acciones siguientes:v Si está conectando por primera vez o desea especificar información de

autenticación actualizada que se utilizará al conectar, pulse Conectarse comoen la barra de herramientas. Se abre la ventana Seguridad de agente deproceso. Vaya al paso 4.

v Si desea conectarse utilizando la información de autenticación previamenteespecificada, pulse Conectar . Se abre la ventana Seguridad de agente deprocesos con los detalles de autenticación previamente especificados. Vaya alpaso 5 en la página 305.

4. Complete los campos de la ventana Seguridad de agente de proceso de lasiguiente forma:

Nombre de usuarioEscriba el nombre de usuario que se utiliza para iniciar la sesión en elagente de procesos.

En UNIX, cualquier usuario que necesite acceso al agente de procesosdeberá ser miembro de un grupo de usuarios de UNIX que se identificacomo grupo de administración para este fin. En Windows, el usuariodebe ser un usuario válido con una cuenta local o de dominio.

ContraseñaEscriba la contraseña que se utiliza para iniciar la sesión en el agentede procesos.

Utilizar siempre para esta conexiónMarque esta casilla de verificación para indicar que debe guardarse elnombre de usuario y la contraseña especificados para reutilizarlosautomáticamente en sucesivos intentos de conexión a este agente deprocesos. Estos valores se mantendrán mientras permanezca activa lasesión de la aplicación.

304 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 319: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Utilizar como valor predeterminadoMarque esta casilla de verificación si desea que los valoresespecificados como nombre de usuario y contraseña se rellenenautomáticamente la próxima vez que se muestre esta ventana. Estosvalores se mantendrán mientras permanezca activa la sesión de laaplicación.

Nota: Si marca ambas casillas, el valor de Utilizar siempre para estaconexión tendrá prioridad sobre el otro.

5. Verifique o cancele la autenticación de la forma siguiente:

AceptarPulse este botón para verificar las credenciales de la conexión, y cerrarla ventana. Se abre el panel Detalles de servicio/proceso. Este panelcontiene información sobre los procesos y servicios configurados para elagente de procesos seleccionado.

CancelarPulse este botón para cerrar la ventana Seguridad del agente deprocesos sin intentar conectar con el agente de procesos. Regresará a laventana Informe del agente de procesos.

Qué hacer a continuación

La primera vez que se conecte a agentes de proceso existentes connetcool/Omnibus Administrator, los procesos remotos sólo son visibles si se handefinido manualmente en la configuración del agente de procesos local. Para hacerque los procesos remotos sean visibles para todos los agentes de procesoenlazados, seleccione cada servicio o proceso a su vez, pulse el botón Editar ycierre la ventana resultante sin hacer ningún cambio. Guarde todos los archivos deconfiguración una vez que el proceso se haya completado.Tareas relacionadas:“Inicio automático de los agentes de proceso en UNIX” en la página 281“Inicio automático de agentes de proceso en Windows” en la página 283“Inicio manual de agentes de proceso” en la página 272“Inicio del administrador de Netcool/OMNIbus” en la página 64

Visualización y configuración de información de estado paraun agente de proceso

Puede ver detalles de versión para un proceso de agente al que está conectado ycambiar el nivel de registro para mensajes que el agente de procesos genera.También puede configurar un direccionamiento de sistema principal añadiendoagentes de proceso a un grupo de direccionamiento.

Antes de empezar

Antes de intentar agregar un agente de procesos para un grupo dedireccionamiento, debe haber utilizado la opción Archivo > Importación (y elasistente de importación de conexiones) para importar los detalles del agente deproceso en netcool/Omnibus Administrator.

Para mostrar y configurar la información de estado para un agente de procesos:

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 305

Page 320: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

1. Si todavía no se ha conectado, conéctese al agente de proceso utilizandonetcool/Omnibus Administrator. Cuando la conexión es satisfactoria, el panelDetalles de servicio/proceso se abre de forma predeterminada.

2. Pulse el icono Info que se muestra a la izquierda de este panel. Se abre el panelInformación de estado PA.

3. Complete este panel de la forma siguiente:

VersiónEsta área muestra la versión del agente de procesos.

Nota: La versión no se puede determinar si el agente de procesos tieneuna versión anterior a la V7.0.1.

Nivel de depuraciónPara cambiar el nivel de depuración del archivo de registro, seleccioneotro valor de esta lista desplegable. Pulse el botón de marca situado ala derecha de la lista desplegable para aplicar el nivel de depuraciónseleccionado en la sesión actual.

Para guardar el nivel de depuración actualizado, pulse Guardar laconfiguración del agente de procesos en la barra de herramientas.

Hosts definidos (UNIX)/Agentes de procesos relacionados (Windows)Esta área muestra una lista de agentes de procesos que son conocidosen este agente de procesos. La lectura de la información se realizadesde el archivo de configuración del agente de procesos, y puedediferir de los hosts que se importan desde el archivo de interfaces através del Asistente para importar conexiones.

Puede utilizar los botones de la derecha para añadir hosts de una listade hosts conocidos, o para eliminar hosts.

Para guardar los cambios de definición de host, pulse Guardar laconfiguración del agente de procesos en la barra de herramientas. Sino los guarda de esta forma, los cambios se pierden al salir.

Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64“Conexión a un agente de proceso” en la página 304

Visualización de los procesos y servicios para un agente deprocesos

Puede utilizar el panel Detalles de servicio/proceso en netcool/OmnibusAdministrator para ver detalles de los procesos y los servicios que se configuranpara un agente de procesos, y gestionar estos procesos y servicios.

Para ver los procesos y los servicios que se configuran para un agente de proceso,realice una de las acciones siguientes:v Si todavía no se ha conectado, conéctese al agente de proceso utilizando

netcool/Omnibus Administrator. Cuando la conexión es satisfactoria, el panelDetalles de servicio/proceso se abre de forma predeterminada.

v Si ya está conectado al agente de procesos, pero el panel Detalles deservicio/proceso no está actualmente en la visualización, pulse el icono Estadoen la ventana de configuración para el agente de proceso para ver este panel.

306 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 321: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Resultados

En el panel Detalles de servicio/proceso, se muestran los siguientes detalles paracada servicio y cada proceso configurados:v El nombre exclusivo que se asigna al servicio o al procesov El estado del servicio o del procesov El host en el que se está ejecutando el proceso; esta columna está en blanco para

los serviciosv El identificador de proceso de un proceso en ejecución; esta columna está en

blanco para los servicios y los procesos que actualmente no están en ejecución

En la columna Nombre, el icono que se muestra a la izquierda de un nombre

identifica la entrada como un servicio, y el icono identifica la entrada como unproceso. Los procesos también se agrupan según el servicio bajo el que se ejecutan,y los nombres de proceso se muestran en el formato siguiente:

nombre_servicio:nombre_proceso

Por ejemplo: Core:MasterObjectServer

En la columna Estado, el icono de estado se representa mediante un círculo, y sucolor indica si el servicio o el proceso está en ejecución:v Verde: el servicio o el proceso está activo.v Azul: el servicio es marginal. No todos los procesos están activos.v Amarillo: el proceso está pendiente. El proceso está esperando a que finalice la

dependencia de tiempo. Este estado también puede indicar que el proceso no hapodido iniciarse correctamente, independientemente de las dependencias delproceso.

v Gris: el proceso está inactivo (no está en ejecución) o el servicio se ha detenido.v Rojo: identifica un nivel de estado de error, que es indicativo de que el agente de

procesos no puede recuperar un nivel de estado.

En el panel Detalles de servicio/proceso, puede gestionar los procesos y losservicios correspondientes al agente de procesos seleccionado de las siguientesformas:v Crear o editar un serviciov Crear o editar un procesov Suprimir un servicio o un proceso seleccionadov Iniciar un servicio o un proceso seleccionadov Detener un servicio o un proceso seleccionadov Copiar y pegar un servicio o un proceso en el mismo agente de procesos, o en

los hosts de agente de procesosv Detener el agente de procesosv Ejecutar una acción externav Enviar una señal a un procesov Guardar el archivo de configuración del agente de procesos en el discov Actualizar el contenido del panel (pulsando Renovar en la barra de

herramientas)

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 307

Page 322: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64“Conexión a un agente de proceso” en la página 304

Configuración de servicios para un agente de procesosPuede utilizar netcool/Omnibus Administrador para crear, editar, suprimir, iniciary detener servicios que están definidos para ejecutarse bajo un agente de procesos.Cuando realice cambios de configuración para un servicio, puede elegir guardarlos cambios en el archivo de configuración de control de proceso.

Creación y edición de serviciosPuede configurar un servicio de Tivoli Netcool/OMNIbus y configurarlo para quese inicie automáticamente o manualmente.

Para crear o editar un servicio:1. Lleve a cabo alguna de las acciones siguientes desde Netcool/OMNIbus

Administrator:v Si está conectado al agente de procesos y el panel Detalles de

servicio/proceso está abierto, vaya al paso siguiente.v Si todavía no está conectado, conéctese al agente de procesos. Tras una

conexión satisfactoria, se abrirá el panel Detalles de servicio/proceso.v Si está conectado al agente de procesos, pero no se visualiza el panel Detalles

de servicio/proceso, pulse el icono Estado en la ventana de configuraciónpara el agente de procesos, con el fin de que aparezca este panel.

2. Para añadir un servicio, pulse Nuevo servicio en la barra de herramientas. Paraeditar un servicio, seleccione el servicio a editar y, a continuación, pulse Editaren la barra de herramientas.Se abre la ventana Detalles de servicio.

3. Complete esta ventana del modo siguiente:

NombreEspecifique el nombre de servicio. Este nombre debe ser exclusivo en lared de control de procesos. Al editar un servicio, no puede cambiar elnombre.

Servicio de inicio automáticoMarque esta casilla de verificación para especificar que el servicio debeiniciarse automáticamente en cuanto se inicia el agente de procesos.Borre la marca si desea iniciar el servicio manualmente utilizando elmandato nco_pa_start.

Servicio maestroMarque esta casilla de verificación para indicar que se trata de unservicio maestro. Los servicios maestros se inician antes que otrosservicios y se manejan como servicios maestros con relación a los otrosservicios de los que dependen.

Si define varios servicios como maestros dentro del mismo archivo deconfiguración de control de procesos, los servicios maestros se inicianen el orden en que aparecen en el archivo de configuración.

Los procesos y su orden dentro del archivo de configuraciónEsta lista sólo se muestra al editar un servicio, y muestra los procesosque están definidos para que se ejecuten como parte del servicio. El

308 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 323: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

orden en el que se muestran los procesos indica su orden en el archivode configuración. Puede utilizar los botones de flecha para cambiar elorden de los procesos.

4. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar los detalles de servicio y cerrar laventana. Se añaden nuevos servicios al panel Detalles deservicio/proceso.

Consejo: Los cambios realizados en la configuración no se guardanautomáticamente en el archivo de configuración de control de procesos.Para actualizar el archivo, pulse Escribir archivo de configuración delagente de procesos en la barra de herramientas.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64“Conexión a un agente de proceso” en la página 304

Supresión de un servicioCuando se suprime un servicio, se elimina de la configuración de control deproceso.

Para eliminar un servicio:1. Lleve a cabo alguna de las acciones siguientes desde Netcool/OMNIbus

Administrator:v Si está conectado al agente de procesos y el panel Detalles de

servicio/proceso está abierto, vaya al paso siguiente.v Si todavía no está conectado, conéctese al agente de procesos. Tras una

conexión satisfactoria, se abrirá el panel Detalles de servicio/proceso.v Si está conectado al agente de procesos, pero no se visualiza el panel Detalles

de servicio/proceso, pulse el icono Estado en la ventana de configuraciónpara el agente de procesos, con el fin de que aparezca este panel.

2. Seleccione el servicio que desee suprimir, pulse Suprimir en la barra deherramientas y, a continuación, confirme la supresión. El servicio se suprime yse actualiza el panel Detalles de servicio/proceso .

Resultados

Consejo: Los cambios realizados en la configuración no se guardanautomáticamente en el archivo de configuración de control de proceso. Paraactualizar el archivo, pulse Escribir en el archivo de configuración del agente deprocesos en la barra de herramientas.Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64“Conexión a un agente de proceso” en la página 304

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 309

Page 324: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Inicio de un servicioSólo puede iniciar servicios que tienen un estado detenido.

Para iniciar un servicio:1. Lleve a cabo alguna de las acciones siguientes desde Netcool/OMNIbus

Administrator:v Si está conectado al agente de procesos y el panel Detalles de

servicio/proceso está abierto, vaya al paso siguiente.v Si todavía no está conectado, conéctese al agente de procesos. Tras una

conexión satisfactoria, se abrirá el panel Detalles de servicio/proceso.v Si está conectado al agente de procesos, pero no se visualiza el panel Detalles

de servicio/proceso, pulse el icono Estado en la ventana de configuraciónpara el agente de procesos, con el fin de que aparezca este panel.

2. Seleccione el servicio que desea iniciar y, a continuación, pulse Inicio en labarra de herramientas.

Resultados

El servicio y los procesos asociados al mismo se inician y se actualiza el panelDetalles de servicio/proceso detalles .Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64“Conexión a un agente de proceso” en la página 304

Detención de un servicioSólo puede detener servicios que tienen un estado marginal o en ejecución.

Para detener un servicio:1. Lleve a cabo alguna de las acciones siguientes desde Netcool/OMNIbus

Administrator:v Si está conectado al agente de procesos y el panel Detalles de

servicio/proceso está abierto, vaya al paso siguiente.v Si todavía no está conectado, conéctese al agente de procesos. Tras una

conexión satisfactoria, se abrirá el panel Detalles de servicio/proceso.v Si está conectado al agente de procesos, pero no se visualiza el panel Detalles

de servicio/proceso, pulse el icono Estado en la ventana de configuraciónpara el agente de procesos, con el fin de que aparezca este panel.

2. Seleccione el servicio que desea detener y, a continuación, pulse Deteneren la barra de herramientas.

Resultados

El servicio y los procesos asociados al mismo se detienen y se actualiza el panelDetalles de servicio/proceso detalles .Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64“Conexión a un agente de proceso” en la página 304

310 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 325: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Configuración de procesosUtilizando netcool/Omnibus Administrator, puede crear, editar, suprimir, iniciar ydetener procesos dentro de un servicio que se ha configurado para ejecutarse bajoun agente de procesos. También puede enviar señales a procesos.

Cuando realice cambios de configuración para un proceso, puede elegir guardarlos cambios en el archivo de configuración de control de proceso.

Creación y edición de prcoesosPuede configurar un proceso y configurarlo para que se ejecute como parte de unservicio.

Antes de empezar

Al menos un servicio debe existir ya antes de poder configurar procesos.

Para crear o editar un proceso:1. Lleve a cabo alguna de las acciones siguientes desde Netcool/OMNIbus

Administrator:v Si está conectado al agente de procesos y el panel Detalles de

servicio/proceso está abierto, vaya al paso siguiente.v Si todavía no está conectado, conéctese al agente de procesos. Tras una

conexión satisfactoria, se abrirá el panel Detalles de servicio/proceso.v Si está conectado al agente de procesos, pero no se visualiza el panel Detalles

de servicio/proceso, pulse el icono Estado en la ventana de configuraciónpara el agente de procesos, con el fin de que aparezca este panel.

2. Para añadir un proceso, pulse Nuevo proceso en la barra de herramientas. Paraeditar un proceso, seleccione el proceso a editar y, a continuación, pulse Editaren la barra de herramientas.Se abre la ventana Detalles de proceso.

3. Defina un nuevo proceso de la forma siguiente:

NombreEscriba el nombre del proceso. Este nombre debe ser exclusivo paracada agente de procesos. Al editar un proceso, no puede cambiar elnombre.

MandatoEscriba la serie de mandato que inicia el proceso tal como lo haría en lalínea de mandatos. Utilice la vía de acceso completa para el mandato.Por ejemplo, para configurar un ObjectServer llamado NCOMS, con elagente de proceso SFOSYS1_PA, escriba:

$NCHOME/omnibus/bin/nco_objserv -name NCOMS -pa SFOSYS1_PA

Host Escriba el nombre del host donde se ejecuta el proceso. El control deproceso resuelve automáticamente el nombre del agente de procesos,cuando se necesita.

ServicioSeleccione el servicio bajo el que se ejecutará este proceso. Al editar unproceso, no puede cambiar el servicio.

4. Desde la ficha Proceso , especificque detalles adicionales sobre el proceso.Cumplimente el separador tal como se muestra a continuación:

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 311

Page 326: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

GestionadoMarque esta casilla de verificación si desea que el proceso se reinicieautomáticamente en caso de error.

Ejecutar como IDEscriba el ID de usuario con el que se ejecutará el proceso. Este valorsuele ser 0, que corresponde al nombre de usuario root.

Nota: Si el agente de procesos no se ejecuta como root, esta opción sepasará por alto, y el proceso se ejecutará como el usuario que estáejecutando el agente de procesos.

Recuento de reintentosEspecifique el número de intentos de reinicio que se realizarán si elproceso sale en un intervalo de tiempo especificado por la opción delínea de mandatos d-retrytime el agente de procesos. Si se establece en0, significa que no hay límite en el número de intentos de reinicio. Elvalor predeterminado es 0.

Tipo de procesoEn esta lista desplegable, seleccione Reconocimiento de PA para que elproceso sea consciente del control de procesos y permita el uso detodas las características del control de procesos, como las dependencias.Seleccione Sin reconocimiento de PA si el proceso puede gestionarsepor medio del control de procesos, pero no puede utilizar todas lascaracterísticas del control de procesos.

DependenciaUtilice esta lista desplegable para indicar si el proceso tiene algunadependencia. La opción que selecciona aquí determina el resto de loscampos que se visualizan:v Seleccione Ninguno para especificar que el proceso no tiene

dependencias en ningún otro proceso. No se visualizan más campos.v Seleccione Retardo para indicar una dependencia de tiempo para

iniciar el proceso. Se muestra un campo adicional llamado Retardode inicio para que defina la dependencia de tiempo.

v Seleccione Proceso para indicar una dependencia de otro proceso. Semuestra un campo adicional llamado Seleccionar retardo de oNombre dependiente para que especifique un proceso.

Retardo de inicioEspecifique un intervalo de tiempo (en segundos) para que se inicie elproceso. Este tiempo se medirá a partir del inicio del servicio.

Seleccionar retardo de/Nombre dependienteUtilice esta lista desplegable para seleccionar otro proceso dereconocimiento de PA del que depende el proceso que se está creando oeditando. El proceso que se crea o se edita no empezará hasta que elproceso del cual depende no empiece a ejecutarse.

5. Desde la ficha Mensajes , especifique los detalles de mensaje que se debenenviar al syslog Unix o el visor de sucesos de Windows cuando un proceso sereinicie o finalice. Cumplimente el separador tal como se muestra acontinuación:

ReiniciarEscriba el mensaje que se va a enviar al syslog de UNIX o al Visor desucesos de Windows si el proceso se ha reiniciado. Por ejemplo: ElObjectServer se ha reiniciado.

312 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 327: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Alerta Escriba el mensaje que se va a enviar al syslog de UNIX o al Visor desucesos de Windows si el proceso concluye. Por ejemplo: ElObjectServer se ha cerrado.

Cuando el agente de procesos genera una alerta o un mensaje dereinicio, este mensaje se pasa al syslog o al Visor de sucesos. TivoliNetcool/OMNIbus tiene un analizador de Syslog que puede supervisarestos mensajes y convertirlos en alertas de ObjectServer.

La alerta y los mensajes de reinicio se envían al syslog de UNIX o alVisor de sucesos de Windows en forma de avisos. El mensaje tiene esteformato:NOMBRE_HOST: ALERTA_O_MENSAJE_REINICIO : MENSAJE

NOMBRE_HOST es el nombre del host que ha comunicado elproblema. ALERTA_O_MENSAJE_REINICIO describe el tipo demensaje. MENSAJE es el texto definido en el archivo de configuracióncorrespondiente a este proceso.

Puede utilizar las palabras clave de expansión descritas en la tabla siguiente enlas entradas de reinicio y de alerta que especificó en el separador Mensajes.Las palabras clave de expansión actúan como variables y contienen informaciónsobre el proceso que se ha reiniciado o del que se ha salido.

Tabla 87. Palabras clave de expansión

Palabra clave de expansión Descripción

${NAME} Nombre del proceso.

${HOST} Nombre del host que ejecuta el proceso.

${EUID} ID de usuario efectivo bajo el cual se ejecuta elproceso.

${COMMAND} Mandato que define el proceso.

6. Guarde o cancele los cambios de la forma siguiente:

AceptarPulse este botón para guardar los detalles de proceso y cerrar laventana. Se añaden nuevos procesos al panel Detalles deservicio/proceso.

Consejo: Los cambios realizados en la configuración no se guardanautomáticamente en el archivo de configuración de control de procesos.Para actualizar el archivo, pulse Escribir archivo de configuración delagente de procesos en la barra de herramientas.

CancelarPulse este botón para cerrar la ventana sin guardar los cambios.

Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64“Conexión a un agente de proceso” en la página 304Referencia relacionada:“Definición de procesos en el archivo de configuración de agente de procesos” enla página 285

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 313

Page 328: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Supresión de un procesoCuando se suprime un proceso, se elimina del servicio al que se había asignado.

Para suprimir un proceso:1. Lleve a cabo alguna de las acciones siguientes desde Netcool/OMNIbus

Administrator:v Si está conectado al agente de procesos y el panel Detalles de

servicio/proceso está abierto, vaya al paso siguiente.v Si todavía no está conectado, conéctese al agente de procesos. Tras una

conexión satisfactoria, se abrirá el panel Detalles de servicio/proceso.v Si está conectado al agente de procesos, pero no se visualiza el panel Detalles

de servicio/proceso, pulse el icono Estado en la ventana de configuraciónpara el agente de procesos, con el fin de que aparezca este panel.

2. Seleccione el proceso que desee suprimir, pulse Suprimir en la barra deherramientas y, a continuación, confirme la supresión. El proceso se elimina dela definición de servicio y el panel Detalles des servicio/proceso se actualiza.

Resultados

Consejo: Los cambios realizados en la configuración no se guardanautomáticamente en el archivo de configuración de control de proceso. Paraactualizar el archivo, pulse Escribir en el archivo de configuración del agente deprocesos en la barra de herramientas.Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64“Conexión a un agente de proceso” en la página 304

Inicio de un procesoSólo puede iniciar procesos que tienen un estado inactivo.

Para iniciar un proceso:1. Lleve a cabo alguna de las acciones siguientes desde Netcool/OMNIbus

Administrator:v Si está conectado al agente de procesos y el panel Detalles de

servicio/proceso está abierto, vaya al paso siguiente.v Si todavía no está conectado, conéctese al agente de procesos. Tras una

conexión satisfactoria, se abrirá el panel Detalles de servicio/proceso.v Si está conectado al agente de procesos, pero no se visualiza el panel Detalles

de servicio/proceso, pulse el icono Estado en la ventana de configuraciónpara el agente de procesos, con el fin de que aparezca este panel.

2. Seleccione el proceso que desea iniciar y, a continuación, pulse Inicio en labarra de herramientas.

Resultados

El proceso se inicia y el panel Detalles de servicio/proceso se actualiza con elestado del proceso, incluido el ID de proceso del proceso de ejecución.Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64“Conexión a un agente de proceso” en la página 304

314 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 329: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Detenció de un procesoSólo puede detener procesos que tengan el estado pendiente o en ejecución.

cuando detenga un proceso, el estado de los procesos dependientes permaneceráinalterado; por ejemplo, si se ha detenido un producto ObjectServer, los sondeosque dependan de él seguirán ejecutándose.

Para detener un proceso:1. Lleve a cabo alguna de las acciones siguientes desde Netcool/OMNIbus

Administrator:v Si está conectado al agente de procesos y el panel Detalles de

servicio/proceso está abierto, vaya al paso siguiente.v Si todavía no está conectado, conéctese al agente de procesos. Tras una

conexión satisfactoria, se abrirá el panel Detalles de servicio/proceso.v Si está conectado al agente de procesos, pero no se visualiza el panel Detalles

de servicio/proceso, pulse el icono Estado en la ventana de configuraciónpara el agente de procesos, con el fin de que aparezca este panel.

2. Seleccione el proceso que desee detener y, a continuación, pulse Detener enla barra de herramientas.

Resultados

El proceso se detiene y el panel Detalles del servicio/proceso se actualiza.Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64“Conexión a un agente de proceso” en la página 304

Envío de señales a procesosPuede utilizar el administrador de Netcool/OMNIbus para enviar una señal deUNIX a un proceso.

Por ejemplo, es posible que desee que una sonda vuelva a leer su archivo dereglas. Para ello, envíe una señal SIGHUP(1) al proceso de sonda.

Para enviar una señal a un proceso:1. Lleve a cabo alguna de las acciones siguientes desde Netcool/OMNIbus

Administrator:v Si está conectado al agente de procesos y el panel Detalles de

servicio/proceso está abierto, vaya al paso siguiente.v Si todavía no está conectado, conéctese al agente de procesos. Tras una

conexión satisfactoria, se abrirá el panel Detalles de servicio/proceso.v Si está conectado al agente de procesos, pero no se visualiza el panel Detalles

de servicio/proceso, pulse el icono Estado en la ventana de configuraciónpara el agente de procesos, con el fin de que aparezca este panel.

2. Seleccione el proceso al que desee enviar una señal y, a continuación, pulseEnviar señal en la barra de herramientas. Se abrirá la ventana Enviar señal.

3. Rellene esta ventana como se indica a continuación:

Nombre de procesoSeleccione el proceso al que se deben enviar la señal.

Señal Seleccione la señal que desee enviar. Las señales válidas son:

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 315

Page 330: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

v SIGHUP(1): señal de colgar para detener y reiniciar un procesov SIGINT(2): señal de interrupciónv SIGTERM(15): señal de terminación

En Windows, las señales SIGINT(2) y SIGTERM(15) sólo se admiten enlos procesos de Tivoli Netcool/OMNIbus; por ejemplo, losObjectServers, los servidores proxy y las sondas. También puedeutilizar los demás métodos disponibles para detener procesos. Cuandose está ejecutando una sonda bajo un control de procesos, se puedeutilizar la señal SIGHUP(1) para que la sonda vuelva a leer su archivode reglas.

4. Confirme o cancele los cambios como se indica a continuación:

AceptarPulse este botón para cerrar la ventana y enviar la señal al procesoseleccionado.

AplicarPulse este botón para enviar la señal al proceso seleccionado ymantener la ventana abierta.

CancelarPulse este botón para cerrar la ventana sin enviar una señal.

Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64“Conexión a un agente de proceso” en la página 304

Cómo copiar y pegar un servicio o proceso entre hosts deagente de proceso

Puede copiar y pegar un servicio seleccionado y sus procesos relacionados, o unproceso seleccionado, ya sea dentro de un agente de procesos o de un agente aotro.

Para copiar y pegar un servicio o proceso:1. Lleve a cabo alguna de las acciones siguientes desde Netcool/OMNIbus

Administrator:v Si está conectado al agente de procesos y el panel Detalles de

servicio/proceso está abierto, vaya al paso siguiente.v Si todavía no está conectado, conéctese al agente de procesos. Tras una

conexión satisfactoria, se abrirá el panel Detalles de servicio/proceso.v Si está conectado al agente de procesos, pero no se visualiza el panel Detalles

de servicio/proceso, pulse el icono Estado en la ventana de configuraciónpara el agente de procesos, con el fin de que aparezca este panel.

2. Desde el panel Detalles de servicio/proceso del agente de procesos desdedonde desea copiar un servicio o proceso, seleccione el servicio o proceso, y acontinuación, pulse Copiar en la barra de herramientas. El servicio seleccionadoy sus procesos relacionados se copian en el portapapeles, o el procesoseleccionado se copia en el portapapeles.

3. Para pegar el contenido del portapapeles en el mismo agente de procesos, pulsePegar en la barra de herramientas del panel Detalles de servicio/proceso actual.Para pegar el contenido del portapapeles a otro agente de procesos conectado,acceda al panel Detalles de servicio/proceso para ese agente de procesos, yluego pulse Pegar en la barra de herramientas.

316 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 331: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

4. Si ha copiado un proceso, el panel Detalles del proceso se abre. Los nombres deproceso deben ser únicos por agente de procesos, así que renombre el procesosi es necesario y efectúe los demás cambios necesarios. Pulse Aceptar paracerrar esta ventana y pegar los detalles de proceso en el panel Detalles deservicio/proceso. Como alternativa, pulse Cancelar para cancelar la operaciónde pegar.

5. Si ha copiado un servicio, se abre el asistente Comprobador de coherencia deagente de procesos. Los nombres de servicio deben ser exclusivos dentro de lared de control de proceso y los nombres de proceso deben ser exclusivos poragente de procesos, con lo cual es necesario renombrarlos. Lleve a cabo lassiguientes acciones:a. Pulse Siguiente para pasar a la página siguiente y modifique los detalles de

servicio o proceso según sea necesario. Puede especificar un nombre nuevopara el servicio sobrescribiendo su nombre. Para modificar los detalles decada proceso, efectúe una doble pulsación en el proceso para obtener laventana Detalles del proceso y a continuación haga los cambios pertinentes.También puede especificar si se debe incluir o excluir un proceso en laacción de pegar. En Unix , pulse dentro de la celda Incluir en pegar paraconmutar entre las opciones true y False . En Windows , pulse el botónderecho en la entrada de proceso y, a continuación, seleccione odeseleccione la opción Incluir en pegar en el menú emergente.

b. Pulse Siguiente para ver un resumen de los procesos y el servicio que sepegarán.

c. Pulse Finalizar para cerrar el asistente y pegue los detalles al panel Detallesde servicio/proceso. Como alternativa, pulse Cancelar para cancelar laoperación de pegar.

Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64“Conexión a un agente de proceso” en la página 304

Ejecución de una acción externaPuede utilizar el administrador de netcool/Omnibus para ejecutar un mandato enun host.

Para ejecutar una acción externa:1. Lleve a cabo alguna de las acciones siguientes desde Netcool/OMNIbus

Administrator:v Si está conectado al agente de procesos y el panel Detalles de

servicio/proceso está abierto, vaya al paso siguiente.v Si todavía no está conectado, conéctese al agente de procesos. Tras una

conexión satisfactoria, se abrirá el panel Detalles de servicio/proceso.v Si está conectado al agente de procesos, pero no se visualiza el panel Detalles

de servicio/proceso, pulse el icono Estado en la ventana de configuraciónpara el agente de procesos, con el fin de que aparezca este panel.

2. Para especificar los detalles de los mandatos, pulse Ejecutar acción externa enla barra de herramientas. Se abre la ventana Detalles de acción externa.

3. Complete esta ventana del modo siguiente:

MandatoEscriba un mandato válido que desee ejecutar en el host.

Host Seleccione el host en el que ejecutar el mandato.4. Confirme o cancele los cambios de la forma siguiente:

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 317

Page 332: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

AceptarPulse este botón para cerrar la ventana y ejecutar el mandato.

CancelarPulse este botón para cerrar la ventana sin ejecutar el mandato.

Tareas relacionadas:“Inicio del administrador de Netcool/OMNIbus” en la página 64“Conexión a un agente de proceso” en la página 304

Detención de un agente de procesosPuede detener un agente de proceso y todos sus procesos gestionados o detener unproceso en ejecución y dejar sus procesos en ejecución.

Para detener un agente de procesos:1. Lleve a cabo alguna de las acciones siguientes desde Netcool/OMNIbus

Administrator:v Si está conectado al agente de procesos y el panel Detalles de

servicio/proceso está abierto, vaya al paso siguiente.v Si está conectado al agente de procesos, pero no se visualiza el panel Detalles

de servicio/proceso, pulse el icono Estado en la ventana de configuraciónpara el agente de procesos, con el fin de que aparezca este panel.

2. Pulse Detener agente de procesos en la barra de herramientas.3. Cuando se le solicite, elija una opción para indicar si desea que se detenga el

agente de procesos y todos sus procesos gestionados, o detener el agente deprocesos y dejar sus procesos en ejecución. Pulse Aceptar.

Resultados

El agente de procesos, y opcionalmente, sus procesos, se detienen.

Utilización del control de proceso para ejecutar procedimientosexternos en las automatizaciones

El sistema de control de procesos ejecuta procedimientos externos que seespecifican en automatizaciones. Los procedimientos externos se ejecutan en unhost local o remoto.

Una automatización no ejecuta programas por sí misma. Envía una solicitud a unagente de proceso. Si es necesario, el agente de proceso reenvía la solicitud alagente de proceso que se ejecuta en el host especificado. Entonces, el agente deproceso remoto ejecuta el programa solicitado.

Los procedimientos externos pueden pasar entre distintos entornos de sistemaoperativo y los agentes de proceso en un sistema operativo pueden ejecutarautomatizaciones enviadas por agentes de proceso en otro sistema operativo.

Cuando ejecute el agente de proceso desde la línea de mandatos en Unix yWindows, el directorio de trabajo para todos los procesos hijo es el directoriodesde el que se ha iniciado el agente de procesos.

Cuando ejecute el agente de proceso como daemon Unix, el directorio de trabajopara todos los procesos hijo es $nchome/Omnibus .

318 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 333: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

En Windows, el directorio por defecto de un agente de proceso que se ejecutacomo servicio Windows es %NCHOME%\omnibus\log. Este directorio también es eldirectorio de trabajo predeterminado de cualquier proceso hijo que se origina porel agente de procesos.

Consejo: Cuando se ejecutan procedimientos externos, Las propiedadesPa.Username y Pa.Password de objectserver se deben establecer en unacombinación válida de nombre de usuario y contraseña en el archivo depropiedades de objectserver, para fines de autenticación. La propiedad Pa.Name deobjectserver también debe establecerse en el nombre del agente de proceso queutiliza objectserver para ejecutar automatizaciones externas. Estos valores aseguranque la conexión con el agente de procesos y la ejecución del procedimiento externoson satisfactorias.Referencia relacionada:“Propiedades y opciones de línea de mandatos de ObjectServer” en la página 3

Capítulo 7. Utilización del control de procesos para gestionar procesos y procedimientos externos 319

Page 334: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

320 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 335: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Capítulo 8. Ajuste del rendimiento

El rendimiento de Tivoli Netcool/OMNIbus puede medirse en términos de tiempode respuesta, rendimiento y disponibilidad.

Estas medidas de rendimiento se ven afectados por varios factores, que incluyen:v El número de sucesos, incluidos los detalles y diarios, en el objectserver

Este número tiene una relación directa con el volumen de datos que setransfieren durante las operaciones de resincronización y en el número de filasque se han de explorar durante consultas SQL desde clientes y desencadenantes.

v La capacidad de proceso de sucesos al sistema a partir de sondeos o pasarelasde entrada

v La capacidad de proceso de sucesos fuera del sistema desde pasarelas de salidav El número de clientes simultáneos de visualización de GUI web y de escritorio y

el número de otros clientes conectados que compiten para el tiempo delobjectserver.

v El número y la complejidad de GUI web y filtros de escritorio y el número deconexiones y la complejidad de los hechos en las políticas que someten clientesnetcool/impact, donde procede.

v La eficiencia de las automatizaciones de objectserver personalizadas, y si estánsometiendo a carga de trabajo innecesaria objectserver

v Los parámetros de granularidad del objectserver (es decir, la frecuencia con laenvía emisiones IDUC a los clientes)

v La configuración del hardware y del sistema

Para ayudarle a obtener un nivel óptimo de rendimiento para el objectserver,puede supervisar el número y la productividad de los clientes de conexión, evaluarla eficacia de las automatizaciones de objectserver, y diseñar índices eficientes paradar soporte a las consultas SQL. Tenga en cuenta también el uso de unaarquitectura multinivel para soportar la alta disponibilidad de la instalación deTivoli Netcool/OMNIbus.

Indicadores de rendimiento clave de Tivoli Netcool/OMNIbusPara asegurarse de que un sistema de Tivoli netcool/Omnibus está en ejecución deforma eficaz, puede supervisar varios indicadores de rendimiento clave.

Cada descripción de indicador de rendimiento clave define el indicador, explicacómo configurarlo, explica su utilidad y proporciona un indicador de quésupervisar, es decir, qué valores de indicador de rendimiento clave indican unbuen rendimiento y qué valores deben investigarse. Para muchos indicadores derendimiento clave, los valores proporcionados no son absolutos; en su lugar puedeutilizar estos valores de forma indicativa. Para su propio sistema de Tivolinetcool/Omnibus, debe establecer valores de línea base en un sistema que se sabeque está trabajando de forma efectiva, por ejemplo en un entorno de prueba, ycomparar los valores con los valores actuales y futurao en el sistema deproducción.

Los indicadores de rendimiento clave proporcionados no constituyen una listaexhaustiva. En función de su entorno de Tivoli netcool/Omnibus, determinados

© Copyright IBM Corp. 1994, 2011 321

Page 336: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

indicadores de rendimiento clave necesitarán seguimiento especial, mientras queotros puede que no sean importantes.

Indicadores de rendimiento clave de ObjectServerSupervise estos indicadore de rendimiento clave para establecer la eficacia delobjectserver.

Los siguientes indicadores de rendimiento clave de ObjectServer puedensupervisarse:

Tiempo total utilizando en granularidadPara configurar este indicador de rendimiento clave, debe ejecutar elobjectserver con el perfilado activado y ejecutar la automatizacióntrigger_stats_report. Los datos de perfilado muestran la cantidad de tiempoque ObjectServer ha dedicado a perfilar consultas de cliente, incluido eltiempo pasado en automatizaciones emitidas por la actividad de cliente. Elarchivo trigger_stats.log contiene la cantidad de tiempo que cadadesencadenante ha utilizado en el último periodo de perfilado. Parademostrar que el objectserver puede procesar todas las solicitudes en eltiempo disponible, el tiempo de proceso debe ser inferior al tiempo delperíodo del informe. Tenga en cuenta que la tendencia de este indicador derendimiento clave a lo largo del tiempo es más importante que su valor enun momento dado.

Consejo: En servidores multiprocesador, el tiempo empleado en el procesode solicitudes de clientes y automatizaciones puede ser mayor que elperiodo del informe, debido a la naturaleza de múltiples hebras deobjectserver.

Uso de CPU del proceso nco_objservPara supervisar el uso de la CPU del proceso nco_objserv, configure yutilice un agenteIBM Tivoli Monitoring.

El uso de CPU de procesos es una de las más importantes medidas para ladeterminación del rendimiento; para un objectserver en condiciones demucha carga, el rendimiento es más probable que se vincule con el uso deCPU.

Consejo: Cuando se resuelven problemas de rendimiento, donde primerose investiga es en el archivo de registro del perfil y en el archivo deregistro de las estadísticas de desencadenante. Generalmente, si el total detiempo combinado tanto para los clientes como para los desencadenanteses coherente durante 60 segundos (el periodo de granularidadpredeterminado), deberá realizar alguna acción. También pueden resultarútiles varias métricas de sistemas operativos a la hora de identificar si unsistema se halla bajo presión. Las métricas clave son la utilización de CPUy el tamaño del proceso de los procesos de Tivoli Netcool/OMNIbus.

Número de filas en la tabla alerts.statusEl rendimiento de consultas sin indexar es proporcional al número de filasde la tabla de alerts.status. Como el número de filas de la tabla alerts.statusaumenta, el tiempo necesario para ejecutar todas las consultas y ejecutartodos los desencadenantes contra la tabla alerts.status aumenta.Adicionalmente, el mantenimiento de datos de fila utiliza la mayoría de lamemoria utilizada por el objectserver; los datos de la tabla alerts.statusutilizan la mayoría de los datos de fila. El número de filas de la tablaalerts.status varía en función de las redes y aplicaciones supervisadas. Sin

322 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 337: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

embargo, el número de filas debe ser estable durante un periodo desemanas. Si el número de filas de la tabla alerts.status aumenta con lassemanas, en función de la velocidad del aumento, es posible que sedesarrolle un problema. La tabla alerts.status utiliza más memoria que latabla alert.details y la tabla alerts.journal. Para obtener más informaciónsobre el recuento de sucesos en la tabla alerts.status, consulte “Otros datosde interés” en la página 325.

Número de filas en la tabla alerts.detailsEl rendimiento de las consultas que realizan los clientes deGUI web pararecuperar detalles de alerta es proporcional al número de entradas en latabla alerts.details. Cuantas más entradas estén contenidas en la tablaalerts.details, más lentas serán las consultas. Adicionalmente, elmantenimiento de datos de fila utiliza la mayoría de la memoria utilizadapor el objectserver; los datos de la tabla alerts.details utilizan algunos delos datos de fila. Cada entrada de la tabla alets.details aumenta la carga encualquier pasarela que se configure para reenviar estos datos a otrosobjectservers u otras aplicaciones. El número de filas de la tablaalerts.details varía en función de las redes y aplicaciones supervisadas, eldía de la semana, la hora del día, etc. Sin embargo, el número de filas debeser estable durante un periodo de semanas. Si el número de filas de latabla alerts.details aumenta con las semanas, en función de la velocidad delaumento, es posible que se desarrolle un problema. La tabla alerts.detailsutiliza más memoria que la tabla alerts.journal, pero menos memoria de latabla alerts.status.

Consejo: Utilice la función nvp_add para mover datos de las entradas de latabla alerts.details al campo ExtendedAttr de la tabla alerts.status. El usode la función nvp_add significa que el número de inserciones realizadaspor un sondeo se reduce.Para obtener más información sobre el recuento de sucesos en la tablaalerts.details, consulte “Otros datos de interés” en la página 325.

Número de filas en la tabla alerts.journalEl número de filas en la tabla alerts.journal fluctúa en función de laautomatización que procesa los sucesos, o el usuario que ha de procesarlos sucesos. Sin embargo, el número de filas debe ser estable durante unperiodo de semanas. Si el número de filas de la tabla alerts.journalaumenta con las semanas, en función de la velocidad del aumento, esposible que se desarrolle un problema. Asegúrese de que se crea unaentrada en la tabla de alerts.journal sólo cuando un desencadenante afectaal contenido de una fila, independientemente de la frecuencia de undesencadenante. Utilice indicadores para asegurarse de que un suceso nose vuelve a procesar por el mismo desencadenante innecesariamente.Paraobtener más información sobre el recuento de sucesos en la tablaalerts.journal, consulte “Otros datos de interés” en la página 325.

Número de inserciones en la tabla alerts.status en los n segundos anteriores.Para este indicador de rendimiento clave, inserts hace referencia a nuevasfilas y duplicidades. Para supervisar el número de inserciones en la tablaalerts.status, habilite el grupo de desencadenantes stats_triggers y laautomatización statistics_gather. Los datos recopilados por este grupo dedesencadenantes y por la automatización se escriben de forma periódica enla tabla master.stats en la columna StatusInserts. La medida de rendimientose pueden derivar mediante la comparación del valor de la columnaStatusInserts con el valor del informe anterior. Este indicador derendimiento clave le permite identificar un gran incremento en la entrada

Capítulo 8. Ajuste del rendimiento 323

Page 338: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

al sistema causado por la supervisión de nuevos dispositivos oaplicaciones, y se puede utilizar para aumentar la escalabilidad de susistema y planificar de la capacidad. El número de filas de la tablaalerts.status varía en función de las redes y aplicaciones supervisadas, eldía de la semana, la hora del día, etc. Sin embargo, el número de filas debeser estable durante un periodo de semanas. Si el número de filas de latabla alerts.status aumenta con las semanas, en función de la velocidad delaumento, es posible que se desarrolle un problema, por ejemplo, unaanomalía o problema con el archivo de reglas de analizador.

Uso de memoria del proceso nco_objservPara supervisar el uso de memoria del proceso nco_objserv, configure yutilice IBM Tivoli Monitoring Agent para Tivoli Netcool/OMNIbus.Supervise el uso de memoria del proceso nco_objserv para asegurarse deque la utilización de afecta a límites de memoria y como ayuda paraidentificar cualquier incremento en el uso de la memoria y determinar lacausa del aumenta. El uso de memoria del proceso aumenta de formaproporcional en incrementos en el número de filas en las tablasalerts.status, alerts.details y alerts.journal (o cualquier tabla que hayadefinido) a incrementos en el número de conexiones y el uso incrementadopor los clientes. El uso de la memoria debe permanecer estable con eltiempo, y cualquier aumento debe corresponder a cualquier incremento enlos números de filas de tabla o clientes adicionales.

Para obtener más información sobre IBM Tivoli Monitoring Agent forTivoli Netcool/OMNIbus, consulte la publicación IBM Tivoli Monitoringfor Tivoli Netcool/OMNIbus Agent User's Guide.

Número de conexiones en ObjectServerPara supervisar el número de conexiones en el objectserver, habilite elgrupo stats_triggers y la automatización statistics_gather. Los datosrecopilados por este grupo de desencadenantes y por la automatización seescriben de forma periódica en la tabla master.stats en la columnaNumClients. De forma alternativa, puede ejecutar manualmente el recuentodel número de filas de la tabla catalog.connections. Sólo puede establecerseun número finito de conexiones en objectserver. Cuando se alcanza elnúmero máximo de conexiones, se rechazan las conexiones nuevas. Unrechazo de conexión puede tener como resultado la pérdida temporal delacceso a datos o la pérdida de entrada a sondeos o pasarelas. El númeromáximo de conexiones es 1024. El número máximo permitido deconexiones está determinado por la propiedad Connections de objecterver,con un valor predeterminado de 30. El número de conexiones varía enfunción de su entorno y de su uso. No obstante, el número debepermanecer estable en comparación con el paso de varias semanas. Si elnúmero conexiones aumenta con las semanas, en función de la velocidaddel aumento, es posible que se desarrolle un problema.

Uso del almacén de memoriaPara supervisar el almacén de memoria, inspeccione el contenido de latabla catalog.memstores. Para cada fila, compare el valor de la columnaUsedBytes con los valores de la columna SoftLimit y la columnaHardLimit. Los almacenes de memoria son contenedores que sonmantenidos por el objectserver y contienen datos de objectserver y tablasen la memoria. Los almacenes de memoria tienen un tamaño finito, y,cuando están llenos, no permiten la inserción de más datos. Porconsiguiente, debe asegurarse de que no se llenen del todo. El uso dealmacenes de memoria varía según el entorno y su uso. No obstante, el usodebe permanecer estable en comparación con el paso de varias semanas. Si

324 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 339: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

el uso de los almacenes de memoria aumenta con las semanas, en funciónde la velocidad del aumento, es posible que se desarrolle un problema.

Otros datos de interés

Para supervisar la cantidad de filas de la tabla alerts.status, la tabla alerts.details yla tabla alerts.journal, habilite el grupo stats_triggers y la automatizaciónstatistics_gather. Para habilitar desencadenantes, utilice el mandato nco_configpara iniciar Netcool/OMNIbus Administrator, o utilice el mandato ALTERTRIGGER GROUP. Los datos que genere este grupo y automatización dedesencadenante se grabarán periódicamente en la tabla master.stats. El intervalopredeterminado es de 300 segundos; este valor se puede configurar. En la tablasiguiente se describe la columna en la que se graba el recuento del número de filas:

Tabla 88. Columnas en las que se graba el recuento de sucesos de las tablas deObjectServer

Tabla Columna en la que se graba el recuento

alerts.status EventCount

alerts.details DetailCount

alerts.journal JournalCount

Varios de los indicadores de rendimiento clave descritos en la lista precedentetambién se pueden supervisar utilizando agentes IBM Tivoli Monitoring. Esnecesario contar con conocimientso de cómo funciona IBM Tivoli Monitoring. Paraobtener información sobre la configuración de agentes de IBM Tivoli Monitoring,consulte el centro de información de IBM Tivoli Monitoring en http://publib.boulder.ibm.com/infocenter/tivihelp/v15r1/index.jsp.Referencia relacionada:“Tabla master.stats” en la página 379Información relacionada:

IBM Tivoli Monitoring for Tivoli Netcool/OMNIbus Agent

Indicadores de rendimiento clave de analizadorLos analizadores se pueden configurar para generar sucesos de pulso ProbeWatchcomo mecanismo de supervisión automática para supervisar el rendimiento,diagnosticar los problemas de rendimiento y resaltar los cuellos de botella derendimiento antes de que éstos puedan afectar al sistema.

Consejo: Para obtener más información sobre cómo configurar agentes IBM TivoliMonitoring, consulte el centro de información de IBM Tivoli Monitoring enhttp://publib.boulder.ibm.com/infocenter/tivihelp/v15r1/index.jsp

Se pueden establecer los siguientes indicadores de rendimiento clave parasupervisar el estado de los analizadores:

Número de sucesos recibidos por un analizador en n segundos anterioresEl número de sucesos recibidos por el analizador en los n segundosanteriores puede derivarse de la columna NumEventsProcessed de la tablamaster.probestats como un delta del anterior valor indicado para cadaanalizador. La productividad del analizador genera trabajo para elobjectserver, una inundación de sucesos de un analizador específico sedebe investigar. Es posible que señale un problema con el analizador, elarchivo de reglas de analizador o los dispositivos o aplicaciones que están

Capítulo 8. Ajuste del rendimiento 325

Page 340: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

siendo supervisados por dicho analizador. Compare el valor actual contralos valores anteriores de este indicador de rendimiento clave paraidentificar comportamientos anormales.

Utilización de CPU de analizadorEl uso de CPU del analizador está contenido en la columna CPUTimeSecde tabla master.probestats. Un agente de IBM Tivoli Monitoring instaladoen el ordenador del analizador también puede medir el uso de la CPU delanalizador. Los recursos de CPU son finitos. Si el proceso de analizador seencuentra en la utilización máxima de la CPU, los sucesos se ponen en colaen el analizador hasta que éste puede procesarlos. En consecuencia, esposible que se genere entrada de analizador, lo que puede provocarretrasos en el proceso, o, en función del analizador, la pérdida de datos.Los factores que contribuyen son la carga de sucesos de entrada y elprocesamiento de archivo de reglas.

Huella de memoria de analizadorLa huella de memoria del analizador está contenida en la columnaProbeMemory de la tabla master.probestats. Un agente de IBM TivoliMonitoring instalado en el ordenador del analizador también puede medirel uso de la memoria del analizador. La memoria es un recurso finito y lamemoria del analizador no debe crecer sin límites. El uso de memoria deun proceso de analizador debe ser relativamente estable, aunque se esperaalgún aumento a medida que se crean memorias caché y almacenamientosintermedios. La huella de la memoria de un analizador aumentará cuandola primera señal SIGHUP se envíe al analizador para indicarle que vuelvaa leer su archivo de reglas. Este aumento se espera ya que el nuevo archivode reglas se lee y analiza antes de que se publique la memoria utilizadapor el archivo de reglas existente. Esto es necesario para que el analizadorsiempre tenga un archivo de reglas válido. Cualquier señal SIGHUP parala relectura del archivo de reglas provocará sólo un incremento pequeño encomparación en el uso de memoria. El uso de matrices asociativas tambiénpodría contribuir al aumento del uso de memoria del analizador, porquelas matrices se acumulan por sucesos procesados por el archivo de reglas.La huella de memoria del analizador nco_p_mttrapd es distinta porquemantiene un gran almacenamiento intermedio para las interrupciones deentrada. Esto a menudo representa más de 50 MB de crecimiento dememoria en cuanto se reciben las primeras 2000 interrupciones. Despuésde que la memoria de almacenamiento intermedio de interrupción se haasignado, el uso de la memoria deberá asentarse. Cualquier otrocrecimiento de memoria sin límite deberá investigarse.

Tiempo promedio invertido en el proceso de reglasEl tiempo promedio invertido procesando el archivo de reglas está en lacolumna AvgRulesFileTime de la tabla master.probestats.

Las ineficiencias en el archivo de reglas pueden causar retrasos en elproceso de sucesos. El tiempo transcurrido procesando el archivo de reglases uno de los principales factores de limitación de la capacidad máxima deun analizador. Si el proceso de archivo de reglas utiliza, en promedio, 5.000microsegundos (millonésimas de segundo) entonces el analizador sólopodrá procesar 200 sucesos por segundo.

326 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 341: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Indicadores de rendimiento clave de pasarelaUtilice estos indicadores clave de rendimiento para supervisar el rendimiento depasarelas.

Consejo: Para obtener más información sobre cómo configurar agentes IBM TivoliMonitoring, consulte el centro de información de IBM Tivoli Monitoring enhttp://publib.boulder.ibm.com/infocenter/tivihelp/v15r1/index.jsp

Los indicadores de rendimiento clave siguientes se pueden utilizar para supervisarel rendimiento de la pasarela:

Uso de CPU de procesos de pasarelaUn agente IBM Tivoli Monitoring instalado en el sistema de pasarela puedemedir la el uso de CPU del proceso o procesos de pasarela. Los recursos deCPU son finitos. Si la pasarela se encuentra al máximo de CPU, es posibleque la pasarela no pueda procesar todos los sucesos y es posible que estosúltimos se retrasen al alcanzar el sistema de destino.

Uso de memoria de procesos de pasarelaUn agente IBM Tivoli Monitoring instalado en el sistema de pasarela puedemedir la el uso de memoria del proceso o procesos de pasarela. Losrecursos de memoria son finitos. El crecimiento de memoria ilimitadapuede dar como resultado la terminación anormal del proceso o procesos.El uso de memoria de un proceso de pasarela debe ser relativamenteestable aunque se espera algún tipo de crecimiento a medida que se cree lamemoria caché y mientras la pasarela almacene temporalmente datos dealerta a medida que los datos se pasan entre el objectserver y su destino. Elcrecimiento ilimitado de memoria debe investigarse. El crecimiento dememoria en la pasarela objectserver puede deberse a un problema en elobjectserver.

Para obtener más información sobre IBM Tivoli Monitoring Agent for TivoliNetcool/OMNIbus, consulte la publicación IBM Tivoli Monitoring for TivoliNetcool/OMNIbus Agent User's Guide.Información relacionada:

IBM Tivoli Monitoring for Tivoli Netcool/OMNIbus Agent

Prácticas recomendadas para el ajuste de rendimientoUtilice estas directrices sobre mejores prácticas para ayudarle a configurar elsistema Tivoli Netcool/OMNIbus para obtener el rendimiento óptimo. Realice cadauno de los pasos de forma ordenada para ayudarle a identificar y resolver loscambios que afectan adversamente el rendimiento y a ajustar con precisión elrendimiento.

Para obtener más información sobre el ajuste del rendimiento para el GUI web,consulte el IBM Tivoli Netcool/OMNIbus Web GUI Administration and User's Guide.

Capítulo 8. Ajuste del rendimiento 327

Page 342: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Ejecución de ObjectServer con el perfilado habilitadoUtilizar el perfilado para medir la cantidad de tiempo empleado en ejecutarconsultas SQL en objectserver y en identificar las conexiones de cliente que utilizanrecursos excesivos.

Para habilitar el perfilado en el objectserver:1. Asegúrese de que la propiedad Profile se ha establecido en TRUE. (Este es el

valor predeterminado.)2. Utilice la propiedad ProfileStatsInterval para especificar un intervalo en el

que se escribe la información de perfilado para el archivo de registro del perfil.Se utiliza un intervalo predeterminado de 60 segundos si no cambia este valor.

3. Asegúrese de que el grupo de desencadenantes profiler_triggers y susdesencadenantes (profiler_group_report, profiler_report, profiler_toggle) estánhabilitados para el registro de perfil.

La información de temporización para la ejecución de mandatos SQL deconexiones del cliente se registra en la tabla catalog.profiles. Puede utilizarnetcool/Omnibus Administrator para ver detalles que se registran en la tablacatalog.profiles. Desde la ventana de netcool/Omnibus Administrator, seleccione elbotón de menú Sistema y luego pulse Bases de datos . Puede utilizar la pestañaVista de datos del panel Bases de datos, tablas y columnas para ver los datos de latabla y utilice la pestaña Definiciones de columna para ver información detalladasobre las columnas de la tabla.

Las estadísticas de perfil también se registran en un archivo de registro de perfil$nchome/Omnibus/log/servername _profiler_report.log n , donde servernamerepresenta el nombre de objectserver y n es un número. El archivo de registro delperfil muestra un desglose del tiempo empleado para cada conexión de cliente y eltiempo total empleado por el tipo de cliente, para cada periodo de granularidad(tal como se ha establecido por la propiedad Granularity ). Cada cliente mostradoen el archivo de registro se identifica mediante un nombre predeterminadoestándar (por ejemplo, pasarela o analizador) y el sistema principal en el que seejecuta el cliente. Puede utilizar el perfil de registro de perfil para analizar cómo elObjectServer ha empleado su tiempo durante cada periodo de granularidad y paracalcular el porcentaje de tiempo utilizado. Por ejemplo, si el periodo degranularidad está establecido en 60 segundos y el total de tiempo utilizado paratodas las conexiones durante un período determinado era de 30 segundos, puedecalcular que el ObjectServer ha empleado el 50% de su tiempo disponible enejecutar mandatos SQL desde conexiones de cliente.

El trabajo completado en un periodo de informe es la salida en una línea deresumen para cada periodo de granularidad. La información presentada en la líneade resumen aparece en el siguiente formato: tiempo total en el periodo de informe(periodo de perfilado): tiempo total por todos los clientes. El tiempo total de todoslos clientes puede ser mayor que el periodo de perfilado debido a la naturaleza demúltiples hebras de objectserver. Esto es especialmente así para los sistemas convarias CPU. Si el periodo de perfilado es superior al periodo de perfiladoconfigurado significa que objectserver está demasiado ocupado para informar deltiempo de perfilado y podría indicar que el objectserver está sobrecargado. Si eltiempo total de todos los clientes es mayor que el período de perfilado, ello indicaque hay mucha carga en el sistema, pero no necesariamente indica un problema.

Salida de ejemplo registrada en un archivo de registro de perfiles para un periodode granularidad:

328 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 343: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

[1] Mon Oct 12 17:39:46 2009: Individual user profiles:[2] Mon Oct 12 17:39:46 2009: ’Administrator’ (uid = 0) time on adminhost: 0.000000s[3] Mon Oct 12 17:39:46 2009: ’isql’ (uid = 0) time on omnihost1.ibm.com: 3.770000s[4] Mon Oct 12 17:39:46 2009: ’PROBE’ (uid = 0) time on probehost.ibm.com: 5.010000s[5] Mon Oct 12 17:39:46 2009: ’e@c0B4D@c0142:11.0’ (uid = 0) time on omnihost1.ibm.com: 10.010000s[6] Mon Oct 12 17:39:46 2009: ’c@xxxxx@xxxxx:11.0’ (uid = 45) time on omnihost1.ibm.com: 0.000000s[7] Mon Oct 12 17:39:46 2009: ’e@c0B4D@c0142:11.0’ (uid = 45) time on omnihost1.ibm.com: 9.870000s[8] Mon Oct 12 17:39:46 2009: ’c@xxxxx@xxxxx:11.0’ (uid = 55) time on omnihost1.ibm.com: 0.000000s[9] Mon Oct 12 17:39:46 2009: ’e@c0B4D@c0142:11.0’ (uid = 55) time on omnihost1.ibm.com: 6.020000s[10] Mon Oct 12 17:39:46 2009: ’GATEWAY’ (uid = 0) time on omnihost1.ibm.com: 0.270000s[11] Mon Oct 12 17:39:46 2009: ’GATEWAY’ (uid = 0) time on omnihost1.ibm.com: 0.000000s[12] Mon Oct 12 17:39:46 2009: ’PROBE’ (uid = 0) time on omnihost1.ibm.com: 3.010000s[13] Mon Oct 12 17:39:46 2009: Grouped user profiles:[14] Mon Oct 12 17:39:46 2009: Execution time for all connections whose application name is ’PROBE’: 8.020000s[15] Mon Oct 12 17:39:46 2009: Execution time for all connections whose application name is ’GATEWAY’: 0.270000s[16] Mon Oct 12 17:39:46 2009: Execution time for all connections whose application name is ’c@xxxxx@xxxxx:11.0’: 0.000000s[17] Mon Oct 12 17:39:46 2009: Execution time for all connections whose application name is ’e@c0B4D@c0142:11.0’: 25.93000s[18] Mon Oct 12 17:39:46 2009: Execution time for all connections whose application name is ’isql’: 3.77000s[19] Mon Oct 12 17:39:46 2009: Execution time for all connections whose application name is ’Administrator’: 0.000000s[20] Mon Oct 12 17:39:46 2009: Total time in the report period (59.275782s): 29.980000s

Los números de líneas se incluyen en la salida anterior para describir la entradas:v Línea [1]: introduce una lista de clientes individuales que se conectan con el

ObjectServer.v Línea [2]: muestra el nombre de la aplicación del cliente conectado

(Administrator), el usuario asociado de dicho cliente (user ID 0), el sistema host(adminhost) y la cantidad de tiempo que el cliente ha utilizado en el últimoperiodo de perfilado (0.000000s).

v Línea [13]: presenta una lista que muestra el tiempo agregado para todos losclientes del mismo tipo.

v Línea [14]: muestra que los dos analizadores conectados han utilizado un tiempocombinado de 8,02 segundos.

v Línea [17]: muestra que la listas de sucesos han utilizado 25 segundos. Considereinvestigar los tiempos individuales para ver qué lista de sucesos está utilizandomás tiempo.

v Línea [20]: muestra el periodo de perfilado como 59,27 segundos y el tiempototal de todos los clientes como 29,98 segundos. El periodo de perfilado esaproximadamente el mismo que el periodo de perfilado configurado de 60segundos; éste sería de esperar si el sistema no está sobrecargado.

Analice las estadísticas de perfilado en el archivo de registro y la tabla de base dedatos para identificar qué clientes utilizan más tiempo y por qué:v Determine si todas las conexiones de cliente son necesarias y elimine cualquier

conexión de cliente redundante; por ejemplo, listas de sucesos que permanecenconectadas después de que los operadores hayan desalojado los locales.

v Si una lista de sucesos de escritorio o un cliente GUI web utiliza mucho tiempo,céntrese en los filtros que están siendo utilizados por dicho cliente. Analice losfiltros tanto para el número como la complejidad de las consultas individuales,con el fin de que sean más eficaces.

v Si el cliente es un analizador, la degradación del rendimiento puede ser debida ala insuficiencia con la que se han esrito los archivos de reglas que permitenreenviar sucesos innecesarios al objectserver, la cantidad de informacióndetallada enviada por suceso o los desbordamientos de suceso.

v Aumente el periodo de granularidad del objectserver para paliar los efectos defuertes cargas de cliente. Esta acción disminuye la velocidad a la que elobjectserver envía difusiones iduc para sus clientes, y puede conducir a unamejor rendimiento del sistema. Sin embargo, los sucesos de entrada tardan mástiempo en llegar a los clientes, especialmente si objectserver forma parte de unaarquitectura multinivel.

Capítulo 8. Ajuste del rendimiento 329

Page 344: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Referencia relacionada:“Propiedades y opciones de línea de mandatos de ObjectServer” en la página 3“Tabla catalog.profiles” en la página 377

Recopilación de información estadística sobredesencadenantes

La información de temporización sobre desencadenantes, incluido el número deveces que el desencadenante se haya generado y el número de veces que se hayaactivado, se guarda en la tabla catalog.trigger_state.

Para recopilar estadísticas de desencadenante:1. Asegúrese de que la propiedad Auto.Enabled del objectserver se establece en

true . Éste es el valor predeterminado y se utiliza para habilitar el sistema deautomatización.

2. Utilice la propiedad Auto.StatsInterval para controlar la frecuencia con la queel sistema de automatización recopila y almacena información estadística en latabla catalog.trigger_stats. Se utiliza un intervalo predeterminado de 60segundos si no cambia este valor.

3. Asegúrese de que el grupo de desencadenantes trigger_stats_report y eldesencadenante trigger_stats_report están habilitados.

Puede utilizar netcool/Omnibus Administrator para ver detalles que se registranen la tabla catalog.trigger_stats. Desde la ventana de netcool/OmnibusAdministrator, seleccione el botón de menú Sistema y luego pulse Bases de datos .Puede utilizar la pestaña Vista de datos del panel Bases de datos, tablas ycolumnas para ver los datos de la tabla y utilice la pestaña Definiciones decolumna para ver información detallada sobre las columnas de la tabla.

Las estadísticas de desencadenante también se registran en el archivo$nchome/Omnibus/log/ servername _trigger_stats.log n , donde servernamerepresenta el nombre de objectserver y n es un número. El archivo de registro deestadísticas de desencadenante muestra la cantidad de tiempo que cadadesencadenante ha utilizado en el último período de perfilado. Puede utilizar estearchivo de registro para la depuración de automatización y para determinar quédesencadenantes son lentos debido a consultas SQL de ejecución lenta. Acontinuación, se muestra un ejemplo de salida registrada en el archivo de registrode estadísticas de desencadenante:[1] Mon Oct 12 18:03:56 2009: Trigger Profile Report[2] Mon Oct 12 18:03:56 2009: Trigger Group ’compatibility_triggers’[3] Mon Oct 12 18:03:56 2009: Trigger Group ’system_watch’[4] Mon Oct 12 18:03:56 2009: Trigger time for ’system_watch_shutdown’: 0.000000s[5] Mon Oct 12 18:03:56 2009: Trigger time for ’system_watch_startup’: 0.000000s[6] Mon Oct 12 18:03:56 2009: Trigger Group ’sae’[7] Mon Oct 12 18:03:56 2009: Trigger time for ’update_service_affecting_events’: 0.006790s[8] Mon Oct 12 18:03:56 2009: Trigger Group ’default_triggers’[9] Mon Oct 12 18:03:56 2009: Trigger time for ’deduplication’: 0.341918s[10] Mon Oct 12 18:03:56 2009: Trigger time for ’deduplication_eval’: 0.092659s[11] Mon Oct 12 18:03:56 2009: Trigger time for ’service_update’: 0.000000s[12] Mon Oct 12 18:03:56 2009: Trigger time for ’clean_journal_table’: 0.000172s[13] Mon Oct 12 18:03:56 2009: Trigger time for ’service_insert’: 0.000000s[14] Mon Oct 12 18:03:56 2009: Trigger time for ’service_reinsert’: 0.000000s[15] Mon Oct 12 18:03:56 2009: Trigger time for ’clean_details_table’: 0.000083s[16] Mon Oct 12 18:03:56 2009: Trigger time for ’state_change’: 0.075508s[17] Mon Oct 12 18:03:56 2009: Trigger time for ’deduplication_copy’: 0.022087s[18] Mon Oct 12 18:03:56 2009: Trigger time for ’new_row’: 0.002637s[19] Mon Oct 12 18:03:56 2009: Trigger time for ’deduplicate_details’: 0.000000s[20] Mon Oct 12 18:03:56 2009: Trigger Group ’connection_watch’[21] Mon Oct 12 18:03:56 2009: Trigger time for ’connection_watch_connect’: 0.000000s[22] Mon Oct 12 18:03:56 2009: Trigger time for ’connection_watch_disconnect’: 0.000000s[23] Mon Oct 12 18:03:56 2009: Trigger Group ’primary_only’[24] Mon Oct 12 18:03:56 2009: Trigger time for ’generic_clear’: 5.879707s

330 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 345: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

[25] Mon Oct 12 18:03:56 2009: Trigger time for ’expire’: 0.008233s[26] Mon Oct 12 18:03:56 2009: Trigger time for ’delete_clears’: 0.007219s[27] Mon Oct 12 18:03:56 2009: Trigger time for ’enrich_and_correlate’: 23.007219s[28] Mon Oct 12 18:03:56 2009: Trigger Group ’security_watch’[29] Mon Oct 12 18:03:56 2009: Trigger time for ’disable_user’: 0.000000s[30] Mon Oct 12 18:03:56 2009: Trigger time for ’reset_user’: 0.000000s[31] Mon Oct 12 18:03:56 2009: Trigger time for ’security_watch_security_failure’: 0.000000s[32] Mon Oct 12 18:03:56 2009: Trigger Group ’profiler_triggers’[33] Mon Oct 12 18:03:56 2009: Trigger time for ’profiler_group_report’: 0.065094s[34] Mon Oct 12 18:03:56 2009: Trigger time for ’profiler_report’: 0.087705s[35] Mon Oct 12 18:03:56 2009: Trigger time for ’profiler_toggle’: 0.000000s[36] Mon Oct 12 18:03:56 2009: Trigger Group ’trigger_stat_reports’[37] Mon Oct 12 18:03:56 2009: Trigger time for ’trigger_stats_report’: 0.198813s[38] Mon Oct 12 18:03:56 2009: Trigger Group ’iduc_triggers’[39] Mon Oct 12 18:03:56 2009: Trigger time for ’disconnect_iduc_missed’: 0.000000s[40] Mon Oct 12 18:03:56 2009: Trigger time for ’iduc_stats_update’: 0.000949s[41] Mon Oct 12 18:03:56 2009: Trigger time for ’iduc_messages_tblclean’: 0.000089s[42] Mon Oct 12 18:03:56 2009: Trigger time for ’deduplicate_iduc_stats’: 0.000000s[43] Mon Oct 12 18:03:56 2009: Trigger time for ’iduc_stats_insert’: 0.000000s[44] Mon Oct 12 18:03:56 2009: Trigger Group ’automatic_backup_system’[45] Mon Oct 12 18:03:56 2009: Trigger time for ’backup_succeeded’: 0.000000s[46] Mon Oct 12 18:03:56 2009: Trigger time for ’backup_failed’: 0.000000s[47] Mon Oct 12 18:03:56 2009: Trigger time for ’backup_state_integrity’: 0.000000s[48] Mon Oct 12 18:03:56 2009: Trigger Group ’gateway_triggers’[49] Mon Oct 12 18:03:56 2009: Trigger time for ’resync_finished’: 0.000000s[50] Mon Oct 12 18:03:56 2009: Time for all triggers in report period (60s): 29.789663s

Los números de líneas se incluyen en la salida anterior para describir la entradas:v Línea [1]: indica el inicio del informe y muestra la indicación de fecha y hora

para cuando se ha producido el informe.v Línea [2]: muestra que el informe se desglose por grupo de desencadenante. En

este caso, el grupo de desencadenante compatibility_triggers no contieneningún desencadenante habilitada.

v Línea [3]: muestra system_watch como el primer grupo de desencadenante quecontiene desencadenantes habilitados.

v Línea [4]: muestra el nombre del desencadenante y la cantidad de tiempo (ensegundos) utilizada por el desencadenante en el último período de perfilado.

v Línea [27]: indica un período de tiempo excesivo para el desencadenante. Si éstaes una práctica generalizada, el desencadenante necesitaría que se investigasemás. Por ejemplo, podrían aplicarse las siguientes preguntas : ¿Hayexploraciones de tabla en un desencadenante de base de datos? ¿Se utilizanexploraciones anidadas? ¿Se ha podido utilizar un índice para reducirexploraciones? ¿Está el tiempo directamente relacionado con el número desucesos que el sistema está tratando? ¿Utiliza el desencadenante una cláusulaEVALUATE que pueda ser sustituida por una cláusula FOR EACH que operadirectamente en la tabla con la cláusula ACTION?

v Línea [50]: muestra la línea de resumen como la última entrada en el informe.Esta línea muestra el tiempo en segundos desde el último informe que se haejecutado y la cantidad de tiempo total utilizado por los desencadenantes en elperiodo de informe. En este ejemplo, 29 segundos de 60 segundos es unporcentaje alto, con lo cual puede ser necesario realizar un análisis adicionalpara determinar la causa, particularmente si este valor se repite periódicamente.

Analice las estadísticas de desencadenante en el archivo de registro y la tabla debase de datos para determinar si cualquier carga de trabajo está provocando unadisminución del rendimiento:v Si se detecta que un desencadenante está utilizando la mayor parte del periodo

de granularidad, investigue la causa.v Revise las automatizaciones de objectserver personalizadas para evaluar su

eficacia y para reducir la carga de trabajo en el objectserver.

Capítulo 8. Ajuste del rendimiento 331

Page 346: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

v Asegúrese de que el tiempo de ejecución del desencadenante se mantiene en unmínimo, porque no se pueden producir más grabaciones mientras se estáejecutando un desencadenante.

Consejo: Cuando se resuelven problemas de rendimiento, donde primero seinvestiga es en el archivo de registro del perfil y en el archivo de registro de lasestadísticas de desencadenante. Generalmente, si el total de tiempo combinadotanto para los clientes como para los desencadenantes es coherente durante 60segundos (el periodo de granularidad predeterminado), deberá realizar algunaacción. También pueden resultar útiles varias métricas de sistemas operativos a lahora de identificar si un sistema se halla bajo presión. Las métricas clave son lautilización de CPU y el tamaño del proceso de los procesos de TivoliNetcool/OMNIbus.Referencia relacionada:“Tabla catalog.trigger_stats” en la página 380“Automatizaciones de Tivoli Netcool/OMNIbus estándar” en la página 245

Revisión de la arquitectura del sistemaUtilice las personalizaciones multinivel proporcionadas con TivoliNetcool/OMNIbus para desplegar la instalación en una arquitectura de uno, dos otres niveles en la que los componentes ocupan capas de colección, agrupación yvisualización.

Como mínimo, configure un par virtual de ObjectServers de migración tras erroren la capa de agregación y, a continuación, añada componentes de colección ovisualización, según sea necesario.

Si el tráfico de sondeo de entrada está causando problemas, considere laimplementación de una capa de colección (si no existe) con objectservers decolección dedicados a manejar los sucesos entrantes antes de pasarlos a la capa deagregación.

Si el tráfico de clientes de visualización está causando problemas como, porejemplo, tiempos de respuesta lentos para los usuarios, estudie implementar unacapa de visualización (si no existe) con objectservers de visualización dedicados amanejar solicitudes de cliente.

Si el tráfico de sondeo de entrada y el tráfico de cliente de visualización estáncausando problemas, considere la implementación de la arquitectura de tres nivelescon una capa de colección, agregación y visualización.

Configure también Tivoli Netcool/OMNIbus para alta disponibilidad para reducirla resincronización entre el par de migración tras error de ObjectServers, minimizarla pérdida de sucesos y mejorar la integridad de los datos.

332 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 347: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Habilitación del grupo de desencadenantes stats_triggersEn la configuración de objectserver por defecto, el grupo stats_triggers utilizadesencadenantes para recopilar distintas estadísticas y medidas. Puede habilitar elgrupo de desencadenantes en un entorno de producción.

Los desencadenantes del grupo de desencadenantes stats_triggers cuentan elnúmero de inserciones en la tabla alerts.status, el número de inserciones en la tablaalerts.details, el número de inserciones en la tabla alerts.journal y el número deeliminación de duplicados. Estos totales se almacenan en la tablamaster.activity_stats y son agregados por el desencadenante statistics_gather.

Para supervisar la cantidad de filas de la tabla alerts.status, la tabla alerts.details yla tabla alerts.journal, habilite el grupo stats_triggers y la automatizaciónstatistics_gather. Para habilitar desencadenantes, utilice el mandato nco_configpara iniciar Netcool/OMNIbus Administrator, o utilice el mandato ALTERTRIGGER GROUP. Los datos que genere este grupo y automatización dedesencadenante se grabarán periódicamente en la tabla master.stats. El intervalopredeterminado es de 300 segundos; este valor se puede configurar. En la tablasiguiente se describe la columna en la que se graba el recuento del número de filas:

Tabla 89. Columnas en las que se graba el recuento de sucesos de las tablas deObjectServer

Tabla Columna en la que se graba el recuento

alerts.status EventCount

alerts.details DetailCount

alerts.journal JournalCount

Conceptos relacionados:Capítulo 4, “Utilización del administrador de Netcool/OMNIbus para configurarObjectServers”, en la página 63Referencia relacionada:“Modificación de un grupo de desencadenantes (mandato ALTER TRIGGERGROUP)” en la página 220“Tabla master.stats” en la página 379

Revisión de los archivos de configuración de analizadorRevise atentamente el archivo de propiedades del analizador y los valores delarchivo de reglas para garantizar que ninguno de ellos provoca ineficiencieas en elproceso de sucesos de entrada.

En general, mantenga ambos archivos de configuración lo más simple posible. Si seespera alta productividad de sucesos, considere el uso de varios analizadores pararecopilar los sucesos de entrada -esto es más probable para minimizar laralentización del analizador y los sucesos borrados.

Capítulo 8. Ajuste del rendimiento 333

Page 348: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Configuración de la detección de desbordamiento de sucesosConfigure los analizadores para detectar cuando se someten al desbordamiento desucesos u otros tipos de sucesos anómalos y para llevar a cabo acciones correctivas.

En el directorio $NCHOME/omnibus/extensions/eventflood se proporcionan ejemplosde archivos de reglas que puede utilizar para esta configuración.

Gestión del volumen de información en la tabla alerts.details.Cuando un alto volumen de información de alerta se almacena en la tablaalerts.details, el rendimiento de objectserver disminuye significativamente.

Utilice las directrices siguientes para gestionar el volumen de información que sealmacena en esta tabla.v Asegúrese de que la automatización clean_details_table está habilitada en los

objectservers primario y de reserva. Esta automatización realiza tareas demantenimiento limpieza en el tabla alerts.details y suprime las entradas que nose han encontrado en la tabla alerts.status.

v Evite utilizar details ($*) en archivos de reglas de analizador para añadirtoda la información de alerta para la tabla alerts.details. Para cada alerta en latabla alerts.status, se podrían añadir varias filas a la tabla alerts.details porque elmandato details ($*) en el archivo de reglas registra cada señal como unafila. Después de utilizar details ($*) durante largos periodos de tiempo, lastablas de objectserver se hacen muy grandes y el rendimiento del objectserversufre. Únicamente utilice details ($*) cuando esté depurando o escribiendoarchivos de reglas.Si necesita añadir más información para la alerta, utilice la sentencia detailspara añadir elementos específicos o utilice una expresión regular para extraerelementos específicos de los detalles. Por ejemplo, details ($un, $B) añade loselementos $a y $b para la tabla alerts.details.Tenga en cuenta también que cada entrada details requiere otra sentenciaINSERT, por lo tanto, para un suceso con 20 entradas details, se realizarán 21inserciones en el objectserver. Un suceso sin detalles, sin embargo, será unainserción individual.

v Desde la interfaz interactiva de SQL, utilice el mandato DELETE SQL paraborrar todos los registros de la tabla alerts.details. Por ejemplo:delete from alerts.details;

Nota: La supresión manual de datos de la tabla alerts.details es una solucióntemporal porque el número de detalles volverá a aumentar a un volumen alto silas primeras dos directrices para gestionar la tabla alerts.details no se siguen. Enlugar de utilizar alerts.details, considere utilizar la columna ExtendedAttr con lafunción de archivo nvp_add rules y las funciones SQL nvp_get o nvp_set paraalmacenar esos campos que se han colocado en detalles.

334 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 349: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Utilización de un agente de supervisión para supervisar ygestionar recursos Tivoli Netcool/OMNIbus

Un agente IBM Tivoli Monitoring está disponible para supervisar el estado y elrendimiento de Tivoli Netcool/OMNIbus, los desencadenantes de automatización yla actividad y distribución de sucesos. Este agente de supervisión incluye unconjunto de automatizaciones que añaden más instrumentación a objectserver.

El IBM Tivoli Monitoring para el agente Tivoli Netcool/OMNIbus puededescargarse como parte del paquete de instalación básico de TivoliNetcool/OMNIbus. El software de requisito previo IBM Tivoli Monitoring tambiénestá disponible para descargar.

Para obtener información sobre la instalación y configuración del agente desupervisión, vaya al IBM Tivoli Information Center en http://publib.boulder.ibm.com/infocenter/tivihelp/v8r1/index.jsp. Desde el panel denavegación de la izquierda, localice y expanda el nodo de versión de TivoliNetcool/OMNIbus relevante, y luego vaya a IBM Tivoli Monitoring para nodo de TivoliNetcool/OMNIbus. Una publicación en PDF también está disponible en el nodoConjunto de documentación en PDF .

Después de configurar el agente de supervisión, supervise los recursos del sistemay realice las acciones correctivas que sean necesarias para mejorar el rendimiento ola disponibilidad.

Revisión y modificación de consultas SQL y creación de unaselección de índices eficaces y bien diseñados

Resulta de utilidad comprender cómo las consultas SQL se optimizan para quepueda construir consultas SQL eficientes. Revise las consultas SQL existente imodífiquelas para beneficiarse de la optimización y la indexación.

Lea las directrices sobre consultas SQL e indexación proporcionadas.

Al diseñar y crear índices, también es útil entender las características de las tablasy columnas de base de datos del objectserver, lo cual le ayudará a evaluar lascolumnas indexadas que pueden ayudarle a mejorar el rendimiento. Lascomparaciones de enteros son más rápidas que las comparaciones de serie, por lotanto, si sus datos de sucesos contienen series que son constantes, considere laposibilidad de utilizar enteros para representar las series en sus archivos de reglas,automatizaciones y filtros, y después utilizar conversiones para visualizar lascadenas de caracteres con usuarios. Por ejemplo, la columna de clase deobjectserver es un tipo de datos entero, pero se visualiza como una serie en laslistas de sucesos. Se pueden realizar las siguientes acciones para pasar los datos desucesos como enteros, que a continuación se visualizan como series de caracteres:v Revise los archivos de reglas de analizador para establecer valores enteros que se

correlacionan con las series correspondientes.v Revise su automatizaciones (y las políticas de netcool/impact si procede) para

utilizar los valores enteros.v Revise su filtros para utilizar los valores enteros en las cláusulas WHERE.v Añada conversiones que correlacionen los valores enteros para los valores de

serie que se visualizarán a los usuarios.

Capítulo 8. Ajuste del rendimiento 335

Page 350: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Puede utilizar el mandato CREATE INDEX SQL para crear índices y el mandatoDROP INDEX para suprimir índices redundantes. Los detalles acerca de los índicesque se crea se almacenan en la tabla catalog.indexes.

Después de revisar la consultas SQL y crear índices, establezca, temporalmente, lapropiedad messagelevel en debug para que el tiempo de ejecución del consultasSQL individuales, así como los detalles de indexación, se registren. Permita unperiodo adecuado de actividad de procesamiento.

Examine el archivo de registro de objectserver $nchome/Omnibus/log/ server_name.log para:v Determinar qué consultas SQL afectan negativamente al rendimiento; compruebe

qué consultas han tardado demasiado tiempo o se han ejecutado repetidamente.v Determinar los índices que se han utilizado.v Analizar los tiempos de respuesta para consultas SQL que se utilizan

frecuentemente y evaluar si los beneficios son significativos o marginales.

Los pasos siguientes describen cómo se determina la longitud de tiempo deejecución de una consulta SQL específica:1. Busque un mensaje de registro de objectserver similar al ejemplo siguiente:

2010-03-19T14:39:27: Debug: D-OBJ-105-010: Client language command onconnection ID N: [user1][isql][][hostname.ibm.com] [SQL statement].

donde SQL statement es la sentencia SQL que desea analizar.2. Anote el número de ID de conexión n .3. Busque un mensaje de registro de objectserver similar al que se muestra más

abajo, que contenga el mismo valor para n :2010-03-19T14:39:27: Information: I-OBJ-104-016: Profiler timing submitted fromconnection ID N: time in seconds

donde time in seconds es la cantidad de tiempo necesaria para la ejecuciónde la consulta SQL.

Utilización de la salida de registro de ObjectServer siguiente como ejemplo:2010-03-19T14:39:27: Debug: D-OBJ-105-010: Client language command on connectionID 1: [user1][isql][][hostname.ibm.com] [select * from catalog.indexes;]. 2010-03-19T14:39:27: Information:I-OBJ-104-016: Profiler timing submitted from connection ID 1: 0.000265

Puede ver que el mandato select * from catalog.indexes ha tardado 0,000265segundos en completarse.

Nota: El establecimiento del registro de Objectserver en modalidad de depuraciónpuede llevarse a cabo sin llevar objectserver fuera de línea. Este valor puedeafectar negativamente al rendimiento, por lo que debe desactivar el registro dedepuración después de que los datos se hayan recopilado.

336 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 351: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Conceptos relacionados:“Índices” en la página 162Referencia relacionada:“Tabla catalog.indexes” en la página 378“Directrices de consulta SQL”“Directrices de indexación” en la página 340“Procedimientos recomendados para la creación de desencadenantes” en la página343

Seguimiento de las tendencias de rendimiento a intervalosregulares

A medida que pasa el tiempo, varios factores pueden afectar al rendimiento deObjectServer. Establezca una línea base de rendimiento y supervise periódicamenteel rendimiento para comparar las medidas contra las recopiladas anteriormente.Investigue las diferencias significativas por encima o por debajo de la línea dereferencia y realice ajustes según sea necesario.

Directrices de consulta SQLCuando se pasa una consulta SQL a objectserver, la optimización de consultas y losplanes de consulta se utilizan para evaluar los métodos disponibles para acceder omodificar los datos, y para seleccionar el método más eficaz para ejecutar laconsulta.

La evaluación determina si las exploraciones de índice o las claves primariaspueden utilizarse, o si una exploración de tabla completa se debe realizar en sulugar. Si se utilizan exploraciones de índice, los índices se aplican automáticamentea las consultas SQL que hacen referencia a columnas indexadas.

Reglas para la optimización de consultas SQLSe aplica un conjunto de reglas de optimización a consultas SQL para determinarel modo más eficaz de ejecutar las consultas. Cuando se produce una optimización,se aplican relgas de optimización a la condición en la consulta y, a continuación, sereordenan.

Se optimizan las cláusulas WHERE siguientes:v La cláusula WHERE en operaciones de DML (seleccionar, actualizar, suprimir,

agrupar por, y selección de agregación)La cláusula WHERE se concatena con el filtro de restricción (si está presente) ydespués se optimiza. Para una vista, la cláusula WHERE se concatena con lacláusula WHERE de la vista.

v La cláusula WHERE de un bucle FOR EACH ROWv La cláusula WHERE de una sentencia IF THEN ELSEv La cláusula WHERE de una sentencia EVALUATE (agrupar por, seleccionar y

selección de agregación)

Los tipos de consultas siguientes no se optimizan:v Una cláusula HAVING de un mandato GROUP BYv Columna de la matriz

Capítulo 8. Ajuste del rendimiento 337

Page 352: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Consejo: La optimización de consultas se habilita por defecto. Para revisar losresultados de la optimización, utilice la propiedad ObjectServer messagelevel paraestablecer el nivel de registro en depuración . Las cláusulas sin optimizar yoptimizadas se registran en el archivo $nchome/Omnibus/log/ servername . logpor defecto, donde servername es el nombre de objectserver. Revise estainformación para ver qué consultas están siendo reescritas por el objectserver paraque sean más eficaces, y utilícela como ayuda para mejorar la eficiencia de lasconsultas SQL que escribe.

La optimización AND y OR y la reordenación de predicados se aplican a consultasSQL de la forma siguiente.

Optimización AND

Si una cláusula WHERE consta de varios predicados que se conectan mediante eloperador AND, se produce una optimización sólo si la misma columna y eloperador de comparación se utilizan en cada predicado, y el operador decomparación es como o igual a (=).

El formato aceptable de una optimización AND es:donde column operator expr1 AND column operator expr2 AND column operator expr3...

En esta cláusula WHERE, operator es como o igual a sólo.

Este formato está optimizado en una lista ALL de la siguiente manera:donde column operator ALL (expr1, expr2, expr3, ...)

Ejemplo 1Consulta SQL original:donde Nodo como ’ibm’ y Nodo como ’com’

Consulta optimizada:donde Nodo como todos(’ibm’,’com’)

Ejemplo 2Consulta SQL original:donde Nodo como ’ibm’ y nodo como todos(’com’,’uk’)

Consulta optimizada:donde Nodo como todos(’ibm’,’com’,’uk’)

Ejemplo 3Consulta SQL original:donde Node como todos(’ibm’,’com’) y Nodo como todos(’uk’,’london’)

Consulta optimizada:donde Nodo como todos(’ibm’,’com’,’uk’,’london’)

Optimización OR

Si una cláusula WHERE consta de varios predicados que se conectan mediante eloperador OR, se produce una optimización sólo si la misma columna y el operadorde comparación se utilizan en cada predicado, y el operador de comparación escomo o igual a (=).

El formato aceptable de una optimización OR es:

338 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 353: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

donde column operator expr1 OR column operator expr2 OR column operator expr3...

En esta cláusula WHERE, operator es como o igual a sólo.

Este formato está optimizado en una lista ANY de la siguiente manera:donde column operator ANY (expr1, expr2, expr3, ...)

Ejemplo 1Consulta SQL original:donde Nodo como ’London’ o Nodo como ’Copenhagen’

Consulta optimizada:donde Nodo como cualquiera (’London’, ’Copenhagen’)

Ejemplo 2Consulta SQL original:donde Gravedad = 1 o Gravedad = cualquier(2,3)

Consulta optimizada:donde Gravedad = cualquier(1,2,3)

Ejemplo 3Consulta SQL original:donde Gravedad = cualquiera(1,2) o Gravedad = cualquiera(3,4)

Consulta optimizada:donde Gravedad = cualquiera(1,2,3,4)

Reordenación de predicados

El optimizador reordena la evaluación de los predicados en una cláusula WHEREde acuerdo al coste de ejecución asignado.

Si el primer predicado (es decir, el más barato) de una optimización OR evalúa enTRUE, los predicados más caros (es decir, cualquiera de los siguientes) no tienenque evaluarse. De forma similar, en una optimización AND, si el primer predicadose evalúa en FALSE, los predicados más caros no deben evaluarse.

El coste de ejecución asignado, de inferior a superior, es:1. True/False2. Comparación de enteros3. Comparación de serie4. ANY/ALL/IN de enteros5. ANY/ALL/IN de serie6. Subselect - es decir una sentencia SELECT anidada

Ejemplo: optimización AND (a AND b AND c)Consulta SQL original:donde Resumen como ’tool’ y serie en (1, 2, 3, 4, 5) y gravedad > 2

Consulta reordenada optimizada:donde Gravedad > 2 y Resumen como ’tool’ y serie en (1, 2, 3, 4, 5)

Ejemplo: optimización OR (a OR b OR c)Consulta SQL original:

Capítulo 8. Ajuste del rendimiento 339

Page 354: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

donde Resumen como ’tool’ o serie en (1, 2, 3, 4, 5) o Gravedad > 2

Consulta reordenada optimizada:donde Gravedad > 2 o Resumen como ’tool’ o serie en (1, 2, 3, 4, 5)

Directrices de indexaciónLa indexación puede afectar al rendimiento de las consultas SQL. Sin el indexado,una exploración de tabla completa de la base de datos se realiza normalmentecuando se ejecuta una consulta SQL. Utilice la indexación para limitar el númer defilas que se exploran.

índice de árbol Tivoli Netcool/OMNIbus da soporte a estructuras de índice hash yde árbol. El índice de Hash da soporte a las comparaciones de igualdad enconsultas SQL. El índice de árbol es un índice ordenado que almacena valores decolumna en una estructura ordenada, y permite especificar un rango más ampliode comparaciones, incluida la igualdad, en consultas SQL. En consecuencia, sepuede utilizar un índice de árbol en consultas de rango y en consultas con unacláusula ORDER BY.

Los índices se reconstruirán siempre que se reinicia el objectserver, y estos índicesusar una pequeña cantidad de memoria en lugar de espacio de disco físico.

Puede crear índices en todas tablas de objectserver excepto las bases de datos en elsistema, tales como las de catálogo y seguridad.

Aunque no hay límite en el número de índices que se pueden crear en una tabla,debe utilizar índices con moderación. Los índices incurren en una sobrecarga derendimiento porque se actualizan cuando se llevan a cabo operaciones de inserción,actualización o supresión en la tabla en que la que se basan. En el caso de tablascomo alerts.status, que se actualizan con frecuencia, se crea un gran número deíndices, lo cual puede afectar negativamente al rendimiento general delobjectserver. Evalúe la solución intermedia entre indexaciones para su recuperaciónrápida de datos y la degradación del rendimiento durante la operaciones deinserción, actualización y supresión.

Evite la indexación de sólo tablas que contienen pequeñas cantidades de datos.También evite la indexación de datos de columnas que contienen valores quesuelen cambiar.

Las columnas siguientes se consideran buenas candidatas para la indexación:v Las columnas en las que se realizan búsquedas o se ordenan con frecuencia; es

decir, columnas que se utilizan normalmente en las cláusulas ORDER BYv Columnas que se utilizan frecuentemente en cláusulas WHERE que contienen

los formatos de predicado soportados para la indexación; consulte Tabla 90 en lapágina 341

v Columnas con datos que contienen pocos valores duplicados

Las columnas que se han definido como las claves primarias son, de formapredeterminada, indexadas de forma exclusiva. Estos índices especial e implícitosno se almacenan en la tabla catalog.indexes. La columna Serie en la tablaalerts.status se indexa de forma predeterminada.

Las restricciones de indexación en las columnas son las siguientes:v Sólo se permite un índice por columna.

340 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 355: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

v Una columna definida como Booleana no puede tener un índice de árbol.

Durante el proceso SQL, tanto el filtro de restricción para la tabla y la cláusulaWHERE en cada sentencia SELECT, UPDATE, DELETE, FOR EACH ROW yEVALUATE se examinan para determinar si se debería realizar una exploración deíndice en lugar de una exploración de tabla completa. Una exploración de índice serealiza cuando uno o más predicados cumplen las condiciones siguientes:v El predicado utiliza el operador de igualdad (=) en el formato ColumnName =

ConstantExpression, donde ColumnName es una columna indexada.v El predicado utiliza el operador menos que (<), menos que o igual que (<=), más

que (>), o más que o igual que (>=), siempre que ColumnName sea una columnaindexada del árbol de tipo.

v El predicado no está conectado a otro predicado por un operador OR. Porejemplo, si el campo Gravedad o Serie está indexado, no se utiliza un índice enla consulta SQL siguiente:select Summary from alerts.status where Severity > 3 or Serial = 102;

En la tabla siguiente se resume los formatos de predicado compatibles para índicesde hash y árbol.

Tabla 90. Formatos de predicado para índices de hash y árbol

Formato de predicado Índice de Hash Índice de árbol

ColumnName = ConstantExpression Sí Sí

ColumnName < ConstantExpression No Sí

ColumnName > ConstantExpression No Sí

ColumnName <= ConstantExpression No Sí

ColumnName >= ConstantExpression No Sí

ColumnName %= ConstantExpression

ColumnName %< ConstantExpression

ColumnName %> ConstantExpression

ColumnName %<= ConstantExpression

ColumnName %>= ConstantExpression

No No

Conceptos relacionados:“Índices” en la página 162Referencia relacionada:“Ejemplo de uso de índices con consultas SQL” en la página 342“Ejemplo de uso de índices con los desencadenantes o procedimientos” en lapágina 343

Capítulo 8. Ajuste del rendimiento 341

Page 356: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Ejemplo de uso de índices con consultas SQLEstos ejemplos muestran cómo los índices se pueden aplicar a consultas SQL.

Ejemplo 1

Si el campo Gravedad o Serie se indexa, el índice en el campo Gravedad (siempreque sea un índice de árbol) se puede utilizar en la siguiente consulta SQL porquetodas las filas deberán cumplir con la expresión Severity > 3 . El índice en elcampo Serie no se utilizará ya que un operador OR se utiliza para conectar dospredicados.select Summary from alerts.status where

Severity > 3 and (Serial = 102 or ServerName = ’NCOMS’);

Ejemplo 2

Si se crea un índice de árbol en el campo de gravedad, se puede utilizar en lasiguiente consulta SQL. Sin embargo, un índice de LastOccurrence no puedeutilizarse debido al operador OR entre el predicado LastOccurrence > getdate() -360 y el predicado Summary like ’LinkUp’. Tenga en cuenta, no obstante, que laexpresión getdate ()-360 se considera constante para la duración de la consulta.select Summary, Severity, Node from alerts.status where

Severity > 1 and (LastOccurrence > getdate() - 360 or Summary like ’LinkUp’)

Ejemplo 3

Considere la consulta siguiente:select Summary from alerts.status where Severity > 0;

En el caso de un operador de comparación como >, >=, < o <= que debe utilizarsecon un índice, se requiere un índice de árbol (que es un índice ordenado). Si sólo100 de 20.000 filas tienen 0, un índice de estas características reducirá el número defilas examinadas en sólo 0,5%, y no proporcionará una ventaja signficativa para elrendimiento. Por lo tanto, los datos de fila reales deben tenerse en cuenta paradecidir qué columna indexar.

Ejemplo 4

Si se crea un índice Hash en la columna Nodo, cuando se ejecuta la siguienteconsulta SQL, sólo se realizan tres búsquedas de Hash para la herramienta, labarra y la barra de herramientas en lugar de examinar cada fila para comprobar laigualdad de Nodo y no de los tres valores.select Identifier from alerts.status where Node in (’tool’, ’bar’, ’toobar’);

Ejemplo 5

Si se crea un índice de árbol en la columna Gravedad, cuando se procesa lasentencia SELECT siguiente, sólo se realiza una búsqueda y se devuelven losvalores 2 y 3 de gravedad.select * from alerts.status where Severity > 1 and Severity < 4;

Si una cláusula ORDER BY incluye más de una columna, se utiliza un índice parala primera columna, si está disponible.select Identifier, Serial from alerts.status order by Severity;

342 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 357: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Ejemplo 6

Si hay 20.000 filas en la tabla alerts.status y se aplica un índice en el campoServerSerial a la siguiente consulta, sólo se examinan dos filas en lugar de 20.000:select Summary from alerts.status where ServerSerial in (102,103);

Ejemplo de uso de índices con los desencadenantes oprocedimientos

Este ejemplo muestra cómo se pueden aplicar índices a desencadenantes oprocedimientos. El ejemplo es una correlación entre dos tipos de sucesos, tipo 14 ytipo 15, hasta tal punto que si ambos ocurren en el mismo host, se borran.create procedure correlationbeginfor each x in alerts.status where Type = 14beginfor each y in alerts.status where y.Node = x.Nodeand y.AlertGroup = x.AlertGroup and Type = 15beginupdate alerts.status set Severity = 0where Identifier in (y.Identifier, x.Identifier)endendend;

En este ejemplo, cualquier suceso de tipo 14 y 15 se borrará si ambos existen parael mismo nodo y AlertGroup.

Si hay 10.000 sucesos de tipo 14 y 10.000 sucesos de 15, en promedio, 10 sucesospor nodo exclusivo, serán posibles los siguientes resultados:v Sin el indexado, la cláusula WHERE interna explorará sobre 10.000 * 20.000 filas;

es decir, 200 millones de filas. Esto será lento, y es la causa de por qué lassentences FOR EACH ROW anidadas no son recomendables sin una buenaindexación.

v Con un índice de columna Tipo, la cláusula WHERE interna explorará 10.000 *10.000 filas; es decir, 100 millones de filas. Esto será lento, pero es la mitad delnúmero de filas exploradas cuando los índices no se utilizan.

v Con un índice de columna Nodo, la cláusula WHERE interna explorará 10.000 *10 filas; es decir, 100.000 filas. Éste será el rendimiento.

Nota: La exploración realizada por la sentencia UPDATE siempre utilizará la claveprimaria.

Procedimientos recomendados para la creación de desencadenantesLa meta primordial al crear o modificar los desencadenantes es que losdesencadenantes sean lo más eficientes posible, con el tiempo de ejecución máscorto posible.

Un desencadenante tiene acceso exclusivo a la base de datos del objectserverdurante su ejecución. Minimizando el tiempo de ejecución de un desencadenante,puede dedicar más tiempo de otros desencadenantes o clientes que requierenacceso a la base de datos. Es muy importante reducir el tiempo de ejecución de losdesencadenantes de base de datos porque interrumpen la ejecución de unaoperación de base de datos, con lo cual se ralentiza la operación. Por ejemplo, unadesencadenante anterior a inserción en la tabla alerts.status se activará para cadanuevo suceso, por lo que si se produce un suceso de desbordamiento, el

Capítulo 8. Ajuste del rendimiento 343

Page 358: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

desencadenante se ejecuta varias veces. El grado de eficacia del desencadenanteafecta a la capacidad del sistema para hacer frente a esta situación.

El ObjectServer registra la cantidad de tiempo que cada desencadenante utilizadurante cada periodo de granularidad y guarda los detalles en el archivo$nchome/Omnibus/log/ servername _trigger_stats.log n . Puede utilizar estearchivo para identificar qué desencadenantes están utilizando la máxima cantidadde tiempo, para establecer prioridades sobre qué desencadenantes deben revisarsey para supervisar el sistema para asegurarse de que se ejecuta como se esperaba.En general, si un solo desencadenante utiliza más de 3 segundos de tiempo cada60 segundos (es decir, el periodo de granularidad predeterminado), deberíarevisarse el desencadenante.

Siempre que actualice los desencadenantes, revise el archivo de registro paraverificar que los cambios no provocan una degradación en el rendimiento.

Utilice las directrices siguientes para mejorar el rendimiento de losdesencadenantes.

Evite las exploraciones de tabla en desencadenantes de base dedatos

Este tipo de operaciones son caras y se pueden producir cuando se aplicansentencias SQL, por ejemplo FOR EACH ROW a una tabla de base de datos.Cuando dichas sentencias se incluyen en un desencadenante de base de datos, elcoste puede ser especialmente significativo si el desencadenante se invoca confrecuencia, y la tabla que se está explorando tiene un gran número de filas. Porejemplo, si el desencadenante de eliminación de duplicados en la tabla alerts.statusse modifica de modo que cada vez que se activa el desencadenante, se exploraalerts.status en busca de filas que coincidan, esto limitará la escalabilidad delsistema debido a que el desencadenante de base de datos tendrá una cantidad detiempo cada vez mayor a medida que aumenta el número de filas de la tabla quese está explorando. Evite también las exploraciones anidadas.

Puede utilizar las siguientes técnicas para evitar la exploración de las tablas en losdesencadenantes de base de datos:v Realice la exploración en un desencadenante temporal que se graba para que

una exploración pueda coincidir con muchas filas. Consulte el desencadenantegeneric_clear en $NCHOME/omnibus/etc/automation.sql para ver un ejemplo.

v Si se utiliza una tabla de búsqueda para enriquecer sucesos, acceda a la tabla debúsqueda utilizando su clave primaria, tal como se describe más adelante. El usode la clave principal da como resultado una búsqueda directa en lugar de unaexploración (V7.2, o posterior). También puede limitar el tamaño de la tabla debúsqueda. El número de filas que son aceptables para una tabla de búsqueda esespecífico del sitio y dependerá de factores como la frecuencia con que se accedea la tabla de búsqueda y el rendimiento del hardware.

v Acceso a tabla de búsqueda mediante un índice.

Cómo evitar utilizar la cláusula EVALUATE

Cuando un desencadenante contiene una cláusula EVALUATE, se crea una tablatemporal para contener los resultados de la sentencia SELECT en la cláusulaEVALUATE. La cantidad de tiempo y recursos que esta tabla temporal consumedepende del número de columnas seleccionadas y el número de filas que coincidecon la condición en la cláusula WHERE.

344 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 359: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

En la mayoría de los casos, puede sustituir la cláusula EVALUATE con unacláusula FOR EACH ROW, que pasa con el cursor por los datos y no crean unacarga adicional al crear una tabla temporal.

Un uso adecuado de una cláusula EVALUATE es cuando se aplica una cláusulaGROUP BY a una consulta SQL.

Cómo evitar la utilización excesiva de la sentencia WRITE INTOpara finalizar la sesión en el archivo.

La sentencia WRITE INTO es muy útil para varios fines; en particular, paradepurar desencadenantes durante el desarrollo. No obstante, cuando undesencadenante se está desplegando en un entorno de producción, es aconsejableextraer o eliminar sentencias WRITE INTO, porque la cantidad de datosregistrados durante la depuración puede crear un cuello de botella.

Determine lo que es adecuado para su sistema. Por ejemplo, si no se llama confrecuencia suficiente al registro, probablemente no exista ningún problema. Sinembargo, si el registro se llama varias veces por sentencia INSERT (por ejemplo,dentro de un bucle anidado), podría haber un cuello de botella.

Cuando sea posible, utilice la clave primaria al modificar filas.

Si la clave primaria de una tabla de base de datos se utiliza en la cláusula WHEREde una sentencia UPDATE, se accede a la fila a través de una búsqueda directa, enlugar de una exploración de tabla. Por ejemplo:update alerts.status where Identifier = tt.Identifier set Severity = Severity + 1;

Nota: La palabra clave VIA ya no es necesaria en V7.2 o posterior. El mandatosiguiente (que utiliza VIA) es equivalente al mandato precedente:update alerts.status VIA Identifier = tt.Identifier set Severity = Severity + 1;

Uso de índices al utilizar tablas de búsqueda

En V7.2, o posterior, el objectserver utiliza un índice para acceder a filas en unatabla si la clave primaria se utiliza en una sentencia FOR EACH ROW.

Esto es más útil donde una tabla de objectserver se utiliza como una tabla debúsqueda, quizá para enriquecer sucesos. En tal caso, la tabla y losdesencadenantes que acceden a la tabla de búsqueda deben diseñarse para accedera la tabla de búsqueda por sus claves primarias para evitar costosas exploracionesde tablas completas. Por ejemplo:create table alerts.iplookup persistent(IpAddr varchar(32) primary key,HostName varchar(8),Owner varchar(40));

create or replace trigger set_hostnamegroup madeup_triggerspriority 10before insert on alerts.statusfor each rowbegin-- Access the lookup table using the primary keyfor each row tt in alerts.iplookup where tt.IpAddr = new.Node

Capítulo 8. Ajuste del rendimiento 345

Page 360: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

beginset new.Hostname = tt.HostName;end;end;

Revisión y modificación de desencadenantes producidos a partirde la migración desde V3.6

Si ha migrado desde V3.6 a V7.2.1, la herramienta de migración en V7.2.1producirá duplicaciones lo mejor posibles de los desencadenantes V3.6. Cuandoactualice a V7.3.1, los desencadenantes, que inicialmente se han migrado desdeV3.6, será funcionalmente correctos, pero es poco probable que ello sea la mejorimplementación de rendimiento de los desencadenantes. Revise y modifique estosdesencadenantes de la forma siguiente:v El objectserver V3.6 sólo da soporte a desencadenantes temporales, mientras que

V7.0 o posterior, incluye desdencadenantes de base de datos y señal. El procesoque realiza un desencadenante temporal en V3.6 puede ser más adecuado paraun desencadenante de base de datos en V7.0 o posterior. Sin embargo, laherramienta de migración convierte desencadenantes únicamente en una baseentre iguales, de forma que debe revisar los desencadenantes migrados paraidentificar qué desencadenantes se pueden implementar mejor utilizando losnuevos tipos de desencadenante.

v Donde los desencadenantes V3.6 tengan la condición select * , la herramientade migración implementa la conidición como cláusula EVALUATE, donde seseleccionen todas las columnas de la tabla alerts.status. Donde sea posible,sustituya la cláusula EVALUATE con una sentencia para cada fila.

v Al migrar de V3.6, la herramienta de migración también crea desencadenantesde borrado genéricos que funcionan del mismo modo que en V3.6. No obstante,los desencadenantes suministrados en V7.0, o posterior, son más eficientes. Porlo tanto, es aconsejable utilizar desencadenates de la V7.0 o posterior, que estáninhabilitados de forma predeterminada, en lugar de utilizar los desencadenantesmigrados de V3.6.

Utilice el desencadenante generic_clear como base para losdesencadenantes de tipo de correlación.

El desencadenante generic_clear estándar (consulte $NCHOME/omnibus/etc/automation.sql) correlaciona los sucesos de resolución con sus sucesos deproblema relacionados. Después de que se ejecute este desencadenante, todas lasfilas que coinciden tienen su gravedad establecida en 0, listos para ser eliminadospor la automatización delete_clears.

El desencadenante generic_clear tiene diversas características de diseño clave quedeberían duplicarse si un tipo diferente de desencadenante de correlación esnecesario. Estas características incluyen el modo en que los sucesos se identifican ycómo se actualizan.

El desencadenante generic_clear estándar no utiliza la cláusula EVALUATE paraseleccionar los sucesos; en su lugar, utiliza la construcción FOR EACH ROW paracrear un bucle de los sucesos que han de rellenar una tabla temporal con lossucesos de problema. Puesto que esta tabla temporal sólo contiene un subconjuntode los sucesos en la tabla alerts.status, el coste de la operación de actualización quese aplica para relacionar los problemas con las resoluciones se reduce. Además, yaque el identificador del suceso del problema se almacena en la tabla temporal, lossucesos de problema se pueden actualizar directamente en alerts.status mediante elmandato UPDATE VIA para realizar una búsqueda directa en la fila; esto se

346 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 361: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

beneficia del campo Identificador que es una clave primaria.

Utilización de la eliminación de duplicados para borrar sucesoscuando sea posible

El desencadenante de la eliminación de duplicados puede utilizarse para borrarsucesos de problemas con el suceso de resolución entrante cuando haya ningunacorrelación de uno a uno entre el problema y la solución. A continuación, semuestra una modificación necesaria para el sistema existente:v Escriba las reglas de analizador de modo que los sucesos del problema y

resolución tengan el mismo identificador.v Modifique el desencadenante de eliminación de duplicados para que cuando se

active, compruebe en el campo Tipo. Si el tipo del suceso de entrada se estableceen 1 (resolución), la gravedad del suceso existente se debe establecer en 0.

La ventaja de este enfoque es que reduce la cantidad de proceso que eldesencadenante generic_clear tiene para realizar, dejándolo con la tarea de resolverlos casos en los que un solo suceso de resolución borrará muchos sucesos deproblema.

Notas sobre la creación de automatizaciones

Utilice las siguientes directrices de mejores prácticas para ayudar a crear nuevasautomatizaciones:v Confirme si existe o no una automatización actualmente antes de intentar crear

una nueva automatización con la misma función.v No utilice automatizaciones para iniciar y concluir los componentes, por ejemplo

analizadores. Esto puede provocar una pérdida de sucesos mientras se estáejecutando la automatización.

v Evite utilizar sentencias COMMIT en desencadenantes de base de datos. Unnúmero alto de sentencias COMMIT significa que una pasarela no puede grabardatos en la base de datos sucesos tan rápidamente como la información desuceso es leída por el lector.

v En cualquier de las condiciones WHERE de la automatización, utilice lasdirectrices para la reordenación de los predicados en consultas SQL. Porejemplo, comparar enteros, caracteres y luego expresiones regulares. Paraobtener más información, consulte “Reglas para la optimización de consultasSQL” en la página 337.

v Asegúrese de que el desencadenante de automatización no adquiere sucesos queanteriormente se han procesado. Esto es especialmente importante para losscripts externos.

v Para desencadenantes temporales, establezca el intervalo de activación dedesencadenantes diferentes para impedir que se activen juntos.

v Añada una descripción para todas las automatizaciones recién creadas.v Las automatizaciones pueden actualizar la entrada de diario si modifican los

sucesos en la base de datos del objectserver.

Probar los cambios

Después de que se hayan desarrollado y validado nuevos desencadenante, pruebeel rendimiento de los desencadenantes de la forma siguiente:1. Asegúrese de que los datos según los que ejecuta las pruebas son

representativos del sistema de producción.

Capítulo 8. Ajuste del rendimiento 347

Page 362: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

2. Asegúrese de que el número de filas de las tablas a las que accede eldesencadenante es representantivo del sistema de producción.

3. Mida la influencia en el rendimiento del sistema utilizando el perfiladorecopilando estadísticas de desencadenante.

348 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 363: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Apéndice A. Tablas de ObjectServer

La base de datos del objectserver contiene las siguientes tablas: tablas de alertas,tablas de servicio, tablas de catálogo del sistema, tablas de estadísticas, tablas desoporte de herramienta cliente, tablas de herramientas de escritorio, tablas deobjectserver de escritorio, tablas de seguridad, tablas de canal IDUC y tablas desucesos afectados por servicio.

Las tablas de base de datos de ObjectServer se almacenan en $NCHOME/omnibus/dben sistemas UNIX y %NCHOME%\omnibus\db en sistemas Windows.

Tablas AlertasLa información de alertas se envía a ObjectServer desde programas externos comosondas y pasarelas. Esta información se almacena y gestiona en tablas de base dedatos y se visualiza en la lista de sucesos.

Tabla alerts.statusLa tabla alerts.status contiene información de estado sobre problemas que handetectados los analizadores.

En la tabla siguiente se describen las columnas de la tabla alerts.status.

Tabla 91. Columnas de la tabla alerts.status

Nombre de la columna Tipo de datos Obligatoria Descripción

Identifier varchar(255) Sí Controla la desduplicación de ObjectServer. Elcampo Identifier controla la función dedesduplicación del ObjectServer y también admite lacompatibilidad con la automatización deGenericClear garantizando que los sucesos deresolución se inserten correctamente en elObjectServer y que su almacenamiento no sedesduplique con sus respectivos sucesos deproblema.

El identificador siguiente identifica correctamentesucesos repetidos en un entorno habitual:

@Identifier=@Node+" "+@AlertKey+""+@AlertGroup+" "+@Type+" "+@Agent+""+@Manager

Es posible que se tenga que añadir informaciónadicional para garantizar la desduplicación y lacompatibilidad correctas con la automatización deGenericClear. Por ejemplo, si una interrupciónespecífica de SNMP contiene un valor deenumeración de estado en uno de sus enlacesvariables, el número de interrupción específico y elvalor del enlace variable relevante debe añadirse alcampo Identifier de la manera siguiente:

@Identifier=@Node +“ “+ @AlertKey+““+@AlertGroup+“ “+@Type+“ “+@Agent+““+@Manager+“ “+$specific-trap+““+$2

© Copyright IBM Corp. 1994, 2011 349

Page 364: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 91. Columnas de la tabla alerts.status (continuación)

Nombre de la columna Tipo de datos Obligatoria Descripción

Serial incr Sí Número de serie de Tivoli Netcool/OMNIbus parala fila.

Node varchar(64) Sí Identifica la entidad gestionada desde la que seorigina la alarma. Podría ser un dispositivo o unnombre de host, un nombre de servicio u otraentidad.

Para los dispositivos de red o los hosts IP, lacolumna Node contiene el nombre resuelto deldispositivo o el host. En los caos en los que no sepuede resolver el nombre, la columna Name debecontener la dirección IP del dispositivo o el host.

Para dispositivos de red o host no IP, las alarmasdeben contener información similar al dispositivo ohost IP. Es decir, la columna Node debe contener elnombre del dispositivo o del host que permite lacomunicación directa o que se puede resolver parapermitir la comunicación directa, con el dispositivoo el host.

NodeAlias varchar(64) No Alias para el nodo. Para los dispositivos o hosts dered, debe ser la dirección lógica (capa 3) de laentidad. Para los dispositivos o hosts IP, debe ser ladirección IP.

Para los dispositivos o los hosts no IP, existen variosesquemas de direccionamiento que se podríanutilizar. Cuando se selecciona un valor para elcampo NodeAlias, el valor debe permitir lacomunicación directa con el dispositivo o el host.Por ejemplo, un dispositivo gestionado por TL-1. Elcampo NodeAlias puede llenarse con una tabla debúsqueda o una política de Netcool/Impact, con ladirección IP y el número de puerto del servidor determinal mediante el cual se puede acceder aldispositivo TL-1.

Manager varchar(64) Sí Nombre descriptivo del analizador que harecopilado y reenviado la alarma al ObjectServer.Esto se puede utilizar para indicar el host en el quese ejecuta el analizador. Lo ideal es que se establezcaen el archivo de propiedades del analizador, aunqueel archivo de reglas debe comprobar si se haestablecido correctamente y modificarlo, si esnecesario.

Por ejemplo, se puede utilizar la sintaxis siguientepara definir el campo Manager:

@Manager="MTTrapd Probe on" + hostname()

350 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 365: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 91. Columnas de la tabla alerts.status (continuación)

Nombre de la columna Tipo de datos Obligatoria Descripción

Agent varchar(64) No Nombre descriptivo del subgestor que ha generadola alerta.

Los analizadores con interrupciones SNMP debenestablecer el campo Agent en el nombre delproveedor o el cuerpo de los estándares que handefinido la interrupción y proporcionar unadescripción de la MIB, o un nombre de definiciónMIB, donde se ha definido la interrupción. Debepresentarse en el formato siguiente:descripción-MIB-proveedor

Por ejemplo:

Cisco-Accounting Control, Cisco-Health Monitor,IETFBRIDGEMIB, ATMF-ATM-FORUM-MIB

Opcionalmente, se puede añadir informaciónespecífica de proveedor, como los números demodelo de dispositivo, al campo Agent para lasimplementaciones específicas de proveedor de lasinterrupciones estándar.

La sonda Syslog debe establecer el campo Agent enel nombre del proveedor que ha definido el mensajerecibido y proporcionar la descripción lógica de lafamilia de mensajes a la que pertenece el mensajerecibido.

Por ejemplo, Cisco define los mensajes recibidos delos dispositivos basados en IOS en documentaciónindependiente de los mensajes recibidos delcortafuegos PIX. El formato de los mensajes tambiénes ligeramente distinto. Por lo tanto, los mensajes deSyslog recibidos de Cisco tendrán el campo Agentestablecido en Cisco-IOS o Cisco- PIX Firewall.

El TSM TL-1 debe establecer el campo Agent en elnombre del proveedor que ha definido el mensajerecibido y proporciona la descripción lógica de lafamilia de mensajes a la que pertenece el mensajerecibido.

AlertGroup varchar(255) No Nombre descriptivo del tipo de error indicado porla alerta. Por ejemplo:

Interface Status o CPU Utilization).

El campo AlertGroup debe contener el mismo valorpara el problema relacionado y los sucesos deresolución.

Por ejemplo la interrupción SNMP 2 (linkDown) y lainterrupción 3 (linkUp) deben contener ambas elmismo valor de AlertGroup que Link Status.

El campo AlertGroup para un mensaje TL-1 seestablecerá en el valor del tipo de alarma delmensaje.

Apéndice A. Tablas de ObjectServer 351

Page 366: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 91. Columnas de la tabla alerts.status (continuación)

Nombre de la columna Tipo de datos Obligatoria Descripción

AlertKey varchar(255) Sí Clave descriptiva que indica la instancia de objetogestionado a la que hace referencia la alerta. Porejemplo, la partición de disco indicada por unaalerta de sistema de archivos lleno o el puerto deconmutador indicado por una alerta de utilización.

v Sondas relacionadas con interrupción SNMP: lassondas que procesan interrupciones SNMP debenestablecer el campo AlertKey en uno de losvalores siguientes (en orden de preferencia):

– La instancia SNMP del objeto gestionado querepresenta la alarma. Se obtiene normalmenteextrayendo la instancia del OID de uno de losenlaces variables de la interrupción. Además,también puede estar contenida en unacombinación de uno o más de los valores deenlace variable de la interrupción.

Por ejemplo, el primer enlace variable de unainterrupción linkDown contiene el valorifIndex (número de interfaz) de la interfaz queha fallado. La AlertKey puede establecersecomo se indica a continuación:

@AlertKey = extract($OID1, “\.([0-9]+)$”)

@AlertKey = $1

– Una descripción textual de la instanciaderivada del nombre de la interrupción o de ladescripción de la interrupción.

Por ejemplo, un dispositivo con dos fuentes dealimentación (A y B) también puede enviar dosinterrupciones específicas independientes, sinenlaces variables, para indicar el estadoanómalo de cualquiera de las fuentes dealimentación. La instancia adecuada de lafuente de alimentación deberá derivarse de lasdefiniciones de interrupción de la MIB y, acontinuación, se deberá codificar en el archivode reglas:

switch($specific-trap){case “1”:@AlertKey = “A”case “2”:@AlertKey = “B”default:}

– Una combinación variada de valores de enlacevariable e información derivada del nombre dela interrupción o de la descripción de lainterrupción. Por lo tanto, cualquierinformación de instancia que no esté disponibleen los dos métodos anteriores, pero que seanecesaria para garantizar la desduplicacióncorrecta y la compatibilidad de GenericClear.

352 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 367: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 91. Columnas de la tabla alerts.status (continuación)

Nombre de la columna Tipo de datos Obligatoria Descripción

v La sonda Syslog: la sonda Syslog debe establecerla AlertKey en una descripción textual de lainstancia derivada del texto del mensaje deregistro. Lo ideal es un nombre textual de lamisma entidad gestionada.

Por ejemplo:

Nov 20 13:12:57 device.customer.net195.180.208.193 19986: 37w0d: %LINK-3-UPDOWN:Interface FastEthernet0/13, changed state todown

En el ejemplo anterior, AlertKey se establecería enFastEthernet0/13 con esta sintaxis:

@AlertKey = extract($Details, “Interface(.*), changed”)

v TSM TL-1: por lo general, el campo AlertKey deun mensaje TL-1 se establece en el valor de laubicación de alarma del mensaje.

Apéndice A. Tablas de ObjectServer 353

Page 368: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 91. Columnas de la tabla alerts.status (continuación)

Nombre de la columna Tipo de datos Obligatoria Descripción

Gravedad entero Sí Indica el nivel de gravedad de la alerta, lo cualdenota cómo se ha visto afectada la capacidadpercibida del objeto gestionado. El color de la alertaen la lista de sucesos se controla mediante el valorde gravedad:

0: Clear (borrar). El nivel de gravedad de Clear(borrar) implica el borrado de una o más de lasalarmas notificadas anteriormente. Un operador dered ha borrado las alarmas manualmente o las haborrado automáticamente un proceso que hadeterminado que la condición de error hadesaparecido. Los procesos automáticos, por ejemploel proceso de automatización GenericClear, suelenborrar todas las alarmas de un objeto gestionado(AlertKey) que tenga el mismo tipo de alarma y/ola misma causa probable (el grupo Alert).

1: Indeterminate (indeterminada). El nivel degravedad Indeterminate (indeterminada) indica queno se puede determinar el nivel de gravedad.Además, todas las alarmas de resolución deproblemas de definen inicialmente comoindeterminadas hasta que se han correlacionado conalarmas que indican problemas (por ejemplomediante la automatización de GenericClear),cuando todas las alarmas correlacionadas seestablecen para borrarse.

2: Warning (aviso). El nivel de gravedad Warning(aviso) indica la detección de posibles errores o deerrores inminentes que afectan al servicio. Si esnecesario, se deberá realizar una investigación másdetallada del error para impedir que se agrave.

3: Minor (menor). El nivel de gravedad Minor(menor) indica la existencia de una condición deerror que no afecta al servicio. Se puede llevar acabo una acción correctiva para evitar que seagrave. Este nivel de gravedad puede notificarse,por ejemplo, cuando la condición de alarmadetectada no está perjudicando actualmente lacapacidad del objeto gestionado.

4: Major (grave). El nivel de gravedad Major (grave)indica que se ha desarrollado una condición queafecta al servicio y que se exige llevar a cabo unaacción urgente. Puede notificarse este nivel degravedad, por ejemplo, cuando se ha producido unadisminución grave de la capacidad del objetogestionado y debe recuperarse toda su capacidad.

5: Critical (muy grave). El nivel de gravedad Critical(muy grave) indica que se ha producido unacondición que afecta al servicio y que se exige llevara cabo de inmediato una acción correctiva. Puedeenumerarse este nivel de gravedad, por ejemplo,cuando un objeto gestionado está fuera de servicio yse debe recuperar su capacidad.

354 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 369: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 91. Columnas de la tabla alerts.status (continuación)

Nombre de la columna Tipo de datos Obligatoria Descripción

Summary varchar(255) Sí Contiene texto que describe la condición de alarmay la instancia de objeto gestionado afectada.

v Debe asegurarse de que la información que semuestra en el campo Summary sea concisaaunque lo suficientemente detallada.

v El campo Summary debe contener, entreparéntesis, una descripción de la instancia deobjeto gestionado que proporcionan los datos dela alarma disponibles. Por ejemplo, unainterrupción linkDown de un dispositivo Ciscocontendrá el valor ifDescr en el segundo enlacevariable. El resumen de texto de dicho sucesosería similar al siguiente:

“Link Down ( FastEthernet0/13 )”

v En el caso de alarmas relacionadas con umbralesque contienen los valores comparados o deumbral, debe seleccionar uno de los formatossiguientes según los datos disponibles:

– No se proporciona ningún valor:

“Link Utilization High ( BRI2/0:1 )”

– Nombre de valor comparado proporcionado:

“Link Utilization High: inOctetsExceeded Threshold ( BRI2/0:1)”

– Nombre de valor comparado y valorproporcionado:

“Link Utilization High: inOctets, 7100,Exceeded Threshold (BRI2/0:1 )”

– Nombre de umbral proporcionado:

“Link Utilization High: inOctetsMaxExceeded ( BRI2/0:1 )”

– Valor de umbral proporcionado:

“Link Utilization High: inOctetsMax, 7000,Exceeded ( BRI2/0:1)”

– Valor comparado y valor de umbralproporcionado:

“Link Utilization High: 7100Exceeded 7000 ( BRI2/0:1 )”

– Nombres y valores proporcionados:

“Link Utilization High: inOctets, 7100,Exceeded inOctetsMax,7000 ( BRI2/0:1 )”

StateChange hora Sí Indicación de fecha y hora del ObjectServermantenida automáticamente correspondiente a laúltima inserción o actualización de la alertaprocedente de cualquier origen.

FirstOccurrence hora Sí Hora en segundos (desde la medianoche del 1 deenero de 1970) a la que se ha creado esta alerta y ala que se ha iniciado el sondeo en la sonda.

LastOccurrence hora Sí Hora a la que esta alerta se ha actualizado porúltima vez en la sonda.

Apéndice A. Tablas de ObjectServer 355

Page 370: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 91. Columnas de la tabla alerts.status (continuación)

Nombre de la columna Tipo de datos Obligatoria Descripción

InternalLast hora Sí Hora a la que esta alerta se ha actualizado porúltima vez en el ObjectServer.

Poll entero No Frecuencia de sondeo de esta alerta en segundos.

356 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 371: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 91. Columnas de la tabla alerts.status (continuación)

Nombre de la columna Tipo de datos Obligatoria Descripción

Tipo entero No Tipo de alarma, donde el tipo hace referencia alproblema o al estado de resolución de la alarma.Este campo es importante para una correlacióncorrecta de sucesos por parte de la automatizaciónde GenericClear. Los valores siguientes son válidospara el campo Type:

0: tipo no establecido

1: Problem (problema)

2: Resolution (resolución)

3: Netcool/Visionary problem (problema deNetcool/Visionary)

4: Netcool/Visionary resolution (resolución deNetcool/Visionary)

7: Netcool/ISMs new alarm (alarma deNetcool/ISMs nueva)

8: Netcool/ISMs old alarm (alarma de Netcool/ISMsanterior)

11: More Severe (más grave)

12: Less Severe (menos grave)

13: Information (información)

Algunas situaciones no se pueden clasificar como sicorrespondieran a un problema o a una resolución.Por ejemplo, sucesos que cada vez se conviertenmás en un problema pero que actualmente norepresentan un error, y sucesos que cada vezrepresentan menos un problema pero que noindican actualmente que el problema se hayaresuelto por completo. En tales casos, el campo Typedebe establecerse en Problem, More Severe o LessSevere para mantener la compatibilidad con laautomatización de GenericClear.

Por ejemplo, se utiliza la lógica de archivo de reglassiguientes para manejar las interrupciones asociadascon el estado de conexión de igual BGP:

switch ($bgpPeerState){case "1": ### idle@Severity = 4@Type = 1case "2": ### connect@Severity = 2@Type = 12case "3": ### active@Severity = 2@Type = 12case "4": ### opensent@Severity = 2

Apéndice A. Tablas de ObjectServer 357

Page 372: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 91. Columnas de la tabla alerts.status (continuación)

Nombre de la columna Tipo de datos Obligatoria Descripción

@Type = 12case "5": ### openconfirm@Severity = 2@Type = 12case "6": ### established@Severity = 1@Type = 2default:@Severity = 2@Type = 1}

Tally entero Sí Recuento mantenido automáticamente del númerode inserciones y actualizaciones de la alerta decualquier origen. Este recuento se ve afectado por ladesduplicación.

Class entero Sí Clase de alerta que se utiliza para identificar lasonda o el proveedor desde el que se ha generado laalerta. Controla la capacidad de aplicación de lasherramientas de lista de sucesos sensibles alcontexto.

Grade entero No Indica el estado de escalamiento de la alerta:

0: Not Escalated (no escalado)

1: Escalated (escalado)

Location varchar(64) No Indica la ubicación física del dispositivo, el host o elservicio para el que se ha generado la alerta.

OwnerUID entero Sí Identificador del usuario asignado para manejar estaalerta. El valor predeterminado es 65534, que es elidentificador del usuario nobody.

OwnerGID entero No Identificador del grupo asignado para manejar estaalerta.

El valor predeterminado es 0, que es el identificadordel grupo public.

Acknowledged entero Sí Indica si la alerta se ha reconocido:

0: No

1: Yes (sí)

Un operador de red puede reconocer alertas o lasalertas se pueden reconocer automáticamentemediante una correlación o un proceso de flujo detrabajo.

Flash entero No Habilita la opción para que la lista de sucesosparpadee.

EventId varchar(255) No ID de suceso (por ejemplo, SNMPTRAP-link down).Varios sucesos pueden tener el mismo ID de suceso.

El ID de suceso se llena con el archivo de reglas desonda y lo utiliza IBM Tivoli Network Manager IPEdition.

358 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 373: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 91. Columnas de la tabla alerts.status (continuación)

Nombre de la columna Tipo de datos Obligatoria Descripción

ExpireTime entero Sí Número de segundos desde el momento en que elObjectServer ha recibido esta alerta (LastOccurence)hasta que se borra automáticamente. La utiliza laautomatización de Expire.

ProcessReq entero No Indica si IBM Tivoli Network Manager IP Editiondebe procesar la alerta. El archivo de reglas desonda lo llena y IBM Tivoli Network Manager IPEdition lo utiliza.

SuppressEscl entero Sí Se utiliza para suprimir o escalar la alerta:

0: Normal

1: Escalated (escalado)

2: Escalated-Level 2 (escalado de nivel 2)

3: Escalated-Level 3 (escalado de nivel 3)

4: Suppressed (suprimido)

5: Hidden (oculto)

6: Maintenance (mantenimiento)

Los operadores de la lista de sucesos seleccionanmanualmente el nivel de supresión.

Customer varchar(64) No Nombre del cliente afectado por esta alerta.

Servicio varchar(64) No Nombre del servicio afectado por esta alerta.

PhysicalSlot entero No Número de ranura indicado por la alerta.

PhysicalPort entero No Número de puerto indicado por la alerta.

PhysicalCard varchar(64) No Nombre o descripción de la tarjeta indicados por laalerta.

TaskList entero Sí Indica si un usuario ha añadido la alerta a la listade tareas:

0: No

1: Yes (sí)

Los operadores pueden añadir alertas a la lista detareas desde la lisa de sucesos.

NmosSerial varchar(64) No Número de serie del suceso que está suprimiendo elsuceso actual. Lo llena IBM Tivoli Network ManagerIP Edition.

NmosObjInst entero No Lo llena IBM Tivoli Network Manager IP Editiondurante el proceso de las alertas.

NmosCauseType entero No Estado de alerta, que IBM Tivoli Network ManagerIP Edition llena como valor de entero:

0: Unknown (desconocido)

1: Root cause (causa raíz)

2: Symptom (síntoma)

Apéndice A. Tablas de ObjectServer 359

Page 374: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 91. Columnas de la tabla alerts.status (continuación)

Nombre de la columna Tipo de datos Obligatoria Descripción

NmosDomainName varchar(64) No Nombre del dominio de IBM Tivoli NetworkManager IP Edition que gestiona el suceso.

De manera predeterminada, esta columna sólo sellena para los sucesos que generan los sondeos deIBM Tivoli Network Manager IP Edition. Para llenaresta columna para los demás orígenes de sucesoscomo pueden ser sondas, debe modificar losarchivos de reglas.

NmosEntityId entero No ID numérico exclusivo que identifica la entidad detopología de IBM Tivoli Network Manager IPEdition con la que se asocia el suceso.

Esta columna es similar a la columna NmosObjInst,pero es más granular. Por ejemplo, el valor deNmosEntityId puede representar el ID de unainterfaz dentro de un dispositivo.

NmosManagedStatus entero No Estado gestionado de la entidad de red para la quese ha emitido el suceso. Se puede aplicar a sucesosde IBM Tivoli Network Manager IP Edition y decualquier sonda.

Puede utilizar esta columna para filtrar sucesos deinterfaces que no se consideran relevantes.

NmosEventMap varchar(64) No Contiene el nombre de eventMap de IBM TivoliNetwork Manager IP Edition V3.9 o posteriornecesario y la prioridad opcional del suceso, queindica cómo debe procesar IBM Tivoli NetworkManager IP Edition el suceso.

El número de prioridad opcional puedeconcatenarse al final del valor, después de un punto(.). Si no se proporciona la prioridad, se establece en0. Los ejemplos siguientes muestran la configuraciónde una correlación de sucesos con una prioridad desucesos explícita de 900 y otra donde la prioridad seestablece de manera predeterminada en 0:

v ItnmLinkdownIfIndex.900

v PrecisionMonitorEvent

LocalNodeAlias varchar(64) Sí Alias de la entidad de red que indica la alerta. En elcaso de dispositivos de red o hosts, es la direcciónlógica (de capa 3) de la entidad u otra direcciónlógica que habilita la comunicación directa con eldispositivo. Se utiliza en la identificación deinstancias de objeto gestionado.

LocalPriObj varchar(255) No Objeto primario al que hace referencia la alerta. Seutiliza en la identificación de instancias de objetogestionado.

LocalSecObj varchar(255) No Objeto secundario al que hace referencia la alerta. Seutiliza en la identificación de instancias de objetogestionado.

LocalRootObj varchar(255) Sí Objeto equivalente al objeto primario al que se hacereferencia en la alarma. Se utiliza en la identificaciónde instancias de objeto gestionado.

360 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 375: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 91. Columnas de la tabla alerts.status (continuación)

Nombre de la columna Tipo de datos Obligatoria Descripción

RemoteNodeAlias varchar(64) Sí Dirección de red de la entidad de red remota. Seutiliza en la identificación de instancias de objetogestionado.

RemotePriObj varchar(255) No Objeto primario de la entidad de red remota a laque hace referencia una alarma. Se utiliza en laidentificación de instancias de objeto gestionado.

RemoteSecObj varchar(255) No Objeto secundario de la entidad de red remota a laque hace referencia una alarma. Se utiliza en laidentificación de instancias de objeto gestionado.

RemoteRootObj varchar(255) Sí Objeto equivalente al objeto primario de la entidadremota al que se hace referencia en la alarma. Seutiliza en la identificación de instancias de objetogestionado.

X733EventType entero No Indica el tipo de alerta:

0: Not defined (no definida)

1: Communications (comunicaciones)

2: Quality of Service (calidad de servicio)

3: Processing error (error de proceso)

4: Equipment (equipamiento)

5: Environmental (de entorno)

6: Integrity violation (infracción de integridad)

7: Operational violation (infracción de operación)

8: Physical violation (infracción física)

9: Security service violation (infracción de serviciode seguridad)

10: Time domain violation (infracción de dominio detiempo)

X733ProbableCause entero No Indica la causa probable de la alerta.

X733SpecificProb varchar(64) No Identifica información adicional sobre la causaprobable de la alerta. Los archivos de reglas desonda lo utilizan para especificar un conjunto deidentificadores que se utilizan en la identificación deinstancias de objeto gestionado.

X733CorrNotif varchar(255) No Listado de todas las notificaciones con las que estácorrelacionada esta notificación.

ServerName varchar(64) Sí Nombre el ObjectServer de origen. Lo utilizan laspasarelas para controlar la propagación de alertasentre ObjectServers.

ServerSerial entero Sí Número de serie de la alerta en el ObjectServer deorigen (si no se ha originado en este ObjectServer).Lo utilizan las pasarelas para controlar lapropagación de alertas entre ObjectServers.

Apéndice A. Tablas de ObjectServer 361

Page 376: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 91. Columnas de la tabla alerts.status (continuación)

Nombre de la columna Tipo de datos Obligatoria Descripción

URL varchar(1024) No URL opcional que proporciona un enlace coninformación adicional en el dispositivo o el ENMSdel proveedor.

ExtendedAttr varchar(4096) No Contiene pares de nombre y valor (de atributosampliados de Tivoli Enterprise Console) o cualquierotra información adicional para la que no existeninguna columna dedicada en la tabla alerts.status.

Utilice esta columna sólo a través de las funcionesSQL nvp_get, nvp_set y nvp_exists.

Un ejemplo de serie de nombre y valor es:

Region="EMEA";host="sf01392w";Error="errno=32: ""Broken pipe"""

En este ejemplo, el atributo Region tiene un valorEMEA, el atributo host tiene un valor sf01392w y elatributo Error tiene un valor errno=32: "Brokenpipe".

Tenga en cuenta que las comillas se marcan comocaracteres de escape duplicándolas, como muestra elvalor del atributo Error.

En los pares de nombre y valor, el valor siempre seespecifica entre comillas (" ") y las comillas incluidassiempre se marcan como caracteres de escapeduplicándolas. El separador entre pares de nombrey valor es el carácter de punto y coma (;). No sepermite ningún espacio en blanco antes o despuésdel signo de igual (=) o de un punto y coma.Nota: La columna solo puede contener 4096 bytes,por lo que habrá menos de 4096 si se utilizancaracteres de varios bytes.

OldRow entero No Mantiene el estado local de la fila en cadaObjectServer durante la resincronización en el parde migración tras error. Esta columna no debeañadirse a los archivos de correlación de pasarela.

El valor de OldRow cambia 1 en el ObjectServer dedestino mientras dura la resincronización si lapropiedad Gate.ResyncType de la pasarela seestablece en Minimal.

El valor predeterminado es 0.

ProbeSubSecondId entero No En el caso de las alertas que envía una sonda en elmismo intervalo de un segundo y que, por lo tanto,tienen el mismo valor de LastOccurrence, se añadeun valor incremental a partir de 1 al campoProbeSubSecondId para diferenciar la hora deLastOccurrence. El valor predeterminado es 0.

362 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 377: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 91. Columnas de la tabla alerts.status (continuación)

Nombre de la columna Tipo de datos Obligatoria Descripción

MasterSerial entero No Identifica el ObjectServer maestro si esta alerta seestá procesando en un entorno de ObjectServer deescritorio.

Esta columna se añade cuando se ejecuta elprograma de utilidad de inicialización de base dedatos nco_dbinit con la opción -desktopserver.Nota: MasterSerial debe ser la última columna de latabla alerts.status si va a utilizar un entorno deObjectServer de escritorio.

BSM_Identity varchar(1024) No Identificador exclusivo del recurso desde el que seorigina el suceso y se utiliza para correlacionar elsuceso con ese recurso en IBM Tivoli BusinessService Manager (TBSM).

Nota: Sólo puede mostrar columnas del tipo CHAR, VARCHAR, INCR, INTEGERy TIME en la lista de sucesos. No añada columnas de ningún otro tipo a la tablaalerts.status.Conceptos relacionados:“Funciones” en la página 177

tabla alerts.detailsLa tabla alerts.details contiene los atributos de detalle de las alertas del sistema.

En la tabla siguiente se describen las columnas de la tabla alerts.details.

Tabla 92. Columnas en la tabla alerts.details

Nombre de columna Tipo de datos Descripción

KeyField varchar(255) Serie de secuenciación interna de exclusividad.

El valor Keyfield se compone de un valor de identificador máscuatro # más un número de secuencia que comienza en 1; porejemplo:

Identifier####1

Donde Identifier es un tipo de datos varchar (255), que se utilizapara relacionar detalles para entradas en la tabla alerts.status.

Si el valor del identificador es de una longitud determinada, hayuna posibilidad de que el valor Keyfiled podría rebasar su límitede 255 definido, lo que produce el truncamiento del número desecuencia. Los valores Keyfield podrían, por tanto, no serexclusivos, y la duplicaciones no intencionadas podrían hacer quelas inserciones en la tabla alerts.details fallaran.Consejo: Para evitar un desbordamiento en keyfield (y asegurarla exclusividad), la longitud del valor identificador debe sersuficientemente inferior a 255 para permitir añadir los cutaro # yun número de secuencia (de uno o varios dígitos).

Apéndice A. Tablas de ObjectServer 363

Page 378: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 92. Columnas en la tabla alerts.details (continuación)

Nombre de columna Tipo de datos Descripción

Identificador varchar(255) Identificador para relacionar detalles para entradas en la tablaalerts.status.

El identificador se utiliza para calcular el valor Keyfield y esnecesario que sea inferior a una determinada longitud paraasegurarse de que cada valor Keyfiled calculado permanece único.Para obtener la directrices sobre la longitud máxima del valor deidentificador, consulte el consejo de la fila Keyfield anterior.

AttrVal integer Booleano; si es False ( 0 ), sólo la columna Detalle es válida. De locontrario, las columnas Nombre y Detalle serán válidas.

Sequence integer Número de secuencia, utilizada para ordenar las entradas de laventana Información de suceso de lista de sucesos.

Name varchar(255) Nombre del atributo almacenado en la columna Detalle.

Detail varchar(255) Valor de atributo.

Tabla alerts.journalLa tabla alerts.journal proporciona un historial de trabajo realizado en las alertas.

En la tabla siguiente se describen las columnas de la tabla alerts.journal.

Tabla 93. Columnas en la tabla alerts.journal

Nombre de columna Tipo de datos Descripción

KeyField varchar(255) Clave primaria de la tabla.

Serie integer Número de serie de alerta con el que se relaciona esta entrada dediario.

UID integer Identificador de usuario que ha creado esta entrada.

Chrono time Hora y fecha en que esta entrada se ha realizado.

Text1 varchar(255) Primer bloque de texto de la entrada de diario.

Text2 varchar(255) Segundo bloque de texto de la entrada de diario.

Text3 varchar(255) Tercer bloque de texto de la entrada de diario.

Text4 varchar(255) Cuarto bloque de texto de la entrada de diario.

Text5 varchar(255) Quinto bloque de texto de la entrada de diario.

Text6 varchar(255) Sexto bloque de texto de la entrada de diario.

Text7 varchar(255) Séptimo bloque de texto de la entrada de diario.

Text8 varchar(255) Octavo bloque de texto de la entrada de diario.

Text9 varchar(255) Noveno bloque de texto de la entrada de diario.

Text10 varchar(255) Décimo bloque de texto de la entrada de diario.

Text11 varchar(255) Undécimo bloque de texto de la entrada de diario.

Text12 varchar(255) Duodécimo bloque de texto de la entrada de diario.

Text13 varchar(255) Decimotercer bloque de texto de entrada de diario.

Text14 varchar(255) Decimocuarto bloque de texto de la entrada de diario.

Text15 varchar(255) Decimoquinto bloque de texto de entrada de diario.

Text16 varchar(255) Decimosexto bloque de texto de la entrada de diario.

364 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 379: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla alerts.iduc_messagesLa tabla alerts.iduc_messages es necesaria para soporte multicultural y se utilizapara enviar, insertar, suprimir, actualizar o controlar mensajes de cliente (IDUC).Esta tabla garantiza que los caracteres transferidos entre distintas codificaciones seconvierten en formatos reconocibles.

En la tabla siguiente se describen las columnas de la tabla alerts.iduc_messages.

Tabla 94. Columnas de la tabla alerts.iduc_messages

Nombre de columna Tipo de datos Descripción

MsgID integer Clave primaria de la tabla.

MsgText varchar(4096) El texto del mensaje enviado a una lista de sucesos mediante elprograma de utilidad nco_elct . Este programa de utilidadpermite abrir una lista de sucesos personalizados y transitorios.

MsgTime time Hora de envío del mensaje.

Tabla alerts.application_typesLas tabla alerts.application_types contiene detalles sobre tipos de aplicación quehace que se generen mensajes de vigilancia de la conexión cuando las aplicacionesse conectan y desconectan. Utilice esta tabla para configurar la gravedad de lossucesos de conexión y desconexión según el tipo de aplicación.

Por ejemplo, una conexión de pasarela se trata como una resolución (borrando unadesconexión), mientras que una conexión de lista de sucesos es un suceso de tipo1, que se resuelve por una desconexión. Una desconexión de pasarela se trata comoun problema, mientras que una desconexión de lista de sucesos es una resolución.Puede utilizar las tabla alerts.application_types para configurar una pasarela paragenerar un suceso de tipo 1 (aviso) en desconexión y un suceso de tipo 2(desconexión no seleccionada) en conexión y configurar una lista de sucesos paragenerar un suceso de tipo 1 en conexión y un suceso de tipo 2 (borrar) enconexión.

La tabla alerts.application_types es leída por los desencadenantesconnection_watch_connect y connection_watch_disconnect.

Puede añadir un nuevo tipo de aplicación a esta tabla añadiendo una fila, si esnecesario. También puede cambiar el comportamiento de una aplicación mediantela actualización de su fila.

En la tabla siguiente se describen las columnas de la tabla alerts.application_types.

Tabla 95. Columnas de la tabla alerts.application_types

Nombre de columna Tipo de datos Descripción

aplicación varchar(64) Clave primaria de la tabla.

Este es el nombre de aplicación especificado como una expresiónregular para las coincidencias de serie eficientes.

description varchar(64) Nombre descriptivo del suceso.

connect_type int Tipo de suceso de la conexión.

connect_severity int Gravedad del suceso de la conexión.

disconnect_type int Tipo de suceso de la desconexión.

Apéndice A. Tablas de ObjectServer 365

Page 380: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 95. Columnas de la tabla alerts.application_types (continuación)

Nombre de columna Tipo de datos Descripción

disconnect_severity int Gravedad de suceso de la desconexión.

expire_time int Número de segundos hasta que la alerta se borraautomáticamente. Utilizado por la automatización de caducidad.

discard Boolean Se establece en true si se ha suprimir el suceso.

Tabla master.class_membershipLa tabla master.class_membership admite la correlación de clases de TivoliEnterprise Console con clases de Tivoli Netcool/OMNIbus y almacena lainformación de miembros de clases. Esta tabla se utiliza con la función SQLinstance_of().

En la tabla siguiente se describen las columnas de la tablamaster.class_membership.

Tabla 96. Columnas de la tabla master.class_membership

Nombre de la columna Tipo de datos Descripción

Class entero Clave primaria de la tabla. Número de clase tal como se almacenaen la tabla alert.status.

ClassName varchar(255) Nombre de la clase.

Parent entero Clave primaria de la tabla. ID padre de la clase.

La clase raíz tiene el ID padre -1. Si una clase tiene varios padres,hay una fila para cada padre.

La tabla master.class_membership no permite duplicar correlaciones de nombres declase en números de clase. La tabla tampoco permite varias entradas con el mismonombre de clase o número de clase. Si se inserta una entrada duplicada en la tabla,se escribe un mensaje de aviso con el formato siguiente en el registro deObjectServer:Warning: W-OBJ-103-002: Class name ’nombre_clase’ and number ’número_clase’must be unique, row discarded

Conceptos relacionados:“Funciones” en la página 177

Tablas de servicioLa tabla de servicio contiene información sobre IBM Tivoli Composite ApplicationManager para la supervisión de servicio de Internet.

366 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 381: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla service.statusLa tabla service.status se utiliza para controlar las características adicionalesnecesarias para soportar IBM Tivoli Composite Application Manager for Internetservice monitoring.

En la tabla siguiente se describen las columnas de la tabla service.status.

Tabla 97. Columnas en la tabla service.status

Nombre de columna Tipo de datos Descripción

Name varchar(255) Nombre del servicio.

CurrentState integer Indica el estado del servicio:

0: Bueno

1: Malo

2: Marginal

3: Desconocido

Cambio de estado time Indica la última vez que el estado del servicio cambió.

LastGoodAt time Indica la última vez que el servicio fue bueno ( 0 ).

LastBadAt time Indica la última vez que el servicio fue malo ( 1 ).

LastMarginalAt time Indica la última vez que el servicio fue marginal ( 2 ).

LastReportAt time HOra del último informe de estado de servicio.

Tablas de catálogos del sistemaLa base de datos de catálogo contiene las tablas del sistema que creadas ymantenidas por el objectserver. Las tablas de sistema contienen metadatos sobreobjetos ObjectServer.

Puede ver la información de tablas del sistema utilizando los mandatos SELECT yDESCRIBE, pero no puede modificar estas tablas.

Tabla catalog.memstoresLa tabla catalog.memstores almacena información sobre almacenes de memoria,incluyendo los límites fijos y flexibles del tamaño del almacén de memoria ycuántos bytes se están utilizando actualmente.

En la tabla siguiente se describen las columnas de la tabla catalog.memstores.

Tabla 98. Columnas en la tabla catalog.memstores

Nombre de columna Tipo de datos Descripción

StoreName varchar(40) Nombre del almacén de memoria.

HardLimit unsigned Tamaño máximo del almacén en memoria.

SoftLimit unsigned Tamaño máximo actual del almacén; se puede ampliar para ellímite estricto.

UsedBytes unsigned La cantidad de memoria (en bytes) que utiliza el almacén dememoria.

IsProtected Boolean Utilizado internamente.

Apéndice A. Tablas de ObjectServer 367

Page 382: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla catalog.databasesLa tabla catalog.databases almacena información acerca de cada base de datos,incluido el número de objetos de la base de datos y el tipo de base de datos(sistema o usuario).

En la tabla siguiente se describen las columnas de la tabla catalog.databases.

Tabla 99. Columnas en la tabla catalog.databases

Nombre de columna Tipo de datos Descripción

DatabaseName varchar(40) Nombre de la base de datos.

NumTables unsigned Número de tablas de base y vistas en la base de datos.

IsSystem Boolean TRUE si es una base de datos de sistema.

Tabla catalog.tablesLa tabla catalog.tables almacena información sobre todos los tipos de tablas,incluidas las tablas de sistema y usuario, vistas y tablas de transición.

En la tabla siguiente se describen las columnas de la tabla catalog.tables.

Tabla 100. Columnas en la tabla catalog.tables

Nombre de columna Tipo de datos Descripción

TableName varchar(40) Nombre de la tabla.

DatabaseName varchar(40) Nombre de la base de datos principal.

Status integer Estado actual de la tabla:

0: Válido

1: No válido

2: Error de compilación

NumDependents unsigned Número de dependientes.

TableID integer Identificador de tabla.

TableKind integer Tipo de tabla:

0: Tabla básica

1: Tabla de transición

2: Vista

StorageKind integer Tipo de almacenamiento:

1: Permanente

2: Virtual

4: Transitorio

368 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 383: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla catalog.base_tablesLa tabla catalog.base_tables almacena información sobre tablas de usuario ysistema.

En la tabla siguiente se describen las columnas de la tabla catalog.base_tables.

Tabla 101. Columnas de la tabla catalog.base_tables

Nombre de columna Tipo de datos Descripción

TableName varchar(40) Nombre de la tabla.

DatabaseName varchar(40) Nombre de la base de datos principal.

StoreName varchar(40) Nombre del almacén principal.

NumColumns integer Número de columnas en la tabla.

CreationTime time Hora de creación de la tabla.

StorageKind integer Tipo de almacenamiento:

1: Permanente

2: Virtual

IsSystem Boolean TRUE si se trata de una tabla del sistema.

IsNoModify Boolean True si la tabla no se puede modificar actualmente.

UsedBytes unsigned Tamaño (en bytes) de la tabla. Se actualiza en la creación,alteración y en un intervalo por defecto de 60 segundos.

Tabla catalog.viewsLa tabla catalog.views almacena información sobre vistas. La columna CreationTextcontiene el SQL utilizado para crear la vista.

En la tabla siguiente se describen las columnas de la tabla catalog.views.

Tabla 102. Columnas en la tabla catalog.views

Nombre de columna Tipo de datos Descripción

ViewName varchar(40) Nombre de la vista.

DatabaseName varchar(40) Nombre de la base de datos principal.

CreationText varchar(16384) El texto CREATE VIEW utilizado para crear la vista.

StorageKind integer Tipo de almacenamiento:

1: Permanente

4: Transitorio

IsRecovered Boolean TRUE si es una vista recuperada correctamente después del reinicio.

IsDmlEnabled Boolean True si todas las claves primarias de la tabla están en la vista y,por tanto, las acciones DML pueden llevarse a cabo en la vista.

IsAggregate Boolean TRUE si es una sentencia SELECT de agregación.

Apéndice A. Tablas de ObjectServer 369

Page 384: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla catalog.filesLa tabla catalog.files almacena información sobre los archivos de ObjectServer,incluida la vía de acceso al archivo del sistema operativo asociado con cadaarchivo de ObjectServer.

En la tabla siguiente se describen las columnas de la tabla catalog.files.

Tabla 103. Columnas de al tabla catalog.files

Nombre de la columna Tipo de datos Descripción

NombreArchivo varchar(40) Nombre del archivo ObjectServer.

FilePath varchar(1028) Vía de acceso completa al archivo en el sistema de archivos.

MaximumFiles sin signo Número máximo de archivos.

MaximumSize sin signo Tamaño máximo del archivo.

IsEnabled Booleano TRUE si la información se registra en este archivo.

Estatus entero Estado actual del archivo:

0: válido

1: no válido

2: ha fallado la compilación

Tabla catalog.restrictionsLa tabla catalog.restrictions almacena información sobre filtros de restricción. Lacolumna ConditionText contiene la condición SQL.

En la tabla siguiente se describen las columnas de la tabla catalog.restrictions.

Tabla 104. Columnas en la tabla catalog.restrictions

Nombre de columna Tipo de datos Descripción

RestrictionName varchar(40) Nombre del filtro de restricción.

TableName varchar(40) Nombre de la tabla en la que se ha creado el filtro de restricción.

DatabaseName varchar(40) Nombre de la base de datos principal.

ConditionText varchar(16384) Texto de condición del filtro de restricción.

CreationText varchar(16384) El texto CREATE RESTRICTION utilizado para crear el filtro derestricción.

Tabla columnas catálogo.La tabla catalog.columns almacena información sobre columnas de tabla, incluidossus tipos de datos.

En la tabla siguiente se describen las columnas de la tabla catalog.columns.

Tabla 105. Columnas en la tabla catalog.columns

Nombre de columna Tipo de datos Descripción

ColumnName varchar(40) Nombre de la columna.

TableName varchar(40)) Nombre de la tabla.

DatabaseName varchar(40) Nombre de la base de datos principal.

DataType integer Tipo de datos de columna.

370 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 385: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 105. Columnas en la tabla catalog.columns (continuación)

Nombre de columna Tipo de datos Descripción

Length unsigned Número de caracteres de la columna.

IsPrimaryKey Boolean True si la columna es la clave principal.

OrdinalPosition unsigned Posición en la lista de columna.

IsHidden Boolean True si la columna está oculta.

IsNoModify Boolean True si la columna no se puede modificar actualmente.

IsNoDefault Boolean True si el valor de esta columna inicial debe especificarse en elmandato INSERT.

IsSystem Boolean TRUE si se trata de una columna del sistema.

Tabla catalog.primitive_signalsLa tabla catalog.primitive_signals almacena información sobre usuario y señales.

En la tabla siguiente se describen las columnas de la tablacatalog.primitive_signals.

Tabla 106. Columnas de la tabla catalog.primitive_signals

Nombre de columna Tipo de datos Descripción

SignalName varchar(40) Nombre de la señal.

IsSystem Boolean TRUE si es una señal de sistema.

CommentBlock varchar(1024) Serie de comentario especificada en el mandato CREATE SIGNAL.

Tabla catalog.primitive_signal_parametersLa tabla catalog.primitive_signal_parametres almacena información sobre losparámetros de las señales del sistema y definidas por el usuario.

En la tabla siguiente se describen las columnas de la tablacatalog.primitive_signal_parameters.

Tabla 107. Columnas de la tabla catalog.primitive_signal_parameters

Nombre de columna Tipo de datos Descripción

ParameterName varchar(40) Nombre del parámetro.

SignalName varchar(40) Nombre de la señal con este parámetro.

DataType integer Tipo de datos del parámetro.

Length unsigned Número de caracteres en el parámetro.

OrdinalPosition integer Posición en la lista de parámetros.

Apéndice A. Tablas de ObjectServer 371

Page 386: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla catalog.trigger_groupsLa tabla catalog.trigger_groups almacena información sobre los grupos dedesencadenante, incluyendo si el grupo de desencadenantes está habilitado.

En la tabla siguiente se describen las columnas de la tabla catalog.trigger_groups.

Tabla 108. Columnas de la tabla catalog.trigger_groups

Nombre de columna Tipo de datos Descripción

GroupName varchar(40) Nombre del grupo de desencadenantes.

IsEnabled Boolean True si el desencadenante está habilitado.

Tabla catalog.triggersLa tabla catalog.triggers almacena información sobre desencadenantes, incluidos eltipo de desencadenante, la prioridad de desencadenante y a qué grupo dedesencadenantes pertenece.

En la tabla siguiente se describen las columnas de la tabla catalog.triggers.

Tabla 109. Columnas en la tabla catalog.triggers

Nombre de columna Tipo de datos Descripción

TriggerName varchar(40) Nombre del desencadenante.

GroupName varchar(40) Nombre de grupo de desencadenante.

TriggerKind integer Tipo de desencadenante:

0: Base de datos

1: Señal

2: Temporal

DebugEnabled Booleano True si la depuración está habilitada para el desencadenante.

IsEnabled Booleano True si el desencadenante está habilitado.

TriggerPriority integer Prioridad de desencadenante: 1 la más alta, 20 es la prioridad másbaja.

CommentBlock varchar(1024) Serie de comentario especificada en el mandato CREATETRIGGER.

EvaluateBlock varchar(2048) Cláusula de evaluación especificada en el mandato CREATETRIGGER.

BindName varchar(40) Nombre de enlace especificado en la cláusula de evaluación delmandato CREATE TRIGGER.

ConditionBlock varchar(1024) Cuando la condición se especifica en el mandato CREATETRIGGER.

DeclareBlock varchar(1024) Declaración de variable especificada en el mandato CREATETRIGGER.

CodeBlock varchar(8192) Cuerpo del desencadenante.

372 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 387: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla catalog.database_triggersLa tabla catalog.database_triggers almacena información sobre los desencadenantesde base de datos, incluido el tipo de operación de base de datos que provoca quese active el desencadenante.

En la tabla siguiente se describen las columnas de la tablacatalog.database_triggers.

Tabla 110. Columnas de la tabla catalog.database_triggers

Nombre de columna Tipo de datos Descripción

TriggerName varchar(40) Nombre del desencadenante.

EventOrder integer Orden de sucesos:

0: Antes

1: Después

EventOp integer Operación de suceso:

0: Insertar

1: Reinsertar

2: Actualizar

3: Suprimir

EventLevel integer Nivel del desencadenante:

0: Desencadenante de nivel bajo

1: Desencadenante de nivel de sentencia

DatabaseName varchar(40) Nombre de la base de datos.

TableName varchar(40) Nombre de la tabla.

Tabla catalog.signal_triggersLa tabla catalog.signal_triggers almacena información sobre los desencadenantes,incluido el nombre de la señal que provoca que se active el desencadenante.

En la tabla siguiente se describen las columnas de la tabla catalog.signal_triggers.

Tabla 111. Columnas de la tabla catalog.signal_triggers

Nombre de columna Tipo de datos Descripción

TriggerName varchar(40) Nombre del desencadenante.

SignalName varchar(40) Nombre de la señal.

Apéndice A. Tablas de ObjectServer 373

Page 388: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla catalog.temporal_triggersLa tabla catalog.temporal_triggers almacena información sobre desencadenantestemporales, incluida la frecuencia con que se activan.

En la tabla siguiente se describen las columnas de la tablacatalog.temporal_triggers.

Tabla 112. Columnas de la tabla catalog.temporal_triggers

Nombre de columna Tipo de datos Descripción

TriggerName varchar(40) Nombre del desencadenante.

Frequency integer Frecuencia del desencadenante en segundos.

Tabla catalog.proceduresLa tabla catalog.procedures almacena información sobre procedimientos,incluyendo si el procedimiento es un procedimiento SQL o un procedimientoexterno.

En la tabla siguiente se describen las columnas de la tabla catalog.procedures.

Tabla 113. Columnas en la tabla catalog.procedures

Nombre de columna Tipo de datos Descripción

ProcedureName varchar(40) Nombre del procedimiento.

Kind unsigned Tipo de procedimiento:

0: SQL

1: Externo

Tabla catalog.sql_proceduresLa tabla catalog.sql_procedures almacena información sobre procedimientos SQL,incluido el código para el procedimiento.

En la tabla siguiente se describen las columnas de la tabla catalog.sql_procedures.

Tabla 114. Columnas de la tabla catalog.sql_procedures

Nombre de columna Tipo de datos Descripción

ProcedureName varchar(40) Nombre del procedimiento.

DeclareBlock varchar(16384) Declaración de variable especificada en el mandato CREATEPROCEDURE.

CodeBlock varchar(32768) Cuerpo del procedimiento.

374 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 389: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla catalog.external_proceduresLa tabla catalog.external_procedures almacena información sobre losprocedimientos externos, incluido el nombre del ejecutable de procedimiento y elhost en el que se ejecuta.

En la tabla siguiente se describen las columnas de la tablacatalog.external_procedures.

Tabla 115. Columnas de la tabla catalog.external_procedures

Nombre de columna Tipo de datos Descripción

ProcedureName varchar(40) Nombre del procedimiento.

ExecutableName varchar(1024) Nombre del ejecutable.

HostName varchar(1024) Nombre del host.

ID usuario varchar(1024) Identificador de usuario.

ID de grupo varchar(1024) Identificador de grupo.

ArgumentsSpec varchar(32768) Argumentos especificados en el texto CREATE PROCEDURE.

Tabla catalog.procedure_parametersLa tabla catalog.procedure_parameters almacena información acerca de parámetrosde procedimiento, incluidos los tipos de parámetros.

En la tabla siguiente se describen las columnas de la tablacatalog.procedure_parameters.

Tabla 116. Columnas de la tabla catalog.procedure_parameters

Nombre de columna Tipo de datos Descripción

NombreParámetro varchar(40) Nombre del parámetro.

Nombre de procedimiento varchar(40) Nombre del procedimiento.

ParameterKind integer Tipo de parámetro:

0: Base

1: Row

2: Array

DataType integer Tipo de datos del parámetro.

OrdinalPosition integer Posición en la lista de argumento.

Length integer Número de caracteres en el parámetro.

TableName varchar(40) Si se trata de un parámetro fila, éste es la tabla principal de dichafila. De lo contrario, es una serie vacía.

DatabaseName varchar(40) Si se trata de un parámetro fila, éste es la base de datos principalde dicha tabla de la fila. De lo contrario, es una serie vacía.

ParameterMode integer Modalidad de parámetro:

1: In

2: Out

3: In/Out

Apéndice A. Tablas de ObjectServer 375

Page 390: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla catalog.connectionsTabla catalog.connections contiene información sobre las conexiones con elobjectserver.

En la tabla siguiente se describen las columnas de la tabla catalog.connections.

Tabla 117. Columnas en la tabla catalog.connections

Nombre de columna Tipo de datos Descripción

ConnectionID integer Identificador de conexión.

LogName varchar(40) Nombre del archivo de registro de la aplicación conectada.

HostName varchar(40) Nombre del host conectado.

AppName varchar(40) Nombre de la aplicación conectada.

AppDescription varchar(40) Descripción de la aplicación conectada.

IsRealTime Boolean True si el cliente utiliza IDUC. Los escritorios y las pasarelasutilizan IDUC y conexiones en tiempo real.

ConnectTime time Cantidad de tiempo durante la cual el cliente está conectado.

Tabla catalog.propertiesLa tabla catalog.properties contiene inforamción sobre las propiedadesObjectServer.

En la tabla siguiente se describen las columnas de la tabla catalog.properties.

Tabla 118. Columnas en la tabla catalog.properties

Nombre de columna Tipo de datos Descripción

PropName varchar(40) Nombre de la propiedad.

PropGroup varchar(40) Grupo de la propiedad, como por ejemplo Automático o Tienda .No todas las propiedades pertenecen a un grupo.

Descripción varchar(255) Descripción de la propiedad.

Type integer Tipo de datos de la propiedad.

Value varchar(255) Valor real de la propiedad.

IsModifyable Boolean TRUE si la propiedad es modificable.

IsImmediate Boolean True si cuando se modifica el efecto es inmediato. De lo contrario,ObjectServer debe reiniciarse.

IsAdvanced Boolean TRUE si la propiedad es avanzada. Las propiedades avanzadas nodeben cambiarse sin la asistencia de IBM Software Support.

Tabla catalog.security_permissionsLa tabla catalog.security_permissions contiene información de permisos paraobjetos objectserver. Esta tabla sólo la utiliza netcool/Omnibus Administrator.

En la tabla siguiente se describen las columnas de la tablacatalog.security_permissions.

Tabla 119. Columnas de la tabla catalog.security_permissions

Nombre de columna Tipo de datos Descripción

ApplicationID integer Identificador de aplicación.

376 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 391: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 119. Columnas de la tabla catalog.security_permissions (continuación)

Nombre de columna Tipo de datos Descripción

Objeto varchar(40) Nombre del objeto.

ObjectType integer Tipo de objeto, por ejemplo, una tabla.

ActionID integer64 Identificador de la acción de permiso. Utilizado sólo porNetcool/OMNIbus Administrator.

Permiso varchar(40) Tipo de permiso.

Tabla catalog.profilesLa tabla catalog.files contiene información de temporización para ejecutarmandatos SQL de conexiones de cliente.

Las estadísticas de perfil SQL también se registran enel archivo$NCHOME/omnibus/log/servername_profiler_report.logn, en el intervaloespecificado en la propiedad ProfileStatsInterval o la opción de línea demandatos -profilestatsinterval.

En la tabla siguiente se describen las columnas de la tabla catalog.profiles.

Tabla 120. Columnas en la tabla catalog.profiles

Nombre de columna Tipo de datos Descripción

ConnectionID integer Identificador de conexión.

UID integer Identificador de usuario.

AppName varchar(40) Nombre de la aplicación conectada.

HostName varchar(40) Nombre del host conectado.

ProfiledFrom time Hora en la que empezó el perfilado.

LastSQLTime real Duración, en segundos, del último mandato SQL.

MinSQLTime real Tiempo de ejecución más breve, en segundos, para este cliente.

MaxSQLTime real Tiempo de ejecución más largo, en segundos, para este cliente.

PeriodSQLTime real Cantidad de tiempo, en segundos, que la aplicación ha estadoejecutando SQL desde el último informe de perfil.

TotalSQLTime real Tiempo total, en segundos, para ejecutar todos los mandatos SQLpara este cliente.

LastTimingAt time Última vez que se realizó un perfil SQL para este cliente.

NumSubmits integer Número de envíos para este cliente. Un único envío puedecontener varios mandatos SQL, ejecute con el mandato go .

TotalParseTime real Registra la cantidad de tiempo total utilizado analizandomandatos para este cliente.

TotalResolveTime real Registra la cantidad de tiempo total utilizado resolviendomandatos para este cliente.

TotalExecTime real Registra la cantidad de tiempo total utilizado ejecutandomandatos para este cliente.

Apéndice A. Tablas de ObjectServer 377

Page 392: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla catalog.indexesLa tabla catalog.indexes almacena información acerca de los índices, incluida latabla de columna y base de datos en que se basa el índice y el tipo de índice.

En la tabla siguiente se describen las columnas de la tabla catalog.indexes.

Tabla 121. Columnas en la tabla catalog.indexes

Nombre de columna Tipo de datos Descripción

IndexName varchar(40) Nombre del índice.

DatabaseName varchar(40) Nombre de la base de datos de la columna indexada.

TableName varchar(40) Nombre de la tabla de la columna indexada.

ColumnName varchar(40) Nombre de la columna indexada.

IndexKind integer Tipo de índice:

1: Hash

2: Árbol

IsValid Boolean TRUE si el índice es válido.

False si el índice no es válido; por ejemplo, debido a unaanomalía de asignación de memoria. Para que un índice sea válidode nuevo, puede volver a crear el índice mediante el reinicio delobjectserver.

Tablas de estadísticasLas tablas de estadísticas contienen información de temporización.

La tabla catalog.files contiene información de temporización para ejecutarmandatos SQL de conexiones de cliente.

La tabla master.stats almacena estadísticas sobre las tablas alerts.status,alerts.details y alerts.journal.

La tabla catalog.trigger_stats almacena información de temporización sobredesencadenantes.

Tabla catalog.profilesLa tabla catalog.files contiene información de temporización para ejecutarmandatos SQL de conexiones de cliente. El perfilador SQL está habilitadoutilizando el la propiedad Profile o la opción de línea de mandatos -profile .

Las estadísticas de perfil SQL también se registran enel archivo$NCHOME/omnibus/log/servername_profiler_report.logn, en el intervaloespecificado en la propiedad ProfileStatsInterval o la opción de línea demandatos -profilestatsinterval.

En la tabla siguiente se describen las columnas de la tabla catalog.profiles.

Tabla 122. Columnas en la tabla catalog.profiles

Nombre de columna Tipo de datos Descripción

ConnectionID integer Identificador de conexión.

378 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 393: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 122. Columnas en la tabla catalog.profiles (continuación)

Nombre de columna Tipo de datos Descripción

UID integer Identificador de usuario.

AppName varchar(40) Nombre de la aplicación conectada.

HostName varchar(40) Nombre del host conectado.

ProfiledFrom time Hora en la que empezó el perfilado.

LastSQLTime real Duración, en segundos, del último mandato SQL.

MinSQLTime real Tiempo de ejecución más breve, en segundos, para este cliente.

MaxSQLTime real Tiempo de ejecución más largo, en segundos, para este cliente.

PeriodSQLTime real Cantidad de tiempo, en segundos, que la aplicación ha estadoejecutando SQL desde el último informe de perfil.

TotalSQLTime real Tiempo total, en segundos, para ejecutar todos los mandatos SQLpara este cliente.

LastTimingAt time Última vez que se realizó un perfil SQL para este cliente.

NumSubmits integer Número de envíos para este cliente. Un único envío puedecontener varios mandatos SQL, ejecute con el mandato go .

TotalParseTime real Registra la cantidad de tiempo total utilizado analizandomandatos para este cliente.

TotalResolveTime real Registra la cantidad de tiempo total utilizado resolviendomandatos para este cliente.

TotalExecTime real Registra la cantidad de tiempo total utilizado ejecutandomandatos para este cliente.

Tabla master.statsLa tabla master.stats almacena estadísticas sobre las tablas alerts.status,alerts.details y alerts.journal. Esta información de temporización se recopila si elgrupo de desencadenantes stats_triggers está habilitado. El grupo dedesencadenantes stats_triggers está inhabilitado por defecto en el archivoautomation.sql.

En la tabla siguiente se describen las columnas de la tabla master.stats.

Tabla 123. Columnas en la tabla master.stats

Nombre de columna Tipo de datos Descripción

StatTime time La hora en que se han recopilado las estadísticas.

NumClients integer El número total de clientes (por ejemplo, escritorios) conectadoscon el objectserver.

NumRealtime integer El número de clientes de tiempo real conectados a ObjectServer.Los escritorios y las pasarelas utilizan IDUC y conexiones entiempo real.

NumProbes integer Número de analizadores conectados al ObjectServer.

NumGateways integer Número de pasarelas conectadas al ObjectServer.

NumMonitors integer Número de monitores conectados al ObjectServer.

NumProxys integer Número de servidores proxy conectados al ObjectServer.

EventCount integer Número de entradas en la tabla alerts.status.

JournalCount integer Número actual de entradas en la tabla alerts.journal.

DetailCount integer Número actual de entradas en la tabla alerts.details.

Apéndice A. Tablas de ObjectServer 379

Page 394: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 123. Columnas en la tabla master.stats (continuación)

Nombre de columna Tipo de datos Descripción

StatusInserts integer Número total de inserciones en la tabla alerts.status.

StatusNewInserts integer Número de nuevas inserciones en la tabla alerts.status.

StatusDedups integer Número de reinserciones en la tabla alerts.status.

JournalInserts integer Número de inserciones en la tabla alerts.journal.

DetailsInserts integer Número de inserciones en la tabla alerts.details.

Tabla catalog.trigger_statsLa información de temporización sobre desencadenantes, incluido el número deveces que el desencadenante se haya generado y el número de veces que se hayaactivado, se guarda en la tabla catalog.trigger_state. Estas estadísticas se recopilana menos que el sistema de automatización se inhabilite estableciendo la opción delínea de mandatos -autoenabled en False .

Las estadísticas de desencadenante también se registran en el archivo$NCHOME/omnibus/log/servername_trigger_stats.logn.

En la tabla siguiente se describen las columnas de la tabla catalog.trigger_stats.

Tabla 124. Columnas de la tabla catalog.trigger_stats

Nombre de columna Tipo de datos Descripción

TriggerName varchar(40) Nombre del desencadenante.

PreviousCondition Booleano Valor de la condición La última vez que se ha activado eldesencadenante.

PreviousRowcount unsigned Número de filas devueltas por la cláusula EVALUATE la últimavez que se ha activado el desencadenante.

NumZeroRowcount unsigned Número de veces consecutivas en que la evaluación ha devueltocero filas.

NumPositiveRowcount unsigned Número de veces consecutivas en que la evaluación ha devueltouna o más filas.

PeriodNumRaises unsigned Número de veces que se ha activado el desencadenante despuésdel último informe.

PeriodNumFires unsigned Número de veces que se ha activado el desencadenante despuésdel último informe.

PeriodTime real Cantidad de tiempo durante la cual el desencadenante ha operadodesde el último informe.

NumRaises unsigned Número de veces que se ha emitido el desencadenante.

NumFires unsigned Número de veces que se ha activado el desencadenante.

MaxTime real Cantidad de tiempo máxima que el desencadenante ha utilizadopara ejecutarse.

TotalTime real Cantidad de tiempo transcurrido de funcionamiento deldesencadenante desde el arranque.

Nota: La tabla del sistema catalog.trigger_stats se actualiza periódicamente, enfunción del valor de la propiedad Auto.StatsInterval o la opción de línea demandatos autostatsinterval-. El valor por defecto es cada 10 segundos.

380 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 395: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla catalog.channel_statsLa tabla catalog.channel_stats contiene una entrada para cada canal conocidaactualmente en el objectserver. Cada entrada dentro de la tabla ofrece detallessobre el canal de dos partes: las estadísticas del periodo de recopilación estadísticay las estadísticas totales desde que se ha iniciado el objectserver.

En la tabla siguiente se describen las columnas de la tabla catalog.channel_stats.

Tabla 125. Columnas de la tabla catalog.channel_stats

Nombre de columna Tipo de datos Descripción

ChannelName varchar(64) El nombre del canal.

LastTimingAt time Hora a la que se ha realizado la última actualización deestadísticas; almacenada como UTC.

PeriodNumMsgs int El número de veces que se ha utilizado el canal en la últimaventana del perfil

PeriodTime real El tiempo necesario para enviar mensajes a todos los clientes en laúltima ventana de período de perfil.

PeriodMaxTime real El tiempo máximo necesario para enviar mensajes a todos losclientes en la última ventana de período de perfil.

PeriodClientNum int El número de clientes a los que se han enviado mensajes en laúltima invocación.

PeriodMaxClientNum int El número máximo de clientes a los que se ha enviado mensajesen la ventana de último periodo de perfil.

NumMsg int El número de veces que este canal se ha utilizado desde que seinició el servidor.

TotalTime real El tiempo total necesario para enviar mensajes a todos los clientesdesde que se ha iniciado el servidor.

MaxTime real El tiempo máximo necesario para enviar mensajes a todos losclientes desde que se ha iniciado el servidor.

MaxClientNum int El número máximo de mensajes enviados a clientes desde el iniciodel servidor.

TotalClientNum int El número total de clientes a los que se han enviado mensajesdesde el inicio del servidor.

Tablas de soporte de herramientas de clienteLas tablas de soporte de herramienta de cliente son utilizadas por las interfacesgráficas de usuario de escritorio para visualizar la información de alerta.

Tabla alerts.resolutionsLa tabla alerts.resolutions se utiliza para mantener la opción Resoluciones en lalista de sucesos.

En la tabla siguiente se describen las columnas de la tabla alerts.resolutions.

Tabla 126. Columnas en la tabla alerts.resolutions

Nombre de columna Tipo de datos Descripción

KeyField varchar(255) Clave primaria de la tabla.

Etiqueta integer Valor de clase para esta solución.

Apéndice A. Tablas de ObjectServer 381

Page 396: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 126. Columnas en la tabla alerts.resolutions (continuación)

Nombre de columna Tipo de datos Descripción

Secuencia entero Número de secuencia que establece el orden en tiempo devisualización.

Título varchar(64) Título de la resolución.

Resolution1 varchar(255) Primera línea de texto de la resolución.

Resolution2 varchar(255) Segunda línea de texto de la resolución.

Resolution3 varchar(255) Tercera línea de texto de la resolución.

Resolution4 varchar(255) Cuarta línea de texto de la resolución.

Tabla alerts.conversionsLa tabla alerts.conversions se utiliza para proporcionar una fácil conversión de unvalor numérico en una serie para cualquier columna.

En la tabla siguiente se describen las columnas de la tabla alerts.conversions.

Tabla 127. Columnas en la tabla alerts.conversions

Nombre de columna Tipo de datos Descripción

KeyField varchar(255) Clave principal para la tabla; serie de secuenciación interna(compuesto de Colname y Value).

Colname varchar(255) Nombre de la columna para la que esta conversión resultaadecuada.

Value integer Valor numérico de la conversión.

Conversion varchar(255) Valor de serie para la conversión.

Tabla alerts.col_visualsLas tabla alerts.col_visuals se utiliza para proporcionar los visualespredeterminados para columnas cuando se muestran en las herramientas delescritorio.

En la tabla siguiente se describen las columnas de la tabla alerts.col_visuals.

Tabla 128. Columnas de la tabla alerts.col_visuals

Nombre de columna Tipo de datos Descripción

Colname varchar(255) Nombre de la columna de los parámetros visuales.

Título varchar(255) Título de la columna cuando se visualiza.

DefWidth integer Anchura por defecto de la columna cuando se visualiza.

MaxWidth integer Anchura máxima de la columna cuando se visualiza.

TitleJustify integer Justificación para el título de columna:

0: izquierda

1: centro

2: derecha

382 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 397: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 128. Columnas de la tabla alerts.col_visuals (continuación)

Nombre de columna Tipo de datos Descripción

DataJustify integer Justificación para datos de columna:

0: izquierda

1: centro

2: derecha

Tabla alerts.colorsLa tabla alerts.colors se utiliza para crear los colores que requiere el escritorioWindows.

En la tabla siguiente se describen las columnas de la tabla alerts.colors.

Tabla 129. Columnas en la tabla alerts.colors

Nombre de columna Tipo de datos Descripción

Gravedad integer Gravedad del problema:

0: Clara

1: Indeterminada

2: Aviso

3: Leve

4: Principal

5: Crítica

AckedRed integer Componente rojo del color RGB para sucesos reconocidos. Debeestar en el rango 0-255.

AckedGreen integer Componente verde del color RGB para sucesos reconocidos. Debeestar en el rango 0-255.

AckedBlue integer Componente azul del color RGB para sucesos reconocidos. Debeestar en el rango 0-255.

UnackedRed integer Componente rojo del color RGB para sucesos no reconocidos.Debe estar en el rango 0-255.

UnackedGreen integer Componente verde del color RGB para sucesos no reconocidos.Debe estar en el rango 0-255.

UnackedBlue integer Componente azul del color RGB para sucesos no reconocidos.Debe estar en el rango 0-255.

Apéndice A. Tablas de ObjectServer 383

Page 398: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tablas de herramientas de escritorioLas tablas de herramientas de escritorio contienen información utilizada paraconfigurar herramientas de lista de sucesos.

Tabla tools.actionsLa tabla tools.actions utiliza para controlar herramientas de escritorio.

En la tabla siguiente se describen las columnas de la tabla tools.actions.

Tabla 130. Columnas en la tabla tools.actions

Nombre de columna Tipo de datos Descripción

ActionID integer Identificador de la herramienta.

Nombre varchar(64) El nombre de la herramienta.

Propietario integer Indica si la herramienta tiene un propietario.

Habilitado integer Indica si la herramienta se ha habilitado.

Description1 varchar(255) Primera línea de la descripción.

Description2 varchar(255) Segunda línea de la descripción.

Description3 varchar(255) Tercera línea de la descripción.

Description4 varchar(255) Cuarta línea de la descripción.

HasInternal integer Indica si la herramienta tiene un efecto interno.

InternalEffect1 varchar(255) Primera línea del efecto interno.

InternalEffect2 varchar(255) Segunda línea del efecto interno.

InternalEffect3 varchar(255) Tercera línea del efecto interno.

InternalEffect4 varchar(255) Cuarta línea del efecto interno.

InternalForEach integer Cuando se establece, inicia el efecto interno para cada filaseleccionada.

HasExternal integer Indica si la herramienta tiene un procedimiento externo.

ExternalEffect1 varchar(255) Primera línea del procedimiento externo.

ExternalEffect2 varchar(255) Segunda línea del procedimiento externo.

ExternalEffect3 varchar(255) Tercera línea del procedimiento externo.

ExternalEffect4 varchar(255) Cuarta línea del procedimiento externo.

ExternalForEach integer Cuando se establece, inicia el procedimiento externo para cada filaseleccionada.

RedirectOut integer Cuando se selecciona, se envía la salida a través de una ventanade sólo lectura en la misma pantalla que la lista de sucesos queejecuta la herramienta.

RedirectErr integer Cuando se selecciona, se envían los errores a través de unaventana de sólo lectura en la misma pantalla que la lista desucesos que ejecuta la herramienta.

Plataforma varchar(255) Indica el tipo de sistema operativo en que se ejecuta elprocedimiento externo:

NT (plataformas Windows)

UNIX (plataformas UNIX)

UNIX, NT (plataformas UNIX y Windows)

JournalText1 varchar(255) Primera línea de la entrada de diario.

384 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 399: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 130. Columnas en la tabla tools.actions (continuación)

Nombre de columna Tipo de datos Descripción

JournalText2 varchar(255) Segunda línea de la entrada de diario.

JournalText3 varchar(255) Tercera línea de la entrada de diario.

JournalText4 varchar(255) Cuarta línea de la entrada de diario.

JournalForEach integer Cuando se establece, añade la entrada de diario para cada filaseleccionada.

HasForcedJournal integer Fuerza que se abra una ventana de entrada de diario cuando seejecuta la herramienta.

Tabla tools.action_accessLa tabla tools.action_access se utiliza para controlar el acceso a herramientas deescritorio.

En la tabla siguiente se describen las columnas de la tabla tools.action_access.

Tabla 131. Columnas de la tabla tools.action_access

Nombre de columna Tipo de datos Descripción

ActionID integer Identificador único de la herramienta, tomado de la tabla deacciones.

GID integer Indica para qué grupo la herramienta se encuentra disponible.

ClassID integer Indica para qué clase la herramienta se encuentra disponible.

ActionAccessID integer Campo de clave primaria para la tabla.

Tabla tools.menusLa tabla tools.menus se utiliza para controlar los menús de herramientas deescritorio.

En la tabla siguiente se describen las columnas de la tabla tools.menus.

Tabla 132. Columnas en la tabla tools.menus

Nombre de columna Tipo de datos Descripción

MenuID integer Campo de clave primaria para la tabla de menús.

Name varchar(64) Nombre del menú.

Propietario integer Indica si el menú tiene un propietario.

Habilitado integer Indica si el menú está habilitado o inhabilitado.

Tabla tools.menu_itemsLa tabla tools.menu_items se utiliza para controlar elementos del menú deherramienta de escritorio.

En la tabla siguiente se describen las columnas de la tabla tools.menu_items.

Tabla 133. Columnas de la tabla tools.menu_items

Nombre de columna Tipo de datos Descripción

KeyField varchar(32) Campo de clave de este elemento de menú. Creado desde elmenu_id (en la tabla tools.menu) y el menu_item_id .

Apéndice A. Tablas de ObjectServer 385

Page 400: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 133. Columnas de la tabla tools.menu_items (continuación)

Nombre de columna Tipo de datos Descripción

MenuID integer Identificador de menú exclusivo tomado de la tabla tools.menus.

MenuItemID integer Identificador de clave principal de este elemento de menú.

Título varchar(64) Nombre que aparece en el menú.

Descripción varchar(255) Descripción del elemento de menú.

Habilitado integer Indica si el elemento de menú está habilitado o inhabilitado.

InvokeType integer Indica el tipo de elemento de menú:

0: tool

1: línea de separador

2: submenú

InvokeID integer Indica el identificador de acción definido en la columnaInvokeType.

Posición integer Indica la posición (orden) de este elemento del menú.

Accelerator varchar(32) Indica el atajo de teclcado de este elemento de menú.

Tabla tools.prompt_defsLa tabla tools.prompt_defs se utiliza para almacenar todas las definiciones desolicitudes.

En la tabla siguiente se describen las columnas de la tabla tools.prompt_defs.

Tabla 134. Columnas de la tabla tools.prompt_defs

Nombre de columna Tipo de datos Descripción

Name varchar(64) El nombre de la solicitud.

Prompt varchar(64) El título de solicitud que aparece en la parte superior de laventana de solicitud.

Default varchar(64) El valor predeterminado para especificar si el usuario noespecifica ningún valor.

Value varchar(255) Lista de valores disponibles.

Type integer Tipo de solicitud. El tipo 7 es un enlace a una definición de menúcon el mismo nombre que la solicitud.

Tabla tools.menu_defsLa tabla tools.menu_defs se utiliza para controlar los elementos del menúherramienta de escritorio.

En la tabla siguiente se describen las columnas de la tabla tools.menu_defs.

Tabla 135. Columnas de la tabla tools.menu_defs

Nombre de columna Tipo de datos Descripción

Nombre varchar(64) El nombre del menú. Este debe coincidir con el nombre de ladefinición de solicitud del tipo 7 .

DatabaseName varchar(64) Base de datos utilizada para crear elementos de menú.

TableName varchar(64) Tabla utilizada para crear elementos de menú.

386 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 401: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 135. Columnas de la tabla tools.menu_defs (continuación)

Nombre de columna Tipo de datos Descripción

ShowField varchar(64) El campo de la tabla a mostrar como lista desplegable de menú.

AssignField varchar(64) El campo real utilizado para especificar un valor en la solicitud.

OrderByField varchar(64) El campo utilizado para ordenar el menú.

WhereClause varchar(255) El filtro (condición) para mostrar un subconjunto de elementos demenú.

Dirección integer El orden de los elementos de menú:

0: Ascendente

1: Descendente

Tablas de objectserver de escritorioLa tabla master.national se utiliza en una arquitectura objectserver de escritorio.Esta tabla se crea cuando ejecuta nco_dbinit utilizando la opción desktopserver-.La tabla master.servergroups se utilizará para equilibrar la carga de conexiones deescritorio.

Tabla master.nationalLa tabla master.national identifica el ObjectServer maestro y la modalidad de dobleescritura en una arquitectura de ObjectServer de escritorio.

En la tabla siguiente se describen las columnas de la tabla master.national.

Tabla 136. Columnas de la tabla master.national

Nombre de la columna Tipo de datos Descripción

KeyField incr Clave primaria de la tabla.

MasterServer varchar(29) Nombre del ObjectServer maestro en una arquitectura deObjectServer de escritorio.

DualWrite entero Indica si se debe habilitar la modalidad de escritura doble. Lamodalidad de escritura dual permite que los operadores veanrápidamente los resultados de las acciones de las herramientas(por ejemplo, reconocer y asignar prioridad) en sus escritorios deservidor dual. Esto se hace enviando todas las acciones de lasherramientas tanto al ObjectServer de escritorio como alObjectServer maestro.

1: habilitado

0: inhabilitado

Apéndice A. Tablas de ObjectServer 387

Page 402: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla master.servergroupsLa tabla master.servergroups se utiliza para equilibrar la carga de las conexiones deescritorio.

En la tabla siguiente se describen las columnas de la tabla master.servergroups.

Tabla 137. Columnas de la tabla master.servergroups

Nombre de la columna Tipo de datos Descripción

ServerName varchar(64) Nombre de un ObjectServer de escritorio.

Group ID entero Identificador del grupo al que pertenece cada ObjectServer deescritorio. Los inicios de sesión de usuarios de lista de sucesossólo se distribuyen entre ObjectServers de escritorio que tienen elmismo GroupID.

Weight entero Prioridad de cada ObjectServer de escritorio. Los valores más altosatraen más conexiones proporcionalmente. Por ejemplo, unObjectServer con un peso (weight) de 2 atrae el doble deconexiones que uno con un peso de 1. Las conexiones conequilibrio de carga no se redirigen a ObjectServers con un peso 0.

Tablas de seguridad para compatibilidad con versiones anterioresEn Netcool/OMNIbus V3.6, la base de datos maestra contenía tablas deautenticación de usuario para almacenar información de seguridad denetcool/Omnibus. Esta información se almacena en la base de datos de seguridady la tabla catalog.security_permissions.

Las tablas master.names, master.members y master.groups proporcionanidentificación y autorización de usuario y grupo. La tabla master.profilesproporciona la información de restricción de usuario. Estas tablas son sólonecesarias para la compatibilidad con versiones anteriores del escritorio.

Tablas IDUCLa base de datos iduc_system almacena todas las tablas de soporte de aplicaciónIDUC para la notificación de sucesos acelerados, enviando mensajes informativos ytiempos de actualización IDUC.

Tabla iduc_system.channelLa tabla iduc_system.channel define el conjunto de canales conocidos en elobjectserver.

En la tabla siguiente se describen las columnas de la tabla iduc_system.channel.

Tabla 138. Columnas de la tabla iduc_system.channel

Nombre de columna Tipo de datos Descripción

Name varchar(64) El nombre del canal

ChannelID int Una clave que se añade para que lograr una mejor referencia adetalles del canal almacenado en las tablas asociadas.

Descripción varchar(2048) La descripción del canal.

388 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 403: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla iduc_system.channel_interestLa tabla iduc_system.channel_interest almacena las entradas de interés de canalpara un canal determinado. Pueden haber varias entradas de interés por canalinterés.

En la tabla siguiente se describen las columnas de la tablaiduc_system.channel_interest.

Tabla 139. Columnas de la tabla iduc_system.channel_interest

Nombre de columna Tipo de datos Descripción

Nombre de elemento varchar(64) El nombre del los destinatarios de canal. Es un nombre de usuarioo grupo.

IsGroup int Una indicación de si los destinatarios son un grupo de usuarios.

Nombre de host varchar(255) El nombre de host del cliente IDUC.

AppName varchar(255) El nombre de aplicación del cliente IDUC.

AppDescription varchar(255) La descripción de la aplicación del cliente IDUC.

ChannelID int El ID de canal.

Tabla iduc_system.channel_summaryLa tabla iduc_system.channel_summary sólo se utiliza para un mandato de clienteEvent Fast Track (o suceso acelerado) o IDUC. Las filas de cualquier tabla en elobjectserver pueden reenviarse como sucesos acelerados. Esta tabla permite asociarun canal a varias tablas a partir de las cuales se pueden acelerar sucesos.

En la tabla siguiente se describen las columnas de la tablaiduc_system.channel_summary.

Tabla 140. Columnas de la tabla iduc_system.channel_summary

Nombre de columna Tipo de datos Descripción

DatabaseName varchar(64) Base de datos a la que pertence la tabla.

TableName varchar(64) El nombre de la tabla.

SummaryID int Una clave de entero que se añade para una referencia máseficiente en una tabla de columnas de resumen.

ChannelID int El ID de canal.

Tabla iduc_system.channel_summary_colsLa tabla iduc_system.channel_summary_cols almacena los detalles en las columnasexactas que conforman el resumen real de una tabla determinada.

En la tabla siguiente se describen las columnas de la tablaiduc_system.channel_summary_cols.

Tabla 141. Columnas de la tabla iduc_system.channel_summary_cols

Nombre de columna Tipo de datos Descripción

ColumnName varchar(64) El nombre de una columna que forma parte de una definición deresumen determinado.

Posición int La posición de la columna en el orden de resumen.

SummaryID int El ID de resumen.

Apéndice A. Tablas de ObjectServer 389

Page 404: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla iduc_system.iduc_statsLa tabla iduc_system.iduc_stats almacena los detalles sobre la última vez en que sehan pasado los cambios de IDUC a un cliente de IDUC:

En la tabla siguiente se describen las columnas de la tabla iduc_system.iduc_stats.

Tabla 142. Columnas de la tabla iduc_system.iduc_stats

Nombre de la columna Tipo de datos Descripción

ServerName varchar(40) Nombre del ObjectServer con el que conecta el cliente de IDUC.Clave primaria.

AppName varchar(40) Nombre de la aplicación del cliente de IDUC.

AppDesc varchar(128) Descripción de la aplicación del cliente de IDUC. Clave primaria.

ConnectionId int Identifica exclusivamente la conexión. Clave primaria.

LastIducTime UTC Hora a la que se han pasado por última los cambios de IDUC alcliente de IDUC.

Esta columna se actualiza siempre que la pasarela capta datos delObjectServer.

Tablas de sucesos afectados por servicioLas tablas de sucesos afectados por servicio proporcionan soporte para sucesosafectados por servicio que se generan enNetwork Manager IP Edition. Un sucesoafectado por servicio es una alerta que avisa a los operadores que un suceso decliente grave se ha visto afectado por uno o más sucesos de red.

Tabla precision.service_affecting_eventLa tabla precision.service_affecting_event almacena el identificador de un sucesoafectado por servicio que se genera en Network Manager IP Edition.

La siguiente tabla describe la columna en la tabla precision.service_affecting_event.

Tabla 143. Columna de la tabla precision.service_affecting_event

Nombre de columna Tipo de datos Descripción

ServiceEntityId integer Columna de clave primaria de la tabla. El ID de un sucesoafectado por servicio.

Tabla precision.service_detailsLa tabla precision.service_details almacena los detalles de un suceso afectado porservicio que se genera en Network Manager IP Edition.

En la tabla siguiente se describen las columnas de la tabla precision.service_details.

Tabla 144. Columnas de la tabla precision.service_details

Nombre de columna Tipo de datos Descripción

ServiceEntityId integer Columna de clave primaria de la tabla. El ID de un sucesoafectado por servicio.

Type varchar(255) Tipo de servicio.

Name varchar(255) Nombre del servicio.

Cliente varchar(255) El cliente asociado.

390 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 405: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla precision.entity_serviceLa tabla precision.entity_service correlaciona los identificadores de sucesosafectados por servicio con ID numéricos que identifican de forma exclusiva lasentidades de topología de Network Manager IP Edition con los sucesos con los quese asocian.

En la tabla siguiente se describen las columnas de la tabla precision.entity_service.

Tabla 145. Columnas de la tabla precision.entity_service

Nombre de columna Tipo de datos Descripción

NmosEntityId integer Columna de clave primaria de la tabla. ID numérico que identificala entidad de topología de Network Manager IP Edition con elsuceso afectado por servicio asociado.

ServiceEntityId integer Columna de clave primaria de la tabla. El ID de un sucesoafectado por servicio.

Apéndice A. Tablas de ObjectServer 391

Page 406: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

392 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 407: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Apéndice B. Mandatos SQL, expresiones variables y botonesde ayudante en herramientas, automatizaciones y listas desucesos transitorios

Puede utilizar una serie de mandatos SQL, expresiones variables y botones deayudante para recuperar información de una ejecución de lista de sucesos, elsuceso actual o el entorno del sistema operativo. Puede utilizar estas expresionescuando cree una herramienta, desencadenante o procedimiento SQL o bien en losparámetros pasados a un lista de sucesos transitorios.

La tabla siguiente lista los mandatos SQL, expresiones variables y los botones deayudante.

Tabla 146. Mandatos SQL, expresiones de variable y botones de ayudante en herramientas, desencadenante,procedimientos y lista de sucesos transitorios

Mandato/expresión devariable Botón Uso

select_command

insert_command

update_command

delete_command

use_command

service_command

Pulse este botón para seleccionar un mandato SQL en el menú desplegable.Según el mandato que seleccione, rellene la ventana resultante como seindica a continuación:

v Seleccionar: seleccione la base de datos y la tabla en la que deseeejecutar el mandato SELECT. A continuación, elija las columnas de tablaque se deban seleccionar.

v Insertar: seleccione la base de datos y la tabla en la que desee ejecutar elmandato INSERT. A continuación, seleccione las columnas de tabla en lasque se deben insertar valores. Para cada columna seleccionada,especifique el valor que se debe insertar. Para las sentencias INSERT,debe incluir la clave primaria. Las claves primarias se indican con unasterisco (*).

v Actualizar: seleccione la base de datos y la tabla en la que desee ejecutarel mandato. A continuación, seleccione las columnas de tabla que sedeban actualizar. Para cada columna seleccionada, especifique el nuevovalor. Para las sentencias UPDATE, debe excluir la clave primaria. Lasclaves primarias se indican con un asterisco (*).Nota: Para inserciones y actualizaciones en la tabla alerts.status, lasconversiones existentes aparecen en las listas desplegables:

v Suprimir: seleccione la tabla que se deba suprimir.

v Utilizar: seleccione la base de datos que se deba utilizar.

v Servicio: seleccione un nombre de servicio y un valor. Los valorespueden ser Bueno, Marginal o Malo.

column_name

@column_name

Pulse este botón para seleccionar un nombre de columna de tabla paraañadirlo al mandato. El nombre de la columna se sustituye por el valor dela fila de lista de sucesos correspondiente cuando se ejecuta la herramienta.

Cuando va precedido por el símbolo @, el nombre de columna se sustituyepor el valor de fila de lista de sucesos correspondiente durante la ejecución.Se puede utilizar en una consulta SQL o en un filtro de restricción, como:RemoteNodeAlias = ’@LocalNodeAlias’

conversion_name Pulse este botón para elegir entre una lista de conversiones disponibles.

© Copyright IBM Corp. 1994, 2011 393

Page 408: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 146. Mandatos SQL, expresiones de variable y botones de ayudante en herramientas, desencadenante,procedimientos y lista de sucesos transitorios (continuación)

Mandato/expresión devariable Botón Uso

N/D Pulse este botón para activar una lista de palabras clave que complete elcódigo SQL especificado.

N/D Pulse este botón para comprobar la validez de la sintaxis de SQLespecificada.

%internal_value Pulse este botón para elegir entre una lista de valores internos que lainstancia actual de la lista de sucesos reconozca. Por ejemplo, para ejecutarla lista de sucesos transitoria y especificar el ObjectServer con el queconectar con la opción de línea de mandatos -server, especifique:-server "%server"

Los valores internos siguientes están disponibles para las herramientas ycomo parámetro para la lista de sucesos transitoria:

%display: la visualización actual que ejecuta la aplicación (sólo UNIX).

%password: la contraseña del usuario que ejecuta la aplicación.

%encrypted_password: la contraseña cifrada del usuario que ejecuta laaplicación (sólo UNIX). En modalidad FIPS 140–2, la contraseña se pasacomo texto sin formato cuando se utiliza en las herramientas, pero seoculta cuando se especifica como parámetro en la línea de mandatos.

%server: nombre del ObjectServer con el que está conectada laherramienta actualmente.

%desktopserver: nombre del ObjectServer de escritorio con el que estáconectada la herramienta actualmente.

%uid: identificador del usuario del ObjectServer que ejecuta laaplicación.

%username: nombre del usuario del ObjectServer que ejecuta laaplicación.

El valor interno siguiente está disponible para procedimientos ydesencadenantes.

%user: se utiliza para especificar variables de usuario y para acceder ainformación sobre los usuarios conectados.

El valor interno siguiente sólo está disponible para los desencadenantes:

%trigger: se utiliza para especificar variables de desencadenante yacceder a información sobre las ejecuciones actuales y anteriores de losdesencadenantes.

El valor interno siguiente también está disponible sólo para losdesencadenantes de señal.

%signal: se utiliza para especificar variables de señal y para acceder ainformación sobre las señales emitidas.

$prompt.prompt_name

Pulse este botón para seleccionar el nombre de la solicitud que se debeutilizar al consultar el usuario. Por ejemplo, para ejecutar la lista de sucesostransitoria y solicitar al usuario que especifique su contraseña mediante lasolicitud de contraseña, especifique: -password $prompt.Password

Puede utilizar solicitudes en las herramientas y como parámetro para lalista de sucesos transitoria.

394 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 409: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Tabla 146. Mandatos SQL, expresiones de variable y botones de ayudante en herramientas, desencadenante,procedimientos y lista de sucesos transitorios (continuación)

Mandato/expresión devariable Botón Uso

$selected_rows.column_name

N/D Lista de valores de column_name para todas las alertas seleccionadas. Porejemplo:

update alerts.status set TaskList = 0 where Serial in($selected_rows.serial)

No utilice esta sintaxis si selecciona el recuadro de selección Ejecutar paracada fila seleccionada . En su lugar, seleccione el recuadro de selección siel cambio es distinto para cada alerta.

$(environment_variable)

N/D Indica una variable de entorno. Por ejemplo, cuando ejecuta una lista desucesos transitorios, puede especificar el archivo de filtro -elf utilizando laopción de línea de mandatos, como por ejemplo:

-elf "$(NCHOME)/omnibus/ini/tool.elf

Para ejecutar la herramienta en Windows, encierre la variable de entorno,por ejemplo $(NCHOME), entre comillas dobles. Si hay un espacio en elnombre de vía de acceso, no será interpretado correctamente.

Consejo:

v Al escribir mandatos SQL dentro de los paneles de editor de SQL de TivoliNetcool/OMNIbus, puede escribir uno o más caracteres y, a continuación, pulsarCtrl+F1 para obtener un cuadro de diálogo con una lista de palabras clave quees posible que coincidan con la entrada. Seleccione la palabra clave necesaria ypulse Aceptar para completar la entrada. Si sólo una palabra clave coincide conlos caracteres escritos, la palabra clave se completa automáticamente. Si pulsaCtrl+F1 después de escribir una palabra clave relacionada con la base de datos,el recuadro de diálogo proporcione una lista de bases de datos de ObjectServerposibles entre las que elegir. Si pulsa Ctrl+F1 tras escribir un nombre de base dedatos seguido de un punto (por ejemplo: alerts.), puede volver a pulsarCtrl+F1 para ver y seleccionar una tabla en la lista de tablas de la base de datos.

v Puede pulsar el botón En portapapeles para copiar el mandato en formato detexto en el portapapeles.

Tareas relacionadas:“Creación y edición de herramientas” en la página 97“Creación y edición de desencadenantes de base de datos” en la página 106“Creación y edición de desencadenantes de señal” en la página 109“Creación y edición de desencadenantes temporales” en la página 111“Creación y edición de procedimientos SQL” en la página 117Referencia relacionada:“Variables de usuario implícitas en procedimientos y desencadenantes” en lapágina 215“Utilización de variables de desencadenante en las condiciones y acciones dedesencadenante” en la página 230“Señales del sistema y sus atributos” en la página 232

Apéndice B. Mandatos SQL, expresiones variables y botones de ayudante 395

Page 410: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

396 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 411: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Avisos

Esta información se ha desarrollado para productos y servicios que se ofrecen enlos Estados Unidos.

Es posible que IBM no ofrezca en otros países los productos, servicios ocaracterísticas que se describen en este documento. Póngase en contacto con elrepresentante de IBM de su localidad para obtener información acerca de losproductos y servicios que están disponibles en su zona. Cualquier referencia a unproducto, programa o servicio de IBM no indica ni implica que únicamente sepuede utilizar dicho producto, programa o servicio de IBM. En su lugar, se puedeutilizar cualquier producto, programa o servicio funcionalmente equivalente queno infrinja ninguno de los derechos de la propiedad intelectual de IBM. Noobstante, corresponde al usuario evaluar y verificar el funcionamiento de cualquierproducto, programa o servicio que no sea de IBM.

IBM puede tener patentes o aplicaciones pendientes de patentes que cubran eltema descrito en este documento. La entrega de este documento no le otorganinguna licencia sobre dichas patentes. Puede enviar consultas sobre licencias, porescrito, a:

IBM Director of LicensingIBM CorporationNorth Castle DriveArmonk, NY 10504-1785 EE.UU.

Para realizar consultas sobre licencias relacionadas con la información de doblebyte (DBCS), póngase en contacto con el departamento de propiedad intelectual deIBM de su país o envíe sus consultas, por escrito, a la dirección siguiente:

IBM World Trade Asia CorporationLicensing2-31 Roppongi 3-chome, Minato-kuTokio 106-0032, Japón

El párrafo siguiente no se aplica al Reino Unido ni a ningún otro país donde estasdisposiciones sean incompatibles con la legislación vigente: INTERNATIONALBUSINESS MACHINES CORPORATION PROPORCIONA ESTA PUBLICACIÓN"TAL CUAL" SIN GARANTÍAS DE NINGÚN TIPO, NI EXPLÍCITAS NIIMPLÍCITAS, INCLUIDAS, AUNQUE SIN LIMITARSE A, LAS GARANTÍAS DENO CONTRAVENCIÓN, COMERCIALIZACIÓN O ADECUACIÓN A UNPROPÓSITO DETERMINADO. Algunos países no permiten la renuncia a garantíasexplícitas o implícitas en determinadas transacciones, por lo que puede que estadeclaración no sea aplicable en su caso.

Esta información puede contener imprecisiones técnicas o errores tipográficos.Periódicamente se efectúan cambios en la información aquí contenida; estoscambios se incluirán en nuevas ediciones de la publicación. IBM puede realizar encualquier momento mejoras o cambios en los productos o programas descritos enesta publicación sin previo aviso.

Cualquier referencia de esta información a sitios web que no sean de IBM seproporciona únicamente para su comodidad y no constituye un aval de dichos

© Copyright IBM Corp. 1994, 2011 397

Page 412: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

sitios web. Los materiales de dichos sitios Web no forman parte de los materialespara este producto de IBM y el uso de dichos sitios web corre a cuenta y riesgo delCliente.

IBM podría utilizar o distribuir la información que se le envía de la forma queconsidere más adecuada sin incurrir por ello en ninguna obligación con elremitente de la información.

Los titulares de licencias de este programa que deseen obtener información sobre elmismo con el fin de permitir: (i) el intercambio de información entre programascreados independientemente y otros programas (incluido éste) y (ii) el uso mutuode la información intercambiada, deberían ponerse en contacto con:

IBM Corporation958/NH04IBM Centre, St Leonards601 Pacific HwySt Leonards, NSW, 2069Australia

IBM Corporation896471/H128B76 Upper GroundLondres SE1 9PZReino Unido

IBM CorporationJBF1/SOM1294 Route 100Somers, NY, 10589-0100Estados Unidos de América

Dicha información puede estar disponible, sujeta a los términos y condicionescorrespondientes, incluidos, en algunos casos, el pago de unos derechos.

El programa bajo licencia que se describe en este documento y todo el materialbajo licencia disponible para él lo proporciona IBM , de acuerdo con los términosdel contrato con el cliente de IBM, del contrato internacional de programas bajolicencia de IBM o de cualquier acuerdo equivalente entre ambos.

Todos los datos de rendimiento contenidos en el presente documento se handeterminado en un entorno controlado. Por consiguiente, los resultados obtenidosen otros entornos operativos pueden variar significativamente. Es posible quealgunas medidas se hayan tomado en sistemas que se están desarrollando y no sepuede garantizar que dichas medidas serán iguales en los sistemas disponibles engeneral. Es más, es posible que algunas medidas se hayan estimado efectuandoextrapolaciones. Los resultados reales pueden variar. Los usuarios de estedocumento deberán verificar los datos aplicables a su entorno específico.

La información relativa a productos que no son de IBM la han proporcionado losproveedores de dichos productos, sus anuncios publicados u otras fuentesdisponibles públicamente. IBM no ha probado esos productos y no puedeconfirmar la precisión de su rendimiento, su compatibilidad ni ningún otro aspectorelacionado con los productos que no son de IBM. Las preguntas relativas a lasposibilidades de los productos que no son de IBM deberán dirigirse a losproveedores de dichos productos.

398 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 413: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Todas las declaraciones relativas a la dirección o intenciones futuras de IBM estánsujetas a cambios o pueden retirarse sin aviso previo y representan únicamentemetas y objetivos.

Esta información contiene ejemplos de datos e informes utilizados en operacionesempresariales diarias. Para ilustrarlos de la forma más completa posible, losejemplos incluyen nombres de personas, empresas, marcas y productos. Todos losnombres son ficticios y cualquier parecido con nombres y direcciones utilizadospor una empresa real son simple coincidencia.

LICENCIA DE COPYRIGHT:

Esta información contiene programas de aplicación de ejemplo en lenguaje fuenteque ilustran técnicas de programación en diversas plataformas operativas. Puedecopiar, modificar y distribuir dichos programas de ejemplo bajo cualquier forma ysin tener que abonar una cuota a IBM, a fin de desarrollar, utilizar, comercializar odistribuir programas de aplicación adaptados a la interfaz de programación deaplicaciones de la plataforma operativa para la que se han escrito los programas.Estos ejemplos no se han probado exhaustivamente bajo todas las condiciones. Porconsiguiente, IBM, no puede garantizar ni presuponer la fiabilidad, capacidad deservicio o funcionamiento de dichos programas.

Si está consultando esta información en copia software, las fotografías eilustraciones en color podrían no aparecer.

Marcas registradasAIX, IBM, el logotipo de IBM, ibm.com, Netcool y Tivoli son marcas registradas deInternational Business Machines Corporation en Estados Unidos o en otros países.

Adobe, Acrobat, Portable Document Format (PDF), PostScript, y todas las marcasregistradas basadas en Adobe son marcas registradas o marcas comerciales deAdobe Systems Incorporated en Estados Unidos o en otros países.

Java y todas las marcas comerciales y logotipos basados en Java sonmarcas comerciales o marcas registradas de Sun Microsystems, Inc.en los Estados Unidos y/o en otros países.

Linux es una marca registrada de Linus Torvalds en Estados Unidos o en otrospaíses.

Microsoft, Windows, Windows NT y el logotipo de Windows son marcasregistradas de Microsoft Corporation en Estados Unidos o en otros países.

UNIX es una marca registrada de The Open Group en los Estados Unidos y/o enotros países.

Otros nombres de empresas, productos o servicios pueden ser marcas registradas ode servicio de terceros.

Avisos 399

Page 414: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

400 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 415: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Índice

Aaccesibilidad xacciones externas

en ejecución 317activadores de base de datos

creación 106, 222editar 106

ADD COLUMN 158administrador de Netcool/OMNIbus

iniciar 64navegador web para la ayuda en

línea 75nco_config 64

Administrador de Netcool/OMNIbusalinear columnas 73colores de sintaxis SQL 74configurar colores de sintaxis 74copia de objetos 74definir preferencias 72filtrado de filas 73ocultar columnas 73opciones de la línea de mandatos 64ordenar tablas de resultados 72pegar objetos 74propiedades 64salida 75selección de objetos de

objectserver 71seleccionar columnas 73seleccionar filas para visualizar 73soporte multicultural 63

agente de procesoscierre 299conexión 68en ejecución 279

agentes de procesodetener 318iniciar manualmente 272inicio automático 283

agentes de procesosiniciar automáticamente 281

agregado SELECT 189agrupar por SELECT 190ajuste de rendimiento 321

directrices de consulta SQL 337directrices de indexación 340ejemplos de consulta SQL 342ejemplos de desencadenante 343mejores prácticas 327

agente de supervisión 335archivos de configuración de

analizador 333arquitectura del sistema 332consultas SQL 335desbordamiento de sucesos 334desencadenantes de

estadísticas 333indicadores de rendimiento clave

de analizador 325Indicadores de rendimiento clave

de ObjectServer 322

ajuste de rendimiento (continuación)mejores prácticas (continuación)

indicadores de rendimiento clavede pasarela 327

perfilado de objectserver 328recopilar estadísticas de

desencadenante 330seguimiento de rendimiento 337tabla alerts.details 334

alertasenviar a ObjectServer 29

alerts.status, tabla 349almacenes de memoria

almacenamiento de datosobjectserver 25

table_store 28ALTER COLUMN 161ALTER FILE 168ALTER GROUP 199ALTER ROLE 200ALTER SYSTEM 193ALTER TABLE 158ALTER TRIGGER 245ALTER TRIGGER GROUP 220ALTER USER 197alterar

desencadenantes 245tablas 158usuarios 197

analizadoresconectar al servidor proxy 44

añadircolumnas 135, 158columnas de tabla 135, 158herramientas a los menús 93separadores a los menús 93submenús en los menús 93

archdirectorio de sistema operativo x

archivosconfigurar 139creación 167descartar 169modificar 168

archivos de objectservercreación 139editar 139supresión 141

archivos de punto de comprobación 26asignar permisos

roles 201asignar roles

grupos 204automatizaciones

configurar 104estándar 245sucesos afectados por servicio 251

automatizaciones de sucesos afectadospor servicio 251

autorizacióndescripción 75

Bbases de datos

configurar 132creación 133, 152descartar 153inicializadas por sistema 153supresión 137, 153

bases de datos inicializadas porsistema 153

botones de ayuda de SQL 393botones de ayudante 393

Ccanales

configurar 142copiar 261creación 258editar 258pegar 261supresión 261

CASE WHEN 213centro de información de software de

Tivoli viiiCHECK STATEMENT 195cifrado de contraseñas 20, 44, 151cifrar

contraseñas 151contraseñas de ObjectServer 20

clasescreación 131editar 131supresión 132

colores de gravedadcreación 129editar 129

colores de sintaxis SQLconfigurar 74

columnasañadir 135, 158descartar 159editar 135, 161modificar 161propiedades opcionales 157supresión 137, 159tipos de datos 155

columnas de tablaañadir 135, 158descartar 159editar 135, 161modificar 161supresión 137, 159

componentescontrol del proceso 266

conclusiónservidor de puente de cortafuegos 62

CONCLUSIÓN 62conclusión del servidor de puente de

cortafuegosconcluido 62

© Copyright IBM Corp. 1994, 2011 401

Page 416: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

condiciones 183conexión

agente de procesos 68, 304ObjectServer 67

conexiones SSLvalidar certificados de servidor 70

Conexiones SSL 70configuración de migración tras error de

servidor de puente de cortafuegosmigración tras error 52

configurararchivos 139bases de datos 132canales 142desencadenantes 105filtros de restricción 89grupos 81herramientas 96notificación de sucesos

acelerados 255, 256, 257, 264procedimientos 116propiedades 138roles 76señales 125solicitudes 100usuarios 85

control de procesosdefinir hosts de

direccionamiento 291detener procesos 298, 315detener servicios 298envío de señales 315nco_pa_stop 298opciones de línea de mandatos 273programas de utilidad 295visión general 265

control del procesoactualizar el archivo de

configuración 271agentes de proceso 265añadir procesos 300añadir servicios 300archivo de configuración 271cierra de agente de procesos 299componentes 266conectar a agente de proceso 304configurar comunicación de

servidor 270control del proceso

direccionamiento de host 305copiar procesos 316copiar servicios 316crear grupos de usuarios UNIX 269crear procesos 311crear red 268crear servicios 308cuentas de usuario de Windows 270definición de dependencias 288definición de hosts seguros 290definir procesos 285definir servicios 288detener agente de procesos 318detener servicios 310editar procesos 311editar servicios 308ejecutar procedimientos externos 318

control del proceso (continuación)información de estado para un agente

de proceso 305iniciar procesos 297, 314iniciar servicios 297, 310inicio 268nco_pa_addentry 300nco_pa_shutdown 299nco_pa_start 297nco_pa_status 295nco_pad 272nivel de registro 305pegar procesos 316pegar servicios 316programas de utilidad 268suprimir procesos 314suprimir servicios 309visualizar estado de servicio 295visualizar estado del proceso 295visualizar procesos 306visualizar servicios 306

convenio de tipo de letra xconvenios de denominación

objetos ObjectServer 149conversiones

creación 128editar 128supresión 129

copiarcanales 261procesos 316services 316

creaciónactivadores de base de datos 106,

222archivos 167archivos de objectserver 139bases de datos 133, 152canales 258clases 131colores de gravedad 129conversiones 128desencadenantes de señal 109, 226desencadenantes temporales 111, 225elementos visuales de columna 130filtros de restricción 90, 166grupos 82, 198grupos de desencadenante 105, 219herramientas 97índices 162procedimientos de SQL 117, 208procedimientos externos 120, 217procesos 311roles 200señales definidas por el usuario 125,

228services 308solicitudes 100tablas 134, 155vistas 164

crearroles 79usuarios 85, 196

CREATE DATABASE 152CREATE FILE 167CREATE GROUP 198CREATE INDEX 162

CREATE PROCEDURE 208, 217CREATE RESTRICTION FILTER 166CREATE ROLE 200CREATE SIGNAL 228CREATE TABLE 155CREATE TRIGGER 222, 225, 226CREATE TRIGGER GROUP 219CREATE USER 196CREATE VIEW 164

Ddefinir

hosts de direccionamiento 291hosts seguros 290

DELETE 187dependencias de proceso 288descartar

archivos 169bases de datos 153columnas 159columnas de tabla 159filtros de restricción 167índices 163procedimientos 219señales definidas por el usuario 229tablas 161usuarios 198vistas 165

DESCRIBE 192desencadenantes

alterar 245configurar 105configurar editores externos 114creación 106, 109, 111crear en los editores externos 115edición en editores externos 115editar 106, 109, 111ejecutar mandatos 229mejores prácticas 343notificación de sucesos

acelerados 243supresión 116, 245variables 230variables de usuario implícitas 215variables implícitas 224

desencadenantes de señalcreación 109, 226editar 109

desencadenantes temporalescreación 111, 225editar 111

detalles de índicevisualizar 163

deteneragente de procesos 318procesos 315services 310

directorio de sistema operativoarch x

directrices de consulta SQL 337optimización AND 337optimización OR 337reglas de optimización 337reordenación de predicados 337

directrices de indexación 340DROP COLUMN 159

402 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 417: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

DROP DATABASE 153DROP FILE 169DROP GROUP 199DROP INDEX 163DROP PROCEDURE 219DROP RESTRICTION FILTER 167DROP ROLE 207DROP SIGNAL 229DROP TABLE 161DROP TRIGGER 245DROP TRIGGER GROUP 221DROP USER 198DROP VIEW 165

Eeditar

activadores de base de datos 106archivos de objectserver 139canales 258clases 131colores de gravedad 129columnas 135, 161columnas de tabla 135, 161conversiones 128desencadenantes de señal 109desencadenantes temporales 111elementos visuales de columna 130filtros de restricción 90grupos 82grupos de desencadenante 105, 220herramientas 97menús 94, 95procedimientos de SQL 117procedimientos externos 120procesos 311roles 79señales definidas por el usuario 125services 308solicitudes 100tablas 158usuarios 85

editores externos paradesencadenantes 114

editores externos paraprocedimientos 123

ejemplosnco_postmsg 36

elementos visuales de columnacreación 130editar 130supresión 131

en ejecuciónacciones externas 317procedimientos 218

enviar alertasnco_postmsg 29

enviar sucesosnco_postmsg 29

envío de señalesprocesos 315

EXECUTE PROCEDURE 218expresiones 183

Ffiltros de restricción

configurar 89creación 90, 166descartar 167editar 90supresión 91

flujos de datos de servidor de puente decortafuegos

listar 61FOR 214FOR EACH ROW 213formación

consulte la formación técnica deTivoli x

formación técnica de Tivoli xfunciones 177

Ggeneración

señales definidas por el usuario 229GET CONFIG; 60GET PROP; 61GRANT 201GRANT ROLE 204grupos

asignar roles 204configurar 81creación 82, 198editar 82modificar 199predeterminado 81supresión 84, 199

grupos de desencadenantecreación 105, 219editar 105, 220supresión 116, 221

Hherramientas

añadir a menús 93configurar 96creación 97editar 97supresión 100suprimir de menú 96

hosts de direccionamientocontrol de procesos 291

hosts seguroscontrol del proceso 290

IIDUC 22

especificación del puerto 23intervalo de actualización 22

IDUC EVTFT 243IDUC FLUSH 193IDUC SNDMSG 244IF THEN ELSE 212indicadores de rendimiento clave

analizadores 325ObjectServer 322

indicadores de rendimiento clave(continuación)

pasarelas 327índices

creación 162descartar 163

información de soporte xiniciar

administrador deNetcool/OMNIbus 64

agentes de procesos 281interfaz interactiva SQL 146services 310servidor de puente de cortafuegos 53servidor proxy 39, 40

inicioagentes de proceso 272, 283procesos 314servidor de puente de cortafuegos 53

INSERT 185Interfaz interactiva de SQL

ejecutar mandatos 148modalidad de GUI 142notación de sintaxis 148opciones de la línea de

mandatos 146redireccionar archivos de texto 150salida 151

interfaz interactiva SQLespecificar vías de acceso 150iniciar 146línea de mandatos 145modalidad segura 151

isql 145, 146opciones de la línea de

mandatos 146

Llistar

flujos de datos de servidor de puentede cortafuegos 61

propiedades de servidor de puente decortafuegos 60

MMandatos SQL 393manuales viiimejores prácticas

desencadenantes 343menús

editar 94, 95estructura de la vista previa 96personalizar 92

modalidad segurainterfaz interactiva SQL 151ObjectServer 20servidor proxy 44

modificararchivos 168columnas 161columnas de tabla 161grupos 199roles 200

Índice 403

Page 418: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

Nnavegador web

administrador deNetcool/OMNIbus 75

nco_aes_crypt 20, 44nco_bridgeserv 53nco_check_store 26nco_config 64

opciones de la línea de mandatos 64propiedades 64

nco_g_crypt 20, 44nco_objserv 2nco_pa_addentry 300nco_pa_shutdown 299nco_pa_start 297nco_pa_status 295nco_pa_stop 298nco_pad 272

opciones de línea de mandatos 273nco_postmsg 29

ejemplos 36opciones de línea de mandatos 33propiedades 33

nco_proxyserv 40nco_sql 145, 146

opciones de la línea demandatos 146

nco_store_resize 25opciones de la línea de mandatos 28

Nivel de registroespecificación 62

notación, variables de entorno xNotación de sintaxis SQL 148notificación de sucesos acelerados

cierre de clientes 263configuración de

desencadenantes 264configuración de pasarela 256configuración de reglas de

analizador 256configurar 255configurar alerts.status 257configurar canales 257desconectar clientes 262envío de mensajes a destinatarios de

canal 262

OObjectServer

almacenes de memoria 25ALTER SYSTEM 2archivo de propiedades 2cambio de propiedades 138conexión 67configurar automatizaciones 104convenios de denominación para

objetos 149especificar opciones de línea de

mandatos 2especificar propiedades 2IDUC 22intervalo de actualización IDUC 22mantenimiento de archivos de tabla

de base de datos en disco 25modalidad segura 20

ObjectServer (continuación)nco_aes_crypt 20nco_g_crypt 20opciones de línea de mandatos 3palabras reservadas 169prioridad de operador 176procesamiento de alertas 1propiedad Granularidad 22propiedades 3recuperación de datos 26secuencia de creación de archivo 139sincronización por puntos de

comprobación 25soporte multicultural 23SQL 145supervisar conexiones 141tablas del sistema 162ver propiedades 138

opciones de línea de mandatosObjectServer 3

operadores 171comparación binaria 172comparación de lista 174lógico 174math 171serie 171

operadores de comparación binarios 172operadores de comparación de lista 174operadores de series de caracteres 171operadores lógicos 174operadores matemáticos 171

Ppalabras reservadas 169pegar

canales 261procesos 316services 316

permisosdescripción 75

permisos de objeto 201permisos del sistema 201permisos sobre objeto

herencia 203personalizar

menús 92preferencias

Administrador deNetcool/OMNIbus 72

prioridad de operador 176procedimientos

configurar 116configurar editores externos 123creación 117, 120crear en los editores externos 123descartar 219edición en editores externos 123editar 117, 120en ejecución 218SQL 208supresión 125variables de usuario implícitas 215

procedimientos de SQL 208CASE WHEN 213componentes 208creación 117, 208

procedimientos de SQL (continuación)editar 117FOR 214FOR EACH ROW 213IF THEN ELSE 212sentencia de cuerpo 211SET 212

procedimientos externoscreación 120, 217editar 120

procesamiento de alertas 1procesos

copiar 316creación 311detener 315editar 311envío de señales 315inicio 314pegar 316supresión 314

propiedad Granularidad 22propiedades

configurar 138ObjectServer 3

propiedades de servidor de puente decortafuegos

listar 60propiedades opcionales

columnas 157publicaciones viiipublicaciones en línea viiipúblico viipuente de cortafuegos

configuración estándar 48puente de varios cortafuegos

configuración múltiple 50puertos

IDUC 23

RRAISE SIGNAL 229reglas de optimización

optimización AND 337optimización OR 337para consultas SQL 337reordenación de predicados 337

REVOKE 204REVOKE ROLE 207roles

asignar permisos 201configurar 76creación 200crear 79editar 79modificar 200predeterminado 76revocar de grupos 207revocar permisos 204supresión 81, 207

Ssalida

Administrador deNetcool/OMNIbus 75

404 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 419: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

salida (continuación)Interfaz interactiva de SQL 151

SELECT 187SELECT (agregado) 189SELECT (agrupar por) 190SELECT (escalar) 187SELECT escalar 187señales 232

configurar 125señales definidas por el usuario

creación 125, 228descartar 229editar 125generación 229supresión 127

señales del sistema 232separadores

añadir a menús 93suprimir de menú 96

servicescopiar 316creación 308detener 310editar 308iniciar 310pegar 316supresión 309

servidor de puente de cortafuegosiniciar 53iniciar manualmente 53iniciar utilizando control de

proceso 53iniciar utilizando servicios 53nco_bridgeserv 53opciones de la línea de mandatos 54propiedades 54visión general 47

servidor proxycomenzar a utilizar el control de

procesos 40comenzar a utilizar servicios 40conectar analizadores 44iniciar 39iniciar manualmente 40modalidad segura 44nco_aes_crypt 44nco_g_crypt 44nco_proxyserv 40opciones de línea de mandatos 40propiedades 40visión general 39

SET 212SET DATABASE 195SET LOG LEVEL TO 62SHOW DATAFLOWS 61SHOW PROPS; 60sincronización por puntos de

comprobaciónarchivos de punto de

comprobación 26nco_check_store 26ObjectServer 25

solicitud de publicaciones viiisolicitudes

configurar 100creación 100editar 100

solicitudes (continuación)supresión 104

soporte multiculturalAdministrador de

Netcool/OMNIbus 63ObjectServer 23

specifynivel de registro 62

submenúsañadir a menús 93suprimir de menú 96

sucesosenviar a ObjectServer 29

supervisiónconexiones de objectserver 141ObjectServer

conexiones 141supresión

archivos de objectserver 141bases de datos 137, 153canales 261clases 132columnas 137, 159columnas de tabla 137, 159conversiones 129desencadenantes 116, 245elementos visuales de columna 131filtros de restricción 91grupos 84, 199grupos de desencadenante 116, 221herramientas 100herramientas de menú 96procedimientos 125procesos 314roles 81, 207señales definidas por el usuario 127separadores del menú 96services 309solicitudes 104submenús del menú 96tablas 137usuarios 88

SVC 192

Ttabla alerts.application_types 365tabla alerts.col_visuals 382Tabla alerts.colors 383tabla alerts.conversions 382tabla alerts.details 363tabla alerts.iduc_messages 365Tabla alerts.journal 364tabla alerts.resolutions 381tabla catalog.base_tables 369Tabla catalog.channel_stats 381tabla catalog.connections 376tabla catalog.database_triggers 373Tabla catalog.databases 368tabla catalog.external_procedures 375tabla catalog.files 370tabla catalog.indexes 378tabla catalog.memstores 367Tabla

catalog.primitive_signal_parameters 371Tabla catalog.primitive_signals 371Tabla catalog.procedure_parameters 375

tabla catalog.procedures 374Tabla catalog.profiles 378tabla catalog.properties 376tabla catalog.restrictions 370tabla catalog.security_permissions 376tabla catalog.signal_triggers 373tabla catalog.sql_procedures 374tabla catalog.tables 368tabla catalog.temporal_triggers 374Tabla catalog.trigger_groups 372Tabla catalog.trigger_stats 380tabla catalog.triggers 372Tabla catalog.views 369Tabla columnas catálogo. 370tabla iduc_system.channel 388tabla iduc_system.channel_interest 389tabla iduc_system.channel_summary 389tabla

iduc_system.channel_summary_cols 389tabla iduc_system.iduc_stats 390tabla master.class_membership 366tabla master.national 387tabla master.servergroups 388tabla master.stats 379tabla precision.entity_service 391tabla

precision.service_affecting_event 390tabla precision.service_details 390tabla service.status 367tabla tools.action_access 385tabla tools.actions 384tabla tools.menu_defs 386tabla tools.menu_items 385tabla tools.menus 385tabla tools.prompt_defs 386tablas

actualizar columnas 186alterar 158creación 134, 155descartar 161editar 158insertar filas de datos 185recuperación de datos 187supresión 137suprimir filas 187

tablas de alertas 349tablas de catálogo del sistema 367tablas de escritorio 387tablas de estadísticas 378tablas de herramientas de escritorio 384tablas de ObjectServer

alerts.application_types 365alerts.col_visuals 382alerts.colors 383alerts.conversions 382alerts.details 363alerts.iduc_messages 365alerts.journal 364alerts.resolutions 381alerts.status 349catalog.base_tables 369catalog.channel_stats 381catalog.columns 370catalog.connections 376catalog.database_triggers 373catalog.databases 368catalog.external_procedures 375

Índice 405

Page 420: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

tablas de ObjectServer (continuación)catalog.files 370catalog.indexes 378catalog.memstores 367catalog.primitive_signal_param. 371catalog.primitive_signals 371catalog.procedure_parameters 375catalog.procedures 374catalog.profiles 378catalog.properties 376catalog.restrictions 370catalog.security_permissions 376catalog.signal_triggers 373catalog.sql_procedures 374catalog.tables 368catalog.temporal_triggers 374catalog.trigger_groups 372catalog.trigger_stats 380catalog.triggers 372catalog.views 369iduc_system.channel 388iduc_system.channel_interest 389iduc_system.channel_sum*_cols 389iduc_system.channel_summary 389iduc_system.iduc_stats 390master.class_membership 366master.national 387master.servergroups 388master.stats 379precision.entity_service 391precision.service_affecting_event 390precision.service_details 390service.status 367tablas de catálogo del sistema 367tablas de escritorio 387tablas de estadísticas 378tablas de herramientas de

escritorio 384tablas de seguridad 388tablas de servicio 366tablas de sucesos afectados por

servicio 390Tablas IDUC 388tools.action_access 385tools.actions 384tools.menu_defs 386tools.menu_items 385tools.menus 385tools.prompt_defs 386

Tablas de ObjectServertablas de alertas 349tablas de soporte de herramientas de

cliente 381visión general 349

tablas de seguridad 388tablas de servicio 366tablas de soporte de herramientas de

cliente 381tablas de sucesos afectados por

servicio 390tablas del sistema 162Tablas IDUC 388table_store memstore 28tipo de letra, convenios xtipos de datos

columnas 155Tivoli, formación técnica x

UUPDATE 186USE DATABASE 195usuarios

alterar 197configurar 85crear 85, 196descartar 198editar 85predeterminado 85supresión 88visualización de conexiones 88

Vvalor de propiedad de servidor de puente

de cortafuegosvisualización 61

variables 215, 224variables, notación para xvariables de usuario implícitas 215variables implícitas 224vistas

creación 164descartar 165description 164

visualizaciónvalor de propiedad de servidor de

puente de cortafuegos 61visualizar

detalles de índice 163

WWRITE INTO 191

406 IBM Tivoli Netcool/OMNIbus: Guía de administración

Page 421: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .
Page 422: Netcool/OMNIbus Versión 7 Release 3€¦ · Utilización de la interfaz interactiva SQL en la modalidad de interfaz gráfica de usuario ....142 Capítulo 5. SQL de ObjectServer .

����

Impreso en la República de Irlanda

SC11-8139-00