Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Move LOG_help() from surf_config.c to log.c.
authorArnaud Giersch <arnaud.giersch@iut-bm.univ-fcomte.fr>
Wed, 28 Mar 2012 13:31:36 +0000 (15:31 +0200)
committerArnaud Giersch <arnaud.giersch@iut-bm.univ-fcomte.fr>
Wed, 28 Mar 2012 13:41:23 +0000 (15:41 +0200)
Should the calls to xbt_log_help() be moved in xbt_log_init()?

include/xbt/log.h
src/surf/surf_config.c
src/xbt/log.c

index d1d7315..26fdf6f 100644 (file)
@@ -354,6 +354,13 @@ extern xbt_log_layout_t xbt_log_default_layout;
 /* Public functions again */
 /* ********************** */
 
 /* Public functions again */
 /* ********************** */
 
+/**
+ * \ingroup XBT_log
+ *
+ * Prints some help about using the logging infrastructure.
+ */
+XBT_PUBLIC(void) xbt_log_help(void);
+
 /**
  * \ingroup XBT_log 
  * \param catName name of the category
 /**
  * \ingroup XBT_log 
  * \param catName name of the category
index abf48f4..52e6887 100644 (file)
@@ -7,6 +7,7 @@
 /* surf_config: configuration infrastructure for the simulation world       */
 
 #include "xbt/config.h"
 /* surf_config: configuration infrastructure for the simulation world       */
 
 #include "xbt/config.h"
+#include "xbt/log.h"
 #include "xbt/str.h"
 #include "surf/surf_private.h"
 #include "surf/surf_routing.h" /* COORD_HOST_LEVEL and COORD_ASR_LEVEL */
 #include "xbt/str.h"
 #include "surf/surf_private.h"
 #include "surf/surf_routing.h" /* COORD_HOST_LEVEL and COORD_ASR_LEVEL */
@@ -17,54 +18,6 @@ XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_config, surf,
 
 xbt_cfg_t _surf_cfg_set = NULL;
 
 
 xbt_cfg_t _surf_cfg_set = NULL;
 
