svetho has asked for the wisdom of the Perl Monks concerning the following question:
Hi Monks
I'm writing a module to have log messages written to a file (you may recall (or scroll down to) my other message below).
Now, everything's working fine but it would be somewhat cool if I could find out which package my log functions were called from to get log entries a la carp() or croak().
I know that there's __PACKAGE__ but that only gives me my own package.
Example:
package Logalizer::Output; use Logalizer::Log4Logalizer; # a lot of code sub doSomething { Logalizer::Log4Logalizer::logInfo ("This goes straight to the log +file."); }
Now, it would be nice if I could have log messages like:
[Sun Jul 31 12:03:30 2005] (in Logalizer::Output): This goes straight +to the log file.
or even:
[Sun Jul 31 12:03:30 2005] (in Logalizer::Output::doSomething()): This + goes straight to the log file.
I have a hunch that the Symbol modul might have something to offer but I have no clue how to implement that.
Any suggestions?
Thanks in advance!
SveTho
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: Finding out calling package
by BrowserUk (Patriarch) on Jul 31, 2005 at 10:28 UTC | |
by svetho (Beadle) on Jul 31, 2005 at 10:52 UTC |
Back to
Seekers of Perl Wisdom