30 template<
typename Mutex>
142 template<
typename Factory = default_factory>
146 return Factory::template create<sinks::rotating_file_sink_mt>(logger_name,
filename, max_file_size, max_files);
149 template<
typename Factory = default_factory>
153 return Factory::template create<sinks::rotating_file_sink_st>(logger_name,
filename, max_file_size, max_files);
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)
void msg(const char *fmt,...)
void open(const filename_t &fname, bool truncate=false)
std::unique_ptr< spdlog::formatter > formatter_
static filename_t calc_filename(const filename_t &filename, std::size_t index)
void sink_it_(const details::log_msg &msg) override
void reopen(bool truncate)
int errno
Contains the last error code.
std::enable_if< is_contiguous< Container >::value &&internal::is_string< S >::value, std::back_insert_iterator< Container > >::type format_to(std::back_insert_iterator< Container > out, const S &format_str, const Args &...args)
static std::tuple< filename_t, filename_t > split_by_extension(const spdlog::filename_t &fname)
int rename(const filename_t &filename1, const filename_t &filename2) SPDLOG_NOEXCEPT
void write(const fmt::memory_buffer &buf)
bool rename_file(const filename_t &src_filename, const filename_t &target_filename)
details::file_helper file_helper_
int remove(const filename_t &filename) SPDLOG_NOEXCEPT
std::size_t current_size_
std::shared_ptr< logger > rotating_logger_st(const std::string &logger_name, const filename_t &filename, size_t max_file_size, size_t max_files)
filename_t base_filename_
const GenericPointer< typename T::ValueType > T2 value
static bool file_exists(const filename_t &fname)
#define SPDLOG_FILENAME_T(s)
void sleep_for_millis(int milliseconds) SPDLOG_NOEXCEPT
std::string filename_to_str(const filename_t &filename)
std::string to_string(ModuleType const mt)
rotating_file_sink(filename_t base_filename, std::size_t max_size, std::size_t max_files)