monitoring server performance

134
Citrix Presentation Server™ 4.5 Citrix Access Suite™ Monitoring Server Performance with Citrix Presentation Server For other guides in this document set, go to the Document Center .

Upload: gideon

Post on 18-Nov-2014

973 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Monitoring Server Performance

Citrix Presentation Server™ 4.5Citrix Access Suite™

Monitoring Server Performance with Citrix Presentation ServerFor other guides in this document set, go to the Document Center.

Page 2: Monitoring Server Performance

Copyright and Trademark NoticeUse of the product documented in this guide is subject to your prior acceptance of the End User License Agreement. A printable copy of the End User License Agreement is included on your product CD-ROM.

Information in this document is subject to change without notice. Companies, names, and data used in examples herein are fictitious unless otherwise noted. No part of this document may be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose, without the express written permission of Citrix Systems, Inc.

© 1999-2006 Citrix Systems, Inc. All rights reserved.

Citrix, ICA (Independent Computing Architecture), Program Neighborhood, Presentation Server, and Citrix Access Suite are registered trademarks, and SpeedScreen are trademarks of Citrix Systems, Inc. in the United States and other countries.

RSA Encryption © 1996-1997 RSA Security Inc., All Rights Reserved.

Clients for Windows: Portions of this software are based on code owned and copyrighted by O'Reilly Media, Inc. 1998. (CJKV Information Processing, by Ken Lunde. ISBN: 1565922247.) All rights reserved.

Licensing: Portions of this documentation that relate to Globetrotter, Macrovision, and FLEXlm are copyright © 2005 Macrovision Corporation. All rights reserved.

OpenSSL includes cryptographic software written by Eric Young ([email protected]). This product includes software written by Tim Hudson ([email protected]).

Trademark AcknowledgementsAdobe, Acrobat, and PostScript are trademarks or registered trademarks of Adobe Systems Incorporated in the U.S. and/or other countries.

