Laravel Log Viewer 提供了一个基于 bootstrap 搭建,完美适配 PC、平板和移动端的日志查看后台,可自由配置访问路由、权限策略、中间件、导航链接,支持多语言和日志搜索、下载、删除
安装 larave-log-viewer
# 如果只想在开发环境安装请加上 --dev composer require gouguoyin/laravel-log-viewer
添加到服务提供者
在 config/app.php 的 providers 数组中加入
config/app.php
providers
Gouguoyin\LogViewer\LogViewerServiceProvider::class,
现在你已经可以通过访问你的域名/logs进入log-viewer后台,
你的域名/logs
如果想进行一些自定义操作
运行php artisan vendor:publish provider="Gouguoyin\LogViewer\LogViewerServiceProvider"会一次性生成
php artisan vendor:publish provider="Gouguoyin\LogViewer\LogViewerServiceProvider"
app/Providers/LogViewerServiceProvider.php 服务提供者文件
app/Providers/LogViewerServiceProvider.php
configs/log-viewer.php 配置文件
configs/log-viewer.php
resources/lang/cn/log-viewer.php 中文翻译文件
resources/lang/cn/log-viewer.php
resources/lang/en/log-viewer.php 英文翻译文件
resources/lang/en/log-viewer.php
resources/views/vendor/log-viewer 视图目录及视图文件
resources/views/vendor/log-viewer
如果只想生成指定分类文件
php artisan vendor:publish provider="Gouguoyin\LogViewer\LogViewerServiceProvider" --tag="log-viewer-config"
php artisan vendor:publish provider="Gouguoyin\LogViewer\LogViewerServiceProvider" --tag="log-viewer-provider"
php artisan vendor:publish provider="Gouguoyin\LogViewer\LogViewerServiceProvider" --tag="log-viewer-lang"
php artisan vendor:publish provider="Gouguoyin\LogViewer\LogViewerServiceProvider" --tag="log-viewer-views"
通过修改以上文件即可在不修改扩展包的基础上进行自定义操作
Log Viewer默认路由是 /logs, 默认情况下,只能在 local 环境下访问。在 app/Providers/LogViewerServiceProvider.php 文件中,有一个 gate 方法。这里授权控制 非本地 环境中的访问。 你可以根据需要随意修改此门面,以限制对 Log Viewer 的访问:
/logs
local
gate
/** * Register the log-viewer gate. * * This gate determines who can access log-viewer in non-local environments. * * @return void */ protected function gate() { Gate::define('view-logs', function ($user) { return in_array($user->email, [ // ]); }); }
Laravel会自动将 authenticated 用户注入到 gate 方法。如果你的应用程序通过其他方法(如IP限制)提供安全,那么用户可能不需要“登录”。因此,你需要将上面的 function ($user) 更改为 function ($user = null)以屏蔽身份验证。
function ($user)
function ($user = null)