Foglight™ Transaction Recorder 5.6.11 User Guide © 2015 Dell Inc. ALL RIGHTS RESERVED. This guide contains proprietary information protected by copyright. The software described in this guide is furnished under a software license or nondisclosure agreement. This software may be used or copied only in accordance with the terms of the applicable agreement. No part of this guide may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying and recording for any purpose other than the purchaser’s personal use without the written permission of Dell Inc. The information in this document is provided in connection with Dell products. No license, express or implied, by estoppel or otherwise, to any intellectual property right is granted by this document or in connection with the sale of Dell products. EXCEPT AS SET FORTH IN THE TERMS AND CONDITIONS AS SPECIFIED IN THE LICENSE AGREEMENT FOR THIS PRODUCT, DELL ASSUMES NO LIABILITY WHATSOEVER AND DISCLAIMS ANY EXPRESS, IMPLIED OR STATUTORY WARRANTY RELATING TO ITS PRODUCTS INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. IN NO EVENT SHALL DELL BE LIABLE FOR ANY DIRECT, INDIRECT, CONSEQUENTIAL, PUNITIVE, SPECIAL OR INCIDENTAL DAMAGES (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF PROFITS, BUSINESS INTERRUPTION OR LOSS OF INFORMATION) ARISING OUT OF THE USE OR INABILITY TO USE THIS DOCUMENT, EVEN IF DELL HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. Dell makes no representations or warranties with respect to the accuracy or completeness of the contents of this document and reserves the right to make changes to specifications and product descriptions at any time without notice. Dell does not make any commitment to update the information contained in this document. If you have any questions regarding your potential use of this material, contact: Dell Inc. Attn: LEGAL Dept 5 Polaris Way Aliso Viejo, CA 92656 Refer to our web site (software.dell.com) for regional and international office information. Trademarks Dell, the Dell logo, Foglight, IntelliProfile, NetVault, PerformaSure, PowerEdge, Tag and Follow, and Toad are trademarks of Dell Inc. "Apache HTTP Server", Apache, "Apache Tomcat" and "Tomcat" are trademarks of the Apache Software Foundation. Google is a registered trademark of Google Inc. Android, Chrome, Google Play, and Nexus are trademarks of Google Inc. Red Hat, JBoss, the JBoss logo, and Red Hat Enterprise Linux are registered trademarks of Red Hat, Inc. in the U.S. and other countries. CentOS is a trademark of Red Hat, Inc. in the U.S. and other countries. Microsoft, .NET, Active Directory, Internet Explorer, Hyper-V, SharePoint, SQL Server, Visual Basic, Windows, Windows Vista and Windows Server are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries. AIX, IBM, PowerVM and WebSphere are trademarks of International Business Machines Corporation, registered in many jurisdictions worldwide. Sun, Oracle, Java, Oracle Solaris, and WebLogic are trademarks or registered trademarks of Oracle and/or its affiliates in the United States and other countries. SPARC is a registered trademark of SPARC International, Inc. in the United States and other countries. Products bearing the SPARC trademarks are based on an architecture developed by Oracle Corporation. OpenLDAP is a registered trademark of the OpenLDAP Foundation. HP is a registered trademark that belongs to Hewlett-Packard Development Company, L.P. Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both. MySQL is a registered trademark of MySQL AB in the United States, the European Union and other countries. Novell and eDirectory are registered trademarks of Novell, Inc., in the United States and other countries. VMware, ESX, ESXi, vSphere, vCenter, vMotion, and vCloud Director are registered trademarks or trademarks of VMware, Inc. in the United States and/or other jurisdictions. Sybase is a registered trademark of Sybase, Inc. The X Window System and UNIX are registered trademarks of The Open Group. Mozilla and Firefox are registered trademarks of the Mozilla Foundation. "Eclipse", "Eclipse Foundation Member", "EclipseCon", "Eclipse Summit", "Built on Eclipse", "Eclipse Ready", "Eclipse Incubation", and “Eclipse Proposals" are trademarks of Eclipse Foundation, Inc. IOS is a registered trademark or trademark of Cisco Systems, Inc. and/or its affiliates in the United States and certain other countries. Apple, iPad, iPhone, Mac OS, Safari, Swift, and Xcode are trademarks of Apple Inc., registered in the U.S. and other countries. Ubuntu is a registered trademark of Canonical Ltd. Symantec and Veritas are trademarks or registered trademarks of Symantec Corporation or its affiliates in the U.S. and other countries. YAST is a registered trademark of SUSE LLC in the United States and other countries. Citrix, AppFlow, NetScaler, XenApp, and XenDesktop are trademarks of Citrix Systems, Inc. and/or one or more of its subsidiaries, and may be registered in the United States Patent and Trademark Office and in other countries. AlertSite and DéjàClick are either trademarks or registered trademarks of Boca Internet Technologies, Inc. Samsung, Galaxy S, and Galaxy Note are registered trademarks of Samsung Electronics America, Inc. and/or its related entities. MOTOROLA is a registered trademarks of Motorola Trademark Holdings, LLC. The Trademark BlackBerry Bold is owned by Research In Motion Limited and is registered in the United States and may be pending or registered in other countries. Dell is not endorsed, sponsored, affiliated with or otherwise authorized by Research In Motion Limited. Ixia and the Ixia four-petal logo are registered trademarks or trademarks of Ixia. Opera, Opera Mini, and the O logo are trademarks of Opera Software ASA. Tevron, the Tevron logo, and CitraTest are registered trademarks of Tevron, LLC. PostgreSQL is a registered trademark of the PostgreSQL Global Development Group. MariaDB is a trademark or registered trademark of MariaDB Corporation Ab in the European Union and United States of America and/or other countries. Vormetric is a registered trademark of Vormetric, Inc. Intel, Itanium, Pentium, and Xeon are trademarks of Intel Corporation in the U.S. and/or other countries. Other trademarks and trade names may be used in this document to refer to either the entities claiming the marks and names or their products. Dell disclaims any proprietary interest in the marks and names of others. Legend CAUTION: A CAUTION icon indicates potential damage to hardware or loss of data if instructions are not followed. WARNING: A WARNING icon indicates a potential for property damage, personal injury, or death. IMPORTANT NOTE, NOTE, TIP, MOBILE, or VIDEO: An information icon indicates supporting information. Foglight Transaction Recorder User Guide Updated - September 2015 Foglight Version - 5.7.5.1 Cartridge Version - 5.6.11 Contents Overview of Foglight synthetic monitoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Use the Foglight Transaction Recorder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Script window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Properties window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Root instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Browser instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 HTML Element instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12 External Scripting instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18 Special instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22 Network Diagnostics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26 Properties and Instruction descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27 Main window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33 Results window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ... ... ... ... .... .... .... .... ... ... ... ... . .34 . .34 . .34 . .35 Favorites window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36 Create, publish scripts, and publish to Foglight . . . . . . . . . . . . . . . . . . . . . . . . . . . .36 Record scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36 Configure scripts (Insert transactions and validations) . . . . . . . . . . . . . . . . . . . . .37 Script playback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38 Analyze script results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38 Publish scripts to Foglight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39 Shortcut keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40 Create and upload Foglight Transaction Recorder scripts . . . . . . . . . . . . . . . . . . . . 42 Record scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42 Configure scripts (Insert transactions and validations) . . . . . . . . . . . . . . . . . . . . . . . .42 Insert transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .43 Insert validations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .43 Script playback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44 Play . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44 Fast Play . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44 Analyze script results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44 Results window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44 Publish scripts to Foglight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46 View Foglight Transaction Recorder results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .48 Network Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .48 Network Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .49 Timing Charts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .49 Size Charts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .49 Foglight Transaction Recorder 5.6.11 User Guide 3 Timing vs. Size Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .49 Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 General settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .50 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .50 Defaults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51 Recorder settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51 Delays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51 Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52 HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52 Publish settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .53 Windows Server 2003 security settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .54 Recorder types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55 How Do I... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 Import Dialog Interceptor Settings into the Foglight Transaction Recorder graphic user interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .56 Use Error Overrides . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .57 Insert validation rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .58 Insert Transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .60 Rebaseline a script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .60 Use Sync Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .60 Change source of text for Form Inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .61 Text Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .62 Value Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .62 Using the Custom Value Source Set Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . .62 Use cookies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .63 Use the Dialog Interceptor Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .64 Set up the Foglight Transaction Recorder to run with the FxM . . . . . . . . . . . . . . . . . . .66 Turn on Tag and Follow before the recording process begins . . . . . . . . . . . . . . . . .66 Insert an Internet Instruction and turn on Tag and Follow after a script is recorded . .66 Scale Foglight Transaction Player client machines . . . . . . . . . . . . . . . . . . . . . . . . . . .67 Set the Recording Method dialog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .68 Set the delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .68 Use cache management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .68 How cache management works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .68 How Foglight Transaction Recorder cache settings interact with Internet Explorer cache settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .69 Cache management locations and settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . .69 Set Empty Temporary Internet Files in Internet Explorer . . . . . . . . . . . . . . . . . . . . . .70 Appendix: Best practices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 FTR Advanced/CitraTest best practices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .72 Verify the Foglight environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .72 Create and Run scripts on the same machine . . . . . . . . . . . . . . . . . . . . . . . . . . .72 Captured images should be as small as possible . . . . . . . . . . . . . . . . . . . . . . . . . .73 Manually create the CitraTest scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .73 Use the AppStart function to start applications . . . . . . . . . . . . . . . . . . . . . . . . . .74 Foglight Transaction Recorder 5.6.11 User Guide 4 Maximize applications after AppStart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .75 Script launching and closing of the application . . . . . . . . . . . . . . . . . . . . . . . . . .75 Create and test FTR scripts containing the CitraTest script . . . . . . . . . . . . . . . . . .77 Use the Restore Desktop features of CitraTest and FTR . . . . . . . . . . . . . . . . . . . . .78 Run FTR scripts as a local administrator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .79 Gather network statistics when using Windows Vista or a later version . . . . . . . . . . . . .79 Scale Foglight Transaction Player Agents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .79 Maximum number of concurrent scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .79 Determining maximum concurrent scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . .80 Assigning worker processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .80 Appendix: Troubleshoot the Foglight Transaction Recorder . . . . . . . . . . . . . . . . . . 82 Use the script properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .82 Verify the Foglight environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .82 Remote Desktop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .83 Verify script playback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .83 Ensure users are logged out before running a script . . . . . . . . . . . . . . . . . . . . . . . . . .84 Run as a user . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .84 FTR Advanced best practices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .85 Duplicate the steps in Internet Explorer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .85 TPRunscript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .85 Contact Dell Support and collect support documentation . . . . . . . . . . . . . . . . . . . . . .86 Appendix: API for FTR Timer Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 Three main classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .87 Samples code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .88 Enums . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .88 Sample of usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .88 Foglight Transaction Recorder 5.6.11 User Guide 5 1 Overview of Foglight synthetic monitoring Foglight’s synthetic monitoring solution consists of the following products: • Foglight Transaction Recorder. The Foglight Transaction Recorder is a Windows-based application used for the creation of scripts that model an end-user’s actions against a monitored server environment. After download and installation, the Foglight Transaction Recorder records scripts in a graphical environment resembling an internet browser. Once recorded and played back, the user can set expected times that help determine acceptable time frames the script and parts of the script can run within. When the scripts are played back and configured satisfactorily, they are published to Foglight. • Foglight Transaction Recorder Advanced (provided by Tevron® CitraTest®). Foglight Transaction Recorder Advanced is used when the applications being driven are thick client (not Web-based), or are Web-based and contain applets or objects not handled natively by the Foglight Transaction Recorder. NOTE: CitraTest version 751e1 is required for thick client monitoring. A script created by CitraTest is inserted into the Foglight Transaction Recorder with a special instruction. After playing this instruction, all of the results generated by Foglight Transaction Recorder Advanced are merged with all scripts results. These results are then used as any other instructions in the setup and calculation of expected times as described above. NOTE: The Foglight Transaction Recorder Getting Started Guide provides recording procedures for thick and thin clients. To access this guide, click Start > All Programs > Dell Software > Foglight Transaction Recorder > Getting Started. • Foglight Transaction Player. The Foglight Transaction Player is a Foglight Agent used to playback the scripts recorded by Foglight Transaction Recorder/Advanced. The player requires agent supporting files to be downloaded and installed from the Foglight Management Server. • Foglight. In Foglight, scripts or services are configured into a Service Group that defines the application. These Service Groups are then assigned to a Transaction Player agent to be played back at defined intervals, reporting their timings back to Foglight. These timings, using the advanced rules engine of Foglight, are then compared to the expected times initially set in the recording of the scripts, but can be overridden on the server. The rules engine can take any defined action based on the results. Figure 1. Synthetic Monitoring Diagram Foglight Transaction Recorder 5.6.11 User Guide 6 2 Use the Foglight Transaction Recorder The Foglight Transaction Recorder allows you to create scripts to discover Response Time Management (RTM) and Service Level Agreement (SLA) problems before they affect end users. Service level objective times can be compared, showing actual response time versus expected response time to provide feedback when response time degrades. The Foglight Transaction Recorder has the same look and feel of a common Internet browser. The major difference is that the Foglight Transaction Recorder captures and records clicks or actions you make when navigating a Web site. The Foglight Transaction Recorder graphical user interface provides the following windows: • Script window • Properties window • Main window • Results window • Favorites window Figure 2. Foglight Transaction Recorder user interface windows For more information, see the following topics: • Create, publish scripts, and publish to Foglight • Shortcut keys Script window The Script Window displays each recorded instruction (click or key entry) made during the recording process. As you click through a Web site, additional icons display in the Script window, representing each user action. Foglight Transaction Recorder 5.6.11 User Guide 7 Figure 3. Script window The Script Window toolbar allows you to edit instructions. Cuts a selected instruction. Copies a selected instruction. Pastes a copied or cut instruction. Deletes a selected instruction. Moves an item up. Moves an item down. Inserts a transaction. Launches the Insert Wizard. Inserts Validation Rules. Inserts a break point. Properties window NOTE: When using script properties, if the domain field is left blank, it will default to the computer name, which makes the user a local machine user. Users should be a member of the Administrators group on the local computer. The Properties window is where individual instruction and script properties are displayed and edited. The properties in the Properties window are grouped by Browser Instructions, HTML Elements, External Scripting, Special, and Network Diagnostics. Properties found in the Common properties are common to all instructions and scripts. Instruction properties are common to all instructions. HTML Element properties are common to all instruction properties that require an HTML element to act against, such as a click instruction or set input instruction. Foglight Transaction Recorder 5.6.11 User Guide 8 Figure 4. Properties Window Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties • HTML Element Properties The Foglight Transaction Recorder provides the following properties: • Root instructions • Browser instructions • HTML Element instructions • External Scripting instructions • Special instructions • Network Diagnostics Root instructions The root instruction is the very first instruction in the Script window. The instruction name used is entered into Name. Figure 5. Root Instructions Browser instructions Browser instructions consist of the following: Foglight Transaction Recorder 5.6.11 User Guide 9 • Navigate • Open Browser • Close Browser • Browser Refresh • Browser Back • Browser Forward Navigate A Navigate instruction causes the browser window specified by the Browser ID or Target Window Alias property field to navigate to the URL specified in the URL property field. Figure 6. Navigate instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties Open Browser The Open Browser instruction opens a new browser window. Figure 7. Open Browser instruction Refer to the following for additional information about the property descriptions and values: • Common Properties • Instruction Properties Foglight Transaction Recorder 5.6.11 User Guide 10 Close Browser A Close Browser instruction closes the browser window specified by the Browser ID or Target Window Alias property field. Figure 8. Close Browser instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties Browser Refresh A Browser Refresh instruction causes the browser window specified by the Browser ID or Target Window Alias property field to reload the contents at its current location. Figure 9. Browser Refresh instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties Browser Back A Browser Back instruction causes the browser window specified by the Browser ID or Target Window Alias property field to navigate to the previous URL in its URL history, if one exists. If none exists, no action is taken. Foglight Transaction Recorder 5.6.11 User Guide 11 Figure 10. Browser Back instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties Browser Forward A Browser Forward instruction causes the browser window specified by the Browser ID or Target Window Alias property field to navigate to the next URL in its URL history, if one exists. If none exists, no action is taken. Figure 11. Browser Forward instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties HTML Element instructions HTML Element instructions consist of the following: • Set Value: = (Checkbox) • Click Input(0) (Click Instruction) • **| Set Value: =*** (Input Password) • ab| Set Value: = (Input Text) • Java Script • Set Value: = (Radio Button) • Set Value: = (Select) Foglight Transaction Recorder 5.6.11 User Guide 12 Set Value: = (Checkbox) A Set Value (checkbox) instruction sets the value of a checkbox element specified by the HTML Element Properties to the value specified in the Checked instruction property field. Figure 12. Set Value (checkbox) instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties • HTML Element Properties Click Input(0) (Click Instruction) A Click instruction causes the element specified by the HTML Element Properties to be clicked. Foglight Transaction Recorder 5.6.11 User Guide 13 Figure 13. Click instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties • HTML Element Properties **| Set Value: =*** (Input Password) An Input Password instruction sets the value of a password input field element specified by the HTML Element Properties to the value specified in the Text Value instruction property field. Foglight Transaction Recorder 5.6.11 User Guide 14 Figure 14. Input Password instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties • HTML Element Properties ab| Set Value: = (Input Text) An Input Text instruction sets the value of a text input field element specified by the HTML Element Properties to the value specified in the Text Value Instruction Property field. Foglight Transaction Recorder 5.6.11 User Guide 15 Figure 15. Input Text instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties • HTML Element Properties Java Script A Java Script instruction executes scripts specified in the Java Script instruction property field to execute in the browser window specified by the Browser ID or Target Window Alias property field. Figure 16. Java Script instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties Foglight Transaction Recorder 5.6.11 User Guide 16 Set Value: = (Radio Button) A Set Value (radio button) instruction sets the value of a radio element specified by the HTML Element Properties to the value specified in the Checked instruction property field. Figure 17. Set Value (radio button) instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties • HTML Element Properties Set Value: = (Select) A Set Value (select) instruction sets the value of a select element specified by the HTML Element Properties to the value specified in the Text Value instruction property field. Foglight Transaction Recorder 5.6.11 User Guide 17 Figure 18. Set Value (select) instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties • HTML Element Properties External Scripting instructions External Scripting instructions consist of the following: • CitraTest Script • FTR Script • Generic Command Line • Windows Script CitraTest Script CitraTest® script launches an external application created with Tevron® CitraTest and reports the results after the application runs and completes. NOTE: The Restore Desktop property is only used when playing back CitraTest scripts. Foglight Transaction Recorder 5.6.11 User Guide 18 Figure 19. CitraTest Script Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties To insert a CitraTest script into the Foglight Transaction Recorder: 1 Click the Start button from the Windows® task bar. 2 Select Programs > Dell Software > Foglight Transaction Recorder > Foglight Transaction Recorder. The Foglight Transaction Recorder dialog box appears. 3 Select Edit > Insert > Insert Wizard. The Insert Wizard appears. 4 Select CitraTest Script. 5 Select the Executable property. 6 Click the Click to Edit button. The Open dialog box appears. 7 Navigate to the Tevron executable script. 8 Select the script. 9 Click Open. 10 Click Insert. Foglight Transaction Recorder 5.6.11 User Guide 19 FTR Script The FTR Script instruction launches an external Foglight Transaction Recorder script file. Figure 20. FTR Script Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties To insert a FTR script into the Foglight Transaction Recorder: 1 Click the Start button from the Windows® task bar. 2 Select Programs > Dell Software > Foglight Transaction Recorder > Foglight Transaction Recorder. The Foglight Transaction Recorder dialog box appears. 3 Select Edit > Insert > Insert Wizard. The Insert Wizard appears. 4 Select FTR Script. 5 Select the Script instruction property. 6 Click the Click to Edit button. The Open dialog box appears. 7 Navigate to the FTR executable script. 8 Select the script. 9 Click Open. 10 Click Insert. Generic Command Line The Generic Command Line launches an external command line application, and reports the timings after the application completes. Foglight Transaction Recorder 5.6.11 User Guide 20 Figure 21. Generic Command Line Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties To insert a Generic Command line into the Foglight Transaction Recorder: 1 Click the Start button from the Windows® task bar. 2 Select Programs > Dell Software > Foglight Transaction Recorder > Foglight Transaction Recorder. The Foglight Transaction Recorder dialog box appears. 3 Select Edit > Insert > Insert Wizard. The Insert Wizard appears. 4 Select the Generic Command Line instruction property. 5 Select the Data Directory instruction property. 6 Click the Click to Edit button. The Open dialog box appears. 7 Navigate to the Generic Command Line. 8 Select the command line. 9 Click Open. 10 Click Insert. Use Command Line instructions When using command line instructions, note the following: • You can use environment variables in command line arguments. • The following checks are performed on command line instructions: • If Results is set to True and no results file is found, a Critical alarm is raised in the Foglight Management Server. • If Results is to False and a results file is found, a Warning alarm is raised in the Foglight Management Server. Return codes on Generic Command Line instructions The following provides examples using generic command line instructions and when running a Powershell script. Using Generic Command Line instructions You can use command line instructions. Foglight Transaction Recorder 5.6.11 User Guide 21 To run a batch file, use the following commands and parameters: Executable—cmd.exe Data Directory—The folder containing the batch file. Additional Parameters— /C batchname.cmd Results— False (unless the timer.dll is being called). Run a Powershell script To run a Powershell script, use the following commands and parameters: Executable—powershell.exe Data Directory—The folder containing the Powershell script. Additional Parameters—.\scriptname.ps1 Results—False (unless the timer.dll is being called). Windows Script The Windows Script instruction launches an external script file such as Javascript or VBscript using the Windows Script Host (WScript.exe). Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties To insert a Windows Script into the Foglight Transaction Recorder: 1 Click the Start button from the Windows® task bar. 2 Select Programs > Dell Software > Foglight Transaction Recorder > Foglight Transaction Recorder. The Foglight Transaction Recorder dialog box appears. 3 Select Edit > Insert > Insert Wizard. The Insert Wizard appears. 4 Select Windows Script. 5 Select the Script Instruction. 6 Click the Click to Edit button. The Open dialog box appears. 7 Navigate to the executable script. 8 Select the script. 9 Click Open. 10 Click Insert. Special instructions Special instructions consist of the following: Foglight Transaction Recorder 5.6.11 User Guide 22 • Credential • Delay - 00:00:00.10 • Folder • Internet Settings • Keyboard • Message • Transaction Credential A Credential instruction holds the username and password that the element specified by the HTML Element Properties should respond with, if asked for authentication, while navigating to a URL. Figure 22. Credential instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties Delay - 00:00:00.10 A Delay instruction simulates user non-activity for a duration specified by the Delay Time. Figure 23. Delay instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties Folder A Folder instruction holds other instructions in a logical group. When executed, it executes each of the instructions contained within the folder. Foglight Transaction Recorder 5.6.11 User Guide 23 Figure 24. Folder instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties Internet Settings An Internet Settings instruction stores the dynamic Internet properties of a script. Figure 25. Internet Settings instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties Keyboard A Keyboard instruction simulates the sending of a keystroke specified by the Virtual Key Code and Keyboard State instruction properties to the element specified by the HTML Element Properties. Foglight Transaction Recorder 5.6.11 User Guide 24 Figure 26. Keyboard instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties • HTML Element Properties Message A Message instruction causes an info, warning, or error message to appear in the results of a script during its playback. The severity is specified by the Message Type instruction property. A corresponding text message is specified by the Message instruction property field. Figure 27. Message instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties Transaction A Transaction instruction holds other instructions in a logical group and reports their aggregate results (a single logical instruction result) to the Foglight Server. Foglight Transaction Recorder 5.6.11 User Guide 25 Figure 28. Transaction instruction Network Diagnostics Network Diagnostic instructions consist of the following: • Name Lookup • Ping • Trace Name Lookup A name server lookup resolves the IP address of the target host name. The Name Lookup Instruction first attempts to resolve a hostname using a direct query to the agent's DNS server. If this query fails, the instruction falls back to the agent's standard behavior for hostname resolution. If this fails, a warning is issued stating the failure to resolve the hostname. If the instruction succeeds, an information message is issued with the IP address that was resolved. The behavior of this instruction is similar to that of issuing an nslookup <hostname> command from the Windows command line instruction. Figure 29. Name Lookup instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties Ping A ping command determines how long a packet takes to reach a target server. The Ping instruction uses the Internet Control Message Protocol Echo function (RFC 792) to send a small packet to a host, then listen for a return packet acknowledging the echo. Both the Ttl (time to live) and packet size can be modified. The behavior of this instruction is similar to issuing a ping -n 1 <hostname> command from the Windows command line instruction. Foglight Transaction Recorder 5.6.11 User Guide 26 Figure 30. Ping instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties Trace A trace instruction traces the route a packet takes from the agent to another host. It utilizes the IP protocol `time to live' field to elicit an Internet Control Message Protocol TIME_EXCEEDED response from each gateway (RFC 1812) along the path to the target host. The instruction attempts to trace the route by sending probe packets for up to 30 hops. After completion of the instruction, information messages are issued with both the address of and the time it took to trace each hop. The behavior of this instruction is similar to issuing a tracert <hostname> command from the Windows command line instruction. Figure 31. Trace instruction Refer to the following for additional information about property descriptions and values: • Common Properties • Instruction Properties Properties and Instruction descriptions The Properties Window is where individual instruction and script properties are displayed and edited. The properties in the Properties Window are grouped by Browser Instructions, HTML Elements, External Scripting, Special, and Network Diagnostics. Properties found in the Common properties are common to all instructions and scripts. Instruction properties are common to all instructions. HTML Element properties are common to all instruction properties that require an HTML element to act against, such as a click instruction or set input instruction. The Foglight Transaction Recorder provides the following instruction properties: • Common Properties • Instruction Properties • HTML Element Properties Foglight Transaction Recorder 5.6.11 User Guide 27 Common Properties Common properties provides generic naming and descriptions fields for all instructions. Table 1. Common Properties: Naming and description fields Property Name Value Description Editable Text field An editable comment explaining what the script item accomplishes. Yes. Click inside the property value to edit. True Enables or disables instructions in the Foglight Transaction Recorder script. When disabled, the instruction is not executed during playback. Yes. Click inside to display the True/False dropdown. When enabled is set to true, the instruction is enabled. When set to false, the instruction is disabled and a small red circle appears over the instruction. The logical name given to an instruction during the recording process. Yes. Click inside the property value to edit. The exceptions are credential, delays, attach, and messages. Description or Enabled False Text field Name Instruction Properties Instruction Properties displays instruction-specific editable fields that allow you to monitor and change scripts. Table 2. Instruction Properties: Instruction-specific editable fields Instruction Property Action Value Description Editable Text The type of instruction to be executed during playback. Not editable. Text Sets additional parameters, during the running of a CitraTest®, credential, or window script instruction. Yes. Click inside to edit. True Automatically detects proxy configuration. Yes. Click inside the property value to display a drop-down and select: false (do not detect proxy configuration), true (detect proxy configuration). Seconds The time, in seconds, the browser waits on a page to ensure that navigation to another page is not triggered. Click inside to edit. Numeric value The ID (instance) assigned during the Yes. Click inside to display a recording process. The first instance spinner and select the desired ID. assigned is a zero. As the browser creates a new popup window, the ID is increased by one. Additional Parameters Auto-detect or False Bridge Time Browser ID If a popup window is closed, the ID does not recycle. For example, if you open windows zero, one, two, and three, then close window one. When the next instruction opens a new window, its ID is assigned four. Foglight Transaction Recorder 5.6.11 User Guide 28 Table 2. Instruction Properties: Instruction-specific editable fields Instruction Property Checked Configuration URL Config Scripts Value Description Editable False State of a checkbox input element during Play or Fast Forward. Click inside the property value to display a drop-down and select: false (unchecked), true (checked), or toggle (the opposite of the current value). URL Address The URL that automatically configures the script. Click inside the property value to enter the desired URL. True Automatically configures the proxy connection with script. Yes. Click inside the property value to display a drop-down to select true (autoscript configuration on) or false (autoscript configuration off). or True or False Custom Value Param Text Allows you to read data from an external source. Click inside to add text. Custom Value ProgID Text Allows you to set the ID for the custom data. Click inside to add text. Path to directory containing data. Sets the directory with the required files to run the command line instruction. All of these files and subdirectories are packaged in the script. Seconds The delay time is displayed in seconds. Data Directory Delay Time Click inside to edit the time. Instructions Desktop Configuration Configuration Displays the desktop configuration settings and values (resolution, colors, etc.). Dialog Interceptor Settings True or Double Click or False True or False Empty Internet Cache Click to display the configuration. Allows you to specify which dialogs are intercepted during playback. Click inside the property value to display the Dialog Interceptor Settings dialog. Sets a single or double-click for an instruction. Yes. Click inside the property value to display a drop-down to select true (double-click) or false (single click). False True Click to display the Browse for Folder dialog. Setting this property to true empties Yes. Click inside the property value to display a drop-down to select the cache on completion of a page True or False. being viewed. Note: Internet Explorer settings provide the “Empty Temporary Internet Files folder when the browser is closed” setting. To access this setting in Internet Explorer, select Tools > Internet Options > Advanced. Scroll down to Security. By default, IE does not select this option. If turned on, this setting overrides the Foglight Transaction Recorder. When recording with the Foglight Transaction Recorder, do not select this setting. Foglight Transaction Recorder 5.6.11 User Guide 29 Table 2. Instruction Properties: Instruction-specific editable fields Instruction Property Enforce Desktop Configuration Value Description Editable True Warns the user if the desktop configuration saved at record time does not match the playback configuration. Yes. Click inside the property value to display a drop-down. Select true (enforce) or false (do not enforce). or False Error value and severity Set on the root item of the script and Click to display the Error override the handling of errors when Overrides dialog to add or delete they occur during playback. For errors. more information, see Import Dialog Interceptor Settings into the Foglight Transaction Recorder graphic user interface. Executable Specifies the CitraTest® executable script. Seconds Allows you to edit the expected times of a script. True Allows you to define the proxy server. Click inside the property value to display a drop-down to select true (allow user to define proxy server) or false (does not allow user to define a proxy server). Determines if a mouse click will be performed on a web element in addition to setting its value during playback. Click inside the property value to display a drop-down. Select true (fires the click event) or false (does not fire the click event). Determines if a mouse click will be performed on a web element after setting its value during playback. Click inside the property value to display a drop-down. Select true (fires the click event) or false (does not fire the click event). Sets whether or not the client-side scripts errors are ignored. Yes. Click inside the property value to display a drop-down. Text inserted into a script. Click inside the property to add text. How often the browser should retrieve new versions of Web pages. Click inside the property value to display a drop-down to select the desired setting. Allows you to edit JavaScript. Yes. Click inside the property value to display the JavaScript Editor. Error Override Executable Expected Time Explicit Proxy or or False True Fire Click Event After Ignore Script Errors Inner Text Internet Cache Settings JavaScript Keyboard State Click to display the Expected Times dialog. False True Fire Click Event or False True or Click to display the Open dialog window. False Text • Every visit • Every browser restart • Automatically • Never JavaScript • ALT • CTRL • SHIFT The state of special keys (ALT, CTRL, Click inside the property value to SHIFT). display a drop-down list of keyboard states. Foglight Transaction Recorder 5.6.11 User Guide 30 Table 2. Instruction Properties: Instruction-specific editable fields Instruction Property Value Match Criteria Description • Reference ID • Inner Text • Element ID • Javascript • Hierarchy Numeric Maximum Cache Size Editable The match criteria used to identify Yes. Click inside to edit. an element. Changing Match Criteria allows you to change how the HTML element is located on the page. For example, if you use the text referenced as Reference ID, it will use the value in the Reference ID field. The maximum size of the cache to be stored in the Temporary Internet Files folder. Yes. Click inside to edit. The minimum size is 10 MB. Text A property comment, warning, or Yes. Click inside to edit. error message to be displayed in the error log during play or fast forward. Info The severity of the message displayed in the error log during playback or fast forward. Click inside the property value to display a drop-down and select the appropriate message type. Left or right click of the mouse buttons. Sets a left or right click for the mouse button action used to click the element. Yes. Click inside the property value to display a drop-down. Select the appropriate (left or right) button value. Numeric How large the ping packet should be. Yes. Click inside to display a The range is from zero to 65,500. spinner and select the desired packet size. Text The password of an account being accessed. Yes. Click inside the property value to enter a password. URL Address The URLs that do not use the proxy server. Yes. Click inside the property value to enter the appropriate Proxy Server address. Text The proxy password. Yes. Click inside the property value to enter the appropriate password. True Restores the desktop to its condition Click inside the property value to when the script first ran. This action display a drop-down. closes any windows that are open after script execution. Message Message Type Warning Error Mouse Button Packet Size Password Proxy ByPass Proxy Password Restore Desktop or False True Run Visible or Makes script visible or not visible when running. Click inside the property value to display a drop-down. False True Script or Sets the script the target program will run. Click to display the open dialog window. False Tag and Follow Target Target Frame Inserts headers into the network packets sent by the agent. Click inside the property value to display a drop-down. Select True or False. Text The host name to be resolved. Yes. Click inside the property value to enter the desired target. Text The Browser frame to perform the instruction on. Click inside the property value to edit. True or False Foglight Transaction Recorder 5.6.11 User Guide 31 Table 2. Instruction Properties: Instruction-specific editable fields Instruction Property Target Window Alias Text Value Value Description Editable Text The name of the attached window instruction corresponding to the target window. Yes. Click inside the property value to display a spinner to select the target window alias. Text The web input text value. Click inside the property value to display the editor. Seconds The time, in seconds, the Foglight Transaction Recorder waits for something to happen. If the transaction time exceeds this value, the server is considered down and a critical error is flagged. The default time- out setting is 60 seconds. Yes. Click inside the property value to edit. Text The Browser frame to perform the instruction on. Click inside the property value to edit. Numeric How long the ping packet lives. The range is from one to 255. Yes. Click inside the property value to display a spinner to select the packet size. Text The URL of a web page loaded during Click inside the property value to playback. enter the appropriate URL. Text The login name of an account being accessed. Java Script Allows you to enter Java Script. Text Value Allows you to enter custom value sources. Time Out (secs) Target Frame Ttl (time to live) URL User Name Value Script Value Script Value Source Virtual Key Code Click Editor. Custom Key Code Click inside the property value to enter a user name. The key to simulate pressing during playback. to display the Java Script Clicking the drop-down displays the following options: • Text Value • Value Script • Custom Click inside the property value to display a drop-down list of virtual key codes. HTML Element Properties HTML Element Properties display HTML-specific editable fields that allow you to monitor and change scripts. Table 3. HTML-specific editable fields Instruction Value Description Element Name Text The HTML name of the element being viewed. Yes. Click inside the property value to edit. Text The HTML ID of the element being viewed. Yes. Click inside the property value to edit. Text The inner text of the element. Yes. Click inside the property value to edit. Index of the If multiple elements on the page contain the inner text. same text, this specifies which one is the target element. Yes. Click inside to display a spinner and select the desired ID. ID Inner Text Inner Text Index Editable Foglight Transaction Recorder 5.6.11 User Guide 32 Table 3. HTML-specific editable fields Instruction Value Description Editable Java Script Matching Algorithm Algorithm The Java Script executed to find the target element. Yes. Click inside the property value to display the Java Script Editor. Match Hierarchy Text The order that the elements on a page are searched to find the target of the action. Yes. Click inside to edit. Name of browser frame window The object location within a frame. The Yes. Click inside the property Foglight Transaction Recorder uses two value to edit. methods to refer to a particular frame in a frameset by its name or by its index number. When viewing the Properties window, Top or _top refers to the window object of the page at the top of the frame hierarchy. The top window has an index of zero. All other frame index numbers are generated by the browser in the order that the frames are defined in the HTML, beginning at one. Frames use the name="FrameName" attribute in the <frame ...> tag. If no reference frame displays in the properties list, _top is implied. Numerical value The Reference ID is a zero based index of the specified tag name within the page. Reference Frame Reference ID The numbers are assigned sequentially, starting with zero, in the order they appear on the page. Yes. Click inside the property value to display a spinner and edit the Reference ID. Text The HTML tag name of the element being viewed. Yes. Click inside the property value to edit. X Numeric value The X (horizontal) coordinate of the element being viewed in relation to the Main Window. Yes. Click inside the property value to edit. Y Numeric value The Y (vertical) coordinate of the element being viewed in relation to the Main Window. Yes. Click inside the property value to edit. Tag Name Main window The Foglight Transaction Recorder main window has three functions: • During recording, the Main Window acts like a common Internet browser. The user interacts with the Web pages in this window and each of their actions are recorded. Foglight Transaction Recorder 5.6.11 User Guide 33 • During playback, the Main Window looks like an Internet browser, but its actions are driven by the application being recorded. Each action that the user took during recording is performed by the application. • When not recording or playing back a script, the Main Window provides detailed results from the last time the script ran. Tables and charts show timing details, network traffic, and other useful metrics. Results window The Results Window displays real-time information while a script is being played. The data is displayed on three tabs: • Output • Results • Error Output The Output Tab shows diagnostic and trace information reported by the application during the execution of the script. Figure 32. Results window - Output tab Results The Results tab shows the status and results of each instruction during the execution of the script. Foglight Transaction Recorder 5.6.11 User Guide 34 Figure 33. Results window - Results tab The following provides a description of individual columns: • Name—instruction name. • Status—indicator of whether an instruction is running, waiting to run, or completed. • Errors—sum of errors encountered during the execution of the instruction. • Files—number of files run. • Bytes—sum of total network activity that occurred during the execution of the instruction. • Response Time—time required by the instruction to execute from a monitoring perspective. • Elapsed Time—time required by the instruction to execute, including overhead. This is typically greater than the response time. Error The Errors Tab displays error, warning, and informational messages encountered during the execution of a script. Figure 34. Results window - Error tab The following provides a description of individual columns. • Name—name of the instruction that generated the error. • Error Level—level of the error being generated. • Error Code—Error code in hexadecimal. • API Code—Application Programming Interface code in hexadecimal. • Message—Message generated when error occurred. • API Extended Info—An extended explanation of the error. Foglight Transaction Recorder 5.6.11 User Guide 35 Favorites window The Favorites Window mirrors the bookmarks created in Internet Explorer. These bookmarks can be used instead of typing the URL during the recording process. The Add and Organize buttons work exactly as they would in Internet Explorer. The Refresh button synchronizes the Favorites list with your current favorites in Internet Explorer. This is done automatically each time you launch the Recorder. Figure 35. Favorites window Create, publish scripts, and publish to Foglight During the recording process, each click or action you make in the Main Window creates an instruction. Instructions are grouped into a script, assigned a name, and saved with an .ftr extension. Scripts are then published to a Foglight server and subsequently downloaded by Transaction Player agents where they are used for monitoring business processes. Creating scripts with the Foglight Transaction Recorder and uploading them to the Foglight Management Server consist of the following steps: 1 Record scripts 2 Configure scripts (Insert transactions and validations) 3 Script playback 4 Analyze script results 5 Publish scripts to Foglight Record scripts Clicking begins the recording process and displays the Address Toolbar. You can enter the URL in the Address Toolbar or select a web site from the Favorites window. This creates a navigate instruction in the Script Window. After the initial navigate, every time you click or take an action in the browser window, a corresponding instruction is created in the Script Window. To build a script, navigate through the desired URL and complete the business process to be monitored. To stop the playback of a script, click . This stops the recording process and closes the Address bar. After recording a script, you have the following options: • Playing the recorded script back to obtain web performance data. • Saving the file using the .ftr extension for playback at a later time. Foglight Transaction Recorder 5.6.11 User Guide 36 Configure scripts (Insert transactions and validations) Configuring scripts consists of inserting transactions and validations into an existing script. • Insert transactions • Insert validations Insert transactions NOTE: Transactions cannot be inserted when the root of the Script Window is selected. Transactions can be used to create a logical grouping of instructions into business processes, such as logging on, running a report and logging off. To create a transaction: 1 Select one or more instructions in the Script Window. 2 Click the Transaction icon . The New Transaction dialog appears. • Name—name assigned to the transaction. • Expected Time—the amount of time a transaction can take before it exceeds a Service Level Agreement requirement. When the expected time is exceeded, an error will be logged. 3 Enter the transaction name. 4 Set the appropriate expected time. 5 Click OK. Insert validations Validation rules allow you to verify that a web page loads properly. A validation rule are created to verify the properties of any HTML elements. The following validation rules can be inserted: • Anchors • Images • Frames • HTML source/text validation NOTE: You will only see the anchor/image templates when the script is being recorded or played. When the script is just being edited those options are not present and you can only insert a JavaScript validation. Foglight Transaction Recorder 5.6.11 User Guide 37 Validations can be inserted during recording or during playback when a script is paused. All validation rules are converted into Javascript instructions. NOTE: Execution of numerous validation rules can be CPU intensive. It is advisable to create the minimal amount of validation rules that ensure your script is executing correctly. To validate a rule: 1 Click the New Validation Rule icon . 2 Click New. 3 Select the desired rule (anchor, images, frames, or source). 4 Click Next. The JavaScript Validation Rule dialog box appears. 5 Accept the default rule name. 6 Click Next. 7 Select the severity level by deciding if failing this validation result in an information, warning, or error condition. Script execution halts on an error condition, but warning and information messages are logged and the script is allowed to continue. 8 Click Next. 9 Select the anchors, images, frames or text to validate. 10 Click Finish. 11 Create additional rules is required. 12 Click OK when all validation have been created. Script playback After recording a script, play it back to produce data on web page performance and obtain detailed data on Service Level Agreements. There are two modes of playback: • Play • Fast Play Play To play a script back after recording, click Capture Delay time included. . This plays back all of the recorded instructions, with the Fast Play When you click , a recorded script plays back all recorded instructions without the Capture Delay time. Analyze script results For details on analyzing script results, see View Foglight Transaction Recorder results. Foglight Transaction Recorder 5.6.11 User Guide 38 Publish scripts to Foglight NOTE: Before scripts can be published to Foglight, the Foglight Agent Manager must be started. Once a script is played and its expected times and time-outs are set, it can be published to a Foglight Server, for use in a monitoring environment. To publish scripts to the Foglight Management Server: 1 Click . The Publish Script dialog box appears. 2 Click Add Locations. The Manage Locations Settings dialog box appears. 3 Click Add. The Add Location dialog box appears. NOTE: The user name and password must be entered to upload scripts. The user name has to be a Foglight Management Server user, and assigned either “Foglight Administrator” or “End User Publisher” roles. • Name—the location name the Foglight Transaction Recorder uses. • Foglight Server—Foglight Server name, for example: abc10678.prod.acme.corp:8080. • Server Version—Foglight Server version. • Path to Projects—the directory on the server where the scripts are stored (Foglight 4 and below servers only). • UserName—Foglight Management Server user name. NOTE: The following special characters are currently NOT supported in usernames and passwords: “:” and “@”. Foglight Transaction Recorder 5.6.11 User Guide 39 • Password—Foglight Management Server password. NOTE: The following special characters are currently NOT supported in usernames and passwords: “:” and “@”. • Requires SSL—select check box to implement a Secure Sockets Layer. 4 Fill in the required fields. 5 Click OK. 6 Click OK. 7 In File Name, enter the desired file name. 8 Click Save. The script publishes to the Foglight Server. Publish Script dialog box The Publish Script dialog box allows you to publish scripts to Foglight servers. Figure 36. Publish Script dialog box Shortcut keys The following provides a list of Foglight Transaction Recorder shortcut key. Table 4. Shortcut keys Key Description Alt+0 (Zero) Displays the Results window. Alt+Enter Displays the Instruction Properties window. Alt+1 Displays the Script window. Alt+2 Displays the Favorites window. Alt+3 Displays the Properties window. Alt+Home Displays the Web Page set in IE Internet Properties. Alt+Left Arrow Navigates back one page. Alt+Left Arrow Navigates forward one page. Foglight Transaction Recorder 5.6.11 User Guide 40 Table 4. Shortcut keys Key Description CTRL+A Selects all the steps in the Workspace window. CTRL+B Inserts or removes a breakpoint. CTRL+C Copies the selected item in the project or properties view to the clipboard. CTRL+E Stops a script. CTRL+G Goes to the desired line. CTRL+F5 Places a script in the edit mode. CTRL+N Creates a new script. CTRL+O Opens an existing script. CTRL+P Opens the Publish Script dialog. CTRL+R Places the Foglight Transaction Recorder in the record mode. CTRL+S Save changes to an open script. CTRL+V Pastes a selected item. CTRL+X Cuts a selected item. CTRL+Z Reverses the previous action. CTRL+Y Performs the previous action. CTRL+F5 Plays back a script in the Fast Forward mode. CTRL+UP Arrow Moves a selected item up in the Script Window tree. CTRL+Down Arrow Moves a selected item down in the Script Window tree. F1 Displays online help. F5 Plays back a script. F7 Refreshes the Main Window. F8 Displays the Foglight Transaction Recorder Settings window. F10 Steps through a script. F12 Displays the Save Script As dialog. Delete Deletes the select transaction in the Script window. Foglight Transaction Recorder 5.6.11 User Guide 41 3 Create and upload Foglight Transaction Recorder scripts During the recording process, each click or action you make in the Main Window creates an instruction. Instructions are grouped into a script, assigned a name and saved with an .ftr extension. Scripts are then published to a Foglight server and subsequently downloaded by Transaction Player agents where they are used for monitoring business processes. Creating scripts with the Foglight Transaction Recorder and uploading them to the Foglight consists of the following steps: 1 Record scripts 2 Configure scripts (Insert transactions and validations) 3 Script playback 4 Analyze script results 5 Publish scripts to Foglight Record scripts Clicking begins the recording process and displays the Address Toolbar. You can enter the URL in the Address Toolbar or select a Web site from the Favorites window. This creates a Navigate instruction in the Script Window. While recording, every time you click or take an action in the browser window, a corresponding instruction is created in the Script Window. To build a script, navigate to the desired URL and complete the business process to be monitored. To stop the recording of a script, click . This stops the recording process and closes the Address bar. After recording a script, you have the following options: • Playing the recorded script back to obtain web performance data. • Saving the file using the .ftr extension for playback at a later time. Configure scripts (Insert transactions and validations) Configuring scripts consists of inserting transactions and validations into an existing script: • Insert transactions • Insert validations Foglight Transaction Recorder 5.6.11 User Guide 42 Insert transactions NOTE: Transactions cannot be inserted when the root of the Script Window is selected. Transactions can be used to create a logical grouping of instructions into business processes, such as logging on, running a report and logging off. To create a transaction: 1 Select one or more instructions in the Script Window. 2 Click the Transaction icon . The New Transaction dialog appears. • Name—name assigned to the transaction. • Expected Time—the amount of time a transaction can take before it exceeds a Service Level Agreement requirement. When the expected time is exceeded, an error is logged. 3 Enter the transaction name. 4 Set the appropriate Expected Time. 5 Click OK. Insert validations Validation rules allow you to verify that a web page loaded properly. A validation rule is created to verify the properties of any HTML elements. The following validation rules can be inserted: • Anchors • Images • Frames • HTML source/text validation Validations can be inserted during recording or playback when a script is paused. All Validation rules are converted into Javascript instructions. NOTE: Execution of numerous validation rules can be CPU intensive. It is advisable to create the minimal amount of validation rules that ensure your script is executing correctly. To validate a rule: 1 Click the New Validation Rule icon . 2 Click New. 3 Select the desired rule (anchor, images, frames, or source). 4 Click Next. Foglight Transaction Recorder 5.6.11 User Guide 43 The JavaScript Validation Rule dialog appears. 5 Accept the default rule name. 6 Click Next. 7 Select the severity level by deciding if failing this validation results in an information, warning, or error condition. Script execution halts on an error condition, but warning and information messages are logged and the script allowed to continue. 8 Click Next. 9 Select the anchors, images, frames or text to validate. 10 Click Finish. 11 Create additional rules is required. 12 Click OK when all validations are created. Script playback After recording a script, you play it back to produce data on Web page performance and obtain detailed data on Service Level Agreements. There are two playback modes: • Play • Fast Play Play To play a script back after recording, click Capture Delay time included. . This plays back all of the recorded instructions, with the Fast Play When you click on , a recorded script plays back all recorded instructions without the Capture Delay time. Analyze script results After playing back a script, the Foglight Transaction Recorder provides the following windows to analyze script results: • Results window • View Foglight Transaction Recorder results Results window The Results Window displays real-time information while a script is being played. The data is displayed on three tabs: • Output • Results • Errors Foglight Transaction Recorder 5.6.11 User Guide 44 Output The Output Tab shows diagnostic and trace information reported by the application during the execution of the script. Figure 37. Results window - Output tab Results The Results tab shows the status and results of each instruction during the execution of the script. Figure 38. Results window - Results tab • Name—instruction name. • Status—indicator of whether an instruction is running, waiting to run, or completed. • Errors—sum of errors encountered during the execution of the instruction. • Files—number of files ran. • Bytes—sum of total network activity that occurred during the execution of the instruction. • Response Time—time required by the instruction to execute from a monitoring perspective. • Elapsed Time—time required by the instruction to execute, including overhead. This is typically greater than the response time. Errors The Errors tab displays error, warning, and informational messages encountered during the execution of a script. Figure 39. Results window - Error tab Foglight Transaction Recorder 5.6.11 User Guide 45 • Name—name of the instruction that generated the error. • Error Level—level of the error being generated. • Error Code—error code in hexadecimal. • API Code—Application Programming Interface code in hexadecimal. • Message—message generated when error occurred. • API Extended Info—an extended explanation of the error. Publish scripts to Foglight NOTE: Before scripts can be published to the Foglight, the Foglight Agent Manager must be started. After recording, Foglight Transaction Recorder scripts are published to Foglight for playback on the Transaction Player Agent. To publish scripts to the Foglight Management Server: 1 From the Foglight Transaction Recorder, click Publish . The Publish Script dialog appears. 2 Click Add Locations. The Manage Locations Setting dialog appears. 3 Click Add . The Add Location dialog appears. • Name—the location name the Foglight Transaction Recorder uses. Foglight Transaction Recorder 5.6.11 User Guide 46 • Foglight Server—Foglight Server name, for example, abc10678.prod.corp:8080. • Server Version—Foglight Server version. • Path to Projects—the directory on the server where the scripts are stored (Foglight 4 and earlier versions only). • UserName—Foglight server user name. NOTE: The following special characters are currently NOT supported in usernames and passwords: “:” and “@”. • Password—Foglight server password. NOTE: The following special characters are currently NOT supported in usernames and passwords: “:” and “@”. • Requires SSL—select the check box to implement a Secure Sockets Layer. 4 Fill in the required fields. 5 Click OK. 6 Click OK. 7 In File Name, enter the desired file name. 8 Click Save. The script publishes to the Foglight Server. Foglight Transaction Recorder 5.6.11 User Guide 47 4 View Foglight Transaction Recorder results Foglight Transaction Recorder tables and graphs provide detailed feedback on script results. You can view detailed results that help you analyze individual instructions. Details include download times, file sizes, throughput, network activity, and errors. The data available depends on the instruction type. The following tables and graphics are provided: • Summary • Network Details • Network Chart • Timing Charts • Size Charts • Timing vs. Size Chart Summary After a script is played back, the Summary Table shows you the instruction execution times and other results. The data available varies, depending on the instruction type. Figure 40. Summary table Network Details The Network Details table shows the network traffic that occurs during the execution of an instruction. Details about HTTP, DNS, and TCP traffic are captured and displayed. Foglight Transaction Recorder 5.6.11 User Guide 48 Network Chart The Network Chart provides a graphical representation of the network traffic that occurred during the execution of an instruction. Mouse over a bar to view the details about the network request. Timing Charts The Timing Chart s tab (for the User Scenario, a Transaction, or a Folder) shows the relative times for each instruction in the script. Mouse over a bar or pie slice to view details about the instruction. Size Charts The Size Charts tab (for a User Scenario, a Transaction, or a Folder) shows the relative sizes for each instruction in the script. Mouse over a bar or pie slice to view details about the instruction. Timing vs. Size Chart The Timing vs. Size Chart compares the size of a network request or file to the time it took to download. Mouse over a bubble to view details about an individual instruction. Foglight Transaction Recorder 5.6.11 User Guide 49 5 Settings Before beginning the Web recording process, you can configure the Foglight Transaction Recorder with the desired settings. The following setting dialogs are provided: • General settings • Recorder settings • Publish settings General settings General Settings provides the following dialogs: • General • Defaults General General settings allows you to set startup script, autosave, application theme, and browser tab positions. Table 5. General Settings descriptions Field or Button Description Reload last project upon startup Loads the last open script when starting the Foglight Transaction Recorder. True equals on and false equals off. The default setting is true. AutoSave Transaction Properties Automatically saves transaction properties after editing. The default setting is false. Application Theme Allows you to select the theme for the Foglight Transaction Recorder graphical user interface, including (Native XP, Office 2000, Office XP, and Office 2003.) The default setting is Windows Office 2003. Browser Tab Position Allows you to move the position of the Main Window tab. The default setting is top. Allows you to choose between the following options: Browser Mode • Latest. Foglight Transaction Recorder uses the latest version of the Internet Explorer® browser mode (default). • Compatibility. Foglight Transaction Recorder uses the Internet Explorer browser mode, determined by the HTML server or the Internet Explorer browser. NOTE: This operation takes effect after restarting the program or the agent. Clears Foglight Transaction Recorder logs. Displays Foglight Transaction Recorder cache, cookies, and logs. Restores the currently displayed settings to the default settings. Foglight Transaction Recorder 5.6.11 User Guide 50 Defaults The Default dialog provides Expected Time Wizard and Instruction settings. Figure 41. Defaults settings Table 6. Default Settings descriptions Section Expected Time Wizard Field Description Launch wizard on playback Launches the Expected Time Wizard on playback of a script. True on. False off. Default setting True. Expected Time Factor The wait time, in seconds, before a transaction is canceled. The default value is two. Time Out Factor The time waited, in seconds, until the transaction times out. The default value is 60. Time Out (seconds) The time, in seconds, the Foglight Transaction Recorder waits for something to happen. If the transaction time exceeds this value, the server is considered down and a critical error is flagged. The default setting is 60. Bridge Time (seconds) The time, in seconds, the browser waits on a page to ensure that navigation to another page is not triggered. The default setting is one second. Instruction Recorder settings Recorder Settings provides the following dialogs: • Delays • Environment • HTML Delays Delays settings allows you to set the delay to true or false. Figure 42. Delays settings Foglight Transaction Recorder 5.6.11 User Guide 51 Table 7. Delays settings Section Field Description Delays Record Delays Turns delays on or off. Default value is false. Environment Environment settings provides environmental settings during the recording process. Figure 43. Environment settings Table 8. Environment settings descriptions Section Environment Field Description Recorder Type The Foglight Transaction Recorder has two types of recorders, Default and Siebel. The default setting is Default. Use inline AutoComplete AutoComplete fills in a previously entered web address as you type it in. The default value is true. Group Instructions Groups instructions into a logical order for playback. The default value is false. HTML HTML settings provide capture and environmental settings during the recording process. Figure 44. HTML settings Table 9. HTML settings Section Capture Field Description Capture Internet Settings on Record This setting automatically generates instructions that mirror the current environment. The default value is true. Record Body Clicks Records all body clicks made during the recording process. The default value is false. Enable Tag and Follow The Foglight Transaction Recorder allows you to record scripts for playback on the Foglight Experience Monitor appliance. To record these scripts, the Tag and Follow property can be turned on. The default value is false. Foglight Transaction Recorder 5.6.11 User Guide 52 Table 9. HTML settings Section Environment Field Description Display Applet/Object warning When an FTR script is playing back, applets may pop up. A warning appears if this property is set to true. True equals enable and false equals disable. The default value is true. Allow Popups when closing Allows popup windows to display when closing the recorder browser windows. The default value is true. Display Record as new user prompt Displays the Recording Method dialog before each new recording session. The default value is true. Default to recording as Defaults the Recording Method dialog to record as a new user when new user set to true. A new user records a script as if the user has never been to this Web site. It also defaults the Recording Method dialog to record as an existing user when set to false. An existing user uses a copy of all existing cookies when recording. The default value is true. Publish settings The Publish Settings window allows you to edit location settings for Foglight Servers. From this window you can add, edit or delete a Foglight Server location. Figure 45. Publish settings To add a Foglight location: 1 Click Add. The Add Location dialog box appears with the following parameters. • Name—the location name the Foglight Transaction Recorder uses. • Foglight Server—Foglight Server name. • Server Version—Foglight Server version. • Path to Projects—the directory on the server where the scripts are stored. (Foglight 4 and earlier version servers only). • User Name—server user name. NOTE: The following special characters are currently NOT supported in usernames and passwords: “:” and “@”. • Password—server password. NOTE: The following special characters are currently NOT supported in usernames and passwords: “:” and “@”. • Requires SSL—check to implement a Secure Sockets Layer. 2 Enter the required parameters. 3 Click OK. Foglight Transaction Recorder 5.6.11 User Guide 53 To edit a Foglight Server location: 1 Click Edit. The Edit Location dialog appears. 2 Make the desired changes. 3 Click OK. To delete a Foglight Server location: 1 Highlight the location you want to delete. 2 Click Delete. The Foglight Transaction Recorder window appears. 3 Click Yes. Windows Server 2003 security settings Windows Server® 2003 has implemented stricter security elements in Internet Explorer. It is recommended that all Transaction Player agents be set to run Play Script as User in the Foglight. In Windows Server 2003, the default security setting for all users is “High”. This setting can cause problems with some scripts, depending on the content of the sites being monitored. The Internet Explorer security setting for that user can be changed to Medium-low. This setting is appropriate for intranet sites and other sites that are trusted. To properly set up Windows Server 2003 Security settings you must: • Change Windows® Security Settings in the Internet Explorer® • Change user parameters in Foglight To change Windows Server 2003 Security Settings: 1 From the Internet Explorer menu bar select Tool > Internet Options. 2 Click the Security tab. 3 In Security level for this zone select Medium-low. 4 Click OK. Foglight Transaction Recorder 5.6.11 User Guide 54 Recorder types The Foglight Transaction Recorder provides the following recording methods. Table 10. Recording methods The Default based record method allows you to record every input made during the recording process. For example, if you enter text into a text field, the Foglight Transaction Recorder records the text entry instructions. The Siebel recorder is designed to optimize recording of Siebel transactions. It has a detailed knowledge of Siebel functionality that is fully integrated into the script recording process by the Foglight Transaction Recorder. To select a Recorder Type: 1 From the Foglight Transaction Recorder drop-down menu, select Recorder > Recorder Type. The recorder type appears in the lower right corner. Foglight Transaction Recorder 5.6.11 User Guide 55 6 How Do I... This section provides basic procedures on Foglight Transaction Recorder functionality and contains the following topics: • Import Dialog Interceptor Settings into the Foglight Transaction Recorder graphic user interface • Use Error Overrides • Insert validation rules • Insert Transactions • Rebaseline a script • Use Sync Points • Change source of text for Form Inputs • Use cookies • Use the Dialog Interceptor Settings • Set up the Foglight Transaction Recorder to run with the FxM • Scale Foglight Transaction Player client machines • Set the Recording Method dialog • Set the delay • Use cache management • Set Empty Temporary Internet Files in Internet Explorer Import Dialog Interceptor Settings into the Foglight Transaction Recorder graphic user interface When using the Foglight Transaction Recorder, you can import the current default modal signatures into the currently loaded script, without having to re-record the entire script. To import Dialog Interceptor Settings: 1 Click Edit > Import Dialog Interceptor Settings. Foglight Transaction Recorder 5.6.11 User Guide 56 The Default Collections dialog appears. 2 Click Yes to replace the Dialog Settings. The modal signatures updates the currently loaded script with the default files it contains. Use Error Overrides When an FTR script is playing back and error codes are encountered, they can stop the script from running and appear in the Results dialog. Figure 46. Example of error codes You can override errors by setting them as an information message by using the Error Override feature. To add an error override: 1 Select the root of the script. Foglight Transaction Recorder 5.6.11 User Guide 57 2 In the Common Properties window, click the Error Overrides ellipse button. The Error Overrides dialog displays. 3 Click Add. 4 Enter the error number (for example 0x80004005) and set the Severity to the required level. 5 Click OK. When the script is played again, the error message is reported with the selected severity and the script continues to play. Insert validation rules Validation rules allow you to verify that a web page loaded properly. A validation rule can be created to verify the properties of any HTML elements. A wizard allows you to create validation rules for: Foglight Transaction Recorder 5.6.11 User Guide 58 • Anchors • Images • Frames • HTML source/text validation This wizard is available during recording or during playback when a script is paused. All Validation rules are converted into Javascript instructions. Figure 47. Validation Rules dialog box NOTE: Execution of numerous validation rules can be CPU intensive. It is advisable to create the minimal amount of validation rules that ensure your script is executing correctly. To validate a rule: 1 Click the New Validation Rule icon . 2 Click New. 3 Select the desired rule (anchor, images, frames, or source). 4 Click Next. The JavaScript Validation Rule dialog displays. 5 Accept the default rule name. 6 Click Next. 7 Select the severity level by deciding if failing this validation results in an information, warning, or error condition. Script execution halts on an error condition, but warning and information messages are logged and the script allowed to continue. 8 Click Next. 9 Select the anchors, images, frames or text to validate. 10 Click Finish. 11 Create additional rules if required. 12 Click OK when all validations are created. Foglight Transaction Recorder 5.6.11 User Guide 59 Insert Transactions NOTE: Transactions cannot be inserted when the root of the Script Window is selected. Transactions can be used to create a logical grouping of instructions into business processes, such as logging on, running a report, and logging off. Figure 48. Insert Transactions dialog box Expected Time Expected Time is the amount of time a transaction can take before it exceeds a Service Level Agreement requirement. When the expected time is exceeded, an error is logged. To create a transaction: 1 Select one or more instructions in the Script Window. 2 Click the Transaction icon . The New Transaction dialog displays. 3 Enter the transaction name. 4 Set the appropriate Expected Time. 5 Click OK. Rebaseline a script When a script is rebaselined, the time-out and expected times are cleared and the script is replayed. Upon completion of the script, the Expected Time Wizard displays, allowing you to adjust the expected times and time-out for the script. Use Sync Points The Foglight Transaction Recorder uses two methods to determine when an instruction completes. It monitors activity in the Main Window, and determines if the next instruction can execute. When the application determines that the next instruction can execute, the instruction is said to have meet its Sync Point. If the application cannot find the HTML element to be acted on in the next instruction, a Sync Point error occurs. Foglight Transaction Recorder 5.6.11 User Guide 60 Change source of text for Form Inputs In addition to replaying the text entered during recording, the Foglight Transaction Recorder allows you to use Java Script or read values from a text file to set the text values of input text instructions. During recording, text typed by the user is captured by the Foglight Transaction Recorder. After recording, this value is changed by selecting the desired option from the Value Source Instruction Property drop-down. Figure 49. Value Source Instruction Property drop-down options From this drop-down, you can select from the following three options: • A different static value (Text Value). • Changed to use Java Script (Value Script). • Changed to read a value from a text file (Custom). An example of a simple script is one that navigates to the Google homepage and enters “Dell” as the search term. Figure 50. Example of a simple script The Instruction Properties for the text value of the input text instruction show that the value is set to Dell as it is recorded. Figure 51. Instruction Properties Foglight Transaction Recorder 5.6.11 User Guide 61 Text Value Clicking on the ellipsis for the Instruction Properties Text Value displays the Java Script Editor and shows the value set during the recording process. Value Script In place of the recorded value, a Java Script can be used to set the text value of the input text instruction. The following example shows a Java Script that returns “Dell”. Figure 52. Example of a Java Script that returns “Dell” When working with the scripting of forms, note the following: • The script must end with a return value. If this is not done, “undefined” is returned and used as the text value of the input text instruction. • The Java Script follows the same security rules as the Java Script that is located on the web page. For example, the script has access to items such as the current system time, but not to the current list of files on the user’s computer. Figure 53. Example of a script that returns a ten digit number based on the Date( ) function Using the Custom Value Source Set Values Values can be set by reading data from external sources and setting the Value Source to Custom, then specifying a filename and row in the Custom Value Param field. In the following example, the value is set to “username3”, the second row in the text file c:\temp\data.txt. NOTE: The value “username1” is now zero. The file c:\temp\data.txt has to exist on each agent machine. Figure 54. Setting a value (example 1) Foglight Transaction Recorder 5.6.11 User Guide 62 It is also possible to use a file from a network share as shown below. In this case, set the scripts to run As User with a user that has sufficient rights to access the file. Figure 55. Setting a value (example 2) The COM object ftr.CustomGetValueFromFile is included with FTR. Users can create their own COM objects to retrieve data from other locations. Use cookies The Foglight Transaction Recorder creates a cookie instruction in a script when recording an existing user. The cookie instruction provides the ability to use existing cookies activated during the recording of a script. During the script recording process, not all Web sites place cookies on machines. NOTE: For the cookie instruction to work correctly, you must first visit the Web site using Internet Explorer® to create cookie files. This step must take place before recording a script and inserting the cookie instruction. To insert the Cookie instruction into a script: 1 In the Stop mode, click the New button. 2 Click on . The Record Method dialog displays. 3 From the drop-down, choose Record as an existing user. 4 Enter the address of the web site or page to be recorded in the Address Toolbar. 5 Navigate through the web site to build a script. Each individual click or action you take when recording a script is displayed in the Script Window and Properties Window. 6 After completing the recording session, click . The Foglight Transaction Recorder stops the recording process. The Cookie instruction displays in the Script Window. 7 Double-click the Cookies instruction. The Instructions Properties Dialog displays. 8 Click in the Cookies field. The Cookie Settings dialog displays. Foglight Transaction Recorder 5.6.11 User Guide 63 9 To change expiration, accessed, or modified dates, click in the desired property. A calendar drop-down displays. 10 Click inside Cookie Data. An ellipse button is displayed. 11 Click . The Text Editor is displayed. 12 Edit the desired text. 13 Click OK. The Cookie Settings dialog displays. 14 Click OK. The Instruction Property displays. 15 Click OK. The Foglight Transaction Recorder displays. Use the Dialog Interceptor Settings Modal dialog windows are windows that steal focus from the running script, and block the continued execution of the current process until the user intervenes by clicking a button or closing the window. The job of the Dialog Interceptor is to intercept these windows as they appear, and click on a pre-specified button, or close the window so that they do not interfere with the execution of a script. The Foglight Transaction Recorder and the Foglight Transaction Recorder 5.6.11 User Guide 64 Foglight Transaction Player Agent ship with a list of known modal dialogs and the appropriate responses to those dialogs. These default dialogs and responses can be found in and modified at: %ftrpath%\config\modalsignatures.xml. The default responses can be overridden by modifying the Internet Settings instruction Dialog Interceptor Settings properties. Figure 56. Dialog Interceptor Settings dialog box To override the Internet Settings instruction Dialog Interceptor settings properties: 1 Open the Internet Instruction Properties dialog. 2 Click the Dialog Interceptor Settings Click to edit button. 3 Select the desired modal dialog window. 4 From the Action drop-down, select the desired setting. 5 Click OK. Foglight Transaction Recorder 5.6.11 User Guide 65 Set up the Foglight Transaction Recorder to run with the FxM Foglight Experience Monitor (FxM) for web-based applications optimizes the real end- user experience, improves capacity, and quickly diagnoses performance problems. Unlike active monitoring solutions that only track scripted user scenarios, and desktop-based monitors that only track a subset of users, the Foglight Experience Monitor tracks all users, all the time, to give you a total picture of the end-user experience. The Foglight Transaction Recorder can be configured to add additional information to all network requests that can be interpreted by FEM to identify traffic generated by the Foglight Transaction Recorder or Player. To activate FEM to run with the Foglight Transaction Recorder, the Tag and Follow property must be turned on. You can turn this property on: • For a new script before the recording process begins, see Turn on Tag and Follow before the recording process begins. • After the script is recorded, see Insert an Internet Instruction and turn on Tag and Follow after a script is recorded. Turn on Tag and Follow before the recording process begins 1 Click Tools > Settings. 2 Click Recorder > HTML. 3 Set Tag and Follow to True. 4 Click OK. Insert an Internet Instruction and turn on Tag and Follow after a script is recorded NOTE: If you already have an Internet Instruction in the script, you only need to set the Tag and Follow property to True. 1 Click the icon on the Script Window toolbar. The Insert Wizard displays. Edit the Internet Settings instruction only if it doesn't exist in a script. 2 Click the Internet Settings property. Foglight Transaction Recorder 5.6.11 User Guide 66 3 Set the Tag and Follow property to True. 4 Click OK. Scale Foglight Transaction Player client machines One of the goals of Transaction Player agents is to measure the response time of the monitored system. A client machine that is running more concurrent scripts than can be supported by the hardware reports slower response times than are being experienced by users. Therefore, it is important to understand the effects of overloading a Transaction Player client machine. Script playback can be both CPU and memory intensive, depending on the length of the script, and the size and complexity of the web pages. Complex pages require more CPU resources to parse the page elements. Larger pages require more memory to temporarily store the results. Due to the dynamic nature of the scripts and the data being gathered, results are stored in memory until the script completes and are then written to disk. Therefore, longer scripts with complex pages can require large amounts of memory. Scripts running over secure connections (HTTPS) require the decryption of each page which can severely load the CPU. As a client machine is configured to run additional scripts, the user should monitor CPU usage. This can be done in the Intelligent Agent or simply by looking at the performance in Task Manager. The CPU can be expected to spike at the beginning and end of a script execution, but should not remain pegged at 100% or maxed out. When CPU saturation occurs, in most cases the CPU is simply overloaded. An additional client machine must be configured for monitoring and some of the scripts moved to the new machine. Other conditions that create a heavy load on the CPU are insufficient memory and heavy use of the system paging file. Combining the CPU requirements of Transaction Player with heavy paging can result in a CPU being pegged at 100% and staying there for long periods. In this condition, the response times reported by the agent are slower than those being experienced by users. Before configuring a new client machine, the user should examine the use of the page file, and determine if more memory can resolve performance problems. If the client machine is Windows 2000 or 2003, the Foglight NT System agent can provide this information. Otherwise, Task Manager or Performance Manager shows this information. The key metric is Page Faults, which tells the user how frequently the machine has to go to the disk to swap memory. Another option is to disable network statistic collection in the Intelligent Agent. This feature stores a tremendous amount of timing detail for each page in a script. Although this feature can be useful for isolating problems, CPU and memory usage can be reduced significantly by turning this feature off. Foglight Transaction Recorder 5.6.11 User Guide 67 Set the Recording Method dialog During the Foglight Transaction Recorder recording process, the Recording Method dialog displays and you can: • Record as a New User—selecting this option records an FTR script as a user who has never been to this Web site before. No cookies exist. • Record as an Existing User—selecting this option utilizes cookies that exist for the user currently logged into a machine. Figure 57. Recording method dialog box Set the delay The Foglight Transaction Recorder gives you the option to insert delays during the recording process to compensate for client interactions, including typing and reading. The Delay Toolbar allows you to turn delays on or off. Use cache management The following provides procedures on: • How cache management works • How Foglight Transaction Recorder cache settings interact with Internet Explorer cache settings • Cache management locations and settings How cache management works Cache management allows quick cache access when you make repeat visits to a web site. Instead of having to access the files (which include graphics) each time you visit the site, the files are stored and accessed directly from the local hard drive. NOTE: The Foglight Transaction Recorder does not manage Internet Explorer cache. See How Foglight Transaction Recorder cache settings interact with Internet Explorer cache settings. Cache management parameters are set in the Foglight Transaction Recorder Internet Settings window. File cache operations are executed when the Internet Settings instruction is executed. NOTE: If the user does not want the file cache to remain after playback, an Internet Settings instruction can be created at the end of the script to empty the cache. The Foglight Transaction Recorder provides the following settings: • Empty internet cache—setting this property to true empties all caches. • Maximum Cache Size (MB)—specifies how much disk space is used for the Temporary Internet Files folder. The minimum size is 10 MB. Foglight Transaction Recorder 5.6.11 User Guide 68 Figure 58. Insert Wizard How Foglight Transaction Recorder cache settings interact with Internet Explorer cache settings Internet Explorer® settings provides the “Empty Temporary Internet Files folder when browser is closed” setting. By default, Internet Explorer does not select this option. If turned on, this setting overrides the Foglight Transaction Recorder. If you want Foglight Transaction Recorder cache files to remain, make sure this setting is not selected. Setting up Internet Explorer to allow the Foglight Transaction Recorder to manage cache: 1 Open Internet Explorer. 2 Select Tools > Internet Options > Advanced tab. 3 Scroll down to “Empty Temporary Internet Files folder when browser is closed.” 4 Clear the check box if it is already selected. 5 Click OK. Cache management locations and settings The following provides details on Foglight Transaction Recorder cache locations and executions. Cache locations and executions in the Foglight Transaction Recorder and Player: • Foglight Transaction Recorder (Main Window) ..\\Documents and Settings\%User%\Local Settings\Application Data\Dell Software\FoglightTransaction Recorder Foglight Transaction Recorder 5.6.11 User Guide 69 • Foglight Transaction Player (Temp Area) ..\\%windows%\Temp\FTR Temporary Internet Files\TransactionPlayer@stljc_vmxp01\ScriptName Foglight Transaction Recorder cache management When recording starts, work area cookies and file cache items are deleted. Folders remain, but indexes are empty. The Foglight Transaction Recorder uses two methods of recording: • Record as a New User—selecting this option records a Foglight Transaction Recorder script as a user who has never been to this Web site before. No cookies exist. • Record as an Existing User—selecting this option uses cookies that exist for the user currently logged into a machine. Record as a new user • No Cookie instruction. • Internet Settings—Empty Cache set to true. Record as an existing user • Cookie instruction is created—this instruction can be empty or not. • Internet Settings—Empty Cache set to false. Foglight Transaction Player cache management When playback starts: • The cookies in the cookie cache is deleted. • If there is a cookie instruction, the cookies are written to the cookie cache. • If an Internet Settings instruction exists and Empty Cache is set to true, the items in the File Cache are deleted. • If an Internet Settings instruction exists and Empty Cache is set to false, items in the file cache are trimmed down to the Maximum Cache Size. When playback ends: • The cookies and cached files and their indexes remain after playback regardless of settings. Set Empty Temporary Internet Files in Internet Explorer Internet Explorer® settings provides the “Empty Temporary Internet Files folder when browser is closed” setting. By default, Internet Explorer does not select this option. If turned on, this setting overrides the Foglight Transaction Recorder. When recording with the Foglight Transaction Recorder, make sure this setting is not selected. To set Internet Explorer Temporary Internet Files to run with the Foglight Transaction Recorder: 1 Open Internet Explorer. Foglight Transaction Recorder 5.6.11 User Guide 70 2 Select Tools > Internet Options > Advanced tab. 3 Scroll down to Empty Temporary Internet Files folder when browser is closed. 4 Clear the check box if it is already selected. Foglight Transaction Recorder 5.6.11 User Guide 71 A Appendix: Best practices This section provides best practices when using the Foglight Transaction Recorder. The following topics are provided: • FTR Advanced/CitraTest best practices • Run FTR scripts as a local administrator • Gather network statistics when using Windows Vista or a later version • Scale Foglight Transaction Player Agents FTR Advanced/CitraTest best practices CitraTest® is an effective and robust software used to script applications. The learning curve is relatively short. CitraTest can be mastered in a few hours using the following best practices: 1 Verify the Foglight environment 2 Create and Run scripts on the same machine 3 Captured images should be as small as possible 4 Manually create the CitraTest scripts 5 Use the AppStart function to start applications 6 Maximize applications after AppStart 7 Script launching and closing of the application 8 Create and test FTR scripts containing the CitraTest script 9 Use the Restore Desktop features of CitraTest and FTR Verify the Foglight environment Before deploying FTR scripts, it is advisable to ensure that the environment is correct by deploying and running a test script. To do this, create a simple FTR script, publish it, create an agent, and configure it to run the script in and set to run As User. The script can be as simple as navigating to Google or to a home page set to About:Blank. The goal is to ensure that the script runs and return results, thereby verifying the configuration. Create and Run scripts on the same machine To eliminate as many variables as possible, the creation and playback environments should be identical. • Agent Machine—The development machine should be configured as a Foglight agent machine, with the agent started and stopped as necessary for testing. The creation and deployment of the test should all be done on the agent machine which is separate from the Foglight Management Server. • Run as User—When configuring the agent properties, scripts should be set to run As User and the user specified should be the same as the user that was logged on during script development. Foglight Transaction Recorder 5.6.11 User Guide 72 • Remote Access—Another important step in keeping the creation and playback environments identical, is to not use remote access or terminal services. While these may seem to provide identical environments, there can be subtle differences that affect playback and cause problems that can be difficult to diagnose. If it is not possible to work directly on the development machine, a remote control program that controls the default desktop (as opposed to creating a second desktop environment) should be used. DameWare Mini Remote Control is easy and inexpensive. A free trial is available at http://www.dameware.com/products/dmrc/. If another remote control product is used, it is up to the user to ensure that the product does not alter the display properties of the system when connected or disconnected. If it does alter the display properties, a script that plays back properly when remotely controlled may not play back correctly when the remote connection terminates. When using DameWare Mini Remote Control, configure the settings to ensure that the display is consistent. Figure 59. Default Host properties dialog box Captured images should be as small as possible Use small unique images in your scripts. This reduces the impact of display changes to the script. For example, the following image of the Dell Software logo is accurate, but much larger than needed. Figure 60. Example of a large image The example below provides a much smaller, unique image to use to identify the logo. Figure 61. Example of a small image Manually create the CitraTest scripts While CitraTest® has a record feature, manual scripting using the “Capture image/Insert script function” method, results in scripts that are more reliable and easier to debug. After a short learning curve, manual scripts can be created almost as quickly as recorded scripts. When creating a new CitraTest script, use the following steps. Foglight Transaction Recorder 5.6.11 User Guide 73 To manually create a CitraTest script: 1 Know precisely what each step in the script will be before starting. 2 Create a new folder for the script. 3 Create a new script in CitraTest. 4 Write comments and code that launch and then shut down the application and test by running the script. The topics below provide detailed procedures. 5 Write comments for each action needed in the script. 6 Code and test the actions commented in Step 5. Besides creating easily readable code, this method forces the programmer to think about what the script needs to accomplish and how those actions will be performed. In the following example, a script opens IE, launches Foglight, performs a few actions, and then closes IE. Option Strict On Option Explicit On Module Script Sub StartScript() InitScript 'Launch IE to Foglight login page 'Maximize IE 'Login to Foglight 'Click on the End User Overview link 'Log out of Foglight 'Close IE End Sub End Module Use the AppStart function to start applications The first step to accomplish in many CitraTest® scripts is starting the application. While it is tempting to doubleclick desktop icons, or use the Start menu to launch an application, the AppStart function is easier and more reliable. NOTE: AppStart will not work when the application is launched inside a Citrix/Terminal Services Client. To start an application using the AppStart Function: 1 Launch and maximize the application to be monitored. If the application uses a web browser, set the browser home page to About:Blank. 2 Use CitraTest’s Image Capture to grab a portion of the title bar. Save the image as Launch_TitleBar. For example, if scripting a Foglight login page, capture, and save as an image of the login screen. 3 Select AppStart from the CitraTest Scripting menu. Choose the executable that launches the application and the image of the title bar used to verify the application is running. NOTE: The path to the executable must be the same on all agent machines. At the end of the AppStart wizard, a code snippet is inserted into the script. If the application takes a few seconds to load, it is advisable to add a delay argument to the function call. In the example script below, a two second delay has been added. The script should look like the following. Option Strict On Option Explicit On Module Script Sub StartScript() InitScript Foglight Transaction Recorder 5.6.11 User Guide 74 'Launch IE to Foglight login page returnStatus = AppStart("""C:\Program Files\Internet Explorer\iexplore.exe"" http://stlvmta01:8080", "FglLoginPg.bmp") If returnStatus <> SUCCESS Then AbortScriptEx (SCRIPT_FAIL) Exit Sub End If 'Maximize IE 'Login to Foglight 'Click on the End User Overview link 'Log out of Foglight 'Close IE End Sub End Module 4 Compile and run this script. NOTE: Allow this script to run completely before doing other scripting. Maximize applications after AppStart Maximize the display of the application to ensure that the window matches the script development window size and displays all of the interface. 1 When the application is not maximized, capture, and save an image of the window buttons. Be sure to set the image click point on the maximize button. 2 Add a “click on image” command to the script. The code should look like the following: 'Maximize IE returnStatus = ClickOnImage("MaximizeButton.bmp", LEFT_BUTTON, 1, STANDARD_TIMEOUT, "NONE") If returnStatus <> SUCCESS Then AbortScriptEx (SCRIPT_FAIL) Exit Sub End If Alternately, the application can be maximized using the window management key commands. This method eliminates the need for the ImageExists function, but does not confirm that the maximize was successful. An ImageExists function can be used to check and maximize if necessary. KeystrokeVK ("VK_MENU", KEY_PRESS) KeystrokeString (" ") KeystrokeString ("x") Script launching and closing of the application After the script launches the application, add the code to close the application. To add code to the application: 1 Capture and save an image of the window buttons. Be sure to set the image click point on the close button using the Select click spot toolbar button. Foglight Transaction Recorder 5.6.11 User Guide 75 2 In the script editor, add instructions to click on the close button. In the example below, a delay was added so the application would be visible for a few seconds before being closed. Option Strict On Option Explicit On Module Script Sub StartScript() InitScript 'Launch IE to Foglight login page returnStatus = AppStart("""C:\Program Files\Internet Explorer\iexplore.exe"" http://stlvmta01:8080", "FglLoginPg.bmp") If returnStatus <> SUCCESS Then AbortScriptEx (SCRIPT_FAIL) Exit Sub End If 'Maximize IE returnStatus = ClickOnImage("MaximizeButton.bmp", LEFT_BUTTON, 1, STANDARD_TIMEOUT, "NONE") If returnStatus <> SUCCESS Then AbortScriptEx (SCRIPT_FAIL) Exit Sub End If 'Login to Foglight returnStatus = ClickOnImage("UserName.bmp", LEFT_BUTTON, 1, STANDARD_TIMEOUT, "NONE") If returnStatus <> SUCCESS Then AbortScriptEx (SCRIPT_FAIL) Exit Sub End If KeystrokeString ("foglight") returnStatus = ClickOnImage("Password.bmp", LEFT_BUTTON, 1, STANDARD_TIMEOUT, "NONE") If returnStatus <> SUCCESS Then AbortScriptEx (SCRIPT_FAIL) Exit Sub End If KeystrokeString ("foglight") returnStatus = ClickOnImage("LoginButton.bmp", LEFT_BUTTON, 1, STANDARD_TIMEOUT, "NONE") If returnStatus <> SUCCESS Then AbortScriptEx (SCRIPT_FAIL) Exit Sub End If 'Click on the End User Overview link returnStatus = ClickOnImage("EndUserOverview.bmp", LEFT_BUTTON, 1, STANDARD_TIMEOUT, "NONE") If returnStatus <> SUCCESS Then AbortScriptEx (SCRIPT_FAIL) Exit Sub End If 'Log out of Foglight Foglight Transaction Recorder 5.6.11 User Guide 76 returnStatus = ClickOnImage("SignOut.bmp", LEFT_BUTTON, 1, STANDARD_TIMEOUT, "NONE") If returnStatus <> SUCCESS Then AbortScriptEx (SCRIPT_FAIL) Exit Sub End If 'Close IE returnStatus = ClickOnImage("CloseButton.bmp", LEFT_BUTTON, 1, STANDARD_TIMEOUT, "NONE") If returnStatus <> SUCCESS Then AbortScriptEx (SCRIPT_FAIL) Exit Sub End If End Sub End Module Alternately, close the application using the Alt+f or x hot keys. This eliminates the need to capture the window Close button, but does not confirm that the window closed. Create and test FTR scripts containing the CitraTest script Once this script is running in CitraTest®, create a new FTR script, and insert a CitraTest script using the FTR Insert Wizard. To create a new FTR script: 1 Create a new FTR script. 2 Insert a CitraTest Script Instruction. 3 Set the CitraTest executable according to the directories used in CitraTest. 4 Run the FTR script. 5 Once this runs correctly: a Publish it to the Foglight server. Foglight Transaction Recorder 5.6.11 User Guide 77 b Configure the Service Model to include the new script. c Start the Transaction Player agent. 6 Once the basic script is deployed and running successfully, write the rest of the script and insert the timers. 7 When the script has been completed: a Replay the script in the Foglight Transaction Recorder. b Republish the script to the Foglight Management Server. c Stop and restart the Transaction Player to start monitoring the new script. Use the Restore Desktop features of CitraTest and FTR When a script fails, the application is left in an unknown state. To ensure a consistent launch point and avoid other problems such as multiple versions of the application running, Restore Desktop is advisable in many situations. CitraTest® and FTR each have the ability to restore the desktop to the state prior to script execution, and both should be set to ensure a consistent script startup state. To use the CitraTest Restore Desktop feature: 1 In CitraTest, click Playback > Playback Options. 2 Select the Restore desktop to the script start time state check box. This closes any windows that were open when the script launched. 3 To enable FTR’s restore desktop feature, set the Restore Desktop option to True in the CitraTest instruction properties. There are certain applications, such as Citrix clients, where closing the window or killing the process is detrimental to the system. For example, closing a Citrix client window leaves the session open on the server. A “LogOff” is required to properly shut down a Citrix client. In such cases, the Restore Desktop property in the FTR instruction should be left at False. Logic should be added in CitraTest script to the AbortScript function and/or at the beginning of each script to ensure the application is shuts down properly. For example, at the beginning of the Citrix script, use the ImageExists function to check for the pre-existence of the Citrix client, and if it exists click the Start > Shut Down in the Citrix client window and execute a clean Log Off. Foglight Transaction Recorder 5.6.11 User Guide 78 Run FTR scripts as a local administrator When running the FTR scripts in the Foglight Transaction Recorder or through the agent, it is recommended to run with a user that has a local account with administrator rights. Gather network statistics when using Windows Vista or a later version To gather network statistic from the Foglight Transaction Recorder when using Windows Vista or a later version, you must run as an elevated user or disable the User Account Control. Scale Foglight Transaction Player Agents The following topics provides procedures on how to scale Foglight Transaction Player Agents. • Maximum number of concurrent scripts • Determining maximum concurrent scripts • Assigning worker processes Maximum number of concurrent scripts The maximum number of concurrent scripts that can be run on a Foglight Transaction Player agent host is defined below. Exceeding these numbers can result in client-side degradation and response time measurements that are not consistent with (that are slower than) the actual performance of the monitored application. The number of CPU equals the number of CPU cores on the Foglight Transaction Player agent host machine (a dualcore processor counts as two CPUs). Table 11. Maximum number of concurrent scripts Number of CPUs Maximum Number of Concurrent Scripts 1 8 2 14 3 19 4 23 5 26 6 29 7 31 8 33 The numbers in the table above are general guidelines, not hard rules. CPU is generally the limiting factor when determining the maximum number of concurrent scripts, but memory consumption can also come into play. Memory and CPU usage on a Foglight Transaction Player agent host can be monitored with an OS cartridge or by examining data supplied in the Foglight Transaction Player intelligent agent. Longer scripts on complex web sites can use considerably more CPU and/or memory than short scripts monitoring simple web sites. Each implementation is different so some customers may be able to run more scripts (and some fewer), concurrently than show in the above table. Faster CPUs are capable of running more scripts concurrently than slower CPUs. A more precise method for determining the maximum number of concurrent scripts is described below. Foglight Transaction Recorder 5.6.11 User Guide 79 The maximum number of concurrent scripts running on a Foglight Transaction Player agent host is determined by the total worker processes assigned to the various agents on the host. Five Foglight Transaction Player agents each assigned two worker processes can never execute more than 10 Foglight Transaction Player scripts at any given time. While there is no hard limit to the number of worker processes that can be assigned to a single Foglight Transaction Player agent, Dell recommends a maximum of five. If five worker processes is not sufficient to execute all of the scripts assigned to a Foglight Transaction Player agent, it is recommended that another agent be created and the scripts be split between them. Likewise, there is no hard limit to the number of Foglight Transaction Player agents that can be configured on a single host. But since each agent uses as least one worker process, the practical limit is the same as the number of concurrent scripts/total worker processes. Determining maximum concurrent scripts The limiting factor on how many scripts can be running at any given time on a Foglight Transaction Player agent host is not determined by a certain percentage CPU or memory usage. The maximum number of concurrent Foglight Transaction Player scripts is exceeded when resource usage on the host machine begins to affect script response times. When this happens, slower response times are not due problem with the monitored system, but rather with the load put on the Foglight Transaction Player host machine. This is different for each implementation and can only be determined experimentally. Two machines are required; the Foglight Transaction Player agent host to be tested, HostA, and a separate machine to act as a control, HostB. Record a few scripts with the Foglight Transaction Recorder that are representative of the scripts that will be used in production. Name them Script1, Script1, Script3. Configure Foglight Transaction Player agents, AgentA0 and AgentB0, on both machines to run a Script List, List0, consisting of Script1, Script2, and Script3. Start the agents. Let the scripts run for a few sample intervals. Response times for the scripts should be similar on both Foglight Transaction Player hosts. The following provides procedures on determining the maximum number of concurrent scripts: 1 Stop all agents on both machines. 2 Create an new agent on HostA, name it Agent1. 3 Create a new Script List, List1 and assign three scripts - these can be the same or different script as used in List0. Start all agents on both machines and let them run for a few sample intervals. It is important that scripts are running concurrently, so be sure to start the agents simultaneously. The first run of the scripts can be slower than subsequent runs due to additional load on the host machine when the agents are restarted. Be sure to let the scripts several times before comparing response times. Response times on HostA, Agent0 should be similar to HostB, Agent0. 4 Repeat this process until HostA, AgentN shows response times that are significantly different that HostB, Agent0. At this point, HostA has exceeded its maximum number of concurrent scripts. Assigning worker processes The Number of Worker Processes property of a Foglight Transaction Player agent determines the maximum number of concurrent scripts that can be executed by the agent. The correct setting for this property is determined by the number of scripts assigned to the agent and their respective expected times and sample intervals. Dell recommends a maximum value of five worker processes per Foglight Transaction Player agent but this maximum is not strictly enforced. The total number of worker processes on all agents on an FTR host machine also has a practical limit although this is also is not strictly enforced. See Maximum Number of Concurrent Scripts per Foglight Transaction Player Host for more information. The correct setting can be calculated as described below or simply determined by trial and error. An alarm occurs if a script is not executed because there are not enough worker processes assigned to the agent. The value can be incremented at this time. Foglight Transaction Recorder 5.6.11 User Guide 80 Scripts scheduling is best explained by an example. Suppose a Foglight Transaction Player agent has a script list consisting of five scripts; S1, S2, …, S5 with expected times of ET1, ET2, …, ET5. For simplicity, the sample interval for each of these scripts is 300s. • "S1 is scheduled to execute at time 0 and every 300s thereafter: 0, 300, 600, 900, … • "S2 is offset from S1 by ET1 and executes every 300s thereafter: 0+ET1, 300+ET1, ... • "S2 is offset from S1 by ET1 + ET2 and executes every 300s thereafter: 0+ET1+ET2, 300+ET1+ET2, … • "S5 is offset from S1 by ET1+ET2+ET3+ET4, and executes every 300s thereafter… To determine the minimum number of worker processes required to run a set of scripts, divide the sum of the expected times of the scripts by the sample interval and round up the next integer. For instance, if a Script List contains 12 scripts with combined Expected Time of 720s and a sample interval of 300s, the minimum number of worker processes is: 720/300 = 2.4 rounded up to 3. In this case, some of the scripts will not run during the first or second sample intervals but will eventually run on a regular schedule as described above. If a script is running slowly and exceeding its expected time, the next scheduled script executes on time if there is a worker process available. If no worker process is available, the script waits a period of time equal to the script interval minus 10 seconds before being abandoned for this interval. An alarm is created when this occurs. Keep in mind that regardless of the numbers of worker processes configured on a Foglight Transaction Player host, only one script can run visibly at any given time. This is managed by a semaphore that is set in addition to worker process settings. This is particularly important when implement FTR Advanced scripts. When a script that is set to run visible does not have a worker process available, it waits 10 minutes before being abandoned. Foglight Transaction Recorder 5.6.11 User Guide 81 B Appendix: Troubleshoot the Foglight Transaction Recorder Use all of the following steps when an (Foglight Transaction Recorder) FTR script plays correctly in the recorder, but fails to play back correctly in the agents. IMPORTANT: If escalation is required, attach all of the requested material attached to the case prior to escalating to Dell Software development. The following troubleshooting steps are provided: 1 Use the script properties 2 Verify the Foglight environment 3 Remote Desktop 4 Verify script playback 5 Ensure users are logged out before running a script 6 Run as a user 7 FTR Advanced best practices 8 Duplicate the steps in Internet Explorer 9 TPRunscript 10 Contact Dell Support and collect support documentation Use the script properties When using script properties, note the following: • If the domain field is left blank it will default to the computer name, which makes the user a local machine user. • Users should be a member of the Administrators group on the local computer. Verify the Foglight environment Verify that the Foglight environment is setup correctly by creating and running a simple FTR script through an agent. To verify the Foglight environment: 1 Create a simple FTR script. 2 Publish it, create an agent, and configure it to run the script in As User. The script can be as simple as navigating to Google or an About:Blank page. The goal is to ensure that the script runs and returns results verifying the configuration. Foglight Transaction Recorder 5.6.11 User Guide 82 Remote Desktop You cannot record FTR-A scripts using Remote Desktop. Verify script playback Verify script playback in the recorder on the agent machine, thereby taking the agent out of the process. To verify script playback: 1 Access the agent machine’s default desktop by going to the physical machine if possible and access, using the Virtual Infrastructure Client if the machine is a virtual machine. Or, using a products such as Dameware or VNC with the settings described in the Best Practices guide. For more information, see Create and Run scripts on the same machine. 2 Install the Foglight Transaction Recorder on the agent machine and verify that the script playbacks on this system in the recorder. 3 a If the script does not playback in FTR, re-record or edit the script until it does playback in the FTR on the agent machine. b If running an FTR Advanced script, extract the CitraTest® script by right-clicking on the CitraTest instruction and choosing Export Instruction Data, then run the script in CitraTest. c Use the results files to troubleshoot errors during playback. The results files are written into the same directory that the FTR script is saved in. d Republish the script. Set the script to Run Visible (temporarily). a On the Foglight Management Server, click Administration > Agents > Agent Status Dashboard. b Select the agent and click Edit Properties. c Click Modify the private properties for this agent link. d Click Edit. The EU-FTR Properties dialog displays. 4 e Check the required scripts in the Force Script To... column. f Click Save Changes. g Close out of the dialog. Watch the script playback. Set the Run Visible option to False. Since only one script can play visibly at a time, it is important during normal operation to set Run Visible to False in order to run multiple scripts in a timely manner. Foglight Transaction Recorder 5.6.11 User Guide 83 Ensure users are logged out before running a script In scripts where you need to log into systems, it is best to ensure that the user is logged out at the beginning of the script. By adding this step, your script runs successfully even if the previous script failed to log out the user. For example, in PeopleSoft the script should navigate to the https://.../?cmd=logout page instead of a https://.../signon.html page which will logout the current user and prompt for a new user login. Run as a user Edit the agent ASPs to run As User, using the same user that logged into the machine in Step b. To run as a user: 1 On the Foglight Management Server, click Administration > Agents > Agent Status Dashboard. 2 Select the agent and click Edit properties. 3 Click Modify the private properties for this agent link. 4 Set Play Script as User to True and enter the User Name, Password, and Domain information for the user that was logged into the machines where the script was recorded. NOTE: When using a local user, the machine name should be entered into the Domain field. When using a network account, the domain the user is a member of should be entered. 5 Look at the Intelligent Agent on the agent machine to verify that the script is attempting to run and/or that it is running, but not reporting results to the Foglight Management Server. • 6 The Intelligent Agent can be accessed from the Foglight Web Console or by navigating directly to the Transaction Player agent machine. The default URL is: http://servername:80. Define a shorter path to the scripts directory (for example, “c:\ScriptDirectory\”) by specifying it in the Script Directory property. NOTE: The change takes effect after restarting the agent, only if the script path is valid on the agent machine. After setting the “Script Directory” property, the script files are moved under the %Script Directory%\Agent Name\scripts directory, and the results files are moved under the %Script Directory%\Agent Name\results directory. Foglight Transaction Recorder 5.6.11 User Guide 84 FTR Advanced best practices When running FTR Advanced scripts, make sure you are following the best practices from the FTR Advanced/CitraTest Best Practices. For more information, see Appendix: Best practices. The following provides a list of best practices: • Verify the Foglight environment • Create and Run scripts on the same machine • Captured images should be as small as possible • Manually create the CitraTest scripts • Use the AppStart function to start applications • Maximize applications after AppStart • Script launching and closing of the application • Create and test FTR scripts containing the CitraTest script • Use the Restore Desktop features of CitraTest and FTR Duplicate the steps in Internet Explorer If the script does not record or playback on the agent machine, use IE to duplicate the steps in the recording and verify that the application works properly in Internet Explorer®. Common differences are: • Different proxy settings • Different versions of Internet Explorer • Enhanced security settings/trusted sites TPRunscript Use tprunscript.exe and the Visible option to run the script from the command line in the same way the agent runs the script. To use TPRunscript: 1 Go to the required drive. 2 In a command line window, navigate to the FTR bin directory. Example: CD “C:\Program Files (x86)\Dell Software\Foglight Transaction Recorder\bin” 3 Enter TPRunScript.exe <inputscript> where < inputscript>. This is the script you want to execute. Example: TPRunScript.exe "C:\Users\Administrator\Documents\My Foglight Scripts\Samples\FTR-ClipboardExample.ftr" Foglight Transaction Recorder 5.6.11 User Guide 85 Contact Dell Support and collect support documentation If the problem still occurs, please contact Dell Support. You may request the following support documentation. 1 2 3 4 FMS Support Bundle. a Navigate to Administration > Setup & Support > Manage Support Bundles. b Click Create Bundle. FglAM Support Bundle. a On the navigation panel, click Administration > Agents > FglAM Support Bundle. b Click Download. A screenshot of the agent ASPs. a On the navigation panel, click Administration > Agents > Agent Status. b Select the agent and click Edit Properties. c Take a screen shot of the page using the PrtScn button to copy it to the clipboard, or use your preferred method of capture screenshots. Agent log files. a On the navigation panel, click Administration > Agents > Agent Status dashboard b Select the agent with the issue. c Click the Get Log button to download the log file. 5 The FTR script and results file from the Verify script playback troubleshooting step. 6 Send the results files from the agent machine stored in: C:\Dell_Software\Foglight\fglam\state\default\process\FTR\agents\FTR\5.5.5\ala rm\results\ NOTE: Be sure to copy the files while the agent is running, some files are not saved when the agent is deactivated. 7 If troubleshooting a FTRA script, send the log files stored on the agent machine in: C:\Dell_Software\Foglight\fglam\state\default\process\FTR\agents\FTR\5.5.5\Age ntName\results\ScriptName\ 8 If the monitored sites are reachable from outside the customer’s site, get permission for Support and Development to run the scripts if necessary. Foglight Transaction Recorder 5.6.11 User Guide 86 C Appendix: API for FTR Timer Usage The following procedures provides the code required to use the FTR Timer Usage API. For details, see the following topics: • Three main classes • Samples code • Enums • Sample of usage Three main classes ISession-CreateObject("ftr.timer.Session")Session Begin() End() IsRunning() StartTimer(name) createTimer(name) StartTransaction(name) StopTransaction(name) Log(int code, severity level, string message) ITimerFolder- provided from ISession IsRunning() Begin() End() IFTRTimer - provided from ISession or from ITimerFolder Start() Stop() IsRunning() Log(int code, severity level, string message) Foglight Transaction Recorder 5.6.11 User Guide 87 Required steps The following procedure provide the required scripting steps. To create a timing script: 1 Create a Session. 2 Call Begin(). 3 Create a folder to enclose timers or create a timer. 4 When a timer is acquired from the session, call Start(). 5 At the end of the period to be timed, call Stop(). NOTE: If you create a folder, all timers created until you close the folder, remain in that folder. 6 To report a warning or error condition, call the Log() method on your session, folder, or timer object. 7 Call End()on your session object. Samples code When the Foglight Transaction Recorder is installed, scripts are placed in the Windows operating system My Documents folder. For wscript samples, refer to this folder. Enums Severities: • 1-info • 2-warning • 3-error • 4-fatal Sample of usage //This source code and information is provided "AS IS" without warranty of any kind, //either expressed or implied, including but not limited to the implied warranties //of merchantability and/or fitness for a particular purpose. This source code is //intended only as a supplement to Dell Software's Foglight Transaction Recorder //and/or on-line documentation. See these other materials for detailed information //regarding Dell code samples. //Create a Session object to hold Foglight Data var SessionResult = WScript.CreateObject("ftr.timer.Session"); SessionResult.Begin(); //Create a Foglight Transaction var Transaction = SessionResult.createTransaction("Transaction 1",300); Foglight Transaction Recorder 5.6.11 User Guide 88 Transaction.Begin(); //Create Timers within the Transaction var Timer1 = Transaction.createTimer("2 Second Timer"); Timer1.Start(); WScript.Sleep(2000); Timer1.Stop(); var Timer2 = Transaction.createTimer("Half Second Timer with message"); Timer2.Start(); WScript.Sleep(500); Timer2.Log(1,1,"Informational Message"); Timer2.Stop(); Transaction.End(); SessionResult.End(); Foglight Transaction Recorder 5.6.11 User Guide 89 About Dell Dell listens to customers and delivers worldwide innovative technology, business solutions and services they trust and value. For more information, visit www.software.dell.com. Contacting Dell Technical support: Online support Product questions and sales: (800) 306-9329 Email: [email protected] Technical support resources Technical support is available to customers who have purchased Dell software with a valid maintenance contract and to customers who have trial versions. To access the Support Portal, go to https://support.software.dell.com/. The Support Portal provides self-help tools you can use to solve problems quickly and independently, 24 hours a day, 365 days a year. In addition, the portal provides direct access to product support engineers through an online Service Request system. The site enables you to: • Create, update, and manage Service Requests (cases) • View Knowledge Base articles • Obtain product notifications • Download software. For trial software, go to Trial Downloads. • View how-to videos • Engage in community discussions • Chat with a support engineer Foglight Transaction Recorder 5.6.11 User Guide 90
© Copyright 2024 Paperzz