diff --git a/include/transport/Logging.h b/include/transport/Logging.h index d79fa8a50c9d41015ca8ec9e9ae5e7bd33c4b5ae..9b24c6e6d5ce740f5e076397b50e14ddf19c11ea 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 36f5d5f12b7f3ea8e09514746f1e259524d299ce..44614034d5606f4c1fa1f242e4241cc2900f6e74 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/src/CMakeLists.txt b/spectrum/src/CMakeLists.txt index 9a098605718f779de115d1be4befbff20b9a8124..d97d27eabd606461a650c5f87c1fd3fef2e75f64 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/src/manager-logging.cfg b/spectrum/src/manager-logging.cfg new file mode 100644 index 0000000000000000000000000000000000000000..607a3d8364615e19a357bda9ec72d1a50f9ba64b --- /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 diff --git a/spectrum_manager/src/managerconfig.cpp b/spectrum_manager/src/managerconfig.cpp index 915df32e51c90b0892d4ece72864aaac7a18290e..e24ad09a56a2a8ce16cfeac8a6025decb851246a 100644 --- a/spectrum_manager/src/managerconfig.cpp +++ b/spectrum_manager/src/managerconfig.cpp @@ -44,6 +44,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/manager_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 29b6ea34432d3b1db6dbea556775ba3f625e2b42..27edfa71950090bbca9f31c0ef31257f2d833b1c 100644 --- a/spectrum_manager/src/server.cpp +++ b/spectrum_manager/src/server.cpp @@ -105,7 +105,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 8b9b03a94fa5e4dad5294a37d831b0b2a3194165..ac3cd8801b3e94d1353e01cc05901d85dbc43f20 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"