spatie/laravel-log-dumper

一个将任何内容输出到日志的功能

1.5.0 2024-02-28 10:17 UTC

This package is auto-updated.

Last update: 2024-09-02 10:57:38 UTC


README

Latest Version on Packagist run-tests Total Downloads

此包包含一个名为 ld 的函数。您传递给它的任何参数都将输出到日志。您可以传递任何类型的值给它。

ld('a string', ['an array'], new Class());

底层,使用 Symfony 的 VarDumper 创建字符串表示形式。

支持我们

我们投入了大量资源来创建 一流的开放源代码包。您可以通过 购买我们的付费产品之一 来支持我们。

我们非常感谢您从家乡寄来明信片,并提及您正在使用我们哪些包。您可以在 我们的联系页面 上找到我们的地址。我们将所有收到的明信片发布在我们的 虚拟明信片墙上

安装

您可以通过 composer 安装此包

composer require spatie/laravel-log-dumper

用法

您可以将任何变量传递给 ld

ld('a string', ['an array'], new Class());

所有参数都将转换为字符串,并使用 info 级别写入应用程序日志。

使用其他日志级别

如果您想使用其他日志级别,只需在 ld 上调用您想要的方法即可。您可以传递任何类型的参数和任何数量的参数。它们都将被记录。

// logs using the `error` level
ld()->error('a string', ['an array'], new Class())

当然,您可以将不同的级别混合使用。

ld()
   ->debug('Debug info', ['an array'])
   ->error('Error info', new Class);

启用和禁用日志记录

您可以通过调用 disable 来禁用日志记录。

ld('foo'); // will be logged

ld()->disable();

ld('bar'); // will not be logged

ld()->enable();

ld('baz'); // will be logged

您可以将布尔值传递给 enable。这当您只想记录循环的一次迭代时很有用。

foreach (range(1, 3) as $i) {
   // only things in the third iteration will be logged
   ld()->enable($i === 3);

   ld('we are in the third iteration');
}

记录查询

您可以使用 logQueries 记录所有查询。

ld()->logQueries(); // all queries after this call will be logged

如果您希望停止记录查询,请调用 stopLoggingQueries

ld()->stopLoggingQueries(); // all queries after this call will not be logged anymore

除了手动启动和停止监听查询外,您还可以将闭包传递给 logQueries。只有闭包内部执行的查询将被记录。

ld()->logQueries(function() {
    $this->mailAllUsers(); // all queries executed in this closure will be logged
});

User::get(); // this query will not be logged

测试

composer test

变更日志

请参阅 CHANGELOG 了解最近更改的详细信息。

贡献

请参阅 CONTRIBUTING 了解详细信息。

安全性

如果您发现有关安全性的问题,请通过电子邮件 security@spatie.be 发送,而不是使用问题跟踪器。

鸣谢

许可证

MIT 许可证 (MIT)。请参阅 许可证文件 了解更多信息。