Skip to main content

Monitoring Performance Using ^SystemPerformance

This page describes the ^SystemPerformance utility, (previously named ^pButtons), a tool for collecting detailed performance data about an InterSystems IRIS® data platform instance and the platform on which it is running. You can send the resulting report to the InterSystems Worldwide Response Center (WRC)Opens in a new tab to help diagnose system problems. ^SystemPerformance is similar to Diagnostic Reports (see Using the Diagnostic Report), but focuses on performance data.

Note:

This utility may be updated between releases. The latest version is available on the WRC distribution siteOpens in a new tab under Tools.

You can run the profiles in the Terminal or schedule runs in the Management Portal with Task Manager. In addition, you can add, modify, and delete profiles using the API that is included with the utility.

Important:

Before using ^SystemPerformance in any unattended way, use it interactively to be sure that you have the appropriate privileges at the operating-system level. In particular, some environments require a UAC login to get elevated privileges. In such a case, the utility will fail to capture data and will instead writes the error

Error: Access is denied. You're running with a restricted token, try running elevated.

If this occurs, you can open a Windows CMD as administrator, start an ObjectScript shell from there, and then use ^SystemPerformance.

If you share the generated report with InterSystems, note that it includes private application information. InterSystems keeps all data strictly confidential.

Basics

The ^SystemPerformance utility lets you select one or more profiles to run. (The profiles available vary depending on the product version and any customization that has been performed.) Based on the selected profile(s), it generates a set of log files, which are placed in the output directory. By default, the output directory is the install-dir\mgr directory of the InterSystems IRIS instance, but you can change the output directory.

By default, ^SystemPerformance provides the following profiles:

  • 12hours — 12-hour run sampling every 10 seconds

  • 24hours — 24-hour run sampling every 10 seconds

  • 30mins — 30-minute run sampling every 1 second

  • 4hours — 4-hour run sampling every 5 seconds

  • 8hours — 8-hour run sampling every 10 seconds

  • test — 5-minute TEST run sampling every 30 seconds

To run the ^SystemPerformance utility:

  1. Enter the following command, which is case-sensitive and must be run in the %SYS namespace, in the Terminal:

    %SYS>do ^SystemPerformance
    
    
  2. From the main menu that is displayed, enter the number of the profile you want to run, or press Enter to exit the utility:

    Current log directory: c:\intersystems\iris\mgr\
    Windows Perfmon data will be left in raw format.
    Available profiles:
         1 12hours - 12-hour run sampling every 10 seconds 
         2 24hours - 24-hour run sampling every 10 seconds 
         3 30mins  - 30-minute run sampling every 1 second 
         4 4hours  - 4-hour run sampling every 5 seconds 
         5 8hours  - 8-hour run sampling every 10 seconds 
         6 test    - 5-minute TEST run sampling every 30 seconds
     
    select profile number to run: 
    
    
  3. After you enter the profile you want to run, the utility displays information about the data it is collecting:

    select profile number to run: 1
    Collection of this sample data will be available in 1920 seconds.
    The runid for this data is 20111007_1041_30mins.
    

The generated log files are located in the output directory. The files are identified by the runid, which is uniquely named as follows: YYYYMMDD_HHMM_profile_name.log, where YYYYMMDD_HHMM is the year, month, day, hour, and minute the utility started to collect data; and profile_name is the name of the profile you selected.

After the utility finishes collecting data (that is, at the end of the period of time specified in the profile), you can generate a readable performance report; see Generating the ^SystemPerformance Performance Reports.

Stopping ^SystemPerformance

You can stop a running profile — stop the collection of data and optionally delete all .log files for the profile with the $$Stop^SystemPerformance(runid) command. For example, to abort the collection of data for a report identified by the runid 20111220_1327_12hours and delete all .log files written so far, enter the following command in the Terminal in the %SYS namespace:

do Stop^SystemPerformance("20111220_1327_12hours")

