Sites


Lutece : guide développeur

L'écriture de logs

Les logs standards de Lutece

Lutece dispose de plusieurs fichiers de logs :

  • application.log contient les principaux événements de l'application : chargement des services, des plugins, etc
  • error.log contient tous les faits anormaux.

Gestion des exceptions

Toute exception doit être consignée dans un fichier log.

Les blocs catch ne doivent jamais être vides ou faire appel à  e.printStackTrace()

Exceptions non critiques

Les exceptions ne nécessitant pas l'arrêt du traitement en cours doivent être loguées de la manière suivante

catch( Exception e )
{
     AppLogService.error( e.getMessage() , e );
}

Exceptions critiques

Les exceptions nécessitant l'arrêt du traitement (exemples : erreur SQL, problème d'accès fichier, ...) doivent lever une exception dérivée de  LuteceException ( PhysicalExceptionClientException ...). La classe  LuteceException réalise elle-même l'écriture dans les logs. Le traitement du bloc catch sera alors réalisé de la manière suivante :

catch( Exception e )
{
     throw new AppException( e.getMessage() , e );
}

Exceptions applicatives

Les exceptions applicatives, telles que  UserActionException , sont les seules qui ne nécessitent pas d'être loguées car elles correspondent à un cas normal d'exécution de l'application.

 

Loggers spécifiques

Certaines applications ou certains services peuvent avoir recours à un logger spécifique. Cette pratique n'est pas recommandée dans la majorité des cas car elle requiert de modifier de manière spécifique la configuration des appenders dans le fichier  WEB-INF/conf/config.properties.

Il y a une erreur de communication avec le serveur Booktype. Nous ne savons pas actuellement où est le problème.

Vous devriez rafraîchir la page.