introducción a mirth - asociación de informáticos de ... [email protected] (+34) 983 10 84...

26
MetaEmotion MetaEmotion hp://www.metaemoon.com [email protected] (+34) 983 10 84 94 Introducción a Mirth Carlos Barrales Ruiz [email protected] Versión 0.6 Salamanca, 25 de Febrero de 2011

Upload: dangquynh

Post on 30-Mar-2018

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Introducción a Mirth

Carlos Barrales [email protected]

Versión 0.6

Salamanca, 25 de Febrero de 2011

Page 2: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Introducción (I).

El problema de la heterogeneidad de aplicaciones.

● Incompatibilidades:

– Datos.– Protocolos.– Tecnologías.

● Problemas:– Control.– Seguridad.– Tolerancia frente a

fallos.

Page 3: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Introducción (II).

● Mediar en el intercambio de información (mensajería) entre aplicaciones:

– Filtrar, generar, copiar, redirigir y/o modificar mensajes.

– Punto estratégico de control.● Minimizar el impacto de errores en las

comunicaciones.● Maximizar la disponibilidad de los puntos

de entrega y recepción.

Responsabilidades de un motor de integración.

Page 4: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Introducción (III).

La versión estable actual de Mirth Connect es la 1.8.2.

Mirth está desarrollado y mantenido de manera oficial por la empresa Mirth Corp Inc.http://www.mirthcorp.com/ (Página Oficial de la empresa y del proyecto).

Page 5: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Funcionamiento de Mirth

Versión 0.5

Salamanca, 25 de Febrero de 2011

Page 6: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Funcionamiento de Mirth.

● Internamente, modela canales de comunicación.

● Los mensajes fuyen a través de los canales de Mirth.

● Los canales pueden interconectarse a su vez entre ellos de manera fexible.

● Se administra mediante una interfaz vía java webstart.

Imagen obtenida de http://www.mirthproject.org © Mirth Proyect.

Mirth es un servicio disponible de manera permanente.

Page 7: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Funcionamiento de Mirth (II).Modos de interconexión:

Imágenes obtenidas de http://www.webreachinc.com/products/mirth © WebReach Inc.

Leyenda:● C: Conector de origen/destino de un Canal.● F: Filtro. Generalmente descarta mensajes, pero puede contener scripting

javascript).● T: Transformador. Generalmente son invocaciones a objetos de transformación de

formatos: Ej: ER7=>XML

Page 8: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Instalalación de Mirth

Versión 0.6

Salamanca, 25 de Febrero de 2011

Page 9: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Instalación de Mirth

● Instalación/despliegue– Distribuíble sencillo de desplegar

● (instalador .jar, .app o paquetes .zip, tgz, etc.)● Modo stand-alone que no requiere intervención de

despliegue.– Servidor de aplicaciones:

● .sar de Jboss.● Configuración básica (Fichero conf/mith.properties)

– HTTP/HTTPS de escucha de la interfaz.– Backend de persistencia.

● Backend de persistencia. (Fichero conf/<backend>-SqlMapConfig.properties)

Page 10: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Ejemplo de configuración de Mirth.

configuration.id=MirthConfigurationhttp.port=18080http.htdocs=publichttps.port=18443https.keystore=keystorehttps.password=abc12345https.keypassword=abc12345https.ciphers=SSL_RSA_WITH_RC4_128_MD5,SSL_RSA_WITH_RC4_128_SHA,TLS_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_DSS_WITH_AES_128_CBC_SHA,SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA,SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHAcontext.path=/server.url=database=oracle# jmx connectionjmx.port=1099jmx.password=password# mulemule.config=mule-config.xmlmule.boot=mule-boot.xmlmule.template=mule-template.xmlmule.queue=${mirthHomeDir}/.mule

database=oracledriver=oracle.jdbc.OracleDriverurl=jdbc:oracle:thin:@localhost:1521:MIRTHusername=adminpassword=admin

Fichero mirth.properties: Fichero oracle-SqlmapConfig.properties:

Page 11: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Administración de Mirth

Versión 0.6

Salamanca, 25 de Febrero de 2011

Page 12: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Canales habituales.

● Mensajes en contenedor XML.● Conectores de Origen:

– Tipo:● MLLP.● Channel Reader (Conector VM).

● Conectores de destino:– Tipo:

● MLLP.● Channel Writer (Conector VM).

– Tipos de entregas.● Entrega retardada (encolada).● Entrega inmediata (No encolada).

Page 13: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Topología habitual (I).● Modelo publicador/subscriptor.

S1_RECEPCIONMLLP

MLLP

Sistema 1

VM

VM

S1_ENVIO

S2_RECEPCIONMLLP

MLLP

Sistema 2

VM

VM

S2_ENVIO

MIRTH

Page 14: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Topología habitual (II).● Interconexión subscriptor → publicador

– Modeladas como nuevos destinos.

