0

我有几个 Dist::Zilla 插件,当我对 Moose 和 Dist::Zilla 都很陌生时,我编写了这些插件,我目前正在尝试更新它们以使它们更健壮,更不容易出错.

我想做的一件事是,如果我发现他们给了我矛盾或不可能的指令,就给用户反馈。像:

[ MyPlugin ]
include = all
exclude = all

Dist::Zilla 似乎有一个(未记录的)内部日志系统,我最初在编写插件时使用了该系统,但它似乎不再工作(可能是由于内部更改)。那么,这些天我应该如何给用户反馈呢?

4

1 回答 1

0

(打算把它放在评论中,但达到长度限制)。

警告:我自己只写了几个小的 dzil 插件,对它的内部结构不是很熟悉。

dzil 使用 Log::Dispatchouli,也是 rjbs 写的。Log::Dispatchouli 被其他几个项目(包括由 rjbs 以外的人启动的项目)使用,因此它不完全是一个内部 dzil 日志系统。

据我了解,Log::Dispatchouli 只有两个日志记录级别,正常和调试。调试日志通常不会在输出中看到;您必须先启用调试。如果启用静音,则可以静音正常(和调试)日志。

要在 dzil 中启用调试,请添加 -v 命令行开关。这似乎没有记录在“dzil help”和“dzil help COMMAND”中。但是 rjbs在博客上对此进行了介绍。

现在要在 dzil 插件中生成日志,只需调用 $self->log(...) 或 $self->log_debug(...)。只有当用户通过 -v 选项时才会看到第二个。

于 2013-02-07T02:32:33.077 回答