Java Platform, Standard Edition Java Flight Recorder Command Reference. Release 10

Similar documents
Oracle NoSQL Database Integration with SQL Developer. Release 18.1

Oracle Database Appliance Accessibility Guide. Release

Microsoft Active Directory Plug-in User s Guide Release

Oracle Identity Manager Connector Guide for Dropbox. Release

Oracle Fusion Middleware Creating Domain Templates Using the Domain Template Builder. 12c ( )

Oracle Cloud Known Issues for Trial and Paid Subscriptions. Release 18.1

Oracle Linux. UEFI Secure Boot Signing Key Update Notice

Oracle Fusion Middleware Known Issues in Oracle Stream Analytics

Oracle SQL Developer Web Accessibility Guide. Release 18.1

Oracle Communications Configuration Management

Oracle Cloud Getting Started with Oracle WebCenter Portal Cloud Service

Oracle Hospitality OPERA Exchange Interface Cloud Authentication. October 2017

Oracle Cloud Using Oracle E-Business Suite Adapter Endpoint Configuration Wizard. Release 17.3

Microsoft Internet Information Services (IIS) Plug-in User s Guide Release

Database Change Reference Release 6.3

What s New for Cloud at Customer What's New for the Cloud Services on Oracle Cloud at Customer New Documentation for Oracle Cloud at Customer

Oracle Enterprise Manager

Oracle Cloud E

Oracle Fusion Middleware

Oracle Banking Channels Bank User Base

Oracle Enterprise Data Quality for Product Data

Oracle Cloud What's New for Oracle WebCenter Portal Cloud Service

Microsoft.NET Framework Plug-in User s Guide Release

Java Flight Recorder Runtime Guide Release 5.5

What s New for Oracle Cloud Stack Manager. Topics: July Oracle Cloud. What's New for Oracle Cloud Stack Release

Oracle Utilities Opower Custom URL Configuration

Release for Microsoft Windows

Export generates an empty file

Oracle Utilities Customer Care and Billing

Oracle Utilities Advanced Spatial and Operational Analytics

Managing Zone Configuration

Oracle Hospitality Suite8 Export to Outlook User Manual Release 8.9. July 2015

PeopleSoft Fluid Required Fields Standards

Oracle Hospitality Query and Analysis Languages and Translation Configuration Guide. March 2016

Oracle Utilities Work and Asset Management

Oracle SQL Developer Data Modeler Accessibility Guide. Release 18.1

Oracle Cloud Using the Google Calendar Adapter with Oracle Integration

Oracle Hospitality MICROS Commerce Platform Release Notes Release Part Number: E December 2015

Oracle SQL Developer Accessibility Guide. Release 18.1

Oracle Fusion Middleware Oracle Cloud Adapters Postinstallation Configuration Guide. 12c Release ( )

Oracle Enterprise Manager Ops Center. Introduction. What You Will Need

Oracle Enterprise Manager Ops Center. Introduction. What You Will Need. Installing and Updating Local Software Packages 12c Release

Oracle Communications Convergent Charging Controller. Sample Message Flows Reference Guide Release 6.0.1

Java Platform, Standard Edition MSI Enterprise JRE Installer Guide. Release 9 for Windows

Oracle. Field Service Cloud Using the Parts Catalog

Taleo Enterprise Deep Linking Configuration Guide Release 17

Oracle Utilities Work and Asset Management Integration to Primavera P6 Enterprise Project Portfolio Management

Oracle Cloud Using the Google Calendar Adapter. Release 17.3

Oracle Virtual Desktop Client for ipad. Release Notes for Release 1.2

Oracle Enterprise Manager Ops Center. Overview. What You Need. Create Oracle Solaris 10 Zones 12c Release 3 ( )

Report Management and Editor!

OKM Key Management Appliance

Oracle Utilities Smart Grid Gateway

Oracle Enterprise Manager Ops Center. Introduction. What You Will Need. Hardware and Software Configuration

PeopleSoft Fluid Icon Standards

Oracle Fusion Middleware Developing Custom Jars and Custom Stages in Oracle Stream Analytics

