Explication détaillée de la façon dont le framework Yii implémente la journalisation dans des fichiers personnalisés

*文
Libérer: 2023-03-19 07:34:01
original
1552 Les gens l'ont consulté

Comment le framework Yii enregistre-t-il les journaux dans des fichiers personnalisés ? Cet article présente principalement la méthode d'enregistrement des journaux dans des fichiers personnalisés dans le framework Yii et analyse les principes de la journalisation du framework Yii et les compétences de configuration et de mise en œuvre associées de la journalisation personnalisée sous forme d'exemples. Les amis dans le besoin peuvent s'y référer. J'espère que cela aide tout le monde.

L'exemple de cet article décrit comment le framework Yii implémente la journalisation dans un fichier personnalisé. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

Par défaut, Yii::log($msg, $level, $category) enregistrera le journal dans le fichier runtime/application.log

Le format du journal est la suivante :

[Heure] - [Niveau] - [Catégorie] - [Contenu]

2013/05/03 17:33:08 [error] [application] test
Copier après la connexion

Mais parfois il est nécessaire de mettre certains logs dans des fichiers spécifiques, tels que les transactions. Les journaux d'échecs doivent être enregistrés séparément des autres journaux.

Ceci peut être résolu en configurant différents CLogRouter dans Yii.

Vous devez d'abord comprendre le mécanisme de journalisation de Yii. La fonction de journalisation de Yii se compose de deux parties : CLogger et CLogRouter

CLogger est responsable de l'enregistrement des données de journal en mémoire, tandis que CLogRouter décide comment les traiter. logs Données, telles que l'enregistrement dans des fichiers ou des bases de données, ou l'envoi d'e-mails, etc.

Parmi eux, CFileLogRoute est utilisé pour traiter les données de journal sous forme de fichiers. Alors naturellement, les journaux peuvent être enregistrés dans différents fichiers journaux en configurant différents CFileLogRoutes.

La configuration spécifique est la suivante :

'log' => array(
  'class' => 'CLogRouter',
  'routes' => array(
    array(
      'class' => 'CFileLogRoute',
      'levels' => 'error, warning',
    ),
    array(
      'class' => 'CFileLogRoute',
      'levels' => 'error, warning',
      'categories'=> 'orders.*',
      'logFile'=> 'orders.log',
    ),
Copier après la connexion

Là où les erreurs de commande doivent être enregistrées, ajoutez le code suivant :

Yii::log('your message', 'error', 'orders');
Copier après la connexion

Connexe recommandé :

Explication détaillée des propriétés dans Yii

Explication détaillée des propriétés liées à YII requête

Formulaire dans le framework Yii

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal