laravel:在运行时获取活动日志的名称

laravel:在运行时获取活动日志的名称,laravel,laravel-5,Laravel,Laravel 5,我需要知道应用程序Laravel 5中当前日志的名称 尝试在Iluminate\Log\Writer上搜索此文件 仅在调用某些函数时看到$path var,但我不知道如何获取此值 基本上,我需要压缩文件并在应用程序出现异常时发送。为此,我需要知道活动日志的名称 我的应用程序配置日志用于每日轮换,请参见日志名称,如laravel-2016-04-29。日志 我知道这个名字是用PHP写的,但我想使用Log类本身也可以知道 我认为最好的 use Carbon\Carbon; ... $carbon

我需要知道应用程序Laravel 5中当前日志的名称

尝试在
Iluminate\Log\Writer
上搜索此文件

仅在调用某些函数时看到$path var,但我不知道如何获取此值

基本上,我需要压缩文件并在应用程序出现异常时发送。为此,我需要知道活动日志的名称

我的应用程序配置日志用于每日轮换,请参见日志名称,如
laravel-2016-04-29。日志

我知道这个名字是用PHP写的,但我想使用Log类本身也可以知道

我认为最好的

use Carbon\Carbon;
...

$carbon = new Carbon();
$log    = storage_path().'/logs/laravel-'.$carbon->toDateString().'.log';

我想有一个更好的方法

几天前,我碰巧对Laravel日志进行了一点研究,可能有一个解决方案给你

Log::info('abc');

foreach (Log::getMonolog()->getHandlers() as $handler) {
    $stream = $handler->getStream();

    if ($stream) {
        $meta = stream_get_meta_data($stream);
        echo $meta['uri'] . "<br/>";
    }
}
Log::info('abc');
foreach(Log::getMonolog()->getHandlers()作为$handler){
$stream=$handler->getStream();
如果($stream){
$meta=stream\u get\u meta\u data($stream);
echo$meta['uri']。“
”; } }
这将输出已写入的日志文件的路径。
否则
getStream()
将返回
null
,因此无法如此轻松地提取路径。它存储在
Monolog\Handler\RotatingFileHandler
url
属性中,不幸的是受到了保护,因此您需要扩展此类以获得路径。

几天前我碰巧深入研究了Laravel日志记录,可能为您提供了一个解决方案

Log::info('abc');

foreach (Log::getMonolog()->getHandlers() as $handler) {
    $stream = $handler->getStream();

    if ($stream) {
        $meta = stream_get_meta_data($stream);
        echo $meta['uri'] . "<br/>";
    }
}
Log::info('abc');
foreach(Log::getMonolog()->getHandlers()作为$handler){
$stream=$handler->getStream();
如果($stream){
$meta=stream\u get\u meta\u data($stream);
echo$meta['uri']。“
”; } }
这将输出已写入的日志文件的路径。
否则
getStream()
将返回
null
,因此无法如此轻松地提取路径。它存储在
Monolog\Handler\RotatingFileHandler
url
属性中,不幸受到保护,因此您需要扩展此类以获取路径。

路由没有问题。使用
storage\u path()./logs/'
,您可以轻松获得rute。是我的名字。如果未进行任何修改,则名称符合逻辑。laravel-DATETIME.log。日期时间是本地日期格式。路线没有问题。使用
storage\u path()./logs/'
,您可以轻松获得rute。是我的名字。如果未进行任何修改,则名称符合逻辑。laravel-DATETIME.log。日期时间是本地日期格式。