To stop the job without deleting log files and produce an HTML performance report from those log files, enter:

do Stop^SystemPerformance("20111220_1327_12hours",0)

For more information, see Functions in ^SystemPerformance.

Note:

You must have permission to stop jobs and delete files.

Functions in ^SystemPerformance

The ^SystemPerformance utility provides options for the start, collect, preview, and stop functions as described in the following list:

Note:

You can run multiple profiles concurrently.

$$run^SystemPerformance("profile")

Starts the specified profile. If successful, returns the runid; if unsuccessful, returns 0.

$$literun^SystemPerformance("profile")

Same as the preceding, except that it does not include operating-system data.

Note:

This option is intended for servers that are running multiple instances of InterSystems IRIS, where the operating-system data would be duplicated.

$$Collect^SystemPerformance("runid")

Produces a readable HTML performance report file for the specified runid. If successful, returns 1 and the report filename; if unsuccessful, returns 0 followed by a carat and the reason for the failure.

If no runid is supplied, $$Collect generates a report for each completed runid that does not yet have a report. In this mode, the return value is the number of reports generated followed by a carat and the word ‘collected’. For example 5^collected if 5 reports were generated, or 0^collected if none were. If run at a command prompt, $$Collect lists which profiles are still running, if any, and how much time remains for each.

Note:

It is not necessary to call $$Collect as part of standard operations, because ^SystemPerformance does so automatically. In unusual circumstances such as ^SystemPerformance being interrupted by an instance restart, if the automatic mechanism does not execute, $$Collect may be needed.

$$Preview^SystemPerformance("runid")

Produces a readable HTML interim (incomplete) performance report file for the specified runid. If successful, returns 1 followed by a carat and the file location. If unsuccessful, returns 0 followed by a carat and the reason for the failure.

$$Stop^SystemPerformance("runid",[0])

Stops (aborts) ^SystemPerformance from collecting data for a specified runid and by default deletes the associated .log files produced by the utility. To stop data collection without deleting the .log files and produce an HTML performance report from those log files, include the 0 parameter following the runid.

If unsuccessful, the function returns 0 followed by a carat and the reason for the failure; if successful, it returns: 1:2:3:4_1:2:3:4. The successful status is made up of two parts separated by an underscore: OS-specific and InterSystems IRIS-specific; within each part, colon-separated values specify:

  1. Number of jobs successfully stopped

  2. Number of jobs that failed to stop

  3. Number of files successfully deleted

  4. Number of files not deleted

$$waittime^SystemPerformance("runid")

Reports the time until the final HTML file for the specified runid will be complete. If the runid is finished, returns ready now, otherwise returns a string of the form XX hours YY minutes ZZ seconds.

do EnableEnsqcnt^SystemPerformance()

Collects additional data for interoperability productions.

In the following example the runid, which is created by ^SystemPerformance, is obtained programmatically, then tested to determine if a full or interim report has been generated. A full report has not been created because the profile has not finished ("0^not ready" is returned), but an interim report has been created (“1” is returned). Based on this information, you know that an HTML file has been generated.

%SYS>set runid=$$run^SystemPerformance("30mins")
 
%SYS>set status=$$Collect^SystemPerformance(runid)
SystemPerformance run 20181004_123815_30mins is not yet ready for collection.
 
%SYS>write status
0^not ready
 
%SYS>set status=$$Preview^SystemPerformance(runid)
 
%SYS>write status
1^c:\intersystems\iris\mgr\USER_IRIS_20181004_123815_30mins_P1.html
%SYS>

Generating ^SystemPerformance Performance Reports

The ^SystemPerformance utility automatically generates a full (complete) readable HTML performance report from the log files produced by the ^SystemPerformance utility. You can also use the Preview^SystemPerformance entry point to produces an interim (incomplete) report using the data that is being collected by the profile you selected when you ran the ^SystemPerformance utility.

