4
私のPerlスクリプト用のログを生成します。しかし、私がLog::Log4perlを使用している場合、どのような場合でもスクリプトによってスローされるエラーをどのようにキャプチャできますか?それをログファイルに記録する方法。現時点では、ERROR()、DEBUG()などのvariouysタグで明示的に書いているものは、ログファイルに出力される唯一のものです。Log :: Log4perlを使用してすべての予期しないエラーを記録します
Log :: Log4perlを使用してこれを行う方法はありますか。以下のコードの例では
:
use strict;
use warnings;
use Log::Log4perl qw(:easy);
Log::Log4perl->easy_init({ level => $DEBUG,
file => ">>test.log" });
my $logger = Log::Log4perl->get_logger();
$logger->fatal("This is", " fatal");
$logger->error("This is error");
$logger->warn( "This is warn");
$logger->info( "This is info");
$logger->debug("This is debug");
$logger->trace("This is trace");
my $a = 10;
my $b = $a/0;
がゼロ除算エラーは、スクリプトに記録されていません。私の元のスクリプトは、各エラーをチェックするには複雑すぎるので、stderrのエラーもログファイルに記録するものが必要です。我々は上記のサブであればブロックを入力しないとき
を参照してください。私が欲しいのは、アプリケーションを停止させるエラーが発生するたびにログを記録し、スクリプトの実行を停止したいときだけです。 – Mohit
@Mohit: '$^S'は' eval'を実行しているときにtrueを返します。 –