mirror of
https://github.com/gabime/spdlog.git
synced 2024-12-25 01:51:38 +08:00
Format
This commit is contained in:
parent
5ec37c05f7
commit
3c7103d90d
@ -7,10 +7,10 @@
|
||||
// bench.cpp : spdlog benchmarks
|
||||
//
|
||||
#include "spdlog/async.h"
|
||||
#include "spdlog/sinks/simple_file_sink.h"
|
||||
#include "spdlog/sinks/daily_file_sink.h"
|
||||
#include "spdlog/sinks/rotating_file_sink.h"
|
||||
#include "spdlog/sinks/null_sink.h"
|
||||
#include "spdlog/sinks/rotating_file_sink.h"
|
||||
#include "spdlog/sinks/simple_file_sink.h"
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
#include "utils.h"
|
||||
@ -48,7 +48,7 @@ int main(int argc, char *argv[])
|
||||
threads = atoi(argv[2]);
|
||||
if (argc > 3)
|
||||
queue_size = atoi(argv[3]);
|
||||
|
||||
|
||||
cout << "*******************************************************************************\n";
|
||||
cout << "Single thread, " << format(howmany) << " iterations" << endl;
|
||||
cout << "*******************************************************************************\n";
|
||||
|
@ -10,9 +10,9 @@
|
||||
#define SPDLOG_TRACE_ON
|
||||
#define SPDLOG_DEBUG_ON
|
||||
|
||||
#include "spdlog/sinks/simple_file_sink.h"
|
||||
#include "spdlog/sinks/daily_file_sink.h"
|
||||
#include "spdlog/sinks/rotating_file_sink.h"
|
||||
#include "spdlog/sinks/simple_file_sink.h"
|
||||
#include "spdlog/sinks/stdout_color_sinks.h"
|
||||
|
||||
#include <iostream>
|
||||
@ -61,13 +61,13 @@ int main(int, char *[])
|
||||
daily_logger->info(123.44);
|
||||
|
||||
// Customize msg format for all messages
|
||||
spd::set_pattern("[%^+++%$] [%H:%M:%S %z] [thread %t] %v");
|
||||
spd::set_pattern("[%^+++%$] [%H:%M:%S %z] [thread %t] %v");
|
||||
|
||||
console->info("This an info message with custom format");
|
||||
console->error("This an error message with custom format");
|
||||
|
||||
// Change format back to to default
|
||||
spd::set_pattern ("%+");
|
||||
// Change format back to to default
|
||||
spd::set_pattern("%+");
|
||||
|
||||
// Runtime log levels
|
||||
spd::set_level(spd::level::info); // Set global log level to info
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "spdlog/spdlog.h"
|
||||
#include "spdlog/sinks/file_sinks.h"
|
||||
#include "spdlog/sinks/stdout_sinks.h"
|
||||
#include "spdlog/spdlog.h"
|
||||
#include <iostream>
|
||||
#include <memory>
|
||||
|
||||
|
@ -11,7 +11,7 @@
|
||||
// All loggers created here share same global thread pool.
|
||||
// Each log message is pushed to a queue along withe a shared pointer to the logger.
|
||||
// If a logger deleted while having pending messages in the queue, it's actual destruction will defer
|
||||
// until all its messages are processed by the thread pool.
|
||||
// until all its messages are processed by the thread pool.
|
||||
// This is because each message in the queue holds a shared_ptr to the originating logger.
|
||||
|
||||
#include "spdlog/async_logger.h"
|
||||
|
@ -72,7 +72,7 @@ inline void spdlog::logger::log(level::level_enum lvl, const char *fmt, const Ar
|
||||
}
|
||||
catch (...)
|
||||
{
|
||||
_err_handler("Unknown exception in logger " + _name);
|
||||
_err_handler("Unknown exception in logger " + _name);
|
||||
}
|
||||
}
|
||||
|
||||
@ -95,7 +95,7 @@ inline void spdlog::logger::log(level::level_enum lvl, const char *msg)
|
||||
}
|
||||
catch (...)
|
||||
{
|
||||
_err_handler("Unknown exception in logger " + _name);
|
||||
_err_handler("Unknown exception in logger " + _name);
|
||||
}
|
||||
}
|
||||
|
||||
@ -118,7 +118,7 @@ inline void spdlog::logger::log(level::level_enum lvl, const T &msg)
|
||||
}
|
||||
catch (...)
|
||||
{
|
||||
_err_handler("Unknown exception in logger " + _name);
|
||||
_err_handler("Unknown exception in logger " + _name);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -151,8 +151,6 @@ public:
|
||||
return _msg_counter.load(std::memory_order_relaxed);
|
||||
}
|
||||
|
||||
|
||||
|
||||
private:
|
||||
std::atomic<size_t> _msg_counter; // total # of messages processed in this pool
|
||||
q_type _q;
|
||||
@ -222,12 +220,12 @@ private:
|
||||
using std::chrono::milliseconds;
|
||||
|
||||
auto time_since_op = now - last_op_time;
|
||||
|
||||
|
||||
// yield upto 150 micros
|
||||
if (time_since_op <= microseconds(150))
|
||||
{
|
||||
return std::this_thread::yield();
|
||||
}
|
||||
}
|
||||
|
||||
// sleep for 20 ms upto 200 ms
|
||||
if (time_since_op <= milliseconds(200))
|
||||
|
@ -4,11 +4,11 @@
|
||||
//
|
||||
|
||||
#pragma once
|
||||
#include "spdlog/spdlog.h"
|
||||
#include "spdlog/details/file_helper.h"
|
||||
#include "spdlog/details/null_mutex.h"
|
||||
#include "spdlog/fmt/fmt.h"
|
||||
#include "spdlog/sinks/base_sink.h"
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
#include <algorithm>
|
||||
#include <cerrno>
|
||||
@ -123,7 +123,7 @@ using daily_file_sink_st = daily_file_sink<details::null_mutex>;
|
||||
} // namespace sinks
|
||||
|
||||
//
|
||||
// factory functions
|
||||
// factory functions
|
||||
//
|
||||
template<typename Factory = default_factory>
|
||||
inline std::shared_ptr<logger> daily_logger_mt(const std::string &logger_name, const filename_t &filename, int hour = 0, int minute = 0)
|
||||
|
@ -4,18 +4,18 @@
|
||||
//
|
||||
|
||||
#pragma once
|
||||
#include "spdlog/spdlog.h"
|
||||
#include "spdlog/details/file_helper.h"
|
||||
#include "spdlog/details/null_mutex.h"
|
||||
#include "spdlog/fmt/fmt.h"
|
||||
#include "spdlog/sinks/base_sink.h"
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
#include <cerrno>
|
||||
#include <chrono>
|
||||
#include <tuple>
|
||||
#include <ctime>
|
||||
#include <mutex>
|
||||
#include <string>
|
||||
#include <tuple>
|
||||
|
||||
namespace spdlog {
|
||||
namespace sinks {
|
||||
@ -117,7 +117,6 @@ using rotating_file_sink_st = rotating_file_sink<details::null_mutex>;
|
||||
// factory functions
|
||||
//
|
||||
|
||||
|
||||
template<typename Factory = default_factory>
|
||||
inline std::shared_ptr<logger> rotating_logger_mt(
|
||||
const std::string &logger_name, const filename_t &filename, size_t max_file_size, size_t max_files)
|
||||
|
@ -4,10 +4,10 @@
|
||||
//
|
||||
|
||||
#pragma once
|
||||
#include "spdlog/spdlog.h"
|
||||
#include "spdlog/details/file_helper.h"
|
||||
#include "spdlog/details/null_mutex.h"
|
||||
#include "spdlog/sinks/base_sink.h"
|
||||
#include "spdlog/spdlog.h"
|
||||
|
||||
#include <mutex>
|
||||
#include <string>
|
||||
@ -55,7 +55,6 @@ private:
|
||||
using simple_file_sink_mt = simple_file_sink<std::mutex>;
|
||||
using simple_file_sink_st = simple_file_sink<details::null_mutex>;
|
||||
|
||||
|
||||
} // namespace sinks
|
||||
|
||||
//
|
||||
|
@ -49,6 +49,6 @@ inline std::shared_ptr<logger> stderr_color_mt(const std::string &logger_name)
|
||||
template<typename Factory = default_factory>
|
||||
inline std::shared_ptr<logger> stderr_color_st(const std::string &logger_name)
|
||||
{
|
||||
return Factory::template create<stderr_color_sink_mt > (logger_name);
|
||||
return Factory::template create<stderr_color_sink_mt>(logger_name);
|
||||
}
|
||||
} // namespace spdlog
|
@ -12,12 +12,11 @@
|
||||
#define SPDLOG_TRACE_ON
|
||||
#define SPDLOG_DEBUG_ON
|
||||
|
||||
|
||||
#include "spdlog/async.h"
|
||||
#include "spdlog/sinks/simple_file_sink.h"
|
||||
#include "spdlog/sinks/stdout_color_sinks.h"
|
||||
#include "spdlog/sinks/daily_file_sink.h"
|
||||
#include "spdlog/sinks/rotating_file_sink.h"
|
||||
#include "spdlog/sinks/null_sink.h"
|
||||
#include "spdlog/sinks/ostream_sink.h"
|
||||
#include "spdlog/sinks/rotating_file_sink.h"
|
||||
#include "spdlog/sinks/simple_file_sink.h"
|
||||
#include "spdlog/sinks/stdout_color_sinks.h"
|
||||
#include "spdlog/spdlog.h"
|
||||
|
Loading…
Reference in New Issue
Block a user