Solved

SSIS Add Error Logging

Posted on 2008-06-24
10
781 Views
Last Modified: 2013-11-30
SQL Server Integration Services

I use a data flow item containing multiple lookups to normalize a flat file input. The error output I save into a seperate table. This table contains the errors from all lookups. I would like to add an additional error code to identify which lookup caused the error.

How can this be done?
0
Comment
Question by:riffrack
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 4
  • 2
10 Comments
 
LVL 60

Expert Comment

by:chapmandew
ID: 21854718
Are you referring to which particular lookup task caused the error, or what row from the lookup caused the error?
0
 
LVL 8

Expert Comment

by:drydenhogg
ID: 21854981
Bit of a hack but throw a column transform in there and add an additional column to the error output from the lookup specifying which lookup it was that failed.
0
 

Author Comment

by:riffrack
ID: 21856713
hi drydenhogg
I tried to do that but I receive the following error:
"The component does not allow adding columns to this input or output."

hi chapmandew
yes, I am referring to which particular lookup task caused the error
0
What is SQL Server and how does it work?

The purpose of this paper is to provide you background on SQL Server. It’s your self-study guide for learning fundamentals. It includes both the history of SQL and its technical basics. Concepts and definitions will form the solid foundation of your future DBA expertise.

 
LVL 8

Expert Comment

by:drydenhogg
ID: 21856731
Do it prior to each lookup, so it appears as a column before you hit the error output.
0
 

Author Comment

by:riffrack
ID: 21856888
Sorry, but its not quite clear to me what you mean.

I am quite new to SSIS, can you explain it step by step?
0
 
LVL 60

Expert Comment

by:chapmandew
ID: 21856940
OK, so each task has a succes and failure workflow right (green and red arrows).  For the failure of each task (red arrow), use an ExecuteSQL statement to log the task name , and the error.  Does that make sense?
0
 
LVL 8

Accepted Solution

by:
drydenhogg earned 500 total points
ID: 21856971
In the data flow, before the raw data goes through a lookup, put the derived column transformation within the flow to add a column specifying which lookup you are about to do, if the lookup fails, the output will include the data you added in the lookup.

You probably have a data source object with a green arrow going directly to a lookup object. Basically divert the green arrow to the dervied colum transform, and then from the transform back to the lookup.

Before each subsequent lookup you can alter the value to indicate which lookup you are about to do.

Within the derived column object you can specify a column name, under the derived column you can say '<add as new column>' and in the expression put the value such as 'CustomerID Lookup' or whatever is appropriate for your application.

When a row then errors on a specific lookup, the lookup which it failed on will be in that derived column, which will of been sent to the error output.
0
 
LVL 8

Expert Comment

by:drydenhogg
ID: 21856987
This is still a bit of a hack though, it's not pretty and will have a performance penalty.
0
 

Author Closing Comment

by:riffrack
ID: 31470066
Thanks a lot works fine, I was able to place the derived column after the lookup. That was exactly what I was looking for.
0
 

Author Comment

by:riffrack
ID: 21860036
Performance is not really an issue, as it will run once a month with less than 100'000 records.

Is there a recommended / elegant solution, which you would refer to as a hack?
0

Featured Post

Ransomware: The New Cyber Threat & How to Stop It

This infographic explains ransomware, type of malware that blocks access to your files or your systems and holds them hostage until a ransom is paid. It also examines the different types of ransomware and explains what you can do to thwart this sinister online threat.  

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Why is this different from all of the other step by step guides?  Because I make a living as a DBA and not as a writer and I lived through this experience. Defining the name: When I talk to people they say different names on this subject stuff l…
Use this article to create a batch file to backup a Microsoft SQL Server database to a Windows folder.  The folder can be on the local hard drive or on a network share.  This batch file will query the SQL server to get the current date & time and wi…
Using examples as well as descriptions, and references to Books Online, show the different Recovery Models available in SQL Server and explain, as well as show how full, differential and transaction log backups are performed
Viewers will learn how to use the SELECT statement in SQL and will be exposed to the many uses the SELECT statement has.

733 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question