2011-01-13 11 views
1

SSIS 패키지를 처음 사용하고 사용자 지정 스크립트 내에서 로깅을 시작하려고합니다. 이미 패키지의 기본 메시지를 로깅했지만 사용자 정의 로그 메시지를 추가하려고합니다. Microsoft.SqlServer.Dts.Pipeline.ScriptComponent 클래스에 Log 메소드가 있지만, dataCodedataBytes 인수에 대해 무엇을 사용해야하는지 확실하지 않으므로 0과 빈 배열을 사용했지만 아무 것도 기록하지 않았습니다.SSIS 패키지 스크립트 로깅

그래서 스크립트 내에서 로깅이 작동하도록하려면 어떻게해야합니까? 활성화하기 위해 알아야 할 구성이 있습니까?

감사 : 나는 SQLSERVER 2008 SP2 (안 R2)

답변

1

함께 일하고 당신은 작업이 로깅 활성화되어 있는지 확인해야합니다. BIDS 메뉴에서 SSIS> 로깅 ...을 선택하십시오. 데이터 흐름 작업을 선택하십시오. 공급자 및 로그 탭에서 로그 공급자가 선택되었는지 확인합니다. 자세히 탭을 선택하고 ScriptComponentLogEntry 이벤트를 확인하십시오. 이 이벤트는 패키지 설정에서 상속되지 않습니다. 데이터 흐름 작업을 선택해야합니다. 이제 로깅을 캡처해야합니다.

ComponentMetaData.FireInformation 정보 이벤트를 기록하는 데 관심이있을 수 있습니다. FireInformation 및 관련 방법에 대한 자세한 내용은 여기를 참조하십시오. 관련 이벤트 (FireInformation에 대한 OnInformation)가 패키지 설정에서 상속되기 때문에 구성하기가 더 쉽습니다. 즉, 패키지 수준에서 OnInformation 이벤트에 대한 로깅을 설정하면 모든 작업이 OnInformation 이벤트를 로깅합니다.

+0

감사합니다. 로깅에 대해 명시해야한다는 사실과 그것이 상속받지 못했음을 잊어 버린 것 같았습니다. 한 가지 curoius 문제는 'ComponentMetaData.FireInformation'이 메시지를 두 가지 다른 레벨에서 두 번 기록했다는 것입니다. 아마도 그것은 설정을 상속하고 내가 explcitly 그것을 설정 becuase했다. 기본 클래스 Log 메소드 호출 만 사용할 수 있으므로 걱정하지 않아도됩니다. 감사 – user551962