php - laravel 5.2 不同任务的自定义日志文件

标签 php laravel laravel-5 logging laravel-5.2

我们可以在 Laravel 5.2 中为不同的目的创建自定义日志文件吗 像订单相关的日志条目应该在 order.log 中,对于支付相关的东西,条目应该记录在 payments.log 中

我想找到最好的 Laravel 方式。

目前我们只能更改日志文件频率(如每天、单个)或者我们可以更改日志文件的名称而不是默认名称,即 laravel.log

最佳答案

有一个简单的方法:

use Monolog\Logger;
use Monolog\Handler\StreamHandler;

$log = ['orderId' => 10,
        'description' => 'Some description'];

//first parameter passed to Monolog\Logger sets the logging channel name
$orderLog = new Logger('order');
$orderLog->pushHandler(new StreamHandler(storage_path('logs/order.log')), Logger::INFO);
$orderLog->info('OrderLog', $log);

logs/order.log 中的输出:

[2017-04-30 00:00:00] order.INFO: OrderLog {"orderId":10, "description":"Some description"} []

关于php - laravel 5.2 不同任务的自定义日志文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37809989/

相关文章:

php - 删除具有特定字段的所有条目

php - Mysql自增问题

php - 从 mysql_results 转换为 mysqli_results

excel - 如何通过 Laravel 从 Excel 中的特定单元格地址获取值

php - SQL 查询有问题。需要区分我的结果

php - Eloquent laravel : How to get a row count from a ->get()

php - Laravel excel maatwebsite 3.1 导入,excel 单元格中的日期列返回为未知格式数字。如何解决这个问题?

php - Laravel 5.4 Cashier - 弥合文档方面的差距

laravel - 不存在的模型类的 Eloquent 关系

php - 在 laravel Blade 模板中分解字符串