NAME Log::Any::For::Class - Add logging to class VERSION version 0.22 SYNOPSIS use Log::Any::For::Class qw(add_logging_to_class); add_logging_to_class(classes => [qw/My::Class My::SubClass/]); # now method calls to your classes are logged, by default at level 'trace' DESCRIPTION Most of the things that apply to Log::Any::For::Package also applies to this module, since this module uses add_logging_to_package() as its backend. FUNCTIONS add_logging_to_class(%args) -> any Add logging to class. Logging will be done using Log::Any. Currently this function adds logging around method calls, e.g.: -> Class::method(...) <- Class::method() = RESULT ... Arguments ('*' denotes required arguments): * classes* => *array* Classes to add logging to. * filter_methods => *array* Filter methods to add logging to. The default is to add logging to all non-private methods. Private methods are those prefixed by "_". * logger_args => *any* Pass arguments to logger. This allows passing arguments to logger routine. * postcall_logger => *code* Supply custom postcall logger. Just like "precall_logger", but code will be called after subroutine/method is called. Code will be given a hashref argument \%args containing these keys: "args" (arrayref, a shallow copy of the original @_), "orig" (coderef, the original subroutine/method), "name" (string, the fully-qualified subroutine/method name), "result" (arrayref, the subroutine/method result), "logger_args" (arguments given when adding logging). You can use this mechanism to customize logging. * precall_logger => *code* Supply custom precall logger. Code will be called when logging subroutine/method call. Code will be given a hashref argument \%args containing these keys: "args" (arrayref, a shallow copy of the original @_), "orig" (coderef, the original subroutine/method), "name" (string, the fully-qualified subroutine/method name), "logger_args" (arguments given when adding logging). You can use this mechanism to customize logging. The default logger accepts these arguments (can be supplied via "logger_args"): * indent => INT (default: 0) Indent according to nesting level. * max_depth => INT (default: -1) Only log to this nesting level. -1 means unlimited. * log*sub*args => BOOL (default: 1) Whether to display subroutine arguments when logging subroutine entry. The default can also be supplied via environment "LOG_SUB_ARGS". * log*sub*result => BOOL (default: 1) Whether to display subroutine result when logging subroutine exit. The default can also be set via environment "LOG_SUB_RESULT". Return value: SEE ALSO Log::Any::For::Package Log::Any::For::DBI, an application of this module. HOMEPAGE Please visit the project's homepage at . SOURCE Source repository is at . BUGS Please report any bugs or feature requests on the bugtracker website When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature. AUTHOR Steven Haryanto COPYRIGHT AND LICENSE This software is copyright (c) 2013 by Steven Haryanto. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.