Log::ger::Manual::Tutorial::100_WhatIsLogging - What is logging? Why logging? Logging vs ...
version 0.032.003
Logging is recording information during run-time. You can log any kind of information for whatever purposes. Logging is most often used for debugging; you can dump internal data structures, record warn/die message along with their stack trace, or mark entering/leaving subroutines to trace the flow of program execution. Logging can also be used to show the progress of a long-running activity, to give users feedback so they know what's going on. Other uses of logging include: auditing, accounting, security monitoring, source code documentation, and so on.
To start logging with Log::ger, all you have to do is use Log::ger (or require and import) then start peppering logging statements. For example:
use Log::ger
require
import
use Log::ger; sub process_user { log_trace("Entering process_user(%s)", \@_); ... log_trace("Leaving process_user(), result=%s", $res); return $res; } log_trace("Starting program"); for my $user (@ARGV) { log_info("Processing user %s", $user); process_user($user); } log_trace("Ending program");
Compared to using a debugger (with standard features like single-stepping, breakpoints, watchpoints, etc), logging can help diagnose problems while you run an application normally in production environment, as opposed to having to stop a program and run it under the debugger. Of course, a proper debugger has its strengths too.
Compared to peppering "print" statements all over your program, logging using a framework brings the flexibility of turning on/off the statements according to the notion of level/severity (or other criteria), and redirecting where the log messages should go. On the other hand, "print" statement is simpler and does not require extra module/framework.
perlancar <perlancar@cpan.org>
This software is copyright (c) 2020, 2019, 2018, 2017 by perlancar@cpan.org.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install Log::ger::Manual, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Log::ger::Manual
CPAN shell
perl -MCPAN -e shell install Log::ger::Manual
For more information on module installation, please visit the detailed CPAN module installation guide.