This product includes software developed by The Apache Software Foundation (http://www.apache.org/).

Apple, Mac, Macintosh, and Mac OS are registered trademarks or trademarks of Apple Computer Inc.

DB2, Tivoli, and NetView are registered trademarks, and PowerPC is a trademark of International Business Machines Corp. in the U.S. and other countries.

HP OpenView is a trademark of the Hewlett-Packard Company.

Java, Sun, and SunOS are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries. Solaris is a registered trademark of Sun Microsystems, Inc. Sun Microsystems, Inc has not tested or approved this product.

Portions of this software are based in part on the work of the Independent JPEG Group.

Portions of this software contain imaging code owned and copyrighted by Pegasus Imaging Corporation, Tampa, FL. All rights reserved.

Macromedia and Flash are trademarks or registered trademarks of Macromedia, Inc. in the United States and/or other countries.

Microsoft, MS-DOS, Windows, Windows Media, Windows Server, Windows NT, Win32, Outlook, ActiveX, Active Directory, and DirectShow are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.

Netscape and Netscape Navigator are registered trademarks of Netscape Communications Corp. in the U.S. and other countries.

Novell Directory Services, NDS, and NetWare are registered trademarks of Novell, Inc. in the United States and other countries. Novell Client is a trademark of Novell, Inc.

RealOne is a trademark of RealNetworks, Inc.

SpeechMike is a trademark of Koninklijke Philips Electronics N.V.

Unicenter is a registered trademark of Computer Associates International, Inc.

UNIX is a registered trademark of The Open Group.

Licensing: Globetrotter, Macrovision, and FLEXlm are trademarks and/or registered trademarks of Macrovision Corporation.

All other trademarks and registered trademarks are the property of their respective owners.

Document Code: October 25, 2006 (AO)

Page 3: Monitoring Server Performance

CONTENTSDocument Center

Contents

Chapter 1 IntroductionOverview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7New in this Release. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7About this Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8Accessing Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8Introducing the Monitoring Tools and Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . .9

Monitoring Servers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11Monitoring Your Server Farm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11Identifying, Diagnosing, and Solving Problems. . . . . . . . . . . . . . . . . . . . . . . . .11Gauging and Justifying Future Resource Needs. . . . . . . . . . . . . . . . . . . . . . . . .11Planning and Scaling Your Server Farm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11Billing Users for Resource Usage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12Delegating Administration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12Reporting on Performance and Activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12

What to Read Next . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14

Chapter 2 Installing Your Monitoring and Reporting ToolsOverview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15Software Requirements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15

Licensing Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16Installing Resource Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16

Before You Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16If You Are Upgrading from a Previous Version . . . . . . . . . . . . . . . . . . . . . . . .17Installing or Upgrading Resource Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . .17Uninstalling Resource Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18

Setting up a Summary Database. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19Setting a System Data Source Name. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20Configuring a Database Connection Server . . . . . . . . . . . . . . . . . . . . . . . . . . . .22Turning the Summary Database On . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23Turning the Summary Database Off . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24

Page 4: Monitoring Server Performance

4 Monitoring Server Performance with Citrix Presentation Server Document Center

Displaying Resource Manager and its Components . . . . . . . . . . . . . . . . . . . . . . . .25Displaying the Resource Manager Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26Displaying Resource Manager for the Entire Server Farm . . . . . . . . . . . . . . . .26Displaying Resource Manager for a Single Server. . . . . . . . . . . . . . . . . . . . . . .27Displaying the Applications in a Server Farm . . . . . . . . . . . . . . . . . . . . . . . . . .27

Changing the Location of Resource Manager after Installation . . . . . . . . . . . . . . .27

Chapter 3 Configuring MetricsOverview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29

Metrics and Instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30Configuring a Set of Metrics for Specific Servers . . . . . . . . . . . . . . . . . . . . . . . . . .31Creating a Default Set of Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32Farm Performance Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32Configuring Application Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33Suspending Notification of a Metric’s Status. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34Getting More Information about Metrics and Monitoring. . . . . . . . . . . . . . . . . . . .34

Chapter 4 Viewing Monitoring InformationCurrent State of All Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35Metrics that Breach Thresholds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36Graphs of Metric Values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38Creating Custom Metrics Displays. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39Resource Manager Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39Additional Alert Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40Custom Displays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42

Chapter 5 Alerting Administrators to Poor Server PerformanceSources of Alerts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44Preparing Your System for Email Alerts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44

Using MAPI to Send Alerts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45Selecting the MAPI Connection Servers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45Creating an Email Profile for Resource Manager. . . . . . . . . . . . . . . . . . . . . . . .45Enabling the Resource Manager MAPI Mail Service . . . . . . . . . . . . . . . . . . . .46Configuring Resource Manager to Use MAPI Email Alerts . . . . . . . . . . . . . . .46Setting up SSL for SMTP Email Alerts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47

Preparing Your System for SMS Alerts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47Configuring Resource Manager to Use SMS . . . . . . . . . . . . . . . . . . . . . . . . . . .48

Preparing Your System for SNMP Alerts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .48Running a Script when an Alert Threshold Is Breached . . . . . . . . . . . . . . . . . . . . .49

Page 5: Monitoring Server Performance

5 Monitoring Server Performance with Citrix Presentation Server Document Center

Receiving Failed Import Alerts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .50Receiving License Server Connection Failure Alerts . . . . . . . . . . . . . . . . . . . . . . .50

Chapter 6 Recording the History of Servers and ApplicationsOverview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51Resource Manager and the Summary Database. . . . . . . . . . . . . . . . . . . . . . . . . . . .51What Information Should I Record in the Database? . . . . . . . . . . . . . . . . . . . . . . .53

Issues to Consider when Selecting Database Information . . . . . . . . . . . . . . . . .53Selecting Server and Application Metrics to Record in the Database . . . . . . . .54Reducing Summary Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .54

Scheduling Summary Data Collection and Removal. . . . . . . . . . . . . . . . . . . . . . . .55Ignoring Server Metrics during Periods of Low Server Activity. . . . . . . . . . . .55Removing Unwanted Information from the Database . . . . . . . . . . . . . . . . . . . .55Setting the Summary Database Update Time. . . . . . . . . . . . . . . . . . . . . . . . . . .57

Monitoring the Status of the Summary Database . . . . . . . . . . . . . . . . . . . . . . . . . .57Managing the Resource Manager Summary Database . . . . . . . . . . . . . . . . . . . . . .60

Estimating Summary Database Growth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .60

Chapter 7 Reporting and Analyzing Monitoring InformationOverview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .65Report Center Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .65

About Report Jobs and Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .66Resource Manager Reports. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .67

Creating Reports on Current Activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .68Creating Reports on Past Activity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .74

Displaying Reports from Servers in Different Time Zones or Locales. . . . . . . . . .83What if a Reporting Server Is in a Different Time Zone? . . . . . . . . . . . . . . . . .83What if a Reporting Server Uses a Different Language? . . . . . . . . . . . . . . . . . .84

Estimating the Concurrent User Capacity of a Server . . . . . . . . . . . . . . . . . . . . . . .84

Chapter 8 Billing Users for Resource UsageOverview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .87Creating a Fee Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .87Organizing Users into Cost Centers for Billing . . . . . . . . . . . . . . . . . . . . . . . . . . . .88Producing Billing Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .88

Cost Center Reports. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .88Domain User Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .89Information Presentation in the Report. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .89

Page 6: Monitoring Server Performance

6 Monitoring Server Performance with Citrix Presentation Server Document Center

Appendix A Default Metric SetOverview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .91Default Set of Metrics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .91

Citrix MetaFrame Presentation Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .91Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .93Network Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .93Paging File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .94Processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .94System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .94Terminal Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .94

Appendix B Summary Database SchemaOverview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .95Database Entity Relationship Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .95Database Entity Table Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97

Alert History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97Application History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .98Application Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .99Client History. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101Connection History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .102Event Log. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .103Configurable Server Metrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .104Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .105User Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .108Version Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .110Support and Look-Up Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .111

SQL Data Type Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .125String length table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .126Approximate Row Sizes for SDB Tables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .127

Page 7: Monitoring Server Performance

CHAPTER 1Document Center

Introduction

OverviewThis chapter introduces you to the monitoring, reporting and alerting tools available with Presentation Server. Topics include:

• How to use this guide

• Where to find associated documentation

• An introduction to monitoring concepts, the tools, what they can do, and how you can use them

New in this ReleaseThe following features are new for Citrix Presentation Server 4.5:

• User-defined sets of server performance metrics to monitor and alert on (as described in “Configuring a Set of Metrics for Specific Servers” on page 31).

• Storage of alerts in the summary database, and reporting on this data in the form of charts and tabulated listings (reporting is dealt with in Chapter 7, “Reporting and Analyzing Monitoring Information”).

• An upper limit on the number of alerts raised on servers (this feature is described in “Metrics that Breach Thresholds” on page 36. Configuration is described in the Advanced Concepts Guide.)

• Custom performance data tasks enabling you to monitor visually any configured performance metric in your farm using the Dashboard snap-in to the Access Management Console.

• Support for French, Spanish, and German accented characters for summary database and mail server user names and passwords.

Page 8: Monitoring Server Performance

8 Monitoring Server Performance with Citrix Presentation Server Document Center

About this GuideThis guide is for administrators responsible for installing, configuring, and maintaining Citrix Presentation Server.

This guide is designed to introduce you to the key monitoring and reporting concepts of Citrix Presentation Server, and to get you started quickly and easily. This chapter introduces the documentation and monitoring features available in the Access Management Console and Presentation Server Console. Subsequent chapters provide an overview of how to deploy and configure these features, and provide you with a summary of the main ways you can use them in your deployment.

This guide assumes knowledge of Citrix Presentation Server, the Microsoft Management Console (MMC), and the concept of its snap-ins. If you will be recording the history of server and application metrics using the summary database, you need to be familiar with Microsoft SQL Server or Oracle DBMS.

For detailed information about how to carry out the procedures outlined in this guide, see the Access Management Console and Resource Manager help systems.

Accessing DocumentationThis administrator’s guide is part of the Citrix Presentation Server documentation set. The documentation set includes online guides that correspond to different features of Citrix Presentation Server. Online documentation is provided as Adobe Portable Document Format (PDF) files.

Use the Document Center to access the complete set of online guides. The Document Center is a PDF file (document_center.pdf) that provides a single point of access to the documentation, and enables you to go straight to the information that you need. The Document Center includes:

• A list of common tasks and a link to each item of documentation.

• A search function that covers all the PDF guides. This is useful when you need to consult a number of different guides.

• Cross-references among documents. You can move among documents as often as you need using the links to other guides and the links to the Document Center.

• Information about terminology related to Presentation Server in the Citrix Presentation Server Glossary.

Page 9: Monitoring Server Performance

Chapter 1 Introduction 9Document Center

You can find the Document Center in the \Documentation folder of your product CD-ROM.

To access the guides without using the Document Center, you can navigate to the component PDF files using Microsoft Windows Explorer. If you prefer to use printed documentation, you can also print each guide from Adobe Reader.

More information about Citrix documentation, and details about how to obtain further information and support, is included in Getting Started with Citrix Presentation Server.

To provide feedback about the documentation, go to http://www.citrix.com/ and click Support > Knowledge Center > Product Documentation. To access the feedback form, click the Submit Documentation Feedback link.

Introducing the Monitoring Tools and ConceptsYou can use the management components of Presentation Server to manage resources on single or multiple computers running other instances of Citrix Presentation Server. These tools enable you to collect, display, store, and analyze data about system performance, application or process use, and user activity.

These tools are:

• Resource Manager , configured in the Presentation Server Console, which tracks and stores information about a wide variety of system and network processes and events. These are known as metrics. If the value of a metric falls outside normal limits, Resource Manager can inform you. When installed, it automatically creates a set of default metrics and assigns limits to define the normal operation of each one.

• Dashboard, a Citrix snap-in to the Access Management Console, which gives you displays of metric data in tabular and graph formats to help you monitor server performance and help diagnose server issues.

Important To view, search, and print the PDF documentation, you need to have the Adobe Reader 5.0.5 or a later version with Search. You can download Adobe Reader for free from Adobe Systems’ Web site at http://www.adobe.com/.

Note Resource Manager can track most Windows Performance Monitor counters as server metrics. Further information about these counters is available in the Citrix Presentation Server Administrator’s Guide and the Microsoft Windows Help for Performance Monitor.

Page 10: Monitoring Server Performance

10 Monitoring Server Performance with Citrix Presentation Server Document Center

Using Dashboard you can:

• Configure groups of metrics called monitoring profiles and assign them to servers.

• View real-time data such as performance data and Resource Manager metrics.

• View historical data such as event logs and Resource Manager server logs.

• View metric graphs as a function of time. Graphs update every 15 seconds. To get detailed information, you can zoom in and out of the graphs, and create a “snapshot” report of metric values for any time on the graph.

For further information about displaying metric data, see “Viewing Monitoring Information” on page 35.

• Report Center, a Citrix snap-in to the Access Management Console, that enables you to analyze and report on various aspects of your deployment using records of system activity. You can create reports about current activities or past activities using a summary database.

For example, you can compare quarterly data for server uptime, CPU utilization, or application availability with agreed figures in a service level agreement.

• My Knowledge, a Citrix snap-in to the Access Management Console, which makes available the Suite Monitoring and Alerting alerts and context-sensitive information about them, to help you understand their meaning and impact so that you can take appropriate actions. Information about Suite Monitoring and Alerting alerts and other alert types is in “Sources of Alerts” on page 44.

Two types of context-sensitive information are available:

• Knowledge articles provided by Citrix

• Knowledge articles provided by your company

For further information about displaying knowledge articles, see “Additional Alert Information” on page 40.

My Knowledge also gives you additional alerts that you can choose to be raised in certain server and farm conditions.

Common tasks that you might use these tools for are outlined below.

Page 11: Monitoring Server Performance

Chapter 1 Introduction 11Document Center

Monitoring ServersTo make it easier to manage the configuration of large farms, the Access Management Console provides monitoring profiles and the default monitoring features. Both of these features enable you to define a complete monitoring configuration. If one or more servers is assigned to use a monitoring profile, it monitors all the metrics that profile defines. Any server that is not associated with a monitoring profile and is capable of monitoring itself is automatically associated with the default configuration.

You can export a monitoring profile configuration to a file and then import the configuration into other farms.

Monitoring Your Server FarmAs well as monitoring at a server level, you can track and analyze system performance, loading, and user behavior for a farm as a whole.

You can view information about an entire server farm, analyze individual servers and applications, or monitor specific aspects of performance.

By fine-tuning the monitoring process, you can customize the information that Presentation Server provides to suit your specific environment.

Identifying, Diagnosing, and Solving ProblemsResource Manager can warn you about any developing problems in your environment. If a problem does occur, you can analyze the relevant data to help you decide what action to take.

Gauging and Justifying Future Resource NeedsYou can produce reports about system usage that help you identify requirements for future resources, such as new servers or additional licenses.

Planning and Scaling Your Server FarmBy monitoring a pilot system, you can gauge how the server farm will perform in different possible scenarios. This will help you to scale your network, set baselines, and spot potential problems before they affect the final installation. For example, you can evaluate whether or not a particular server can support the activity of the desired number of users.

Note Servers running versions of Presentation Server older than 4.5 cannot be associated with a monitoring profile. However, you can still use the Presentation Server Console to configure custom performance metrics for these servers.

Page 12: Monitoring Server Performance

12 Monitoring Server Performance with Citrix Presentation Server Document Center

Billing Users for Resource UsageYou can produce Billing reports that use the resource usage data from the summary database and a fee profile to calculate the charges for users of the server farm. You define fee profiles to reflect different charging rates and currencies. When Resource Manager generates a Billing report, it calculates the charges by multiplying the resources used during the report period by the associated fees.

Delegating AdministrationYou can delegate the tasks of controlling applications and analyzing system and application data to custom administrators. For more information about delegated administration, see the Citrix Presentation Server Administrator’s Guide.

To simplify the configuration of custom administrators, full administrators may find it easier to first create a suitable folder hierarchy and then create custom administrators with the necessary permissions. You create custom administrators using the Add Citrix Administrator wizard in the Access Management Console.

For administrating monitoring you can:

• Delegate the control of Resource Manager applications to custom administrators. A Resource Manager application is not published by Citrix Presentation Server but is still recognized by the Resource Manager system. Details about how to set up Resource Manager applications are provided in the Resource Manager online help.

• Determine which custom administrators can generate current reports, summary reports, or billing reports.

• Determine which custom administrators can view monitoring information, configure My Knowledge, and monitoring defaults and profiles, and apply them to servers.

• Ensure that administrators receive alerts only for those servers for which they have responsibility.

Reporting on Performance and ActivityWith Report Center, you can create reports easily from a variety of real-time and historical data sources using wizards that help you specify the type of report, the data to be displayed, and the schedule for running the report. You can control the details displayed in the reports that you create, view report status information, and reuse your reports at a later date.

Page 13: Monitoring Server Performance

Chapter 1 Introduction 13Document Center

Report TypesEach report that you create in Report Center is based on a specific report type. Report types are supplied by Citrix and define the type of data that is contained in your report. When you create a report, it is based both on the type of data defined by the report type and on the selections that you make. For example, the Application Usage report type describes how often published applications are accessed. If you create an Application Usage report, it contains data about the published applications that you select, in the farm and for the time period that you specify.

Report Center has several report types that should cover most of your reporting needs.

JobsEach report that you create is listed as a job. Jobs can have various states including Running, Completed, and Error. Use the Jobs display to check the status of your report, view completed reports, and rerun reports.

SpecificationsA specification encapsulates the details that are used to run a report, including all of the items you selected and the publishing details (the output format and how the report is saved and distributed to others). This makes it easy to reuse the report later. If you plan to rerun a report with the same selections on a regular basis, creating a specification for the report saves you time when you want to rerun it because the details are stored so you don’t have to specify them again.

You create a specification from a report type either directly (using the Generate Specification wizard) or as part of the process of creating a report (using the Generate Report wizard, when you are given the choice of saving the report details as a specification).

You run a report that is based on a specification either manually from the Specifications display or using a schedule.

SchedulesTo run a report at a specific time or times, the report must have a specification. After you creat a specification for it, schedule the report from the Specifications display.

Report Center uses Microsoft Task Scheduler to generate and run schedules.

Page 14: Monitoring Server Performance

14 Monitoring Server Performance with Citrix Presentation Server Document Center

What to Read NextThis guide provides:

• Installation instructions.

• An overview of the monitoring tasks that you carry out using the tools described in this chapter. For step-by-step instructions about how to carry out Resource Manager tasks, see the online help.

• Detailed information on monitoring tasks that you carry out using other tools or products.

• Reference information.

To find Refer to

Installation instructions Chapter 2: “Installing Your Monitoring and Reporting Tools”

How to configure your performance monitoring

Chapter 3: “Configuring Metrics”

How to display performance data Chapter 4: “Viewing Monitoring Information”

How to get notified when performance drops

Chapter 5: “Alerting Administrators to Poor Server Performance”

How to keep monitoring information Chapter 6: “Recording the History of Servers and Applications”

An overview of how to generate reports from stored information

Chapter 7: “Reporting and Analyzing Monitoring Information”

An overview of how to charge users for resource usage using summary database information

Chapter 8: “Billing Users for Resource Usage”

Details about the default metrics that are configured during installation

Appendix A: “Default Metric Set”

Definitions, layout, and organization of summary database schema

Appendix B: “Summary Database Schema”

Page 15: Monitoring Server Performance

CHAPTER 2Document Center

Installing Your Monitoring and Reporting Tools

OverviewMonitoring profile functionality is included automatically when you install the Access Management Console. You choose to install My Knowledge and Report Center snap-ins when you install the console. Information about installing the console is included in the Citrix Presentation Server Administrator's Guide.

The rest of this chapter explains how to install Resource Manager. Topics include:

• Issues to consider before you start, including software requirements and licensing information

• Installation instructions

• How to upgrade to the latest version of Resource Manager

• An overview of the user interface and navigation

• How to set up a summary database, including setting up a system data source name (DSN) and database connection server

• How to turn the summary database on and off

• How to change the location of Resource Manager after installation

Software RequirementsYou install Resource Manager when you install or upgrade your servers to Citrix Presentation Server 4.5.

If you are upgrading from a previous release of Citrix Presentation Server, it is not necessary for Resource Manager to have been installed previously.

For guidelines about the licensing requirements for Citrix Presentation Server or other components, see Getting Started with Citrix Licensing Guide.

Page 16: Monitoring Server Performance

16 Monitoring Server Performance with Citrix Presentation Server Document Center

If you are going to record the history of server and application metrics using the summary database, you need one of the following Database Management Systems (DBMS) packages:

• Microsoft SQL Server Versions 2000 or 2005

—or—

• Oracle Database Versions 9i or 10g

Licensing InformationFull Resource Manager functionality requires a license for Citrix Presentation Server Enterprise Edition. Refer to Getting Started with Citrix Licensing Guide for further details.

Installing Resource Manager Before You StartBefore you install Resource Manager, Citrix recommends that you do the following:

• Ensure that the servers on which you are going to install Resource Manager meet the software requirements listed in “Software Requirements” on page 15. Resource Manager stores recent information about applications, servers, and users in a local database that can become large if the server is heavily loaded. If this will cause an issue in the future, you can select an alternative installation location for Resource Manager. See “Installing or Upgrading Resource Manager” on page 17 for more information.

• Ensure that each server on which Resource Manager is to be installed can connect to a data store. The data store is a database that Citrix Presentation Server and its components use to keep track of configuration information about the servers, applications, and configured users in the server farm.

You set up a data store during Citrix Presentation Server installation. Resource Manager uses this data store.

• If you are going to use a summary database, you need to install DBMS software on a server. This computer is the database storage facility for your server farm’s summary data. It does not need to be a farm server but must be available to the farm servers through the network. Ensure that this server has enough available space to store the summary database. Refer to “Managing the Resource Manager Summary Database” on page 60.

Page 17: Monitoring Server Performance

Chapter 2 Installing Your Monitoring and Reporting Tools 17Document Center

Selecting a Server to Use as the Farm Metric ServerThe Farm Metric Server interprets metrics that apply to the entire server farm (for example, application counts) and sends alerts when required.

By default, the first server on which you install Resource Manager becomes the Farm Metric Server. If necessary, you can change the Farm Metric Server to a different computer after installation. For more information, see the Resource Manager help.

The second server on which you install Resource Manager becomes the backup Farm Metric Server.

If You Are Upgrading from a Previous VersionIf you decide to upgrade servers to Citrix Presentation Server over a period of time (rather than simultaneously), ensure that you upgrade servers in the following order:

1. The Database Connection Server. The Database Connection Server enables communications between the server farm and the summary database, and is described in more detail in “Setting up a Summary Database” on page 19.

2. The main Farm Metric Server.

3. The backup Farm Metric Server.

4. Other servers in the server farm.

Problems may occur if another server is running a later version of Resource Manager.

Installing or Upgrading Resource ManagerUse the following procedure to install or upgrade Resource Manager. You need to follow this procedure for each server in your server farm.

To install Resource Manager on a server

1. Follow the installation instructions in the Citrix Presentation Server Administrator’s Guide, making sure that you choose to install Citrix Presentation Server Enterprise Edition.

2. When the Component Selection Setup screen appears, if you want to change the installation location of Resource Manager, browse to the correct location and click OK.

Note Citrix recommends that the Farm Metric Server be lightly loaded and be a data collector.

Page 18: Monitoring Server Performance

18 Monitoring Server Performance with Citrix Presentation Server Document Center

3. At the prompt, click Restart to restart the server.

Uninstalling Resource Manager

To uninstall Resource Manager from a server

1. Log off from any currently connected clients and the Presentation Server Console, and exit all programs running on the server.

2. From the Start menu, select Control Panel > Add/Remove Programs.

3. Select Citrix Presentation Server for Windows.

4. Select Change. The Setup wizard starts.

5. On the Application Maintenance screen, select Modify, then click Next.

6. On the Component Selection screen, select Resource Manager and select Entire feature will be unavailable.

7. Select Next. The selections you made are listed for review.

8. Click Finish.

Note You need to install the Presentation Server Console on every server from which you want to administer Resource Manager servers. For instructions about how to install the console, see “To install the Presentation Server Console on a remote computer” on page 25.

Important Before you uninstall Citrix Presentation Server from a Resource Manager Farm Metric Server or Database Connection Server for a summary database, make sure you reassign other Resource Manager servers to be the Farm Metric Server or the Database Connection Server first.

If you are using a summary database, Citrix recommends that you update it before removing any servers from the server farm. For details of how to update the database, see the Resource Manager help.

Note If you run the uninstaller after manually changing the location of Resource Manager, as described in “Changing the Location of Resource Manager after Installation” on page 27, the uninstaller does not remove the Resource Manager folder, and you must delete it manually

Page 19: Monitoring Server Performance

Chapter 2 Installing Your Monitoring and Reporting Tools 19Document Center

Setting up a Summary DatabaseInformation about summary data and an illustration of a typical server farm installation is given in “Resource Manager and the Summary Database” on page 51.

Before you can start using a summary database, you must do the following:

1. Install your DBMS software on a server and create a database on it.

This server is the database storage facility for your server farm’s summary data and must be available to the server farm through the network. Citrix recommends that you do not install the DBMS on the Database Connection Server. You must ensure that this server has enough available space to store the summary database. Refer to “Managing the Resource Manager Summary Database” on page 60.

Resource Manager supports the following DBMS software:

• Microsoft SQL Server Versions 2000 and 2005

• Oracle Database Versions 9i and 10g

If you are using a Microsoft SQL Server DBMS, do not use the master database for your summary database. The master database is used by SQL Server for internal functions. Using it for your summary database may cause database corruption problems.

If you are using an Oracle DBMS, ensure that the character set it uses contains all the characters you use in your server farm; for example, for server and application names. This includes special characters and currency symbols.

2. Set a system data source name (DSN).

The system DSN stores information about how a client can connect to a database. It is required by the Database Connection Server (the database client) to be able to communicate with the summary database DBMS. Refer to “Setting a System Data Source Name” on page 20.

3. Configure a Database Connection Server.

This server enables communications between the server farm and the summary database by writing data to the database and reading data from it. It should be relatively low-load for best performance. Refer to “Configuring a Database Connection Server” on page 22.

Important When you create your summary database on the DBMS server, the DBMS access credentials you set to be used by Resource Manager must each not exceed 255 characters in length. This is regardless of the limits of the DBMS software itself.

Page 20: Monitoring Server Performance

20 Monitoring Server Performance with Citrix Presentation Server Document Center

Setting a System Data Source NameTo set a system data source name for Microsoft SQL Server DBMS

1. Choose a server to be your Database Connection Server.

2. Open the ODBC Data Source Administrator dialog box on this server:

• If your Database Connection Server is a 32-bit server, select Start > Control Panel > Administrative Tools > Data Sources (ODBC).

• If your Database Connection Server is a 64-bit server, select Start > Run, type %SystemRoot%\SysWow64\odbcad32.exe, and then press Enter.

3. Click the System DSN tab. Click Add.

4. In the Create New Data Source dialog box, select SQL Server. Click Finish.

5. In the Microsoft SQL Server DSN Configuration dialog box, type rmsummarydatabase in the Name box. Type a description (optional), then select the server with the DBMS installed on it from the Server list. Click Next.

6. Select how Microsoft SQL Server authenticates your identification so you can set up the system DSN. Either:

• Click With Windows NT authentication using the network login ID to use Windows NT authentication

—or—

• Click With SQL Server authentication using a login ID and password entered by the user, then select the Connect to SQL Server to obtain default settings for the additional configuration options check box and type a user name and password in the Login ID and Password boxes, respectively

7. Click Client Configuration.

8. In the Edit Network Library Configuration dialog box, select TCP/IP under Network libraries. Click OK. Click Next.

Important You must type rmsummarydatabase exactly. Any spaces or spelling errors will make the database unrecognizable to the Database Connection Server. However, the field is not case-sensitive.

Page 21: Monitoring Server Performance

Chapter 2 Installing Your Monitoring and Reporting Tools 21Document Center

9. Select the Change the default database to check box, then select the database you created on the DBMS server from the list. Click Next, then Finish.

10. In the ODBC Setup dialog box, you can click Test Data Source to confirm the DSN configuration. Click OK twice to close the dialog box.

11. Click OK to close the ODBC Data Source Administrator dialog box.

For more information, refer to your Windows operating system and Microsoft SQL Server documentation.

To set a system data source name for Oracle DBMS

1. Use the NET8 configuration wizard to create a tnsnames.ora entry for your Oracle DBMS.

2. Choose a server to be your Database Connection Server.

3. Open the ODBC Data Source Administrator dialog box on this server:

• If your Database Connection Server is a 32-bit server, select Start > Control Panel > Administrative Tools > Data Sources (ODBC).

• If your Database Connection Server is a 64-bit server, select Start > Run, type %SystemRoot%\SysWow64\odbcad32.exe, and then press Enter.

4. Click the System DSN tab. Click Add.

5. In the Create New Data Source dialog box, select the Oracle ODBC Driver option. This option is available only after the Oracle Client is installed. Click Finish.

Note The system DSN setup described below might be different depending on the version of the Oracle client.

Important Resource Manager runs in 32-bit mode on 64-bit devices using a 64-bit operating system. If you are using a 64-bit server, make sure that you are using the 32-bit version of the Oracle 10.2g client or later on this server.

Page 22: Monitoring Server Performance

22 Monitoring Server Performance with Citrix Presentation Server Document Center

6. In the Oracle ODBC Driver Configuration dialog box, type rmsummarydatabase in the Data Source Name text box. Type a description (optional).

7. From the TNS Service Name list, select the global database name of the Oracle database and type the user name in the User ID box.

8. From the Workarounds tab, select Disable Microsoft Transaction Server (MTS). For information about why MTS needs to be disabled, refer to Microsoft Knowledge Base articles Q180190 and Q193893, available from http://www.microsoft.com.

9. Ensure that:

• The Read Only check box is cleared

• Enable closing cursor and Enable Results Set are selected

10. Click OK to close the Oracle ODBC Driver Configuration dialog box. Note that the dialog box shown varies between Oracle releases.

For more information, refer to your Windows operating system and Oracle Database documentation.

Configuring a Database Connection ServerAfter you set up a system DSN on the Database Connection Server, you need to configure this server as the Database Connection Server using the Presentation Server Console.

To configure a Database Connection Server

1. In the left pane of the console, click Resource Manager.

2. In the right pane, click the Summary Database tab. Click Configure.

3. In the Summary Database Configuration dialog box, select your Database Connection Server from the Server list. Only servers running Resource Manager appear in the list.

Important You must enter rmsummarydatabase exactly. Any spaces or spelling errors will make the database unrecognizable to the Database Connection Server. However, the field is not case-sensitive.

Note If a server name appears dimmed, the server is running an older version of Resource Manager and should not be selected.

Page 23: Monitoring Server Performance

Chapter 2 Installing Your Monitoring and Reporting Tools 23Document Center

4. Enter the DBMS access credentials in the User and Password boxes. These must match valid credentials defined within the supporting DBMS (the Oracle or Microsoft SQL Server database you are using).

5. Click Test to check the connection to the database.

You can now activate the summary database. See “Turning the Summary Database On” on page 23.

You can further configure the Database Connection Server in the following ways:

• Configure the database update time. See “Setting the Summary Database Update Time” on page 57.

• Configure a database purging schedule to remove unwanted information. See “Removing Unwanted Information from the Database” on page 55.

• Choose the methods for sending alerts when an update to the database fails. See “Suspending Notification of a Metric’s Status” on page 34.

• Configure data collection restrictions for all farm servers. See “Reducing Summary Data” on page 54.

Turning the Summary Database OnTo begin recording data for your database, you need to turn the summary database on after installation. When it is on, Resource Manager servers create and store information for inclusion in the summary database.

To turn the summary database on

1. In the left pane of the Presentation Server Console, click Resource Manager.

2. In the right pane, click the Summary Database tab. Click Configure.

Caution Resource Manager supports Windows NT authentication for the Microsoft SQL Server user name. The 255 character limit for the user name includes the domain name, the intervening backslash ( \ ), and the user name.

Note The first icon in the Status panel is Not Configured when the summary database is off or a Database Connection Server is not configured. In this state, Resource Manager servers are not creating or storing information for inclusion in the summary database.

Page 24: Monitoring Server Performance

24 Monitoring Server Performance with Citrix Presentation Server Document Center

3. In the Summary Database Configuration dialog box, select the Summary Database enabled check box.

4. Click OK twice.

The first icon in the Status panel is OK , meaning the summary database is on and a Database Connection Server is correctly configured and in use. In this state, Resource Manager servers are collecting information for inclusion in the database.

Turning the Summary Database OffIf you need to stop creating summary data, for example for maintenance purposes, you can turn the summary database off.

You cannot turn the summary database off for individual servers; however, you can minimize the data being contributed by choosing to ignore server metrics for periods of low activity for an individual server; for example, weekends or late at night. Refer to “Ignoring Server Metrics during Periods of Low Server Activity” on page 55 for details.

To turn the summary database off

1. In the left pane of the Presentation Server Console, click Resource Manager.

2. In the right pane, click the Summary Database tab.

3. Click Configure.

4. In the Summary Database Configuration dialog box, clear the Summary Database enabled check box.

5. Click OK twice.

The first status icon in the Status panel is Not Configured , meaning the summary database is off. In this state, Resource Manager servers are not summarizing or storing information for inclusion in the summary database.

Caution When the summary database is off, Resource Manager servers will no longer summarize and store information for the summary database. This may result in data loss until the summary database is turned back on.

Page 25: Monitoring Server Performance

Chapter 2 Installing Your Monitoring and Reporting Tools 25Document Center

Displaying Resource Manager and its ComponentsThe following procedures are designed to familiarize you with the interface so that you can quickly get up to speed with Resource Manager. The user interface for Resource Manager is integrated with the Presentation Server Console.

To open the Presentation Server Console

From the Start menu, choose Programs > Citrix > Citrix Presentation Server > Presentation Server Console. You can also open the Presentation Server Console from the Access Management Console if the Access Management Console is appropriately configured.

When the console starts, log on to a server.

When you are connected to a server farm, the console displays a window with two main panes:

• The left pane shows a hierarchical list of the components of the server farm

• The right pane shows information about the object that is selected in the left pane

From this window you can access Resource Manager. The servers and applications that you see depend on whether you are a full administrator or a custom administrator. If you are a full administrator, you have access to the entire server farm. If you are a custom administrator, you can view and update only those folders of servers or applications for which the full administrator has granted you permissions.

You need to install the console on every computer from which you want to administer servers with Resource Manager installed. You can install the console on a computer running Presentation Server (at the time when you install Citrix Presentation Server itself), or on a remote computer.

To install the Presentation Server Console on a remote computer

1. Ensure that Resource Manager is installed on the server for which you want to view Resource Manager information.

2. Install or upgrade the Presentation Server Console on the remote computer using Setup on the Citrix Presentation Server CD-ROM.

Page 26: Monitoring Server Performance

26 Monitoring Server Performance with Citrix Presentation Server Document Center

Displaying the Resource Manager ScreenThe Resource Manager window displays a number of tabs that enable you to perform the following functions in Resource Manager:

• Watcher. Show a real-time list of all servers in the server farm that have an alarm state.

• Reports. Generate reports about:

• Current process, user activity, and recent server status.

• Past process, user, and server activity. These reports require a summary database to be in use.

• Summary Database. Configure a summary database and see its status.

• Billing. Configure cost centers (fees and user groups). If you are using a summary database, generate Billing reports based on resource usage.

• SMS, SNMP, and Email. Configure automatic SMS, SNMP, or email alerts.

• Farm Metric Server. See the status of Farm Metric Servers and change the servers being used as Farm Metric Servers.

To display the main screen

In the Presentation Server Console, either:

• In the left pane, click Resource Manager

—or—

• In the right pane, double-click Resource Manager

Displaying Resource Manager for the Entire Server FarmThis view enables you to monitor all the servers in your server farm. You can gain an overall picture of the status of the server farm and spot problems as they occur.

To display Resource Manager for the entire server farm

1. In the left pane of the console, click Servers.

2. In the right pane, click the Resource Manager tab.

Page 27: Monitoring Server Performance

Chapter 2 Installing Your Monitoring and Reporting Tools 27Document Center

Displaying Resource Manager for a Single ServerThis view displays all the metrics that are being monitored for that server. If a problem arises, a status icon appears to warn you.

To display Resource Manager for a single server

1. In the left pane of the console, navigate to the required server.

2. In the right pane, click the Resource Manager tab.

Displaying the Applications in a Server FarmYou can use Resource Manager to monitor all published applications that are running on Resource Manager servers in the server farm. When you start using Resource Manager, all existing published applications are listed in the Applications folder.

You can also monitor applications that are not published by setting them up as Resource Manager applications, and identifying the servers on which you want to monitor them. For details about how to set up Resource Manager applications, see the online help system. When you set up a Resource Manager application, it is added to the list in the Applications folder. Refer to “Configuring Application Metrics” on page 33.

To display the applications in a server farm

In the left pane of the console, expand the Applications folder.

Changing the Location of Resource Manager after Installation

If necessary, you can change the location of Resource Manager after installation. Before changing the location of the Resource Manager files, you must ensure that you set the correct permissions so that the Independent Management Architecture (IMA) service can read and write files at the new location.

Caution This procedure requires you to edit the registry. Using Registry Editor incorrectly can cause serious problems that may require you to reinstall your operating system. Citrix cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk. Be sure you back up the registry before you edit it.

Page 28: Monitoring Server Performance

28 Monitoring Server Performance with Citrix Presentation Server Document Center

To change the location of Resource Manager

1. Stop the IMA service.

2. Move the Resource Manager folder and all its contents to the new location.

3. Edit the registry key InstallDir.

For 32-bit servers this key is in

HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\Citrix Resource Manager

For 64-bit servers this key is in

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\Citrix Resource Manager

4. Restart the IMA service.

Note If you run the uninstaller after manually changing the location of Resource Manager, as described here, the uninstaller does not remove the Resource Manager folder, and you must delete it manually.

Page 29: Monitoring Server Performance

CHAPTER 3Document Center

Configuring Metrics

OverviewThe Resource Manager service on each computer running Presentation Server provides you with information about a number of system and network processes and events. Status displays show this information in real time, enabling you to see the state of your system at a glance. You can monitor the following:

• The status of the servers in a server farm

• The number of instances of specific applications that are running in a server farm

Each item that is being monitored is referred to as a metric. When a metric’s value exceeds its defined limits, Resource Manager displays a warning or error status icon for the metric. These are known as alarms.You can also configure Resource Manager to send messages to notify you of warnings and errors. These are known as alerts. Alerting configuration is described in more detail in “Alerting Administrators to Poor Server Performance” on page 43.

You can also display performance metrics for the servers in the form of a graph. This is described in more detail in “Graphs of Metric Values” on page 38.

Resource Manager metrics are derived from Microsoft Windows Performance Monitor; Resource Manager can track most Windows Performance Monitor counters as server metrics. For explanations of the metrics and advice about customizing metrics, refer to the Citrix Presentation Server Administrator’s Guide and the Microsoft Windows Help for Performance Monitor.

Page 30: Monitoring Server Performance

30 Monitoring Server Performance with Citrix Presentation Server Document Center

Each server with Resource Manager installed has a Microsoft Jet Access database in which it stores metric values and application information for the last 96 hours. By default, this database is located in: ...\Citrix Resource Manager\LocalDB\RMLocalDatabase. It writes data to the Resource Manager summary database and is accessed when you are creating real-time graphs, displaying Server Snapshot reports, and running reports on that specific server (see “Resource Manager and the Summary Database” on page 51 for more information about how databases in a server farm interact). The IMA service reads and writes to the database periodically. The local Resource Manager database is compacted every day automatically, and its size is managed automatically.

If you need to change the way in which Resource Manager monitors the servers in real time, you can:

• Change the list of metrics being monitored for a server

• Configure the way alerts work for individual metrics

• Change the list of processes that Resource Manager does not monitor

Metrics and InstancesA metric is a combination of:

• The type of object that you want to monitor: a physical or logical system resource; for example, a computer’s hard drive.

• The counter to be monitored: the specific aspect of the object that you want to monitor; for example, disk free space.

• The instance of the object: an individual example of the object or a state it needs to reach to be counted. For example, a computer may have more than one hard drive. In this case, the instance identifies which drive you want to examine.

By defining configurations for specific performance metric instances, you can monitor % Disk Read Time for drive C: without monitoring % Disk Read Time for drive D:. Likewise you can also define different alert thresholds for % Free Space for different logical disks on a computer. You can also choose to monitor all instances of a metric.

Note The list of objects installed on a server is cached in the Access Management Console. To update the list—when you connect a USB drive for example—you must restart the Access Management Console.

Page 31: Monitoring Server Performance

Chapter 3 Configuring Metrics 31Document Center

Having added a metric using the “all instances” option, you can add a second metric for the same object and counter but for a specific instance. This second metric can have different configuration settings and ignores the configuration of the all instances metric.

If you try to monitor a specific metric that is already monitored you will be notified of the fact and asked to choose an alternative metric to monitor.

Configuring a Set of Metrics for Specific ServersBy defining monitoring profiles—sets of metrics to monitor and alert on—you can assign servers to a profile so that each server monitors and alerts on only those metrics defined in its assigned profile. This makes managing monitoring for large server farms a simple task, because you do not have to configure each server separately.

Under the Monitoring Profiles node in the Access Management Console, you can create several monitoring profiles and order them into folders.

When you create each profile, you identify any system processes you want to ignore to avoid wasting processing resources. System processes are those that run under any of the local system, LocalService or NetworkService identities or are started by the service control manager. A list of recommended processes is given that you can add to or replace.

For each profile you can select the times in the week you want to write the metric information to the summary database. This data is written every hour during these periods. More information about creating and configuring the summary database is included in “Setting up a Summary Database” on page 19.

Specify which metrics and their instances to include in the profile using the New > Server performance metric, Add server performance metric and Edit metric settings tasks. For each selected metric you can specify values that indicate poor or worsening performance. When the value of the metric passes these thresholds, notifications in the form of emails, SMS, or SNMP messages can be sent to the addresses and telephone numbers configured in Resource Manager in the Presentation Server Console (as well as having the alert written to the alerts displays in the Access Management Console). These messages can be postponed until the metric’s values remain above the thresholds for a specified period of time, to prevent brief peaks in the metric generating unnecessary warnings. See “Viewing Monitoring Information” for more information about how metric information is displayed.

In addition to notifications, you can identify scripts to run when the threshold is breached.

As well as selecting servers to add to a monitoring profile, you can also select which monitoring profile to assign to a server as a Server node task.

Page 32: Monitoring Server Performance

32 Monitoring Server Performance with Citrix Presentation Server Document Center

Creating a Default Set of MetricsWhen you install Resource Manager, a default set of metrics is configured automatically for each server. A set of default limits is also configured during installation for the metrics that apply to each server. You can change these settings to suit your environment.

The default metrics are listed in Appendix A “Default Metric Set” on page 91.

Resource Manager also configures default alarm thresholds for the default metrics. Citrix recommends that you customize these metrics over time to suit your environment, and that you limit the total number of metrics being tracked on a server to 50.

The default metrics provide a real-time overview of each server and are recorded in the summary database if one is configured. To performance-tune each server, you can add more specific metrics.

The default set of metrics is applied to any server in your farm that is not associated with a monitoring profile. When you add a new server to your farm, or remove one from a monitoring profile, the server uses this default configuration automatically.

You change the default configuration in the same way that you configure monitoring profiles using the New > Server performance metric, Add server performance metric and Edit metric settings tasks for the Default Configuration node in the Access Management Console.

Farm Performance MetricsIn the server farm, the Farm Metric Server interprets metrics that apply to the entire server farm (such as application counts) and sends alerts if necessary.

Farm metrics are configured in a different way from server metrics. Instead of specifying metrics, you identify the alerts you want to be raised, such as “Client update cannot communicate with the client” or “Application has no servers.” A comprehensive list is shown in the Available Alerts display of the Farm Monitoring node in the Access Management Console.

Most alerts can be enabled or disabled; some have additional settings that you can configure. For example, you can enter the maximum number of zone elections before the “Zone elections are too frequent” alert occurs, or the frequency of checks before the “Too many active sessions are running on server” alert occurs.

Page 33: Monitoring Server Performance

Chapter 3 Configuring Metrics 33Document Center

Note that in a number of cases farm performance metrics have different behavior from server performance metrics: for example, you cannot suspend farm metric notifications.

Configuring Application MetricsResource Manager can monitor only one metric for each application. This is the Count metric, which maintains a count of how many instances of specific applications are running in the server farm, and notifies you if the number of instances of a monitored application reaches a defined limit. This enables you to manage application licenses. You select this metric using the Add/Remove Metrics task for that application on the Presentation Server Console.

You can monitor all applications published by Presentation Server. You can also monitor applications that are not explicitly published, for example, because they are running from a desktop that is published, or because you are not deploying the application through Presentation Server. To do this, you need to set up the application as a Resource Manager application. See the Resource Manager help for more information about Resource Manager applications.

Resource Manager can monitor a published application only if you specify the full path name of the application in the Properties dialog box when you publish the application in Citrix Presentation Server. When you publish an application, it is a good idea to use the Browse button to select the executable to ensure that you use the correct full path. For full information about publishing applications, refer to the Citrix Presentation Server Administrator’s Guide.

If an application path name also specifies command-line parameters for the program, surround the path name with double quotes (“ ”). This enables Resource Manager to distinguish between process name and argument list and monitor the published application correctly.

Note All servers running versions of Presentation Server older than 4.5 are unable to use monitoring profile settings.You must use the Presentation Server Console to configure performance metrics for these servers.

Important You can use Resource Manager only to keep track of the usage of 32-bit and 64-bit applications. You cannot monitor 16-bit applications.

Page 34: Monitoring Server Performance

34 Monitoring Server Performance with Citrix Presentation Server Document Center

Suspending Notification of a Metric’s StatusYou can use the Stop task for a server node in the Access Management Console to stop Resource Manager from giving you information about a specific metric. You can select either to stop notifications indefinitely, or enter a period of time during which no notifications will be generated.

This is useful when, for example, you want to work on a problem without receiving repeated alarms. When you suspend notification, Resource Manager continues recording information about the metric’s values but does not display alarms or send alerts.

Getting More Information about Metrics and MonitoringResource Manager uses server performance and resource metrics derived from the Microsoft Windows Performance Monitor. For explanations of the metrics and advice about customizing metrics, refer to the Citrix Presentation Server Administrator’s Guide and the Microsoft Windows Help for Performance Monitor.

Page 35: Monitoring Server Performance

CHAPTER 4Document Center

Viewing Monitoring Information

Having identified the metrics you want to monitor on your servers, you can view the values of the metrics in a number of ways.

Current State of All MetricsThe Access Management Console’s View server health display of each server node in your farm shows all the metrics you configured for that server and the status of each metric.

If a metric’s value falls outside normal limits for a particular length of time, the status icons change. Resource Manager determines the status of each metric by sampling the performance data every 15 seconds and updates metric status icons accordingly.

You can also set alerts to be sent when the status of a metric returns to green (OK) or yellow, having been previously at yellow or red. The meaning of each status icon is described below:

OK Represents normal operation; that is, the value of the metric falls between the set limits.

Warning Represents a warning condition. This means that a problem may be developing that will require further analysis to improve performance or to prevent the situation from becoming worse.

Error Represents a problem condition. This often means that some action is required to provide better application or server performance.Both yellow and red indicators occur when the value for a metric falls outside the normal limits and remains there for a defined period of time.

Not Configured Represents a metric that is not yet active and needs to be configured.

Page 36: Monitoring Server Performance

36 Monitoring Server Performance with Citrix Presentation Server Document Center

The screenshot below shows a typical View server health display for a server. Note that the display indicates which monitoring profiles this server is associated with—P1 in this case.

Example content of a View server health display

Metrics that Breach ThresholdsYou can set alerts to be triggered whenever a yellow (warning) or red (error) status occurs. As well as the status icon changing in the View server health display, these alerts appear in the Alerts display.

Alerts displays are available at the Alerts node, Presentation Server node, all farm nodes, all server nodes, and all application nodes on the Access Management Console. In these displays, only the most severe alert for each server is shown.

Unknown Represents a metric that is set to “Stop indefinitely;” that is, you indefinitely suspended notification of the metric’s status. See “Suspending Notification of a Metric’s Status” on page 34 for details. This icon is also used (for all metrics) if the server is unlicensed.

Idle Represents a metric that is set to “Snooze;” that is, you suspended notification of the metric’s status for a fixed period. See “Suspending Notification of a Metric’s Status” on page 34 for details.

Page 37: Monitoring Server Performance

Chapter 4 Viewing Monitoring Information 37Document Center

The meaning of each alert icon is described below

See “Configuring Metrics” on page 29 for more information about setting alert limits.

The screenshot below shows the Alerts display for the server associated with the View server health display. The Error alert indicates this is the most serious type of alert for this server; so the Warning alert does not need to be listed.

Example content of an Alerts display

When many alerts are raised on the servers within a single zone, certain aspects of performance can degrade. For this reason, there is a cap on the number of Suite Monitoring and Alerting alerts Resource Manager can raise. When this upper limit is reached, the Alerts display shows an alert indicating that not all alerts for the server are visible. When this happens, you can delete alerts or use the “Release all alerts for server” task to show the alerts in the Alert list.

Warning Represents a warning condition. This means that a problem may be developing that will require further analysis to improve performance or to prevent the situation from becoming worse.

Error Represents a problem condition. This often means that some action is required to provide better application or server performance.Both yellow and red indicators occur when the value for a metric falls outside the normal limits and remains there for a defined period of time.

Page 38: Monitoring Server Performance

38 Monitoring Server Performance with Citrix Presentation Server Document Center

Graphs of Metric ValuesThe Dashboard snap-in for the Access Management Console allows you to display performance metrics in a highly visual way for the servers in a farm.

By selecting a metric in the View server health display and clicking the Generate graph task, you can see a graph of the metric’s value over time. The autoscroll feature means the graph is updated with new data from the metric counter being monitored on the selected server every 15 seconds.

This graph shows the current status of the selected metric in real-time. The vertical axis shows the metric value. The horizontal axis shows the time, starting from the point at which you first displayed the graph, but you can also scroll the graph back for any time within the last 96 hours.

On the graph, the metric value is tracked by a line, points, or a combination of the two. The thresholds for yellow (warning) and red (error) statuses appear as red and yellow horizontal lines, enabling you to quickly check the metric value against the alarm thresholds.

See “Configuring Metrics” on page 29 for more information about setting alert limits.

Note If you are using Windows “High Contrast” displays, real-time graph lines may change color and line style.

Page 39: Monitoring Server Performance

Chapter 4 Viewing Monitoring Information 39Document Center

The screenshot below shows an example graph with the metric’s values plotted in point and line style.

Example plot of a metric’s history

Creating Custom Metrics DisplaysYou can create new custom metric data tasks that display one or two performance metrics at the same time for each server in the Servers node of the Access Management Console. The metric values are shown as red and blue bars by default, and you can see the actual values of the metrics as a ToolTip by moving the pointer over the bars.

When the task is created it is added to the Custom Metrics menu in alphabetical order of task name after the “Manage custom metric data tasks” menu item of the Servers node.

Resource Manager LogsResource Manager maintains a log for each server in the server farm. The log contains the history of metrics being monitored on the server and any changes to Resource Manager configuration.

Page 40: Monitoring Server Performance

40 Monitoring Server Performance with Citrix Presentation Server Document Center

There are two log files for each server. When a log file reaches 0.5MB in size, Resource Manager creates a second log file. When the second log reaches the size limit, it replaces the original log and a new one is created.

Each time a metric changes its status (for example, when it enters an alarm state or returns to normal from an alarm state), a record of the transition is logged. Application Count metric status changes are also recorded by the Farm Metric Server.

You can view the contents of the log by choosing Resource Manager server log from a server node on the Access Management Console.

Additional Alert InformationYou can get context-sensitive information about Suite Monitoring and Alerting alerts on the Access Management Console. Information about Suite Monitoring and Alerting alerts and other alert types is in “Sources of Alerts” on page 44.

Two types of information are available:

• Knowledge articles provided by Citrix

• Knowledge articles provided by your company

The Citrix articles are provided as a standard component, but to provide users with company knowledge articles, you have to set up a company knowledge database. After you do this, users with the necessary permissions can view, reorder, add, edit, and delete company knowledge articles.

Information about the currently selected alert appears in the lower right pane of the console, as illustrated in the screenshot below. Clicking the Display knowledge task opens this information in a separate resizeable window.

Page 41: Monitoring Server Performance

Chapter 4 Viewing Monitoring Information 41Document Center

Example Citrix Knowledge article display

You can choose to display Citrix knowledge or company knowledge. For alerts that you can configure through the Access Management Console, you can also view configuration information. If a knowledge information option is not available, there is no article for this alert. To see knowledge articles in a separate resizeable window, click Display knowledge in the list of tasks.

You can reconfigure an alert if it is configurable through the Access Management Console, disable it, or delete it from your console for the current session. For Suite Monitoring and Alerting alerts, you also have the option of permanently deleting the alert from all consoles. Information about alert types is in “Sources of Alerts” on page 44.

Instructions about how to configure the database that stores My Knowledge articles are included in the Access Management Console help.

Page 42: Monitoring Server Performance

42 Monitoring Server Performance with Citrix Presentation Server Document Center

Custom DisplaysYou can create custom views of farms, zones, servers, applications, and monitoring profiles by using the My Views feature of the Access Management Console. My Views allows you to create and save customized views of items in your deployment. You can then see updated information about those items at any time without having to search for them. For example, you can group related objects in folders or you can order farms, according to the frequency with which you need to access them.

You may want to monitor farms located in different locations. In this case, you can use the My Views feature to create a custom view that groups each farm in a different part of the screen and then use a background graphic to identify each location. A suitable performance metric, such as CPU Load, displayed in your custom view, allows you to pinpoint problems quickly on any server in any location.

Using custom views in this way helps you anticipate or identify problems with your servers or applications as soon as possible. Note that these servers must be running the Citrix Presentation Server Provider for Microsoft Windows Management Instrumentation.

For further information, see the assistance provided on the Access Management Console screens, the Access Management Console help, or the Citrix Presentation Server Administrator’s Guide.

Page 43: Monitoring Server Performance

CHAPTER 5Document Center

Alerting Administrators to Poor Server Performance

You can use Resource Manager to send alert messages when metrics change state. The alerts can be sent using one or more of the following methods:

• Email messages, using MAPI or SMTP

• Short Message Service (SMS) text messages to cell/mobile phones

• Simple Network Management Protocol (SNMP) messages

To use Resource Manager to send alerts, set up one or more Resource Manager servers to send the alert messages. Make sure that these servers have additional hardware or software to handle each type of alert you require; for example, a modem for SMS alerts and an email system for MAPI alerts. For SNMP alerts, you need to set up SNMP on every server that has one or more metrics configured to send SNMP alerts.

When you have done this, you can configure settings in Resource Manager, such as who will receive the alert messages, and set up the individual server and application metrics that you want to trigger the alert messages.

The alert recipients you set up will be used for all the servers in the server farm. You can modify Resource Manager alert recipients for any individual server.

If you want to delegate responsibility for a set of servers to a custom administrator, you may want to prevent that administrator from receiving alerts from all the other servers in the farm. You do this by setting up the administrator’s alert contact details in the Add Citrix Administrator wizard. For each server folder, you can specify whether or not the custom administrator will receive alerts for the servers in that folder. For further details, see the online help system provided with the wizard.

Note After you install the SNMP service, restart the computer for Resource Manager alerts to be sent or received.

Page 44: Monitoring Server Performance

44 Monitoring Server Performance with Citrix Presentation Server Document Center

Sources of AlertsThree types of alert are generated in Presentation Server:

• Resource Manager alerts, produced only by Resource Manager. To use Resource Manager alerts, you need to have installed Resource Manager. See “Installing Resource Manager” on page 16.

• Suite Monitoring and Alerting alerts, that can be produced by any extension in the Access Management Console. To use Suite Monitoring and Alerting alerts, you need to have added the My Knowledge extension to the Access Management Console. Adding extensions is a standard Microsoft Management Console (MMC) procedure.

• Alerts specific to the Web Interface and Presentation Server Extension.

Resource Manager alerts appear on both the Presentation Server Console and Access Management Console; all other alerts are appear onlyon the Access Management Console. Only Suite Monitoring and Alerting alerts can be disabled and, unlike other alert sources, some are configurable.

If you snooze or stop alerts generated by a server, only Resource Manager and Suite Monitoring and Alerting alerts are suspended.

You can identify which of your alerts is generated by which system by checking the Generated By column of the Available Alerts display. Note that Resource Manager alerts are listed as generated by “Dashboard” and Suite Monitoring and Alerting alerts generated by “My Knowledge.”

Preparing Your System for Email AlertsBefore you can use email alerts, you must configure your system.

You can use either MAPI or SMTP to generate email alerts. Select the relevant tab in the Resource Manager Properties dialog box on the Presentation Server Console. By default MAPI is used to send alerts.

• For MAPI email alerts, you first need to choose and configure the servers in the server farm that you want to use to send the email messages. Then you create a mail profile and enable the Resource Manager MAPI email service. These servers are called MAPI Connection Servers.

• For SMTP email alerts, you must have an SMTP email server that is accessible from your server farm. You then specify the details of your SMTP server in Resource Manager. See the Resource Manager online help system for more information.

You can secure communication between your Resource Manager servers and your SMTP server using Secure Sockets Layer (SSL). For details about

Page 45: Monitoring Server Performance

Chapter 5 Alerting Administrators to Poor Server Performance 45Document Center

how to set up SSL, see “Setting up SSL for SMTP Email Alerts” on page 47.

Using MAPI to Send AlertsTo use MAPI to send alerts, you must:

• Select the MAPI connection servers

• Create a mail profile for Resource Manager

• Enable the Resource Manager MAPI mail service

• Configure Resource Manager to use MAPI email alerts

Selecting the MAPI Connection ServersYou need to select one or more servers in the server farm to be the MAPI connection servers. When email alerts are generated in the farm, they are passed to one of the configured MAPI servers, which then sends the actual email. You can configure as many MAPI connection cervers as you want. Alerts are sent through a randomly selected MAPI server, although if the server on which an alert is generated is also a MAPI server, that server sends the email.

Each MAPI connection cerver must be able to access a mail server (for example, Microsoft Exchange Server). It must have an email client installed (for example, Microsoft Outlook) that conforms to the X-400 protocols.

Creating an Email Profile for Resource ManagerOn each MAPI connection server, you need to configure an email profile for Resource Manager to use. The profile must have the same name and details on all of your MAPI connection servers. Citrix recommends that you give the profile a name that is easy to recognize (for example, Resource Manager). The profile is used throughout the server farm.

When you create the email profile, ensure that you include the email system that you want to use; for example, Microsoft Exchange Server. You can also specify an address book for the profile.

After you set up the profile, it is a good idea to test that you can log on to your email system using the profile and that you can send a message.

Note A user who is configured to use the email profile can log on to the email system without being prompted for logon credentials.

Page 46: Monitoring Server Performance

46 Monitoring Server Performance with Citrix Presentation Server Document Center

For more information about configuring email profiles, refer to Citrix Knowledge Base article CTX333658 available at http://knowledgebase.citrix.com.

Enabling the Resource Manager MAPI Mail ServiceEmail alerts are managed by a service called Citrix Resource Manager Mail. This service is installed automatically on all servers on which you install Resource Manager. You need to enable the service on each MAPI Connection Server.

To enable the Citrix Resource Manager mail service on a MAPI connection server

1. Open the Windows Control Panel.

2. To open the Services dialog box, open Administrative Tools, then open Services.

3. In the Properties dialog box for the Citrix Resource Manager mail service, click the General tab and ensure that the startup type for the service is set to Automatic.

4. From the Log On tab, select This account.

5. Enter the details of the local user account, including the domain, that you want Resource Manager to use for email alerts. Ensure that you type the account and domain details exactly, or browse to the account so that you can be sure that the details you enter are correct.

6. Ensure that the Resource Manager Mail service is started.

Configuring Resource Manager to Use MAPI Email AlertsAfter you set up the MAPI connection servers, you must set up Resource Manager to use email alerts for the server farm. For example, you need to specify the alert recipients. These settings apply to the entire server farm. See the Resource Manager online help system for more information about MAPI email alerts.

Page 47: Monitoring Server Performance

Chapter 5 Alerting Administrators to Poor Server Performance 47Document Center

Setting up SSL for SMTP Email Alerts

1. Install the certification path of your certificate authority on each Resource Manager server. In the Microsoft Management Console, add the root certificate path in the following location:

Certificates (Local Computer)\Trusted Root Certification Authorities\Certificates

This step enables each server to trust certificates issued by your certificate authority.

2. In the left pane of the Presentation Server Console, click Resource Manager.

3. In the right pane, click Email. From the Email tab:

A. Specify the SMTP server by typing its fully qualified domain name (FQDN). For example:

smtpserver1.mydepartment.mycompany.com

B. Click Use SSL to send email alerts.

C. Click OK.

Preparing Your System for SMS AlertsTo send an SMS message to a cell/mobile phone, a Resource Manager server makes a call through its modem to a number that is designated by the cell/mobile service provider. It then sends data to the service provider’s computer, instructing it to send an SMS message to the cell/mobile phone of the person who is to receive the alert.

If you want to use SMS alerts, ensure that at least one Resource Manager server in the server farm has a modem. This can be an analog modem or an ISDN card.

You need to investigate the modem requirements of the service providers for the cell/mobile phones to which you want to send alerts. Some service providers require a specific type of modem (usually analog). Where this is the case, at least one server with that type of modem must be in the server farm before you can use SMS alerts for that service provider.

Important This section assumes that you have access to a certificate authority and an appropriate root certificate, and are familiar with the procedure of adding a certificate path to a Windows server. You must also ensure that your SMTP server supports SSL and is properly configured to use SSL in your network environment.

Page 48: Monitoring Server Performance

48 Monitoring Server Performance with Citrix Presentation Server Document Center

If the people that you want to receive SMS alerts use a variety of service providers, you need to know the details of the gateway that Resource Manager must use to communicate with each service provider. Each provider is likely to have a different telephone number, and may employ a different protocol to carry the messages. Some service providers offer an analog line, others offer ISDN. You probably need to configure a range of numbers to call and a range of protocols to use.

The alert recipients you set up will be used for all the servers in the server farm. You can modify Resource Manager alert recipients for any individual server.

Configuring Resource Manager to Use SMSWhen you are sure that you fulfilled all the requirements for SMS alerts, you can configure the way in which Resource Manager uses SMS for alerts in the server farm. For example, you need to specify the alert recipients. These settings apply to the entire server farm. You can also specify SMS alert recipients for individual servers.You need to select one or more servers in the server farm to send the SMS alerts. Such a server is called a TAPI Server. For more information about configuring Resource Manager to use SMS, see the Resource Manager online help system.

Preparing Your System for SNMP AlertsResource Manager can send five different SNMP alerts:

• The Resource Manager server is down

• The metric on the Resource Manager server changed to green status

• The metric on the Resource Manager server changed from green to yellow status

• The metric on the Resource Manager server changed from red to yellow status

• The metric on the Resource Manager server changed to red status

To receive SNMP messages, a computer on a network requires an SNMP management tool that enables it to listen for messages. A number of third-party commercial tools are available.

Page 49: Monitoring Server Performance

Chapter 5 Alerting Administrators to Poor Server Performance 49Document Center

You need to install and set up the Windows Server 2003 SNMP service on every server that has a metric configured to send SNMP alerts.

If you want Resource Manager to send alerts for the Count metric on any applications that are running in the server farm, ensure that the Farm Metric Server has the Windows SNMP service enabled and running.

Running a Script when an Alert Threshold Is BreachedYou can create an executable file to run on a local Resource Manager server when a server metric indicates that a problem condition exists. For example, you can use a script to take a server offline when its free disk space goes below 5%, or to restart a database following a database-related error.

The script you select runs under the LocalService account, and starts every time the metric enters a red alarm state (not just the first time). It must, therefore, be one that can run as an automated response to alarms (that is, without a user interface) and it must terminate automatically and release all resources.

You identify the script to run when adding or editing a metric in a monitoring profile in the Configure Performance Metric Thresholds dialog box on the Access Management Console. See “Configuring Metrics” on page 29 for more information on adding and editing metrics.

Because versions of Presentation Server prior to 4.5 cannot use monitoring profile functionality, perform the following procedure to run a script.

To run a script for servers running Presentation Server 4.0 or earlier

1. In the left pane of the Presentation Server Console, expand the Servers folder, then click the name of the local server for which you want to add a script.

2. In the right pane, click the Resource Manager tab to display the current status of the server.

3. Select the metric for which you want to run the script; right-click and select Properties. The Server Metric Properties dialog box opens.

4. From the Script configuration tab, click Run Script on transition up to red.

Note After you install the SNMP service, you must restart the computer for Resource Manager alerts to be sent or received.

Page 50: Monitoring Server Performance

50 Monitoring Server Performance with Citrix Presentation Server Document Center

5. Click Browse to locate the script. The script must be on a local drive and the System account must have access to run it. Select only executable files here and be aware that they run as a process in the background.

6. To copy metric configuration to other servers or applications, click Apply to other servers.

To copy the configuration of the current metric to other metrics in the Metrics list, click Copy properties to other metrics.

7. Click OK to confirm your changes and Resource Manager runs the executable file when the metric indicator you specified turns red.

Receiving Failed Import AlertsResource Manager warns you of failed attempts to update the summary database, and can be configured to send alerts under these circumstances. In its red state, an icon on the Summary Database tab identifies failures to commit any record in the last attempted update to the database, and the Summary Database Configuration dialog box allows you to notify administrators of any such failure. For further information, see “Monitoring the Status of the Summary Database” on page 57 and “Setting up a Summary Database” on page 19.

Receiving License Server Connection Failure AlertsWith the Citrix Licensing feature, Citrix licensing is handled by one or more license servers. Computers running Citrix Presentation Server communicate with license servers to ensure that client sessions are licensed appropriately. A license server connection failure alert is raised when a server cannot communicate with its associated license server. This may be due to a hardware failure on the license server, the license service on the license server malfunctioning, or network problems between the license server and the computer running Citrix Presentation Server.

When contact with a license server is lost, the computer running Citrix Presentation Server lapses into a licensing grace period. Typically, the licensing grace period is 30 days. During this period, the Citrix Presentation Server software is fully functional and connections to the server work normally. Contact with the license server must be reestablished before the grace period ends, or the software is reduced automatically to single user mode and only the administrator can log on to the server.

Note You cannot type directly in the box; you must click Browse.

Page 51: Monitoring Server Performance

CHAPTER 6Document Center

Recording the History of Servers and Applications

OverviewThis chapter explains how you can use Resource Manager to store details of server performance, application instances, and resource usage in a summary database. Topics include:

• How Resource Manager information gets into a summary database

• What information you should record in a summary database

• Scheduling data collection for a summary database

For information about how to set up a summary database, see “Setting up a Summary Database” on page 19.

Resource Manager and the Summary DatabaseEach Resource Manager server creates a summarized version of its daily activity. This information is known as summary data. There are various types of summary data:

• Server-specific performance metrics

• Server-specific session information

• Farm-wide application metrics

• Farm-wide server events (for example, server-down)

• Alert metrics

Farm-wide metric and server event information is generated as summary data by the Farm Metric Server in addition to its own server-specific information and metrics. Farm-wide metrics are routed from servers to the Farm Metric Server through the zone data collector.

Page 52: Monitoring Server Performance

52 Monitoring Server Performance with Citrix Presentation Server Document Center

Summary data is kept in temporary summary files that are stored locally on each server in a database-compatible format. Each hour, Resource Manager adds the summary data gathered over the previous hour to the summary files. Summary files are stored in the following folders: \\Program Files\Citrix\Citrix Resource Manager\SummaryFiles folder for 32-bit servers, and \\Program Files (x86)\Citrix\Citrix Resource Manager\SummaryFiles folder for 64-bit servers.

On a daily basis, the summary data held by each server in the server farm is collected by the Database Connection Server. The Database Connection Server then updates the summary database. After the summary database is updated, summary files are overwritten with new data.

The following diagram represents a typical server farm using the Resource Manager summary database. It shows the flow of both server-specific and farm-wide summary data from the farm servers to the summary database through the Database Connection Server.

A diagram showing a server farm using a summary database

SERVER FARM

ExternalDatabase

DatabaseConnection

Server

Farm MetricServer

Server C

Server A

Farm-wide metrics collated on Farm Metric Server continuously (through zone data collector)

Hourly summary data sent once a day

Hourly server metric data sent once a day

Daily summarydata

Server B

Page 53: Monitoring Server Performance

Chapter 6 Recording the History of Servers and Applications 53Document Center

What Information Should I Record in the Database?Resource Manager servers, by default, automatically record process-related and session-related information and server events in the summary database, as well as alert messages regarding performance, errors, and user monitoring.

The scope and detail of this information cannot be changed. A number of default metrics are also included in the database when you install Resource Manager. You can modify the default metric set or specify your own for individual or multiple servers.

Issues to Consider when Selecting Database InformationYou need to consider some important issues when selecting information to be stored in your database. These are outlined below.

The Benefits of Keeping Long-Term Resource Manager InformationStore information that will be useful; for example, if you are billing users for RAM usage, you can store process information until you create bills for it.

It is a waste of summary database space to store information that is of little significance for your server farm. For example, there is little point recording the amount of application usage on a server if you don’t care what specific applications are being used.

Deciding which Metrics Information to StoreYou need to decide what metric information to store for different servers in your server farm. This is important if you have several servers contributing differing metric information to the database because it may confuse an assessment of the server farm as a whole when using summary database reports.

Note When you make changes to the summary database configuration, it can take up to 10 minutes for other Presentation Server Consoles in the farm to be updated with the new settings.

Note You can choose to record information from sources such as removable USB drives. If a counter disappears for a time (for example if the USB drive is removed), it will stop being logged in the local database or summarized in the summary database. If it reappears, logging resumes automatically.

Page 54: Monitoring Server Performance

54 Monitoring Server Performance with Citrix Presentation Server Document Center

Consider the following scenario:

An administrator selects the “LogicalDisk - % Free Space” metric to be recorded in the database for half of the servers in the server farm.

At a later date, an administrator generates a report from the summary database to find the servers most in need of hard drive upgrades (least hard drive free space).

Because half of the servers in the server farm are not storing this metric in the database, the administrator does not get an accurate report of the overall state of the server farm for the metric.

How Can Recording a Metric Affect Database Growth?You need to consider how quickly your summary database will grow when storing your chosen metric information, and the amount of hard drive space available to the DBMS. The larger your server farm and the more information you store, the faster your database will grow. For more information about estimating the growth of the database, see “Estimating Summary Database Growth” on page 60.

To help you manage database growth, you can remove unwanted data using a purging schedule. Database purging automatically deletes records older than a specified age. See “Removing Unwanted Information from the Database” on page 55 for details.

Selecting Server and Application Metrics to Record in the DatabaseWhenever you add a new metric, it is automatically set to be summarized. Refer to “Configuring Metrics” on page 29 for details about how to set and use metrics.

Reducing Summary DataResource Manager enables you to reduce the amount of summary data being generated. You can use the Collection Restrictions option described in the Resource Manager online help system to create summary data only for processes connected to, or part of, published applications or Resource Manager applications.

You can also stop alert information being recorded in the database using the Collection Restrictions options.

Note Collection restrictions may affect resource billing because process data that is not stored in the summary database cannot be billed.

Page 55: Monitoring Server Performance

Chapter 6 Recording the History of Servers and Applications 55Document Center

Scheduling Summary Data Collection and RemovalResource Manager gives you control over several important aspects of maintaining historical records in your summary database. These include:

• Ignoring periods of low server activity

• Automatically deleting records from the summary database by scheduling their removal after they are stored for a specified time

• Setting when you want the Database Connection Server to update the summary database with the day’s summary data

The detailed procedures to follow if you want to carry out these tasks are described in the Access Management Console help. The following sections provide a general overview of the tasks.

Ignoring Server Metrics during Periods of Low Server ActivityYou can configure each monitoring profile to ignore server metrics during periods of low server activity; for example, over weekends or late at night, where metric collection may be of little benefit and would increase database size unnecessarily. You can exclude server metrics from summary data on specific days of the week and/or during specific periods during each day. Alternatively, if you need to capture data about business processes such as overnight backups, you may prefer to set up continuous data capture. Note that session, process, application, and server event information is always recorded regardless of any settings you make.

Metric data collection can also be scheduled as part of the server default configuration.

Removing Unwanted Information from the DatabaseOver time, your database will grow in size as it stores summary data for the server farm. Records you store in the database are kept indefinitely, by default, which can lead to a large database in a short period of time. The greater the number of servers contributing to the database, and the greater the amount of summary data being stored for each server, the faster the database will grow.

Page 56: Monitoring Server Performance

56 Monitoring Server Performance with Citrix Presentation Server Document Center

You may want to keep some of the records stored in the database only for a certain length of time. For example:

• If you record the percentage of CPU interrupt time so you can assess potential hardware problems or server overloading on a monthly basis, you may not require the information after assessment

• If you record session and process information on your servers so you can bill users for their usage time, you may not want to keep the records after the bill is created

You can remove unwanted data from the database using a purging schedule. Purging automatically deletes records from the database after they are there for a specified period of time. You can also configure data so that it can be purged only after a bill is created for it. You can configure database purging using the following record type options:

• Events

• Metrics

• Sessions/processes (billed)

• Sessions/processes (not billed)

Setting a Purging ScheduleWhen you configure your purging schedule, you must specify how long the data is to be kept before being purged. The age of a piece of data is calculated by subtracting its end time from the current Database Connection Server time. Retention periods are set to “Indefinite” upon initial setup. The Indefinite setting never purges the associated data.

Important Ensure that the operating system time and date on the originating Resource Manager servers and the Database Connection Server are synchronized. This prevents data from being purged incorrectly; for example, if one of the servers in the farm has the date set two days behind that of the Database Connection Server, the data from it is purged two days earlier than expected.

Page 57: Monitoring Server Performance

Chapter 6 Recording the History of Servers and Applications 57Document Center

Setting the Summary Database Update TimeThe Database Connection Server automatically updates the summary database with data from each Resource Manager server once per day. This is referred to as the update time. The default update time on setup is 00:00 hours (midnight) local time. If this is inconvenient, change this to a time of day when server activity is low to prevent slow data transferral or interference with normal server farm activities.

During an update, each server in the farm first sends a request to the Database Connection Server asking for permission to send its summary data for the day. After accepting the request, the Database Connection Server receives the server’s summary data and then updates the summary database.

You can perform manual updates independently of the update time by clicking Update Now in Resource Manager’s Summary Database tab. You may want to do this, for example, if you want to generate reports on a fresh set of information.

If an update is unsuccessful, this is reported on the Resource Manager Summary Database tab on the Presentation Server Console and an alert is sent.

You can also temporarily “Sleep” the Database Connection Server to stop the database from being updated. You may want to do this to perform maintenance on the database.

Monitoring the Status of the Summary DatabaseYou can easily check the status of the summary database using the Summary Database tab.

To view the summary database status and run-time activity icons

1. In the left pane of the Presentation Server Console, click Resource Manager.

2. In the right pane, click the Summary Database tab. The Status area includes indicators showing the current Database Connection Server, Farm Metric Servers, run-time process, and database import states.

Note The update time is always interpreted in the time zone local to each server. Servers in different time zones will request to send their summary data at the update time in their local time zone.

Page 58: Monitoring Server Performance

58 Monitoring Server Performance with Citrix Presentation Server Document Center

The meanings of the status icons for the Database Connection Server On/Off/Configuration indicator are described below.

The meanings of the status icons for the Farm Metric Server indicator are described below.

The meanings of the status icons for the Run-time indicator are described below.

Not Configured The summary database is off or a Database Connection Server is not configured. In this state, no Resource Manager servers are creating or storing summary data for inclusion in the database.

OK The summary database is on and the Database Connection Server is correctly configured. In this state, Resource Manager servers are creating and storing summary data for inclusion in the database.

Critical The summary database software version for the Database Connection Server is not accepted because another server in the server farm has a later version of the summary database software installed. You need to upgrade the software on the Database Connection Server. See “Installing or Upgrading Resource Manager” on page 17 for details.Note: This situation can arise only when there are mixed releases of the summary database software within a server farm.

Warning The summary database is off or a Database Connection Server is not configured. In this state, no Resource Manager servers are creating or storing summary data for inclusion in the database.

OK The primary Farm Metric Server is active and has an accepted version of the summary database software installed..

Critical The summary database software version for the primary Farm Metric Server is not accepted because another server in the server farm has a later version of the summary database software installed. You need to upgrade the software on the primary Farm Metric Server. See “Installing or Upgrading Resource Manager” on page 17 for details.Note: This situation can arise only when there are mixed releases of the summary database software within a server farm.

Not Configured The summary database is off or a Database Connection Server is not configured. In this state, no Resource Manager servers are creating and storing summary data for inclusion in the database.

Sleep Automatic database updates are temporarily stopped for a specified period. This is known as Sleep mode. See the Resource Manager help for more information.

Page 59: Monitoring Server Performance

Chapter 6 Recording the History of Servers and Applications 59Document Center

The meanings of the status icons for the Failed Import indicator are described below.

Snooze The Database Connection Server is in an idle state between database updates. See the Resource Manager help for more information.

Warning The summary database is off or a Database Connection Server is not configured. In this state, no Resource Manager servers are creating or storing summary data for inclusion in the database.

OK The Database Connection Server is currently updating the database without error.

Critical A connection problem between the Database Connection Server and the DBMS that the summary database is on has occurred during a database update. Ensure the Database Connection Server user identification and password for the DBMS are correct. See Chapter 2, “Installing Resource Manager” for details. Use the Server Log for the Database Connection Server (click View Server Log) for further error information.

Not Configured The summary database is off or a Database Connection Server is not configured. No update was therefore attempted.

OK Data was successfully imported.

Critical An error occurred; the import was not successful.

Page 60: Monitoring Server Performance

60 Monitoring Server Performance with Citrix Presentation Server Document Center

Managing the Resource Manager Summary DatabaseUse the following sections to help you manage how much hard drive space your summary database will require over a period of time. The size of your summary database, as it grows over time, depends on the following basic factors:

• The number of servers in the server farm

• The average number of processes run on a server each day

• The number of metrics you are storing in the database

• The average number of server events for a server each day

• The length of time the database records are kept

• The DBMS summary database transaction log

Various categories of data are written to the database for the server or server farm. These are:

• Process information

• Server metrics

• Session information

• Application metrics

• Server events (server-down/server-up)

• Alert events

Estimating Summary Database GrowthYou can use the following equations to formulate an idea of how much information will be stored in the summary database per day. Note that these estimates are very approximate and each server or farm may vary considerably from the example. The following schedule of data is for a farm of 100 servers under typical loads.

Note The transaction log maintains a history of the data transactions for the summary database. Resource Manager does not automatically purge the DBMS summary database transaction log. You need to configure how the DBMS controls the transaction log to restrict its growth. See your DBMS documentation for details.

Page 61: Monitoring Server Performance

Chapter 6 Recording the History of Servers and Applications 61Document Center

Process information:

Estimate @ 600 sessions per day (with six processes per session)Estimate @ 152 bytes per row in process database tableEstimated total is 6 x 600 x 152 = 547,200 bytes per server per day

Server metrics:

Estimate @ 15 metrics per server (summarized at hourly intervals)Estimate @ 66 bytes per row in metrics database tableEstimated total is 15 x 66 x 24 = 23,760 bytes per server per day

Session information:

Estimate @ 100 sessions per server per dayEstimate @ 103 bytes per row in session database tableEstimated total is 100 x 103 = 10,300 bytes per server per day

Client history:

Estimate @ same number as sessions per server per day; that is 100Estimate @ 42 bytes per row in session database tableEstimated total is 100 x 42 = 4200 bytes per server per day

Connection history:

Estimate @ twice the number of client history records, not counting amalgamated connection history records (more if disconnects/reconnects occur); 1200 per server per dayEstimate @ 25 bytes per row in process database tableEstimated total is 1200 x 25 = 30000 bytes per server per day

Subtotal is 547,200 + 23,760 + 10,300 + 4200 + 30,000= 615,460 bytes per server per day

Application metrics:

Estimate @ 20 application metrics per farm (summarized at hourly intervals)Estimate @ 62 bytes per row in application metric database tableEstimated total is 20 x 62 x 24 = 29,760 bytes for the farm per day

Server events:

Estimate @ 1% of farm servers restarted per dayEstimate @ 36 bytes per row in event log database tableEstimated total is 1 x 36 = 36 bytes for the farm per day

Subtotal is 29,760 + 36 = 29,796 bytes for the farm per day

Page 62: Monitoring Server Performance

62 Monitoring Server Performance with Citrix Presentation Server Document Center

Alert events:

Estimate @ 70 alerts per dayEstimate @ 36 bytes per row in event log database tableEstimated total is 70 x 36 = 2,520 bytes for the farm per day

GRAND TOTAL is (615,460 + 29,796 + 2,520) x 100 = 61.8MB of summarized information stored in the database per day on a 100 Resource Manager server farm. (Note: To obtain megabytes from bytes, we divided by 1024 squared.)

Managing Summary Database GrowthFor a typical farm, summary data stored in your database can be substantial—in the above example six months of data could occupy 9.6 gigabytes (GB) of disk space if you do not purge the database of its data. Unless you manage your external database appropriately, it can grow until all available storage space is used.

You need to monitor the rate at which your database is growing. Do this by regularly checking how much disk space is available. You can then use this information to help you set metrics and purge schedules for your database in order to limit growth rates.

See “What Information Should I Record in the Database?” on page 53 for information about reducing the amount of data written to the summary database.

Some things you might want to do when using a summary database are to:

• Regularly check the available disk space on the database host computer so you can work out an average for the amount of information being stored each day.

• Regularly create reports for the information you store and analyze which metrics are appropriate for long-term storage and historical reporting for your system.

If you find you are keeping metrics in the database unnecessarily, remove them from the list being stored.

• Work out how often you need to check on resource usage for each metric.

Note You can configure your summary database DBMS to constrain database size. See the Resource Manager online help system for instructions about how to do this.

Page 63: Monitoring Server Performance

Chapter 6 Recording the History of Servers and Applications 63Document Center

You can create reports for these items on a regular basis and set up a purging schedule to remove them from the database after you create the reports. The more regular your reporting, the sooner you can purge the database of the information.

Page 64: Monitoring Server Performance

64 Monitoring Server Performance with Citrix Presentation Server Document Center

Page 65: Monitoring Server Performance

CHAPTER 7Document Center

Reporting and Analyzing Monitoring Information

OverviewThis chapter describes the reports you can produce using data that is held on each server or in a summary database. Topics include:

• Descriptions of the types of reports you can produce

• Generating detailed reports about current activity

• Generating summarized reports about past activity

• How reports from servers in different time zones and languages are handled

• Estimating the concurrent user capacity of a server

You can also use the Report Center in the Access Management Console to produce reports from a variety of real-time and historical data sources. For further details about how to use the Report Center, see the assistance provided on the Report Center screens and the Access Management Console online help system.

Detailed instructions about how to produce Resource Manager reports are provided in its online help system.

Report Center ReportsThe Report Center is one of the system management tools provided through the Access Management Console.

The Report Center allows you to easily generate reports from a variety of real-time and historical data sources. A wizard helps you select the type of report, the data to be displayed, and the schedule for running the report. You can view the status of your scheduled report and adjust the report parameters before you run it.

Page 66: Monitoring Server Performance

66 Monitoring Server Performance with Citrix Presentation Server Document Center

Information about installation and software requirements for the Access Management Console is in the Citrix Presentation Server Administrator’s Guide. User assistance for the extensions is provided on-screen in the Access Management Console.

Note that the reports available in Report Center are different from those available in Resource Manager. So, to familiarize yourself with all the monitoring and reporting capabilities at your disposal, explore both the Presentation Server Console (containing Resource Manager) and the Access Management Console (containing Dashboard and Report Center).

The Report Center contains several report types, for example:

• Application Availability report. Lists the published applications in a farm and the percentage of time when they were available, in a planned down state, and in an unplanned down state.

• Server Availability report. Lists the servers in a farm and the percentage of time when they were available, in a planned down state, and in an unplanned down state.

• Server Performance report. Displays, for the selected servers, the average CPU utilization, the minimum memory available, and the maximum number of concurrent connections. The report also contains details about the most heavily loaded servers.

• Application report. Provides details about all published applications including the servers they are published on, users and groups with access to them, and any options used by clients that connect to the applications.

• Application Usage report. Shows the most frequently used applications, the number of times each application was accessed, and the maximum number of concurrent users.

• Server Snapshot report. Details the values of performance metrics at a specified time on any server in your farm.

• Alerts report. Lists the alerts that occurred in a given time frame. This report contains a chart showing the frequency of alerts over time and a pie chart showing the top ten alerts.

This is not an exhaustive list. For a full list of reports, see the Report Center interface.

About Report Jobs and SpecificationsEach report that you create is listed as a job. Jobs can have various states including Running, Completed, and Error. Use the Jobs display to check the status of your report, view completed reports, and rerun reports.

Page 67: Monitoring Server Performance

Chapter 7 Reporting and Analyzing Monitoring Information 67Document Center

A specification encapsulates the details that are used to run a report, including all of the items you selected and the publishing details (the output format and how the report is saved and distributed to others). This makes it easy to reuse the report later. If you plan to rerun a report with the same selections on a regular basis, creating a specification for the report saves you time when you come to rerun it because the details are stored so you don’t have to specify them again.

You create a specification from a report type either directly using the Generate Specification wizard, or as part of the process of creating a report using the Generate Report wizard, during which you are given the choice of saving the report details as a specification.

You run a report that is based on a specification from the Specifications display or using a schedule. After you have create a specification for it, you can also schedule the report to run a report at a specific time or times from the Specifications display.

You can change the location where specifications and jobs configuration are stored. The alternatives are the local (non-roaming) part of the user’s profile, or the non-local part of the user’s profile (that “roams” if the user has a roaming profile), so that you can run reports with saved specifications and jobs from different machines.

Resource Manager ReportsResource Manager enables you to produce two report types:

• Current. These reports are generated from Resource Manager information stored in the local database on each server and can be generated either on a per server basis or for multiple servers. Information is recorded at 15 second intervals and is referred to as real-time.

• Summary. These reports are generated from data stored in the summary database and can be generated either on a per-server basis or for multiple servers. Summary reports are less detailed than current reports; however, they can be generated for any times within the period for which data is stored in the summary database. You can customize summary reports to include or exclude various record types.

Important Summary reports include metric information only for times when data is stored in the summary database. If you set Resource Manager to capture metric data only for certain times for a specific server, data from outside these time periods is not included.

Page 68: Monitoring Server Performance

68 Monitoring Server Performance with Citrix Presentation Server Document Center

All reports are displayed in a report viewer window. Reports contain navigation links to allow you to step between the top of the report and any of the tables within it. You can also print the report or save it in HTML or comma-separated values (CSV) format.

If your number format settings use commas as decimal separators, Resource Manager replaces them with semicolons (;) when saving reports to CSV format because commas are used specifically in this format to separate the items of data in the file.

Creating Reports on Current ActivityCurrent reports can provide detailed information about the following:

• Statistics about current process activity or application usage in your server farm

• Statistics about current user activity in your server farm

• The status of a server at a particular moment

Reporting on the Use of Processes or ApplicationsYou can produce a report containing information about monitored processes in the server farm or processes that are running on a specific server.

The report tells you about the resource usage of the process, the times it is active and loaded, and the user(s) running it. For example, you might use this report to examine a server’s details when one or more of its metrics enter an alarm state.

The level of detail shown in the report depends on the options you select when you set up the report. The report has a general information section at the top, including the date and time of report generation, the report type, and the various report options. Within the report, you can click links to navigate to the different sections.

The information shown in the report is as follows:

Note Resource Manager uses a number of HTML templates to create reports. These are located on each server in the Templates subfolder of the Resource Manager folder. To avoid inconsistencies in the reports, do not edit the templates.

Page 69: Monitoring Server Performance

Chapter 7 Reporting and Analyzing Monitoring Information 69Document Center

• Processes

The Processes table shows details about each instance of the selected process (or all processes) being run on the server by the selected user (or all users) at the time you generate the report. The table shows the following information:

• Name. The name of the process.

• Path. The location of the process on the server. This may help you distinguish between instances.

• Product Date. The date from the program file. This tells you when the executable was created and may help you identify the process.

• Type. A Microsoft Windows-defined process type code.

• Version. The version number that is defined within the program file. Note: This information may not be present for some programs.

• Start Time. The date and time at which this instance of the process was loaded on the selected server. Times are shown in the local time zone of the server for which the report is being generated.

• % Active. The length of time that this instance of the process was active, as a percentage of the time since it was loaded on the server.

• User. The user name and domain of the user who is running this instance of the process.

• CPU

The CPU table shows CPU usage statistics for the user(s) running the process(es) at the time you generate the report. The table shows the following information:

• Overall CPU utilization

• Kernel mode

• User mode

• CPU utilization while active

• Kernel mode

• User mode

For information about what these categories mean, consult the documentation for the server operating system.

Page 70: Monitoring Server Performance

70 Monitoring Server Performance with Citrix Presentation Server Document Center

• Memory

The Memory table shows memory usage statistics for the user(s) running the process(es) at the time you generate the report. The table shows the following information:

• Working set while active

• Nominal working set

• Peak working set

• Peak paged pool

• Peak non-paged pool

• Peak page file usage

• Page faults/sec

For information about what these categories mean, consult the documentation for the server operating system.

• Times

The Times table shows process activity statistics for the user(s) running the process(es) at the time you generate the report. The table shows the following information:

• Time loaded. The length of time for which the processes were loaded on the server.

• Time active. The length of time for which the processes were active.

• Active/loaded ratio. The length of time that the processes were active, as a percentage of the time since they were loaded on the server.

• Total time loaded. The total length of time for which all the processes were loaded.

• Total time active. The total length of time for which all the processes were active.

• First/last recorded use. For all the processes that were running, the earliest and latest times at which a process was started. Times are shown in the local time zone of the server for which the report is being generated.

Page 71: Monitoring Server Performance

Chapter 7 Reporting and Analyzing Monitoring Information 71Document Center

• Users

If you generate the report for all users, the Users table shows the following information for the time you generate the report:

• user name

• domain of all the users running the processes,

• number of running processes

If you generate the report for a single user, the report includes only that user.

Reporting on User ActivityYou can use Resource Manager to provide information about users who have active sessions on a specific server at the time you generate the report. The user report tells you about the users’ sessions and the processes they are running.

Sessions and processes are shown as different sections in the report and are described below. The report has a general information section at the top, including the date and time of report generation, the report type, and the various selections made when the report was set up. Within the report, you can click links to navigate to the different sections.

The information shown in the report is as follows:

• Sessions

The Sessions table lists all the sessions that are being run by the selected user(s) on the selected server at the time you generate the report. The table shows the following information:

• User. The ID and domain of the user who is running the session.

• Session Name. The name of the session.

• Protocol. The protocol that was used for the session: for example, TCP/IP.

• Start Time. The date and time at which the session was started. Times are shown in the local time zone of the server for which the report is being generated.

• Duration. How long the session has been running.

• Process Count. The number of processes that are running in the session. This information is expanded in the Processes table further down the report.

• Processes

Page 72: Monitoring Server Performance

72 Monitoring Server Performance with Citrix Presentation Server Document Center

The Processes table shows a complete list of all the processes, and the number of instances of each, run by the selected users on the selected server. The processes are listed in order of start time, giving you a picture of what the user was doing most recently.

Reporting on Administration ActivityYou can create a report containing the names of the users who performed an administrative action, the date and time the action took place, the object affected by the action, and other details.

This report requires connection to a logging database that stores the information regarding configuration changes. Details about creating logging databases and connecting to them are included in the Citrix Presentation Server Administrator’s Guide and the user interface.

Looking Back to a Specific Time on a ServerIf there is a problem on a particular server, you can produce a Server Snapshot report, showing its status at the time the problem occurred. You can then use this report to evaluate why the problem happened.

The report tells you about users and processes utilizing the server and presents information about monitored metrics.You can retrieve information for anytime within the previous 96 hours.

You can also generate Server Snapshot reports from the real-time graph of a server metric. See the Resource Manager online help for more information.

Within the report, you can click links to navigate to the different sections. The information shown in the report is as follows:

• Processes over 5% CPU or Memory

This table shows any processes that use more than 5% of the CPU load or memory.

• Users and Processes

Page 73: Monitoring Server Performance

Chapter 7 Reporting and Analyzing Monitoring Information 73Document Center

This table shows the users and the processes they ran on the selected server. The table shows the following information:

• User. The user name and domain of each user who had an active session on the server.

• Process. The name of each process that the user ran on the server. There is a separate entry for each instance of the process.

• Path. The location of each process instance on the server. This may help you distinguish between instances.

• Version. For each instance, the version number that is defined within the program file. This information may not be present for some programs.

Page 74: Monitoring Server Performance

74 Monitoring Server Performance with Citrix Presentation Server Document Center

• Metrics

The Metrics table gives information about every metric monitored on the server over the 15 second period. The table shows the following information:

• Object. This is the category being monitored. It is a physical or logical system resource: for example, a computer’s hard drive.

• Instance. An individual example of the object or a state it needs to reach to be counted. For example, a computer may have more than one hard drive. In this case, the instance identifies which drive is being examined.

• Counter. This is the specific aspect of the object being monitored; for example, free disk space.

• Time. The date and time at which the operating system last recorded the metric. Dates are shown in dd/mm/yyyy format; times are shown in the local time zone of the server for which the report is being generated.

• Value. The value of the metric at the time of sampling. Some metrics are average values.

Creating Reports on Past ActivitySummary reports can provide summarized information about the following:

• Statistics about past process activity in your server farm

• Statistics about past user activity in your server farm

• The status of a server for a specified one hour period

Note The Terminal Services object is returned from Windows Terminal Server. The Inactive Sessions counter for this object includes idle sessions.

Important Generating more than two summary reports at a time will overburden most systems.

Page 75: Monitoring Server Performance

Chapter 7 Reporting and Analyzing Monitoring Information 75Document Center

You can also generate reports from the summary database using an external package such as Crystal Reports. To help you do this, the database schema used by the summary database is described in “Summary Database Schema” on page 95. Citrix provides several Crystal Reports templates that you can use. These templates are available in several languages, and are available for download from http://www.citrix.com/download/.

Citrix offers a Semantic Model (Report Model) of the summary database. The Semantic Model can be used to create reports and charts using the SQL Server 2005 Report Builder, and includes some example report definitions.

The Semantic Model also groups data into objects to reduce the number of relationships and simplify the process of extracting meaningful data from the database. It adds brief descriptions of all the objects and fields too.

You deploy the model using either the Reporting Services Report Manager (RSRM) or the SQL Server Management Studio (SSMS).

Detailed instructions about how to install and use the Semantic Model can be found on the Citrix Knowledge Center at http://knowledgebase.citrix.com.

Specific Processor UsageYou can use Resource Manager to provide information about the resource usage of a process, users who ran it, and on what servers it ran over a selected period.

The level of detail shown in the report depends on the options you select when you set up the report. Remember, if you select a specific server and/or user, the report includes only the information related to that server or user.

The options you choose depend on why you are generating the report. For example, you might include the CPU and memory statistics because you want to get an indication of the load that a program imposes on the server.

Page 76: Monitoring Server Performance

76 Monitoring Server Performance with Citrix Presentation Server Document Center

Within the report, you can click links to navigate to the different sections. The information shown in the report is as follows:

• CPU

For processes that are finished, the CPU table shows CPU usage statistics for the user(s) who ran the selected process and the server(s) on which it ran. The table shows the following information:

• Overall CPU utilization

• Kernel mode

• User mode

• CPU utilization while active

• Kernel mode

• User mode

For information about what these categories mean, consult the documentation for the server operating system.

• Memory

For processes that are finished, the memory table shows memory usage statistics for the user(s) who ran the process and the server(s) on which it ran. The table shows the following information:

• Working set while active

• Nominal working set

• Peak working set

• Peak paged pool

• Peak non-paged pool

• Peak page file usage

• Page faults/sec

For information about what these categories mean, consult the documentation for the server operating system.

Page 77: Monitoring Server Performance

Chapter 7 Reporting and Analyzing Monitoring Information 77Document Center

• Times

The Times table shows process activity statistics for the users who ran the process and the servers on which they ran. The table shows the following information:

• Time loaded. The length of time for which the process was loaded on the server.

• Time active. The length of time that the process was active.

• Active/loaded ratio. The length of time that the process was active, as a percentage of the length of time that it was loaded on the server.

• Total time loaded. The total length of time for which the process was loaded, for all its different locations and versions.

• Total time active. The total length of time for which the process was active, for all its different locations and versions.

• First/last recorded use. The earliest and latest times at which the process was started.

Times are shown in the local time zone of the server requesting the report.

• Users

The Users table shows the following information:

• user name

• domain of the users running the processes,

• number of running processes

If you generate the report for a single user, the report includes only that user.

• Servers

The Servers table shows a list of all the servers on which the user executed the selected process. If you generate the report for a single server, this section of the report is omitted.

Looking Back at Specific Users’ ActivitiesYou can use Resource Manager to provide information about a user’s resource usage, sessions, and the processes used and on what servers, over a selected period.

Page 78: Monitoring Server Performance

78 Monitoring Server Performance with Citrix Presentation Server Document Center

The level of detail shown in the report depends on the options you select when you set up the report. For example, you might use this report when you want to examine the activity of a specific user; for example, to analyze work patterns.

Within the report, you can click links to navigate to the different sections. The following information is shown in the report:

Page 79: Monitoring Server Performance

Chapter 7 Reporting and Analyzing Monitoring Information 79Document Center

• Session Summary

The Session Summary table lists all the selected user’s sessions over the specified report period, on the selected server(s), and for the selected process(es). The table shows the following information:

• Start Time. The date and time at which the session started. Times are shown in the local time zone of the console requesting the report.

• End Time. The date and time at which the session finished. Times are shown in the local time zone of the console requesting the report. This area remains blank if the session was still running when the summary database was last updated.

• Duration. The length of time for which the session ran. This area remains blank if the session was still running when the summary database was last updated.

• Server. The server on which the session ran.

• Client. The name of the client device. If the user employs a server instead of a separate client device, the client device name is shown as “Console.”

• Published Application. If the user connected to any published applications, this column shows the names of the applications.

• Winstation. The WinStation or Sessionname for the session.

• Protocol. The protocol used for the session; for example, ICA.

• Process Count. The total number of processes that were run during the session.

• Processes. A list of the unique process names that were run during the session. For example, if the Process Count is shown as six and only one process name appears in Processes, that process ran six times. If you select the Process Summary option under Report Options when you generate the report, you will see more detailed information about each process in a Process Summary table.

• Favorite Processes

The Favorite Processes table lists the top 10 processes run by the selected user, on the selected server(s), and of the selected process(es). The

Page 80: Monitoring Server Performance

80 Monitoring Server Performance with Citrix Presentation Server Document Center

processes are listed in descending order of most frequent use. The table shows the following information:

• Count. The number of times the user ran the process.

• Process. The name of the process.

• Time Loaded. The total length of time that the user ran the process.

• Time Active. The total length of time for which the process was actively operating (as opposed to just being loaded).

• % Active. The total length of time for which the process was active, as a percentage of the total time for which it was loaded.

• Last Use. The date and time at which the user most recently ran the process.

• Process Summary

The Process Summary table shows a complete list of all the processes (or the selected process, if you selected a single process) run by the selected user, within the selected report period, on the selected server(s). The processes are listed in order of earliest first, giving a picture of what the user was doing at specific times. The table shows the following information:

• Start Time. The date and time at which the user started the process. Times are shown in the local time zone of the console requesting the report.

• End Time. The date and time at which the process terminated. Times are shown in the local time zone of the console requesting the report. This area remains blank if the session was still running when the summary database was last updated.

• Server. The server on which the user ran the process.

• Process. The name of the process.

• Exit Code. The exit code returned for the process, indicating the status of the process when it terminated. Consult the software vendor for more information about the exit codes that are used for specific processes.

• % Active. The total length of time for which the process was active, as a percentage of the total time for which it was loaded.

Page 81: Monitoring Server Performance

Chapter 7 Reporting and Analyzing Monitoring Information 81Document Center

• Statistics

The Statistics table shows general statistics about sessions run by the user on the selected server(s) and for the selected process(es). The table shows the following information:

• Session duration. The duration of all completed sessions that the user ran. The table shows the average, minimum, and maximum session duration, and the total duration of all sessions.

• Session duration per day. The duration of all completed sessions that the user ran per working day.

• Sessions per day. The number of sessions run per working day.

• Processes per day. The number of processes run per working day.

• Processes per session. The number of processes per session calculated from the process count in the Session Summary table against all the sessions that the user ran.

• Servers

The Servers table shows a list of all the servers on which the user executed one or more processes and the number of processes the user ran. Remember, if you generate the report for a single server, the report includes information only for that server.

Activities on a Specific ServerServer Summary reports produce statistical information for a particular server for a one hour period. You can use this report to:

• See users and associated process activity for a farm server, including the process path and version.

• See the metrics saved to the external database for a server, including their associated object along with the metric counter and mean value. The time the metric was recorded and the value also appear.

Users and processes, and metrics are shown as two different sections in the report and are described below. The report has a general information section at the top, including the date and time of report generation, the report type, and the various selections made when the report was set up. Within the report, you can click links to navigate to the different sections.

Note Working days are defined as Monday to Friday.

Page 82: Monitoring Server Performance

82 Monitoring Server Performance with Citrix Presentation Server Document Center

The following information is shown in the report:

• Users and Processes

This table shows the user(s) and the processes they ran on the selected server over the selected hour. The table shows the following information:

• User. The user name and domain of each user who had an active session on the server.

• Process. The name of each process that was run on the server. There is a separate entry for each instance of the process.

• Path. The location of each process instance on the server. This may help you distinguish between instances.

• Version. For each instance, the version number that is defined within the program file. Process versions are available for some Win32 processes, but not for Win16 or DOS processes.

• Metrics

The Metrics table gives information about every metric that was monitored on the server over the selected hour. The table shows the following information:

• Object. This is the category being monitored. It is a physical or logical system resource; for example, a computer’s hard drive.

• Counter. This is the specific aspect of the object being monitored; for example, disk free space.

• Instance. An individual example of the object or a state it needs to reach to be counted. For example, a computer may have more than one hard drive. In this case, the instance would identify which drive is being examined.

• Time. The date and time at which the operating system last recorded the metric. Dates are shown in dd/mm/yyyy format; times are shown in the local time zone of the server.

• Value. The average value of the metric over the selected hour.

Note The Terminal Services object is returned from Windows Terminal Server. The Inactive Sessions counter for this object includes idle sessions.

Page 83: Monitoring Server Performance

Chapter 7 Reporting and Analyzing Monitoring Information 83Document Center

Displaying Reports from Servers in Different Time Zones or Locales

This section describes how reports are displayed if you have servers in farms that are located in different time zones and/or are localized to different languages. These details apply to both Report Center and Resource Manager reports.

What if a Reporting Server Is in a Different Time Zone?Times and dates that you enter when generating reports are understood by the system to be in the local time for the server on which you are reporting.

Times and dates shown in most report tables are in the local time zone for the server being reported on, but there are exceptions depending on the nature of the report. For example the User Summary and Process Summary reports show session times in the local time zone of the server requesting the report. Information on reports that display time zones other than that of the reporting server is included in the Advanced Concepts Guide.

The report header displays the time of report generation in the local time of the server that requested the report, plus any UTC (Universal Time, Coordinated) offset. Server Summary reports also show UTC offset for times in the Metrics table.

An example scenario is a server farm with servers in various parts of the world. This example server farm has:

• Resource Manager servers located in New York, United States (UTC - five hours)

• Resource Manager servers in Berlin, Germany (UTC + one hour)

The server farm administrator generates a Server Summary report for the last six hours from a server in New York at 13:00 hours local time. The report shows a generation time of “13:00-05:00” (New York time). An event that occurred two hours previously (11:00 hours in New York) in Berlin is shown as 16:00 hours—the local time the event occurred in Berlin.

Note The Configuration Logging report displays only the local time of the server that requested the report; the UTC offset is not displayed.

Page 84: Monitoring Server Performance

84 Monitoring Server Performance with Citrix Presentation Server Document Center

What if a Reporting Server Uses a Different Language?Resource Manager software supports a number of languages. In a server farm with differing language versions of Resource Manager present, reports are localized to the locale where the console requesting the report is. In the above example, the information from Berlin (German locale) would be reported in American English (United States locale).

Estimating the Concurrent User Capacity of a ServerYou can use the summary database to estimate the concurrent user capacity of a server. The summary database stores information concerning CPU and memory usage for various processes running on Citrix Presentation Server.

To determine user capacity

1. Either

• Add the server to the published applications in an existing farm

—or—

• Create a new farm and limit user access to approximately 20 users per server

2. Using the information in this guide and the Resource Manager online help system, configure and enable the summary database.

3. Ask your users to launch and use the published applications running on the server you are testing. Ensure that users continue to use the server over a suitable period of time, to create a record of resource usage that reflects your users’ normal working practices.

4. Create a Crystal report that queries the following:

• Average CPU and memory usage for the specific processes being assessed, per user

• Average CPU and memory usage for other processes associated with a user, such as explorer.exe, ctfmon.exe, osa.exe, wfshell.exe, csrss.exe, svchost.exe, and winlogon.exe

• A defined threshold; for example, no more than 90% CPU usage and/or no more than 3GB of RAM used

• A calculation to extrapolate the number of users that can be divided into the threshold given the resource usage above

Page 85: Monitoring Server Performance

Chapter 7 Reporting and Analyzing Monitoring Information 85Document Center

In general, the longer the time users work on the server, the more accurate the data averages that can be collected from the summary database.

Page 86: Monitoring Server Performance

86 Monitoring Server Performance with Citrix Presentation Server Document Center

Page 87: Monitoring Server Performance

CHAPTER 8Document Center

Billing Users for Resource Usage

OverviewResource Manager enables you to produce Billing reports based on the information stored in your summary database.

Billing reports use the resource usage data from the summary database and a fee profile to calculate the charges for users of the server farm. You define fee profiles to reflect different charging rates and currencies.

You can organize individual users and/or user groups into billable groups known as cost centers. You can also bill individual domain users or user groups.

When Resource Manager generates a Billing report, it calculates the charges by multiplying the resources used during the report period by the associated fee.

All reports are displayed in a report viewer window. You can save a report in HTML or comma-separated values (CSV) format for later printing, viewing, or inclusion in documents.

The detailed steps you need to carry out to complete the tasks outlined in this chapter are provided in the Resource Manager online help system.

Creating a Fee ProfileBefore you can produce Billing reports, configure at least one fee profile. If a Billing report is generated without using a fee profile, no cost information is provided.

Page 88: Monitoring Server Performance

88 Monitoring Server Performance with Citrix Presentation Server Document Center

In each fee profile you specify a currency and a list of rates to charge for resource usage. Resources you can include in a fee profile are:

• Session time

• CPU time

• Memory

• Process loaded time

• Process active time

Organizing Users into Cost Centers for BillingYou can organize users into cost centers. For example, to charge different departments within an organization, you create a cost center for each department. Each cost center is linked to a fee profile: it is best to create at least one fee profile before you create cost centers.

The Summary database users cost center is a predefined cost center that cannot be removed, edited, or renamed. This cost center is defined as all users who have an entry in the summary database.

Producing Billing ReportsThere are two types of Billing reports: Cost Center and Domain Users.

Cost Center ReportsThis type of Billing report is used to charge cost centers for their use of certain resources that are being monitored in the server farm. You need to have at least one fee profile and one cost center to generate useful Cost Center Billing reports. The report tells you about the use of various chargeable resources by the cost center(s) over a selected period.

If there are users who are not members of any cost center, you can generate Billing reports for them by billing against domain users. See “Domain User Reports” on page 89 for details.

You can avoid billing of system processes by configuring Resource Manager to ignore those processes. See the Resource Manager online help system for more information about ignoring processes.

Important Local user groups on farm servers that are included in cost centers can be billed only if the server in question is currently running.

Page 89: Monitoring Server Performance

Chapter 8 Billing Users for Resource Usage 89Document Center

Domain User ReportsThis type of Billing report is used to charge individual users or user groups within Microsoft Windows domains for their use of certain resources that are being monitored in the server farm. You need to create at least one fee profile to generate useful Domain User Billing reports. The report tells you about the use of various chargeable resources by the users over a selected period.

Information Presentation in the ReportThe columns shown in the report depend on the options you choose in the Report Options dialog box. The report is laid out on a per cost center or domain user basis, and is further broken down into the sessions used over the report period. Totals for each column are displayed at the end of the report.

• User. The domain user(s) or cost center(s) for which the report is being generated.

• Session Start. The date and time each session began during the report period. Dates are shown in dd/mm/yyyy format; times are shown in the local time zone of the console requesting the report, along with any UTC offset.

• Session Elapsed Time. The total length of all session times during the report period. Unfinished sessions are billed for the time elapsed during the report period. Report Totals for session elapsed time at the end of the report shows the combined total of all user sessions, including unfinished sessions, during the report period.

• Process. The names of the processes run by the user over the course of each session.

• CPU Time Used. The CPU time used for each process over the course of each session during the report period. Report Totals for CPU time used at the end of the report shows the combined total of all CPU time used during the report period.

• Memory Used. The memory used for each process (in megabyte-minutes) over the course of each session. Report Totals for memory used at the end of the report shows the combined total of all memory used during the report period.

• Process Loaded Time. The length of time each process was loaded during each session. Report Totals for process loaded time at the end of the report shows the combined total of all process loaded times during the report period.

• Process Active Time. The length of time each process was active during each session. Report Totals for process active time at the end of the report

Page 90: Monitoring Server Performance

90 Monitoring Server Performance with Citrix Presentation Server Document Center

shows the combined total of all process active times during the report period.

• Cost. The amount to be charged for each process during each session. Report Totals for cost at the end of the report shows the combined total of all charges during the report period.

• Fee Profile. The fee schedule and currency for chargeable resources is listed at the end of the report.

Page 91: Monitoring Server Performance

APPENDIX ADocument Center

Default Metric Set

OverviewThis appendix describes the default set of metrics that is monitored by Resource Manager for the Microsoft Windows Server 2003 operating system. The explanations for each metric are based on the default configuration. Alternative configurations may produce alerts under different circumstances from those described here.

Default Set of MetricsCitrix MetaFrame Presentation ServerData Store Connection FailureThis counter displays the number of minutes that the computer running Presentation Server has been disconnected from the data store.

Page 92: Monitoring Server Performance

92 Monitoring Server Performance with Citrix Presentation Server Document Center

Logical Disk

% Disk TimeGives an indication of how busy the disks are. The disk can become a bottleneck for a number of reasons:

• The server has too little physical memory so is “thrashing.” If thrashing is occurring, the pages/sec will also be high.

• A single user is running an application or process that makes extensive and rapid use of the disk. You can investigate such a user by running Current Process and Current User reports.

• Many users are performing large amounts of disk activity. The speed of the disks may be the server’s bottleneck.

The metric % Disk Time is calculated using a number of factors and values above 100% are possible. If you see values of 100% disk time, the disk is in constant use. Values greater than 100% may indicate that the disk is too slow for the number of requests.

% Free SpaceThe server is running out of disk space. Several factors can cause this:

• A lack of remaining disk space after installing the operating system and applications

• A large number of users are logged on (now or in the past) and their configuration data, settings, and files are taking up too much space

• A rogue process or user is consuming a large amount of disk space

Important Resource Manager Logical Disk metrics require that Windows Logical Disk counters are enabled. You can determine whether or not they are enabled by running the diskperf utility at the command line. For more information about the Logical Disk performance counters, use the diskperf /? command.

Page 93: Monitoring Server Performance

Appendix A Default Metric Set 93Document Center

MemoryAvailable BytesInforms you if too much memory is being used. This could be because:

• Too many users are logged on.

• The applications that users are running are too memory-hungry for the amount of memory available on the server.

• Some user or process is using a large amount of memory. Running a Current Process report may help you track this down.

Being short on memory could result in “thrashing.” The disk usage and paging metrics may also change to a red alarm state.

Pages/secA large amount of paging indicates either:

• The system is low on physical memory and the disk is being used extensively as virtual memory. This can be caused by too many users being logged on, too many processes running, or a rogue process “stealing” virtual memory.

—or—

• An active process or processes are making large and frequent memory accesses.

Too much paging degrades the performance of the server for all users logged on. The Available Bytes, Disk, and % Processor Time metrics may also enter warning or danger states when a large amount of paging occurs. Short bursts of heavy paging are normal, but long periods of heavy paging seriously affect server performance.

Network InterfaceBytes Total/SecThis metric gives a good indication of how much network activity this server is generating or receiving. If this metric changes to yellow or red, the server is experiencing unusually high network activity and may cause a network saturation. If too many users are remotely logged on for the network card to support, this metric may change to a warning or danger state. In this situation, the bottleneck could be the network or server’s network card, which may decrease performance of users’ sessions.

Page 94: Monitoring Server Performance

94 Monitoring Server Performance with Citrix Presentation Server Document Center

Paging File% UsageA high page file usage usually indicates that the server’s page file size should be extended. If the Memory: Pages/sec metric is also high, it is a good idea to add more physical memory.

Processor% Interrupt TimeThe processor is spending a large amount of time responding to input and output rather than user processing. A large value for interrupt time usually indicates a hardware problem or a very busy server.

% Processor TimeA high processor time for a long period of time indicates that the processor is the bottleneck of the server, too many users are logged on, or there is a rogue user or process (use the Current Process report to investigate).

SystemContext Switches/SecA large number of threads and/or processes are competing for processor time.

Terminal ServicesActive SessionsA large number of users are logged on and running applications. The server may begin running out of memory or processor time and performance for users may deteriorate. Note that current Presentation Server Console sessions are listed as “active.”

Inactive SessionsA large number of disconnected sessions are taking virtual memory. Remove some disconnected sessions or reduce the length of time for which disconnected sessions can persist until they are automatically removed.

Page 95: Monitoring Server Performance

APPENDIX BDocument Center

Summary Database Schema

OverviewThis appendix describes the layout and organization of the Resource Manager summary database schema. The summary database is a data warehouse made up of historical data imported from each Resource Manager server in the server farm. The database schema of the local database is denormalized, whereas the data stored in the summary database is extensively normalized to save storage space. It includes:

• A diagram of database entity relationships

• Descriptions of each database entity table

Database Entity Relationship DiagramThe diagram on the following page shows all the tables in the schema and the links required to retrieve data. The main tables are named SDB_xxx and have a white background to their title bar. Supporting (or look-up) tables have a gray background to their title bar and are (mostly) named LU_xxx. Some supporting tables are used more than once. This reduces the space required to store the data.

Page 96: Monitoring Server Performance

96 Monitoring Server Performance with Citrix Presentation Server Document Center

A diagram showing database entity relationships

Page 97: Monitoring Server Performance

Appendix B Summary Database Schema 97Document Center

Database Entity Table DescriptionsThe following data types are all described using Microsoft SQL Server. For type mappings to other SQL databases, see the type mapping section at the end of this appendix.

Alert HistorySDB_ALERTSThis table stores a history of alerts generated on the farm, subject to configuration.

Column Name Data Type

Value Description

PK_SDB_ALERTID int NOT NULL

Unique ID for referential integrity (Primary Key)

FK_SDB_SESSIONID int NULL Foreign key reference to originating session in SDB_SESSION, if any

FK_SERVERID int NULL Foreign key reference to server record, if any in LU_SERVER

FK_METRICID int NULL Foreign key reference to metric record, if any in LU_METRIC table

FK_FARMNAMEID int NOT NULL

Foreign key reference to record in LU_FARMNAME table

FK_ALERT_GUIDID int NOT NULL

Foreign key reference to record in LU_ALERT_GUID table

FK_ALERT_STATUS_CODE int NOT NULL

Foreign key reference to text in LU_ALERT_STATUS table

TIMESTAMP datatime NOT NULL

Timestamp of alert (stored in UTC)

Page 98: Monitoring Server Performance

98 Monitoring Server Performance with Citrix Presentation Server Document Center

Foreign Key(s)

• FK_SDB_SESSIONID

• FK_SERVERID

• FK_METRICID

• FK_FARMNAMEID

• FK_ALERT_GUIDID

• FK_ALERT_STATUS_CODE

Unique

• PK_SDB_ALERTID

Support Tables Referenced

• LU_METRIC

• LU_SERVER

• LU_FARMNAME

• LU_ALERT_GUID

• LU_ALERT_STATUS

Application HistorySDB_APPHISTORYThis table stores a history of published applications supported on each server.

Column Name Data Type

Value Description

PK_SDB_APPHISTID int NOT NULL

Unique identifier for referential integrity (Primary Key)

FK_APPNAMEID int NOT NULL

Pointer to LU_APPNAME, application name

FK_SERVERID int NOT NULL

Pointer to LU_SERVER, server name

Page 99: Monitoring Server Performance

Appendix B Summary Database Schema 99Document Center

Foreign Key(s)

• FK_APPNAMEID

• FK_ SERVERID

Unique

• FK_ SERVERID

• FK_ APPNAMEID

• STARTTIME

Support Tables Referenced

• LU_APPNAME

• LU_SERVER

Application MetricsSDB_APPMETRICSThis table stores a summary of all application metrics in a server farm.

STARTTIME datetime NOT NULL

Time that application was supported by this server (stored in UTC)

ENDTIME datetime NULL Time that application no longer supported by server (stored in UTC)

SERVERUTCBIAS int NOT NULL

Bias in minutes to be subtracted from time fields to find the event time in the server’s local time zone

Column Name Data Type

Value Description

FK_APPNAMEID int NOT NULL

Pointer to LU_APPNAME, application name and type

FK_FARMNAMEID int NOT NULL

Pointer to LU_FARMNAME, farm name

FK_OBJECTID int NOT NULL

Pointer to LU_OBJECT, object name

Column Name Data Type

Value Description

Page 100: Monitoring Server Performance

100 Monitoring Server Performance with Citrix Presentation Server Document Center

Foreign Key(s)

• FK_APPNAMEID

• FK_FARMNAMEID

• FK_OBJECTID

Unique

• FK_APPNAMEID

• FK_FARMNAMEID

• FK_OBJECTID

• APPMETRICUPDATETIME

Additional Indexed Columns

APPMETRICUPDATETIME

Support Tables Referenced

• LU_APPNAME

• LU_FARMNAME

• LU_OBJECT

APPMETRICUPDATETIME datetime NOT NULL

Timestamp of last application metric data point in dataset (stored in UTC)

APPMETRICSAMPLEPERIOD int NOT NULL

Sample period of summary record in seconds

APPMETRICDATACOUNT int NOT NULL

Number of data points used to summarize this row

MINAPPMETRICVALUE float NOT NULL

Minimum application metric value

MAXAPPMETRICVALUE float NOT NULL

Maximum application metric value

MEANAPPMETRICVALUE float NOT NULL

Mean application metric value

STDDEVAPPMETRICVALUE float NOT NULL

Standard deviation of application metric values

Column Name Data Type

Value Description

Page 101: Monitoring Server Performance

Appendix B Summary Database Schema 101Document Center

Client HistorySDB_CLIENTHISTORY

Foreign Key(s)

• FK_SDB_SESSIONID

• FK_CLIENTID

• FK_CLIENTPROPERTIESID

• FK_LAUNCHERID

Support Tables Referenced

• SDB_SESSION

• LU_CLIENT

• LU_CLIENTPROPERTIES

• LU_LAUNCHER

Column Name Data Type

Value Description

FK_SDB_SESSIONID int NOT NULL

Pointer into SDB_SESSION for sessionID

FK_CLIENT_ID int NOT NULL

Pointer into LU_CLIENT for client name and address

FK_CLIENTPROPERTIESID int NOT NULL

Pointer into LU_CLIENT_PROPERTIES for build number, version, client type

STARTTIME datetime NOT NULL

Time client connected to session (stored in UTC)

ENDTIME datetime NOT NULL

Time client disconnected, or time IMA service was stopped (stored in UTC)

SERVERUTCBIAS int NOT NULL

Bias in minutes to be subtracted from time fields to adjust the time to the server’s local time zone

USINGSG int NOT NULL

Boolean indicating whether or not Secure Gateway was used

FK_LAUNCHERID int NOT NULL

Pointer into LU_LAUNCHER table

Page 102: Monitoring Server Performance

102 Monitoring Server Performance with Citrix Presentation Server Document Center

Connection HistorySDB_CONNECTIONHISTORYThis table stores connected and disconnected session counts at the time of any session connect or disconnect event for each server in the farm.

Foreign Key(s)

• FK_ SERVERID

Unique

• FK_ SERVERID

• TIMESTAMP

Support Tables Referenced

• LU_ SERVER

SDB_CONNECTIONHISTORY

FK_SERVERID int NOT NULL

Pointer to LU_SERVER, RM server name

CONNECTED int NOT NULL

Count of connected sessions

DISCONNECTED int NOT NULL

Count of disconnected sessions

TIMESTAMP datetime NOT NULL

Bias in minutes to be subtracted from time fields to adjust the time to the server's local time zone

Page 103: Monitoring Server Performance

Appendix B Summary Database Schema 103Document Center

Event LogSDB_EVENTLOGThis table stores generic IMA service up and IMA service down events that occur on a server farm.

Foreign Key(s)

FK_SERVERID

Additional Indexed Columns

EVENTTIME

Support Tables Referenced

LU_SERVER

Unique

• EVENTCODE

• FK_SERVERID

• EVENTTIME

Column Name Data Type

Value Description

EVENTCODE int NOT NULL

Generic event ID.0 = Server lost contact with the primary Farm Metric Server1 = IMA service start time2 = System start time3 = IMA Service shut down normally4 = IMA Service shut down due to scheduled reboot

FK_SERVERID int NOT NULL

Pointer to LU_SERVER, Resource Manager server name

EVENTTIME datetime NOT NULL

Timestamp of event occurrence (date and time, stored in UTC)

SERVERUTCBIAS int NOT NULL

Bias in minutes to be subtracted from time fields to find the event time in the server’s local time zone

Page 104: Monitoring Server Performance

104 Monitoring Server Performance with Citrix Presentation Server Document Center

Configurable Server MetricsSDB_METRICSThis table stores all metrics imported from each Resource Manager server in the server farm. The metric values are summarized to reduce data storage requirements.

Primary Key (Unique)

• FK_SERVERID

• FK_METRICID

• METRICUPDATETIME

Column Name Data Type

Value Description

FK_SERVERID int NOT NULL

Pointer to LU_SERVER, Resource Manager server name

FK_METRICID int NOT NULL

Pointer to LU_METRIC, metric description

METRICUPDATETIME datetime NOT NULL

Timestamp of last metric data point in dataset (stored in UTC)

SERVERUTCBIAS int NOT NULL

Bias in minutes to be subtracted from time fields to find the event time in the server's local time zone

METRICSAMPLEPERIOD int NOT NULL

Sample period of summary record in seconds

METRICDATACOUNT int NOT NULL

Number of data points used to summarize this row

MINMETRICVALUE float NOT NULL

Minimum metric value

MAXMETRICVALUE float NOT NULL

Maximum metric value

MEANMETRICVALUE float NOT NULL

Mean metric value

STDDEVMETRICVALUE float NOT NULL

Standard deviation of metric values

FK_SERVERINFID Int NULL Reference to folders and zone information

Page 105: Monitoring Server Performance

Appendix B Summary Database Schema 105Document Center

Foreign Key(s)

• FK_METRICID

• FK_SERVERID

Additional Indexed Columns

METRICUPDATETIME

Support Tables Referenced

• LU_METRIC

• LU_SERVER

• LU_SERVERINF

ProcessesSDB_PROCESSThis table stores process data per user.

Column Name Data Type

Value Description

PK_SDB_PROCESSID int NOT NULL

Unique identifier for referential integrity (Primary Key)

FK_SERVERID int NOT NULL

Pointer to LU_SERVER, Resource Manager server name

FK_PROCESSID int NOT NULL

Pointer to LU_PROCESS

FK_USERID int NOT NULL

Pointer to LU_USER, user name

FK_CLIENTID int NOT NULL

Pointer to LU_CLIENT, client name

Page 106: Monitoring Server Performance

106 Monitoring Server Performance with Citrix Presentation Server Document Center

FK_APPNAMEID int NOT NULL

Pointer to LU_APPNAME, application name and type of the application with which the process is most closely associated. This is determined by examining each process in the process parenting hierarchy (starting with the process itself and working upwards) and comparing the process executable path with that of all published applications. If a match is found, FK_APPNAMEID reflects this; if no match is found, FK_APPNAMEID is set to reflect a blank application name.

FK_SDB_SESSIONID int NOT NULL

Pointer to SDB_SESSION, session data

PID int NOT NULL

Process identifier (from operating system)

EXITCODE int NOT NULL

The exit code returned by the executable when it completes. 259 means “Still executing”

AFFINITY int NOT NULL

A mask indicating which processor(s) the process can use to execute itself

STARTTIME datetime NOT NULL

Time the process started executing (stored in UTC)

ENDTIME datetime NULL

Time the process completed execution - or the time the process statistics were last updated when EXITCODE = 259 (stored in UTC)

TOTALTIME float NOT NULL

End time - Start time (in milliseconds)

ACTIVETIME float NOT NULL

A summation of all monitored periods of a process where the CPU time was greater than 1%

KERNELUSE float NOT NULL

The percentage of kernel CPU time the process has used during its lifetime

USERUSE float NOT NULL

The percentage of user CPU time the process has used during its lifetime

USERACTIVE float NOT NULL

The percentage of user CPU that was being used during the ACTIVETIME

Column Name Data Type

Value Description

Page 107: Monitoring Server Performance

Appendix B Summary Database Schema 107Document Center

Primary Key (Unique)

• PK_SDB_PROCESSID

Foreign Key(s)

• FK_APPNAMEID

• FK_CLIENTID

• FK_PROCESSID

• FK_SERVERID

• FK_USERID

• FK_SDB_SESSIONID

KERNELACTIVE float NOT NULL

The percentage of kernel CPU that was being used during the ACTIVETIME

MEMORY float NOT NULL

Sum of the average number of megabytes per minute used by the process during its lifetime

MEMORYACTIVE float NOT NULL

The number of megabytes per minute used by the process during the ACTIVETIME

WORKSET int NOT NULL

The peak recorded working set of the processes at any point during its lifetime

PAGEFILE int NOT NULL

The peak page file allocated to process in bytes at any point in its lifetime

PAGEFAULTS int NOT NULL

The number of page faults that occurred

PAGEDPOOL int NOT NULL

The peak paged pool usage in bytes at any point in its lifetime

NONPAGEDPOOL int NOT NULL

The peak non-paged pool usage in bytes at any point in its lifetime

SESSID int NOT NULL

Matches the SESSIONID value in the SESSION table

SERVERUTCBIAS int NOT NULL

Bias, in minutes, to be subtracted from time fields to find the event time in the server's local time zone

Column Name Data Type

Value Description

Page 108: Monitoring Server Performance

108 Monitoring Server Performance with Citrix Presentation Server Document Center

Additional Indexed Columns

• STARTTIME

• ENDTIME

Unique

• FK_SERVERID

• STARTTIME

• PID

Support Tables Referenced

• LU_APPNAME

• LU_CLIENT

• LU_PROCESS

• LU_SERVER

• LU_USER

• SDB_SESSION

User InformationSDB_SESSIONThis table stores session data per user.

Column Name Data Type

Value Description

PK_SDB_SESSIONID int NOT NULL

Unique identifier for referential integrity (Primary Key)

FK_USERID int NOT NULL

Pointer to LU_USER, user name

FK_SERVERID int NOT NULL

Pointer to LU_SERVER, Resource Manager server name

FK_CLIENTID int NOT NULL

Pointer to LU_CLIENT, client name

FK_APPNAMEID int NOT NULL

Pointer to LU_APPNAME, application name and type for the published application with which the session was launched

Page 109: Monitoring Server Performance

Appendix B Summary Database Schema 109Document Center

Primary Key (Unique)

• PK_SDB_SESSIONID

FK_WINSTATIONID int NULL Pointer to LU_WINSTATION, name of the WinStation through which the session is connected

PROTOCOL int NULL

SESSIONSTART datetime NOT NULL

Start time of the first process run under the user's session (stored in UTC)

SESSIONEND datetime NULL End time of the final process to end as part of the session (stored in UTC)

DURATION float NULL End time - Start time in milliseconds

SERVERUTCBIAS int NOT NULL

Bias in minutes to be subtracted from time fields to find the event time in the server's local time zone

SESSIONUTCBIAS int NOT NULL

Bias in minutes to be subtracted from time fields in which to find the session start time

SESSIONID int NOT NULL

A Session ID (generated by operating system)

TOTALTIMESUM float NOT NULL

Sum of the total time for all completed processes in milliseconds

ACTIVETIMESUM float NOT NULL

Sum of the active time for all completed processes in milliseconds

CPUTIMESUM float NOT NULL

Sum of the CPU time for all completed processes in milliseconds

MEMORYSUM float NOT NULL

Sum of the memory usage for all completed processes

BILLSTATUS int NOT NULL

0 = This session is not billed

Column Name Data Type

Value Description

Page 110: Monitoring Server Performance

110 Monitoring Server Performance with Citrix Presentation Server Document Center

Foreign Key(s)

• FK_APPNAMEID

• FK_CLIENTID

• FK_SERVERID

• FK_USERID

• FK_WINSTATIONID

Additional Indexed Columns

• STARTTIME

• ENDTIME

Unique

• FK_SERVERID

• SESSIONSTART

• SESSIONID

Support Tables Referenced

• LU_APPNAME

• LU_CLIENT

• LU_SERVER

• LU_USER

• LU_WINSTATION

Version ControlSCHEMAVERSIONThis table stores the version of the summary database schema. The version number is queried on connection by the Database Connection Server to determine if it and the summary database schema are compatible.

Column Name Data Type Value Description

VERSION int NOT NULL Version number of database schema

Page 111: Monitoring Server Performance

Appendix B Summary Database Schema 111Document Center

Support and Look-Up TablesLU_ALERT_ARGSThis contains supplementary information on the alert if any exists.

Primary Key (Unique)

• FK_SDB_ALERTID

• POSITION

LU_ALERT_GUIDLookup table of alert type GUIDs..

Primary Key (Unique)

PK_ALERT_GUIDID

LU_ALERT_STATUSLookup table of alert status codes.

Column Name Data Type Value Description

FK_SDB_ALERTID int NOT NULL

Unique ID for referential integrity (Primary Key)

POSITION int NOT NULL

Position indicates a marker for preserving the order of supplementary arguments text (if any)

ARGTEXT nvchar(255) NOT NULL

Supplementary arguments text

Column Name Data Type Value Description

PK_ALERT_GUIDID int NOT NULL

Unique ID for referential integrity (Primary Key)

GUID nvchar(260) NOT NULL

GUID text

Column Name Data Type

Value Description

STATUSCODE smallint NOT NULL

Unique ID for referential integrity (Primary Key) representing the numerical value of the code itself

Page 112: Monitoring Server Performance

112 Monitoring Server Performance with Citrix Presentation Server Document Center

Primary Key (Unique)

STATUSCODE

LU_ALERT_STATUS_TEXTLookup table of the alert status codes text. This table is not populated by the schema creation script. It is intended for population by language specific supplementary SQL scripts..

Primary Key (Unique)

• FK_ALERT_STATUSCODE

• LANG

LU_ALERT_TEXTLookup table of the alert types text. This table is not populated by the schema creation script. It is intended for population by language specific supplementary SQL scripts..

Primary Key (Unique)

FK_ALERT_GUIDID, LANG

Column Name Data Type Value Description

FK_ALERTSTATUSCODE smallint NOT NULL

Foreign Key reference to STATUSCODE in the LU_ALERT_STATUS table

LANG nchar(2) NOT NULL

2 character language identifier

STATUS_TEXT nvchar(2048) NOT NULL

Status code textual description

Column Name Data Type Value Description

FK_ALERT_GUIDID smallint NOT NULL

Foreign Key reference to LU_ALERT_GUID table

LANG nchar(2) NOT NULL

2 character language identifier

ALERTTEXT nvchar(2048) NOT NULL

Alert type textual description

Page 113: Monitoring Server Performance

Appendix B Summary Database Schema 113Document Center

LU_ALERT_CATEGORY_TEXTLookup table of the alert category types text. This table is not populated by the schema creation script. It is intended for population by language specific supplementary SQL scripts.

This table is intended for use as a custom mechanism to categorize alerts.

Primary Key (Unique)

• FK_ALERT_GUIDID

• LANG

LU_APPNAMELook-up table of published application names.

Primary Key (Unique)

PK_APPNAMEID

Unique

APPNAME, APPTYPE

Column Name Data Type Value Description

FK_ALERT_GUIDID int NOT NULL

Foreign Key reference to LU_ALERT_GUID table

LANG nchar(2) NOT NULL

2 character language identifier

CATEGORYTEXTTEXT nvchar(2048) NOT NULL

Alert type textual description

Column Name Data Type Value Description

PK_APPNAMEID int NOT NULL

Unique identifier for referential integrity (Primary Key)

APPNAME nvarchar(256) NOT NULL

Application name

APPTYPE int NOT NULL

Application type:0 = Presentation Server published application1 = Resource Manager application

Page 114: Monitoring Server Performance

114 Monitoring Server Performance with Citrix Presentation Server Document Center

LU_CLIENTLook-up table of client names.

Primary Key (Unique)

PK_CLIENTID

Unique

• CLIENTNAME

• CLIENTADDRESSFAMILY

• CLIENTADDRESS

LU_CLIENTPROPERTIESLook-up table of client build, version (if available), and a reference to the LU_CLIENTTYPEMAPPINGS table.

Primary Key (Unique)

Column Name Data Type Value Description

PK_CLIENTID int NOT NULL

Unique identifier for referential integrity (Primary Key)

CLIENTNAME nvarchar(32) NOT NULL

Client name

CLIENTADDRESSFAMILY int NOT NULL

Client address family:2 = AF_INET6 = AF_IPX

CLIENTADDRESS nvarchar(20) NOT NULL

Client address

Column Name Data Type

Value Description

PK_CLIENTPROPERTIESID int NOT NULL

Unique identifier for referential integrity (Primary Key)

FK_CLIENTTYPEID int NOT NULL

Reference to LU_CLIENTTYPEMAPPINGS

BUILD int NOT NULL

Client build number

VERSION nvarchar(64)

NOT NULL

Client version, or “ ” if not available

Page 115: Monitoring Server Performance

Appendix B Summary Database Schema 115Document Center

PK_CLIENTPROPERTIESID

Unique

• FK_CLIENTTYPEID

• BUILD

• VERSION

LU_CLIENTTYPEMAPPINGSMaps protocol type and client product identifier onto a client type name. Known mappings are populated when the schema is created. New ones are added as ICA n or RDP n where n is the client product identifier.

Primary Key (Unique)

PK_CLIENTTYPEID

Unique

• CLIENT_TYPE

• PROTOCOL_TYPE

Column Name Data Type Value Description

PK_CLIENTTYPEID int NOT NULL

Unique identifier for referential integrity (Primary Key)

PROTOCOL_TYPE int NOT NULL

Protocol type.0 = Console1 = ICA2 =RDP

CLIENT_TYPE int NOT NULL

Client product identifier

CLIENTTYPENAME nvarchar(32) NOT NULL

Name of this client type (for example, ICA Win32)

Page 116: Monitoring Server Performance

116 Monitoring Server Performance with Citrix Presentation Server Document Center

LU_FARMNAMELook-up table for server farm names. It is a support table for LU_SERVER.

Primary Key (Unique)

PK_FARMNAMEID

Unique

FARMNAME

LU_INSTANCELook-up table of instances; for example, “C:\.”

Primary Key (Unique)

PK_INSTANCEID

Unique

INSTANCE

LU_LAUNCHERLook-up table of launchers, for example, Program Neighborhood Agent.

Primary Key (Unique)

Column Name Data Type Value Description

PK_FARMNAMEID int NOT NULL

Unique identifier for referential integrity (Primary Key)

FARMNAME nvarchar(255) NOT NULL

Server farm name

Column Name Data Type Value Description

PK_INSTANCEID int NOT NULL

Unique identifier for referential integrity (Primary Key)

INSTANCE nvarchar(128) NULL

Instance name

Column Name Data Type Value Description

PK_LAUNCHERID int NOT NULL

Unique identifier for referential integrity (Primary Key)

LAUNCHER nvarchar(128) NULL Launcher name

Page 117: Monitoring Server Performance

Appendix B Summary Database Schema 117Document Center

PK_LAUNCHERID

Unique

LAUNCHER

LU_METRICLook-up table of metric definitions. This table stores look-up keys for objects, metric counters, and instances.

Primary Key (Unique)

PK_METRICID

Foreign Key(s)

• FK_INSTANCEID

• FK_METRICCOUNTERID

• FK_OBJECTID

Unique

• PK_OBJECTID

• FK_METRICCOUNTERID

• FK_INSTANCEID

Support Table Referenced

• LU_INSTANCE

• LU_METRICCOUNTER

• LU_OBJECT

Column Name Data Type

Value Description

PK_METRICID int NOT NULL

Unique identifier for referential integrity (Primary Key)

FK_OBJECTID int NOT NULL

Pointer to LU_OBJECT, object name

FK_METRICCOUNTERID int NOT NULL

Pointer to LU_METRICCOUNTER, metric counter name

FK_INSTANCEID int NOT NULL

Pointer to LU_INSTANCE, instance name

Page 118: Monitoring Server Performance

118 Monitoring Server Performance with Citrix Presentation Server Document Center

LU_METRICCOUNTERLook-up table of metric counters; for example, “% Disk time.”

Primary Key (Unique)

PK_METRICCOUNTERID

Unique

METRICCOUNTER

LU_NETDOMAINLook-up table for network domain names. It is a support table for LU_SERVER and LU_USER.

Primary Key (Unique)

PK_NETDOMAINID

Unique

NETDOMAIN

LU_OBJECTLook-up table of objects; for example, “Logical Disk.”

Column Name Data Type Value Description

PK_METRICCOUNTERID int NOT NULL

Unique identifier for referential integrity (Primary Key)

METRICCOUNTER nvarchar(128) NOT NULL

Metric counter name

Column Name Data Type Value Description

PK_NETDOMAINID int NOT NULL

Unique identifier for referential integrity (Primary Key)

NETDOMAIN nvarchar(32) NOT NULL

Network domain name

Column Name Data Type Value Description

PK_OBJECTID int NOT NULL Unique identifier for referential integrity (Primary Key)

OBJECT nvarchar (128) NOT NULL Object name

Page 119: Monitoring Server Performance

Appendix B Summary Database Schema 119Document Center

Primary Key (Unique)

PK_OBJECTID

Unique

OBJECT

LU_PATHLook-up table of application paths. This is a support table for LU_PROCESS.

Primary Key (Unique)

PK_PATHID

Unique

PATH

LU_PROCESSLook-up table of process details.

Column Name Data Type Value Description

PK_PATHID int NOT NULL

Unique identifier for referential integrity (Primary Key)

PATH nvarchar (260) NOT NULL

Path

Column Name Data Type Value Description

PK_PROCESSID int NOT NULL

Unique identifier for referential integrity (Primary Key)

FK_PATHID int NOT NULL

Pointer to LU_PATH, path name

FK_PROCESSNAMEID int NOT NULL

Pointer to LU_PROCESSNAME, executable name of the file associated with the process

TYPE int NOT NULL

Type of the executable. Win32, POSIX etc. -1 indexed, where -1 = system process, 0 means Win32 application

VERSION nvarchar(24) NOT NULL

Hexadecimal version number of executable

PRODUCTDATE datetime NOT NULL

Timestamp of executable (by originators)

Page 120: Monitoring Server Performance

120 Monitoring Server Performance with Citrix Presentation Server Document Center

Primary Key (Unique)

PK_PROCESSID

Foreign Key(s)

• FK_PATHID

• FK_PROCESSNAMEID

Unique

• FK_PATHID

• FK_PROCESSNAMEID

• TYPE

• VERSION

• PRODUCTDATE

Support Tables Referenced

• LU_PATH

• LU_PROCESSNAME

LU_PROCESSNAMELook-up table of process names. This is a support table for LU_PROCESS.

Primary Key (Unique)

PK_PROCESSNAMEID

Unique

PROCESSNAME

Column Name Data Type Value Description

PK_PROCESSNAMEID int NOT NULL

Unique identifier for referential integrity (Primary Key)

PROCESSNAME nvarchar (255) NOT NULL

Executable name of the file associated with the process

Page 121: Monitoring Server Performance

Appendix B Summary Database Schema 121Document Center

LU_SERVERLook-up table for Resource Manager server instances.

Primary Key (Unique)

PK_SERVERID

Foreign Key(s)

• FK_FARMNAMEID

• FK_NETDOMAINID

• FK_SERVERNAMEID

Unique

• FK_SERVERNAMEID

• FK_NETDOMAINID

• FK_FARMNAMEID

Support Tables Referenced

• LU_FARMNAME

• LU_NETDOMAIN

• LU_SERVERNAME

Column Name Data Type

Value Description

PK_SERVERID int NOT NULL

Unique identifier for referential integrity (Primary Key)

FK_SERVERNAMEID int NOT NULL

Pointer to LU_SERVERNAME, Resource Manager server name

FK_NETDOMAINID int NOT NULL

Pointer to LU_NETDOMAIN, network domain name

FK_FARMNAMEID int NOT NULL

Pointer to LU_FARMNAME, server farm name

UPDATETIME datetime NOT NULL

The last time summary data was written to the summary database for this particular server (stored in UTC)

Page 122: Monitoring Server Performance

122 Monitoring Server Performance with Citrix Presentation Server Document Center

LU_SERVERNAMELook-up table for Resource Manager server names. It is a support table for LU_SERVER.

Primary Key (Unique)

PK_SERVERNAMEID

Unique

SERVERNAME

LU_SERVERINFLook-up table for Resource Manager server folder and zone information.

Primary Key (Unique)

PK_SERVERINFID

Unique

• FK_SERVERINFID

• FOLDER

• ZONE

Column Name Data Type Value Description

PK_SERVERNAMEID int NOT NULL Unique identifier for referential integrity (Primary Key)

SERVERNAME nvarchar(32) NOT NULL Server name

Column Name Data Type Value Description

PK_SERVERINFID int NOT NULL Unique identifier for referential integrity (Primary Key)

FOLDER nvarchar (255) NOT NULL Folder name

ZONE nvarchar (128) NOT NULL Zone name

Page 123: Monitoring Server Performance

Appendix B Summary Database Schema 123Document Center

LU_USERLook-up table of user instances.

Primary Key (Unique)

PK_USERID

Foreign Key(s)

FK_NETDOMAINID

Unique

• FK_NETDOMAINID

• USERNAME

Support Tables Referenced

LU_NETDOMAIN

LU_WINSTATIONLook-up table for WinStation names.

Primary Key (Unique)

PK_WINSTATIONID

Unique

WINSTATION

Column Name Data Type Value Description

PK_USERID int NOT NULL

Unique identifier for referential integrity (Primary Key)

FK_NETDOMAINID int NOT NULL

Pointer to LU_NETDOMAIN, network domain name

USERNAME nvarchar(32) NOT NULL

User name

Column Name Data Type Value Description

PK_WINSTATIONID int NOT NULL

Unique identifier for referential integrity (Primary Key)

WINSTATION nvarchar(32) NOT NULL

Name of the WinStation through which the session is connected

Page 124: Monitoring Server Performance

124 Monitoring Server Performance with Citrix Presentation Server Document Center

SDB_SCRATCHA cross-reference table used to identify session records contained in Billing reports so that the sessions can be updated to show they were billed.

Primary Key (Unique)

None

Foreign Key(s)

None

Unique

None

Column Name Data Type

Value Description

CMC_ID int NULL Identifies the Presentation Server Console that generated the report

REPORT_ID int NULL Identifies the report in question

USER_ID NULL Identifies a user within the report

SCRATCH_DATE datetime NOT NULL

Time that this table row was created (stored in UTC)

FK_SDB_SESSIONID int NOT NULL

SDB_SESSION.PK_SDB_SESSIONID session table primary key value

SESSION_START datetime NULL SDB_SESSION.SESSIONSTART value (stored in UTC)

SESSION_DURATION float NULL SDB_SESSION.DURATION value

PROCESS_TOTAL_TIME float NULL SDB_SESSION.TOTALTIMESUM value

SERVER_UTC_BIAS int NULL SDB_SESSION.SERVERUTCBIAS value

SERVER_NAME nvarchar(32)

NULL The server on which the session ran

Page 125: Monitoring Server Performance

Appendix B Summary Database Schema 125Document Center

Additional Indexed Columns

• SESSION_START

• FK_SDB_SESSIONID

• CMC_ID

• REPORT_ID

• USER_ID

• FK_SDB_SESSIONID

SDB_HEURISTICSThis table holds miscellaneous data used by Resource Manager.

SQL Data Type MappingColumn data types vary between different SQL databases. A list of all data types used in the summary database for all supported SQL databases follows:

Column Name Data Type Value Description

PK_HEURISTIC nvarchar(64) NOT NULL Name of heuristic

HEURVALUE float NOT NULL Value of heuristic

Description Microsoft SQL Server

Oracle

Integer numbers int int

Small integer numbers tinyint smallint

Floating point numbers float float

Date and time datetime date

National variable length strings (Unicode) nvarchar varchar2

Page 126: Monitoring Server Performance

126 Monitoring Server Performance with Citrix Presentation Server Document Center

String length tableString Length Reference

LU_SERVERNAME\SERVERNAME 32 CNLEN=15 in LMCONS.H (NT Header), padded to RM1 size

LU_NETDOMAIN\NET\NETDOMAIN 32 DNLEN=15 in LMCONS.H (NT Header), padded to RM1 size

LU_FARMNAME\FARMNAME 256 MAXLEN_FARMNAME=255 in Cconfig.H (MF header)

LU_OBJECT\OBJECT 128 Taken from Monitor Subsystem

LU_METRICCOUNTER\METRICCOUNTER 128 Taken from Monitor Subsystem

LU_INSTANCE\INSTANCE 128 Taken from Monitor Subsystem

LU_APPNAME\APPNAME 39 PNDATA_BROWSERNAME_LENGTH in imacommonapplicationdefs.h (MF)

LU_USER\USERNAME 32 UNLEN=15 in LMCONS.H (NT Header), padded to RM1 size

LU_CLIENT\CLIENTNAME 32 CNLEN=15 in LMCONS.H (NT Header), padded to RM1 size

LU_CLIENT\CLIENTADDRESS 20 ADDRESS size = 20 in Wtsapi32.h (NT Header)

LU_WINSTATION\WINSTATION 32 WINSTATIONNAME_LENGTH=32 in CTXDEF.H (MF header)

LU_PATH\PATH 260 MAX_PATH in WINDEF.H (NT header)

LU_PROCESSNAME\PROCESSNAME 255 MAX_PATH in WINDEF.H (NT header)

LU_SERVERINF\ZONE 128 imacore.h

LU_SERVERINF\FOLDERS 255 Imacommonapplicationdefs.h

LU_CLIENTPROPERTIES\VERSION 64 Client VERSION

LU_CLIENTTYPEMAPPINGS \CLIENTTYPENAME

32 Client type name, e.g., "ICA Win32", "ICA Mac", "RDP Win32"

LU_LAUNCHER 256

Page 127: Monitoring Server Performance

Appendix B Summary Database Schema 127Document Center

Approximate Row Sizes for SDB TablesThese sizes are based on SQL Server.

* Null Bitmap Overhead is calculated as the integer of:

2 + ((Num_Cols + 7) / 8 ))

