I try to understand how the SSIS logging behavior works. I create an SSIS package that has a Data Flow Task. The Data Flow Task contains some custom data flow components.
One of them overrides the RegisterLogEntries method like that:
public override void RegisterLogEntries()
{
this.LogEntryInfos.Add("MyCustomLoggerEntryName","Log entry from My Custom Component", DTSLogEntryFrequency.DTSLEF_CONSISTENT);
}
And add a log entry in PreExecute-Method:
ComponentMetaData.PostLogMessage(MyLogEntryName, ComponentMetaData.Name, "PreExecute method was fired", DateTime.Now, DateTime.Now, 0, null);
Then I wrote a CustomLogProvider in the same manner as described by Microsoft.
I added and enabled my custom log provider in SSDT (SSIS->Logging).
If I enable all Events (OnError,OnExecStatusChange,OnInformation,…) under Details, then I get my custom log message in my custom log provider in the log method.
As soon as I deactivate at least one event under details, I will not get my custom log entry. It doesn’t matter which event I deactivate.
Does anyone have experience with this problem?