The generated report files are located in the output directory which is, by default, the install-dir\mgr directory of the InterSystems IRIS instance. The files are uniquely identified by names, which are in the following format: hostname_instance_runid.html, where hostname is the hostname of the system on which the instance of InterSystems IRIS is running; instance is the name of the instance for which performance data has been collected; and runid is the unique identifier generated when the ^SystemPerformance utility was run. If the report is an interim report, _Pn is appended to the file name, where P identifies it as a preliminary report and n is the number of the preliminary report.

Scheduling the ^SystemPerformance Utility with Task Manager

This section provides examples using the Task Manager in the Management Portal to schedule ^SystemPerformance to run. For general instructions for how to schedule a task, see Schedule Task Manager.

Note:

The examples describe only the fields that are required. You can edit other fields as desired.

Example 1: Weekly 24-Hour Run

In this example, a task is created to schedule the ^SystemPerformance utility to run a profile named 24hours (which collects performance data for 24 hours) every Thursday at 09:00:

  1. From the Task Manager page of the Management Portal (System Operation > Task Manager), choose the New Task option to start the Task Scheduler Wizard. Then enter the following information in the specified fields:

    • Task name — enter 24HourRun.

    • Description — enter Start 24-hour ^SystemPerformance Run.

    • Namespace to run task in — select %SYS from the drop-down list.

    • Task type — select RunLegacyTask from the drop-down list.

      In the ExecuteCode text box, enter the following code:

      do run^SystemPerformance("24hours")
      
    • Output file — leave blank; the task has no output (see Changing the Output Directory for information on customizing the output directory).

  2. Click Next. Then enter the following information in the specified fields:

    • How often ... — choose Weekly from the drop-down list.

      Select the Thursday check box.

    • Start Date — enter the start date in the text box.

      Click Run once at this time: and enter 09:00:00 in the text box.

  3. Click Finish.

Example 2: Daily 30–Minute Run

In this example, a task is created to schedule the ^SystemPerformance utility to run a profile named 30mins (which collects performance data for 30 minutes) every day at 12:00:

  1. From the Task Manager page of the Management Portal (System Operation > Task Manager), choose the New Task option to start the Task Scheduler Wizard. Then enter the following information in the specified fields:

    • Task name — enter 30MinRun.

    • Description — enter Start 30-minute ^SystemPerformance Run.

    • Namespace to run task in — select %SYS from the drop-down list.

    • Task type — select RunLegacyTask from the drop-down list.

      In the ExecuteCode text box, enter the following code:

      do run^SystemPerformance("30mins")
      
    • Output file — leave blank; the task has no output (see Changing the Output Directory for information on customizing the output directory).

  2. Click Next. Then enter the following information in the specified fields:

    • How often ... — choose Daily from the drop-down list.

    • Start Date — enter the start date in the text box.

      Click Run once at this time: and enter 12:00:00 in the text box.

  3. Click Finish.

Changing the Output Directory

The default output directory for both the log files and the resulting HTML report file is the install-dir\mgr of the InterSystems IRIS instance for which you are running the ^SystemPerformance utility. You can change the default directory using the commands described in the following list.

Note:

These commands do not affect currently running profiles, whether or not the HTML report files have been produced; that is, no files associated with currently running profiles are moved to the new output directory.

do setlogdir^SystemPerformance("directory")

Sets the pathname of output directory to directory; if the directory does not exist, it is created.

Note:

If you do not specify an absolute pathname (for example, C:\Reports), the directory is assumed to be relative to the install-dir\mgr directory.

set x = $$getlogdir^SystemPerformance()

Sets variable x equal to the output directory pathname.

do clrlogdir^SystemPerformance()

Resets the output directory pathname to the default directory (install-dir\mgr).

Getting Version Information

You can find the current version of the ^SystemPerformance utility using the following commands:

  • write $$version^SystemPerformance()

  • set ver=$$version^SystemPerformance()

Manipulating Profiles

You can use the APIs described in the following sections to manipulate the profile definitions.

