2.9 KiB
Overview
Http API provides a RESTful-like interactive interface, and both requests and responses data in JSON format. Compared with Telnet/WebConsole's output unstructured text data, Http API can provide structured data and support more complex interactive functions, such as a series of diagnostic operations in specific application scenarios.
Access address
The Http API address is: http://ip:port/api
, the request parameters
must be submitted using POST
. Such as POST
http://127.0.0.1:8563/api
.
Note: The telnet port 3658
has compatibility issues with the Chrome
browser. It is recommended to use the http port 8563
to access the
http api.
Request data format
{
"action": "exec",
"requestId": "req112",
"sessionId": "94766d3c-8b39-42d3-8596-98aee3ccbefb",
"consumerId": "955dbd1325334a84972b0f3ac19de4f7_2",
"command": "version",
"execTimeout": "10000"
}
Request data format description:
action
: The requested action/behavior, please refer to "Request Actions" for optional values.requestId
: Optional request ID, generated by the client.sessionId
: Arthas session ID, one-time command does not need to set the session ID.consumerId
: Arthas consumer ID, used for multi-person sharing sessions.command
: Arthas command lineexecTimeout
: Timeout for executing commands (ms), default value is 30000.
Note: Different actions use different parameters. Set the parameters according to the specific action.
Request Actions
Currently supported request actions are as follows:
exec
: The command is executed synchronously, and the command results is returned after the command execution end or interrupted.async_exec
: The command is executed asynchronously, and the scheduling result of the command is returned immediately. The command execution result is obtained throughpull_results
action.interrupt_job
: To interrupt the foreground command of the session, similar to the function of TelnetCtrl + c
.pull_results
: Get the result of the command executed asynchronously, and execute it repeatedly in http long-polling mode.init_session
: Create new session.join_session
: Join the session, used to support multiple people sharing the same Arthas session.close_session
: Close the session.
Response status
The state attribute in the response indicates the request processing state, and its value is as follows:
SCHEDULED
: When the command is executed asynchronously, it means that the job has been created, and may not be executed yet or is being executed;SUCCEEDED
: The request is processed successfully (completed status);FAILED
: Request processing failed (completed status), usually accompanied by a message explaining the reason;REFUSED
: The request is rejected (completed status), usually accompanied by a message explaining the reason;