Rotacja logów błędów
Założenie: Stworzymy prosty mechanizm rotacji logów błędów w PHP, zapobiegając przepełnieniu pliku logu.
Krok po kroku:
- Utworzenie funkcji do zapisu logów: Funkcja ta przyjmie komunikat o błędzie jako argument i zapisze go do pliku logu. Dodatkowo, sprawdzi rozmiar pliku i wykona rotację, jeśli przekroczy on określony limit.
- Wywołanie funkcji: Aby użyć funkcji, wystarczy wywołać ją z odpowiednim komunikatem o błędzie.
$maxSize) {
rotateLogs($logFile);
}
error_log(date('Y-m-d H:i:s') . ' - ' . $message . PHP_EOL, 3, $logFile);
}
function rotateLogs($logFile) {
$archiveDir = 'logs_archive/';
if (!is_dir($archiveDir)) {
mkdir($archiveDir);
}
$timestamp = time();
rename($logFile, $archiveDir . $logFile . '_' . $timestamp);
}
?>
Funkcja logError()
zapisuje komunikat do pliku `error.log`. Funkcja rotateLogs()
tworzy archiwum logów w katalogu `logs_archive/`.
Ten kod wywoła funkcję logError()
, zapisując komunikat do pliku logu.
Ten przykład pokazuje podstawy rotacji logów błędów w PHP. Zachęcamy do dalszego zgłębiania tematu, np. poprzez dodanie obsługi wielu plików logów lub bardziej zaawansowanych mechanizmów archiwizacji.