Action menu is categorized further into following sub menu/menu items:
- Thread Dump: To take thread dump, analyse thread dump, and schedule thread dump.
- Heap Dump: A heap dump is a dump of the state of the Java heap memory. This is useful for analysing the use of memory i.e.an application is making at some point in time so handy in diagnosing some memory issues, and if done at intervals handy in diagnosing memory leaks. User can take heap dump from here.
- TCP Dump: This option is used to take the TCP dump.
- Process Dump: A dump file is a snapshot that shows the process that was executing and modules that were loaded for an app at a point in time.
- Mission Control: It is a property through which user can get thread JVM information for JRocket. This includes two features – Memory Analyzer and Flight Recorder.
- Run command: This is used to run command on server.
- Download File:To download a file from the backend.
- Import data from Access Log file: This imports data from CSV file and access log file.
A JVM Thread Dump is a snapshot taken at a given time which provides the user with a complete listing of all created Java Threads. Each individual Java thread found provides information, such as Thread name; often used by middleware vendors to identify the Thread Id along with its associated Thread Pool name and state (running, stuck etc.)
How to take Thread dump
- To see how many threads are there as per configuration
- Analyze the behavior of the threads
- To identify is any thread stuck (is in waiting/blocked state) etc.
To open the Thread dump window, go to Actions > Thread Dump. The Thread dump window is displayed. User can filter the thread dump details based on the Tier, Server, and Instances.
Operations on Thread Dump
There are following operations user can perform on Thread dump:
- View Thread Dump
- Take Thread Dump
- Analyze Thread Dump
- Schedule Thread Dump
View Thread Dump
This window displays a section from where user can view the thread dump summary and full thread dump.
Thread Dump Summary
This window provides details, such as tier name, server name, and instance name for which the thread dump was taken along with the time when it was taken. It also provide the file name along with its path where the thread dump is stored. Apart from this, it also displays the user name and user notes (if any). User can navigate to the pages using the pagination provided and can also download the report (in word/excel/pdf format) using the download icons available.
Full Thread Dump
This window also displays a section at the bottom where user can view the full thread dump.
Take Thread Dump
User needs to follow the below mentioned steps for taking thread dump:
- Select tier name and server name from drop down menu.
- To capture all instances, click the All button, and for ND instances, click the ND Available instance information is displayed according to selected tier name and server name. This instance information displays – Process ID, instance name, process arguments along with log path.
- Select the process ID for which the thread dump is to be taken and click the Take Thread Dump button, the path where thread dump is taken is displayed in a pop-up box.
Analyze Thread Dump
User can analyse a thread dump based on the selection of the thread dump file from the Thread dump table. This section is categorized into various tabs where user can get further details related to threads, such as:
- Thread State,
- Thread Category,
- Common Method,
- Most Used Methods,
- Thread Group,
- Deadlock, and
The illustration of each is provided in the subsequent sections:
It displays a pie chart that contains percentage of runnable, waiting, and timed waiting threads. On the right, thread details (thread name, priority, state, ID) are displayed. On clicking a thread name, its corresponding stack trace is displayed.
It displays a pie chart that contains percentage of daemon and non-daemon threads. On the right, thread details (thread name, priority, state, ID) are displayed. On clicking a thread name, its corresponding stack trace is displayed.
This displays a bar graph representing a list of common methods along with its count. On clicking a bar, user can view the method details at the right.
Most Used Methods
This displays a bar graph representing a list of most used common methods along with its count. On clicking a bar, user can view the thread details within that method along with stack trace of the selected thread.
This displays a pie chart representing all the thread groups. On clicking a group, user can view associated threads of that group at the right. On clicking a thread name, user can view the stack trace of that thread.
This displays details of the methods that created deadlock along with the thread details.
This displays a bar graph representing the hotstacks along with its count. On the right, the detailed description of the hotstack is displayed.
A heap dump is a dump of the state of the Java heap memory. This is useful for analyzing the use of memory i.e. an application is making at some point in time so handy in diagnosing some memory issues, and if done at intervals, handy in diagnosing memory leaks. In dashboard, an option is provided for taking heap dump.
Steps to take Heap Dump
User needs to follow the below mentioned steps to take Heap dump:
- Go to Actions > Heap Dump option. A window is displayed, select the tier and server.
- To get all instances of the selected tier and server, click the All For ND instances, click the ND button. A list of instances is displayed with the related information, such as process ID, instance name, and process arguments.
3. User can take heap dump after selecting PID of particular selected Tier with respect to Server.
4. Click Take Heap Dump for taking heap dump.
5. Mention the heap dump file name with full path of storage.
- Click on OK button. After the successful heap dump at the specified path, a confirmation message is displayed.
- For ND instances, user can apply some settings on the heap dump window. These settings include download configuration – whether to keep a copy on server, whether to download the heap dump file in compressed format along with some other advanced settings.
8. Click Take Heap Dump button. System takes the heap dump and system displays a confirmation message.
9. To download the heap dump files, click Heap Dump List button. This displays a list of heap dump file, click the download icon corresponding to file to download it.
Analyze Heap Dump
Once the heap dump is taken, the user can analyze the heap dump. There are following options from where the user can analyze it:
- From Actions > Heap dump > Heap dump list > Heap analyzer icon
- From Tier > Server > Instance graph > Widget menu > Diagnostics > Heap dump > Heap dump list > Heap analyzer icon
- From Actions > Heap dump > Heap dump list > Analyze From local
- After clicking the Heap Dump Analyzer icon, it parses the heap dump file and displays the Java Heap dump analyzer window.
This window further contains the following tabs:
- System Overview
- Leak Suspects
- Top components
This tab contains the information about Machine details, system properties, Threads Overview, Top Consumers, and Class histograms.
This tab displays the overview of leaks, Problem suspects, and other details.
This tab contains information about the top consumers, Retained set, possible memory waste, soft memory stats, and weak memory stats.
Analyze Java Heap Dump from Local
A user can also analyze heap dump from local. For that, the user needs to click the Analyze Heap from Local button.
User needs to select the heap dump file from the local.
The uploaded heap dump file is parsed and displayed on the window.
Note: If user clicks the Close icon (), it does not cancel the file uploading process, it just hides the file uploading status
A dump file is a snapshot that shows the process that was executing and modules that were loaded for an app at a point in time. A dump with heap information also includes a snapshot of the app’s memory at that point. There are following ways to access process dump.
- From Actions > Process Dump
- From Tier > Server > Instance graph > widget menu > Diagnostics > Process Dump
Note: Currently, process dump is supported for NodeJS agent only.
- On clicking the Process Dump option, the following window is displayed.
2. Select the Tier and Server from the list and click the ND button.
3. Click the Capture Process Dump button to take the process dump.
4. Enter the path and file name, and click OK.
5. This captures the process dump and displays in the Process Dump Manager table.
6. To download the process dump, click the download button.
TCP Dump is a most powerful and widely used command-line packets sniffer or package analyzer tool which is used to capture or filter TCP/IP packets that received or transferred over a network on a specific interface. It is available under most of the Linux/Unix based operating systems. tcpdump also gives us an option to save captured packets in a file for future analysis. It saves the file in a pcap format, that can be viewed by tcpdump command or an open source GUI based tool called Wireshark (Network Protocol Analyzer) that reads tcpdump pcap format files.
TCP Dump Usage
- Capture Packets from Specific Interface
- Capture Only N Number of Packets
- Print Captured Packets in ASCII
- Display Captured Packets in HEX and ASCII
- Capture and Save Packets in a File
- Read Captured Packets File
- Capture IP address Packets
- Capture only TCP Packets
- Capture Packet from Specific Port
- Capture Packets from source IP
Taking TCP Dump
To take TCP dump, user needs to open the TCP Dump window. For this, follow the below mentioned steps:
- In the Web Dashboard, go to Actions > TCP Dump.
- The TCP Dump Settings window is displayed.
- Select the tier name from the drop-down list, the server list is populated according to the selected tier.
- Select the server from the drop-down list.
- On selecting the server, the interface list is populated automatically, select the interface from the drop-down list on which user needs to capture the TCP dump.
- Selecting a server name also fills the destination path automatically. Destination path is the path where the TCP dump is stored. User can also change the destination path according to the requirements.
- User needs to fill some fields, such as Maximum Duration, Size, Number of Packets, and port. If any field value reaches its specified limit, then tcpdump is stopped. Suppose, user inserts eth0 as interface, Max duration is 120 Secs, Size is 20 MB and number of packets is 1200. Suppose, within 70 secs if size of pcap file reaches to 20 MB, then tcpdump will be stopped.
- To specify some extra attributes, mention them in Additional Attributes
- To view the TCP command that is going to be executed based on the specifications provided, click the View TCP Command  icon.
- After providing all the required specifications, click the Take TCP Dump
- After processing the TCP Dump, a confirmation message is displayed for successful operation.
- Click OK to close the dialog box.
Viewing TCP Dump List
To view the TCP dump list, follow the below mentioned steps.
- Open the TCP Dump Settings page, via Actions > Diagnostics > TCP Dump. (mentioned earlier). The TCP Dump Settings window is displayed.
- Click the TCP Dump List The TCP Dump List is displayed.
Details of TCP Dump List page:
- Tier: This denotes the tier name selected while taking the TCP dump.
- Server: This denotes the server name (corresponding to the tier) selected at the time of taking TCP Dump.
- TCP Dump Name: This denotes the file name in which TCP dump is stored. The file is stored in pcap To open/view the file, user needs to install wireshark in the system.
- File Size: This denotes the size of the TCP dump file in KB.
- Duration: This denotes the duration specified (in seconds) in the TCP dump settings.
- Packets: This denotes the number of packets received.
- Max Duration: This denotes the actual duration of the TCP dump (in seconds).
- Size: This denotes the size specified for the TCP dump file in MB.
- Date: This denotes the date when the TCP dump is taken.
- Time: This denotes the time when the TCP dump is taken.
- TCP Command: This denotes the TCP command executed for taking the TCP dump.
Downloading TCP Dump File
To download the TCP dump file, follow the below mentioned steps:
- Select a record from the list.
- Click the Download button on the TCP Dump List
|User can also download the TCP dump file by click the respective TCP Dump Name.|
- Once the file gets downloaded, it can be opened using wireshark application. User needs to install the wireshark application in the system.
|To download the Wireshark application, click here.|
- Open the TCP dump file. It can be viewed as below:
Deleting TCP Dump File
To delete a TCP dump file, select the file first and then, click the Delete button. The system prompts a confirmation message for deletion. Click OK to delete the file.
How to do mission control
Flight Recorder and Mission Control together create a complete tool chain to continuously collect low level and detailed run time information enabling after-the-fact incident analysis.
Prerequisites: Jrockit should be installed on the Server.
Flight Recorder is a profiling and event collection framework which allows Java administrators and developers to gather detailed low level information about how the Java Virtual Machine (JVM) and the Java application are behaving.
Steps for Flight Recording
User needs to follow the below mentioned steps to work with various options in flight recording:
- Go to Actions > Java Flight Recording. This displays Java Flight Recording window.
2.Select a tier and corresponding server from the list and click the Show All Recordings button.
3. To capture all instances, click the All button, and for ND instances, click the ND button. Available instance information is displayed according to selected tier name and server name. This instance information displays – Process ID, instance name, process arguments along with log path.
4. To download a recording, click the Download Available Recording button. This displays the recordings window from where user can download the file to local by clicking the download icon.
How to execute commands from GUI
This feature is used to run command on server. Follow the below mentioned steps to run command on server:
- Click the Run Command menu item under Actions menu. The Run Command window is displayed.
- Select tier name, server name, group name, and command name.
- Other options also get enabled based on the selection, such as for process management group, the options – select all process, full format, long list, and show threads get enabled. User can select them according to requirements.
- User can also apply certain filters and can save the output on server.
- Post specifying the details, click the Run button to run the command. The output gets displayed in the Command Output To refresh the command, click the Refresh button.
- User can change the view type and delimeter according to the requirement.
Create Task basically adds the current command that user has just fired from GUI as a Task. To add a task, first run a command and click the Create Task button. The Create Task window is displayed.
Enter the task name and task description. Then, click the Create Task button, a confirmation message is popped up stating that the task is saved. Now, once created, that task can be re-run at backend after a specific interval of time or on any date through Scheduler Management. In the subsequent section, the scheduling of task is described.
The created task is listed in the scheduler management window, which can be accessed by clicking the Scheduler Management button.
To schedule a task to re-run, double-click over the specified task row, the scheduling options are displayed.
User can schedule it for hourly/weekly/monthly/custom basis. First, select the required tab and provide the details accordingly. Post this, user needs to specify the schedule expiry date and click the Save button. This is the date at which the schedule is expired and the task is not executed further. User can use the icons to enable/disable or delete a task.
This option is used to download a file from the backend and save it to the system. The user can upload a file from the system to the backend as well.
Download a File
Perform the following operations to use this feature.
- Go to Actions > Download File. This displays the Download File box.
2. Click the Browse button. This displays the File Manager window.
3. Select the file from the table (by scrolling or by using the Search option). The selected file is displayed on the right panel of the window. Click OK. This displays the Download File box again with the pre-filled path of the selected file. Click the Download button to download the file to the system.
Create a New Folder
To create a new folder on the backend, go to File Manager window, click New Folder button, provide the folder name, and click OK.
Upload a File
To upload a file from the system to backend, click the Upload button and choose the file to upload.
Import data from Access Log file
An access log is a file or a combination of files that contains a list of all user interactions or accesses made to the server. Access log files are stored on a server with structure specific to a server type. For example, access log for WebLogic may have different structure than access log for Tomcat or any other application server. During load testing, access log data can be imported and merged in test-run data. This data can then be analyzed for numerous metrics and visually represented to gather meaningful decision-making information for diagnostics purposes.
The access log data analysis can help performance engineering teams to gather insights into application behavior and health by merging access log data in the application test-run data.
This section provides steps to import the external Access log data within a test run and perform in-depth analysis using dashboard.
To view Access Log window
On the Web Dashboard left pane, click Actions > Import Data from Access Log File. The Access Log window is displayed.
Steps for Importing Access Log
User needs to follow the below mentioned steps for importing Access log.
Step – 1: Selecting a Tier
Select a Tier from the list of available tiers in Tier(s) drop-down list. To import a tier, which is not in the list, select ‘Others’, and mention the Tier name. Select only one tier at a time.
Step – 2: Browsing a File
Click the Browse File/Folder [ ] icon to browse the file/folder to import access log details. The File Manager dialog box is displayed showing the list of file(s)/folder(s) available on the server.
- Select the file(s)/folder(s) from the list. The default path is root (/), user can navigate to the desired file/folder, or search for a particular file/folder using the search box.
- To view access log from a file that is currently stored on the client (i.e. in the system), first it needs to be uploaded on the server. Click the icon and select the file to be uploaded. Once it is uploaded on server, it can be browsed using the Browse File/Folder [ ] icon. From client, user can select one file or more than one files. To upload a folder on server from client, zip that folder and upload it.
|To view the file details, click the file name. This displays the file details in three tabs – View Used Fields, View all Fields, and View as Text.To delete a file, click the Delete  icon.|
Step – 3: Enable Auto Hierarchy Mode [Optional]
Auto Hierarchy mode is to check whether the folder/file selection made is in specified format (Tier > Server > Instance). On selecting the Auto Hierarchy check box, user needs to select only one folder (Tier) that constitutes the matching format (Tier > Server > Instance) with its sub folders and all the sub-folders/files containing the matching criteria under that tier are selected automatically. Files at first level/second level of folder are not considered. Only files at third level, i.e. instance level are considered. If the criteria are not matching, system does not allow to select the folder/file, and displays an alert message. Selecting Auto Hierarchy mode is optional.
If the criteria are matched, the Tier selected in Auto Hierarchy mode overwrites the Tier selected from the drop-down list.
|The server name and instance is displayed in the table if Auto Hierarchy mode is enabled, else user needs to enter the server and instance. File name is displayed in both cases.|
Step – 4: Selecting Access Log Format
Product comes with a well-defined format with different application servers. Each application server has some predefined fields in a particular sequence along with the separator.
Select the Access Log Format from the drop-down list. User can also make his/her own Access log format of the application server. If user selects a different application server, it will change the field number and separator.
To configure the Access log format, click the Setting  icon.
|• In Access log format configuration, user can edit the field number and its associated unit.• User can also configure the separator – space/tab/others. For others, please specify the separator.|
• User can save the Access log format with a specified name. Select the Save this Access Log Format as check box, specify the format name, and click Apply. This will make a copy of the application server.
• To make the selected log format as the default log format, select the Make <Log Format> as Default Selected Log Format check box.
• Save the configuration by clicking OK.
Step – 5: Getting Access Log Details in Tabular Format
To get the access log details displayed, select the Show Access Log Details check box. This displays the first line of the file in the table. For the files which are unable to display the access log details due to wrong log configuration format, system displays an alert message.
Step – 6: Selecting Access Log Date Time
Select Access Log Date Time. There are following options:
- Import data for test run duration only
- Import data for a specific percentage of test duration (from 0% to 100%)
- Import data for a particular duration (in Hr:Min:Sec)
Step – 7: Selecting Time Zone / Adjustments
Select Time Zone / Adjustments section. There are following options:
- Synchronize all log files with test start time: This will synchronize all log files with the time when the test is started.
- Synchronize all log files with test start time (with offset): Here, user can specify the time duration to get the imported data ahead by or behind by.
- Same time zone: This will consider the same time zone where the test was started.
- Specific time zone: User can select specific time zone from the list.
Step – 8: Selecting Metrics Type
These metrics are the graphical representation of access log data. Based on the level of analysis required, user can select from two types of metrics – Standard metrics and Extended metrics. Standard metrics are created for basic analysis whereas extended metrics are created for detailed analysis of access log data.
These metrics contain basic details of the access log. System displays 2 metrics under Access Log Stats group in the graph panel.
|SR No.||Metrics Name||Description|
|1||Number of requests/second||Number of requests per second|
|2||Average service time (Sec)||Average Service Time in seconds|
These metrics contain extended details of the access log. System displays 22 metrics under Access Log Stats Extended group in the graph panel.
|1||Number of requests/second||Number of requests per second|
|2||Average service time (Sec)||Average Service Time in seconds|
|3||Receive throughput (Kb/Sec)||Receive Throughput in kilobits/sec|
|4||Number of requests 1xx/Sec||Number of requests per second with HTTP status code of 1xx series|
|5||Average service time 1xx (Sec)||Average Service Time in seconds with HTTP status code of 1xx series|
|6||Receive throughput 1xx (Kb/Sec)||Receive Throughput in kilobits/sec with HTTP status code of 1xx series|
|7||Number of requests 2xx/Sec||Number of requests per second with HTTP status code of 2xx series|
|8||Average service time 2xx (Sec)||Average Service Time in seconds with HTTP status code of 2xx series|
|9||Receive throughput 2xx (Kb/Sec)||Receive Throughput in kilobits/sec with HTTP status code of 2xx series|
|10||Number of requests 3xx/Sec||Number of requests per second with HTTP status code of 3xx series|
|11||Average service time 3xx (Sec)||Average Service Time in seconds with HTTP status code of 3xx series|
|12||Receive throughput 3xx (Kb/Sec)||Receive Throughput in kilobits/sec with HTTP status code of 3xx series|
|13||Number of requests 4xx/Sec||Number of requests per second with HTTP status code of 4xx series|
|14||Average service time 4xx (Sec)||Average Service Time in seconds with HTTP status code of 4xx series|
|15||Receive throughput 4xx (Kb/Sec)||Receive Throughput in kilobits/sec with HTTP status code of 4xx series|
|16||Number of requests 5xx/Sec||Number of requests per second with HTTP status code of 5xx series|
|17||Average service time 5xx (Sec)||Average Service Time in seconds with HTTP status code of 5xx series|
|18||Receive throughput 5xx (Kb/Sec)||Receive Throughput in kilobits/sec with HTTP status code of 5xx series|
|19||Number of requests others/Sec||Number of requests per second with other HTTP status code|
|20||Average service time others (Sec)||Average Service Time in seconds with other HTTP status code|
|21||Receive throughput others (Kb/Sec)||Receive Throughput in kilobits/sec with other HTTP status code|
|22||Requests greater than threshold response time (pct)||Percentage of requests which have response time greater than threshold|
Step – 9: Selecting Aggregation Level
Next, select the aggregation level. User can select any or all options. This is a mandatory field for import access log data.
- Aggregate for All URLs: Aggregation will be done for all URLs of all vectors.
- Aggregate for Specified URLs: Aggregation will be done for specific URLs for all pages. Enter the URL pattern and page name at which aggregation is to be performed.
- Aggregate at Tier level: Aggregation will be done at Tier level and a consolidated vector is created for all servers and instances.
Step – 10: Using Request Line [Optional]
Some application server supports request line in which the provided Method, URL, and the HTTP version comes in a common field. At the time of Pattern matching, there are two approaches.
Request Line: If Request line check box is selected, then search pattern is applicable for whole request line. If request line check box is not selected, then system extracts the URL pattern and match whole URL in log file.
Step – 11: Importing Access Logs
Select the server or instance (by clicking over it) in the table and click the Import button to import the access log details. The access log details are displayed on graph panel.
|To view the Access log metrics, click the Advance Options icon, and then Graph Tree View [ ] icon. Next, go to Application Metrics -> Access Log Stats (for standard metrics) or Access Log Stats Extended (for extended metrics) and navigate to Tier>Server>Instance. Click on a metrics to view its details.|
Access Log Details on Graph panel:
Using this feature, user can update user/session rate, data file, and running scenario. This is applicable for running test only.
Update User/Session Rate
This option is used to do run time changes configuration that includes updating user(s) and session rate. To update user/session rate, follow the below mentioned steps:
- Go to Actions > Update > Update User / Session Rate The Run Time Changes Configuration window is displayed. This section is categorized into two tabs – General Settings and Advanced Settings.
- Select a user group from the Fix Concurrent User Groups
- Change the user configuration (if required), such as user distribution, total virtual users, action (add, remove).
- Increase the session rate (if required) by specifying settings.
- Decrease the session rate (if required) by specifying settings.
- This section is used to delete the user options.
- Click the Apply button to apply the settings.
Update Data File
This option is used to update data file. User can append content to a data file or replace the content of a data file with another data file. It is supported in online mode only. To update data file, follow the below mentioned steps:
- Go to Actions > Update > Update Data File. The Update File tab is displayed.
- Select the script name whose content needs to be updated.
- Select the parameter name, such as Id/name.
- Select the mode, such as append/replace.
- Browse the data file(s) to which the script file needs to be updated. The file(s) are displayed.
- Click the Apply button.
Update Running Scenario
This option is used to update sections in the running scenario. It is applicable in online mode only.