Logging
The load_env_log_level() (C++/Python) function loads the logging level from the environment variable HOLOSCAN_LOG_LEVEL (default: INFO).
#include <holoscan/holoscan.hpp>
int main() {
holoscan::load_env_log_level();
// ...
return 0;
}
from holoscan.logger import load_env_log_level
def main():
load_env_log_level()
# ...
if __name__ == "__main__":
main()
HOLOSCAN_LOG_LEVEL can be set to one of the following values:
TRACE
DEBUG
INFO
WARN
ERROR
CRITICAL
OFF
export HOLOSCAN_LOG_LEVEL=TRACE
The C++ API uses the HOLOSCAN_LOG_XXX() macros to log messages in the application. These macros use the fmtlib format string syntax for their format strings.
Users of the Python API should use the built-in logging module to log messages. Users can control the logging of any underlying C++ Operators used via their Python bindings via the functions in the holoscan.logger module. Specifically, calling load_env_log_level() will load the logging level from the HOLOSCAN_LOG_LEVEL environment variable described above. This log level can also be changed at runtime via set_log_level() using the LogLevel() enum class (e.g. set_log_level(LogLevel.WARN)).