Table Fixed data size

Num Cols Null Bitmap Overhead*

Row Size (SQL Server)

SDB_ALERTS 34 8 2 36

SDB_APPHISTORY 32 6 1 33

SDB_APPMETRICS 60 10 2 62

SDB_CLIENTHISTORY 40 8 2 42

SDB_CONNECTIONHISTORY 24 5 1 25

SDB_EVENTLOG 20 4 1 21

SDB_METRICS 64 11 2 66

SDB_PROCESS 148 27 4 152

SDB_SESSION 100 18 3 103

Page 128: Monitoring Server Performance

128 Monitoring Server Performance with Citrix Presentation Server Document Center

Page 129: Monitoring Server Performance

INDEXDocument Center

Index

AAccess Management Console 7, 9–10, 15, 25, 30

alerts information 40Alerts node 36application nodes 36Dashboard snap-in 38farm nodes 36Monitoring Profiles node 31My Knowledge extension 44My Views feature 42Presentation Server node 36Report Center 65server health display 35server nodes 36, 40Servers node 39

Acrobat Reader, requirements 9alarms

counter 30instance 30object 30pausing notification of 34

alertscapping 37database update failure 50displaying 36email 44MAPI email configuration 44pausing 34Resource Manager 43SMS (cell/mobile phone) 47SMTP email 44SNMP 48Suite Monitoring and Alerting 10, 40–41, 44

