void threadServerWorker() { try { try { auto portWorker = ini.getInt("worker.port"); if (portWorker == -1) portWorker = 8900; boost::asio::io_service m_io_service; boost::asio::ip::tcp::endpoint m_endpoint(boost::asio::ip::tcp::v4(), portWorker); auto m_serverWorker = serverWorker::server(m_io_service, m_endpoint); m_serverWorker.run(); } catch (boost::exception_ptr & e) { BOOST_LOG_TRIVIAL(fatal) << "boost fatal" << boost::diagnostic_information(e); exit(-1); } } catch (...) { BOOST_LOG_TRIVIAL(fatal) << "unknown fatal in worker thread"; exit(-1); } }
void init() { boost::log::core::get()->add_global_attribute("TimeStamp", boost::log::attributes::utc_clock()); if (ini.getInt("log.file") != -1) { boost::log::add_file_log( boost::log::keywords::file_name = ini.get("log.path"), boost::log::keywords::format = "[%TimeStamp%]: %Message%" ); } if (ini.getInt("log.display") != -1) { boost::log::add_console_log( std::cout, boost::log::keywords::format = "[%TimeStamp%]: %Message%" ); } if (ini.get("log.level") != "") { if (ini.get("log.level") == "info") { boost::log::core::get()->set_filter ( boost::log::trivial::severity >= boost::log::trivial::info ); } else if (ini.get("log.level") == "warning") { boost::log::core::get()->set_filter ( boost::log::trivial::severity >= boost::log::trivial::warning ); } else if (ini.get("log.level") == "error") { boost::log::core::get()->set_filter ( boost::log::trivial::severity >= boost::log::trivial::error ); } else if (ini.get("log.level") == "fatal") { boost::log::core::get()->set_filter ( boost::log::trivial::severity >= boost::log::trivial::fatal ); } } auto mysql_addr = ini.get("mysql.addr"); auto mysql_name = ini.get("mysql.name"); auto mysql_pass = ini.get("mysql.pwd"); auto mysql_buffer = ini.getInt("mysql.buffer"); if (mysql_addr == "" || mysql_name == "" || mysql_pass == "") { BOOST_LOG_TRIVIAL(fatal) << "no mysql info"; exit(-1); } if (mysql_buffer == -1) { mysql_buffer = 64; } m_memDB = new DataBase(); try { m_mysqlDB = new mysql::DataBase(mysql_addr, mysql_name, mysql_pass, mysql_buffer); } catch (...) { BOOST_LOG_TRIVIAL(fatal) << "cannot connect to mysql"; exit(-1); } }