(log)
Submit logs to the Log Handler for Plex Media Server
- log_line - Logging a single line message.
- log_multi_line - Logging a multi-line message
- enable_paper_trail - Enabling Papertrail
This endpoint will write a single-line log message, including a level and source to the main Plex Media Server log.
from plex_api_client import PlexAPI
from plex_api_client.models import operations
s = PlexAPI(
access_token="<YOUR_API_KEY_HERE>",
client_id="gcgzw5rz2xovp84b4vha3a40",
client_name="Plex Web",
client_version="4.133.0",
client_platform="Chrome",
device_name="Linux",
)
res = s.log.log_line(level=operations.Level.THREE, message="Test log message", source="Postman")
if res is not None:
# handle response
pass
Parameter | Type | Required | Description | Example |
---|---|---|---|---|
level |
operations.Level | ✔️ | An integer log level to write to the PMS log with. 0: Error 1: Warning 2: Info 3: Debug 4: Verbose |
|
message |
str | ✔️ | The text of the message to write to the log. | Test log message |
source |
str | ✔️ | a string indicating the source of the message. | Postman |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
Error Type | Status Code | Content Type |
---|---|---|
errors.LogLineBadRequest | 400 | application/json |
errors.LogLineUnauthorized | 401 | application/json |
errors.SDKError | 4XX, 5XX | */* |
This endpoint allows for the batch addition of log entries to the main Plex Media Server log.
It accepts a text/plain request body, where each line represents a distinct log entry.
Each log entry consists of URL-encoded key-value pairs, specifying log attributes such as 'level', 'message', and 'source'.
Log entries are separated by a newline character (\n
).
Each entry's parameters should be URL-encoded to ensure accurate parsing and handling of special characters.
This method is efficient for logging multiple entries in a single API call, reducing the overhead of multiple individual requests.
The 'level' parameter specifies the log entry's severity or importance, with the following integer values:
0
: Error - Critical issues that require immediate attention.1
: Warning - Important events that are not critical but may indicate potential issues.2
: Info - General informational messages about system operation.3
: Debug - Detailed information useful for debugging purposes.4
: Verbose - Highly detailed diagnostic information for in-depth analysis.
The 'message' parameter contains the log text, and 'source' identifies the log message's origin (e.g., an application name or module).
Example of a single log entry format:
level=4&message=Sample%20log%20entry&source=applicationName
Ensure each parameter is properly URL-encoded to avoid interpretation issues.
from plex_api_client import PlexAPI
s = PlexAPI(
access_token="<YOUR_API_KEY_HERE>",
client_id="gcgzw5rz2xovp84b4vha3a40",
client_name="Plex Web",
client_version="4.133.0",
client_platform="Chrome",
device_name="Linux",
)
res = s.log.log_multi_line(request="level=4&message=Test%20message%201&source=postman\n" +
"level=3&message=Test%20message%202&source=postman\n" +
"level=1&message=Test%20message%203&source=postman")
if res is not None:
# handle response
pass
Parameter | Type | Required | Description |
---|---|---|---|
request |
str | ✔️ | The request object to use for the request. |
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
operations.LogMultiLineResponse
Error Type | Status Code | Content Type |
---|---|---|
errors.LogMultiLineBadRequest | 400 | application/json |
errors.LogMultiLineUnauthorized | 401 | application/json |
errors.SDKError | 4XX, 5XX | */* |
This endpoint will enable all Plex Media Serverlogs to be sent to the Papertrail networked logging site for a period of time.
from plex_api_client import PlexAPI
s = PlexAPI(
access_token="<YOUR_API_KEY_HERE>",
client_id="gcgzw5rz2xovp84b4vha3a40",
client_name="Plex Web",
client_version="4.133.0",
client_platform="Chrome",
device_name="Linux",
)
res = s.log.enable_paper_trail()
if res is not None:
# handle response
pass
Parameter | Type | Required | Description |
---|---|---|---|
retries |
Optional[utils.RetryConfig] | ➖ | Configuration to override the default retry behavior of the client. |
operations.EnablePaperTrailResponse
Error Type | Status Code | Content Type |
---|---|---|
errors.EnablePaperTrailBadRequest | 400 | application/json |
errors.EnablePaperTrailUnauthorized | 401 | application/json |
errors.SDKError | 4XX, 5XX | */* |