applicationsmetrics 33reporting on use 68

Bbilling

cost centers 88domain users 89

Ccell/mobile phone (SMS) alerts 47cost centers 88counter 30counters, Windows Performance Monitor 9CSV files

saving to 68, 87

DDashboard 9

graphs 38data

see also summary data 7data sampling 35data source name 19

setting 20setting for Microsoft SQL Server 20setting for Oracle 21–22

data store 16Database Connection Server 52, 55, 57–59

assigning when uninstalling Presentation Server 18configuring 22

DBMS 59installing onto a server 16, 19requirements 16, 19transaction log 60

Page 130: Monitoring Server Performance

130 Monitoring Server Performance with Citrix Presentation Server Document Center

default metrics 91configuring 32data store connection failure 91logical disk 92memory 93network interface 93paging file 94processor 94set of 91system 94terminal services 94

dialog boxData Sources (ODBC) 20–21, 46Microsoft SQL Server DSN Configuration 20Oracle ODBC Driver Configuration 22Summary Database Configuration 22

Eemail alerts 44

configuring in Resource Manager 46creating a mail profile 45MAPI Connection Server 45Resource Manager Mail Service 46

FFarm Metric Server 51, 58

assigning when uninstalling Presentation Server 18configuration 32, 57selecting 17

farm-wide metrics 32fee profile 87

