package FooClass; use strict; use warnings; use Sys::Syslog qw( :DEFAULT setlogsock ); BEGIN { setlogsock( 'unix' ); openlog( 'IPScan', 'pid', 'local6' ); } END { closelog() } sub new { my $invocant = shift; my $class = ref( $invocant ) || $invocant; my %args = @_; my $self = bless { %args }, $class; syslog( 'info', "blah blah blah" ); return $self; } sub foobar { my $self = shift; syslog( 'info', 'foobarred' ); # do stuff } 1;