NAME Test::Rsyslog - Creates a temporary instance of rsyslog to run tests against VERSION Version 0.03 SYNOPSIS my $rsyslog = Test::Rsyslog->new(); Sys::Syslog::setlogsock({ type => 'unix', path => $rsyslog->socket_path() }); # or "Sys::Syslog::setlogsock('unix', $rsyslog->socket_path());" for older Sys::Syslogs Sys::Syslog::openlog('program[' . $$ . ']','cons','LOG_LOCAL7'); Sys::Syslog::syslog('info|LOG_LOCAL7','This is a test message'); Sys::Syslog::closelog(); $rsyslog->stop(); # Flush messages to the disk ok($rsyslog->find('This is a test message'), 'Rsyslog is okay'); $rsyslog->start(); # Ready for the next test DESCRIPTION This module allows easy creation and tear down of a rsyslog instance. When the variable goes out of scope, the rsyslog instance is torn down and the file system objects it relies on are removed. SUBROUTINES/METHODS new This method will setup and start the rsyslog instance. It currently has no parameters, but this may change in response to feature requests socket_path This method returns that path to the UNIX file system socket that is connected to the current running instance of rsyslog find($string) This method searches the existing logs that rsyslog has processed to see if a message has been found matching $string. It will return a list of every line in the log file that matches $string. start This method starts the rsyslog instance stop This method stops the rsyslog instance DIAGNOSTICS Failed to open %s for reading There has been a file system error trying to read from the rsyslog logfile. Failed to print to %s There has been a file system error trying to write to the rsyslog configuration file. Failed to fork The operating system was unable to fork a subprocess for use by the rsyslog daemon. Failed to rmdir %s There has been a file system error trying to remove the temporary directory. Failed to unlink %s There has been a file system error trying to unlink a temporary file Failed to close %s There has been a file system error trying to close a temporary file Failed to mkdir %s There has been a file system error trying to make the temporary directory Temporary rsyslog daemon is already running... The rsyslog daemon has already started CONFIGURATION AND ENVIRONMENT Test::Rsyslog requires no configuration files or environment variables. DEPENDENCIES Test::Rsyslog requires Perl 5.10 or better. INCOMPATIBILITIES None reported BUGS AND LIMITATIONS Please report any bugs or feature requests to bug-test-rsyslog at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Test-Rsyslog. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes. SUPPORT You can find documentation for this module with the perldoc command. perldoc Test::Rsyslog You can also look for information at: * RT: CPAN's request tracker (report bugs here) http://rt.cpan.org/NoAuth/Bugs.html?Dist=Test-Rsyslog * AnnoCPAN: Annotated CPAN documentation http://annocpan.org/dist/Test-Rsyslog * CPAN Ratings http://cpanratings.perl.org/d/Test-Rsyslog * Search CPAN http://search.cpan.org/dist/Test-Rsyslog/ AUTHOR David Dick, ACKNOWLEDGEMENTS LICENSE AND COPYRIGHT Copyright 2017 David Dick. This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License. See http://dev.perl.org/licenses/ for more information.