UniSet
1.4.0
|
Класс для вывода отладочных сообщений называется DebugStream. Сообщения могут выводится на экран и в файл, отбираться по определённым критериям и до определённого уровня.
Для использования нужно создать свой объект класса DebugStream или использовать глобальный объект UniSetTypes::unideb. Для переключения вывода отладки в файл, используйте функцию logFile(char const *f);
Описание всех имеющихся функций находится в файле DebugStream.h на английском языке.
Функция unideb[...] по умолчанию выводит в строку дату и время. Функция unideb(...) просто выводит строку (в конец предыдущему потоку).
#include "Debug.h" #include "Configuration.h" using namespace UniSetTypes; ... unideb << "Этот текст будет выведен на экран в любом случае"; unideb.addLevel(Debug::CRIT); // показывать CRIT unideb[Debug::CRIT] << "Этот текст будет выведен при разрешении выводить сообщения уровня CRIT"; unideb.delLevel(Debug::CRIT); // больше не показывать CRIT // Отладочное сообщение будет выводиться при установленном уровне INFO или CRIT" unideb[Debug::type(Debug::INFO | Debug::CRIT)] << "Отладочное сообщение"; // Вывод многострочного сообщения unideb[Debug::INFO] << " вывод с датой и временем "; unideb(Debug::INFO) << " продолжение вывода без даты и времени " << endl;
Если вы хотите использовать отладочный вывод из критичного к времени кода, используйте следующую конструкцию:
Конфигурирование логов можно производить, при помощи файла конфигурации или через командную строку.
Например UniSetTypes::unideb настраивается в конфигурационном файле следующим образом:
<UniSetDebug name="unideb" levels="crit,warn" file=""/>
При запуске программ используйте ключ "--help" для получения подробной информации о настройке логов из командной строки