#include <pclasses/plogplugin.h>
#include <pclasses/plog.h>
#include <pclasses/ptime.h>
#include <pclasses/pconfig.h>
#include <pclasses/pxmlconfigstore.h>
#include <iostream>
using namespace std;
using namespace P;
int main(int argc, char* argv[])
{
LoggerPluginFactory* factory = new LoggerPluginFactory();
SystemLog* syslog = new SystemLog("logtest");
Logger* consolelog = factory->create("console");
if(consolelog)
{
consolelog->start("stdout");
syslog->addLogger(consolelog);
}
Logger* filelog = factory->create("file");
if(filelog)
{
filelog->start("logging.log");
syslog->addLogger(filelog);
}
Logger* sqllog = factory->create("sql");
if(filelog)
{
sqllog->start("driver=mysql;user=bla;passwd=bla;hostname=localhost;dbname=test");
syslog->addLogger(sqllog);
}
for(int i = 0; i < 10; ++i)
(*syslog)(LOG_INFO) << "this is a test log message" << endl;
delete syslog;
if(sqllog)
factory->destroy(sqllog);
if(consolelog)
factory->destroy(consolelog);
if(filelog)
factory->destroy(filelog);
delete factory;
}