Ggateways for SMS alerts 48glossary 8graphs 38

Hhealth of servers 35history of metrics, recording 39

Iicons, meaning of 35, 37In 22Independent Management Architecture 27

installationchanging location after installation 27software requirements 15

instance 30

Jjobs, report 66

Kknowledge articles 10, 40

Llanguages 84licensing 16, 50local system identity 31LocalService identity 31, 49logical disk metrics 92

% Disk Time 92% Free Space 92

logs 39

MMAPI email

to configure 45memory metrics 93

Available Bytes 93Pages/sec 93

metricadding to monitoring profile 31checking status of 34configuring automatic alerts for 43counter 30custom data tasks 39default set of 32, 91history 39ignoring 55instance 30object 30selecting for summary database 54status of 35storing information 53summary database issues 53what is 30

Microsoft Jet 30Microsoft SQL Server 19–20, 75, 125modems (for SMS alerts) 47

Page 131: Monitoring Server Performance

Index 131Document Center

monitoringentire server farm 26real-time 29single server 27

monitoring profilesdefault 32defining 31earlier versions of Presentation Server 49what are 31

My Knowledge 10, 40–41installing 15

My Views 42

Nnetwork interface metrics 93

Bytes Total/sec 93NetworkService identity 31notifications, see alerts 31

