Laravel est un framework de développement PHP très populaire. Sa flexibilité et ses fonctions puissantes sont privilégiées par la majorité des développeurs. Dans le processus de développement d'applications, l'enregistrement des journaux est une tâche très importante, qui peut aider les développeurs à localiser et à résoudre rapidement les problèmes. Cet article explique comment écrire des journaux dans Laravel.
Les informations de configuration du journal dans Laravel sont stockées dans le fichier logging.php dans le répertoire de configuration. Le pilote de journal par défaut et le canal de journal sont définis dans ce fichier.
Vous pouvez personnaliser le pilote de journal et le canal de journal selon vos besoins. Les types de pilotes de journaux les plus courants comprennent : un fichier unique et un fichier journal quotidien. Parmi eux, le mode fichier unique enregistre tous les journaux dans un seul fichier, tandis que le mode fichier journal quotidien crée un nouveau fichier journal basé sur la date de chaque jour.
Après avoir sélectionné le type de pilote de journal dans le fichier de configuration, nous devons également configurer le canal Log à utiliser lors de l'enregistrement des journaux dans l'application.
Laravel fournit une Log Facade, qui fournit une méthode d'enregistrement des journaux, nous permettant d'enregistrer facilement les informations des journaux dans des fichiers journaux. Utilisez directement Log::
pour appeler Log Facade et utilisez info()
ou debug()
pour enregistrer les informations du journal. Comme indiqué ci-dessous : Log::
来调用 Log Facade,使用 info()
或者 debug()
记录日志信息即可。如下所示:
use IlluminateSupportFacadesLog; // 记录 Info 级别的日志信息 Log::info('This is an info level message.'); // 记录 Debug 级别的日志信息 Log::debug('This is a debug level message.');
可以在日志配置文件中定义不同的 Log channel,并设置不同的处理器(Handlers),以便将日志信息存储到不同的位置。
如下所示:
use IlluminateSupportFacadesLog; // 使用 MyLog 通道记录 Info 级别的日志信息 Log::channel('MyLog')->info('This is an info level message.'); // 使用 MyLog 通道记录 Debug 级别的日志信息 Log::channel('MyLog')->debug('This is a debug level message.');
Monolog 是 PHP 中的一款强大的日志工具,Laravel 使用 Monolog 作为其日志组件。Monolog 提供了多种处理器和格式器,允许我们对日志进行更加细致的配置。
在 Laravel 中,我们可以使用 Monolog 来处理并记录日志信息。Laravel 通过容器绑定实现了 Monolog 的封装。我们可以通过容器绑定自定义 Monolog 实例,并命名每个实例,以便在应用程序中引用它。
如下所示,我们可以在 AppServiceProvider
中绑定一个新的 Monolog 实例:
use MonologLogger; use MonologHandlerStreamHandler; public function register() { $this->app->bind('myLogger', function () { $log = new Logger('myLog'); $log->pushHandler(new StreamHandler(storage_path('logs/myLog.log')), Logger::INFO); return $log; }); }
然后,在应用程序中使用该实例记录日志信息。如下所示:
use IlluminateSupportFacadesLog; Log::channel('myLogger')->info('This is an info level message.');
除了使用默认的日志配置文件,我们还可以使用自定义的日志配置文件来配置 Monolog。如下所示,在自定义日志配置文件中使用 Monolog 的 addRecord()
方法添加日志信息:
use MonologLogger; return [ 'myLog' => [ 'driver' => 'monolog', 'level' => 'debug', 'handler_with' => [ [ 'handler' => StreamHandler::class, 'options' => [ 'level' => Logger::INFO, 'stream' => storage_path('logs/mylog.log'), 'bubble' => true ] ] ], 'tap' => [MyLogChannel::class] ] ];
需要注意,这里的 tap
rrreee
Monolog est un puissant outil de journalisation en PHP et Laravel utilise Monolog comme composant de journalisation. Monolog fournit une variété de processeurs et de formateurs, nous permettant de configurer les journaux plus en détail.
🎜Dans Laravel, nous pouvons utiliser Monolog pour traiter et enregistrer les informations du journal. Laravel implémente l'encapsulation Monolog via la liaison de conteneur. Nous pouvons personnaliser les instances Monolog via la liaison de conteneur et nommer chaque instance afin de pouvoir la référencer dans notre application. 🎜🎜Comme indiqué ci-dessous, nous pouvons lier une nouvelle instance Monolog dansAppServiceProvider
: 🎜rrreee🎜Ensuite, utilisez cette instance pour enregistrer les informations de journal dans l'application. Comme indiqué ci-dessous : 🎜rrreee🎜En plus d'utiliser le fichier de configuration de journal par défaut, nous pouvons également utiliser un fichier de configuration de journal personnalisé pour configurer Monolog. Comme indiqué ci-dessous, utilisez la méthode addRecord()
de Monolog pour ajouter des informations de journal dans le fichier de configuration du journal personnalisé : 🎜rrreee🎜Il convient de noter que le tap
ici est configuré comme un instance de canal de journal personnalisée. Nous devons enregistrer l'instance auprès de l'application afin qu'elle puisse être utilisée pour enregistrer les informations de journalisation. 🎜🎜🎜Résumé🎜🎜🎜Dans Laravel, la journalisation est une tâche nécessaire au développement d'applications. En configurant le fichier de configuration du journal et en utilisant Log Facade et Monolog, nous pouvons facilement enregistrer les informations du journal et les traiter. 🎜🎜Bien sûr, nous présentons ici uniquement la méthode la plus élémentaire d'écriture de journaux dans Laravel. Si vous avez besoin d'une compréhension plus approfondie, vous pouvez consulter la documentation officielle de Laravel ou rechercher des informations pertinentes. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!