-static void LOG_help(void)
-{
-  printf(
-"Description of the logging output:\n"
-"\n"
-"   Threshold configuration: --log=CATEGORY_NAME.thres:PRIORITY_LEVEL\n"
-"      CATEGORY_NAME: defined in code with function 'XBT_LOG_NEW_CATEGORY'\n"
-"      PRIORITY_LEVEL: the level to print (trace,debug,verbose,info,warning,error,critical)\n"
-"         -> trace: enter and return of some functions\n"
-"         -> debug: crufty output\n"
-"         -> verbose: verbose output for the user wanting more\n"
-"         -> info: output about the regular functionning\n"
-"         -> warning: minor issue encountered\n"
-"         -> error: issue encountered\n"
-"         -> critical: major issue encountered\n"
-"\n"
-"   Format configuration: --log=CATEGORY_NAME.fmt:OPTIONS\n"
-"      OPTIONS may be:\n"
-"         -> %%%%: the %% char\n"
-"         -> %%n: platform-dependent line separator (LOG4J compatible)\n"
-"         -> %%e: plain old space (SimGrid extension)\n"
-"\n"
-"         -> %%m: user-provided message\n"
-"\n"
-"         -> %%c: Category name (LOG4J compatible)\n"
-"         -> %%p: Priority name (LOG4J compatible)\n"
-"\n"
-"         -> %%h: Hostname (SimGrid extension)\n"
-"         -> %%P: Process name (SimGrid extension)\n"
-"         -> %%t: Thread \"name\" (LOG4J compatible -- actually the address of the thread in memory)\n"
-"         -> %%i: Process PID (SimGrid extension -- this is a 'i' as in 'i'dea)\n"
-"\n"
-"         -> %%F: file name where the log event was raised (LOG4J compatible)\n"
-"         -> %%l: location where the log event was raised (LOG4J compatible, like '%%F:%%L' -- this is a l as in 'l'etter)\n"
-"         -> %%L: line number where the log event was raised (LOG4J compatible)\n"
-"         -> %%M: function name (LOG4J compatible -- called method name here of course).\n"
-"                 Defined only when using gcc because there is no __FUNCTION__ elsewhere.\n"
-"\n"
-"         -> %%b: full backtrace (Called %%throwable in LOG4J). Defined only under windows or when using the GNU libc because\n"
-"                 backtrace() is not defined elsewhere, and we only have a fallback for windows boxes, not mac ones for example.\n"
-"         -> %%B: short backtrace (only the first line of the %%b). Called %%throwable{short} in LOG4J; defined where %%b is.\n"
-"\n"
-"         -> %%d: date (UNIX-like epoch)\n"
-"         -> %%r: application age (time elapsed since the beginning of the application)\n"
-"\n"
-    );
-}
-
 /* Parse the command line, looking for options */
 static void surf_config_cmd_line(int *argc, char **argv)
 {
 /* Parse the command line, looking for options */
 static void surf_config_cmd_line(int *argc, char **argv)
 {
@@ -111,7 +64,7 @@ static void surf_config_cmd_line(int *argc, char **argv)
       printf("Both network and CPU models have 'Lazy' as default optimization level\n\n");
       shall_exit = 1;
     } else if (!strcmp(argv[i], "--help-logs")) {
       printf("Both network and CPU models have 'Lazy' as default optimization level\n\n");
       shall_exit = 1;
     } else if (!strcmp(argv[i], "--help-logs")) {
-      LOG_help ();
+      xbt_log_help();
       shall_exit = 1;
 #ifdef HAVE_TRACING
     } else if (!strcmp(argv[i], "--help-tracing")) {
       shall_exit = 1;
 #ifdef HAVE_TRACING
     } else if (!strcmp(argv[i], "--help-tracing")) {
index b5fdebf..f6c02c4 100644 (file)
@@ -1105,3 +1105,51 @@ void xbt_log_additivity_set(xbt_log_category_t cat, int additivity)
 {
   cat->additivity = additivity;
 }
 {
   cat->additivity = additivity;
 }
+
+void xbt_log_help(void)
+{
+  printf(
+"Description of the logging output:\n"
+"\n"
+"   Threshold configuration: --log=CATEGORY_NAME.thres:PRIORITY_LEVEL\n"
+"      CATEGORY_NAME: defined in code with function 'XBT_LOG_NEW_CATEGORY'\n"
+"      PRIORITY_LEVEL: the level to print (trace,debug,verbose,info,warning,error,critical)\n"
+"         -> trace: enter and return of some functions\n"
+"         -> debug: crufty output\n"
+"         -> verbose: verbose output for the user wanting more\n"
+"         -> info: output about the regular functionning\n"
+"         -> warning: minor issue encountered\n"
+"         -> error: issue encountered\n"
+"         -> critical: major issue encountered\n"
+"\n"
+"   Format configuration: --log=CATEGORY_NAME.fmt:OPTIONS\n"
+"      OPTIONS may be:\n"
+"         -> %%%%: the %% char\n"
+"         -> %%n: platform-dependent line separator (LOG4J compatible)\n"
+"         -> %%e: plain old space (SimGrid extension)\n"
+"\n"
+"         -> %%m: user-provided message\n"
+"\n"
+"         -> %%c: Category name (LOG4J compatible)\n"
+"         -> %%p: Priority name (LOG4J compatible)\n"
+"\n"
+"         -> %%h: Hostname (SimGrid extension)\n"
+"         -> %%P: Process name (SimGrid extension)\n"
+"         -> %%t: Thread \"name\" (LOG4J compatible -- actually the address of the thread in memory)\n"
+"         -> %%i: Process PID (SimGrid extension -- this is a 'i' as in 'i'dea)\n"
+"\n"
+"         -> %%F: file name where the log event was raised (LOG4J compatible)\n"
+"         -> %%l: location where the log event was raised (LOG4J compatible, like '%%F:%%L' -- this is a l as in 'l'etter)\n"
+"         -> %%L: line number where the log event was raised (LOG4J compatible)\n"
+"         -> %%M: function name (LOG4J compatible -- called method name here of course).\n"
+"                 Defined only when using gcc because there is no __FUNCTION__ elsewhere.\n"
+"\n"
+"         -> %%b: full backtrace (Called %%throwable in LOG4J). Defined only under windows or when using the GNU libc because\n"
+"                 backtrace() is not defined elsewhere, and we only have a fallback for windows boxes, not mac ones for example.\n"
+"         -> %%B: short backtrace (only the first line of the %%b). Called %%throwable{short} in LOG4J; defined where %%b is.\n"
+"\n"
+"         -> %%d: date (UNIX-like epoch)\n"
+"         -> %%r: application age (time elapsed since the beginning of the application)\n"
+"\n"
+    );
+}