stas 2003/05/14 00:14:16
Modified: src/docs/2.0/api/Apache Log.pod
Log:
improving the manpage
Revision Changes Path
1.3 +81 -38 modperl-docs/src/docs/2.0/api/Apache/Log.pod
Index: Log.pod
===================================================================
RCS file: /home/cvs/modperl-docs/src/docs/2.0/api/Apache/Log.pod,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- Log.pod 14 May 2003 06:08:44 -0000 1.2
+++ Log.pod 14 May 2003 07:14:16 -0000 1.3
@@ -9,6 +9,10 @@
#in startup.pl
#-------------
use Apache::Log;
+
+ use Apache::Const -compile => qw(OK :log);
+ use APR::Const -compile => qw(:error SUCCESS);
+
my $s = Apache->server;
$s->log_error("server: log_error");
@@ -25,6 +29,13 @@
#in a handler
#------------
use Apache::Log;
+
+ use strict;
+ use warnings FATAL => 'all';
+
+ use Apache::Const -compile => qw(OK :log);
+ use APR::Const -compile => qw(:error SUCCESS);
+
sub handler{
my $r = shift;
$r->log_error("request: log_error");
@@ -43,13 +54,15 @@
$r->log_rerror(Apache::LOG_MARK, Apache::LOG_DEBUG,
APR::ENOTIME, "in debug");
- $s->log_serror(Apache::LOG_MARK, Apache::LOG_INFO, 0,
- "server info");
+ $s->log_serror(Apache::LOG_MARK, Apache::LOG_INFO,
+ APR::SUCESS, "server info");
$s->log_serror(Apache::LOG_MARK, Apache::LOG_ERR,
APR::ENOTIME, "fatal error");
$s->warn('routine server warning');
+
+ return Apache::OK;
}
@@ -58,67 +71,80 @@
C<Apache::Log> provides the Perl API for Apache logging methods.
+Depending on the the current C<LogLevel> setting, only logging with
+the same log level or higher will be loaded. For example if the
+current C<LogLevel> is set to I<warning>, only messages with log level
+of the level I<warning> or higher (I<err>, I<crit>, I<elert> and
+I<emerg>) will be logged. Therefore this:
+ $r->log_rerror(Apache::LOG_MARK, Apache::LOG_WARNING,
+ APR::ENOTIME, "warning!");
+will log the message, but this one won't:
-=head1 Constants
+ $r->log_rerror(Apache::LOG_MARK, Apache::LOG_INFO,
+ APR::ENOTIME, "just an info");
-The following constants (sorted from the most severe level to the
-least severe) are used in logging methods to specify the log level at
-which the message should be logged:
+It will be logged only if the server log level is set to I<info> or
+I<debug>. C<LogLevel> is set in the configuration file, but can be
+changed using the
+C<L<$s-E<gt>loglevel()|docs::2.0::api::Apache::Server/C_loglevel_>>
+method.
-=over
+The filename and the line number of the caller are logged only if
+C<Apache::LOG_DEBUG> is used (because that's how Apache 2.0 logging
+mechanism works).
-=item * C<Apache::LOG_EMERG>
-=item * C<Apache::LOG_ALERT>
+=head1 Constants
-=item * C<Apache::LOG_CRIT>
+Log level constants can be compiled all at once:
-=item * C<Apache::LOG_ERR>
+ use Apache::Const -compile => qw(:log);
-=item * C<Apache::LOG_WARNING>
+or individually:
-=item * C<Apache::LOG_NOTICE>
+ use Apache::Const -compile => qw(LOG_DEBUG LOG_INFO);
-=item * C<Apache::LOG_INFO>
+=head2 LogLevel Constants
-=item * C<Apache::LOG_DEBUG>
+The following constants (sorted from the most severe level to the
+least severe) are used in logging methods to specify the log level at
+which the message should be logged:
-=back
+=head3 C<Apache::LOG_EMERG>
-For example if the current C<LogLevel> is set to I<warning>, only
-messages with log level of the level I<warning> or higher (I<err>,
-I<crit>, I<elert> and I<emerg>) will be logged. Therefore this:
+=head3 C<Apache::LOG_ALERT>
- $r->log_rerror(Apache::LOG_MARK, Apache::LOG_WARNING,
- APR::ENOTIME, "warning!");
+=head3 C<Apache::LOG_CRIT>
-will log the message, but this one won't:
+=head3 C<Apache::LOG_ERR>
- $r->log_rerror(Apache::LOG_MARK, Apache::LOG_INFO,
- APR::ENOTIME, "just an info");
+=head3 C<Apache::LOG_WARNING>
-It will be logged only if the server log level is set to I<info> or
-I<debug>. (either in the configuration file or using the
-C<$s-E<gt>loglevel()> method.)
+=head3 C<Apache::LOG_NOTICE>
-The filename and the line number of the caller are logged only if
-C<Apache::LOG_DEBUG> is used (because that's how Apache 2.0 logging
-mechanism works).
+=head3 C<Apache::LOG_INFO>
+
+=head3 C<Apache::LOG_DEBUG>
-Other constants:
+Make sure to compile the APR status constants before using them. For
+example to compile C<APR::SUCESS> and all the APR error status
+constants do:
-=over
+ use APR::Const -compile => qw(:error SUCCESS);
-=item * C<Apache::LOG_LEVELMASK>
+
+=head2 Other Constants
+
+=head3 C<Apache::LOG_LEVELMASK>
used to mask off the level value, to make sure that the log level's
value is within the proper bits range. e.g.:
$loglevel &= LOG_LEVELMASK;
-=item * C<Apache::LOG_TOCLIENT>
+=head3 C<Apache::LOG_TOCLIENT>
used to give content handlers the option of including the error text
in the C<ErrorDocument> sent back to the client. When
@@ -138,14 +164,31 @@
$r->notes->get("error-notes");
-Remember that client generated text streams sent back to the client
+Remember that client-generated text streams sent back to the client
MUST be escaped to prevent CSS attacks.
-=item * C<Apache::LOG_STARTUP>
+=head3 C<Apache::LOG_STARTUP>
+
+is useful for startup message where no timestamps, logging level is
+wanted. For example:
+
+ $s->log_serror(Apache::LOG_MARK, Apache::LOG_INFO,
+ APR::SUCCESS, "This log message comes with a header");
+
+Will print:
+
+ [Wed May 14 16:47:09 2003] [info] This log message comes with a header
+
+whereas, when C<Apache::LOG_STARTUP> is binary ORed as in:
+
+ $s->log_serror(Apache::LOG_MARK, Apache::LOG_INFO|Apache::LOG_STARTUP,
+ APR::SUCCESS, "This log message comes with no header");
+
+then the logging will be:
+
+ This log message comes with no header
-is set only during the startup.
-=back
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]