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:

  1. 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.
  2. 
     $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/`.

  3. Wywołanie funkcji: Aby użyć funkcji, wystarczy wywołać ją z odpowiednim komunikatem o błędzie.
  4. 
    
    				

    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.

Dodaj komentarz 0

Your email address will not be published. Required fields are marked *