Intern
Qu'est-ce que la journalisation?
sobes.tech IA
Réponse de l'IA
Le processus d'enregistrement des informations sur les événements survenant lors de l'exécution d'un programme ou du fonctionnement du système. Aide à déboguer, surveiller et analyser le fonctionnement de l'application.
Types de logs:
- Informations (info): Informations générales sur le fonctionnement.
- Débogage (debug): Informations détaillées pour rechercher des erreurs.
- Avertissements (warning): Situations pouvant conduire à des problèmes.
- Erreurs (error): Erreurs survenues qui n'ont pas interrompu l'exécution.
- Critiques (critical): Erreurs ayant entraîné l'arrêt d'une partie ou de tout le système.
Outils et approches:
- Interface de journalisation PSR-3 - standard PHP pour l'interface du journaliseur.
- Monolog - bibliothèque populaire pour la journalisation en PHP.
- Journalisation dans des fichiers, bases de données, services externes (par exemple, Sentry, ELK).
Exemple d'utilisation avec PSR-3:
<?php
use Psr\Log\LoggerInterface;
class MyClass
{
private LoggerInterface $logger;
public function __construct(LoggerInterface $logger)
{
$this->logger = $logger;
}
public function doSomething(): void
{
$this->logger->info('Début de doSomething', ['context_data' => 'value']);
try {
// ... code d'exécution
} catch (\Exception $e) {
$this->logger->error('Erreur lors de l'exécution de doSomething', [
'exception' => $e,
'user_id' => 123
]);
}
$this->logger->debug('Fin de doSomething');
}
}