4

如果在 log4perl 初始化时我的日志目录 ( /home/hss/Data/log/DataImport.log) 不存在,那么我会收到以下错误:

Cannot write to '/home/hss/Data/log/DataImport.log': No such file or directory

有没有办法让它自己创建目录,而我不必在我的 log.conf 文件之外的任何地方指定目录?

4

2 回答 2

1

我很确定Log::Log4perl::Appender::File不要创建任何目录。可能最简单的方法是将其子类化并file_open使用目录检测/创建代码覆盖方法,然后调用原始方法。

于 2011-02-12T18:12:58.003 回答
1

从 1.43 版开始,在 Log::Log4perl::Appender::File 中有一个名为 mkpath 的新参数,如果它在配置中设置为 true,则会创建目录。

文档 1.43:http ://search.cpan.org/dist/Log-Log4perl-1.43/lib/Log/Log4perl/Appender/File.pm

于 2017-04-28T08:10:47.297 回答