我正在尝试为SSIS创建自定义日志记录提供程序,但在部署dll时,它不会显示在提供程序列表中.
SSIS版本是11.0.2100.60.我尝试过.NET Framework 2.0和3.5.我安装在GAC中,并且还复制到以下两个文件夹中:
C:\Program Files\Microsoft SQL Server\110\DTS\LogProviders
C:\Program Files (x86)\Microsoft SQL Server\110\DTS\LogProviders
Run Code Online (Sandbox Code Playgroud)
执行此操作后,我打开了Visual Studio [Shell],并创建了一个简单的SSIS包.打开SSIS\Logging...
菜单时,新的自定义日志提供程序不存在.
我现在使用的代码是Microsoft提供的示例包(HTMLLogProviderCS),没有运气.
任何我可能错过的想法?
小智 10
以下是我使用Visual Studio 2010在.NET 4.0框架中创建自定义日志提供程序所执行的步骤.这些步骤还说明了提供程序在SQL Server Data Tools 2010中的显示方式.
首先,我使用的是Microsoft SQL Server集成服务设计器版本11.0.2100.60
创建一个类库项目.我选择了C#和.NET Framework 4,将项目命名为CS40.CustomLogProvider.
更改类文件名称SSISCustomLogProvider
.右键单击"引用"并导航C:\Program Files\Microsoft SQL Server\110\SDK\Assemblies
到添加DLL 的路径Microsoft.SQLServer.ManagedDTS.dll
将以下代码粘贴到类中:
using Microsoft.SqlServer.Dts.Runtime;
namespace CS40.CustomLogProvider
{
[DtsLogProvider(
DisplayName = "Custom log provider created by Siva",
Description = "A simple log provider.",
LogProviderType = "Custom")]
public class SSISCustomLogProvider : LogProviderBase
{
// TODO: Override the base class methods.
}
}
Run Code Online (Sandbox Code Playgroud)
双击项目下的" 属性"节点.单击属性页面上的" 签名"选项卡,使用强密钥对程序集进行签名.选中签署组件并选择从选择强名称密钥文件.
输入密钥文件名,例如SampleKey.如果您愿意,可以输入密码.
将创建强名称密钥并将其添加到项目中.
建立项目.我在发布模式下构建了项目.DLL将可用于C:\temp\CS40.CustomLogProvider\bin\Release
.现在,是时候将DLL注册到GAC了.我发现了路径中的gacutilC:\Program Files\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools
在"以管理员模式运行"中打开命令提示符.逐个输入以下命令,然后按Enter键.
将命令提示符路径更改为可以找到gacutil的位置.
cd C:\Program Files\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools
Run Code Online (Sandbox Code Playgroud)
输入以下命令以将DLL添加到GAC.
gacutil -i C:\temp\CS40.CustomLogProvider\bin\Release\CS40.CustomLogProvider.dll
Run Code Online (Sandbox Code Playgroud)
复制DLL CS40.CustomLogProvider.dll
中的位置C:\temp\CS40.CustomLogProvider\bin\Release
,并将其粘贴C:\Program Files\Microsoft SQL Server\110\DTS\LogProviders
.110
路径中的值是指SQL Server 2012.
使用SQL Server数据工具创建新的SSIS包.
在新创建的SSIS包上,单击SSIS --> Logging...
以访问日志记录选项
您会注意到新创建的SSIS日志提供程序.您可以看到它显示DisplayName属性上使用的值.
希望有所帮助.
归档时间: |
|
查看次数: |
2319 次 |
最近记录: |