Managing Logs
Pinot supports inspecting and modifying Log4J log levels dynamically in production environments through REST. This can often be helpful when debugging an issue that is transient in nature and restarting the server with new configurations files may alter the desired behavior.
GET /loggers
Parameter Type | Parameter Name | Description |
---|---|---|
Header | accept string | Setting to "accept: application/json" is recommended |
Sample Usage:
$ curl -X GET -H "accept: application/json" localhost:8000/loggers
["root","org.reflections","org.apache.pinot.tools.admin"]
GET /loggers/{loggerName}
Parameter Type | Parameter Name | Description |
---|---|---|
Header | accept string | Setting to "accept: application/json" is recommended |
Path Parameter | loggerName string | The name of the logger (fully qualified path) |
Sample Usage:
> curl -X GET -H "accept: application/json" localhost:8000/loggers/root
{"filter":null,"level":"INFO","name":"root"}
PUT /loggers/{loggerName}?level={level}
Parameter Type | Parameter Name | Description |
---|---|---|
Header | accept string | Setting to "accept: application/json" is recommended |
Path Parameter | loggerName string | The name of the logger (fully qualified path) |
Query Parameter | level string | the log level (such as DEBUG or INFO |
Sample Usage
$ curl -X PUT -H "accept: application/json" localhost:8000/loggers/root?level=ERROR
{"filter":null,"level":"ERROR","name":"root"}
Pinot supports downloading logs directly over HTTP in situations where the operator may not have access to the container, but has access to the rest endpoints.
If the operator has access to the Controller, they can download log files from any one of the other components.
GET /loggers/files
Parameter Type | Parameter Name | Description |
---|---|---|
Header | accept string | Setting to "accept: application/json" is recommended |
GET /loggers/download?filePath={filePath}
Parameter Type | Parameter name | Description |
---|---|---|
Header | accept string | Setting to "accept: application/octet_string" is recommended |
Query Parameter | filePath string | The path to the file, can be obtained using GET /loggers/files |
These APIs are only supported on the Controller
GET /loggers/instances
Parameter Type | Parameter Name | Description |
---|---|---|
Header | accept string | Setting to "accept": application/json" is recommended |
GET /loggers/instances/{instanceName}
Parameter Type | Parameter Name | Description |
---|---|---|
Header | accept string | Setting to "accept": application/json" is recommended |
Path Parameter | instanceName string | Indicates which instance to collect logs from |
GET /loggers/instances/{instanceName}/download?filePath={filePath}
Parameter Type | Parameter Name | Description |
---|---|---|
Header | accept string | Setting to "accept: application/octet |
Path Parameter | instanceName string | Indicates which instance to collect logs from |
Query Parameter | filePath string | Indicates which file to download |
Last modified 10mo ago