TIE :: SYSLOG

Bind een filehandle aan Syslog
Download nu

TIE :: SYSLOG Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • Perl Artistic License
  • Prijs:
  • FREE
  • Naam uitgever:
  • Broc Seib
  • Uitgever website:
  • http://search.cpan.org/~dcoppit/

TIE :: SYSLOG Tags


TIE :: SYSLOG Beschrijving

Bind een filehandle te Syslog Tie :: Syslog is een Perl-module kunt u een filehandle (alleen uitgang) te koppelen aan syslog. Dit wordt handig in het algemeen, als je wilt elke activiteit die er gebeurt op STDERR vangen en te zien dat het syslogged voor later inzage. U kunt ook een willekeurige filehandle, zeggen LOG, en stuur dingen te syslog door het afdrukken van deze filehandle. Deze module is afhankelijk van de Sys :: Syslog module om informatie daadwerkelijk te krijgen om syslog.Tie uw filehandle naar syslog met behulp van een klodder naar de filehandle. Wanneer het is niet gebonden aan de klas 'Tie :: Syslog', kunt u optioneel passeren vier argumenten die het gedrag van de output gebonden aan syslog.You bepalen eerst een voorziening en prioriteit te geven aan uw filehandle verkeer om te leiden naar de juiste kanalen in syslog. Ik stel voor de herziening van een manpage voor syslog op uw lokale systeem om te bepalen wat de faciliteiten en prioriteiten eigenlijk zijn. Toch wordt deze eerste argument opgegeven als een tekenreeks die bestaat uit de faciliteit, gevolgd door een punt, gevolgd door de prioriteit. Bijvoorbeeld, is de standaardinstelling 'local0.error'. (Let op: ik geloof 'err' Linux gebruik in plaats van 'fout'.) Als u niet beschikt over een eerste arg te geven, deze standaard is used.The tweede argument is een identificatie string. Dit is de string die shows in evey lijn van de output die syslog schrijft. U kunt deze identifier soort gebruiken om te helpen syslog lijnen die door verschillende applicaties (met verschillende id's.) Als u geen waarde voor dit argument opgeeft, krijgt standaard de naam van het lopende programma. (Dit is afgeleid van de speciale $ 0 variabele, het strippen van alles tot aan de finale verschijnen slash.) Het derde argument is een string van komma's gescheiden log speciaal op syslog. 'Pid, cons, ndelay, nowait' Huidige documentatie ondersteunt. Controleer uw lokale lijsten, zoals je waarden die slechts een deel van uw lokale systeem kan passeren. Ik stel voor het controleren van uw man-pagina's voor syslog, en misschien op zoek in je site_perl / $ archname / sys / syslog.ph voor andere dergelijke waarden. Als u niet deze derde argument passeren, dit standaard op de string 'pid', dat syslog put maakt een pid waarde op elke lijn van de uitgang gestuurd vierde argument is ofwel de string 'inet' of 'unix'. Dit wordt doorgegeven aan de Sys :: Syslog :: setlogsock () oproep naar de socket type moet worden gebruikt bij het openen van de verbinding met syslog. Als dit argument niet wordt opgegeven, is de standaard gebruikt wordt is 'inet'. Veel perl installaties hebben nog originele Sys :: Syslog die de setlogsock () routine heeft. Er is ook geen $ VERSION constant te testen in Sys :: Syslog, zodat we het symbool tafel zullen testen om te zien of de routine bestaat. Als de routine niet bestaat, dan is het vierde argument wordt stilletjes genegeerd. Ik wilde niet dat mensen nodig hebben om "de laatste" versie van perl alleen maar om dit module.Note gebruiken: U kunt nu optioneel langs een verwijzing naar een filehandle als * erg * eerste arg (vóór de 'Tie :: Syslog' zelfs ...) De * alleen * keer dat u dit zou doen is als je problemen ondervindt met behulp van uw bond filehandle met andere code die verwacht dat het oproepen zoals Fileno doen () en binmode () om te werken op deze bond filehandle. De TIEHANDLE api geeft ons geen enkele manier (die ik heb gevonden) om de toegang tot de werkelijke gebonden variabele of filehandle in dit geval te krijgen. Dus, ik heb toevlucht tot net voorbij het op als een arg rechts vooraan en gewoon op te slaan in het object. ** Er zijn problemen met THIS !!! ** Wees gewaarschuwd, die van u dit van invloed kan zijn ... SYNOPSIS gebruik Tie :: Syslog; ### ## Pass maximaal vier argumenten: ## facility.priority ( 'local0.error') ## note Linux maakt gebruik van 'err' ## identiteit ( 'my_program') ## log opties ( 'pid') ## setlogsock ( 'inet' | 'unix') ### tie * MYLOG, 'tie :: Syslog', 'local0.error', 'my_program', 'pid', 'inet'; afdrukken MYLOG "Ik maakte een fout."; ## Dit wordt syslogged printf MYLOG "Error% d", 42; ## syslog als "Error 42" untie * MYLOG; ### ## Speciaal geval: slagen voor een ref bestand glob als eerste arg. ## Dit slaat de filehandle en gebruikt deze om te bellen ## als Fileno () en binmode () etc ... ### tie * STDERR, * STDERR, 'Tie :: Syslog', 'local0.error',' uit te voeren my_app', 'pid', 'inet'; ### ## Ja, het ziet er grappig uit, maar is de enige manier ...? ### Vereisten: · Perl


TIE :: SYSLOG Gerelateerde software