Create New Profiles

You can create a new profile with the following API command:

set rc=$$addprofile^SystemPerformance("profilename","description",interval,count)

You must specify:

  • profilename — A name for the profile, which must be unique and cannot contain spaces or whitespace characters.

  • description — A description of the profile that is displayed in the ^SystemPerformance menu.

  • interval — The frequency with which to run each sample, in seconds (in the range of 1 second to 300 seconds). An interval of 1 second is only allowed if the profile duration is an hour or less.

  • count — The number of times to run the profile.

The function returns 1 if successful and 0 if unsuccessful. This is followed by a carat and then the reason for any errors.

For example, to create a profile named 2minrun that runs a sampling every 10 seconds until it runs 12 samplings (for a total of 120 seconds, or two minutes), enter the following:

set rc=$$addprofile^SystemPerformance("2minrun","A 2-minute run sampling every 10 seconds",10,12)

The next time you run the ^SystemPerformance utility, the list of profiles includes the following profile name and description:

2minrun     A 2-minute run sampling every 10 seconds

Generate Profile

Alternatively, you can quickly generate new profiles (with a meaningful name and description) with the following API command:

set rc=$$genprofile^SystemPerformance("duration"[,interval])

Where:

  • duration — How long the profile should run. The valid formats are "hh:mm", "hh:", or mm

  • interval (optional) — The frequency with which to run each sample, in seconds (in the range of 1 second to 300 seconds). An interval of 1 second is only allowed if the profile duration is an hour or less.

The function returns 1 if successful. If unsuccessful, it returns 0 followed by a carat and the reason for any errors.

Note:

The maximum duration is 24 hours (86400 seconds); if you specify a longer duration, ^SystemPerformance reduces it to 24 hours. The duration must be double-quoted only if it contains a colon (:); the colon denotes hours.

The minimum interval, if specified, is 2 seconds, unless the duration (that is, interval * count) is less than one hour, in which case the minimum interval is 1 second. If you specify an invalid interval, ^SystemPerformance increases it to the required minimum. If the interval is not specified, it defaults to 10 seconds.

For example, to generate a profile named 12hours (with a generated profile name and description) that runs samples every 5 minutes (300 seconds) over 12 hours, enter the following:

set rc=$$genprofile^SystemPerformance("12:",300)

In addition, to generate a profile named 90mins that runs samples every 10 seconds for 90 minutes, enter the following:

set rc=$$genprofile^SystemPerformance(90)

The next time you run the ^SystemPerformance utility, the list of profiles includes the following profile names and descriptions:

12hours     12 hour run sampling every 300 seconds
90mins      A 90 minute run sampling every 10 seconds

Edit Profiles

You can edit an existing profile (except for the predefined “test” profile) with the following API command:

set rc=$$editprofile^SystemPerformance("profilename","description",[interval],[count])

Where:

  • profilename — The name of the existing profile you want to edit.

  • description — A description of the profile that is displayed in the ^SystemPerformance menu.

  • interval (optional) — The frequency with which to run each sample, in seconds (in the range of 1 second to 300 seconds). An interval of 1 second is only allowed if the profile duration is an hour or less.

  • count (optional) — The number of times to run the profile.

The function returns 1 if successful and 0 if unsuccessful. This is followed by a carat and then the reason for any errors.

Note:

The arguments are positional; if, for example, to edit the count argument (and keep the value specified in the interval argument), you must include the comma separator, as follows: set rc=$$editprofile^SystemPerformance("2minrun","A 5-minute run sampling every 30 seconds",,50).

If the duration exceeds 24 hours (86400 seconds), it is automatically reduced to 24 hours.

For example, to modify the 2minrun profile to run a sampling every 30 seconds until it runs 10 samplings (for a total of 300 seconds, or five minutes), enter the following:

set rc=$$editprofile^SystemPerformance("2minrun","A 5-minute run sampling every 30 seconds",30,10)

