Maison  >  Article  >  développement back-end  >  Explication détaillée de la façon dont le framework Yii implémente la journalisation dans des fichiers personnalisés

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

*文
*文original
2018-01-03 13:32:201538parcourir

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

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',
    ),

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

Yii::log('your message', 'error', 'orders');

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!

Déclaration:
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