【发布时间】:2022-01-21 14:49:44
【问题描述】:
我想更改 Mojolicious Web 服务器的默认日志记录级别,但在阅读文档后我无法弄清楚如何去做。我是一个相当新的 Perl 开发人员,因为我必须将 Perl 用于特定的遗留用例——我通常在日常工作中使用 Go、Python、Java。我认为有一些“Perl 方式”可以做到这一点,由于我缺乏经验,我无法弄清楚。
这是一个简单的示例应用程序:
#!/usr/bin/env perl
use strict;
use warnings;
use utf8;
use Mojolicious::Lite -signatures;
get '/ping' => sub ($c) {
$c->render( json => { 'pong' => $c->param('value'), 'number' => 1 } );
};
app->start( 'daemon', '-l', 'http://localhost:8888' );
我在终端中运行它,然后从另一个终端点击端点并得到响应:
curl "http://localhost:8888/ping?value=test"
{"number":1,"pong":"test"}
但是,在 Web 服务器终端中,我得到了这个跟踪级别的日志记录,据我所知,这是 Mojolicious 的默认日志记录级别:
[2022-01-21 14:38:04.40413] [1628] [info] Listening at "http://localhost:8888"
Web application available at http://localhost:8888
[2022-01-21 14:38:39.06480] [1628] [trace] [sLAkASlGAvjE] GET "/ping"
[2022-01-21 14:38:39.06516] [1628] [trace] [sLAkASlGAvjE] Routing to a callback
[2022-01-21 14:38:39.06552] [1628] [trace] [sLAkASlGAvjE] 200 OK (0.000718s, 1392.758/s)
我想将日志记录级别退回到“信息”。
【问题讨论】:
-
这将有一个 Mojo 方式。 Perl 只是编写框架的语言。Python 中的不同框架也会有不同的配置方式。没有 Perl 方法。如果有的话,then there's many ;)
-
还在项目目录中创建一个“日志”目录。您的日志将在该目录中创建,而不是在终端上。我相信你会喜欢 Mojolicious。在我的 Python 日常工作中,我有时会想念它。
-
@rai-gaurav - 感谢您的提示!
标签: perl logging mojolicious