X-Git-Url: http://git.efficios.com/?p=babeltrace.git;a=blobdiff_plain;f=src%2Flib%2Flogging.c;h=5502610fac09c31221e46499f92967cfa1335c3a;hp=b362d667f63e6ea5df925af8ea884cbb9291a711;hb=0235b0db7de5bcacdb3650c92461f2ce5eb2143d;hpb=350ad6c1c5f45a4e90c33e3c1354125c209bbf02 diff --git a/src/lib/logging.c b/src/lib/logging.c index b362d667..5502610f 100644 --- a/src/lib/logging.c +++ b/src/lib/logging.c @@ -1,54 +1,32 @@ /* - * Copyright 2017-2018 Philippe Proulx - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. + * SPDX-License-Identifier: MIT * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. + * Copyright 2017-2018 Philippe Proulx */ #include -#include -#include +#include #define BT_LOG_TAG "LIB/LOGGING" -#include "lib/lib-logging.h" +#include "lib/logging.h" -#ifdef BT_DEV_MODE /* - * Default log level is FATAL in developer mode because fatal logging is - * our way to communicate an unsatisfied precondition and the details. - */ -# define DEFAULT_LOG_LEVEL BT_LOG_FATAL -#else -/* - * In non-developer mode, use NONE by default: we don't print logging - * statements for any executable which links with the library. The - * executable must call bt_logging_set_global_level() or the - * executable's user must set the BABELTRACE_LOGGING_GLOBAL_LEVEL - * environment variable to enable logging. + * This is exported because even though the Python plugin provider is a + * different shared object for packaging purposes, it's still considered + * part of the library and therefore needs the library's run-time log + * level. + * + * The default log level is NONE: we don't print logging statements for + * any executable which links with the library. The executable must call + * bt_logging_set_global_level() or the executable's user must set the + * `LIBBABELTRACE2_INIT_LOG_LEVEL` environment variable to enable + * logging. */ -# define DEFAULT_LOG_LEVEL BT_LOG_NONE -#endif /* BT_DEV_MODE */ - -int bt_lib_log_level = DEFAULT_LOG_LEVEL; +int bt_lib_log_level = BT_LOG_NONE; enum bt_logging_level bt_logging_get_minimal_level(void) { - return BT_LOG_LEVEL; + return BT_MINIMAL_LOG_LEVEL; } enum bt_logging_level bt_logging_get_global_level(void) @@ -58,30 +36,19 @@ enum bt_logging_level bt_logging_get_global_level(void) void bt_logging_set_global_level(enum bt_logging_level log_level) { -#ifdef BT_DEV_MODE - /* - * Do not allow the library's log level to fall to NONE when in - * developer mode because fatal logging is our way to - * communicate an unsatisfied precondition and the details. - */ - if (log_level == BT_LOG_NONE) { - log_level = BT_LOG_FATAL; - } -#endif - bt_lib_log_level = log_level; } static void __attribute__((constructor)) bt_logging_ctor(void) { - const char *v_extra = bt_version_get_extra() ? bt_version_get_extra() : - ""; + const char *v_extra = bt_version_get_development_stage() ? + bt_version_get_development_stage() : ""; bt_logging_set_global_level( - bt_log_get_level_from_env("BABELTRACE_LOGGING_GLOBAL_LEVEL")); - BT_LOGI("Babeltrace %d.%d.%d%s library loaded: " - "major=%d, minor=%d, patch=%d, extra=\"%s\"", + bt_log_get_level_from_env("LIBBABELTRACE2_INIT_LOG_LEVEL")); + BT_LOGI("Babeltrace %u.%u.%u%s library loaded: " + "major=%u, minor=%u, patch=%u, extra=\"%s\"", bt_version_get_major(), bt_version_get_minor(), bt_version_get_patch(), v_extra, bt_version_get_major(), bt_version_get_minor(),