Forum und email

syslog

(PHP 4, PHP 5)

syslog — Erzeugt eine Meldung im System-Logging

Beschreibung

bool syslog ( int $priority , string $message )

Die Funktion syslog() erzeugt eine Status-Meldung, die an die System-Log-Funktion weitergereicht wird.

Weitere Informationen zum benutzerdefinierten Loghandler finden Sie unter syslog.conf (5) der Unix-Manpages. Zusätzliche Informationen zu den SysLog-Möglichkeiten und -Optionen finden Sie in den Manpages zu syslog (3) (auf UNIX-Systemen).

Parameter Liste

priority

Der Parameter priority ist eine Kombination der System-Möglichkeiten und dem Level. Mögliche Werte sind:

syslog()-Prioritäten (in absteigender Reihenfolge)
Konstante Beschreibung
LOG_EMERG System ist unbrauchbar.
LOG_ALERT Aktion ist sofort erforderlich.
LOG_CRIT Kritischer Zustand.
LOG_ERR Fehler aufgetreten.
LOG_WARNING Warnung aufgetreten.
LOG_NOTICE Normale, aber wichtige Meldung.
LOG_INFO Informative Meldung.
LOG_DEBUG Debug-Level-Meldung.

message

Die zu sendende Nachricht, in der die beiden Zeichen %m durch den Fehlertext (strerror) ersetzt werden, der dem Wert errno entspricht.

Rückgabewerte

Gibt bei Erfolg TRUE zurück, im Fehlerfall FALSE.

Beispiele

Example#1 Die Verwendung von syslog():

<?php
define_syslog_variables
();
// öffne SysLog, schließe die Prozess-ID (PID) ein, sende
// die Log-Meldungen an die Standard-Fehler-Ausgabe und benutze
// einen userdefinierten Log-Mechanismus.
openlog("myScripLog"LOG_PID LOG_PERRORLOG_LOCAL0);

// etwas Code

if (authorized_client()) {
    
// mache etwas
} else {
    
// unerlaubter Client!
    // logge den Zugriff
    
$access date("Y/m/d H:i:s");
    
syslog(LOG_WARNING,"Unauthorisierter Client: $access "
        
"{$_SERVER['REMOTE_ADDR']} ({$_SERVER['HTTP_USER_AGENT']})");
}

closelog();
?>

Anmerkungen

Unter Windows-NT wird der Syslog-Dienst emuliert, indem der Ereignis-Protokolldienst genutzt wird.

Hinweis: Die Verwendung von LOG_LOCAL0 bis LOG_LOCAL7 für den Parameter facility von openlog() ist unter Windowssystemen nicht möglich.