【发布时间】:2017-05-26 10:09:52
【问题描述】:
来自 Laravel 的所有日志都进入 storage/logs。不幸的是,我无权访问此目录。我什至无法检查是否有任何文件或阅读它们。我只能请求不会给我这些文件的日志。我会得到 error_log、acces_log 等,但不会得到 Laravel 日志。
有没有办法强制 laravel 对任何日志/异常使用 error_log($message)?
【问题讨论】:
来自 Laravel 的所有日志都进入 storage/logs。不幸的是,我无权访问此目录。我什至无法检查是否有任何文件或阅读它们。我只能请求不会给我这些文件的日志。我会得到 error_log、acces_log 等,但不会得到 Laravel 日志。
有没有办法强制 laravel 对任何日志/异常使用 error_log($message)?
【问题讨论】:
laravel 日志有四种可用设置:“single”、“daily”、“syslog”、“errorlog”;
您可以在 /project_root/config/app.php 或 .env 上更改它
我认为如果你设置 'log' => "syslog" 会解决你的问题。
【讨论】:
您可以使用laravel-log-viewer。
composer require rap2hpoutre/laravel-log-viewer
在 providers 部分的 config/app.php 中添加服务提供者
Rap2hpoutre\LaravelLogViewer\LaravelLogViewerServiceProvider::class,
在您的网络路由文件中添加一个路由:
Route::get('logs', '\Rap2hpoutre\LaravelLogViewer\LogViewerController@index');
转到http://myapp/logs 或其他路线
可选择将 log.blade.php 发布到 /resources/views/vendor/laravel-log-viewer/ 以进行视图自定义:
php artisan vendor:publish \
--provider="Rap2hpoutre\LaravelLogViewer\LaravelLogViewerServiceProvider" \
--tag=views
如果您在 FileViewFinder.php 错误中遇到 InvalidArgumentException,它 可能是配置缓存的问题。仔细检查安装,然后 运行 php artisan config:clear。
【讨论】: