Laravel 13系でエラーログをブラウザ上で表示・検索できる「log-viewer」の導入方法
先日Laravel 13系でエラーログ設定を行ったが、このログをブラウザ上で表示・検索できるようにしたい。「log-viewer」というパッケージを導入することで希望の挙動になった。以下に導入方法をメモ。
log-viewer
公式サイト
https://log-viewer.opcodes.io/
Github
https://github.com/opcodesio/log-viewer
対応方法
log-viewerのインストール
サーバにSSH接続して以下でインストールする。
# log-viewerのインストール
podman exec \
-w 【Laravelをインストールしたディレクトリ】 \
【コンテナ名】 \
composer require opcodesio/log-viewer
設定ファイルの作成
短縮コマンドは過去記事を参照。
# 通常の場合 podman exec -w 【Laravelディレクトリ】 【コンテナ名】 php artisan log-viewer:publish --provider="Opcodes\LogViewer\LogViewerServiceProvider" # 短縮コマンドの場合 pa log-viewer:publish --provider="Opcodes\LogViewer\LogViewerServiceProvider"
この時点でブラウザから「/laravel/log-viewer」にアクセスすると以下のように表示される筈。
(必要に応じて)アクセスIP制限
サーバ側(Nginx)でアクセスIP制限をかけたい場合は過去記事参照。
Laravelで対応する場合は「/app/Providers/AppServiceProvider.php」の以下を追記もしくは変更する。
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
# ユーザーのアクション権限(認可)用を追加
use Illuminate\Support\Facades\Gate;
class AppServiceProvider extends ServiceProvider
{
/**
* Register any application services.
*/
public function register(): void
{
//
}
/**
* Bootstrap any application services.
*/
public function boot(): void
{
# log-viewer用のゲートを定義を追加
Gate::define('viewLogViewer', function ($user = null) {
$allowedIps = [
'127.0.0.1', // ローカル環境
'xxx.xxx.xxx.xxx', // 自身のIPを追加
];
return in_array(request()->ip(), $allowedIps);
});
}
}
関連記事
-
-
Laravel 13系でMailpitに対してテキスト・HTMLメールを送信する方法
Laravel 13系でMailpitに対してテキスト・HTMLメールを送信した ...
-
-
Laravel 13系でエラーログ設定と出力及び確認方法
Laravelのエラーログはデフォルト設定だと同じファイルに無制限に追記していく ...
-
-
Podmanコンテナ環境のLaravelのキャッシュクリア方法
Laravelで何らかのファイルを編集し、アップロードしてもうまく動かない場合が ...
-
-
Podmanコンテナ環境にLaravel 13系をインストールしHello Worldページ表示まで行う方法
先日Podmanコンテナ環境(PHP 8.4.25)にCodeIgniterをイ ...
-
-
Laravelのディレクトリ構造・バージョン・DB接続情報確認
Laravelで作成されているシステムに携わることがあった。しかしながら当方La ...
