SSIS 日志记录引发错误

问题描述 投票:0回答:2

我已经编写了一些运行正常的 ETL,处理完成没有错误。现在我想使用 SSIS Loggin 功能创建日志。

但是,一旦我设置此日志记录(SQL Server 的 SSIS 日志提供程序;所有事件;所有容器都被检查,日志也被检查)并启动 ETL,MS Visual Studio 2008 应用程序返回错误窗口,其中未指定错误所以我什至不知道可能是什么问题。 ETL 的目标是 SQL Server 2008 R2。凭据与我的 AD 帐户相同,我可以将数据写入此数据库(分别是表)。

综上所述,整个 ETL 运行没有问题,但是一旦打开 SSIS 日志记录,ETL 甚至无法启动。

注意一点:日志表是通过 [domain\user_name].[sysssislog] 在数据库中创建的。还记录到例如文本文件工作没有任何问题。

请问有什么建议吗?

+++

我收到错误

标题:包验证错误


包验证错误


其他信息:

Reporting_v3 [日志提供程序“SQL Server 的 SSIS 日志提供程序”] 出现错误:SSIS 错误代码 DTS_E_OLEDBERROR。发生 OLE DB 错误。错误代码:0x80040E14。 OLE DB 记录可用。来源:“Microsoft SQL Server Native Client 10.0” Hresult:0x80040E14 描述:“数据库中已存在一个名为“sysssislog”的对象。”。

Reporting_v3 [日志提供程序“SQL Server 的 SSIS 日志提供程序”] 出现错误:SSIS 错误代码 DTS_E_OLEDBERROR。发生 OLE DB 错误。错误代码:0x80040E14。

大约有 500 行存在相同的错误。如果我删除 ssislog 表并在打开 SSIS 日志记录的情况下运行包,则会再次创建该表并弹出相同的错误。

sql-server-2008 visual-studio-2008 logging ssis
2个回答

0
投票

“数据库中已经存在一个名为‘sysssislog’的对象。”

我遇到了同样的错误。问题是我没有 dbo 权限来创建系统表和存储过程。

因此它将在我的用户名下创建 sysssislog 表:

 DOMAIN\user.sysssislog

而不是

 System Tables dbo.sysssislog

它还在普通存储过程而不是系统存储过程下创建一个存储过程

sp_ssis_addlogentry

sp_ssis_addlogentry
尝试插入到
dbo.sysssislog
,但不能,因为它不存在。但用户这样做时抱怨对象已经存在。

h/t 至 vikas ojha

https://www.sqlservercentral.com/forums/topic/error-with-ssis-log-provider-for-sql-server-possible-bug#post-713527

© www.soinside.com 2019 - 2024. All rights reserved.