ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/AnyEvent/lib/AnyEvent/Log.pm
(Generate patch)

Comparing AnyEvent/lib/AnyEvent/Log.pm (file contents):
Revision 1.50 by root, Thu Mar 22 01:24:19 2012 UTC vs.
Revision 1.51 by root, Thu Mar 22 18:00:35 2012 UTC

6 6
7Simple uses: 7Simple uses:
8 8
9 use AnyEvent; 9 use AnyEvent;
10 10
11 AE::log fatal => "no config found, cannot continue"; # never returns
12 AE::log alert => "the battery died";
13 AE::log crit => "the battery temperature is too hot";
14 AE::log error => "division by zero attempted";
15 AE::log warn => "couldn't delete the file";
16 AE::log note => "wanted to create config, but config already exists";
17 AE::log info => "file soandso successfully deleted";
18 AE::log debug => "the function returned 3";
11 AE::log trace => "going to call function abc"; 19 AE::log trace => "going to call function abc";
12 AE::log debug => "the function returned 3";
13 AE::log info => "file soandso successfully deleted";
14 AE::log note => "wanted to create config, but config was already created";
15 AE::log warn => "couldn't delete the file";
16 AE::log error => "failed to retrieve data";
17 AE::log crit => "the battery temperature is too hot";
18 AE::log alert => "the battery died";
19 AE::log fatal => "no config found, cannot continue"; # never returns
20 20
21Log level overview: 21Log level overview:
22 22
23 LVL NAME SYSLOG PERL NOTE 23 LVL NAME SYSLOG PERL NOTE
24 1 fatal emerg exit system unusable, aborts program! 24 1 fatal emerg exit system unusable, aborts program!
61attempt to be "the" logging solution or even "a" logging solution for 61attempt to be "the" logging solution or even "a" logging solution for
62AnyEvent - AnyEvent simply creates logging messages internally, and this 62AnyEvent - AnyEvent simply creates logging messages internally, and this
63module more or less exposes the mechanism, with some extra spiff to allow 63module more or less exposes the mechanism, with some extra spiff to allow
64using it from other modules as well. 64using it from other modules as well.
65 65
66Remember that the default verbosity level is C<3> (C<critical>), so little 66Remember that the default verbosity level is C<4> (C<error>), so only
67will be logged, unless you set C<PERL_ANYEVENT_VERBOSE> to a higher number 67errors and more important messages will be logged, unless you set
68before starting your program, or change the logging level at runtime with 68C<PERL_ANYEVENT_VERBOSE> to a higher number before starting your program
69something like: 69(C<AE_VERBOSE=5> is recommended during development), or change the logging
70level at runtime with something like:
70 71
71 use AnyEvent::Log; 72 use AnyEvent::Log;
72 $AnyEvent::Log::FILTER->level ("info"); 73 $AnyEvent::Log::FILTER->level ("info");
73 74
74The design goal behind this module was to keep it simple (and small), 75The design goal behind this module was to keep it simple (and small),
114levels 7..9 are usually meant for developers. 115levels 7..9 are usually meant for developers.
115 116
116You can normally only log a message once at highest priority level (C<1>, 117You can normally only log a message once at highest priority level (C<1>,
117C<fatal>), because logging a fatal message will also quit the program - so 118C<fatal>), because logging a fatal message will also quit the program - so
118use it sparingly :) 119use it sparingly :)
120
121For example, a program that finds an unknown switch on the commandline
122might well use a fatal logging level to tell users about it - the "system"
123in this case would be the program, or module.
119 124
120Some methods also offer some extra levels, such as C<0>, C<off>, C<none> 125Some methods also offer some extra levels, such as C<0>, C<off>, C<none>
121or C<all> - these are only valid for the methods that documented them. 126or C<all> - these are only valid for the methods that documented them.
122 127
123=head1 LOGGING FUNCTIONS 128=head1 LOGGING FUNCTIONS

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines