perl でいくつかのメッセージをログに記録する際に問題があります。シンプルなログパッケージを作成しました。私はまだファイルの最初の行だけを取得しています。ファイルへの追加が機能していないようです。何か案は?
そのスクリプトを何度も実行しても、出力ログ ファイルに変更はありません。常に「何か」が書かれているだけです。その「somethingElse」を出力ファイルに追加する必要があります。ログに何か間違いがありますか?
package Logger;
sub new {
my $package = shift;
my $self = {};
bless $self , $package;
$self->initialize(@_);
return $self;
}
sub initialize {
my $self = shift;
$self->{logfile} = shift;
return;
}
sub logger {
my $self = shift;
my $message = shift;
my (undef,$script, $line) = caller;
open(LOG, ">>$self->{logfile}");
print LOG substr(scalar localtime(),4,15), " ", $message, "\n";
close(LOG);
return;
}
my $log = Logger->new('/usr/local/logs/test.log');
$log->logger("something");
$log->logger("somethingElse");
ありがとうございました