问题标签 [log4perl]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jquery - 在记录器运行时查看 Log::Log4perl 日志文件的内容
我正在使用 Perl/Mojolicious 和 JQuery 构建一个服务器客户端应用程序。服务器使用 Log::Log4perl 生成日志文件并将日志文件名发送回客户端,以便客户端可以看到进度。在客户端中,我使用常规的 HTML A 链接到日志文件:
问题是我在客户端单击“查看日志文件”,浏览器显示文件正在加载并卡住,直到服务器完成对文件的写入 - 然后我才能看到文件的内容。
我将 Log::Log4perl 配置为自动刷新并尝试使用“log4perl.appender.Syncer”,甚至将缓冲区设置为 0 或 1:log4perl.appender.Buffer 但没有任何帮助 - 我的 Log::Log4perl 配置是:
服务器更新时如何查看日志文件的内容?非常感谢,祝您度过愉快的一周,
赛义夫。
perl - log4perl 单个 conf 文件中的多个配置
我可以在一个 conf 文件中指定多个配置吗?
我已经指定了这样的东西
xml_script和addrdec2xml是 2 个独立的脚本。
当我独立运行脚本时,其他日志文件会被清理。:( 任何建议表示赞赏。我不想有多个 conf,所以请建议使用单个 conf 文件的解决方案。
perl - How can I change a log4perl appender's filters at run time?
I'v been trying to figure out if I can change an appender's filter at run-time that I've defined via a configuration file.
I'd like to change this filter from MyBoolean0
for the SCREEN
to MyBoolean1
, but do it after my program has started running.
Poking at the APPENDER_BY_NAME
hash for SCREEN
using Data::Dumper shows the following:
But mucking with this HASH seems hackish to me. Is there a better way to change an appender's filters?
perl - 跨多个模块使用根记录器
WinXP 上的 ActiveState Perl 5.12
我最近成为了 Log4perl 的转换者,并成功地使用了它,我为构成我的应用程序的每个模块定义了一个特定的记录器。例子:
上传.pm-----
这可行,但很难跨大量日志文件跟踪程序流,例如 Upload.log 、 Parse.log 、 FileRead.log 等。快速-n-dirty 解决方案:在所有记录器中使用相同的文件名。这效果要好得多,但前提是程序是按顺序连续使用的。
现在对于皱纹 - 假设模块 Upload.pm 被几个程序使用,即 readMyFiles.pl、readHerFiles.pl 和 dumpAllFiles.pl。运行 readMyFiles.pl 时,我希望 Upload.pm 中的记录器写入 readMyFiles.pl.log,运行时 dumpAllFiles.pl 希望 Upload.pm 中的记录器写入 dumpAllFiles.pl.log
一种方法可能是在我的 .pl 文件中声明我们的 变量 $logFileName 并在我的所有模块中使用它,如下所示:
另一个可能是从我的 .pm 中删除所有记录器并仅在 .pl 中定义它们 - 但是我将如何在 .pm 中引用 $logger ?
感谢所有想法和建议。
仍在学习的史蒂夫
perl - 如何使用 log4perl 将 FATAL 事件记录到单独的文件中
我正在使用log4perl,我想在单独的文件中记录所有 FATAL 事件。
这是我的脚本:
这是我的配置文件:
我期望通过此设置,文件log4perl_fatal.log
将仅获得 FATAL 级别的事件。但这是我在运行脚本后得到的:
为什么我会收到 INFO 级别的事件log4perl_fatal.log
?
如何在单独的文件中仅记录 FATAL 级别的事件?
PS 这是一个带有此脚本和配置的GitHub 存储库。
perl - 如何使用 log4perl 模块将我自己的后缀添加到在 Perl 中轮换的日志文件中?
下面的代码是这样的:每当日志文件大小超过 5 MB 时,创建一个名为 , 等的新日志logfile.log.1
文件logfile.log.2
。
但是如何logfile_20140530_15_31.log
使用log4perl模块创建我们自己的日志文件名?
perl - 在子程序中使用 Log4Perl?
如果我在内部使用 Log4Perl 创建一个抽象函数,那么它将输出行所在的行号$logger->error_die($m)
,而不是fatalError()
函数所在的位置。
在 Bash 中,我通过在每条错误消息的末尾写入来解决问题,并在病房后解析 Bash 脚本以替换为唯一数字。这样我就知道错误输出的确切位置。但是,让第二个脚本修改您的源代码并不是最佳选择。[###]
[###]
问题
有没有办法必须Log4Perl
写下调用我的函数的行号fatalError()
,或者应该如何解决问题?
perl - Log::Log4Perl 屏幕记录器在创建文件记录器后停止工作
我有一个 Perl 程序,其中我必须让一组消息进入屏幕(stdout),另一组进入文件。我为每个输出创建了两个记录器:首先是屏幕记录器,然后是文件记录器。当我创建并使用屏幕记录器时,屏幕上会出现消息。创建文件记录器后,使用屏幕记录器打印的消息不再出现在屏幕上。但是,当使用文件记录器时,文件中会出现消息。
记录器的 Log::Log4Perl 配置如下:
我已经通过代码跟踪,检查了返回值,但仍然没有发现问题可能是什么。关于问题可能由什么引起的建议(或此时的答案)将不胜感激。
提前致谢...
==================================================== =================
环境信息:我在 Windows 7 和 8 上使用 Perl v5.16.3。指令和包含如下:
multithreading - Perl 错误与 Log::Log4perl::Appender::File
我正在尝试在 Perl 的帮助下构建应用程序。该应用程序由perlThread::Pool
和包组成。Log4Perl
当我排除包Thread::Pool
日志记录工作时。但是当我包含它时,它给了我如下错误:
工作代码:
但是,如果我将评论删除为
它给出了上述错误
发生这种情况的确切原因是什么?如何避免这个错误?