(PHP 4, PHP 5)
syslog — Erzeugt eine Meldung im System-Logging
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).
Der Parameter priority ist eine Kombination der System-Möglichkeiten und dem Level. Mögliche Werte sind:
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. |
Die zu sendende Nachricht, in der die beiden Zeichen %m durch den Fehlertext (strerror) ersetzt werden, der dem Wert errno entspricht.
Gibt bei Erfolg TRUE zurück, im Fehlerfall FALSE.
Beispiel #1 Die Verwendung von syslog():
<?php
// ö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_PERROR, LOG_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();
?>
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.