syslog

(PHP 3, PHP 4 , PHP 5)

syslog -- Syslog üzenet létrehozása

Leírás

int syslog ( int prioritás, string üzenet )

A syslog() egy naplóüzenetet hoz létre, amit a rendszer naplózó rendszeren keresztül tesz közzé. A prioritás paraméter két dolog keverékéből jön, egyrészt az állapotból, másrészt a bejegyzési szintből, ennek részletezése az alant látható táblázatban látható. A másik paraméterben adható meg az üzenet konkrét szövege, amit egy az egyben továbbít, kivéve a %m karaktersor, ennek helyére az errno aktuális értékének megfelelő hibaüzenetet helyettesíti be.

Táblázat 1. syslog() prioritási szintek (csökkenő sorrendben)

KonstansLeírás
LOG_EMERGa rendszer használhatatlan
LOG_ALERTazonnali beavatkozás szükségeltetik
LOG_CRITkritikus állapot
LOG_ERRhibajellentést okozó állapot
LOG_WARNINGcsak figyelmeztetést okozó állapot
LOG_NOTICEnormál, de említésre méltó körülmény
LOG_INFOinformációs üzenet
LOG_DEBUGdebug szintű üzenet

Példa 1. A syslog() használata

<?php
define_syslog_variables
();
// syslog nyitása, processz azonosítóstól. A log
// menjen ki az alapértelmezett hibakimenetre is,
// valamint a felhasználó által definiált naplózó
// mechanizmus is kapja meg a logot
openlog("myScriptLog", LOG_PID | LOG_PERROR, LOG_LOCAL0);

// egy kis programkód

if (authorized_client()) {
    
// itt lehet csinálni valami jogosultat :)
} else {
    
// nem azonosított felhsználó!
    // a próbálkozás naplózásra kerül
    
$access = date("Y/m/d H:i:s");
    
    
syslog(LOG_WARNING, "Unauthorized client: $access $_SERVER[REMOTE_ADDR] ($_SERVER[HTTP_USER_AGENT])");
}
closelog();
?>
Saját definiálású syslog kezelő felállításához érdemes a syslog.conf(5) Unix man oldalt olvasgatni. További információ a syslog többi állapotjelző lehetőségeiről a syslog(3) man oldalon található

Windows NT alatt a syslog emulálva van, az Event Log segítségével.

Megjegyzés: Windows alatt a LOG_LOCAL0 - LOG_LOCAL7 paraméterértékek nem használhatóak.

Lásd még: define_syslog_variables(), openlog() és closelog()!