The next time you run the ^SystemPerformance utility, the list of profiles includes the following profile name and description:

2minrun     A 5-minute run sampling every 30 seconds

Copy Profiles

You can copy an existing profile to a file with a different name with the following API command:

set rc=$$copyprofile^SystemPerformance("sourceprofilename","targetprofilename")

You must specify:

  • sourceprofilename — The name of an existing profile

  • targetprofilename — The name of the profile you want to create. This must be unique and cannot contain spaces or whitespace characters. This must be double-quoted.

The function returns 1 if successful. If unsuccessful, it returns 0 followed by a carat and the reason for any errors.

For example, to make a copy of the 2minrun profile, enter the following:

set rc=$$copyprofile^SystemPerformance("2minrun","5minrun")

The next time you run the ^SystemPerformance utility, the list of profiles includes the following profile names and descriptions:

2minrun     A 2-minute run sampling every 30 seconds
5minrun     A 2-minute run sampling every 30 seconds

You can now edit the new profile as described in Edit Profiles.

Delete Profiles

You can delete existing profiles (except for the predefined “test” profile) with the following API command:

set rc=$$delprofile^SystemPerformance("profilename")

You must specify profilename, the name of the profile you want to delete. This must be double-quoted.

The function returns 1 if successful. If unsuccessful, it returns 0 followed by a carat and the reason for any errors.

For example, to delete the 2minrun profile, enter the following:

set rc=$$delprofile^SystemPerformance("2minrun")

The next time you run the ^SystemPerformance utility, the list of profiles does not include 2minrun profile.

Performance Report Details

The ^SystemPerformance utility generates platform-specific reports. The report is divided into sections, as illustrated in the following listing:

Configuration

IRISTEST3 on machine testsystem

Customer: InterSystems Development
License : 123456

InterSystems IRIS Version String: InterSystems IRIS for Windows (x86-32) 2021 (Build 508) Fri Jan 26 2018 17:51:22 EDT
--------------------------------------------------------------
Profile

Profile run "test" started at 10:07 on Jun 01 2016.
Run over 10 intervals of 30 seconds.
--------------------------------------------------------------
license

Product=Enterprise
License Type=Concurrent User
Server=Multi
Platform=Heterogeneous
Licensed Users=1000
Licensed CPUs=16
.
.
.
--------------------------------------------------------------
End of InterSystems IRIS Performance Data Report

The tables in this section describe the sections of each platform-specific report. The sections are listed alphabetically in each table to help you find a specific section more easily. Data that is collected only once is flagged with an asterisk (*). The rest of the data is collected throughout the profile run.

For descriptions of the platform-specific data, see the following tables:

Note:

In all of the following tables, data marked with * is collected once per run.

InterSystems IRIS Performance Data Report for Microsoft Windows Platforms
Section Description
%SS

Four samples taken over the course of the run using the ALL^%SS command.

Configuration *

InterSystems IRIS instance name and hostname from the server, the full InterSystems IRIS version string, the licensed customer name, and the license order number.

cpf file *

A copy of the currently active configuration file.

irisstat -c

Four samples taken at even intervals over the course of the run using the command .\bin\irisstat -s -p-1 -c-1 -e1 -m8 -n2 -N127. Following is a brief description of each argument:

  • -p-1: samples the process table to include process and global state information.

  • -c-1: samples the Counters section of shared memory to display journal, lock, disk, and resource usage statistics.

  • -e1: the SYSLOG error table.

  • -m8: the file table, which includes all IRIS.DAT files and their attributes.

  • -n2: the network structures table, including local-to-remote database mappings.

  • -N127: ECP statistics for both client and server connections.

For more information about the irisstat utility, see Monitoring InterSystems IRIS Using the irisstat Utility.

irisstat -D

Eight samples taken at even intervals over the course of the run using the command irisstat cache --f1 -D10,100. Following is a brief description of each argument:

  • -fl: basic flags.

  • -D10,100: sampling of block collisions every 100 milliseconds over a total sample period of 10 seconds.