Oobject, for metrics 30Oracle database 19, 22, 125

Ppaging file metrics 94

% Usage 94pausing alarms and alerts 34performance monitor 34Presentation Server Console 9, 11, 18, 57

installing 25Resource Manager properties 31Resource Manager UI 25updating settings 53

Process Summary report 75processes

reporting on current 68reporting on history of 75

processor metrics 94% Interrupt Time 94% Processor Time 94

profile for email alerts 45purging 56purging, summary database

overview 55

Rreal-time monitoring 29

Report Center 65, 83installing 15

reportsabout current activity 68about past activity 74Billing, overview 87Current Process 68Current User 71–72job 66Process Summary 75Resource Manager 67, 83saving 83saving Billing 90Server Snapshot 72Server Summary 81specification 67templates 68User Summary 77viewing saved Billing 90viewing saved current and summary 83

Resource 26Resource Manager

alerts 43changing location 27components 25displaying 25installing 15Mail Service 46reports 67, 83templates 68upgrading 17

roaming user profile 67running scripts 49

Sscript 49Semantic Model 75server

default monitoring 32determining user capacity 84reporting on recent activity of 72

server farm metrics 32Server Snapshot report 72Server Summary report 81service control manager 31SMS alerts 47

configuring 48modems 47

SNMP alerts 43, 48to configure 48

