Log4Qt¶
Présentation¶
Dans certaines applications, il serait pratique de générer des logs "systèmes" comme le font les serveurs (apache, etc.) par exemple
2011-10-15 14:10:41.239 [] INFO Application - Lancement de l'application 2011-10-15 14:10:41.334 [] INFO Tunnels - Tunnel xmpp OK 2011-10-15 14:10:41.336 [] INFO Tunnels - Tunnel web OK 2011-10-15 14:10:44.519 [] INFO Application - Fermeture demandee 2011-10-15 14:10:44.523 [] INFO Tunnels - Tunnel web FERME 2011-10-15 14:10:49.527 [] INFO Tunnels - Tunnel xmpp FERME
Utilisation de la lib log4Qt¶
Cette lib est disponible à l'adresse suivante: http://log4qt.sourceforge.net/
- Ajout dans le .pro
#log4qt include(lib/log4qt/log4qt.pri)
- Dans le .h
#include "log4qt/ttcclayout.h" #include "log4qt/consoleappender.h" #include "log4qt/logger.h" #include "log4qt/logmanager.h" #include "log4qt/fileappender.h" #include "log4qt/helpers/datetime.h"
- Utilisation dans le .cpp (constructeur)
//ouverture du systeme de log Log4Qt::LogManager::rootLogger(); Log4Qt::TTCCLayout *p_layout = new Log4Qt::TTCCLayout(); //creation d'un layout de log p_layout->setName(QLatin1String("Layout")); p_layout->activateOptions(); // Creation d'un appender de type console // Log4Qt::ConsoleAppender *p_appender = new Log4Qt::ConsoleAppender(p_layout, Log4Qt::ConsoleAppender::STDOUT_TARGET); //Creation d'un appender de type fichier de log Log4Qt::FileAppender *p_appender = new Log4Qt::FileAppender(p_layout, "/tmp/toto.log", true, true); p_appender->setName(QLatin1String("Appender")); p_appender->activateOptions(); p_layout->setDateFormat(Log4Qt::TTCCLayout::ISO8601); // Set appender on root logger Log4Qt::Logger::rootLogger()->addAppender(p_appender);
- Utilisation dans le .cpp quand vous voulez "logguer" quelque-chose
Log4Qt::Logger::logger(QLatin1String("Application"))->info("Lancement de l'application");