Too Many Disconnected Sessions

Citrix.PresentationServer.DisconnectedSessions.PerformanceMonitor (UnitMonitor)

Monitors the number of disconnected Citrix sessions on a Citrix managed server

Knowledge Base article:

Citrix ® Management Pack

Summary

A high number of disconnected sessions has been found on this server. This may degrade the server's performance.

 
Causes

Disconnected sessions consume server resources. A high number of disconnected sessions can therefore affect the server's performance.

 
Resolutions

If the server shows degraded performance due to a high number of disconnected sessions, use the Microsoft Terminal Services Configuration utility to automatically terminate disconnected sessions after a specified period of time. Caution: This method may result in users losing unsaved data in disconnected sessions.

If disconnected sessions are building up only on certain servers in the farm, use load balancing to distribute connections evenly among servers. For more information about load balancing, see the Load Manager Administrator's Guide and the online help for the Presentation Server Console.

 
External Knowledge Sources

The following sources of information can be helpful when dealing with this alert:

Or search the Citrix knowledge base for more information.

 
Other Information

The number of disconnected sessions is a coarse indicator of server load, because server load is also influenced by other factors such as active sessions and the type of applications running in sessions.

This monitor is disabled by default because the number of disconnected sessions a server can support without performance degradation depends on the hardware and software in your installation.

Caution: When enabled, this alert applies globally to all managed servers in the farm. This assumes all servers have the same capacity for disconnected sessions.

Note that there is a similar alert for the number of active sessions.

 
© 2002-2008 Citrix Systems, Inc. All rights reserved.

Element properties:

TargetCitrix.PresentationServer.ManagedServer
Parent MonitorCitrix.PresentationServer.Connections.PerformanceState
CategoryAvailabilityHealth
EnabledTrue
Instance NameMetaFrame_Server
Counter NameNumberOfDisconnectedSessions
Frequency1800
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.WmiBased.Performance.ThresholdMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Too many disconnected sessions
The number of disconnected sessions on this server is high.
RunAsCitrix.PresentationServer.CitrixAdministratorAccount

Source Code:

<UnitMonitor ID="Citrix.PresentationServer.DisconnectedSessions.PerformanceMonitor" Accessibility="Public" Enabled="true" Target="Citrix.PresentationServer.ManagedServer" ParentMonitorID="Citrix.PresentationServer.Connections.PerformanceState" Remotable="true" Priority="Normal" RunAs="CtxLibrary!Citrix.PresentationServer.CitrixAdministratorAccount" TypeID="Windows!Microsoft.Windows.WmiBased.Performance.ThresholdMonitorType" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Citrix.PresentationServer.DisconnectedSessions.PerformanceMonitor.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Success" MonitorTypeStateID="UnderThreshold" HealthState="Success"/>
<OperationalState ID="Warning" MonitorTypeStateID="OverThreshold" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<NameSpace>\\$Target/Host/Property[Type='Windows!Microsoft.Windows.Computer']/NetworkName$\root\Citrix</NameSpace>
<Query>SELECT * FROM MetaFrame_Server WHERE ServerName="$Target/Host/Property[Type='Windows!Microsoft.Windows.Computer']/NetbiosComputerName$"</Query>
<Frequency>1800</Frequency>
<ObjectName>MetaFrame_Server</ObjectName>
<CounterName>NumberOfDisconnectedSessions</CounterName>
<InstanceName>$Target/Property[Type='CtxLibrary!Citrix.Library.ServerApplication']/Name$</InstanceName>
<Value>$Data/Property[@Name='NumberOfDisconnectedSessions']$</Value>
<Threshold>100.00</Threshold>
</Configuration>
</UnitMonitor>