1JCMD(1)                          JDK Commands                          JCMD(1)
2
3
4

NAME

6       jcmd  -  send diagnostic command requests to a running Java Virtual Ma‐
7       chine (JVM)
8

SYNOPSIS

10       jcmd [pid | main-class] command...  | PerfCounter.print | -f filename
11
12       jcmd [-l]
13
14       jcmd -h
15
16       pid    When used, the jcmd utility sends the diagnostic command request
17              to the process ID for the Java process.
18
19       main-class
20              When used, the jcmd utility sends the diagnostic command request
21              to all Java processes with the specified name of the main class.
22
23       command
24              The command must be a valid jcmd command for the  selected  JVM.
25              The  list  of available commands for jcmd is obtained by running
26              the help command (jcmd pid help) where pid is the process ID for
27              the  running  Java  process.   If the pid is 0, commands will be
28              sent to all Java processes.  The main  class  argument  will  be
29              used  to  match,  either  partially  or fully, the class used to
30              start Java.  If no options are given, it lists the running  Java
31              process  identifiers  with the main class and command-line argu‐
32              ments that were used to launch the process (the  same  as  using
33              -l).
34
35       Perfcounter.print
36              Prints  the  performance  counters exposed by the specified Java
37              process.
38
39       -f filename
40              Reads and executes commands from a specified file, filename.
41
42       -l     Displays the list of Java Virtual  Machine  process  identifiers
43              that are not running in a separate docker process along with the
44              main class and command-line arguments that were used  to  launch
45              the  process.   If  the JVM is in a docker process, you must use
46              tools such as ps to look up the PID.
47
48              Note:
49
50              Using jcmd without arguments is the same as using jcmd -l.
51
52       -h     Displays the jcmd utility's command-line help.
53

DESCRIPTION

