Maison > cadre php > YII > le corps du texte

Comment écrire des logs dans le framework Yii ?

angryTom
Libérer: 2020-02-05 17:59:29
original
3314 Les gens l'ont consulté

Pendant le développement, afin de nous faciliter le débogage du programme et l'enregistrement des informations, nous écrirons les informations nécessaires dans un fichier, qui est le fichier journal. Le framework Yii nous fournit une bonne méthode d'écriture des journaux. jetez un oeil ensemble.

Comment écrire des logs dans le framework Yii ?

Comment écrire des logs dans le framework yii ?

1. Pour utiliser la connexion dans Yii, vous devez d'abord modifier le fichier de configuration :

'log' => [
    'traceLevel' => YII_DEBUG ? 3 : 0,
    'targets' => [
        [
            'class' => 'yii\log\FileTarget',
            'levels' => ['error', 'warning'],
            'logVars' => ['_GET'],
        ],
    ],
],
Copier après la connexion

explication du paramètre target :

La classe ● spécifie l'utilisation de fichiers pour enregistrer les journaux

● les niveaux spécifient l'enregistrement des journaux d'erreurs et d'avertissements

● logVars spécifie l'enregistrement des paramètres d'obtention

Si logVars est non spécifié, GET POST COOKIE sera enregistré sur le SERVEUR DE SESSION et d'autres paramètres, qui affecteront notre visualisation, nous pouvons le modifier en

'logVars' => ['*'], // 只记录message
Copier après la connexion

2. Utilisez ce qui suit :

Yii::error($message);
Yii::warning($message);
Copier après la connexion

pour écrire le journal dans différents fichiers

Méthode 1 : attribuez d'abord l'adresse du fichier journal où le journal doit être enregistré, puis écrivez le journal

Yii::$app->log->targets[0]->logFile = Yii::getAlias('@runtime').DIRECTORY_SEPARATOR.'logs'.DIRECTORY_SEPARATOR.'app2.log';
Yii::warning($message);
Copier après la connexion

Méthode 2 (recommandée) : Modifier le fichier de configuration main.php

'log' => [
    'traceLevel' => YII_DEBUG ? 3 : 0,
    'targets' => [
        [
            'class' => 'yii\log\FileTarget',
            'levels' => ['error', 'warning'],
            'logVars' => ['*'],
            //'categories' => ['application'],
            //'logFile' => '@runtime/logs/app.log',
        ],
        [
            'class' => 'yii\log\FileTarget',
            'categories' => ['pay'],
            'levels' => ['error', 'warning'],
            'logVars' => ['*'],
            'logFile' => '@runtime/logs/pay.log',
        ],
        [
            'class' => 'yii\log\FileTarget',
            'categories' => ['order'],
            'levels' => ['error', 'warning'],
            'logVars' => ['*'],
            'logFile' => '@runtime/logs/order.log',
        ],
    ],
],
Copier après la connexion

Utiliser :

Yii::warning($message,'pay')
Copier après la connexion

Le message ici sera enregistré dans pay.log, et bien sûr il sera également enregistré dans les valeurs par défaut. Vous pouvez décommenter ce code dans

dans app.log : //'categories' => ['application'],, afin qu'il ne soit enregistré que dans les journaux respectifs.

Mais cela entraînera également que certaines informations d'erreur ne soient pas enregistrées dans app.log.

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:
yii
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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!