Custom logging

This section will talk about various loggings and how we can customize logging to suit our needs in terms of logging information. The reason why we need logging is because we want to retrieve some information on our package executions.

Here are some examples of logging info we might be interested in getting:

  • How much time it took to execute a specific package
  • How many rows have been transferred from one transform to another in our data flows
  • What were the warnings or errors that were issued by the package execution
  • The new values that have been assigned to a variable in a package, and so on

All the topics listed here will be discussed in the next sections of the book. For now, we'll focus on the customized logging levels.

There are various ways that we can log package execution information in SSIS. In versions prior to 2012 (or if we opt for a Package Deployment Mode instead of the default one, the Project Deployment Mode), the only way to enable logging was to enable it in each package. If we forgot to enable it in one package, the latter would not log anything. The default Project Deployment Mode can also log using package logging, but it's better to use SSIS Catalog logging, since it's integrated with projects once deployed and SSIS built-in execution reports will use it to display package execution information.

We'll talk about the various deployment models in the next chapter, Chapter 3, Key Components of a Modern ETL Solution.