To access the actual error file, go to the following path and look for the file with task id:
For custom error file name and directory create an MCT and add the Advanced Session Property:
Error Log Type
Error Log File Directory
Error Log File Name
Thanks for your help.
I am able to find error log file but the problem is I am getting empty file. There is no record that is inserted into the error log file. Its because when the row is rejected at the source, then usually it has to do with the column definition (data type, precision, and scale) defined for one or more columns in the source.
The column definition may not be able to handle the data in the source and "rejects" the row. Errors in the session log stating as such rows are dropped due to invalid data.
As we know that rows rejected in the Source do not enter the rejected rows of the session.
The rows ignored/rejected at the Source Qualifier do not enter the session pipeline.
I want to capture those rows which got dropped at the level of the source?
Is there a way I can achieve this?
Please note as of now there is no direct mechanism available to capture source level rejections. Only target level rejections can be captured in error log file. For more information on capturing target level rejections refer this KB ,
583883 You can have a lookup between source and target to find missing records or use business checks in expression to remove incorrect rows and route them towards error files for further processing.
Hi, Akshaye thanks for your help.
how can I capture those records without a direct mechanism? Any idea?
Can I load those records from the Session log and load it into the file?
As suggested earlier you can have a lookup between source and target to find missing records and then load it to a flat file to capture these records.
I create one mapping task in IICS Data integration to capture Invalid data into the error log file. In advance Error Log Type="Flat File", Data column Delimeter= | , Data column Delimeter= |, Error File name="Error_rec.csv", enabled Log Row Data and Log Source Row as Yes.
In my error log, I am getting all error log values of Transformation,Transformation Mapplet Name,Transformation Group,Partition Index,Transformation Row ID,Error Sequence,Error Timestamp,Error UTC Time,Error Code,Error Message,Error Type,Transformation Data,Source Mapplet Name,Source Name,Source Row ID,Source Row Type,Source Data.
There is no header for the error log also.
I just want to capture row data which was rejected by the target. I am unable to do that. I go through documents but I didn't find any way to achieve this.
Is there any mechanism to capture just only row data into the error log as CSV file?
Here is a sample error log file?
IUpdateStrategyNode4,N/A,Output,1,1,1,09/08/2020 13:37:03,1599572223,21449,[IUpdateStrategyNode4]: REJECT: Discarding output row for transformation.
Expression,N/A,Output,1,7,1,09/08/2020 13:37:03,1599572223,11021,An error occurred moving data from the transformation Expression: to the transformation IUpdateStrategyNode4.,3,""1008""|""3005""|""2020-08-20 22:45:00""|""2020-08-20 22:45:00""|""""|""""|""30005"""""""""""""",N/A,N/A,-1,-1,N/A
Note data that I want to capture is in red.
Can you try without Error logging parameters in the Mapping Task? Enable Forward reject rows in the Target. It should create *output1.bad file in the */data/error/<MappingTaskFRSID> location. That should be parsable.