Files
plexphp/docs/sdks/log

Log

(log)

Overview

Submit logs to the Log Handler for Plex Media Server

Available Operations

enablePaperTrail

This endpoint will enable all Plex Media Serverlogs to be sent to the Papertrail networked logging site for a period of time.

Example Usage

declare(strict_types=1);

require 'vendor/autoload.php';

use LukeHagar\Plex_API;

$sdk = Plex_API\PlexAPI::builder()
    ->setSecurity(
        '<YOUR_API_KEY_HERE>'
    )
    ->build();



$response = $sdk->log->enablePaperTrail(

);

if ($response->statusCode === 200) {
    // handle response
}

Response

?Operations\EnablePaperTrailResponse

Errors

Error Type Status Code Content Type
Errors\EnablePaperTrailBadRequest 400 application/json
Errors\EnablePaperTrailUnauthorized 401 application/json
Errors\SDKException 4XX, 5XX */*

logLine

This endpoint will write a single-line log message, including a level and source to the main Plex Media Server log.

Example Usage

declare(strict_types=1);

require 'vendor/autoload.php';

use LukeHagar\Plex_API;
use LukeHagar\Plex_API\Models\Operations;

$sdk = Plex_API\PlexAPI::builder()
    ->setSecurity(
        '<YOUR_API_KEY_HERE>'
    )
    ->build();



$response = $sdk->log->logLine(
    level: Operations\Level::Three,
    message: 'Test log message',
    source: 'Postman'

);

if ($response->statusCode === 200) {
    // handle response
}

Parameters

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 string ✔️ The text of the message to write to the log. Test log message
source string ✔️ a string indicating the source of the message. Postman

Response

?Operations\LogLineResponse

Errors

Error Type Status Code Content Type
Errors\LogLineBadRequest 400 application/json
Errors\LogLineUnauthorized 401 application/json
Errors\SDKException 4XX, 5XX */*

logMultiLine

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.

Example Usage

declare(strict_types=1);

require 'vendor/autoload.php';

use LukeHagar\Plex_API;

$sdk = Plex_API\PlexAPI::builder()
    ->setSecurity(
        '<YOUR_API_KEY_HERE>'
    )
    ->build();

$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';

$response = $sdk->log->logMultiLine(
    request: $request
);

if ($response->statusCode === 200) {
    // handle response
}

Parameters

Parameter Type Required Description
$request string ✔️ The request object to use for the request.

Response

?Operations\LogMultiLineResponse

Errors

Error Type Status Code Content Type
Errors\LogMultiLineBadRequest 400 application/json
Errors\LogMultiLineUnauthorized 401 application/json
Errors\SDKException 4XX, 5XX */*