Hello,
In a lab environment, we're running a BizTalk system with 2 clustered SQL 2005 instances and two BTS 2006 R2 servers. When submitting messages to the 2nd BTS server, we are sometimes seeing the following in the Application log:
Event Type: ErrorEvent Source: BizTalk Server 2006Event Category: BizTalk Server 2006 Event ID: 5719Date: 11/24/2009Time: 2:09:38 PMUser: N/AComputer: RAS04098Description:There was a failure executing the receive pipeline: "eHub.Hub.Pipelines.PubReceiveMsgBTF, eHub.Hub.Pipelines.PubReceiveMsgBTF, Version=3.2.0.0, Culture=neutral, PublicKeyToken=95e40461a5ba22b5" Source: "PublicationMessageAuthorizer" Receive Port: "eHub.ReceivePort" URI: "/eHub/BTSHTTPReceive.dll" Reason: Requested registry access is not allowed.
I've run Regmon while submitting messages, expecting to see Access Denied errors in RegMon, but the only thing abnormal are lots of Not Found results. Here are a few of the records from RegMon:
None of these registry keys exist so I don't think these are the problem.
How can I find out what registry key is where access is not allowed?
Thanks in advance,
DetRich
As it turned out, the access denied errors were for the registry keys indicated in the initial posting. However, these were not being seen in RegMon because the wrong process was being monitored. The correct process was w3wp.exe, which I understand to be for the application pool.
In addition, granting access to the registry keys did not resolve the problem. This did resolve the messages in the Application log however.
The real problem, which I did not clearly state was that no data was being moved from the BizTalkMessageBoxDb to the BAMPrimaryImport database. I incorrectly assumed that access to the registy was the problem, but it was not. We were able to figure out that the probelm was configuration related.
We needed to create a w3wp.exe.config file. This file contains configuration information for .Net applications running in an application pool. Placing the following text into this file resolved the issue and data is now flowing into BAMPrimaryImport as expected:
<appSettings> <!-- These settings must be made available to the BizTalkRuntime. --> <!-- This can be accomplished in two ways: --> <!-- 1. Add the contents of this appSettings node to %SYSTEMROOT%\Microsoft.NET\Framework\v2.0.50727\config\machine.config --> <!-- 2. Add the contents of this appSettings node to: --> <!-- A. %SYSTEMROOT%\system32\inetsrv\w3wp.exe.config --> <!-- B. %PROGRAMFILES%\Microsoft BizTalk Server 2006\BTSNTSVC.EXE.config --> <!-- Note: If a config file does not have a appSettings node, add one. --> <!-- Otherwise, add the contents of this appSettings node to the existing appSettings node --> <!-- This connection string is used by the BAM Observers --> <!-- It MUST point to the BAM Primary Import Database --> <add key="BAMDatabaseConnectionString" value="Server=<SERVERNAME\INSTANC-ENAME>;Database=BAMPrimaryImport;Trusted_Connection=True;" /> <!-- These keys enable the eHub BAM Observers --> <!-- Notice that the value of these keys reference the strong name of each observer. --> <!-- The strong name includes the observer assembly version number. --> <!-- These strong names/version numbers must be adjusted in accordance with changes made to eHub's code base (new version numbers) --> <add key="eHubObserver01" value="eHub.Hub.ObservationModel.ReceivePublicationMessageBAMObserver, eHub.Hub.ObservationModel, Version=3.2.0.0, Culture=Neutral, PublicKeyToken=95e40461a5ba22b5" /> <add key="eHubObserver02" value="eHub.Hub.ObservationModel.ReceiveSubscriptionResponseBAMObserver, eHub.Hub.ObservationModel, Version=3.2.0.0, Culture=Neutral, PublicKeyToken=95e40461a5ba22b5" /> <add key="eHubObserver03" value="eHub.Hub.ObservationModel.SendPublicationResponseBAMObserver, eHub.Hub.ObservationModel, Version=3.2.0.0, Culture=Neutral, PublicKeyToken=95e40461a5ba22b5" /> <add key="eHubObserver04" value="eHub.Hub.ObservationModel.SendSubscriptionMessageBAMObserver, eHub.Hub.ObservationModel, Version=3.2.0.0, Culture=Neutral, PublicKeyToken=95e40461a5ba22b5" /> <add key="eHubObserver05" value="eHub.Hub.ObservationModel.ErrorProcessingBAMObserver, eHub.Hub.ObservationModel, Version=3.2.0.0, Culture=Neutral, PublicKeyToken=95e40461a5ba22b5" /> </appSettings>
<appSettings>
<!-- These settings must be made available to the BizTalkRuntime. -->
<!-- This can be accomplished in two ways: -->
<!-- 1. Add the contents of this appSettings node to %SYSTEMROOT%\Microsoft.NET\Framework\v2.0.50727\config\machine.config -->
<!-- 2. Add the contents of this appSettings node to: -->
<!-- A. %SYSTEMROOT%\system32\inetsrv\w3wp.exe.config -->
<!-- B. %PROGRAMFILES%\Microsoft BizTalk Server 2006\BTSNTSVC.EXE.config -->
<!-- Note: If a config file does not have a appSettings node, add one. -->
<!-- Otherwise, add the contents of this appSettings node to the existing appSettings node -->
<!-- This connection string is used by the BAM Observers -->
<!-- It MUST point to the BAM Primary Import Database -->
<add key="BAMDatabaseConnectionString" value="Server=<SERVERNAME\INSTANC-ENAME>;Database=BAMPrimaryImport;Trusted_Connection=True;" />
<!-- These keys enable the eHub BAM Observers -->
<!-- Notice that the value of these keys reference the strong name of each observer. -->
<!-- The strong name includes the observer assembly version number. -->
<!-- These strong names/version numbers must be adjusted in accordance with changes made to eHub's code base (new version numbers) -->
<add key="eHubObserver01" value="eHub.Hub.ObservationModel.ReceivePublicationMessageBAMObserver, eHub.Hub.ObservationModel, Version=3.2.0.0, Culture=Neutral, PublicKeyToken=95e40461a5ba22b5" />
<add key="eHubObserver02" value="eHub.Hub.ObservationModel.ReceiveSubscriptionResponseBAMObserver, eHub.Hub.ObservationModel, Version=3.2.0.0, Culture=Neutral, PublicKeyToken=95e40461a5ba22b5" />
<add key="eHubObserver03" value="eHub.Hub.ObservationModel.SendPublicationResponseBAMObserver, eHub.Hub.ObservationModel, Version=3.2.0.0, Culture=Neutral, PublicKeyToken=95e40461a5ba22b5" />
<add key="eHubObserver04" value="eHub.Hub.ObservationModel.SendSubscriptionMessageBAMObserver, eHub.Hub.ObservationModel, Version=3.2.0.0, Culture=Neutral, PublicKeyToken=95e40461a5ba22b5" />
<add key="eHubObserver05" value="eHub.Hub.ObservationModel.ErrorProcessingBAMObserver, eHub.Hub.ObservationModel, Version=3.2.0.0, Culture=Neutral, PublicKeyToken=95e40461a5ba22b5" />
</appSettings>