Oracle Real-Time Scheduler

Oracle Utilities Customer Care and Billing

Security Guide Release 4.0

Oracle Enterprise Manager Ops Center. Introduction. What You Will Need. Creating vservers 12c Release 1 ( )

Oracle Fusion Middleware Oracle Technology Adapters Release Notes. 12c ( )

Recipe Calculation Survey. Materials Control. Copyright by: MICROS-FIDELIO GmbH Europadamm 2-6 D Neuss Date: August 21 st 2007.

Oracle Human Capital Management Cloud Using the HCM Mobile Application. Release 13 (update 18C)

Insbridge Enterprise Rating Portal Configuration Guide

Oracle Enterprise Manager Ops Center. Introduction. Creating Oracle Solaris 11 Zones 12c Release 2 ( )

WebLogic Tuxedo Connector Quick Start Guide for Oracle WebLogic Server 11g Release 1 (10.3.6)

Oracle Agile Product Lifecycle Management for Process Reporting User Guide Release E

Oracle Banking Enterprise Collections Release Notes Release

Materials Control. Account Classes. Product Version Account Classes. Document Title: Joerg Trommeschlaeger

JavaFX. JavaFX System Requirements Release E

Copyright 1998, 2009, Oracle and/or its affiliates. All rights reserved.

Oracle Cloud E

Oracle Enterprise Manager Ops Center

Defining Constants and Variables for Oracle Java CAPS Environments

Oracle Fusion Middleware

Oracle Retail MICROS Stores2 Functional Document Sales - Receipt List Screen Release September 2015

Oracle Cloud Using the Eventbrite Adapter with Oracle Integration

Oracle Cloud. Oracle Cloud Adapters Postinstallation Configuration Guide E

Oracle Fusion Middleware

Oracle Cloud Using the Trello Adapter. Release 17.3

Oracle. Sales Cloud Using Sales for Outlook. Release 13 (update 18A)

1 Understanding the Cross Reference Facility

Oracle Cloud Using the Evernote Adapter. Release 17.3

Oracle Fusion Middleware Planning an Installation of Oracle Fusion Middleware. 12c ( )

Oracle Fusion Middleware Installing and Configuring Oracle SOA Suite and Oracle Business Process Management. 12c ( )

Oracle Hospitality Cruise Shipboard Property Management System Topaz Signature Device Installation Guide Release 8.00 E

Oracle Database Mobile Server

Oracle Cloud Using the UiPath Robotic Process Automation Adapter with Oracle Integration F

Oracle Hospitality Suite8 XML Export of Invoice Data for Hungarian Tax Authority Release and Higher E November 2016

Oracle Cloud Using the Microsoft Adapter. Release 17.3

Oracle mymicros.net, icare, myinventory and mylabor Self Host Release Notes Release v April 2015

Oracle Communications Policy Management Configuring NetBackup for Upgrade Method of Procedure

Oracle Hospitality BellaVita Hardware Requirements. June 2016

Oracle Enterprise Manager Ops Center

IBM WebSphere Portal Reference Guide Release 9.2.x

Oracle Enterprise Manager Ops Center. Introduction. Creating Oracle Solaris 11 Zones Guide 12c Release 1 ( )

Creating Domain Templates Using the Domain Template Builder 11g Release 1 (10.3.6)

Oracle Cloud. Using the Google Calendar Adapter Release 16.3 E

Oracle Cloud Using the File Adapter. Release 17.4

Oracle Utilities Mobile Workforce Management

Transcription:

Java Platform, Standard Edition Java Flight Recorder Command Reference Release 10 E92740-01 March 2018

Java Platform, Standard Edition Java Flight Recorder Command Reference, Release 10 E92740-01 Copyright 2001, 2018, Oracle and/or its affiliates. All rights reserved. This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited. The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing. If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, then the following notice is applicable: U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agencyspecific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government. This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications. Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners. Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group. This software or hardware and documentation may provide access to or information about content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services unless otherwise set forth in an applicable agreement between you and Oracle. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services, except as set forth in an applicable agreement between you and Oracle.

