En el editor de flujos de mensajes, utilice el separador
Supervisión en las propiedades de un nodo de flujo de mensajes para añadir uno o más sucesos de supervisión.
Acerca de esta tarea
Un origen de sucesos es un punto de un flujo de mensajes desde el que se puede emitir un suceso de supervisión. Cada origen de suceso tiene un conjunto de propiedades que controlan el contenido de los sucesos de supervisión que emite. Para crear un suceso, realice los pasos siguientes.
Procedimiento
- En el editor de flujos de mensajes, seleccione el nodo pertinente para visualizar las propiedades de
dicho nodo.
- Seleccione la pestaña Seguimiento .
- Haga clic en Añadir.
Se visualiza la ventana Añadir suceso.
- En el campo Origen de sucesos , seleccione el origen del suceso.
Una vez que ha seleccionado el origen de sucesos, se visualiza el valor correspondiente de
Dirección del origen de sucesos como propiedad de sólo lectura. La información de origen de sucesos se utiliza para llenar los atributos de la
wmb:eventPointData/wmb:messageFlowData/wmb:node
del suceso.
Consejo: Si decide habilitar o inhabilitar sucesos utilizando el mandato mqsichangeflowmonitoring , debe especificar un valor para Dirección de origen de suceso, no Nombre del suceso.
- En el campo Nombre del suceso , seleccione Literal o Ubicación de datos.
Cada suceso de supervisión tiene un nombre que se coloca en elwmb:eventPointData/wmb:eventIdentity/@wmb:eventName
del evento. Los nombres predeterminados se muestran en la tabla siguiente:
Origen del suceso |
Nombre de suceso predeterminado |
Ejemplo |
Inicio de la transacción |
nodeLabel.TransactionStart |
MQInput.TransactionStart |
Finalización de la transacción |
nodeLabel.TransactionEnd |
MQInput.TransactionEnd |
Retrotracción de la transacción |
nodeLabel.TransactionRollback |
MQInput.TransactionRollback |
Terminal |
nodeLabel.etiqueta terminal_etiqueta.Terminal |
MQInput.OutTerminal |
Puede sustituir el valor
predeterminado de las siguientes maneras:
- Especificando una serie literal alternativa.
- Especificando una consulta XPath. La consulta extrae el nombre de suceso de un campo en el mensaje de
entrada. Pulse Editar para utilizar el Constructor de expresiones XPath.
- Opcional: En la sección Filtro de sucesos , proporcione una expresión XPath para controlar si el suceso se emite.
Escriba la expresión (por ejemplo,$Body/StockTrade/Details/Value > 10000
) o pulse Editar para iniciar el Creador de expresiones XPath.
La expresión debe evaluar como verdadero (true) o falso (false) y puede hacer referencia a campos del árbol de mensajes o de cualquier otro lugar en el conjunto de mensajes. El valor predeterminado es
true()
, lo que significa que el evento siempre se produce.
- Opcional: Complete el campo Carga útil de sucesos si el suceso debe contener campos de datos seleccionados que se extraen del mensaje.
Pulse Añadir para abrir el recuadro de diálogo Añadir ubicación de datos. A continuación, puede escribir la ubicación (por ejemplo,$LocalEnvironment/File/Name
) o pulse Editar para iniciar el Creador de expresiones XPath.
Puede extraer uno o más campos de los datos del mensaje e incluirlos con el suceso. Los campos pueden ser simples o complejos. El contenido simple está contenido en lawmb:applicationData/wmb:simpleContent
del suceso; los datos complejos están contenidos en elwmb:applicationData/wmb:complexContent
.
Este recurso se utiliza comúnmente para comunicar datos empresariales importantes en un suceso
empresarial. Si el suceso contiene la corriente de bits de entrada, este recurso también se puede utilizar para extraer campos clave. Luego, puede utilizar otra aplicación para proporcionar un seguimiento de auditoría o para volver a enviar mensajes que han fallado.
- Opcional: Seleccione Incluir datos de corriente de bits en carga útil si el suceso debe capturar datos de corriente de bits de mensaje.
Si selecciona esta opción, debe proporcionar la siguiente
información:
- Contenido
- Seleccione entre Headers, Body y All.
- Codificación
- Seleccione entre CData (el texto original, sin codificación), HexBinary
y base64Binary.
Si se selecciona esta opción, es
posible que la corriente de bits que se incluya no sea igual que el
mensaje
que se graba desde un nodo de salida de transporte. La supervisión
serializa el árbol de mensaje entero, mientras que los nodos de
salida de transporte utilizan las partes del árbol de mensajes que
reconocen. La corriente de bits que se incluye en un mensaje de
supervisión
se genera desde todas las cabeceras que aparecen antes del
cuerpo del
primer mensaje en el árbol de mensajes. Las cabeceras que aparecen
después del cuerpo del mensaje no se incluyen.
- Opcional: Seleccione la pestaña Correlación para proporcionar detalles para la correlación de sucesos.
Cada suceso de supervisión debe contener como mínimo un atributo de correlación, y puede contener hasta tres. Si no especifica ninguna información de correlación, el primer origen de sucesos del flujo de mensajes asigna
un identificador exclusivo que utilizan todos los orígenes de sucesos posteriores en la misma transacción.
- En el campo Correlacionador de transacciones local , seleccione una de las opciones siguientes.
- Automático
- Se utiliza el correlacionador local que utiliza el suceso más reciente para esta invocación del flujo de
mensajes. Si no existe ningún correlacionador local, se genera un nuevo valor exclusivo.
- Especificar ubicación de correlacionador
- Escriba un valor o pulse Editar para iniciar XPath Expression Builder. El
correlacionador local se lee de la ubicación especificada en el árbol de mensajes. Asegúrese de
que la ubicación especificada contiene un valor de correlacionador exclusivo para esta invocación del flujo
de mensajes.
- En el campo Correlacionador de transacciones padre , seleccione una de las opciones siguientes para extraer un campo de correlación de la transacción padre.
- Automático
- Se utiliza el correlacionador padre que utiliza el suceso más reciente para esta invocación del flujo de
mensajes. Si no existe ningún correlacionador padre, no se utiliza ningún correlacionador padre.
- Especificar ubicación de correlacionador
- Escriba un valor o pulse Editar para iniciar XPath Expression Builder. El
correlacionador padre se lee de la ubicación especificada en el árbol de mensajes. Asegúrese de que la ubicación especificada contiene un valor adecuado para el correlacionador padre.
- En el campo Correlacionador de transacciones globales , seleccione una de las opciones siguientes para extraer un campo de correlación de una transacción global.
- Automático
- Se utiliza el correlacionador global que utiliza el suceso más reciente para esta invocación del flujo de
mensajes. Si no existe ningún correlacionador global, no se utiliza ningún correlacionador global.
- Especificar ubicación de correlacionador
- Escriba un valor o pulse Editar para iniciar XPath Expression Builder. El
correlacionador global se lee de la ubicación especificada en el árbol de mensajes. Asegúrese de que la ubicación especificada contiene un valor adecuado para el correlacionador global.
- Opcional: En la pestaña Transacción , elija cómo se coordina la emisión de sucesos de supervisión por un flujo de mensajes. Puede optar por coordinar con la transacción de flujo de
mensajes, en una unidad de trabajo independiente, o no en una unidad de trabajo.
Seleccione una de las siguientes opciones.
- Flujo de mensajes
- El suceso, y todos los demás sucesos con este valor, se emiten solamente si el flujo de mensajes confirma su unidad de trabajo de forma satisfactoria.
Si el suceso de inicio de transacción se incluye en la unidad de trabajo del flujo de mensajes, pero falla el
proceso de mensajes y no se publica esta unidad de trabajo, el suceso de inicio de transacción se incluye en
una unidad de trabajo independiente. Este comportamiento garantiza que la aplicación de supervisión recibe un
par de sucesos (inicio y retrotracción) en lugar de recibir un suceso de retrotracción aislado.
- Independiente
- El suceso se emite en una segunda unidad de trabajo, independientemente de la unidad de trabajo principal. El suceso, y todos los demás sucesos con este valor, se emiten independientemente de si la unidad de trabajo
principal se confirma de forma satisfactoria o no.
Se puede iniciar una transacción independiente solamente
si se confirma o retrotrae la transacción principal. Si la propiedad Cuenta de
confirmaciones del flujo es mayor que uno, o si la propiedad Confirmar por grupo de
mensajes se ha establecido, los sucesos de destino para la transacción independiente se emiten
fuera del punto de sincronismo. También se emite un mensaje con esta información.
- Ninguna
- El suceso se emite fuera del punto de sincronismo (no en una unidad de trabajo). El suceso se emite cuando el mensaje pasa a través del origen de sucesos y está disponible para la lectura inmediatamente.
No todas las opciones están disponibles en todos los tipos de suceso. Los valores predeterminados y permitidos aparecerán en la tabla siguiente:
Origen del suceso |
Valores permitidos |
Valor predeterminado |
Inicio de la transacción |
- Flujo de mensajes
- Independiente
- Ninguna
|
Flujo de mensajes |
Finalización de la transacción |
- Flujo de mensajes
- Ninguna
|
Flujo de mensajes |
Retrotracción de la transacción |
|
Independiente |
Terminal |
- Flujo de mensajes
- Independiente
- Ninguna
|
Flujo de mensajes |
- Haga clic en Acabado.
La tabla Sucesos del separador Supervisión de la vista Propiedades para el nodo se
actualiza con los detalles del suceso que ha añadido y el suceso se habilita.
- Guarde el flujo de mensajes.
- Cuando se añadan todos los sucesos al flujo, añada el flujo de mensajes al archivo BAR y despliegue el archivo BAR.
La supervisión está inactiva para el flujo; el despliegue del archivo BAR no activa la supervisión.
- Active la supervisión del flujo utilizando el mandato mqsichangeflowmonitoring -c .
Qué hacer a
continuación
Las propiedades de supervisión para un nodo muestran todos los sucesos de supervisión definidos para ese nodo. Puede editar las propiedades de supervisión de un nodo para realizar las tareas siguientes:
- Habilitar o inhabilitar un suceso de supervisión.
- Añadir, suprimir o cambiar los sucesos de supervisión para un nodo.