The OpenSTA Architecture
OpenSTA (Open System Testing Architecture) is a distributed software architecture for developing, executing and analyzing the results of Tests.
A Test may include Scripts or Collectors or both. Scripts define the operations performed by Virtual Users. Collectors define sets of SNMP, NT Performance data or other data to be retrieved during all or part of a Test-run. They can provide useful information about system activity and the Results can be analyzed alongside those from other OpenSTA Modules.
The OpenSTA Architecture provides generic facilities that may be used by other OpenSTA Modules. This chapter describes this architecture and its components.
See also:
The Test Manager and Task Group Executers
Architecture Module Installed Files
Script-Based Module Installed Files
NT Performance Module Installed Files
The Name Server Configuration Utility
OpenSTA Modules
The OpenSTA Architecture Module is the base OpenSTA Module and must be installed before all others. It is installed, as are all Modules, using Microsoft Installer. The graphical Commander utility is used to develop and run Tests. It is also used to display the results of Test-runs. Each Module, provides its own Plug-ins to provide Module-specific Configuration, Test-run Monitoring and Results display facilities. They are invoked by Commander.
See also:
An OpenSTA Test
A Test is represented in Commander as a table. This table may contain any number of rows, each defining one of two types of Task Group to be executed, a Script-based Task Group and a Collector-based Task Group.
A Script-based Task Group contains one, or a sequence of Tasks, to be performed by one or more Virtual Users. Each Task is represented by a Script, written in the SCL scripting language (Script Control Language) developed by CYRANO, which in HTTP/S Load, represents a recorded Web browser session. When a Test is run, the SCL compiler is invoked to compile these Scripts into object files for execution by Task Group Executers.
Each OpenSTA Module provides its own facilities for creating and maintaining Module-specific Scripts. For example, HTTP/S Load provides the Script Modeler module for producing Scripts from Web browser session recordings. The file extension for SCL Script source files is Module-specific, for HTTP scripts the extension is .HTP. The object file extension is .TOF. A .SCD file is also created by the SCL compiler; this contains a list of script dependencies and is used to identify items required to compile and run a Script.
A Collector-based Task Group, defines a set of data to be retrieved from one or more Hosts at user-specified intervals during all or part of a Test-run. This data can be viewed alongside other Results to provide comprehensive information about a Test-run. Each such Task Group consists of a single Task, known as a Collector, defining the data to be retrieved. Collectors can be defined for retrieving performance data from Hosts running Windows NT or Windows 2000 and for retrieving SNMP data from Host computers, or other devices, running an SNMP agent or proxy SNMP agent. Collectors may retrieve data for all or part of a Test-run. Each Collector is held as a file. NT Performance Collectors have the extension .NTP. SNMP Collectors have the extension .SMP.
The definition of a Test, as represented in the table displayed by Commander, is stored in a Test Definition file. This is held within the Test's subfolder. For example, if OpenSTA is installed in the default location, the Test Definition file for the Test MYTEST would be:
C:\Program Files\OpenSTA\Repository\Tests\MYTEST\MYTEST.tstThe Test Definition file is read by the Test Manager and used to initiate and control the execution of a Test.
When a Test is initiated all the Task Groups, identified by rows in a test table, are started in accordance with the start criteria specified in the Test Definition file. Each Task Group may be started when the Test starts, after a fixed time period from the start of the Test or at a specified day and time of day.
See also:
The Test Manager and Task Group Executers
The Test Manager and Task Group Executers
When a Test is executed, a Test Manager process and one or more Task Group Executer processes are created to execute the Test and its constituent Scripts and Collectors.
When a Test is initiated, by clicking the Start Test button , a single Test Manager process is created on the Repository Host to execute the TestManager.exe image. This reads the Test Definition file and schedules the execution of the Task Groups that make up the Test. The Test Manager creates a new Task Group Executer process for each Collector-based Task Group and a single Task Group Executer process for each host on which an HTTP Task Group is to be executed. The Task Group definition specifies the Host on which its Executer process is created.
Task Groups containing Scripts are executed by Module-specific Task Group Executers. For example, a Task Group containing Scripts from HTTP/S Load will be run by the HTTP Task Group Executer (TExecuter_htp.exe), which can be configured using the initialization file TestExecuter_web.ini.
For more information, see Appendix: Test Executer Parameter File. One Test Executer process is created for each Task Group to be executed on a Host.
Collector-based Task Groups are also executed by Module-specific Executers. The Host on which the Task Group Executer runs is specified in the Task Group settings. This is not the Host from which data will be retrieved during a Test-run. The target Hosts for data retrieval are specified in the Collector and defined in the queries it contains.
NT Performance Collector Task Groups are executed by the NT Performance Task Group Executer (TExecuter_ntp.exe). These Executers may run for all or part of a Test-run.
SNMP Collector Task Groups are executed by the SNMP Task Group Executer (TExecuter_smp.exe). These Executers may also run for all or part of a Test-run.
Script-based Task Group Executers close down when all Task Group execution on a host is complete. When all Script-based Execution is complete the Collector-based Task Group Executers and the Test Manager close down.
See also:
A Distributed Architecture
OpenSTA allows the Task Groups that comprise a Test to be executed on remote Hosts. In order to do this, OpenSTA must be installed on each remote Host and the OpenSTA Name Server on each configured to specify the Repository Host for the Test. Each Name Server must then be restarted. The Name Server on the Repository Host must always be started first.
The Test Manager process created for a Test, always runs on the Repository Host, from which the Test must be initiated. Task Group Executer processes are created by the Test Manager on the Hosts on which the Task Groups are to be executed.
OpenSTA's distributed architecture is based on the Common Object Request Broker Architecture (CORBA) developed by the Object Management Group (OMG), and uses the omniORB Object Request Broker (ORB) and Naming Service from AT&T Laboratories Cambridge.
See also:
The Web Relay Daemon
OpenSTA's distributed software architecture enables Test execution on remote Web-based Hosts. This is achieved using a Web Relay Daemon facility which allows the CORBA-based communications within the OpenSTA architecture to be transmitted between machines that are located over the Web.
The Web Relay Daemon facilitates configuration of the components that comprise the Web Relay environment. These consist of the Web Relay Daemon, a Web server and the OpenSTA architecture. Normal Test control communications use XML over HTTP. OpenSTA Web-based replay allows two modes of file transfer: HTTP or FTP. The system also allows SSL-based data transfer.
Use the Web Relay Daemon to map all the machines that need to connect to one another in an OpenSTA architecture which includes Web-based machines. These facilities offer the full range of OpenSTA communications between single or groups of Web-based machines running OpenSTA.
After configuring the Web Relay Daemon remote Hosts can be selected to run a Task Group as normal. For more information see Select the Host used to Run a Task Group.
Web Relay Daemon Architecture
Note: OpenSTA Console refers to a Host computer that has an installation of OpenSTA. This includes the OpenSTA Architecture and Commander, and may also include the Repository, where all Test related files and results are stored.
See also:
Configuring the Web Relay Daemon
Select the Host Used to Run a Task Group
Configuring the Web Relay Daemon
The configuration of the Web Relay Daemon involves:
Configuring the Web Server
- Activate the OpenSTA Web Relay facility:
Click Start > Programs > OpenSTA > OpenSTA Web Relay. The Web Relay Daemon icon appears in the task bar.
Note: It is assumed that you already have a Web server installed that supports ISAPI.- Right-click on and select Edit Server Settings from the pop-up menu to open the Server Settings window.
Note: If the Web Relay Daemon is inactive the icon is visible.- Enter the port number of the local Web server in the Port field.
- Check the Use SSL option if SSL security is required.
- Type the path and root directory of the Web server in the Root Directory field.
A DLL is automatically entered in the ISAPI Extension field and a cache file in the File Cache field.- If you want to use FTP file transfer for data transmission, check the Enable FTP File Transfer option and enter your settings in the complete the optional Local FTP Server Settings fields.
- Click on Save to apply your settings.
See also:
Select the Host Used to Run a Task Group
Configuring the Relay Map
- Activate the OpenSTA Web Relay facility:
Click Start > Programs > OpenSTA > OpenSTA Web Relay. The Web Relay Daemon icon appears in the task bar.
Note: It is assumed that you already have a Web server installed that supports ISAPI.- Right-click on and select Edit Relay Map from the pop-up menu to open the Edit Relay Map Settings window.
Note: If the Web Relay Daemon is inactive the icon is visible.- Click on in the toolbar to add the Relay Map settings of the remote Host you want to connect to.
- In the Edit Relay Map Settings window enter the name of the remote host in the Alias field.
- In the IP Address field, enter the IP address of the remote host.
- Type the ISAPI extension in the Extension Path field.
Note: This entry is identical to the one in the ISAPI Extension field in the Web server configuration settings.- Enter the port number of the Web server in the Port field.
- In the User Name field, enter the user name.
- Type the password in the Password field.
- Check the Use SSL option if SSL security is required.
- Click OK to confirm the Relay Map settings.
Note: Repeat this process on the remote Host to complete the mapping of the two machines.See also:
Select the Host Used to Run a Task Group
Setting the Trace Level
- Activate the OpenSTA Web Relay facility:
Click Start > Programs > OpenSTA > OpenSTA Web Relay. The Web Relay Daemon icon appears in the task bar.
Note: It is assumed that you already have a Web server installed that supports ISAPI.- Right-click on and select Set Trace Level from the pop-up menu to open the Set Trace Level dialog box.
Note: If the Web Relay Daemon is inactive the icon is visible.- Click to the right of the Trace Level field and select a trace level setting from the drop down list.
Tip: The trace level you select effects the amount of information you receive about the Test executer processes if problems are encountered during a Test-run. The default setting is `None'.- Click on OK to confirm the setting.
See also:
Select the Host Used to Run a Task Group
The OpenSTA Repository
All Test Definition files and the result files produced by Test-runs are stored in a flat-file structure on disk; this serves as the OpenSTA Repository. The default Repository folder, if OpenSTA is installed in the default location, is:
C:\Program Files\OpenSTA\RepositoryAn empty OpenSTA Repository is created by Commander when it is invoked, if the local Host is the Repository Host and the Repository does not exist. An empty Repository contains the following files:
OpenSTA\Repository - OpenSTA Repository OpenSTA\Repository\Captures\ - HTTP Module .ALL files OpenSTA\Repository\Data\ - Data files, e.g. for file variables OpenSTA\Repository\ObjectCode\ - Script object files OpenSTA\Repository\Profiles\ - Collectors OpenSTA\Repository\Scripts\ - Script source files OpenSTA\Repository\Tests\ - Test files, including test result folders OpenSTA\Repository\TraceSettings.txt - Trace settings OpenSTA\Repository\Scripts\Include\ - Script include files OpenSTA\Repository\Scripts\Include\global_variables.inc - SCL global include file OpenSTA\Repository\Scripts\Include\response_codes.inc - SCL HTTP response codes include fileAn alternative Repository folder can be specified within Commander using the Repository Path option on the Tools menu.
Below is an example listing of the contents of an OpenSTA Repository with sample Collectors, Scripts and Tests:
OpenSTA\Repository\.TMP OpenSTA\Repository\Captures OpenSTA\Repository\Data OpenSTA\Repository\ObjectCode OpenSTA\Repository\Profiles OpenSTA\Repository\Scripts OpenSTA\Repository\Tests OpenSTA\Repository\TraceSettings.txt OpenSTA\Repository\Captures\ADDCUST.ALL OpenSTA\Repository\Captures\CUSTORDER.ALL OpenSTA\Repository\Captures\LOGIN.ALL OpenSTA\Repository\ObjectCode\ADDCUST.scd OpenSTA\Repository\ObjectCode\ADDCUST.tof OpenSTA\Repository\ObjectCode\CUSTORDER.scd OpenSTA\Repository\ObjectCode\CUSTORDER.tof OpenSTA\Repository\ObjectCode\LOGIN.scd OpenSTA\Repository\ObjectCode\LOGIN.tof OpenSTA\Repository\Profiles\NTPDATA.NTP OpenSTA\Repository\Profiles\SNMPDATA.SMP OpenSTA\Repository\Scripts\ADDCUST.HTP OpenSTA\Repository\Scripts\CUSTORDER.HTP OpenSTA\Repository\Scripts\Include OpenSTA\Repository\Scripts\LOGIN.HTP OpenSTA\Repository\Scripts\Include\global_variables.inc OpenSTA\Repository\Scripts\Include\response_codes.inc OpenSTA\Repository\Tests\NEWCUST OpenSTA\Repository\Tests\NEWORDERS OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001 OpenSTA\Repository\Tests\NEWCUST\NEWCUST.TST OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001\ErrLog.txt OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001\ICLog_IPADR.txt OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001\NTPHeader.txt OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001\NTPStat.txt OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001\SNMPHeader.txt OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001\SNMPStat.txt OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001\Summary.txt OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001\TestConf.dat OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001\TestLog.txt OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001\TestManager_1620.log OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001\TEW_IPADR-1676.stat OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001\TEW_IPADR-1676.urls OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001\TExecuter_ntp_1700.log OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001\TExecuter_smp_1908.log OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001\Timer.txt OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001\VUsersLog.txt OpenSTA\Repository\Tests\NEWORDERS\27-06-2001 14-43-58.001 OpenSTA\Repository\Tests\NEWORDERS\NEWORDERS.TST OpenSTA\Repository\Tests\NEWORDERS\27-06-2001 14-43-58.001\ErrLog.txt OpenSTA\Repository\Tests\NEWORDERS\27-06-2001 14-43-58.001\ICLog_IPADR.txt OpenSTA\Repository\Tests\NEWORDERS\27-06-2001 14-43-58.001\NTPHeader.txt OpenSTA\Repository\Tests\NEWORDERS\27-06-2001 14-43-58.001\NTPStat.txt OpenSTA\Repository\Tests\NEWORDERS\27-06-2001 14-43-58.001\SNMPHeader.txt OpenSTA\Repository\Tests\NEWORDERS\27-06-2001 14-43-58.001\SNMPStat.txt OpenSTA\Repository\Tests\NEWORDERS\27-06-2001 14-43-58.001\Summary.txt OpenSTA\Repository\Tests\NEWORDERS\27-06-2001 14-43-58.001\TestConf.dat OpenSTA\Repository\Tests\NEWORDERS\27-06-2001 14-43-58.001\TestLog.txt OpenSTA\Repository\Tests\NEWORDERS\27-06-2001 14-43-58.001\TestManager_1692.log OpenSTA\Repository\Tests\NEWORDERS\27-06-2001 14-43-58.001\TEW_IPADR-1624.stat OpenSTA\Repository\Tests\NEWORDERS\27-06-2001 14-43-58.001\TEW_IPADR-1624.urls OpenSTA\Repository\Tests\NEWORDERS\27-06-2001 14-43-58.001\TExecuter_ntp_1752.log OpenSTA\Repository\Tests\NEWORDERS\27-06-2001 14-43-58.001\TExecuter_smp_1860.log OpenSTA\Repository\Tests\NEWORDERS\27-06-2001 14-43-58.001\Timer.txt OpenSTA\Repository\Tests\NEWORDERS\27-06-2001 14-43-58.001\VUsersLog.txtNote: IPADR is the IP address on which the Test Manager or Task Group Executer was executed (with dots replaced by underscores).
When a Test is executed, all Scripts that need to be compiled are compiled into the \Objectcode folder of the Repository. If compilation is successful all the files required to execute the Test, not the Task Groups within it, are copied to the \Engines folder of the Repository Host, e.g.:
C:\Program Files\OpenSTA\EnginesWhen a Test Manager initiates the execution of a Task Group, all the files required by the Task Group Executer are copied by the Executer to the \Engines folder of the Executer Host. These files are temporary and can be deleted when test execution is complete.
See also:
SNMP Collectors
The Simple Network Management Protocol (SNMP) Model and protocol allow state information to be retrieved from nodes in a computer network that are running SNMP agents or are served by proxy agents. A `Network Management Station' sends an SNMP request to the SNMP agent, or proxy agent, which returns the requested data.
The OpenSTA SNMP Module allows SNMP data to be retrieved from Host computers and other devices running SNMP agents using OpenSTA SNMP Collectors. These are created and maintained by the OpenSTA SNMP Configuration Plug-in invoked by Commander. This uses the data in the Management Information Block (MIB) files, supplied with OpenSTA or added by the user, to present the data for selection. A list of the IP addresses of Hosts within a user selected range of IP addresses may also be scanned to identify Hosts running SNMP agents or proxy agents. This list may be used to select an SNMP Collector Host and to view the object data from that Host.
An OpenSTA SNMP Collector defines the data to be retrieved from one or more Hosts. An OpenSTA SNMP Collector is held as a comma-separated data file with the .SMP file extension. SNMP data is retrieved and recorded at user specified intervals throughout all or part of each Test-run by the OpenSTA SNMP Task Group Executer (TExecuter_smp.exe). A different interval may be specified for each SNMP object.
OpenSTA's SNMP Task Group Executer uses Net-SNMP from the University of California at Davis.
SNMP data retrieved by the OpenSTA SNMP Task Group Executer can be monitored as it is retrieved using the SNMP monitoring Plug-in from within Commander. The data is stored in local files, one data file per Executer. These files are closed and copied to the Test-run folder of the OpenSTA Repository on the Repository Host when Test execution is complete, e.g.:
OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001\SNMPHeader.txt OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001\SNMPStat.txtThe SNMPHeader.txt file contains descriptions for the data retrieved and is used in Results display. There is one header file for each data file.
See also:
NT Performance Collectors
Windows NT and Windows 2000 include a graphical tool, the Performance Monitor, for viewing performance data on these systems. The OpenSTA NT Performance Module allows the performance data displayed by this tool and retrieved by the NT Performance facility to be recorded within OpenSTA.
OpenSTA allows NT Performance data to be retrieved from Hosts running Windows NT or Windows 2000 using OpenSTA NT Performance Collectors, created and maintained by the OpenSTA NT Performance Configuration Plug-in invoked by Commander. An OpenSTA NT Performance Collector defines the data to be retrieved from one or more Hosts. An NT Performance Collector is held as a comma-separated data file with the .NTP file extension.
NT Performance data is retrieved at user specified intervals throughout each Test-run by the OpenSTA NT Performance Task Group Executer (TExecuter_ntp.exe).
OpenSTA's NT Performance Task Group Executer uses the Windows API to retrieve the required data.
Windows Performance data retrieved by the OpenSTA NT Performance Task Group Executer can be monitored as it is retrieved using the NT Performance Plug-in within Commander. The data is stored in local files, one data file per Executer. These files are closed and copied to the Test-run folder of the OpenSTA Repository on the Repository Host when Test execution is complete, e.g.:
OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001\NTPHeader.txt OpenSTA\Repository\Tests\NEWCUST\27-06-2001 14-42-30.001\NTPStat.txtThe NTPHeader.txt file contains descriptions for the data retrieved and is used in Results display. There is one header file for each data file.
See also:
Architecture Module Installed Files
Architecture Module Installed Files
The following files are installed by the OpenSTA Architecture Module:
OpenSTA\BaseUI\ - Base User Interface OpenSTA\Common\ - Common DLL's and Active-X Controls OpenSTA\Copying - GNU GPL OpenSTA\Engines\ - Test Manager, Task Group Executers and associated files OpenSTA\Plugins\ - Commander Plug-ins OpenSTA\README.txt - OpenSTA `readme' OpenSTA\Server\ - OpenSTA server images and DLL's OpenSTA\BaseUI\OpenSTACommander.chm - Commander help OpenSTA\BaseUI\oscommander.exe - Commander OpenSTA\BaseUI\TestPlugin.exe - Test Configuration Plug-in OpenSTA\Common\cmax20.dll OpenSTA\Common\Msvcrt.dll OpenSTA\Common\omniDynamic303_rt.dll OpenSTA\Common\omniORB303_rt.dll OpenSTA\Common\omnithread2_rt.dll OpenSTA\Common\stlport_vc6.dll OpenSTA\Common\TEPrfInfo.bat OpenSTA\Common\TEPrfInfo.dll OpenSTA\Common\XAuditViewer.ocx OpenSTA\Common\XChartCtrl.ocx OpenSTA\Engines\Msglib.dll - Message DLL OpenSTA\Engines\scl.exe - SCL compiler OpenSTA\Engines\TestExecuter.odl - Generic Task Group Executer ODL OpenSTA\Engines\TestInit.exe - Test Initiator utility OpenSTA\Engines\TestManager.exe - Test Manager OpenSTA\Plugins\ConfigurationTabDLL.dll OpenSTA\Plugins\MonitoringTabDLL.dll OpenSTA\Plugins\ResultsTabDLL.dll OpenSTA\Server\CyrDmn.exe - OpenSTA Daemon OpenSTA\Server\CyrVDK002.dll - CORBA Repository services provider OpenSTA\Server\CyrVDK003.dll - CORBA Naming Service cleaner OpenSTA\Server\CyrVDK004.dll - CORBA Time service OpenSTA\Server\CyrVDK010.dll - CORBA Injector Control and Status OpenSTA\Server\CyrVDK011.dll - CORBA Global Variable Factory OpenSTA\Server\DaemonCFG.exe - Name Server Configuration utility OpenSTA\Server\GenericObjects.odl - Generic objects ODL OpenSTA\Server\Logs\ - omniORB log files OpenSTA\Server\NSC.log - Naming Service Cleaner log file OpenSTA\Server\OmniOrb\ - omniORB executable images OpenSTA\Server\ThreadDefinition.odl - Thread definition ODL OpenSTA\Server\Logs\Shortcut to README.txt.lnk OpenSTA\Server\OmniOrb\nameclt.exe - Naming Service Utility OpenSTA\Server\OmniOrb\omniNames.exe - Naming ServiceSee also:
Script-Based Module Installed Files
Script-Based Module Installed Files
The following files are installed by the OpenSTA HTTP Module. They are listed as an example of the files installed by a Script-based OpenSTA Module:
OpenSTA\Common\XHttpStats.ocx - HTTP Statistics OCX or Active X OpenSTA\Engines\TEHttp.odl - HTTP Task Group Executer ODL OpenSTA\Engines\TExecuter_htp.exe - HTTP Task Group Executer OpenSTA\Engines\TestExecuter_web.ini - HTTP Task Group Executer ini file OpenSTA\Engines\Web\ - HTTP Modeler-specific files OpenSTA\Engines\Web\Modeller\ - HTTP Modeler-specific files OpenSTA\Engines\Web\Modeller\CaptureBHO.dll OpenSTA\Engines\Web\Modeller\gateway.exe OpenSTA\Engines\Web\Modeller\GenericObjects.odl OpenSTA\Engines\Web\Modeller\gwconscmd.dll OpenSTA\Engines\Web\Modeller\GWConsole.exe OpenSTA\Engines\Web\Modeller\gwhttp.dll OpenSTA\Engines\Web\Modeller\headers.ini OpenSTA\Engines\Web\Modeller\HttpCaptureCmd.dll OpenSTA\Engines\Web\Modeller\Recoverer.exe OpenSTA\Engines\Web\Modeller\SCLReference.chm OpenSTA\Engines\Web\Modeller\stlport_vc6.dll OpenSTA\Engines\Web\Modeller\TEHttp.odl OpenSTA\Engines\Web\Modeller\TEHttpLib.dll OpenSTA\Engines\Web\Modeller\TModeller_Web.exe OpenSTA\Engines\Web\Modeller\Tof2Scl.dll OpenSTA\Plugins\HTTPMonDLL.dll - HTTP Monitoring Plug-in OpenSTA\Plugins\HTTPResultsDLL.dll - HTTP Results Analysis Plug-inSee also:
SNMP Module Installed Files
The following files are installed by the OpenSTA SNMP Module.
OpenSTA\BaseUI\SNMPPlugin.exe - SNMP Configuration Plug-in OpenSTA\Common\libsnmp.dll OpenSTA\Engines\Mibs\ - MIB files OpenSTA\Engines\TExecuter_smp.exe - SNMP Task Group Executer OpenSTA\Engines\Mibs\DISMAN-SCRIPT-MIB.txt OpenSTA\Engines\Mibs\EtherLike-MIB.txt OpenSTA\Engines\Mibs\Host-RESOURCES-MIB.txt OpenSTA\Engines\Mibs\Host-RESOURCES-TYPES.txt OpenSTA\Engines\Mibs\IANAifType-MIB.txt OpenSTA\Engines\Mibs\IF-MIB.txt OpenSTA\Engines\Mibs\IP-MIB.txt OpenSTA\Engines\Mibs\IPV6-ICMP-MIB.txt OpenSTA\Engines\Mibs\IPV6-MIB.txt OpenSTA\Engines\Mibs\IPV6-TC.txt OpenSTA\Engines\Mibs\IPV6-TCP-MIB.txt OpenSTA\Engines\Mibs\IPV6-UDP-MIB.txt OpenSTA\Engines\Mibs\Makefile.in OpenSTA\Engines\Mibs\RFC-1215.txt OpenSTA\Engines\Mibs\RFC1155-SMI.txt OpenSTA\Engines\Mibs\RFC1213-MIB.txt OpenSTA\Engines\Mibs\RMON-MIB.txt OpenSTA\Engines\Mibs\SNMP-COMMUNITY-MIB.txt OpenSTA\Engines\Mibs\SNMP-FRAMEWORK-MIB.txt OpenSTA\Engines\Mibs\SNMP-MPD-MIB.txt OpenSTA\Engines\Mibs\SNMP-NOTIFICATION-MIB.txt OpenSTA\Engines\Mibs\SNMP-PROXY-MIB.txt OpenSTA\Engines\Mibs\SNMP-TARGET-MIB.txt OpenSTA\Engines\Mibs\SNMP-USER-BASED-SM-MIB.txt OpenSTA\Engines\Mibs\SNMP-VIEW-BASED-ACM-MIB.txt OpenSTA\Engines\Mibs\SNMPv2-CONF.txt OpenSTA\Engines\Mibs\SNMPv2-MIB.txt OpenSTA\Engines\Mibs\SNMPv2-SMI.txt OpenSTA\Engines\Mibs\SNMPv2-TC.txt OpenSTA\Engines\Mibs\SNMPv2-TM.txt OpenSTA\Engines\Mibs\TCP-MIB.txt OpenSTA\Engines\Mibs\UCD-DEMO-MIB.inc OpenSTA\Engines\Mibs\UCD-DEMO-MIB.txt OpenSTA\Engines\Mibs\UCD-DISKIO-MIB.inc OpenSTA\Engines\Mibs\UCD-DISKIO-MIB.txt OpenSTA\Engines\Mibs\UCD-DLMOD-MIB.inc OpenSTA\Engines\Mibs\UCD-DLMOD-MIB.txt OpenSTA\Engines\Mibs\UCD-IPFILTER-MIB.inc OpenSTA\Engines\Mibs\UCD-IPFILTER-MIB.txt OpenSTA\Engines\Mibs\UCD-IPFWACC-MIB.inc OpenSTA\Engines\Mibs\UCD-IPFWACC-MIB.txt OpenSTA\Engines\Mibs\UCD-SNMP-MIB-OLD.txt OpenSTA\Engines\Mibs\UCD-SNMP-MIB.inc OpenSTA\Engines\Mibs\UCD-SNMP-MIB.txt OpenSTA\Engines\Mibs\UDP-MIB.txt OpenSTA\Plugins\SNMPMonDLL.dll - SNMP Monitoring Plug-in OpenSTA\Plugins\SNMPResultsDLL.dll - SNMP Results Analysis Plug-inSee also:
NT Performance Module Installed Files
NT Performance Module Installed Files
The following files are installed by the OpenSTA NT Performance Module.
OpenSTA\BaseUI\NTPerfPlugin.exe - NT Performance Configuration Plug-in OpenSTA\Engines\TExecuter_ntp.exe - NT Performance Task Group Executer OpenSTA\Plugins\NTPerfMonDLL.dll - NT Performance Monitoring Plug-in OpenSTA\Plugins\NTPerfResultsDLL.dll - NT Performance Results Analysis Plug-inSee also:
Error Reporting and Tracing
OpenSTA creates and maintains a number of Log and Trace files for recording Test-run data. These are described below.
- The Audit, Report and History Logs
- The Error Log
- Test Manager and Task Group Executer Trace Logs
- Other Trace Logs
- Tracing Script Activity
See also:
The Audit, Report and History Logs
OpenSTA maintains an Audit Log of its activity and related events for each Test-run. This file contains informational, warning and error messages from the Test Manager, Task Group Executers and, optionally, messages from Scripts written using the SCL LOG command.
All messages in the Audit Log are time-stamped and indicate the name of the Script being processed, the associated User ID and the corresponding script line number, as applicable. All Time-stamps in the Audit Log and elsewhere are based on the time on the Repository Host. This makes it easier to analyze the results of Tests executed on Hosts with different system clock settings or in different time-zones.
The Audit Log can be viewed from the Results tab in Commander. The Audit Log is stored in the Test-run results folder in the OpenSTA Repository. For example, the Audit Log for the Test MYEST initiated on 27-Jun-2001 at 14:27:55 would be held in the following file (if OpenSTA was installed in the default location):
C:\Program Files\OpenSTA\Repository\Tests\MYTEST\27-06-2001 14-27-55.001\TestLog.txtIn addition to the Audit Log, OpenSTA may also create two further Test-run logs that may be written to from a Script, a Report Log and a History Log.
The purpose of the Report Log (TestRep.txt) is to record transient information relating to the execution of a Test. Task Group Executers may write messages to this Log, for example to record test-case failures and passes. Messages may also be written to the Log from a Script using the SCL REPORT command. The Report Log can be viewed from the Results tab in Commander.
The purpose of the History Log (TestHis.txt) is to record a history of the executions of a Test. Messages are written to the Log from a Script using the SCL HISTORY command. No OpenSTA process, Test Manager or Task Group Executer, writes messages to this Log. The History Logs for a Test can be viewed from the Results tab in Commander. A separate History Log is maintained for each Test-run. However, all the History Logs for a Test are concatenated to form a single Log when viewed within Commander.
Report and History Logs are stored in the Test-run results folders. Messages within them are time-stamped and indicate the name of the Script being processed, the associated User ID and the script line number, as applicable.
See also:
Test Manager and Task Group Executer Trace Logs
The Error Log
Within OpenSTA there is an Error Log (ErrLog.txt). This file will contain all significant error messages from the Test Manager, Task Group Executers and OpenSTA Daemon. The Error Log can be viewed from the Monitoring tab in Commander during a Test-run and from the Results tab.
Error Logs are stored in the Test-run results folders. Messages within them are time-stamped.
See also:
The Audit, Report and History Logs
Test Manager and Task Group Executer Trace Logs
Test Manager and Task Group Executer Trace Logs
For each Test-run, a Trace Log is created for the Test Manager and each Task Group Executer. These Logs contain informational, warning and error messages logged by the Test Manager and Task Group Executers respectively. Error messages will also be written to the Audit Log. They are created in the same folder as the corresponding executable images, i.e. \Engines, and are copied to the Test-run results folder on test completion. The Log file names have the following format:
Note: IPADR is the IP address of the Host on which the Task Group Executer was executed (with dots replaced by underscores), PID is the Process ID of the Test Manager or Task Group Executer and EID is the Executer Identifier (e.g. SMP for the SNMP Task Group Executer).
Each message that may be written to the Test Manager and Task Group Executer Trace Logs has an associated level. The level is a number between 1 and 1000 and indicates the importance, or severity, of the message:1 is the most important and 1000 the least important. These levels are used to control the level of messages that are recorded for a Test-run.
The highest level of messages to be recorded for the Test Manager and each class of Task Group Executer during a Test-run, may be specified on the Trace Settings dialog within Commander. This allows each trace level to be set to one of four values:
None (0): Errors only Low (10): Low level tracing Medium (20): Medium level tracing High (50): Detailed tracing
The numbers in parentheses indicate the corresponding trace level numbers.
The trace settings are saved in the file TraceSettings.txt in the Repository folder. When a Test is started, this file is copied to the \Engines folder on each Executer host. The Injector Control object within the OpenSTA Daemon on each of these hosts reads the Trace Settings file and uses it to set the trace level in the command line it creates to initiate each Task Group Executer.
The trace settings apply to all subsequent Test-runs, or until the Trace Settings are modified.
Initially, tracing is switched off, i.e. the trace levels for the Test Manager and all Executers are set to zero, in order to make execution as fast as possible. Tracing is typically enabled during Script, Test and Collector development, in order to help resolve problems when Tests are not running as expected.
See also:
The Audit, Report and History Logs
Other Trace Logs
In addition to the Logs described above, OpenSTA also maintains the following Logs, which may be of use in diagnosing problems:
- OpenSTA\Engines\ICLog_IPADR_PID.log
- Injector Control object Log, records the activity of the OpenSTA Daemon's Injector Control object. This is responsible for controlling the execution of Task Groups on a host. This file is reset for each Test-run and is written to the Test-run results folder in the OpenSTA Repository on Test-run completion. IPADR is the IP address of the associated OpenSTA Daemon host (with dots replaced by underscores). PID is the process ID of the OpenSTA Daemon process.
- OpenSTA\Engines\ISLog_IPADR_PID.log
- Injector Status object Log, records data related to the OpenSTA Daemon's Injector Status object. This is responsible for retrieving Task Group status data for the Executers running on a host, e.g. for monitoring Task Group activity during a Test-run. IPADR is the IP address of the associated OpenSTA Daemon host (with dots replaced by underscores). PID is the process ID of the OpenSTA Daemon process. A new log file is created each time the OpenSTA Daemon is started.
- OpenSTA\Server\cyrdmn_PID.log
- OpenSTA\Engines\Web\Modeller\gateway.log
- OpenSTA\Server\NSC.log
A higher level of tracing my be set for the OpenSTA Daemon by checking the "Turn on Tracing" check box on the Name Server Configuration utility's "Configuration" dialog.
See also:
The Audit, Report and History Logs
Test Manager and Task Group Executer Trace Logs
Tracing Script Activity
Script activity may also be traced at run-time using the SCL NOTE command within Scripts. This command allows a message to be associated with a virtual user. The messages associated with a virtual user, if any, may be viewed within Commander, through the Monitoring tab. By including NOTE commands within Scripts it is possible to trace the flow of execution for virtual users at run-time.
See also:
The Audit, Report and History Logs
Test Manager and Task Group Executer Trace Logs
Starting OpenSTA
When OpenSTA is installed, the Name Server Configuration utility (DaemonCFG.exe) is configured to startup automatically when a user logs in to Windows and to start the Naming Service (omninames.exe), if the local Host is the Repository Host, and the OpenSTA Daemon (cyrdmn.exe) on the local Host.
Before a Test can be executed within OpenSTA, the Naming Service, omninames, must be running on the Repository Host. The Naming Service is used to hold the names and types of OpenSTA CORBA objects. The Naming Service provides the means by which a program can locate the object reference for an object and thereby reference it.
By default, after a user has logged in to a Host on which OpenSTA has been installed, the following images will be running:
- DaemonCFG.exe - Name Server Configuration utility
- omninames.exe - Naming service (if local Host is Repository Host)
- cyrdmn.exe - OpenSTA Daemon
These images will continue to run until, either they are explicitly shutdown by the user, using the OpenSTA Name Server, or they terminate abnormally. If "Automatic Notification" is enabled, the Name Server Configuration utility displays a warning dialog box, if either the Naming Service or OpenSTA Daemon terminates abnormally.
Omninames and the OpenSTA Daemon can be started from the command lines follows:
After the Naming Service and OpenSTA Daemon on the Repository Host have been started, the OpenSTA Daemon on each remote host on which Task Groups are to be executed must be started.
See also:
The Name Server Configuration Utility
The Name Server Configuration Utility
The Name Server Configuration utility (DaemonCFG.exe), accessible from the Windows Programs menu, provides a "Configure..." option. This displays a configuration dialog containing four fields:
The Name Server Configuration utility also provides the following menu options:
- The Repository is located on the Repository Host in the folder identified by the "Repository path", which can be configured through Commander.
- The Naming Service (omninames.exe) will run on the Repository Host.
- The Test must be initiated from the Repository Host.
- An OpenSTA Daemon (cyrdmn.exe) must be running on each Host on which a Task Group is to be executed and must have been started after the Naming Service on the Repository Host.
See also:
The OpenSTA Daemon
The OpenSTA Daemon process starts a CORBA Factory object and loads a set of `provider' modules, used to provide CORBA `services' to OpenSTA components. These modules are held in the OpenSTA Server folder and have file names of the form "CyrVDKnnn.dll", where "nnn" is a numeric identifier.
Below is a list of the OpenSTA provider modules, together with the names that they register with the Naming Service:
CyrVDK002.dll - Repository interface IPADR_CyrStProvider_001.CyranoProvider IPADR_RegistryProvider_001.CyranoProvider IPADR_CyranoVDK002.CyranoLog
CyrVDK003.dll - Naming Service cleaner
CyrVDK004.dll - Time service IPADR.TimeService
CyrVDK010.dll - Injector Control and Status services IPADR.InjectorControl IPADR.InjectorStatus
CyrVDK011.dll - Global Variable Factory IPADR.CyrVariableFactory
Where IPADR is the Host's IP address (with dots replaced by underscores).
After the OpenSTA Daemons have been started, there will be nine CORBA objects registered with the Naming Service for each host registered with the Repository Host:
IPADR.InjectorStatus // Injector Status
IPADR.InjectorControl // Injector Control
IPADR.TimeService // Time service
IPADR.CyrVariableFactory // Variable factory
IPADR.CyranoFactory // CORBA object factory
IPADR_CyranoDaemon.CyranoLog // Daemon logger
IPADR_CyranoVDK002.CyranoLog // Repository logger
IPADR_CyrStProvider_001.CyranoProvider // Repository provider
IPADR_RegistryProvider_001.CyranoProvider // Registry provider
These objects should always be registered with the Naming Service, they should only disappear if the corresponding OpenSTA Daemon process shuts down or terminates abnormally.
See also:
Command Line Formats
There is a command line interface to most OpenSTA executable images. The formats of those that may be useful to OpenSTA users are listed below.
See also:
Test Initiator (TestInit.exe)
The Test Initiator utility on the Repository Host may be used to start, stop and kill Tests.
Format:
Description:
The -start switch initiates execution of a specified test (Testname).
The -stop and -kill switches will close the Test Manager currently registered with the OpenSTA naming service. If there is a fault, and more than one Test Manager is running, TestInit will prompt for the Test Manager to stop. A stop attempts to close down a Test-run gracefully, while a kill terminates the Test Manager and Task Group Executers immediately. OpenSTA will attempt to return Test results to the OpenSTA Repository for both a stop and a kill.
See also:
OpenSTA Daemon (CyrDmn.exe)
Before a Test can be executed, an OpenSTA Daemon (cyrdmn.exe) must be running on each Host on which a Task Group is to be executed and each must have been started after the naming Service on the Repository Host. The OpenSTA Daemon process on a host is normally started automatically when a user logs in to Windows, by execution of the Name Server Configuration utility (DaemonCFG.exe). It may also be started by selecting Start > Programs > OpenSTA > OpenSTA Name Server or by selecting Start Name Server within the Name Server Configuration utility.
Format:
cyrdmn --help Display utility help
--trace n Trace logging level (0 to 1000)
Description:
The --trace switch is not required.
See also:
Script Compiler (scl.exe)
The script compiler (SCL) is used to compile Scripts created using a Module-specific Plug-in. Scripts are held in the Scripts folder and have an application specific extension, e.g. .HTP for HTTP Scripts.
SCL generates object files which are executed by a Task Group Executer. A dependency file is also created for each Script that is successfully compiled, this is used to identify items required to compile and run the Script.
Note that the SCL command line used by Commander includes the -I switch to specify the include directory \Scripts\Include, within the Repository.
SCL has the following command line format:
Format:
- -h --help
- -i --confirm
- -I inc_path --include=inc_path
- -l [on|off] --list=[on|off]
- -o obj_file --object=obj_file
- -v --log
- -V v1+v2{+...} --variant=v1+v2{+...}
Example:
scl -o myscript.tof -I Include -v myscript.htpCompile the Script myscript.htp and output compilation messages to standard output, for a successful compilation these will identify the names of the files created. SCL will look for any include files in the local folder and, if not found there, in the Include subfolder. The following files will be created:
myscript.tof - Object file (for execution)
myscript.scd - Script dependency file
See also:
OpenSTA.org Mailing Lists Further enquiries Documentation feedback CYRANO.com |