|
|
|
@ -12,7 +12,7 @@
|
|
|
|
|
#include <vector>
|
|
|
|
|
|
|
|
|
|
#ifdef _WIN32
|
|
|
|
|
# include <alloca>
|
|
|
|
|
# include <malloc.h>
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#ifdef LOGGER_ENABLE_SYSLOG
|
|
|
|
@ -39,7 +39,7 @@ namespace LoggerS // namespace containing all data for the Logger singleton. HA
|
|
|
|
|
// config variables
|
|
|
|
|
bool omit_timestamp = false;
|
|
|
|
|
unsigned max_message_length = LOGGER_MAX_LOG_MESSAGE_LENGTH;
|
|
|
|
|
unsigned max_line_length = LOGGER_MAX_LINE_LENGTH;
|
|
|
|
|
unsigned max_line_length = std::min(64u*1024u, LOGGER_MAX_LINE_LENGTH);
|
|
|
|
|
|
|
|
|
|
void openfile();
|
|
|
|
|
void opensyslog();
|
|
|
|
@ -319,7 +319,12 @@ void Logger::log(Severity s, const char* format, ...)
|
|
|
|
|
{
|
|
|
|
|
va_list va;
|
|
|
|
|
va_start(va, format);
|
|
|
|
|
char *buf = (char*) alloca (sizeof(char) * ( LoggerS::max_line_length + 1 ));
|
|
|
|
|
|
|
|
|
|
#ifdef _WIN32
|
|
|
|
|
char* buf = _alloca(LoggerS::max_line_length + 1);
|
|
|
|
|
#else
|
|
|
|
|
char buf[ LoggerS::max_line_length + 1];
|
|
|
|
|
#endif
|
|
|
|
|
std::vsnprintf(buf, LoggerS::max_line_length, format, va);
|
|
|
|
|
va_end(va);
|
|
|
|
|
|
|
|
|
@ -332,7 +337,11 @@ void LogP(Logger::Severity s, Logger::Severity my_loglevel, const std::string& p
|
|
|
|
|
{
|
|
|
|
|
if(s<=my_loglevel && s<=LoggerS::loglevel)
|
|
|
|
|
{
|
|
|
|
|
char *buf = (char*) alloca (sizeof(char) * ( LoggerS::max_line_length + 1 ));
|
|
|
|
|
#ifdef _WIN32
|
|
|
|
|
char* buf = _alloca(LoggerS::max_line_length + 1);
|
|
|
|
|
#else
|
|
|
|
|
char buf[ LoggerS::max_line_length + 1];
|
|
|
|
|
#endif
|
|
|
|
|
std::vsnprintf(buf, LoggerS::max_line_length, format, va);
|
|
|
|
|
LoggerS::log(s, prefix + buf );
|
|
|
|
|
}
|
|
|
|
|