#include "Log.h" #include int main() { Log::init(); Log::info << "Hello World!"; Log::addLogfile("test.warn.log", Log::Level::warn); Log::addLogfile("test.info.log", Log::Level::info, Log::Level::info); Log::addLogfile("test.trace.log", Log::Level::debug, Log::Level::trace); // log single values only std::cout << "=== Log level trace ===" << std::endl; Log::setConsoleLogLevel(Log::Level::trace); Log::trace << "trace msg @Lvl trace"; Log::debug << "dbg msg @Lvl trace"; Log::info << "info msg @Lvl trace"; Log::note << "note msg @Lvl trace"; Log::warn << "warn msg @Lvl trace"; Log::error << "error msg @Lvl trace"; Log::fatal << "fatal msg @Lvl trace"; std::cout << "=== Log level warn ===" << std::endl; Log::setConsoleLogLevel(Log::Level::warn); Log::trace << 42; Log::debug << 42; Log::info << 42; Log::note << 42; Log::warn << 42; Log::error << 42; Log::fatal << 42; std::cout << "=== Log level fatal ===" << std::endl; Log::setConsoleLogLevel(Log::Level::fatal); Log::trace << 3.14159; Log::debug << 3.14159; Log::info << 3.14159; Log::note << 3.14159; Log::warn << 3.14159; Log::error << 3.14159; Log::fatal << 3.14159; // log streams + colors Log::setColoredOutput(true); Log::setConsoleLogLevel(Log::Level::trace); // add entry meta function Log::entryMetaFunctions.insert( Log::entryMetaFunctions.cend() - 1, [](std::ostream& os, const Log::Entry& e) -> std::ostream& { (void) e; return os << "[banana]"; } ); std::cout << "=== Log level debug ===" << std::endl; Log::trace << "trace msg @Lvl trace; " << 42 << "; " << 3.14159; Log::debug << "dbg msg @Lvl trace; " << 42 << "; " << 3.14159; Log::info << "info msg @Lvl trace; " << 42 << "; " << 3.14159; Log::note << "note msg @Lvl trace; " << 42 << "; " << 3.14159; Log::warn << "warn msg @Lvl trace; " << 42 << "; " << 3.14159; Log::error << "error msg @Lvl trace; " << 42 << "; " << 3.14159; Log::fatal << "fatal msg @Lvl trace; " << 42 << "; " << 3.14159; std::cout << "=== Log level warn ===" << std::endl; Log::setConsoleLogLevel(Log::Level::warn); Log::trace << "trace msg @Lvl warn; " << 42 << "; " << 3.14159; Log::debug << "dbg msg @Lvl warn; " << 42 << "; " << 3.14159; Log::info << "info msg @Lvl warn; " << 42 << "; " << 3.14159; Log::note << "note msg @Lvl warn; " << 42 << "; " << 3.14159; Log::warn << "warn msg @Lvl warn; " << 42 << "; " << 3.14159; Log::error << "error msg @Lvl warn; " << 42 << "; " << 3.14159; Log::fatal << "fatal msg @Lvl warn; " << 42 << "; " << 3.14159; std::cout << "=== Log level fatal ===" << std::endl; Log::setConsoleLogLevel(Log::Level::fatal); Log::trace << "trace msg @Lvl fatal; " << 42 << "; " << 3.14159; Log::debug << "dbg msg @Lvl fatal; " << 42 << "; " << 3.14159; Log::info << "info msg @Lvl fatal; " << 42 << "; " << 3.14159; Log::note << "note msg @Lvl fatal; " << 42 << "; " << 3.14159; Log::warn << "warn msg @Lvl fatal; " << 42 << "; " << 3.14159; Log::error << "error msg @Lvl fatal; " << 42 << "; " << 3.14159; Log::fatal << "fatal msg @Lvl fatal; " << 42 << "; " << 3.14159; Log::setConsoleLogLevel(Log::Level::trace); std::cout << "=== Log FileSize ===" << std::endl; Log::info << 1234 << " " << Log::FileSize(1234); Log::info << 123456 << " " << Log::FileSize(123456); Log::info << 85241 << " " << Log::FileSize(85241); Log::info << 9876543210 << " " << Log::FileSize(9876543210); Log::stop(); return 0; }