For more information about the irisstat utility, see Monitoring InterSystems IRIS Using the irisstat Utility. For information about monitoring block collisions using the ^BLKCOL utility, see Monitoring Block Collisions Using ^BLKCOL.

license *

InterSystems IRIS license usage information using Decode^%LICENSE and counts^%LICENSE.

mgstat

InterSystems IRIS-specific data taken over the course of the run using the ^mgstat utility. See Monitoring Performance Using ^mgstat.

perfmon

Output from the Microsoft Windows perfmon utility.

The default presentation of Microsoft Windows perfmon data is raw format. The format can be switched to processed, which removes the repeated server name and splits the datetime column into separate columns, to improve readability.

The following functions allow the querying and updating of the flag that determines whether the perfmon data is manipulated or not:set rc=$$setperfmonpostproc^SystemPerformance(<onoroff>)

where onoroff can be 1 (on) or 0 (off), or the non-case-sensitive words "on" or "off".

A return code of 1 indicates successful update of the flag, 0 indicates a failed update, and -1 indicates a non-Windows platform.

To determine the current format (raw or processed):set status=$$getperfmonpostproc^SystemPerformance()

A return code of 1 indicates processed format, 0 indicates raw format.

In addition, the current status of the flag is reported prior to the profile menu display in the interactive run of ^SystemPerformance.

By default, perfmon monitors the counter definitions specified in the default pbctrs.txt file. To monitor previously defined perfmon counters, import the definition into ^SystemPerformance using: write $$importctrs^SystemPerformance(WindowsCtrName [,SystemPerformanceCtrName [,SystemPerformanceFileName]])

A return code of 0 indicates success and a negative number followed by a reason string indicates failure. Duplicate SystemPerformance counter names are not allowed. If necessary, ^SystemPerformance generates both the internal counter name and file name.

To change the default SystemPerformance counter definition to an exiting definition, use:write $$setctrdefault(SystemPerformanceCtrName)

Return code of 1 indicates success and 0 followed by a reason string indicates failure. If an invalid counter is specified, the builtin defaualt is set.

To reset the default SystemPerformance counter definition, use:do clrctrdefault^SystemPerformance()

To associate a specific SystemPerformance counter definition with an existing profile, use:write $$addctrtoprofile(ProfileName,SystemPerformanceCtrName)

Return code of 1 indicates success and 0 followed by a reason string indicates failure. If either the profile or the counter definition do not exist, the command is not run.

Profile *

Information about the ^SystemPerformance profile that created this log.

tasklist

Four outputs of the tasklist -V command, taken at even intervals over the course of the run. The tasklist -V command provides a list of all processes running on the system.

Windows info *

Output from the systeminfo command, including the Windows version (excluding hotfix information) and hardware information; for example, processor count, memory installed, and memory used.

InterSystems IRIS Performance Data Report for Apple macOS Platforms
Section Description
%SS

Four samples taken over the course of the run using the ALL^%SS command.

Configuration *

InterSystems IRIS instance name and hostname from the server, the full InterSystems IRIS version string, the licensed customer name, and the license order number.

cpf file *

A copy of the currently active configuration file.

irisstat -c

Four samples taken at even intervals over the course of the run using the command irisstat cache -p-1 -c-1 -e1 -m8 -n2 -N127. Following is a brief description of each argument:

  • -p-1: samples the process table to include process and global state information.

  • -c-1: samples the Counters section of shared memory to display journal, lock, disk, and resource usage statistics.

  • -e1: the SYSLOG error table.

  • -m8: the file table, which includes all IRIS.DAT files and their attributes.

  • -n2: the network structures table, including local-to-remote database mappings.

  • -N127: ECP statistics for both client and server connections.

For more information about the irisstat utility, see Monitoring InterSystems IRIS Using the irisstat Utility.

irisstat -D

