"""Plex Media Server log parser. Handles the standard Plex log format: Jan 01, 2026 12:00:00.000 [12345] DEBUG - Message text here Severity is read directly from the log level field. The EAE crash signature (plex_eae_failure pattern) is matched by the shared pattern library. """ from __future__ import annotations import re from datetime import datetime, timezone from typing import Iterator from app.glean.base import ( SourceState, apply_patterns, make_entry_id, now_iso, ) from app.services.models import LogPattern, RetrievedEntry # Jan 01, 2026 12:00:00.000 [12345] DEBUG - Message _LINE_RE = re.compile( r"^(?P\w{3})\s+(?P\d{1,2}),\s+(?P\d{4})" r"\s+(?P