Message Queuing could not access Active Directory and failed to compute routing path for messages sent to queue. Messages will wait in the outgoing queue until connection with Active Directory is restored.
Message Queuing could not access Active Directory and failed to compute routing path for messages sent to queue. Messages will wait in the outgoing queue until connection with Active Directory is restored.
Message Queuing was not able to join the domain or MSMQ Routing failed because of domain connectivity issues. This error might be caused by one of the following conditions:
Stale objects in Active Directory Domain Services (ADÂ DS) are preventing Message Queuing from joining the domain.
The computer does not have connectivity and cannot join a domain.
Appropriate permissions are needed to create and access objects.
To perform these procedures, you must have membership in Administrators, or you must have been delegated the appropriate authority.
Stale objects in ADÂ DS are preventing Message Queuing from joining the domain
To confirm the presence of stale computer objects:
Click Start, point to Administrative Tools, right-click Active Directory Users and Computers,and then clickRun as administrator.
On the View menu, ensure that Users, Contacts, Groups and Computers as containers is selected and that Advanced Features is selected.
Browse to the particular computer. Check whether there are Message Queuing objects present under that computer.
If there are Message Queuing objects and Message Queuing with Active Directory integration is not installed on that particular computer, these objects are stale.
If you determine that there are stale objects, see the section titled "Remove stale Active Directory objects."
The Computer does not have connectivity and cannot join a domain.
If your computer does not have network or domain connectivity, see the section titled “Contact Microsoftâ€
Appropriate permissions are needed to create and access objects
To confirm that the user who is installing Message Queuing is a domain user and is a member of the local administrator group:
Open the Computer Management snap-in. To open Computer Management, click Start. In the search box, type compmgmt.msc, and then press ENTER.
In the console tree, expand System Tools, and then expand Local Users and Groups.
In the details pane, double-click Administrators, and then confirm that the user is member of this group.
If you determine that the user does not have the appropriate permissions, see the section titled "Grant appropriate permissions."
"
To resolve this issue, use the resolution that corresponds to the cause you identified in the Cause section. After performing the resolution, see the Verify section to confirm that the feature is operating properly
Cause | Resolution |
Active Directory Domain Services has stale objects | |
Appropriate permissions have not been granted | |
The computer has no connectivity or is not joined to domain |
Remove stale Active Directory objects
Stale objects can prevent the MSMQ Service from operating properly. Deleting stale objects may solve this problem. However, deleting a computer object in Active Directory Domain Services (AD DS) can cause problems on the client computer. Before deleting the computer object, make sure that no services running on the client computer will be affected. In this case, deleting the Message Queuing Active Directory object will delete public queues on that computer.
You must have the Active Directory services tools installed in Role Administration tools under Remote Server Administration.
To perform these procedures, you must have membership in Administrators, or you must have been delegated the appropriate authority.
Confirm that Active Directory services and control components are installed
To confirm that Active Directory services and control components are installed properly:
Click Start, point to Administrative Tools, right-click Active Directory Users and Computers, and then click Run as administrator.
Confirm that the following Active Directory tools appear in the list:
Active Directory Domains and Trusts
Active Directory Sites and Services
Active Directory Users and Computers
Delete stale computer objects
To delete stale computer objects:
Click Start, point to AdministrativeTools, right-click Active Directory Users and Computers, and then click Run as administrator.
On the View menu, ensure that Users, Contacts, Groups and Computers as containers is selected and that Advanced Features is selected.
Browse to the particular computer. Check whether there are Message Queuing objects present under that computer.
If there are Message Queuing objects and Message Queuing with Active Directory integration is not installed on that particular computer, these objects are stale. Delete the particular Message Queuing Active Directory object, and then restart the MSMQ Service or, if necessary, restart the computer.
Grant appropriate permissions
Message Queuing may not be able to create Active Directory objects if the account it is running under does not have appropriate permissions. Check the following:
Confirm that the user who is installing Message Queuing is a domain user as well as a member of the local administrators group.
Confirm that the proper Active Directory service tools are installed.
If the account is a domain user, contact your domain administrator to check privileges.
If you have the appropriate permissions, grant the Message Queuing user account permission to modify child objects.
To perform these procedures, you must have membership in Administrators, or you must have been delegated the appropriate authority.
Confirm that the user who is installing Message Queuing is a domain user and a member of local administrators group
To confirm that the user who is installing Message Queuing is a domain user and a member of the local administrators group:
Open the Computer Management console. To open Computer Management, click Start. In the search box, type compmgmt.msc, and then press ENTER.
In the console tree, expand System Tools, expand Local Users and Groups, and then click Groups.
In the details pane, double-click Administrators.
In the Members section, confirm that the user is member of this group. If the user is not a member of the administrators group, add the user to the group.
Confirm that the proper Active Directory service tools are installed
To confirm that the proper Active Directory service tools are installed:
Click Start, point to Administrative Tools, right-click Active Directory Users and Computers, and then click Run as administrator.
Ensure that the following Active Directory tools appear in the list:
Active Directory Domains and Trusts
Active Directory Sites and Services
Active Directory Users and Computers
Grant the Message Queuing user account permission to modify child objects
If you have the appropriate permissions, use the following procedure to grant the Message Queuing user account permission to create and delete child objects. You must have the Active Directory services and control components installed in Role Administration Tools under the Remote Server Administration feature.
To grant Message Queuing user account permissions:
Click Start, point to Administrative Tools, right-click Active Directory Users and Computers, and then click Run as administrator.
On the View menu, ensure that Users, Contacts, Groups and Computers as containers is selected and that Advanced Features is selected.
Right-click the name of your computer, and then click Properties.
On the Security tab, make sure that the user is a part of a group that has permission to create and delete child objects.
For more information about the correct access control settings, see your Active Directory documentation.
Contact Microsoft
If possible, consult with your domain administrator by providing the error description in the event.
If you continue to get this error, note any details in the event message, and then contact Microsoft Customer Service and Support (CSS). For information about how to contact CSS, see Enterprise Support ( http://go.microsoft.com/fwlink/?LinkId=52267).
Verify
If you continue to get this error, note any details in the event message, and then contact Microsoft Customer Service and Support (CSS). For information about how to contact CSS, see Support Options from Microsoft Services ( http://go.microsoft.com/fwlink/?LinkId=52267).
For more information, see Event ID 2188 ( http://technet.microsoft.com/en-us/library/dd337487(WS.10).aspx)
Target | Microsoft.MSMQ.6.3.Servers | ||
Category | AvailabilityHealth | ||
Enabled | False | ||
Event_ID | 2188 | ||
Event Source | $Target/Property[Type="Microsoft.MSMQ.6.3.ServerRole"]/ServiceName$ | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Remotable | True | ||
Alert Message |
| ||
Event Log | Application |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
DS | DataSource | Microsoft.Windows.EventProvider | Default |
Alert | WriteAction | System.Health.GenerateAlert | Default |
<Rule ID="Microsoft.MSMQ.6.3.Rule.Alert.Event2188" Enabled="false" Target="Microsoft.MSMQ.6.3.Servers" ConfirmDelivery="true" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>AvailabilityHealth</Category>
<DataSources>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">2188</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">$Target/Property[Type="Microsoft.MSMQ.6.3.ServerRole"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="Alert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertName/>
<AlertDescription/>
<AlertOwner/>
<AlertMessageId>$MPElement[Name="Microsoft.MSMQ.6.3.Rule.Alert.Event2188.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventDisplayNumber$</SuppressionValue>
<SuppressionValue>$Data/LoggingComputer$</SuppressionValue>
</Suppression>
<Custom1/>
<Custom2/>
<Custom3/>
<Custom4/>
<Custom5/>
<Custom6/>
<Custom7/>
<Custom8/>
<Custom9/>
<Custom10/>
</WriteAction>
</WriteActions>
</Rule>