Java Flight Recorder (JFR) is a tool for collecting diagnostic and profiling data about a running Java application. It is integrated into the Java Virtual Machine (JVM) and causes almost no performance overhead, so it can be used even in heavily loaded production environments.
:::
The `jfr` command supports starting and stopping JFR recordings during dynamic program running. Recording collects data about _events_. Events occur in the JVM or the Java application at a specific point in time. Each event has a name, a time stamp, and an optional _payload_. The payload is the data associated with an event, for example, the CPU usage, the Java heap size before and after the event, the thread ID of the lock holder, and so on.
The basic usage of the `jfr` command is`jfr cmd [actionArg]`
> Note: jfr is supported only after the 8u262 version of jdk8
The file output path is not specified. By default, it is saved to the `arthas-output` directory
```bash
$ jfr dump -r 1
Dump recording 1, The result will be written to:
/tmp/test/arthas-output/20220819-200915.jfr
```
## Stop jfr recording
No recording output path is specified, default is saved to `arthas-output` directory.
```bash
$ jfr stop -r 1
Stop recording 1, The result will be written to:
/tmp/test/arthas-output/20220819-202049.jfr
```
> notice: A recording can only be stopped once.
You can also specify the record output path.
## View JFR recording results under arthas-output via browser
By default, arthas uses http port 8563 , which can be opened:[http://localhost:8563/arthas-output/](http://localhost:8563/arthas-output/) View the `arthas-output` directory below JFR recording results:

The resulting results can be viewed with tools that support the JFR format. Such as:
- JDK Mission Control : https://github.com/openjdk/jmc