X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/19e4a01d6e38e856dafa1a08942143a8ec7f5e34..9b3780913f771e32ac6686a7f97b1a8248f11b27:/src/xbt/log.c diff --git a/src/xbt/log.c b/src/xbt/log.c index 767f8835ea..7853627699 100644 --- a/src/xbt/log.c +++ b/src/xbt/log.c @@ -1,6 +1,6 @@ /* log - a generic logging facility in the spirit of log4j */ -/* Copyright (c) 2004-2017. The SimGrid Team. +/* Copyright (c) 2004-2018. The SimGrid Team. * All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it @@ -24,6 +24,13 @@ #include "xbt/sysdep.h" #include "xbt/xbt_os_thread.h" +#ifndef MIN +#define MIN(a, b) ((a) < (b) ? (a) : (b)) +#endif +#ifndef MAX +#define MAX(a, b) ((a) > (b) ? (a) : (b)) +#endif + int xbt_log_no_loc = 0; /* if set to true (with --log=no_loc), file localization will be omitted (for tesh tests) */ static xbt_os_mutex_t log_cat_init_mutex = NULL; @@ -92,181 +99,6 @@ void xbt_log_preinit(void) log_cat_init_mutex = xbt_os_mutex_init(); } -static void xbt_log_connect_categories(void) -{ - /* Connect our log channels: that must be done manually under windows */ - /* Also permit that they are correctly listed by xbt_log_help_categories() */ - - /* xbt */ - XBT_LOG_CONNECT(xbt); - XBT_LOG_CONNECT(log); - XBT_LOG_CONNECT(module); - XBT_LOG_CONNECT(replay); - XBT_LOG_CONNECT(xbt_cfg); - XBT_LOG_CONNECT(xbt_dict); - XBT_LOG_CONNECT(xbt_dict_cursor); - XBT_LOG_CONNECT(xbt_dict_elm); - XBT_LOG_CONNECT(xbt_dyn); - XBT_LOG_CONNECT(xbt_ex); - XBT_LOG_CONNECT(xbt_automaton); - XBT_LOG_CONNECT(xbt_backtrace); - XBT_LOG_CONNECT(xbt_exception); - XBT_LOG_CONNECT(xbt_graph); - XBT_LOG_CONNECT(xbt_mallocator); - XBT_LOG_CONNECT(xbt_memory_map); - XBT_LOG_CONNECT(xbt_parmap); - XBT_LOG_CONNECT(xbt_sync); - XBT_LOG_CONNECT(xbt_sync_os); - -#ifdef simgrid_EXPORTS - /* The following categories are only defined in libsimgrid */ - - /* bindings */ -#if SIMGRID_HAVE_LUA - XBT_LOG_CONNECT(lua); - XBT_LOG_CONNECT(lua_host); - XBT_LOG_CONNECT(lua_platf); - XBT_LOG_CONNECT(lua_debug); -#endif - - /* instr */ - XBT_LOG_CONNECT(instr); - XBT_LOG_CONNECT(instr_api); - XBT_LOG_CONNECT(instr_config); - XBT_LOG_CONNECT(instr_msg); - XBT_LOG_CONNECT(instr_msg_process); - XBT_LOG_CONNECT(instr_paje_containers); - XBT_LOG_CONNECT(instr_paje_header); - XBT_LOG_CONNECT(instr_paje_trace); - XBT_LOG_CONNECT(instr_paje_types); - XBT_LOG_CONNECT(instr_paje_values); - XBT_LOG_CONNECT(instr_resource); - XBT_LOG_CONNECT(instr_routing); - XBT_LOG_CONNECT(instr_surf); - - /* jedule */ -#if SIMGRID_HAVE_JEDULE - XBT_LOG_CONNECT(jedule); - XBT_LOG_CONNECT(jed_sd); -#endif - - /* mc */ -#if SIMGRID_HAVE_MC - XBT_LOG_CONNECT(mc); - XBT_LOG_CONNECT(mc_checkpoint); - XBT_LOG_CONNECT(mc_comm_determinism); - XBT_LOG_CONNECT(mc_compare); - XBT_LOG_CONNECT(mc_dwarf); - XBT_LOG_CONNECT(mc_hash); - XBT_LOG_CONNECT(mc_liveness); - XBT_LOG_CONNECT(mc_memory); - XBT_LOG_CONNECT(mc_page_snapshot); - XBT_LOG_CONNECT(mc_request); - XBT_LOG_CONNECT(mc_safety); - XBT_LOG_CONNECT(mc_VisitedState); - XBT_LOG_CONNECT(mc_client); - XBT_LOG_CONNECT(mc_client_api); - XBT_LOG_CONNECT(mc_comm_pattern); - XBT_LOG_CONNECT(mc_process); - XBT_LOG_CONNECT(mc_protocol); - XBT_LOG_CONNECT(mc_Channel); - XBT_LOG_CONNECT(mc_ModelChecker); - XBT_LOG_CONNECT(mc_RegionSnaphot); - XBT_LOG_CONNECT(mc_Session); - XBT_LOG_CONNECT(mc_state); -#endif - XBT_LOG_CONNECT(mc_global); - XBT_LOG_CONNECT(mc_config); - XBT_LOG_CONNECT(mc_record); - - /* msg */ - XBT_LOG_CONNECT(msg); - XBT_LOG_CONNECT(msg_action); - XBT_LOG_CONNECT(msg_gos); - XBT_LOG_CONNECT(msg_io); - XBT_LOG_CONNECT(msg_kernel); - XBT_LOG_CONNECT(msg_mailbox); - XBT_LOG_CONNECT(msg_process); - XBT_LOG_CONNECT(msg_synchro); - XBT_LOG_CONNECT(msg_task); - XBT_LOG_CONNECT(msg_vm); - - /* s4u */ - XBT_LOG_CONNECT(s4u); - XBT_LOG_CONNECT(s4u_activity); - XBT_LOG_CONNECT(s4u_actor); - XBT_LOG_CONNECT(s4u_netzone); - XBT_LOG_CONNECT(s4u_channel); - XBT_LOG_CONNECT(s4u_comm); - XBT_LOG_CONNECT(s4u_file); - XBT_LOG_CONNECT(s4u_link); - XBT_LOG_CONNECT(s4u_vm); - - /* sg */ - XBT_LOG_CONNECT(sg_host); - - /* simdag */ - XBT_LOG_CONNECT(sd); - XBT_LOG_CONNECT(sd_daxparse); -#if HAVE_GRAPHVIZ - XBT_LOG_CONNECT(sd_dotparse); -#endif - XBT_LOG_CONNECT(sd_kernel); - XBT_LOG_CONNECT(sd_task); - - /* simix */ - XBT_LOG_CONNECT(simix); - XBT_LOG_CONNECT(simix_context); - XBT_LOG_CONNECT(simix_deployment); - XBT_LOG_CONNECT(simix_environment); - XBT_LOG_CONNECT(simix_host); - XBT_LOG_CONNECT(simix_io); - XBT_LOG_CONNECT(simix_kernel); - XBT_LOG_CONNECT(simix_mailbox); - XBT_LOG_CONNECT(simix_network); - XBT_LOG_CONNECT(simix_process); - XBT_LOG_CONNECT(simix_popping); - XBT_LOG_CONNECT(simix_synchro); - - /* smpi */ - /* SMPI categories are connected in smpi_global.c */ - - /* surf */ - XBT_LOG_CONNECT(surf); - XBT_LOG_CONNECT(surf_config); - XBT_LOG_CONNECT(surf_cpu); - XBT_LOG_CONNECT(surf_cpu_cas); - XBT_LOG_CONNECT(surf_cpu_ti); - XBT_LOG_CONNECT(surf_energy); - XBT_LOG_CONNECT(surf_kernel); - XBT_LOG_CONNECT(surf_lagrange); - XBT_LOG_CONNECT(surf_lagrange_dichotomy); - XBT_LOG_CONNECT(surf_maxmin); - XBT_LOG_CONNECT(surf_network); -#if SIMGRID_HAVE_NS3 - XBT_LOG_CONNECT(ns3); -#endif - XBT_LOG_CONNECT(surf_parse); - XBT_LOG_CONNECT(surf_plugin_load); - XBT_LOG_CONNECT(surf_route); - XBT_LOG_CONNECT(surf_routing_generic); - XBT_LOG_CONNECT(surf_route_cluster); - XBT_LOG_CONNECT(surf_route_cluster_torus); - XBT_LOG_CONNECT(surf_route_cluster_dragonfly); - XBT_LOG_CONNECT(surf_route_dijkstra); - XBT_LOG_CONNECT(surf_route_fat_tree); - XBT_LOG_CONNECT(surf_route_floyd); - XBT_LOG_CONNECT(surf_route_full); - XBT_LOG_CONNECT(surf_route_none); - XBT_LOG_CONNECT(surf_route_vivaldi); - XBT_LOG_CONNECT(surf_storage); - XBT_LOG_CONNECT(surf_trace); - XBT_LOG_CONNECT(surf_vm); - XBT_LOG_CONNECT(surf_host); - -#endif /* simgrid_EXPORTS */ -} - static void xbt_log_help(void); static void xbt_log_help_categories(void); @@ -837,7 +669,7 @@ static void xbt_log_help(void) "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" + " Defined only when using gcc because there is no __func__ elsewhere.\n" "\n" " -> %%b: full backtrace (Called %%throwable in LOG4J). Defined only under windows or when using the " "GNU libc because\n"