Save the following code to a `Demo.java` and run the commands in shell as
Save the following code to a `Demo.java` and run the commands in shell as
@ -39,68 +39,67 @@ public class Demo {
}
}
```
```
## 2. Start Arthas
Save the contents above into `Demo.java`, then compile it under the command line:
### Linux/Unix/Mac
```bash
```bash
./as.sh
javac Demo.java
java Demo
```
```
You can also save and start the code in IDE.
1. the user to run the *command* should have the same privilege as the owner of the target process, as a simple example you can try the following command if the target process is managed by user `admin`:
## 2. Start Arthas
```bash
### Linux/Unix/Mac
sudo su admin && ./as.sh
# Or
sudo -u admin -EH ./as.sh
```
2. For more details of the booting script, please refer to [Start Arthas](start-arthas.md).
Execute the following command in the command line:
3. If you cannot *attach* the target process, please check the logs under `~/logs/arthas` for troubleshooting.
4. Selecting the target process as:
```bash
./as.sh
```
```
> The user to run this script *MUST* have the same privilege as the owner of the target process, as a simple example you can try the following command if the target process is managed by user `admin`: `sudo su admin && ./as.sh` or `sudo -u admin -EH ./as.sh`. For more details on the bootstrap script, please refer to [Start Arthas](start-arthas.md). If you cannot be able to attach to the target process, please check the logs under `~/logs/arthas` for troubleshooting.
$ ./as.sh
Arthas script version: 3.0.2
Found existing java process, please choose one and hit RETURN.
* [1]: 95428
[2]: 22647 org.jetbrains.jps.cmdline.Launcher
[3]: 21736
[4]: 13560 Demo
```
We select `4` to check our Demo process and we then have
Select the target Java process to attach:
```
```bash
Connecting to arthas server... current timestamp is 1536656867
$ ./as.sh
Trying 127.0.0.1...
Arthas script version: 3.0.2
Connected to 127.0.0.1.
Found existing java process, please choose one and hit RETURN.
Escape character is '^]'.
* [1]: 95428
,---. ,------. ,--------.,--. ,--. ,---. ,---.
[2]: 22647 org.jetbrains.jps.cmdline.Launcher
/ O \ | .--. ''--. .--'| '--' | / O \ ' .-'
[3]: 21736
| .-. || '--'.' | | | .--. || .-. |`. `-.
[4]: 13560 Demo
| | | || |\ \ | | | | | || | | |.-' |
```
`--' `--'`--' '--' `--' `--' `--'`--' `--'`-----'
The 'Demo' process is the fourth as shown above, press '4' then 'Enter'. Arthas will attach to the target process, and start to output:
wiki: https://alibaba.github.io/arthas
```bash
version: 3.0.1-RC-SNAPSHOT
Connecting to arthas server... current timestamp is 1536656867
pid: 13560
Trying 127.0.0.1...
timestamp: 1536656867894
Connected to 127.0.0.1.
Escape character is '^]'.
$
,---. ,------. ,--------.,--. ,--. ,---. ,---.
```
/ O \ | .--. ''--. .--'| '--' | / O \ ' .-'
| .-. || '--'.' | | | .--. || .-. |`. `-.
| | | || |\ \ | | | | | || | | |.-' |
`--' `--'`--' '--' `--' `--' `--'`--' `--'`-----'
wiki: https://alibaba.github.io/arthas
version: 3.0.1-RC-SNAPSHOT
pid: 13560
timestamp: 1536656867894
```
### Windows
### Windows
Open the *DOS* console, under the unzipped arthas folder execute `as.bat <pid>`
Open 'Command' window, execute `as.bat <pid>` from where the Arthas package file is unzipped.
## 3. Check the Dashboard
## 3. Check the Dashboard
Type in [dashboard](dashboard.md) and hit the *ENTER*, you will see it as (`Ctrl+C` to stop)
Type '[dashboard](dashboard.md)' and hit 'ENTER', a brief report on the current process will be shown as below, pls. `Ctrl+C` to stop:
Pls. refer to [advanced usages](advanced-use.md) for more information.
## 5. Exit Arthas
## 5. Exit Arthas
- `quit` or `exit` will just disconnect the current console connection while Arthas still running in the target process
Use `quit` or `exit` to disconnect from the current process. The Arthas instance attached to the target process continues to live inside the process, and its port is standby for further connection.
- `shutdown` will terminate the Arthas completely
Use `shutdown` to have Arthas completely quit from the target process.