ソリューション内の一部のパッケージは、Sp_SSIS_Addlogentryに保存されたプロシージャを呼び出すことができません。そのため、これらのパッケージのログはキャプチャされていません。同じソリューション内の他のいくつかのパッケージがエントリをログに記録できる理由を見て、私はショックを受けました。
これを修正するための解決策はありますか?アニー提案?
ソリューション内の一部のパッケージは、Sp_SSIS_Addlogentryに保存されたプロシージャを呼び出すことができません。そのため、これらのパッケージのログはキャプチャされていません。同じソリューション内の他のいくつかのパッケージがエントリをログに記録できる理由を見て、私はショックを受けました。
これを修正するための解決策はありますか?アニー提案?
'sp_ssis_addlogentry'には権限が必要です。パッケージにEXECUTE権限があるかどうかを確認してください。(SSISソリューションに2つ以上の接続がありますか?DBA / saログインを使用してsp_ssis_addlogentryを実行してみることができますか?)
お役に立てば幸いです。数か月前にこの問題が発生しましたが、これで解決しました。
これは、SQLデータベースへのパッケージロギングを有効にした場合にも発生する可能性があります。必要なすべてのテーブルとストアドプロシージャがあるmsdbを指すように構成してから、パッケージを実行しているアカウント(通常、SQLエージェントから実行している場合はプロキシアカウント)に必要なプロシージャの実行権限を適用する必要があります。
どのprocに許可が必要かは正確にはわかりませんが、通常は次のようにします。
USE [msdb]
GO
CREATE USER [MyDomain\svcMy_SSIS_Proxy] FOR LOGIN [MyDomain\svcMy_SSIS_Proxy]
GO
CREATE ROLE [SSIS_Executor]
GO
GRANT EXECUTE ON sp_ssis_addlogentry TO [SSIS_Executor]
GRANT EXECUTE ON sp_ssis_checkexists TO [SSIS_Executor]
GRANT EXECUTE ON sp_ssis_getfolder TO [SSIS_Executor]
GRANT EXECUTE ON sp_ssis_getpackage TO [SSIS_Executor]
GRANT EXECUTE ON sp_ssis_getpackageroles TO [SSIS_Executor]
GRANT EXECUTE ON sp_ssis_listfolders TO [SSIS_Executor]
GRANT EXECUTE ON sp_ssis_listpackages TO [SSIS_Executor]
ALTER ROLE [SSIS_Executor]
ADD MEMBER [MyDomain\svcMy_SSIS_Proxy]