S1_RECEPCIONMLLP

MLLP

Sistema 1

VM

VM

VM

S1_ENVIO

S2_RECEPCIONMLLP

MLLP

Sistema 2

VM

VM

S2_ENVIO

MIRTH

Page 15: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Topología habitual (III).● Ejemplo real

HISMLLP

HIS

VM

VM

GALENO2_RECEPCIONMLLP

MLLP

GALENO2

VM

VM

GALENO2_ENVIO

MIRTHHIS GALENO2

Page 16: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Topología de pruebas● Esquema de la simulación del entorno.

HISMLLP

HIS

VM

VM

GALENO2_RECEPCIONMLLP

MLLP

GALENO2

VM

VM

GALENO2_ENVIO

MIRTHHIS GALENO2

6660 6661

6662

● Pruebas:– NACK.– Envío a canal caído.– Fallos diversos: Codificación, etc.

Page 17: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Intervención frente a errores

Versión 0.6

Salamanca, 25 de Febrero de 2011

Page 18: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Comportamiento frente a errores.

● Envío directo:– Mensaje marcado como erróneo y envío de alerta.

● Envío encolado:– Mensaje marcado como erróneo y envío de alerta– Comportamiento adicional configurable:

● Reintento del envío.● Pausa del canal.● Omisión del mensaje (como en el envío directo).

Page 19: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Notificación de errores (I).

● Subscripciones a Alertas por correo electrónico.

Page 20: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Notificación de errores (II).

● Mensajes de error

From: carlos@localhostTo: carlos@localhostSubject: Mirth AlertContent-Type: text/plain; charset=us-asciiContent-Transfer-Encoding: 7bit

ERROR-408: MLLP Connector errorERROR MESSAGE: [ Channel S1_ENVIO, Destination 6f58a5de-76ad-486a-a906-32f2879c8b88_destination_2_connector, MessageType OUL_R22, MessageId 568e0168-b422-462f-8809-065fca8e578a ]NACK Received: <?xml version="1.0" encoding="UTF-8"?><ACK><MSH><MSH.1>|</MSH.1><MSH.2>^~\&amp;</MSH.2><MSH.3.1><HD.1>10APP</HD.1></MSH.3.1><MSH.4.1><HD.1></HD.1></MSH.4.1><MSH.5.1><HD.1>SIMPLERECEIVER</HD.1></MSH.5.1><MSH.6.1><HD.1>000000</HD.1></MSH.6.1><MSH.7.1><TS.1></TS.1></MSH.7.1><MSH.9.1>ACK</MSH.9.1><MSH.9.2></MSH.9.2><MSH.9.3>ACK</MSH.9.3><MSH.10>__ACK_RESPONSE</MSH.10><MSH.11.1>P</MSH.11.1><MSH.12.1>2.5</MSH.12.1><MSH.13></MSH.13><MSH.14></MSH.14><MSH.15>AL</MSH.15><MSH.16>NE</MSH.16></MSH><MSA><MSA.1.1>AE</MSA.1.1><MSA.1.2>__ACK_RESPONSE_FAIL</MSA.1.2></MSA><ERR><ERR.1><CWE.1>207</CWE.1><CWE.2>ERROR INTERNO</CWE.2><CWE.3>HL70357</CWE.3></ERR.1><ERR.4>E</ERR.4><ERR.7>This error has been forced intentionally</ERR.7></ERR></ACK>

Page 21: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Tipos de errores comunes.

● Problemas en base de datos.● Caída de aplicación.● Errores de codificación de mensajes.● Error de aplicación (NACK).● Escritura en canal parado o no desplegado.

Page 22: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Intervenciones comunes.

● Arranque de un canal.● Ajustes de configuración y re-despliegue.● Manipulación de colas.

– Reordenación.– Omisión de mensaje erróneo.– Edición de mensaje erróneo.

Page 23: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Monitorización

Versión 0.6

Salamanca, 25 de Febrero de 2011

Page 24: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Puntos clave.

● Estadísticas de los canales.Acumulaciones de mensajes → aumento de tasas de respuesta.

– Agentes activos.● Procesamiento de alertas.

Respuestas frente a alertas.– Agentes pasivos.

● Base de datos.Si se almacenan muchos mensajes, tienden a saturarse.

– Sistemas activos.

Page 25: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://www.metaemotion.com

[email protected](+34) 983 10 84 94

Banco de pruebas

Versión 0.6

Salamanca, 25 de Febrero de 2011

Page 26: Introducción a Mirth - Asociación de Informáticos de ... contacto@metaemotion.com (+34) 983 10 84 94 Funcionamiento de Mirth. Internamente, modela canales de comunicación. Los

MetaEmotionMetaEmotionhttp://healthcare.metaemotion.com

[email protected] Vinos de la Ribera del Duero, 5. 1ºB.

47008, Valladolid.

(+34) 983 10 84 94