LoggingService
in package
Einfacher File-Logger für die AdminTool-Anwendung.
Ziele:
- Technische Details werden in eine Log-Datei unter public/logs/ geschrieben.
- In der Weboberfläche erscheinen nur verständliche, fachliche Fehlermeldungen.
Table of Contents
Constants
- LEVEL_MAP = ['debug' => 100, 'info' => 200, 'warning' => 300, 'error' => 400]
- Zuordnung der Log-Level zu numerischen Werten zur Filterung.
Properties
Methods
- __construct() : mixed
- log() : void
- Allgemeiner Log-Eintrag.
- logException() : void
- Komfortmethode, um Exceptions strukturiert zu loggen.
- ensureLogDirectoryExists() : void
- Stellt sicher, dass das Log-Verzeichnis existiert.
Constants
LEVEL_MAP
Zuordnung der Log-Level zu numerischen Werten zur Filterung.
private
array<string, int>
LEVEL_MAP
= ['debug' => 100, 'info' => 200, 'warning' => 300, 'error' => 400]
Properties
$logDir
private
string
$logDir
Vollständiger Pfad zum Log-Verzeichnis
$logFile
private
string
$logFile
Dateiname der Log-Datei
$minLevel
private
int
$minLevel
Minimale Log-Stufe, ab der geschrieben wird.
Methods
__construct()
public
__construct(array<string, mixed> $config) : mixed
Parameters
- $config : array<string, mixed>
-
Teilkonfiguration "logging" aus config.php
log()
Allgemeiner Log-Eintrag.
public
log(string $level, string $message[, array<string, mixed> $context = [] ]) : void
Parameters
- $level : string
-
Log-Level (debug|info|warning|error)
- $message : string
-
Nachrichtentext
- $context : array<string, mixed> = []
-
Zusätzliche Kontextinformationen
logException()
Komfortmethode, um Exceptions strukturiert zu loggen.
public
logException(string $message, Throwable $exception[, array<string, mixed> $context = [] ]) : void
Parameters
- $message : string
-
Kurzer Kontexttext zur Exception
- $exception : Throwable
-
Die geworfene Exception
- $context : array<string, mixed> = []
-
Zusätzlicher Kontext (Route, Benutzername, Remote-IP, ...)
ensureLogDirectoryExists()
Stellt sicher, dass das Log-Verzeichnis existiert.
private
ensureLogDirectoryExists() : void