int main(void) { configureLogger(); LOG4CPP_LOGGER("::Main"); if (logger.isInfoEnabled()) logger.infoStream() << "Application start now ..."; signal(SIGTERM, shutdown_all); signal(SIGINT, shutdown_all); MyHandler handler; newkio::codec::textline::TextLineEncoder textLineEncoder; newkio::codec::textline::TextLineDecoder textLineDecoder; newkio::filters::TextLineCodecFilter textLineCodecFilter(textLineEncoder, textLineDecoder); // newkio::filters::ProtocolCodecFilter<std::string, BufferData, void*, newkio::codec::textline::Context> protocolCodecFilter(textLineEncoder, textLineDecoder); server = new newkio::uv::UVTcpServer(config); newkio::filters::LoggingFilter logging_filter; server->getFilters().push_back(&logging_filter); server->getFilters().push_back(&textLineCodecFilter); server->setHandler(handler); listen(); if (logger.isDebugEnabled()) logger.debug("server start at %d%03d", (newkio::Timestamp()).getSeconds(), (newkio::Timestamp()).getMilliSeconds()); server->runForever(); std::cout << "Exit now." << std::endl; return 0; }
void LoggingConfigurator::configureLoggers(AbstractConfiguration* pConfig) { typedef std::map<std::string, AutoPtr<AbstractConfiguration> > LoggerMap; AbstractConfiguration::Keys loggers; pConfig->keys(loggers); // use a map to sort loggers by their name, ensuring initialization in correct order (parents before children) LoggerMap loggerMap; for (AbstractConfiguration::Keys::const_iterator it = loggers.begin(); it != loggers.end(); ++it) { AutoPtr<AbstractConfiguration> pLoggerConfig(pConfig->createView(*it)); loggerMap[pLoggerConfig->getString("name", "")] = pLoggerConfig; } for (LoggerMap::iterator it = loggerMap.begin(); it != loggerMap.end(); ++it) { configureLogger(it->second); } }
/****************************************************************************** * AUTHOR : Thanigai * DATE : 29-JUL-2005 * NAME : initializeLipiEngine * DESCRIPTION : Reads the lipiengine.cfg and store the AVP map into * the map variable "m_LipiEngineConfigEntries" * ARGUMENTS : * RETURNS : 0 on success other values error * NOTES : * CHANGE HISTROY * Author Date Description of change ******************************************************************************/ int LTKLipiEngineModule::initializeLipiEngine() { //Log messages after call to configureLogger() string temp; int errorCode; if(m_strLipiRootPath == "") { LTKReturnError(ELIPI_ROOT_PATH_NOT_SET); // PATH not set } temp = m_strLipiRootPath + SEPARATOR + "projects" + SEPARATOR + LIPIENGINE_CFG_STRING; //Read the logical name mapping file from lipiengine.cfg file; try { m_LipiEngineConfigEntries = new LTKConfigFileReader(temp); } catch(LTKException e) { // display warning to the user and continue with default values cout << " Could not open file : " << temp << endl << "proceeding with defaults" << endl; } errorCode = configureLogger(); // Configure the logger if(errorCode !=SUCCESS) { LTKReturnError(errorCode); } else { LOG(LTKLogger::LTK_LOGLEVEL_DEBUG)<< "LTKLipiEngineModule::initializeLipiEngine()" << endl; } return SUCCESS; }
void LogConfigDialog::saveLogConfiguration() { QString fileExtension; QString s = QFileDialog::getSaveFileName(this, tr("Save To"), getConfigFilePath(), tr("XML(*.xml);;Text(*.txt);;All(*.*)"), &fileExtension, QFileDialog::DontUseNativeDialog); if (s.length() > 0) { if (!s.contains('.')) { if (fileExtension.compare(tr("XML(*.xml)"), Qt::CaseInsensitive) == 0) { s = s + ".xml"; } else if (fileExtension.compare(tr("Text(*.txt)"), Qt::CaseInsensitive) == 0) { s = s + ".txt"; } } setConfigFilePath(s); QFile file(s); if (!file.open(QIODevice::WriteOnly | QIODevice::Text)) { QMessageBox::warning(this, tr("ERROR"), tr("Failed to open file for writing.")); } else { QXmlStreamWriter writer(&file); if (writer.hasError()) { QMessageBox::warning(this, tr("ERROR"), tr("Failed to create output stream for writing logger.")); } else { writer.setAutoFormatting(true); SimpleLoggerADP logger; configureLogger(logger); logger.write(writer); } file.close(); } } }