Page 132: Monitoring Server Performance

132 Monitoring Server Performance with Citrix Presentation Server Document Center

specifications, report 66Suite Monitoring and Alerting 37, 40–41, 44summary data 51

collection 55ignoring 55reducing 54removal 55

summary databaseDBMS supported 16estimating size 62growth management 62ignoring specific times during the day 55metric selection issues 53purging 55Semantic Model 75size considerations 60status 57transaction log 60turning off 24turning on 23update failure 50updating 52, 57what is 51

Summary Database Configuration dialog box 22

summary database schemaadministrator configurable server metrics 104application metrics 98–99diagram 96processes 105row sizes 127SQL data type mapping 125string lengths 126support and look-up tables 111tables

LU_ALERT_ARGS 111LU_ALERT_CATEGORY_TEXT 113LU_ALERT_GUID 111LU_ALERT_STATUS 111LU_ALERT_STATUS_TEXT 112LU_ALERT_TEXT 112LU_APPNAME 113LU_CLIENT 114LU_CLIENTYPEMAPPINGS 115LU_FARMNAME 114, 116LU_INSTANCE 116LU_LAUNCHER 116LU_METRIC 117LU_METRICCOUNTER 118LU_NETDOMAIN 118LU_OBJECT 118LU_PATH 119LU_PROCESS 119LU_PROCESSNAME 120LU_SERVER 121LU_SERVERINF 122LU_SERVERNAME 122LU_USER 123LU_WINSTATION 123SCHEMAVERSION 110SDB_ALERTS 97SDB_APPHISTORY 98SDB_APPMETRICS 99SDB_CLIENTHISTORY 101SDB_CONNECTIONHISTORY 102SDB_EVENTLOG 103SDB_HEURISTICS 125SDB_METRICS 104SDB_PROCESS 105SDB_SCRATCH 124SDB_SESSION 108

user information 108version control 110

suspending alarms and alerts 34system metrics 94

Context Switches/sec 94

Page 133: Monitoring Server Performance

Index 133Document Center

system requirementsDBMS 16, 19for email alerts 44for SMS alerts 47for SNMP alerts 48

TTAPI Servers 48terminal services metrics 94

Active Sessions 94Inactive Sessions 94

thresholds, metric 35, 38, 49time zones 83traps, list of SNMP 48

Uuninstalling Resource Manager 18user profile 67User Summary report 77users

reporting on current 71–72reporting on history of 77

Page 134: Monitoring Server Performance

134 Monitoring Server Performance with Citrix Presentation Server Document Center