Skip to content

Commit 7defc72

Browse files
committed
Added ability to specify spdlog logging level: KasperskyLab#157
1 parent 70ab927 commit 7defc72

5 files changed

Lines changed: 35 additions & 4 deletions

File tree

examples/mnist-learn/main.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919
* limitations under the License.
2020
*/
2121

22+
#include <spdlog/spdlog.h>
23+
2224
#include <iostream>
2325

2426
#include "dataset.h"
@@ -67,6 +69,8 @@ int main(int argc, char** argv)
6769
if (!model_desc_opt.has_value()) return EXIT_FAILURE;
6870
const ModelDescription& model_desc = model_desc_opt.value();
6971

72+
spdlog::set_level(static_cast<spdlog::level::level_enum>(model_desc.spdlog_level_));
73+
7074
std::cout << "Starting model:\n" << model_desc << std::endl;
7175

7276
// Starting model according to selected type.

examples/mnist-learn/model_desc.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121

2222
#include "model_desc.h"
2323

24+
#include <spdlog/spdlog.h>
25+
2426
std::ostream& operator<<(std::ostream& stream, ModelDescription const& desc)
2527
{
2628
stream << "Model type: ";
@@ -55,5 +57,9 @@ std::ostream& operator<<(std::ostream& stream, ModelDescription const& desc)
5557
else
5658
stream << "Model saving path: " << desc.model_saving_path_ << "\n";
5759

60+
stream << "Spdlog logging level: "
61+
<< spdlog::level::to_string_view(static_cast<spdlog::level::level_enum>(desc.spdlog_level_)).begin() << "\n";
62+
63+
5864
return stream;
5965
}

examples/mnist-learn/model_desc.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,10 @@ struct ModelDescription
6161

6262
/// Path to folder for saving trained model in sonata format.
6363
std::filesystem::path model_saving_path_;
64+
65+
/// Spdlog logging level.
66+
// cppcheck-suppress unusedStructMember
67+
int spdlog_level_;
6468
};
6569

6670

examples/mnist-learn/parse_arguments.cpp

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121

2222
#include "parse_arguments.h"
2323

24+
#include <spdlog/spdlog.h>
25+
2426
#include <iostream>
2527
#include <string>
2628

@@ -42,7 +44,8 @@ std::optional<ModelDescription> parse_arguments(int argc, char** argv)
4244
"log_path", po::value<std::string>()->default_value(""),
4345
"path for putting logs. if no path is specified, no logs will be produced.")(
4446
"model_path", po::value<std::string>()->default_value(""),
45-
"path for saving trained model. if no path is specified, model wont be saved.");
47+
"path for saving trained model. if no path is specified, model wont be saved.")(
48+
"spdlog_level", po::value<std::string>()->default_value("info"), "spdlog logging level.");
4649

4750
po::variables_map vm;
4851
po::store(po::parse_command_line(argc, argv, desc), vm);
@@ -154,5 +157,22 @@ std::optional<ModelDescription> parse_arguments(int argc, char** argv)
154157
model_desc.model_saving_path_ = "";
155158
}
156159

160+
if (vm.count("spdlog_level"))
161+
{
162+
model_desc.spdlog_level_ = spdlog::level::from_str(vm["spdlog_level"].as<std::string>());
163+
if (model_desc.spdlog_level_ == spdlog::level::off)
164+
{
165+
std::cout << "Spdlog logging level is incorrect." << std::endl;
166+
std::cout << desc << std::endl;
167+
return std::nullopt;
168+
}
169+
}
170+
else
171+
{
172+
std::cout << "Spdlog logging level not specified." << std::endl;
173+
std::cout << desc << std::endl;
174+
return std::nullopt;
175+
}
176+
157177
return model_desc;
158178
}

knp/core-library/impl/backend.cpp

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,6 @@ namespace knp::core
3131
Backend::Backend()
3232
: message_bus_{knp::core::MessageBus::construct_bus()}, message_endpoint_(message_bus_->create_endpoint())
3333
{
34-
#if (!defined(NDEBUG))
35-
spdlog::set_level(spdlog::level::trace);
36-
#endif
3734
}
3835

3936

0 commit comments

Comments
 (0)