I am trying to do custom log provider that will post events to Notification Services...The idea is that if I could post the "SSIS events" to Notification Services, with a Custom Delivery Channel in NS, I would be able to do NS Subscriptions with real time monitoring of SSIS packages..
I have tried to use the sample custom log provider code in MSDN. The problem is after I added the custom log provider dll to the C:Program FilesMicrosoft SQL Server90DTSLogProviders folder and install to global assembly using gacutil...
The custom log provider is not showing up in the Provider Type under Configure SSIS logs...
I am new to SSIS but I am learning fast. Any help is greatly appreciated.
I have written a custom log provider derived from LogProviderBase. I want to programmtically add the custom log provider to my package, but when I try this:
myPackage.LogProviders.Add("ACustomLogProvider");
I get the following exception:
"The log provider type "ACustomLogProvider" specified for log provider "{..GUID..}" is not recognized as a valid log provider type. This error occurs when an attempt is made to create a log provider for unknown log provider type. Verify the spelling in the log provider type name".
I have followed the instructions in BOL and as suggested in this forum, adding the DtsLogProvider attribute:
This also gives me the same exception "The log provider type ""{..the actual GUID for ACustomLogProvider..}" specified for log provider "{..a different GUID..}" is not recognized as a valid log provider type....
My questions are: Is it possible to add a custom log provider programmtically or must it be done through the SSIS Designer?
Must I deploy my custom log provider class for it to work programmatically? (I had perhaps wrongly assumed I would not have to deploy if I don't want it to show up in the SSIS Designer).
I would prefer to use a custom log provider instead of just logging within the SSIS event handlers because I can override the OnPostExecute, etc. but I cannot (can I?) override the specific event handlers like PackageStart, PackageEnd, etc because they are not exposed through DTSEvents.
2. I deploy the signed assembly to the../../DTS/90/LogProviders directory & the GAC on both machine A & machine B.
3. I create a new package on machine A & go to enable logging for this new custom provider: I find it in the drop-down list of providers, and I can add it successfully.
4. I create a new package on machine B & go to enable logging for this new custom provider: I find it in the drop-down list of providers, but I can't add it. I get the following error:
'...failed to create log provider...the log provider type "_" specified for log provider "_" is not recognized as a valid log provider type. This occurs when an attempt is made to create a log provider for an unknown log provider type. Verify the spelling in the log provider type name (package)."
I created a SSIS log provider derived from LogProviderBase, it's appear in my VS2005 and work fine, the only one problem is, there is not a dropdown list of connections in the SSIS Log Configuration column, how can I add it?
I found one post from the past asking this question, but didn't see an answer, so I am hoping someone can shed some more light on it:
I am writing a custom log provider in C#. Is it possible give this custom log provider access to the variables collection (via a variabledispenser object)? First glance at the log provider classes would tell me that this is not possible, though I would like confirmation. Also, if I am correct in thinking it is not possible, what was the reason for leaving this out?
can someone help me in this???? this function is throwing exception "sqlException unhandled in user code"."incorrect syntax near ?"
Public Overrides Sub UpdateUser(ByVal us As System.Web.Security.MembershipUser) Dim conn As New SqlConnection(connStr) Dim cmd As New SqlCommand("UPDATE users SET firstname = ?, lastname = ?, company= ?, address= ?, state= ? WHERE Username = ?", conn) Dim u As User = CType(us, User) cmd.Parameters.Add("@firstname", SqlDbType.VarChar, 50).Value = u.FirstName cmd.Parameters.Add("@lastname", SqlDbType.VarChar, 50).Value = u.LastName cmd.Parameters.Add("@company", SqlDbType.VarChar, 50).Value = u.Company cmd.Parameters.Add("@address", SqlDbType.NVarChar, 200).Value = u.Address cmd.Parameters.Add("@state", SqlDbType.VarChar, 50).Value = u.State cmd.Parameters.Add("@Username", SqlDbType.NVarChar, 64).Value = u.UserName Try conn.Open() cmd.ExecuteNonQuery() Catch e As SqlException Throw e 'Throw New Exception("Some Error occured during updation...") Finally conn.Close() End Try End Sub
...I guess that simply means that I can't access a package's variables within a custom log provider? Can anyone comment/confirm? Any other options/routes to achieving the same..?
I am interested in determining if package variables can be read from a custom log provider. I am able to pass the values into the custom log provider using an expression in a custom connection manager. My intention is to used the values of these variables upon package failure so I can capture the context of the failure. Unfortunately, if the value of the variable is changed at runtime, this update is not reflected in the custom log provider.
Is it possible to get direct access to the package variables from the custom log provider?
Hello Everyone, I am trying to use a custom role provider, the main purpose so that I don't have to use a database file. My web.config file is posted below. My problem is that I think I have followed all the steps to create a custom role provider using both articles on MSDN and some written by Scott Gu. After Modifying my web.config file I went to the asp.net configuration to test the connection. Users are created in the remote database but roles are being picked up and created in the App_Data folder. Can anyone give me a hint at what I am doing wrong? thanks in advance. <?xml version="1.0"?> <!-- Note: As an alternative to hand editing this file you can use the web admin tool to configure settings for your application. Use the Website->Asp.Net Configuration option in Visual Studio. A full list of settings and comments can be found in machine.config.comments usually located in WindowsMicrosoft.NetFrameworkv2.xConfig --> <configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0"> <appSettings/> <connectionStrings> <add name="MyConnectionString" connectionString="Data Source=10.10.10.10;Database=MyDataBase;Persist Security Info=True;User ID=user;Password=password" providerName="System.Data.SqlClient"/> </connectionStrings> <system.web> <!-- Set compilation debug="true" to insert debugging symbols into the compiled page. Because this affects performance, set this value to true only during development. --> <roleManager enabled="true"/> <membership defaultProvider="CustomSQLRoleManager"> <providers> <clear/> <add name="CustomSQLRoleManager" type="System.Web.Security.SqlMembershipProvider" connectionStringName="MyConnectionString" applicationName="MyAppllicationName" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" requiresQuestionAndAnswer="false" requiresUniqueEmail="true"/> </providers> </membership> <compilation debug="true"> <assemblies> <add assembly="System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/> <add assembly="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/></assemblies></compilation> <!-- The <authentication> section enables configuration of the security authentication mode used by ASP.NET to identify an incoming user. --> <authentication mode="Forms"/> <!-- The <customErrors> section enables configuration of what to do if/when an unhandled error occurs during the execution of a request. Specifically, it enables developers to configure html error pages to be displayed in place of a error stack trace. <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm"> <error statusCode="403" redirect="NoAccess.htm" /> <error statusCode="404" redirect="FileNotFound.htm" /> </customErrors> --> </system.web> </configuration>
ASP.NET 2.0.... What is the proper way to rename the ASPNETDB.MDF to another name, such as TEST_ASPNETDB.MDF? I know you can rename the db in the IDE, BUT, there are other places you need to change so that ASPNETDB.MDF isn't recreated. Do I have to make a custom SQLExpress provider or something to that effect? Any examples? Thanks...
I'm trying to use an OLE DB connection manager from inside a custom log provider, but can't get the code to work - I get an exception "A first chance exception of type 'System.InvalidCastException' occurred in SSEALogProvider.dll" on the last line of the code below.
I know the connection is OLE DB from looking at .CreationName.
I've tried both with & without ToConnectionManager90(), but appearently not in the right way, both cases gives the same exception.
Any tips on what I'm missing? All the examples I've seen are either creating (instead of using) connection managers, or are file based connection managers. Any and all help much appreciated!
Thanks/Kristian
if (this.ConfigString.Length == 0 || connections.Contains(ConfigString) == false ||
infoEvents.FireError(0, "SSEALogProvider", "The ConnectionManager " + ConfigString + " specified in the ConfigString property cannot be found in the collection, or is of the wrong type (expected CreationName='OLEDB'.)", "", 0);
We are using Notification services of SQL Server 2005 in our application. The scenario is that mails will be sent to customers based on different criteria like New Invoices, Overdue Invoices, Invoices due in certain number of days, Invoices for which Amount Exceeds certain value etc. We are using two stored procedures and two tables to achieve this. One stored proc inserts/updates data related to different notifications that are selected by customers. Another stored proc inserts or updates data related to customers who created the notification.
We are now planning to upgrade from SQL 2005 to SQL server 2012. Since notification services are no longer supported in SQL 2012, we are looking for other alternatives. Which among the below would be the best alternative to replace notification services for our scenario. Also, anyny documentation or useful links which would support us in replacing notification services.
I have a package with a custom log provider, which runs in BIDS. However when I deploy the package onto SQL Server and run it on the deployed machine, if fails:
"failed to decrypt protected XML node DTS:Password...key not valid for use in specified state..."
Now this is definately to do with the custom log, as if I take it out & redeploy, I can run it on the deplyed server + also run it within a job. I have entered the custom log provider library (+ other required DLLs) in the GAC on the deployed machine, but I'm clearly missing something.
i've installed Sql Server 2005 Standard edition (32bit)with Notification services but after installation this options of Notification service is not appear on sql server management studio 2005 . how can correct this?please give me a hand.
i've installed Sql Server 2005 Standard edition (32bit)with Notification services but after installation this options of Notification service is not appear on sql server management studio 2005 . how can correct this?please give me a hand.
Hi,I am a newbee to sql server. I know there is a tool calledNotification Services. I want to set up notification for specificentries in sql server table.Thanks a lot for your guidance.AJ
We are upgrading a Windows 2003 system with SQL Server 2000 and we've been seeing the notification services .net dll fail to install. The error that is displayed has a internet lookup to Microsoft. When we lookup the error it mentions that MS DTC needs to be started for the notification services to be installed. We re-imaged the box and verified it was running prior to the install of SQL 2005. Anyone have any ideas why this error is occurring?
Is there any way around among SQL Server 2005 enhancements that provide something
similar to the event notifications effect? Notification Service is not supported on SQL Server 2005 Express; common problem with what I am trying to do is, for example: I want to produce event each time that row has been inserted into the table that would reach each of multiple users
using multiple instances of application that all connect to the same Express database;
one way to do this would be to use triggers on insert on the table, that could perhaps
insert appropriate row into some temporary table, and then read on timer that temporary table and fire event for each active user...
However, I was wondering if there was some other, perhaps lighter and built-in mechanism on Express that I could use?
Does SQLExpress support notification services? I read all kind of opposite statements. Some websites say they are supproted, other websites say it's not included.
Hello,I'm following the tutorial for setting up notification services, available here: ms-help://MS.SQLCC.v9/MS.SQLSVR.v9.en/sqltut9/html/44aa0556-b9c2-48f5-8775-134bbe0b90aa.htm. Where it says:Update the Instance of Notification Services After you modify the ADF, you update the instance of Notification Services to add event class objects to the application database:
In Object Explorer, expand Notification Services. Right-click Tutorial, point to Tasks, and then select Update. In the Update Instance dialog, click Browse, browse to the TutorialICF.xml file, and then click Open. In the Parameters grid, enter values for the _ServerName_, _DBEngineInstance_, and _InstancePath_ parameters. Use the same values you used to create the instance. Click OK. Review the Notification Services - Update Summary dialog box, and then click Update. When the update actions complete, click Close. I'm getting the error: The instance must be disabled before it can be updated or upgraded. How do I do that?Thanks.
I just wondered that now SQL Mail is classed as a legacy solution for email, does anyone know how to set up Notification Services to send email once a job has completed e.g. Backup or reindex?
I have tried to find a tutorial but with no joy so far!
I have been going over the samples from PDC 2005 and trying to run the External Activator program in section 2 'CLR Services'. After sending a message to the Inventory Queue, I see that 'dm_broker_queue_monitors' table has a row in the table, with the state column shown as 'NOTIFIED', but the ExternalActivator program never gets notified of the event and therefore never launches the 'InventoryServer' program.
Querying the [ExternalActivatorQueue] shows no rows.
Querying the [Inventory Queue] shows messages are waiting to be received.
Executing the 'activator' command in the ExternalActviator program shows
Notification service 'ExternalActivator' on SQL Server 'DBSERVER' and Database 'In ventory' is connected to the database and working.
I'm trying to reinstall SQL Server 2005 STD but I cannot get Setup to install Integration Services or Notification Services. I looked in the log and this is what I found. Needless to say, it makes no sense to me. It seems that Setup is trying to find a missing source list for a certain product. I have no clue what that product is. I've spent endless hours trying to figure it out and I'm still drawing a blank. This is a printout of the log.
Integration services - ---------------------- MSI (s) (F0:B0) [02:33:01:437]: Machine policy value 'DisableUserInstalls' is 0 MSI (s) (F0:B0) [02:33:02:188]: End dialog not enabled MSI (s) (F0:B0) [02:33:02:188]: Original package ==> G:ServersSetupSqlRun_DTS.msi MSI (s) (F0:B0) [02:33:02:188]: Package we're running from ==> C:WINDOWSInstaller188966.msi MSI (s) (F0:B0) [02:33:02:339]: APPCOMPAT: looking for appcompat database entry with ProductCode '{EE8CFFD9-6E29-4DC3-A967-7348D5F41F44}'. MSI (s) (F0:B0) [02:33:02:339]: APPCOMPAT: no matching ProductCode found in database. MSI (s) (F0:B0) [02:33:02:339]: MSCOREE already loaded, using loaded copy MSI (s) (F0:B0) [02:33:02:379]: Couldn't find local patch ''. Looking for it at its source. MSI (s) (F0:B0) [02:33:02:379]: Resolving Patch source. MSI (s) (F0:B0) [02:33:02:379]: User policy value 'SearchOrder' is 'nmu' MSI (s) (F0:B0) [02:33:02:379]: User policy value 'DisableMedia' is 0 MSI (s) (F0:B0) [02:33:02:379]: Machine policy value 'AllowLockdownMedia' is 0 MSI (s) (F0:B0) [02:33:02:379]: SOURCEMGMT: Media enabled only if package is safe. MSI (s) (F0:B0) [02:33:02:379]: SOURCEMGMT: Looking for sourcelist for product {8B7E2749-624E-4C61-92FC-2BC18307FF24} MSI (s) (F0:B0) [02:33:02:379]: Note: 1: 1706 2: {8B7E2749-624E-4C61-92FC-2BC18307FF24} 3: MSI (s) (F0:B0) [02:33:02:379]: SOURCEMGMT: Failed to resolve source MSI (s) (F0:B0) [02:33:02:399]: Note: 1: 1708 MSI (s) (F0:B0) [02:33:02:399]: Note: 1: 2729 MSI (s) (F0:B0) [02:33:02:409]: Note: 1: 2729 MSI (s) (F0:B0) [02:33:02:409]: Product: Microsoft SQL Server 2005 Integration Services -- Installation failed.
MSI (s) (F0:B0) [02:33:02:439]: MainEngineThread is returning 1612 The installation source for this product is not available. Verify that the source exists and that you can access it. G:ServersSetupSqlRun_DTS.msi MSI (c) (B8:88) [02:33:02:439]: Decrementing counter to disable shutdown. If counter >= 0, shutdown will be denied. Counter after decrement: -1 MSI (c) (B8:88) [02:33:02:439]: MainEngineThread is returning 1612 === Verbose logging stopped: 5/19/2006 2:33:02 ===
----------------------- Notification services - ----------------------- MSI (s) (F0:30) [02:33:07:566]: Machine policy value 'DisableUserInstalls' is 0 MSI (s) (F0:30) [02:33:08:087]: End dialog not enabled MSI (s) (F0:30) [02:33:08:087]: Original package ==> G:ServersSetupSqlRun_NS.msi MSI (s) (F0:30) [02:33:08:087]: Package we're running from ==> C:WINDOWSInstaller18898f.msi MSI (s) (F0:30) [02:33:08:167]: APPCOMPAT: looking for appcompat database entry with ProductCode '{37E9AD9F-3217-4229-B5A5-7A0C82364C6C}'. MSI (s) (F0:30) [02:33:08:167]: APPCOMPAT: no matching ProductCode found in database. MSI (s) (F0:30) [02:33:08:167]: MSCOREE already loaded, using loaded copy MSI (s) (F0:30) [02:33:08:187]: Couldn't find local patch ''. Looking for it at its source. MSI (s) (F0:30) [02:33:08:187]: Resolving Patch source. MSI (s) (F0:30) [02:33:08:187]: User policy value 'SearchOrder' is 'nmu' MSI (s) (F0:30) [02:33:08:187]: User policy value 'DisableMedia' is 0 MSI (s) (F0:30) [02:33:08:187]: Machine policy value 'AllowLockdownMedia' is 0 MSI (s) (F0:30) [02:33:08:187]: SOURCEMGMT: Media enabled only if package is safe. MSI (s) (F0:30) [02:33:08:187]: SOURCEMGMT: Looking for sourcelist for product {65A498A6-83B9-4B91-99EA-1BA88D73F0AA} MSI (s) (F0:30) [02:33:08:187]: Note: 1: 1706 2: {65A498A6-83B9-4B91-99EA-1BA88D73F0AA} 3: MSI (s) (F0:30) [02:33:08:187]: SOURCEMGMT: Failed to resolve source MSI (s) (F0:30) [02:33:08:187]: Note: 1: 1708 MSI (s) (F0:30) [02:33:08:187]: Note: 1: 2729 MSI (s) (F0:30) [02:33:08:187]: Note: 1: 2729 MSI (s) (F0:30) [02:33:08:187]: Product: Microsoft SQL Server 2005 Notification Services -- Installation failed.
MSI (s) (F0:30) [02:33:08:197]: MainEngineThread is returning 1612 The installation source for this product is not available. Verify that the source exists and that you can access it. G:ServersSetupSqlRun_NS.msi MSI (c) (B8:DC) [02:33:08:207]: Decrementing counter to disable shutdown. If counter >= 0, shutdown will be denied. Counter after decrement: -1 MSI (c) (B8:DC) [02:33:08:207]: MainEngineThread is returning 1612
We are installing 2 instances of sql server in cluster env.
When intalling "Default" instance, I m getting Notification services, Integration, reporting services for default instance.
My question is : When we intall second named instance on cluster, will named instance share Notification services, Integration, reporting services with default instace.
So if above is yes, do I have to install Notification services, Integration, reporting services on C: drive of cluster nodes, so that it is shared by all the instances on the cluster nodes.
I've got a big problem with the Analysis Services. I have a SQL Server 2000 SP3 and the Analysis Services SP3 running. The SQL Server has no problems. When I try to browse the Data of any cube, the following error message occurs: "Provider cannot be found. It may not be properly installed." When I try to browse other cubes after this, the error message "unknown error" occurs. The databases, on which the cubes are based are both Access2k and SQL Server 2k. The error even appears at the test cubes from Microsoft, so it cannot be simply a problem of the database.
Oracle linked server. If I query Oracle in my packages using SQL it tooks age if I use an OLE DB Oracle connection it takes minutes, so I started to develop my packages using the OLE DB Oracle. The point is that in order to connect the Oracle db I must set up a password (Oracle requires a password but if I use directly SQL it doesn't need any password). This password changes every month so I do need to set up the password for...if I can come up with another solution? I don't know, maybe a unique connection...just set up the password only once.