Eight samples taken at even intervals over the course of the run using the command irisstat cache --f1 -D10,100. Following is a brief description of each argument:

  • -fl: basic flags.

  • -D10,100: sampling of block collisions every 100 milliseconds over a total sample period of 10 seconds.

For more information about the irisstat utility, see Monitoring InterSystems IRIS Using the irisstat Utility. For information about monitoring block collisions using the ^BLKCOL utility, see Monitoring Block Collisions Using ^BLKCOL.

ipcs *

Interprocess communication configuration information, including shared memory, semaphores, and message queues; output from ipcs -a command.

license *

InterSystems IRIS license usage information using Decode^%LICENSE and counts^%LICENSE.

macOS Info *

OS version and hardware information. Output from the sw_vers, uname -a, mount, and netstat commands.

mgstat

InterSystems IRIS-specific data taken over the course of the run using the ^mgstat utility. See Monitoring Performance Using ^mgstat.

Profile *

Information about the ^SystemPerformance profile that created this log.

ps: Four samples taken at even intervals over the course of the run using the command ps -eflv.
sar -d Disk (block) device throughput and latency statistics.
sar -g Page out rates.
sar -n DEV Network device throughput.
sar -n EDEV Network device error rates.
sar -p Page in and page fault rates.
sar -u CPU usage statistics.
sysctl -a * Kernel and system parameter settings.
vm_stat * memory page information.
InterSystems IRIS Performance Data Report for IBM AIX® Platforms
Section Description
%SS

Four samples taken over the course of the run using the ALL^%SS command.

AIX info *

Output from the oslevel. uname -a, prtconf, and lspv commands

Configuration *

InterSystems IRIS instance name and hostname from the server, the full InterSystems IRIS version string, the licensed customer name, and the license order number.

cpf file *

A copy of the currently active configuration file.

cpu type *

Information on processors installed and whether or not SMT is enabled; output from lsattr -El proc0.

irisstat -c

Four samples taken at even intervals over the course of the run using the command irisstat cache -p-1 -c-1 -e1 -m8 -n2 -N127. Following is a brief description of each argument:

  • -p-1: samples the process table to include process and global state information.

  • -c-1: samples the Counters section of shared memory to display journal, lock, disk, and resource usage statistics.

  • -e1: the SYSLOG error table.

  • -m8: the file table, which includes all IRIS.DAT files and their attributes.

  • -n2: the network structures table, including local-to-remote database mappings.

  • -N127: ECP statistics for both client and server connections.

For more information about the irisstat utility, see Monitoring InterSystems IRIS Using the irisstat Utility.

irisstat -D

Eight samples taken at even intervals over the course of the run using the command irisstat cache --f1 -D10,100. Following is a brief description of each argument:

  • -fl: basic flags.

  • -D10,100: sampling of block collisions every 100 milliseconds over a total sample period of 10 seconds.

For more information about the irisstat utility, see Monitoring InterSystems IRIS Using the irisstat Utility. For information about monitoring block collisions using the ^BLKCOL utility, see Monitoring Block Collisions Using ^BLKCOL.

df -k *

Information about mounted file systems, including mount points, logical volumes, and free space; output from df -k command.

filesystems *

Current /etc/filesystems file.

ioo -a * Current values of I/O tunable parameters; output from ioo -a command.

Included only if the user initiating the ^SystemPerformance profile run has root access.

iostat -DIT

Long listing of extended disk/device statistics with sample time for IBM AIX® 5.3 and newer; output from iostat -DIT command.

Information varies for releases before IBM AIX® 5.3.

ipcs *

Interprocess communication configuration information, including shared memory, semaphores, and message queues; output from ipcs -a command.

license *

InterSystems IRIS license usage information using Decode^%LICENSE and counts^%LICENSE.

mount *

Information on all file systems and their mount options.

mgstat

InterSystems IRIS-specific data taken over the course of the run using the ^mgstat utility. See Monitoring Performance Using ^mgstat.

Profile *

