Talend Open Studio para ESB es una herramienta de descarga gratuita basada en componentes visuales diseñados para integrar aplicaciones y sistemas comerciales en una infraestructura empresarial heterogénea.
Open Studio for ESB se divide condicionalmente en dos partes:
- Studio: un IDE basado en Eclipse en el que se desarrolla la solución (Talend Job);
- Runtime es una compilación basada en Apache Karaf que es un contenedor de microservicios.
Los productos Talend tienen un componente especial para el registro: tLogRow, sin embargo, la exportación a log4j está disponible intencionalmente solo para productos distribuidos por suscripción.
Registro de estudio
Para obtener el registro de componentes al depurar un proyecto, debe cambiar la prioridad en el archivo de configuración y, si es necesario, habilitar los anexos necesarios en el archivo de configuración: Archivo → Editar → Editar propiedades del proyecto → Log4j
Entonces, para obtener los registros del componente tRESTRequest, simplemente active Configuración avanzada → Registre mensajes en el componente y cambie la prioridad a "información":
<!-- Root Logger --> <root> <priority value ="info"/> ... </root>
Durante la ejecución de una tarea, se pueden interceptar tres tipos de eventos:
- tWarn componente event: un evento en el flujo de trabajo;
- Evento del componente tDie: un evento que termina un flujo de trabajo;
- Evento de excepción de Java: excepción interna en el flujo de trabajo;
Para interceptar eventos, hay un componente tLogCatcher, que tiene la capacidad de seleccionar una combinación de tipos de eventos interceptados.
Básicamente, todos estos eventos generan mensajes de texto en la consola de depuración IDE.
Sin embargo, si necesita leer estos mensajes en Runtime, debe complementar el borrador de trabajo con una subtarea separada:

tJavaRow debe contener el siguiente código o un código similar:
if(input_row.message != null){ org.apache.log4j.Logger log = org.apache.log4j.Logger.getLogger(this.getClass()); if(input_row.type != null) org.apache.log4j.MDC.put("subjectTag", input_row.type); switch (input_row.priority){ case 0: case 1: case 2: case 3: log.info(input_row.message); break; case 4: log.warn(input_row.message); break; case 5: log.error(input_row.message); break; default: log.fatal(input_row.message); break; } }
Por lo tanto, los eventos tLogCatcher entrarán no solo en la consola IDE, sino también en el log4j del servicio IDE generado en Runtime.
Tenga en cuenta que tLogCatcher no intercepta eventos SubJob como parte del trabajo Talend actual. En consecuencia, el diseño dado anteriormente debe estar presente en cada SubJob donde se requiere un registro.
Registro de tiempo de ejecución
El registro de tiempo de ejecución generalmente se escribe en $ {karaf.home} /log/tesb.log
Desde el punto de vista de Talend Runtime, $ {karaf.home} es un subdirectorio de ./Runtime_ESBSE/container
La configuración de la formación de registros se realiza en el archivo $ {karaf.home} /etc/org.ops4j.pax.logging.cfg
Para configurar el registro en Karaf, es mejor familiarizarse con la documentación oficial: http://karaf.apache.org/manual/latest/#_log
Si es necesario, el registro local se puede exportar a un sistema externo, por ejemplo, utilizando un archivo externo o la herramienta interna Karaf Apache Decanter
El propósito de este artículo es hacer posible que los principiantes simplifiquen el trabajo con Talend OS en términos de registro al desarrollar e implementar sus soluciones.