0

我有一个自定义 SSIS 日志记录提供程序,用于将日志从 SSIS 进程推送到自定义日志记录服务。日志记录配置在包级别。

流程: 1. 在OpenLog中,我为日志创建一个操作ID,分配给现有的日志服务。2. 执行 log 方法时,我在现有的日志记录服务中记录一个事件,作为 OpenLog 方法中创建的操作的子项。

一切正常,但是使用子包创建了一个新的 SSIS 包。因此,现在我有多个操作 ID,并且由于包是并行执行的,因此我必须对每个日志使用正确的操作 ID。

问题?Log 方法不提供当前包。SourceID 提供组件 ID,但不提供包 ID。

有没有办法(从 API)检索记录条目的包?

谢谢,罗伯

4

1 回答 1

1

So far SSIS doesn't provide a direct way to access the package name or id inside the custom log provider.

What you can do is enable the package logging through the custom log provider and provide the package name as Configuration property to custom provider.

Then you can access ConfigString property within the custom log provider methods and create an event source using it.

In your case you can create a one custom provider for both parent and child and provide different names for configuration property.

于 2014-02-12T12:55:58.563 回答