Contents Preface Audience Documentation Accessibility Conventions iv iv iv 1 Command-Line Options 2 Diagnostic Command Reference JFR.configure 2-1 JFR.start 2-2 JFR.check 2-5 JFR.stop 2-5 JFR.dump 2-6 VM.unlock_commercial_features 2-7 VM.check_commercial_features 2-7 iii

Preface Preface This document describes command-line parameters and shell commands for Java Flight Recorder. Note: Java Flight Recorder requires a commercial license for use in production. To learn more about commercial features and how to enable them please visit http://www.oracle.com/technetwork/java/javaseproducts/. Audience This document is intended for Java developers and support engineers who use Java Flight Recorder to monitor applications and need to understand the commands and options that are available. Documentation Accessibility Conventions For information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program website at http://www.oracle.com/pls/topic/lookup? ctx=acc&id=docacc. Access to Oracle Support Oracle customers that have purchased support have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/pls/topic/ lookup?ctx=acc&id=info or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs if you are hearing impaired. The following text conventions are used in this document: Convention boldface italic monospace Meaning Boldface type indicates graphical user interface elements associated with an action, or terms defined in text or the glossary. Italic type indicates book titles, emphasis, or placeholder variables for which you supply particular values. Monospace type indicates commands within a paragraph, URLs, code in examples, text that appears on the screen, or text that you enter. iv

1 Command-Line Options When you use the java command to start a Java application, you can specify options to enable Java Flight Recorder, configure its settings, and start a recording. The following command-line options for the java command are specific to Java Flight Recorder: -XX:+ -FlightRecorder: Enables Java Flight Recorder (not required for JDK 8u40 and later) -XX:FlightRecorderOptions: Sets the parameters for Java Flight Recorder -XX:StartFlightRecording: Starts a recording with the provided parameters, or with the default values The command-line options for Java Flight Recorder are described in the java chapter of the Java Platform, Standard Edition Tools Reference. These options are available only in the commercially licensed JDK from Oracle. To use these options, you must unlock the commercial features as described in the next section. Unlocking Commercial Features Use one of the following methods to access for Java Flight Recorder and related options: Specify the -XX:+UnlockCommercialFeatures option when you start your application with the java command. Use the VM.unlock_commercial_features parameter for the jcmd utility to unlock commercial features after the application is running. Example 1-1 Unlock Commercial Features When Starting an Application The following java command unlocks commercial features for an application named MyApp and starts a recording: java -XX:+UnlockCommercialFeatures -XX:StartFlightRecording MyApp Example 1-2 Unlock Commercial Features for a Running Application The following jcmd command unlocks commercial features for a Java process with the process ID 1968: jcmd 1968 VM.unlock_commercial_features 1-1

2 Diagnostic Command Reference Diagnostic commands provided by the jcmd utility are available to control Java Flight Recorder. The jcmd utility is used to send diagnostic command requests to a running Java process. Information about the diagnostic commands is available by using the help parameter. The process ID for a running Java process is required. To see a list of the available diagnostic commands, do not include a command name. For example, the following command lists the diagnostic commands for the process with the identifier 10568: jcmd 10568 help To see information about a specific diagnostic command, include the command name after the help parameter. For example, the following command requests information about the JFR.start diagnostic command for the process with the identifier 5361: jcmd 5361 help JFR.start The following diagnostic commands are available for Java Flight Recorder: JFR.configure JFR.start JFR.check JFR.stop JFR.configure JFR.dump VM.unlock_commercial_features VM.check_commercial_features To set the parameters for a flight recording, use the JFR.configure diagnostic command for the jcmd utility. Table 2-1 shows the parameters for the JFR.configure command. All parameters are optional. If no parameters are entered, the current settings are displayed. Table 2-1 JFR.configure Parameters globalbuffercount Number of global buffers. Change the memorysize parameter to alter the number of global buffers. Long The default value is determined by the value for the memorysize parameter. 2-1

