From 630438ec132e1a831348f7d1e7b9dcf150eda5bc Mon Sep 17 00:00:00 2001 From: vitalyster Date: Tue, 12 Jan 2016 11:21:51 +0000 Subject: [PATCH 1/5] spectrum_manager: init logging --- include/transport/Logging.h | 1 + libtransport/Logging.cpp | 3 +++ spectrum_manager/src/managerconfig.cpp | 1 + spectrum_manager/src/server.cpp | 3 ++- spectrum_manager/src/server.h | 1 + 5 files changed, 8 insertions(+), 1 deletion(-) diff --git a/include/transport/Logging.h b/include/transport/Logging.h index d79fa8a5..9b24c6e6 100644 --- a/include/transport/Logging.h +++ b/include/transport/Logging.h @@ -56,6 +56,7 @@ namespace Logging { void initBackendLogging(Config *config); void initMainLogging(Config *config); +void initManagerLogging(Config *config); void shutdownLogging(); void redirect_stderr(); diff --git a/libtransport/Logging.cpp b/libtransport/Logging.cpp index 36f5d5f1..44614034 100644 --- a/libtransport/Logging.cpp +++ b/libtransport/Logging.cpp @@ -203,6 +203,9 @@ void initMainLogging(Config *config) { initLogging(config, "logging.config"); initLogging(config, "logging.backend_config", true); } +void initManagerLogging(Config *config) { + initLogging(config, "logging.config"); +} void redirect_stderr() { intercepter_cerr = new intercept_stream(std::cerr, "cerr"); diff --git a/spectrum_manager/src/managerconfig.cpp b/spectrum_manager/src/managerconfig.cpp index c25b1a04..730850a1 100644 --- a/spectrum_manager/src/managerconfig.cpp +++ b/spectrum_manager/src/managerconfig.cpp @@ -42,6 +42,7 @@ bool ManagerConfig::load(const std::string &configfile, boost::program_options:: ("database.password", value()->default_value(""), "Database Password.") ("database.port", value()->default_value(0), "Database port.") ("database.prefix", value()->default_value(""), "Prefix of tables in database") + ("logging.config", value()->default_value("/etc/spectrum2/logging.cfg"), "Logging configuration file") ; store(parse_config_file(ifs, opts), m_variables); diff --git a/spectrum_manager/src/server.cpp b/spectrum_manager/src/server.cpp index 88ffc726..7da6adf9 100644 --- a/spectrum_manager/src/server.cpp +++ b/spectrum_manager/src/server.cpp @@ -87,7 +87,8 @@ Server::Server(ManagerConfig *config, const std::string &config_file) { m_storageCfg = new Config(); m_storageCfg->load(config_file); - + + Logging::initManagerLogging(m_storageCfg); std::string error; m_storage = StorageBackend::createBackend(m_storageCfg, error); if (m_storage == NULL) { diff --git a/spectrum_manager/src/server.h b/spectrum_manager/src/server.h index f4fa17f9..1cbf3f0e 100644 --- a/spectrum_manager/src/server.h +++ b/spectrum_manager/src/server.h @@ -32,6 +32,7 @@ #include "managerconfig.h" #include "transport/Config.h" +#include "transport/Logging.h" #include "transport/SQLite3Backend.h" #include "transport/MySQLBackend.h" #include "transport/PQXXBackend.h" From fc3d81748eb33f99a74e3ccb75fba4e19dd6ebc4 Mon Sep 17 00:00:00 2001 From: vitalyster Date: Thu, 21 Jan 2016 12:04:13 +0000 Subject: [PATCH 2/5] manager: install sample logging config --- spectrum/src/CMakeLists.txt | 4 ++++ spectrum_manager/src/managerconfig.cpp | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/spectrum/src/CMakeLists.txt b/spectrum/src/CMakeLists.txt index 9a098605..d97d27ea 100644 --- a/spectrum/src/CMakeLists.txt +++ b/spectrum/src/CMakeLists.txt @@ -49,4 +49,8 @@ INSTALL(FILES DESTINATION /etc/spectrum2 ) +INSTALL(FILES + manager-logging.cfg + DESTINATION /etc/spectrum2 + ) diff --git a/spectrum_manager/src/managerconfig.cpp b/spectrum_manager/src/managerconfig.cpp index 730850a1..3888f758 100644 --- a/spectrum_manager/src/managerconfig.cpp +++ b/spectrum_manager/src/managerconfig.cpp @@ -42,7 +42,7 @@ bool ManagerConfig::load(const std::string &configfile, boost::program_options:: ("database.password", value()->default_value(""), "Database Password.") ("database.port", value()->default_value(0), "Database port.") ("database.prefix", value()->default_value(""), "Prefix of tables in database") - ("logging.config", value()->default_value("/etc/spectrum2/logging.cfg"), "Logging configuration file") + ("logging.config", value()->default_value("/etc/spectrum2/manager_logging.cfg"), "Logging configuration file") ; store(parse_config_file(ifs, opts), m_variables); From 44641f984badb8df2459acd7938c5f3b8454a0f9 Mon Sep 17 00:00:00 2001 From: vitalyster Date: Thu, 21 Jan 2016 12:04:29 +0000 Subject: [PATCH 3/5] manager: install sample logging config --- spectrum/src/manager-logging.cfg | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 spectrum/src/manager-logging.cfg diff --git a/spectrum/src/manager-logging.cfg b/spectrum/src/manager-logging.cfg new file mode 100644 index 00000000..607a3d83 --- /dev/null +++ b/spectrum/src/manager-logging.cfg @@ -0,0 +1,11 @@ +log4j.rootLogger=debug, R + +log4j.appender.R=org.apache.log4j.RollingFileAppender +log4j.appender.R.File=/var/log/spectrum2/spectrum_manager.log + +log4j.appender.R.MaxFileSize=10000KB +# Keep one backup file +log4j.appender.R.MaxBackupIndex=1 + +log4j.appender.R.layout=org.apache.log4j.PatternLayout +log4j.appender.R.layout.ConversionPattern=%d %-5p %c: %m%n From 1c04886a3686ce1f4a862746858173b1d2546d12 Mon Sep 17 00:00:00 2001 From: Vitaly Takmazov Date: Thu, 21 Jan 2016 15:58:35 +0300 Subject: [PATCH 4/5] win32 build fixes --- CMakeLists.txt | 21 ++++++++++---------- backends/twitter/libtwitcurl/twitcurl.h | 1 + cmake_modules/SwiftenConfig.cmake | 5 +++++ libtransport/CMakeLists.txt | 9 +++++++-- libtransport/FileTransferManager.cpp | 4 ++-- spectrum/src/frontends/xmpp/XMPPFrontend.cpp | 2 +- 6 files changed, 26 insertions(+), 16 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 26d38756..150a10df 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -274,20 +274,19 @@ message("Version : " ${SPECTRUM_VERSION}) if (SQLITE3_FOUND) ADD_DEFINITIONS(-DWITH_SQLITE) +if (WIN32) + include_directories("${CMAKE_SOURCE_DIR}/msvc-deps/sqlite3") + message("SQLite3 : bundled") +else (WIN32) include_directories(${SQLITE3_INCLUDE_DIR}) message("SQLite3 : yes") +endif (WIN32) else (SQLITE3_FOUND) - if (WIN32) - ADD_DEFINITIONS(-DWITH_SQLITE) - include_directories("${CMAKE_SOURCE_DIR}/msvc-deps/sqlite3") - message("SQLite3 : bundled") - else() - set(SQLITE3_LIBRARIES "") - if(ENABLE_SQLITE3) - message("SQLite3 : no (install sqlite3)") - else(ENABLE_SQLITE3) - message("SQLite3 : no (user disabled)") - endif() + set(SQLITE3_LIBRARIES "") + if(ENABLE_SQLITE3) + message("SQLite3 : no (install sqlite3)") + else(ENABLE_SQLITE3) + message("SQLite3 : no (user disabled)") endif() endif (SQLITE3_FOUND) diff --git a/backends/twitter/libtwitcurl/twitcurl.h b/backends/twitter/libtwitcurl/twitcurl.h index 8d18f166..97ba99ad 100644 --- a/backends/twitter/libtwitcurl/twitcurl.h +++ b/backends/twitter/libtwitcurl/twitcurl.h @@ -5,6 +5,7 @@ #include #include #include +#include #include "oauthlib.h" #include "curl/curl.h" diff --git a/cmake_modules/SwiftenConfig.cmake b/cmake_modules/SwiftenConfig.cmake index 34217b3a..0d677fcd 100644 --- a/cmake_modules/SwiftenConfig.cmake +++ b/cmake_modules/SwiftenConfig.cmake @@ -5,6 +5,11 @@ if( SWIFTEN_LIBRARY AND SWIFTEN_INCLUDE_DIR ) find_program(SWIFTEN_CONFIG_EXECUTABLE NAMES swiften-config DOC "swiften-config executable" HINTS ../bin) set( SWIFTEN_CFLAGS "" ) if (SWIFTEN_CONFIG_EXECUTABLE) + execute_process( + COMMAND ${SWIFTEN_CONFIG_EXECUTABLE} --version + OUTPUT_VARIABLE SWIFTEN_VERSION) + string(REGEX MATCH "([0-9])" SWIFTEN_VERSION "${SWIFTEN_VERSION}") + message(STATUS "Swiften version ${SWIFTEN_VERSION}") execute_process( COMMAND ${SWIFTEN_CONFIG_EXECUTABLE} --libs OUTPUT_VARIABLE SWIFTEN_LIB) diff --git a/libtransport/CMakeLists.txt b/libtransport/CMakeLists.txt index 726a57fb..0773f936 100644 --- a/libtransport/CMakeLists.txt +++ b/libtransport/CMakeLists.txt @@ -15,7 +15,12 @@ else() string(REGEX REPLACE "[^;]+;?/OpenSSL/[^;]+;?" "" SWIFTEN_SRC "${SWIFTEN_SRC}") string(REGEX REPLACE "[^;]+;?/SecureTransport/[^;]+;?" "" SWIFTEN_SRC "${SWIFTEN_SRC}") endif() - +if (SWIFTEN_VERSION GREATER 2) + list(REMOVE_ITEM SWIFTEN_SRC "${CMAKE_CURRENT_SOURCE_DIR}/../include/Swiften/Network/DummyConnectionServer.h") + list(REMOVE_ITEM SWIFTEN_SRC "${CMAKE_CURRENT_SOURCE_DIR}/../include/Swiften/Network/DummyConnectionServerFactory.h") + list(REMOVE_ITEM SWIFTEN_SRC "${CMAKE_CURRENT_SOURCE_DIR}/../include/Swiften/Network/DummyConnectionServer.cpp") + list(REMOVE_ITEM SWIFTEN_SRC "${CMAKE_CURRENT_SOURCE_DIR}/../include/Swiften/Network/DummyConnectionServerFactory.cpp") +endif() FILE(GLOB HEADERS ../include/transport/*.h) include_directories(../spectrum/src/frontends/xmpp/) @@ -48,7 +53,7 @@ find_package(CURL) if (WIN32) include_directories("${CMAKE_SOURCE_DIR}/msvc-deps/sqlite3") - TARGET_LINK_LIBRARIES(transport transport-plugin sqlite3 ${PQXX_LIBRARY} ${CURL_LIBRARIES ${PQ_LIBRARY} ${MYSQL_LIBRARIES} ${SWIFTEN_LIBRARY} ${LOG4CXX_LIBRARIES} ${PROTOBUF_LIBRARY} psapi.lib) + TARGET_LINK_LIBRARIES(transport transport-plugin sqlite3 ${PQXX_LIBRARY} ${CURL_LIBRARIES} ${PQ_LIBRARY} ${MYSQL_LIBRARIES} ${SWIFTEN_LIBRARY} ${LOG4CXX_LIBRARIES} ${PROTOBUF_LIBRARY} psapi.lib) else() TARGET_LINK_LIBRARIES(transport transport-plugin ${PQXX_LIBRARY} ${CURL_LIBRARIES} ${PQ_LIBRARY} ${SQLITE3_LIBRARIES} ${MYSQL_LIBRARIES} ${SWIFTEN_LIBRARY} ${LOG4CXX_LIBRARIES} ${POPT_LIBRARY} ${PROTOBUF_LIBRARY}) endif() diff --git a/libtransport/FileTransferManager.cpp b/libtransport/FileTransferManager.cpp index c8c4e0b9..069ef21a 100644 --- a/libtransport/FileTransferManager.cpp +++ b/libtransport/FileTransferManager.cpp @@ -83,7 +83,7 @@ FileTransferManager::~FileTransferManager() { } FileTransferManager::Transfer FileTransferManager::sendFile(User *user, Buddy *buddy, boost::shared_ptr byteStream, const Swift::StreamInitiationFileInfo &info) { -// FileTransferManager::Transfer transfer; + FileTransferManager::Transfer transfer; // transfer.from = buddy->getJID(); // transfer.to = user->getJID(); // transfer.readByteStream = byteStream; @@ -96,7 +96,7 @@ FileTransferManager::Transfer FileTransferManager::sendFile(User *user, Buddy *b // // ft->onStateChange.connect(boost::bind(&User::handleFTStateChanged, this, _1, Buddy::JIDToLegacyName(from), info.getName(), info.getSize(), id)); // // transfer.ft->start(); // // } -// return transfer; + return transfer; } } diff --git a/spectrum/src/frontends/xmpp/XMPPFrontend.cpp b/spectrum/src/frontends/xmpp/XMPPFrontend.cpp index 2840fca6..0ee8faf7 100644 --- a/spectrum/src/frontends/xmpp/XMPPFrontend.cpp +++ b/spectrum/src/frontends/xmpp/XMPPFrontend.cpp @@ -347,7 +347,7 @@ void XMPPFrontend::handleConnected() { } void XMPPFrontend::handleServerStopped(boost::optional e) { - if(e != NULL ) { + if(e) { if(*e == Swift::BoostConnectionServer::Conflict) { LOG4CXX_INFO(logger, "Port "<< CONFIG_INT(m_config, "service.port") << " already in use! Stopping server.."); if (CONFIG_INT(m_config, "service.port") == 5347) { From 3f452931af765773b199d532b432a0db5debfa9f Mon Sep 17 00:00:00 2001 From: Vitaly Takmazov Date: Thu, 21 Jan 2016 16:39:24 +0300 Subject: [PATCH 5/5] using our DummyConnectionServer* classes (Swiften ones are not installed by default) --- cmake_modules/SwiftenConfig.cmake | 5 ----- libtransport/CMakeLists.txt | 6 ------ 2 files changed, 11 deletions(-) diff --git a/cmake_modules/SwiftenConfig.cmake b/cmake_modules/SwiftenConfig.cmake index 0d677fcd..34217b3a 100644 --- a/cmake_modules/SwiftenConfig.cmake +++ b/cmake_modules/SwiftenConfig.cmake @@ -5,11 +5,6 @@ if( SWIFTEN_LIBRARY AND SWIFTEN_INCLUDE_DIR ) find_program(SWIFTEN_CONFIG_EXECUTABLE NAMES swiften-config DOC "swiften-config executable" HINTS ../bin) set( SWIFTEN_CFLAGS "" ) if (SWIFTEN_CONFIG_EXECUTABLE) - execute_process( - COMMAND ${SWIFTEN_CONFIG_EXECUTABLE} --version - OUTPUT_VARIABLE SWIFTEN_VERSION) - string(REGEX MATCH "([0-9])" SWIFTEN_VERSION "${SWIFTEN_VERSION}") - message(STATUS "Swiften version ${SWIFTEN_VERSION}") execute_process( COMMAND ${SWIFTEN_CONFIG_EXECUTABLE} --libs OUTPUT_VARIABLE SWIFTEN_LIB) diff --git a/libtransport/CMakeLists.txt b/libtransport/CMakeLists.txt index 0773f936..dee844d9 100644 --- a/libtransport/CMakeLists.txt +++ b/libtransport/CMakeLists.txt @@ -15,12 +15,6 @@ else() string(REGEX REPLACE "[^;]+;?/OpenSSL/[^;]+;?" "" SWIFTEN_SRC "${SWIFTEN_SRC}") string(REGEX REPLACE "[^;]+;?/SecureTransport/[^;]+;?" "" SWIFTEN_SRC "${SWIFTEN_SRC}") endif() -if (SWIFTEN_VERSION GREATER 2) - list(REMOVE_ITEM SWIFTEN_SRC "${CMAKE_CURRENT_SOURCE_DIR}/../include/Swiften/Network/DummyConnectionServer.h") - list(REMOVE_ITEM SWIFTEN_SRC "${CMAKE_CURRENT_SOURCE_DIR}/../include/Swiften/Network/DummyConnectionServerFactory.h") - list(REMOVE_ITEM SWIFTEN_SRC "${CMAKE_CURRENT_SOURCE_DIR}/../include/Swiften/Network/DummyConnectionServer.cpp") - list(REMOVE_ITEM SWIFTEN_SRC "${CMAKE_CURRENT_SOURCE_DIR}/../include/Swiften/Network/DummyConnectionServerFactory.cpp") -endif() FILE(GLOB HEADERS ../include/transport/*.h) include_directories(../spectrum/src/frontends/xmpp/)