Broker Service DB Connectivity

Free.Edition.MetrixInsight.EndUserComputing.Citrix.CVAD.Monitor.Controller.ControllerServiceDBConnectivity.CitrixBrokerService (UnitMonitor)

Monitors Broker Service database connectivity.

Knowledge Base article:

Summary

Monitors if the Citrix Broker service has proper connectivity to its database.

The Citrix Broker service is a core part of a Citrix Delivery Controller deployment and is responsible for providing the site configuration and brokering the connections to published applications and desktops from the site configuration database.

Causes

The monitor can report a failure for many reasons, including:

Resolutions

Check the Application log within Windows Logs in the Windows event viewer for detailed error messages.

Element properties:

TargetFree.Edition.MetrixInsight.EndUserComputing.ControlLayer.Citrix.DeliveryController.WindowsService.CitrixBrokerService
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.2SingleEventLog2StateMonitorType
RemotableTrue
AccessibilityInternal
Alert Message
The service {0} has lost connection to its database

{1}
See knowledge section for more details.
RunAsDefault

Source Code:

<UnitMonitor ID="Free.Edition.MetrixInsight.EndUserComputing.Citrix.CVAD.Monitor.Controller.ControllerServiceDBConnectivity.CitrixBrokerService" Accessibility="Internal" Enabled="true" Target="Free.Edition.MetrixInsight.EndUserComputing.ControlLayer.Citrix.DeliveryController.WindowsService.CitrixBrokerService" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.2SingleEventLog2StateMonitorType" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Free.Edition.MetrixInsight.EndUserComputing.Citrix.CVAD.Monitor.Controller.ControllerServiceDBConnectivity.CitrixBrokerService.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="System!System.Entity"]/DisplayName$</AlertParameter1>
<AlertParameter2>$Data/Context/EventDescription$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="FirstEventRaised" MonitorTypeStateID="FirstEventRaised" HealthState="Error"/>
<OperationalState ID="SecondEventRaised" MonitorTypeStateID="SecondEventRaised" HealthState="Success"/>
</OperationalStates>
<Configuration>
<FirstComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</FirstComputerName>
<FirstLogName>Application</FirstLogName>
<FirstExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">1201</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">$Target/Property[Type="System!System.Entity"]/DisplayName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</FirstExpression>
<SecondComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</SecondComputerName>
<SecondLogName>Application</SecondLogName>
<SecondExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">1200</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">$Target/Property[Type="System!System.Entity"]/DisplayName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</SecondExpression>
</Configuration>
</UnitMonitor>