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_resultsaction.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;