X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/08166da2ffafc477df00a2cf4b60e62f8d803096..337c0de59186a44f7a146bc28628ee10f6e5f9ed:/src/xbt/log_default_appender.c diff --git a/src/xbt/log_default_appender.c b/src/xbt/log_default_appender.c index 1bac48dfe1..0126353bc0 100644 --- a/src/xbt/log_default_appender.c +++ b/src/xbt/log_default_appender.c @@ -9,10 +9,8 @@ #include "xbt/sysdep.h" #include "xbt/log.h" -#include "xbt/error.h" #include - -XBT_LOG_NEW_DEFAULT_SUBCATEGORY(log_app,log,"default logging handler"); +#include "gras/virtu.h" /** * The root category's default logging function. @@ -20,7 +18,7 @@ XBT_LOG_NEW_DEFAULT_SUBCATEGORY(log_app,log,"default logging handler"); extern const char *xbt_log_priority_names[7]; -static void append_file(xbt_log_appender_t this, xbt_log_event_t ev, +static void append_file(xbt_log_appender_t this_appender, xbt_log_event_t ev, const char *fmt); /* @@ -35,19 +33,35 @@ static s_xbt_log_appender_t xbt_log_appender_file = { append_file, NULL } ; xbt_log_appender_t xbt_log_default_appender = &xbt_log_appender_file; -static void append_file(xbt_log_appender_t this, +static const char* xbt_logappender_verbose_information(void) { + static char buffer[256]; + static double begin_of_time = -1; + + if (begin_of_time<0) + begin_of_time=gras_os_time(); + + if(strlen(xbt_procname())) + sprintf(buffer,"%s:%s:(%ld) %f", gras_os_myname(), + xbt_procname(),gras_os_getpid(),gras_os_time()-begin_of_time); + else + buffer[0]=0; + + return buffer; +} + +static void append_file(xbt_log_appender_t this_appender, xbt_log_event_t ev, const char *fmt) { /* TODO: define a format field in struct for timestamp, etc. struct DefaultLogAppender* this = (struct DefaultLogAppender*)this0;*/ - char *procname = (char*)xbt_procname(); + char *procname = (char*)xbt_logappender_verbose_information(); if (!procname) procname = (char*)""; - if ((FILE*)(this->appender_data) == NULL) - this->appender_data = (void*)stderr; + if ((FILE*)(this_appender->appender_data) == NULL) + this_appender->appender_data = (void*)stderr; xbt_assert0(ev->priority>=0, "Negative logging priority naturally forbidden");