void CPocoLoggerTester::test_SplitterLogger()
{
    Poco::AutoPtr<Poco::ConsoleChannel> pCons(new Poco::ConsoleChannel);  
    Poco::AutoPtr<Poco::SimpleFileChannel> pFile(new Poco::SimpleFileChannel("test.log"));  
    Poco::AutoPtr<Poco::SplitterChannel> pSplitter(new Poco::SplitterChannel);  
    pSplitter->addChannel(pCons);  
    pSplitter->addChannel(pFile);  
    Poco::Logger::root().setChannel(pSplitter);  
    Poco::Logger::root().information("This is a test");
}
Example #2
0
void Plugin::setupLogger()
{
    AutoPtr<FileChannel>            pChannel(new FileChannel);
    AutoPtr<ConsoleChannel>         cConsole(new ConsoleChannel);
    AutoPtr<SplitterChannel>        pSplitter(new SplitterChannel);
    AutoPtr<PatternFormatter>       pFormatter(new PatternFormatter);
    pFormatter->setProperty("pattern", "%Y-%m-%d %H:%M:%S [%p]: %t");
    pFormatter->setProperty("times", "local");
    // We will uncomment this later. Maybe. This preventing from writing into log files
    //pSplitter->addChannel(pChannel);
    pSplitter->addChannel(cConsole);
    //pChannel->setProperty("path", "/var/log/git-keshig.log");
    //pChannel->setProperty("rotation", "5 M");
    AutoPtr<FormattingChannel> pFormatChannel(new FormattingChannel(pFormatter, pSplitter));
    Logger& log = Application::instance().logger();
    log.setLevel(Poco::Message::PRIO_DEBUG);
    log.setChannel(pFormatChannel);
}