From dccd6b3249e2c1dbca364e54d10071f2c0cd6ca4 Mon Sep 17 00:00:00 2001 From: public Date: Sat, 13 Jan 2024 21:44:26 -0500 Subject: [PATCH 1/2] change log sink and dir --- src/log/Logging.cpp | 38 ++++++++++++++++++++++---------------- 1 file changed, 22 insertions(+), 16 deletions(-) diff --git a/src/log/Logging.cpp b/src/log/Logging.cpp index 34ab25ffe..44442bbd1 100644 --- a/src/log/Logging.cpp +++ b/src/log/Logging.cpp @@ -24,7 +24,10 @@ logAdapter* logAdapter::alogInstance; boost::mutex logAdapter::m_imtx; logAdapter::~logAdapter() { - logging::core::get()->remove_all_sinks(); + //only remove current sink + logging::core::get()->remove_sik(m_logSink); + m_logSink->stop(); + m_logSink->flush(); } logAdapter* logAdapter::getLogInstance() { @@ -39,7 +42,8 @@ logAdapter* logAdapter::getLogInstance() { logAdapter::logAdapter() : m_logLevel(eLOG_LEVEL_INFO) { setLogDir(); - string homeDir(UtilAll::getHomeDirectory()); + //use current dir + string homeDir; homeDir.append(m_log_dir); m_logFile += homeDir; std::string fileName = "rocketmq_client.log"; @@ -65,31 +69,32 @@ logAdapter::logAdapter() : m_logLevel(eLOG_LEVEL_INFO) { void logAdapter::setLogLevelInner(elogLevel logLevel) { switch (logLevel) { case eLOG_LEVEL_FATAL: - logging::core::get()->set_filter(logging::trivial::severity >= logging::trivial::fatal); + //use current sink + m_logSink->set_filter(logging::trivial::severity >= logging::trivial::fatal); break; case eLOG_LEVEL_ERROR: - logging::core::get()->set_filter(logging::trivial::severity >= logging::trivial::error); - + //use current sink + m_logSink->set_filter(logging::trivial::severity >= logging::trivial::error); break; case eLOG_LEVEL_WARN: - logging::core::get()->set_filter(logging::trivial::severity >= logging::trivial::warning); - + //use current sink + m_logSink->set_filter(logging::trivial::severity >= logging::trivial::warning); break; case eLOG_LEVEL_INFO: - logging::core::get()->set_filter(logging::trivial::severity >= logging::trivial::info); - + //use current sink + m_logSink->set_filter(logging::trivial::severity >= logging::trivial::info); break; case eLOG_LEVEL_DEBUG: - logging::core::get()->set_filter(logging::trivial::severity >= logging::trivial::debug); - + //use current sink + m_logSink->set_filter(logging::trivial::severity >= logging::trivial::debug); break; case eLOG_LEVEL_TRACE: - logging::core::get()->set_filter(logging::trivial::severity >= logging::trivial::trace); - + //use current sink + m_logSink->set_filter(logging::trivial::severity >= logging::trivial::trace); break; default: - logging::core::get()->set_filter(logging::trivial::severity >= logging::trivial::info); - + //use current sink + m_logSink->set_filter(logging::trivial::severity >= logging::trivial::info); break; } } @@ -117,7 +122,8 @@ void logAdapter::setLogDir() { } void logAdapter::setLogFileNumAndSize(int logNum, int sizeOfPerFile) { - string homeDir(UtilAll::getHomeDirectory()); + //use current dir + string homeDir; homeDir.append(m_log_dir); m_logSink->locked_backend()->set_file_collector(sinks::file::make_collector( keywords::target = homeDir, keywords::max_size = logNum * sizeOfPerFile * 1024 * 1024)); From 6dace10aa4227215ea394ee0ee7b93e5cdf4fbef Mon Sep 17 00:00:00 2001 From: kqbi Date: Sat, 13 Jan 2024 22:02:26 -0500 Subject: [PATCH 2/2] =?UTF-8?q?add=20boost=20shared=20library=20setting?= =?UTF-8?q?=EF=BC=8Cbecause=20static=20boost.log=20Cannot=20be=20used=20in?= =?UTF-8?q?=20multiple=20components=20simultaneously?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CMakeLists.txt | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index baa227d0d..0f304bdbb 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -79,10 +79,18 @@ else () #find_package(Boost 1.56 REQUIRED COMPONENTS atomic thread system chrono date_time log log_setup regex serialization filesystem locale iostreams) set(Boost_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/bin/include) set(Boost_LIBRARY_DIRS ${PROJECT_SOURCE_DIR}/bin/lib) - set(Boost_LIBRARIES ${Boost_LIBRARY_DIRS}/libboost_atomic.a;${Boost_LIBRARY_DIRS}/libboost_thread.a;${Boost_LIBRARY_DIRS}/libboost_system.a; - ${Boost_LIBRARY_DIRS}/libboost_chrono.a;${Boost_LIBRARY_DIRS}/libboost_date_time.a;${Boost_LIBRARY_DIRS}/libboost_log.a; - ${Boost_LIBRARY_DIRS}/libboost_log_setup.a;${Boost_LIBRARY_DIRS}/libboost_regex.a;${Boost_LIBRARY_DIRS}/libboost_serialization.a; - ${Boost_LIBRARY_DIRS}/libboost_filesystem.a;${Boost_LIBRARY_DIRS}/libboost_locale.a;${Boost_LIBRARY_DIRS}/libboost_iostreams.a) + if (Boost_USE_STATIC_LIBS) + set(Boost_LIBRARIES ${Boost_LIBRARY_DIRS}/libboost_atomic.a;${Boost_LIBRARY_DIRS}/libboost_thread.a;${Boost_LIBRARY_DIRS}/libboost_system.a; + ${Boost_LIBRARY_DIRS}/libboost_chrono.a;${Boost_LIBRARY_DIRS}/libboost_date_time.a;${Boost_LIBRARY_DIRS}/libboost_log.a; + ${Boost_LIBRARY_DIRS}/libboost_log_setup.a;${Boost_LIBRARY_DIRS}/libboost_regex.a;${Boost_LIBRARY_DIRS}/libboost_serialization.a; + ${Boost_LIBRARY_DIRS}/libboost_filesystem.a;${Boost_LIBRARY_DIRS}/libboost_locale.a;${Boost_LIBRARY_DIRS}/libboost_iostreams.a) + else () + set(Boost_LIBRARIES ${Boost_LIBRARY_DIRS}/libboost_atomic.so;${Boost_LIBRARY_DIRS}/libboost_thread.so;${Boost_LIBRARY_DIRS}/libboost_system.so; + ${Boost_LIBRARY_DIRS}/libboost_chrono.so;${Boost_LIBRARY_DIRS}/libboost_date_time.so;${Boost_LIBRARY_DIRS}/libboost_log.so; + ${Boost_LIBRARY_DIRS}/libboost_log_setup.so;${Boost_LIBRARY_DIRS}/libboost_regex.so;${Boost_LIBRARY_DIRS}/libboost_serialization.so; + ${Boost_LIBRARY_DIRS}/libboost_filesystem.so;${Boost_LIBRARY_DIRS}/libboost_locale.so;${Boost_LIBRARY_DIRS}/libboost_iostreams.so) + add_definitions(-DBOOST_ALL_DYN_LINK) + endif () include_directories(${Boost_INCLUDE_DIR}) endif ()