55       The jcmd utility is used to send diagnostic  command  requests  to  the
56       JVM.   It must be used on the same machine on which the JVM is running,
57       and have the same effective user and group identifiers that  were  used
58       to  launch  the  JVM.  Each diagnostic command has its own set of argu‐
59       ments.  To display the description, syntax, and a list of available ar‐
60       guments  for  a  diagnostic command, use the name of the command as the
61       argument.  For example:
62
63              jcmd pid help command
64
65       If arguments contain spaces, then you must surround them with single or
66       double  quotation  marks (' or ").  In addition, you must escape single
67       or double quotation marks with a backslash (\) to prevent the operating
68       system  shell  from processing quotation marks.  Alternatively, you can
69       surround these arguments with single quotation marks and then with dou‐
70       ble  quotation marks (or with double quotation marks and then with sin‐
71       gle quotation marks).
72
73       If  you  specify  the  process  identifier  (pid)  or  the  main  class
74       (main-class) as the first argument, then the jcmd utility sends the di‐
75       agnostic command request to the Java process with the specified identi‐
76       fier  or  to  all  Java  processes  with the specified name of the main
77       class.  You can also send the diagnostic command request to all  avail‐
78       able Java processes by specifying 0 as the process identifier.
79

COMMANDS FOR JCMD

81       The  command  must  be a valid jcmd diagnostic command for the selected
82       JVM.  The list of available commands for jcmd is  obtained  by  running
83       the help command (jcmd pid help) where pid is the process ID for a run‐
84       ning Java process.  If the pid is 0, commands will be sent to all  Java
85       processes.   The main class argument will be used to match, either par‐
86       tially or fully, the class used to start Java.  If no options are  giv‐
87       en, it lists the running Java process identifiers that are not in sepa‐
88       rate docker processes along with the main class and command-line  argu‐
89       ments that were used to launch the process (the same as using -l).
90
91       The following commands are available:
92
93       help [options] [arguments]
94              For more information about a specific command.
95
96              arguments:
97
98command  name:  The name of the command for which we want help
99                (STRING, no default value)
100
101              Note:
102
103              The following options must be  specified  using  either  key  or
104              key=value syntax.
105
106              options:
107
108-all: (Optional) Show help for all commands (BOOLEAN, false) .
109
110       Compiler.codecache
111              Prints code cache layout and bounds.
112
113              Impact: Low
114
115              Permission: java.lang.management.ManagementPermission(monitor)
116
117       Compiler.codelist
118              Prints all compiled methods in code cache that are alive.
119
120              Impact: Medium
121
122              Permission: java.lang.management.ManagementPermission(monitor)
123
124       Compiler.queue
125              Prints methods queued for compilation.
126
127              Impact: Low
128
129              Permission: java.lang.management.ManagementPermission(monitor)
130
131       Compiler.directives_add *filename* *arguments*
132              Adds compiler directives from a file.
133
134              Impact: Low
135
136              Permission: java.lang.management.ManagementPermission(monitor)
137
138              arguments:
139
140              filename:  The  name  of the directives file (STRING, no default
141              value)
142
143       Compiler.directives_clear
144              Remove all compiler directives.
145
146              Impact: Low
147
148              Permission: java.lang.management.ManagementPermission(monitor)
149
150       Compiler.directives_print
151              Prints all active compiler directives.
152
153              Impact: Low
154
155              Permission: java.lang.management.ManagementPermission(monitor)
156
157       Compiler.directives_remove
158              Remove latest added compiler directive.
159
160              Impact: Low
161
162              Permission: java.lang.management.ManagementPermission(monitor)
163
164       GC.class_histogram [options]
165              Provides statistics about the Java heap usage.
166
167              Impact: High --- depends on Java heap size and content.
168
169              Permission: java.lang.management.ManagementPermission(monitor)
170
171              Note:
172
173              The options must be specified using either key or key=value syn‐
174              tax.
175
176              options:
177
178-all:  (Optional)  Inspects all objects, including unreachable
179                objects (BOOLEAN, false)
180
181       GC.finalizer_info
182              Provides information about the Java finalization queue.
183
184              Impact: Medium
185
186              Permission: java.lang.management.ManagementPermission(monitor)
187
188       GC.heap_dump [options] [arguments]
189              Generates a HPROF format dump of the Java heap.
190
191              Impact: High --- depends on the Java heap size and content.  Re‐
192              quest a full GC unless the -all option is specified.
193
194              Permission: java.lang.management.ManagementPermission(monitor)
195
196              Note:
197
198              The  following  options  must  be  specified using either key or
199              key=value syntax.
200
201              options:
202
203-all: (Optional) Dump all objects, including  unreachable  ob‐
204                jects (BOOLEAN, false)
205
206              arguments:
207
208filename: The name of the dump file (STRING, no default value)
209
210       GC.heap_info
211              Provides generic Java heap information.
212
213              Impact: Medium
214
215              Permission: java.lang.management.ManagementPermission(monitor)
216
217       GC.run Calls java.lang.System.gc().
218
219              Impact: Medium --- depends on the Java heap size and content.
220
221       GC.run_finalization
222              Calls java.lang.System.runFinalization().
223
224              Impact: Medium --- depends on the Java content.
225
226       JFR.check [options]
227              Show information about a running flight recording
228
229              Impact: Low
230
231              Note:
232
233              The options must be specified using either key or key=value syn‐
234              tax.  If no parameters are entered, information for  all  active
235              recordings is shown.
236
237              options:
238
239name:  (Optional)  Name  of the flight recording.  (STRING, no
240                default value)
241
242verbose: (Optional) Flag for printing the event  settings  for
243                the recording (BOOLEAN, false)
244
245       JFR.configure [options]
246              Set the parameters for a flight recording
247
248              Impact: Low
249
250              Note:
251
252              The options must be specified using either key or key=value syn‐
253              tax.  If no parameters are entered,  the  current  settings  are
254              displayed.
255
256              options:
257
258globalbuffercount:  (Optional) Number of global buffers.  This
259                option is a legacy option: change the memorysize parameter  to
260                alter  the  number  of  global  buffers.  This value cannot be
261                changed once JFR has been initalized.  (STRING, default deter‐
262                mined by the value for memorysize)
263
264globalbuffersize:  (Optional)  Size  of the global buffers, in
265                bytes.  This option is a legacy option: change the  memorysize
266                parameter to alter the size of the global buffers.  This value
267                cannot be changed once JFR has been initalized.  (STRING,  de‐
268                fault determined by the value for memorysize)
269
270maxchunksize:  (Optional)  Maximum  size of an individual data
271                chunk in bytes if one of the following suffixes is  not  used:
272                'm'  or  'M'  for megabytes OR 'g' or 'G' for gigabytes.  This
273                value  cannot  be  changed  once  JFR  has  been  initialized.
274                (STRING, 12M)
275
276memorysize: (Optional) Overall memory size, in bytes if one of
277                the following suffixes is not used: 'm' or 'M'  for  megabytes
278                OR  'g'  or  'G'  for gigabytes.  This value cannot be changed
279                once JFR has been initialized.  (STRING, 10M)
280
281repositorypath: (Optional) Path to the location where  record‐
282                ings  are  stored  until they are written to a permanent file.
283                (STRING, The default location is the temporary  directory  for
284                the  operating system.  On Linux operating systems, the tempo‐
285                rary directory is /tmp.  On Windwows, the temporary  directory
286                is specified by the TMP environment variable.)
287
288stackdepth:  (Optional) Stack depth for stack traces.  Setting
289                this value greater than the default of 64 may cause a  perfor‐
290                mance  degradation.  This value cannot be changed once JFR has
291                been initialized.  (LONG, 64)
292
293thread_buffer_size: (Optional)  Local  buffer  size  for  each
294                thread  in bytes if one of the following suffixes is not used:
295                'k' or 'K' for kilobytes or 'm' or 'M' for  megabytes.   Over‐
296                riding this parameter could reduce performance and is not rec‐
297                ommended.  This value cannot be changed once JFR has been ini‐
298                tialized.  (STRING, 8k)
299
300samplethreads: (Optional) Flag for activating thread sampling.
301                (BOOLEAN, true)
302
303       JFR.dump [options]
304              Write data to a file while a flight recording is running
305
306              Impact: Low
307
308              Note:
309
310              The options must be specified using either key or key=value syn‐
311              tax.   No  options are required.  The recording continues to run
312              after the data is written.
313
314              options:
315
316begin: (Optional) Specify the time from which  recording  data
317                will be included in the dump file.  The format is specified as
318                local time.  (STRING, no default value)
319
320end: (Optional) Specify the time to which recording data  will
321                be  included in the dump file.  The format is specified as lo‐
322                cal time.  (STRING, no default value)
323
324                Note: For both begin and end, the time must  be  in  a  format
325                that  can  be  read by java.time.LocalTime::parse(STRING), ja‐
326                va.time.LocalDateTime::parse(STRING)     or      java.time.In‐
327                stant::parse(STRING).       For      example,      "13:20:15",
328                "2020-03-17T09:00:00" or "2020-03-17T09:00:00Z".
329
330                Note: begin and end times correspond to the  timestamps  found
331                within the recorded information in the flight recording data.
332
333                Another  option  is to use a time relative to the current time
334                that is specified by a negative integer followed by  "s",  "m"
335                or "h".  For example, "-12h", "-15m" or "-30s"
336
337filename:  (Optional)  Name  of  the  file to which the flight
338                recording data is dumped.  If no filename is given, a filename
339                is  generated from the PID and the current date.  The filename
340                may also be a directory in which case, the filename is  gener‐
341                ated from the PID and the current date in the specified direc‐
342                tory.  (STRING, no default value)
343
344maxage: (Optional) Length  of  time  for  dumping  the  flight
345                recording  data  to a file.  (INTEGER followed by 's' for sec‐
346                onds 'm' for minutes or 'h' for hours, no default value)
347
348maxsize: (Optional) Maximum size for the  amount  of  data  to
349                dump  from a flight recording in bytes if one of the following
350                suffixes is not used: 'm' or 'M' for megabytes OR 'g'  or  'G'
351                for gigabytes.  (STRING, no default value)
352
353name:  (Optional) Name of the recording.  If no name is given,
354                data from all recordings is dumped.  (STRING, no default  val‐
355                ue)
356
357path-to-gc-root:  (Optional)  Flag  for  saving  the  path  to
358                garbage collection (GC) roots at the time the  recording  data
359                is  dumped.  The path information is useful for finding memory
360                leaks but collecting it can cause the application to pause for
361                a  short period of time.  Turn on this flag only when you have
362                an application that you suspect has a memory leak.   (BOOLEAN,
363                false)
364
365       JFR.start [options]
366              Start a flight recording
367
368              Impact: Low
369
370              Note:
371
372              The options must be specified using either key or key=value syn‐
373              tax.  If no parameters are entered, then a recording is  started
374              with default values.
375
376              options:
377
378delay:  (Optional)  Length  of time to wait before starting to
379                record (INTEGER followed by 's' for seconds 'm' for minutes or
380                'h' for hours, 0s)
381
382disk:  (Optional) Flag for also writing the data to disk while
383                recording (BOOLEAN, true)
384
385dumponexit: (Optional) Flag for writing the recording to  disk
386                when  the  Java  Virtual  Machine (JVM) shuts down.  If set to
387                'true' and no value is given for filename,  the  recording  is
388                written  to  a  file  in  the  directory where the process was
389                started.  The file name is a system-generated name  that  con‐
390                tains  the  process  ID, the recording ID and the current time
391                stamp.   (For  example:  id-1-2019_12_12_10_41.jfr)  (BOOLEAN,
392                false)
393
394duration:  (Optional)  Length of time to record.  Note that 0s
395                means forever (INTEGER followed by 's'  for  seconds  'm'  for
396                minutes or 'h' for hours, 0s)
397
398filename:  (Optional)  Name  of  the  file to which the flight
399                recording data is written when the recording is  stopped.   If
400                no filename is given, a filename is generated from the PID and
401                the current date and is placed  in  the  directory  where  the
402                process  was started.  The filename may also be a directory in
403                which case, the filename is generated from  the  PID  and  the
404                current  date in the specified directory.  (STRING, no default
405                value)
406
407maxage: (Optional) Maximum time to keep the recorded  data  on
408                disk.  This parameter is valid only when the disk parameter is
409                set to true.  Note 0s means forever.  (INTEGER followed by 's'
410                for seconds 'm' for minutes or 'h' for hours, 0s)
411
412maxsize:  (Optional)  Maximum size of the data to keep on disk
413                in bytes if one of the following suffixes is not used: 'm'  or
414                'M' for megabytes OR 'g' or 'G' for gigabytes.  This parameter
415                is valid only when the disk parameter is set to  'true'.   The
416                value must not be less than the value for the maxchunksize pa‐
417                rameter set with the JFR.configure command.   (STRING,  0  (no
418                maximum size))
419
420name: (Optional) Name of the recording.  If no name is provid‐
421                ed, a name is generated.  Make note of the generated name that
422                is shown in the response to the command so that you can use it
423                with other commands.  (STRING, system-generated default name)
424
425path-to-gc-root:  (Optional)  Flag  for  saving  the  path  to
426                garbage  collection (GC) roots at the end of a recording.  The
427                path information is useful for finding memory leaks  but  col‐
428                lecting it is time consuming.  Turn on this flag only when you
429                have an application that you suspect has a  memory  leak.   If
430                the  settings parameter is set to 'profile', then the informa‐
431                tion collected includes the stack trace from where the  poten‐
432                tial leaking object was allocated.  (BOOLEAN, false)
433
434settings: (Optional) Name of the settings file that identifies
435                which events to record.  To specify more than one file,  sepa‐
436                rate  the  names  with a comma (',').  Include the path if the
437                file is not in JAVA-HOME/lib/jfr.  The following profiles  are
438                included with the JDK in the JAVA-HOME/lib/jfr directory: 'de‐
439                fault.jfc': collects a predefined set of information with  low
440                overhead,  so  it has minimal impact on performance and can be
441                used with recordings  that  run  continuously;  'profile.jfc':
442                Provides  more  data  than the 'default.jfc' profile, but with
443                more overhead and impact on performance.  Use this  configura‐
444                tion  for short periods of time when more information is need‐
445                ed.  Use none to start a recording without a  predefined  con‐
446                figuration file.  (STRING, JAVA-HOME/lib/jfr/default.jfc)
447
448              Event  settings and .jfc options can be specified using the fol‐
449              lowing syntax:
450
451option: (Optional) Specifies the option value to  modify.   To
452                list available options, use the JAVA_HOME/bin/jfr tool.
453
454event-setting: (Optional) Specifies the event setting value to
455                modify.  Use the form: #= To add a new event  setting,  prefix
456                the event name with '+'.
457
458              You  can specify values for multiple event settings and .jfc op‐
459              tions by separating them with a whitespace.  In case of  a  con‐
460              flict  between a parameter and a .jfc option, the parameter will
461              take precedence.  The whitespace delimiter can  be  omitted  for
462              timespan  values,  i.e.   20ms.   For more information about the
463              settings syntax, see Javadoc of the jdk.jfr package.
464
465       JFR.stop [options]
466              Stop a flight recording
467
468              Impact: Low
469
470              Note:
471
472              The options must be specified using either key or key=value syn‐
473              tax.   If  no  parameters  are  entered,  then  no  recording is
474              stopped.
475
476              options:
477
478filename: (Optional) Name of the file to which  the  recording
479                is  written when the recording is stopped.  If no path is pro‐
480                vided, the data from the recording is discarded.  (STRING,  no
481                default value)
482
483name:  (Optional)  Name  of  the recording (STRING, no default
484                value)
485
486       JVMTI.agent_load [arguments]
487              Loads JVMTI native agent.
488
489              Impact: Low
490
491              Permission: java.lang.management.ManagementPermission(control)
492
493              arguments:
494
495library path: Absolute  path  of  the  JVMTI  agent  to  load.
496                (STRING, no default value)
497
498agent  option:  (Optional)  Option  string  to pass the agent.
499                (STRING, no default value)
500
501       JVMTI.data_dump
502              Signals the JVM to do a data-dump request for JVMTI.
503
504              Impact: High
505
506              Permission: java.lang.management.ManagementPermission(monitor)
507
508       ManagementAgent.start [options]
509              Starts remote management agent.
510
511              Impact: Low --- no impact
512
513              Note:
514
515              The following options must be  specified  using  either  key  or
516              key=value syntax.
517
518              options:
519
520config.file:  (Optional)  Sets  com.sun.management.config.file
521                (STRING, no default value)
522
523jmxremote.host:  (Optional)   Sets   com.sun.management.jmxre‐
524                mote.host (STRING, no default value)
525
526jmxremote.port:   (Optional)   Sets  com.sun.management.jmxre‐
527                mote.port (STRING, no default value)
528
529jmxremote.rmi.port: (Optional) Sets  com.sun.management.jmxre‐
530                mote.rmi.port (STRING, no default value)
531
532jmxremote.ssl:   (Optional)   Sets   com.sun.management.jmxre‐
533                mote.ssl (STRING, no default value)
534
535jmxremote.registry.ssl:   (Optional)   Sets    com.sun.manage‐
536                ment.jmxremote.registry.ssl (STRING, no default value)
537
538jmxremote.authenticate:    (Optional)   Sets   com.sun.manage‐
539                ment.jmxremote.authenticate (STRING, no default value)
540
541              • jmxremote.password.file:   (Optional)   Sets   com.sun.manage‐
542                ment.jmxremote.password.file (STRING, no default value)
543
544jmxremote.access.file:    (Optional)    Sets   com.sun.manage‐
545                ment.jmxremote.acce ss.file (STRING, no default value)
546
547jmxremote.login.config:   (Optional)   Sets    com.sun.manage‐
548                ment.jmxremote.log in.config (STRING, no default value)
549
550jmxremote.ssl.enabled.cipher.suites:      (Optional)      Sets
551                com.sun.management.
552
553jmxremote.ssl.enabled.cipher.suite: (STRING, no default value)
554
555jmxremote.ssl.enabled.protocols: (Optional) Sets  com.sun.man‐
556                agement.jmxr emote.ssl.enabled.protocols  (STRING,  no default
557                value)
558
559jmxremote.ssl.need.client.auth: (Optional)  Sets  com.sun.man‐
560                agement.jmxre mote.need.client.auth (STRING, no default value)
561
562jmxremote.ssl.config.file:   (Optional)  Sets  com.sun.manage‐
563                ment.jmxremote. ssl_config_file (STRING, no default value)
564
565jmxremote.autodiscovery:   (Optional)   Sets   com.sun.manage‐
566                ment.jmxremote.au todiscovery (STRING, no default value)
567
568jdp.port: (Optional) Sets com.sun.management.jdp.port (INT, no
569                default value)
570
571jdp.address:  (Optional)  Sets  com.sun.management.jdp.address
572                (STRING, no default value)
573
574jdp.source_addr:      (Optional)      Sets     com.sun.manage‐
575                ment.jdp.source_addr (STRING, no default value)
576
577jdp.ttl: (Optional) Sets com.sun.management.jdp.ttl  (INT,  no
578                default value)
579
580jdp.pause:  (Optional) Sets com.sun.management.jdp.pause (INT,
581                no default value)
582
583jdp.name: (Optional) Sets com.sun.management.jdp.name (STRING,
584                no default value)
585
586       ManagementAgent.start_local
587              Starts the local management agent.
588
589              Impact: Low --- no impact
590
591       ManagementAgent.status
592              Print the management agent status.
593
594              Impact: Low --- no impact
595
596              Permission: java.lang.management.ManagementPermission(monitor)
597
598       ManagementAgent.stop
599              Stops the remote management agent.
600
601              Impact: Low --- no impact
602
603       Thread.print [options]
604              Prints all threads with stacktraces.
605
606              Impact: Medium --- depends on the number of threads.
607
608              Permission: java.lang.management.ManagementPermission(monitor)
609
610              Note:
611
612              The  following  options  must  be  specified using either key or
613              key=value syntax.
614
615              options:
616
617-l: (Optional)  Prints  java.util.concurrent  locks  (BOOLEAN,
618                false)
619
620       VM.cds [arguments]
621              Dumps  a static or dynamic shared archive that includes all cur‐
622              rently loaded classes.
623
624              Impact: Medium --- pause time depends on number of loaded class‐
625              es
626
627              Permission: java.lang.management.ManagementPermission(monitor)
628
629              arguments:
630
631subcmd: must be either static_dump or
632
633filename:  (Optional)  Name of the shared archive to be dumped
634                (STRING, no default value)
635
636              If filename is not specified, a default file name is chosen  us‐
637              ing  the  pid  of  the  target  JVM  process.   For example, ja‐
638              va_pid1234_static.jsa, java_pid5678_dynamic.jsa, etc.
639
640              If filename is not specified as an absolute  path,  the  archive
641              file is created in a directory relative to the current directory
642              of the target JVM process.
643
644       VM.classloaders [options]
645              Prints classloader hierarchy.
646
647              Impact: Medium --- Depends on number of class loaders and class‐
648              es loaded.
649
650              Permission: java.lang.management.ManagementPermission(monitor)
651
652              The  following  options  must  be  specified using either key or
653              key=value syntax.
654
655              options:
656
657show-classes:  (Optional)  Print  loaded  classes.   (BOOLEAN,
658                false)
659
660verbose:  (Optional)  Print  detailed  information.  (BOOLEAN,
661                false)
662
663fold: (Optional) Show loaders of the same name  and  class  as
664                one.  (BOOLEAN, true)
665
666       VM.classloader_stats
667              Prints statistics about all ClassLoaders.
668
669              Impact: Low
670
671              Permission: java.lang.management.ManagementPermission(monitor)
672
673       VM.class_hierarchy [options] [arguments]
674              Prints  a list of all loaded classes, indented to show the class
675              hierarchy.  The name of each class is followed by the ClassLoad‐
676              erData*  of  its  ClassLoader,  or "null" if it is loaded by the
677              bootstrap class loader.
678
679              Impact: Medium --- depends on the number of loaded classes.
680
681              Permission: java.lang.management.ManagementPermission(monitor)
682
683              Note:
684
685              The following options must be  specified  using  either  key  or
686              key=value syntax.
687
688              options:
689
690-i: (Optional) Inherited interfaces should be printed.  (BOOL‐
691                EAN, false)
692
693-s: (Optional) If a class name is  specified,  it  prints  the
694                subclasses.   If the class name is not specified, only the su‐
695                perclasses are printed.  (BOOLEAN, false)
696
697              arguments:
698
699classname: (Optional) The name of the  class  whose  hierarchy
700                should  be  printed.   If not specified, all class hierarchies
701                are printed.  (STRING, no default value)
702
703       VM.command_line
704              Prints the command line used to start this VM instance.
705
706              Impact: Low
707
708              Permission: java.lang.management.ManagementPermission(monitor)
709
710       VM.dynlibs
711              Prints the loaded dynamic libraries.
712
713              Impact: Low
714
715              Permission: java.lang.management.ManagementPermission(monitor)
716
717       VM.info
718              Prints information about the JVM environment and status.
719
720              Impact: Low
721
722              Permission: java.lang.management.ManagementPermission(monitor)
723
724       VM.log [options]
725              Lists current log configuration,  enables/disables/configures  a
726              log output, or rotates all logs.
727
728              Impact: Low
729
730              Permission: java.lang.management.ManagementPermission(control)
731
732              options:
733
734              Note:
735
736              The  following  options  must  be  specified using either key or
737              key=value syntax.
738
739output: (Optional) The name or index (#) of output to  config‐
740                ure.  (STRING, no default value)
741
742output_options:  (Optional)  Options for the output.  (STRING,
743                no default value)
744
745what: (Optional) Configures what tags to log.  (STRING, no de‐
746                fault value )
747
748decorators:  (Optional)  Configures  which  decorators to use.
749                Use 'none' or an empty value to remove all.  (STRING,  no  de‐
750                fault value)
751
752disable:  (Optional)  Turns off all logging and clears the log
753                configuration.  (BOOLEAN, no default value)
754
755list: (Optional) Lists current log  configuration.   (BOOLEAN,
756                no default value)
757
758rotate:  (Optional)  Rotates  all  logs.  (BOOLEAN, no default
759                value)
760
761       VM.flags [options]
762              Prints the VM flag options and their current values.
763
764              Impact: Low
765
766              Permission: java.lang.management.ManagementPermission(monitor)
767
768              Note:
769
770              The following options must be  specified  using  either  key  or
771              key=value syntax.
772
773              options:
774
775-all:  (Optional)  Prints all flags supported by the VM (BOOL‐
776                EAN, false).
777
778       VM.native_memory [options]
779              Prints native memory usage
780
781              Impact: Medium
782
783              Permission: java.lang.management.ManagementPermission(monitor)
784
785              Note:
786
787              The following options must be  specified  using  either  key  or
788              key=value syntax.
789
790              options:
791
792summary:  (Optional) Requests runtime to report current memory
793                summary, which includes total reserved and  committed  memory,
794                along  with memory usage summary by each subsystem.  (BOOLEAN,
795                false)
796
797detail: (Optional) Requests runtime to report  memory  alloca‐
798                tion >= 1K by each callsite.  (BOOLEAN, false)
799
800baseline: (Optional) Requests runtime to baseline current mem‐
801                ory usage, so it  can  be  compared  against  in  later  time.
802                (BOOLEAN, false)
803
804summary.diff:  (Optional)  Requests  runtime  to report memory
805                summary  comparison  against  previous  baseline.    (BOOLEAN,
806                false)
807
808detail.diff:  (Optional) Requests runtime to report memory de‐
809                tail comparison against previous  baseline,  which  shows  the
810                memory  allocation  activities at different callsites.  (BOOL‐
811                EAN, false)
812
813shutdown: (Optional) Requests runtime to shutdown  itself  and
814                free the memory used by runtime.  (BOOLEAN, false)
815
816statistics:  (Optional)  Prints  tracker statistics for tuning
817                purpose.  (BOOLEAN, false)
818
819scale: (Optional) Memory usage in which scale, KB,  MB  or  GB
820                (STRING, KB)
821
822       VM.print_touched_methods
823              Prints  all methods that have ever been touched during the life‐
824              time of this JVM.
825
826              Impact: Medium --- depends on Java content.
827
828       VM.set_flag [arguments]
829              Sets the VM flag option by using the provided value.
830
831              Impact: Low
832
833              Permission: java.lang.management.ManagementPermission(control)
834
835              arguments:
836
837flag name: The name of the flag that you want to set  (STRING,
838                no default value)
839
840string  value:  (Optional)  The  value  that  you  want to set
841                (STRING, no default value)
842
843       VM.stringtable [options]
844              Dumps the string table.
845
846              Impact: Medium --- depends on the Java content.
847
848              Permission: java.lang.management.ManagementPermission(monitor)
849
850              Note:
851
852              The following options must be  specified  using  either  key  or
853              key=value syntax.
854
855              options:
856
857-verbose:  (Optional)  Dumps the content of each string in the
858                table (BOOLEAN, false)
859
860       VM.symboltable [options]
861              Dumps the symbol table.
862
863              Impact: Medium --- depends on the Java content.
864
865              Permission: java.lang.management.ManagementPermission(monitor)
866
867              Note:
868
869              The following options must be  specified  using  either  key  or
870              key=value syntax).
871
872              options:
873
874-verbose:  (Optional)  Dumps the content of each symbol in the
875                table (BOOLEAN, false)
876
877       VM.systemdictionary
878              Prints the statistics for dictionary hashtable sizes and  bucket
879              length.
880
881              Impact: Medium
882
883              Permission: java.lang.management.ManagementPermission(monitor)
884
885              Note:
886
887              The  following  options  must  be  specified using either key or
888              key=value syntax.
889
890              options:
891
892verbose: (Optional) Dump the content of each dictionary  entry
893                for all class loaders (BOOLEAN, false) .
894
895       VM.system_properties
896              Prints the system properties.
897
898              Impact: Low
899
900              Permission: java.util.PropertyPermission(*, read)
901
902       VM.uptime [options]
903              Prints the VM uptime.
904
905              Impact: Low
906
907              Note:
908
909              The  following  options  must  be  specified using either key or
910              key=value syntax.
911
912              options:
913
914-date: (Optional) Adds a prefix with the current  date  (BOOL‐
915                EAN, false)
916
917       VM.version
918              Prints JVM version information.
919
920              Impact: Low
921
922              Permission: java.util.PropertyPermission(java.vm.version, read)
923
924
925
926JDK 17                               2021                              JCMD(1)
Impressum