Perl vient par défaut avec le module Sys::Syslog qui permet de
bénéficier des fonctions C de la librairie Syslog au sein du
language Perl :
openlog()
syslog()
closelog()
Mais le CPAN nous propose un module bien simple dans toute la tradition
de la fonction tie() : Tie::Syslog .
Ce module permet d'établir directement un lien entre un file descriptor et syslog de façon à ce que tout ce que vous pouvez écrire sur ce file descriptor dans votre programme est directement redirigé sur syslog.
Dans l'exemple qui suit, on utilise le très commun STDERR pour
cela :
use Tie::Syslog; tie *STDERR, 'Tie::Syslog','local0.err','my_program','pid','inet'; print STDERR "toto";