X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FDXDebug.pm;h=3ab7c77084693ec3ff41bbfae672a800fba90ddb;hb=a13f69ce9f26ea2b95be1e6de1f14f50ab7065d8;hp=fcc60b86ded201972dbe8b9d7c7dd74a03f8b4ad;hpb=3b73a2dde8b378db6b56438699c5a1f233194dbf;p=spider.git diff --git a/perl/DXDebug.pm b/perl/DXDebug.pm index fcc60b86..3ab7c770 100644 --- a/perl/DXDebug.pm +++ b/perl/DXDebug.pm @@ -25,10 +25,11 @@ package DXDebug; use 5.10.1; +use warnings; require Exporter; @ISA = qw(Exporter); -@EXPORT = qw(dbginit dbg dbgadd dbgsub dbglist dbgdump isdbg dbgclose dbgtrace confess croak cluck carp); +@EXPORT = qw(dbginit dbg dbgadd dbgsub dbglist dbgdump isdbg dbgclose dbgtrace dbgprintring dbgsetcat confess croak cluck carp); use strict; use vars qw(%dbglevel $fp $callback $cleandays $keepdays $dbgringlth); @@ -69,12 +70,12 @@ if (!defined $DB::VERSION) { exit(-1); } sub carp { - DXDebug::dbgprintring(25) if DXDebug('nologchan'); + DXDebug::dbgprintring(5) if DXDebug::isdbg('nologchan'); # DXDebug::dbg(Carp::shortmess(\@_)); DXDebug::longmess(\@_); } sub cluck { - DXDebug::dbgprintring(25) if DXDebug('nologchan'); + DXDebug::dbgprintring(5) if DXDebug::isdbg('nologchan'); # DXDebug::dbg(Carp::longmess(\@_)); DXDebug::longmess(\@_); } ); @@ -104,7 +105,7 @@ sub dbgtrace last if $pkg =~ /Mojo/; # say "*** in dbgtrace $i after mojo"; $_isdbg = 'trace'; - dbg("Stack ($i): $pkg::$subr in $fn line: $l"); + dbg("Stack ($i): ${pkg}::$subr in $fn line: $l"); } $_isdbg = ''; } @@ -135,6 +136,7 @@ sub dbg sub dbginit { + my $basename = shift || 'debug'; $callback = shift; # add sig{__DIE__} handling @@ -161,7 +163,7 @@ sub dbginit } } - $fp = DXLog::new('debug', 'dat', 'd'); + $fp = DXLog::new($basename, 'dat', 'd'); dbgclearring(); } @@ -296,6 +298,12 @@ sub dbgclean } } +# force a category for the next (unconditional) dbg message (replace (*) with ()) +sub dbgsetcat +{ + $_isdbg = shift; +} + 1; __END__