tLogCatcher - 6.1

Talend Components Reference Guide

EnrichVersion
6.1
EnrichProdName
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for Data Quality
Talend Open Studio for ESB
Talend Open Studio for MDM
Talend Real-Time Big Data Platform
task
Data Governance
Data Quality and Preparation
Design and Development
EnrichPlatform
Talend Studio

tLogCatcher properties

Both tDie and tWarn components are closely related to the tLogCatcher component.They generally make sense when used alongside a tLogCatcher in order for the log data collected to be encapsulated and passed on to the output defined.

Component family

Logs & Errors

 

Function

Fetches set fields and messages from Java Exception, tDie and/or tWarn and passes them on to the next component.

Purpose

Operates as a log function triggered by one of the three: Java exception, tDie or tWarn, to collect and transfer log data.

Basic settings

Schema and Edit Schema

A schema is a row description, it defines the fields to be processed and passed on to the next component.

The schema of this component is read-only.

 

Catch Java Exception

Select this check box to trigger the tCatch function when a Java Exception occurs in the Job

 

Catch tDie

Select this check box to trigger the tCatch function when a tDie is called in a Job

 

Catch tWarn

Select this check box to trigger the tCatch function when a tWarn is called in a Job

Global Variables

ERROR_MESSAGE: the error message generated by the component when an error occurs. This is an After variable and it returns a string. This variable functions only if the Die on error check box is cleared, if the component has this check box.

A Flow variable functions during the execution of a component while an After variable functions after the execution of the component.

To fill up a field or expression with a variable, press Ctrl + Space to access the variable list and choose the variable to use from it.

For further information about variables, see Talend Studio User Guide.

Usage

This component is the start component of a secondary Job which automatically triggers at the end of the main Job

Log4j

If you are using a subscription-based version of the Studio, the activity of this component can be logged using the log4j feature. For more information on this feature, see Talend Studio User Guide.

For more information on the log4j logging levels, see the Apache documentation at http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/Level.html.

Limitation

n/a

Scenario 1: warning & log on entries

In this basic scenario made of three components, a tRowGenerator creates random entries (id to be incremented). The input hits a tWarn component which triggers the tLogCatcher subjob. This subjob fetches the warning message as well as standard predefined information and passes them on to the tLogRow for a quick display of the log data.

  • Drop a tRowGenerator, a tWarn, a tLogCatcher and a tLogRow from the Palette, on your design workspace

  • Connect the tRowGenerator to the tWarn component.

  • Connect separately the tLogCatcher to the tLogRow.

  • On the tRowGenerator editor, set the random entries creation using a basic function:

  • On the tWarn Component view, set your warning message, the code the priority level. In this case, the message is "this is a warning'.

  • For this scenario, we will concatenate a function to the message above, in order to collect the first value from the input table.

  • On the Basic settings view of tLogCatcher, select the tWarn check box in order for the message from the latter to be collected by the subjob.

  • Click Edit Schema to view the schema used as log output. Notice that the log is comprehensive.

Press F6 to execute the Job. Notice that the Log produced is exhaustive.

Scenario 2: Log & kill a Job

This scenario uses a tLogCatcher and a tDie component. A tRowGenerator is connected to a tFileOutputDelimited using a Row link. On error, the tDie triggers the catcher subjob which displays the log data content on the Run console.

  • Drop all required components from various folders of the Palette to the design workspace: tRowGenerator, tFileOutputDelimited, tDie, tLogCatcher, tLogRow.

  • On the tRowGenerator Component view, define the setting of the input entries to be handled.

  • Edit the schema and define the following columns as random input examples: id, name, quantity, flag and creation.

  • Set the Number of rows onto 0. This will constitute the error which the Die operation is based on.

  • On the Values table, define the functions to feed the input flow.

  • Define the tFileOutputDelimited to hold the possible output data. The row connection from the tRowGenerator feeds automatically the output schema. The separator is a simple semi-colon.

  • Connect this output component to the tDie using a Trigger > If connection. Double-click on the newly created connection to define the if:

    ((Integer)globalMap.get("tRowGenerator_1_NB_LINE")) <=0

  • Then double-click to select and define the Basic settings of the tDie component.

  • Enter your Die message to be transmitted to the tLogCatcher before the actual kill-job operation happens.

  • Next to the Job but not physically connected to it, drop a tLogCatcher from the Palette to the design workspace and connect it to a tLogRow component.

  • Define the tLogCatcher Basic settings. Make sure the tDie box is selected in order to add the Die message to the Log information transmitted to the final component.

  • Press F6 to run the Job and notice that the log contains a black message and a red one.

  • The black log data come from the tDie and are transmitted by the tLogCatcher. In addition the normal Java Exception message in red displays as a Job abnormally died.