7

存根 Routes.pm6 的第 13 行创建了Cro::HTTP::Log::File

我在哪里可以找到这门课的文档?例如,如果我想将日志和错误发送到同一个文件?

我尝试对 :logs 使用字符串,但出现错误。该类需要一个文件句柄。我查找了一些文档,但是否存在并不明显。

4

1 回答 1

7

不幸的是,它似乎缺乏文档。至于如何将这两种日志写入同一个文件:

  1. 通过打开文件创建文件句柄
  2. 将它传递给logs构造函数中的命名参数(它也将自动用于错误;只有errors当它们应该转到单独的文件时才需要传递)。

它看起来像:

my $logs = open "logs", :w;
my $logger = Cro::HTTP::Log::File.new(:$logs);

然后可以将其传递给Cro::HTTP::Server's after(设置中间件以在响应上运行)。

如果使用cro run,请注意它会在更改.cro.yml存在 a 的目录中的文件时自动重新启动,因此如果日志文件与服务位于同一目录中,则每次记录某些内容时可能最终会重新启动。添加一个忽略来处理这个问题。

于 2019-11-18T17:17:29.347 回答