Chapter 2 JFR.start Table 2-1 (Cont.) JFR.configure Parameters globalbuffersize maxchunksize Size of the global buffers, in bytes. Change the memorysize parameter to alter the size of the global buffers. Maximum size of an individual data chunk, in bytes Long Long 12582912 memorysize Overall memory size, in bytes Long 10485760 repositorypath Path to the location where recordings are stored until they are written to a permanent file String stackdepth Stack depth for stack traces Long 64 thread_buffer_size threadbufferstodisk Local buffer size for each thread, in bytes. Overriding this parameter could reduce performance and is not recommended. Flag for allowing thread buffers to write directly to disk if the buffer thread is blocked Long 8192 Boolean samplethreads Flag for activating thread sampling Boolean true The default value is determined by the value for the memorysize parameter. The default location is the temporary directory for the operating system. On Oracle Solaris and Linux operating systems the temporary directory is /tmp. On Windows the temporary directory is specified by the TMP environment variable. false Example 2-1 JFR.configure Example The following command configures Java Flight Recorder to store recordings in D:\jfr \recordings. The value for pid is the process ID of the Java process to record. jcmd pid JFR.configure repositorypath=d:\jfr\recordings JFR.start To start a flight recording, use the JFR.start diagnostic command for the jcmd utility. Table 2-2 shows the parameters for the JFR.start command. All parameters are optional. If no parameters are entered, a recording is started by using default values. Table 2-2 JFR.start Parameters delay Length of time to wait before starting to record Integer followed by s for seconds, m for minutes, or h for hours 0s 2-2

Chapter 2 JFR.start Table 2-2 (Cont.) JFR.start Parameters disk Flag for writing the data to disk while recording Boolean true dumponexit Flag for writing the recording to disk when the Java Virtual Machine (JVM) shuts down. If set to true and no value is entered for filename, the recording is written to a file in the directory where the process was started. The file name is a system-generated name that contains the process ID, recording ID, and current time stamp (for example,hotspot-pid-47496- id-1-2018_01_25_19_10_41.jfr). Boolean false duration Length of time to record Integer followed by s for seconds, m for minutes, or h for hours 0s (forever) filename Name of the file to which the recording is written when the recording is stopped. If no path is provided, the file is in the directory where the process was started. Examples of filenames: String No default value recording.jfr /home/user/recordings/ recording.jfr c:\recordings \recording.jfr maxage Maximum time to keep the recorded data on disk. This parameter is valid only when the disk parameter is set to true. Integer followed by s for seconds, m for minutes, or h for hours 0s (forever) maxsize Maximum size of the data to keep on disk, in bytes if one of the following suffixes is not used: Long 0 (no maximum size) m or M for megabytes g or G for gigabytes This parameter is valid only when the disk parameter is set to true. The value must not be less than the value for the maxchunksize parameter set with the JFR.configure command. name Name of the recording. If no name is provided, a name is generated. Make note of the generated name that is shown in the response to the command so that you can use it with other commands. String The default is a systemgenerated name. 2-3

Chapter 2 JFR.start Table 2-2 (Cont.) JFR.start Parameters path-to-gc-roots settings Flag for collecting the path to garbage collection (GC) roots at the end of a recording. This flag was introduced in JDK 10. The path information is useful for finding memory leaks, but collecting it is timeconsuming. Turn this flag on only when you start a recording for an application that you suspect has a memory leak. If the settings parameter is set to profile, then the information collected includes the stack trace from where the potential leaking object was allocated. Name of the settings file that identifies the events to record. To specify more than one file, separate the names with a comma (,). Include the path if the file is not in JRE_HOME/lib/jfr. The following profiles are included with the JDK in the JRE_HOME/lib/jfr directory: default.jfc: Collects a predefined set of information with low overhead, so it has minimal impact on performance and can be used with recordings that run continuously. profile.jfc: Provides more data than the default.jfc profile, but with more overhead and impact on performance. Use this configuration for short periods of time when more information is needed. Examples of settings file names: profile default default.jfc /home/user/settings/myevents.jfc,profile c:\settings\custom.jfc Boolean String false JRE_HOME/lib/jfr/ default.jfc Example 2-2 JFR.start Examples The following command starts a recording that runs for 1 minute, uses the settings file named profile to identify the events to record, and writes the recording to a file named d:\recordings\page-load.jfr. Because no value is provided for the name parameter, a system-generated name is used. The value for pid is the process ID of the Java process to record. jcmd pid JFR.start duration=1m settings=profile filename=d:\recordings\page-load.jfr 2-4