Information about the ^SystemPerformance profile that created this log.

ps: Four samples taken at even intervals over the course of the run using the command ps aux.
sar -d

Included only if the user initiating the^SystemPerformance profile run has root access and /usr/sbin/sar exists.

sar -r

Included only if the user initiating the^SystemPerformance profile run has root access and /usr/sbin/sar exists.

sar -u

CPU statistics that includes micropartitioning information if used.

Included only if the user initiating the^SystemPerformance profile run has root access and /usr/sbin/sar exists.

vmo –a

Current values of virtual memory tunable parameters; output from vmo -a command.

Included only if the user initiating the^SystemPerformance profile run has root access.

vmstat -s *

Absolute counts of virtual memory statistics, including total page ins and page outs.

vmstat -t

Virtual memory and CPU (paging, queuing, and CPU) statistics with timestamps.

vmstat -v *

Samples virtual memory statistics, including free pages, pbuf usage, and fsbuf usage.

InterSystems IRIS Performance Data Report for Linux Platforms
Section Description
%SS

Four samples taken over the course of the run using the ALL^%SS command.

Configuration *

InterSystems IRIS instance name and hostname from the server, the full InterSystems IRIS version string, the licensed customer name, and the license order number.

cpf file *

A copy of the currently active configuration file.

irisstat -c

Four samples taken at even intervals over the course of the run using the command irisstat cache -p-1 -c-1 -e1 -m8 -n2 -N127. Following is a brief description of each argument:

  • -p-1: samples the process table to include process and global state information.

  • -c-1: samples the Counters section of shared memory to display journal, lock, disk, and resource usage statistics.

  • -e1: the SYSLOG error table.

  • -m8: the file table, which includes all IRIS.DAT files and their attributes.

  • -n2: the network structures table, including local-to-remote database mappings.

  • -N127: ECP statistics for both client and server connections.

For more information about the irisstat utility, see Monitoring InterSystems IRIS Using the irisstat Utility.

irisstat -D

Eight samples taken at even intervals over the course of the run using the command irisstat cache --f1 -D10,100. Following is a brief description of each argument:

  • -fl: basic flags.

  • -D10,100: sampling of block collisions every 100 milliseconds over a total sample period of 10 seconds.

For more information about the irisstat utility, see Monitoring InterSystems IRIS Using the irisstat Utility. For information about monitoring block collisions using the ^BLKCOL utility, see Monitoring Block Collisions Using ^BLKCOL.

df -m *

Information about mounted file systems, including mount points, logical volumes, and free space; output from df -m command.

free -m

Memory usage statistics in MB (-m).

iostat

CPU and disk throughput.

license *

InterSystems IRIS license usage information using Decode^%LICENSE and counts^%LICENSE.

mgstat

InterSystems IRIS-specific data taken over the course of the run using the ^mgstat utility. See Monitoring Performance Using ^mgstat.

Profile *

Information about the ^SystemPerformance profile that created this log.

ps: Four samples taken at even intervals over the course of the run using the command ps -efly.
sar -d

Disk (block) device throughput and latency statistics.

sar -u

CPU usage statistics include iowait percentage.

vmstat -n

CPU, queuing, paging statistics. Only one header is printed (-n) .

CPU * Information gathered from lscpu and /proc/cpuinfo

Linux info *

General OS and hardware information; includes output from uname -a, lsb_release -a, id, and ulimit -a commands as well as information gathered from /etc/issue.net, /proc/partitions, and /dev/mapper.

ipcs *

Interprocess communication configuration information, including shared memory, semaphores, and message queues; output from ipcs -a command.

mount *

Information on all file systems and their mount options.

fdisk -l *

Partition tables for all devices mentioned in /proc/partitions.Included only if the user initiating the ^SystemPerformance profile run has root access.

ifconfig *

Status information of currently active network interfaces.

sysctl -a *

Kernel and system parameter settings.

See Also

FeedbackOpens in a new tab