Chapter 2 JFR.check JFR.check The following command starts a recording named monitor1hour that keeps data for a maximum of 1 hour, and limits the size of the recording to 500 megabytes. The value for pid is the process ID of the Java process to record. jcmd pid JFR.start name=monitor1hour maxage=1h maxsize=500m To show information about a flight recording that is running, use the JFR.check diagnostic command for the jcmd utility. Table 2-3 lists the parameters for the JFR.check command. All parameters are optional. If no parameters are entered, information for all active recordings is shown. Table 2-3 JFR.check Parameters name Name of the recording String No default value verbose Flag for printing the event settings for the recording Boolean false Example 2-3 JFR.check Example The following command shows the information for a recording named Recording-1. The value for pid is the process ID of the Java process being recorded. jcmd pid JFR.check name=recording-1 JFR.stop To stop a flight recording, use the JFR.stop diagnostic command for the jcmd utility. Table 2-4 shows the parameters for the JFR.stop command. All parameters are optional. However, if no name is entered, then no recording is stopped. Table 2-4 JFR.stop Parameters filename Name of the file to which the recording is written when the recording is stopped. If no path is provided, the file is in the directory where the process was started. Examples of filenames: String No default value recording.jfr /home/user/ recordings/ recording.jfr c:\recordings \recording.jfr 2-5

Chapter 2 JFR.dump Table 2-4 (Cont.) JFR.stop Parameters name Name of the recording String No default value Example 2-4 JFR.stop Example JFR.dump The following command stops the recording named debugrun1 and writes it to debugrun1.jfr in the directory where the process was started. The value for pid is the process ID of the Java process being recorded. jcmd pid JFR.stop name=debugrun1 filename=debugrun1.jfr To write data to a file while a flight recording is running, use the JFR.dump diagnostic command for the jcmd utility. Table 2-5 shows the parameters for the JFR.dump command. The name and filename parameters are required. The recording continues to run after the data is written. Table 2-5 JFR.dump Parameters filename (required) name (required) Name of the file to which the recording is written. If no path is provided, the file is in the directory where the process was started. Examples of filenames: recording.jfr /home/user/ recordings/ recording.jfr c:\recordings \recording.jfr String No default value Name for the recording String No default value 2-6

Chapter 2 VM.unlock_commercial_features Table 2-5 (Cont.) JFR.dump Parameters path-to-gc-roots Flag for collecting the path to garbage collection (GC) roots at the time that the recording data is dumped. This flag was introduced in JDK 10. This information is useful for finding memory leaks, but collecting it can cause the application to halt for a short period of time. If you suspect a memory leak in an application that is running, use this flag to collect the information without having to start another recording. Boolean false Example 2-5 JFR.dump Example The following command writes a recording named monitor1hour to a file named /usr/ testsamples/recordings/monitor1hour-halfway.jfr. The value for pid is the process ID of the Java process being recorded. jcmd pid JFR.dump name=monitor1hour filename=/usr/testsamples/recordings/ monitor1hour-halfway.jfr VM.unlock_commercial_features To unlock commercial features in a Java process that is already running, use the VM.unlock_commercial_features diagnostic command for the jcmd utility. The VM.unlock_commercial_features command has no parameters. The following example shows the command for unlocking commercial features. The value for pid is the process ID of the Java process: jcmd pid VM.unlock_commercial_features VM.check_commercial_features To check if commercial features are locked or unlocked in a Java process that is already running, use the VM.check_commercial_features diagnostic command for the jcmd utility. The VM.check_commercial_features command has no parameters. The following example shows the command for checking the status of commercial features. The value for pid is the process ID of the Java process: jcmd pid VM.check_commercial_features 2-7