Source code for nv_ingest_api.util.logging.configuration

# SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES.
# All rights reserved.
# SPDX-License-Identifier: Apache-2.0


import logging
import sys
from enum import Enum


[docs] class LogLevel(str, Enum): DEFAULT = "DEFAULT" DEBUG = "DEBUG" INFO = "INFO" WARNING = "WARNING" ERROR = "ERROR" CRITICAL = "CRITICAL"
[docs] def configure_logging(level_name: str) -> None: """ Configures global logging. Parameters ---------- level_name : str The name of the logging level (e.g., "DEBUG", "INFO"). """ numeric_level = getattr(logging, level_name.upper(), None) if not isinstance(numeric_level, int): raise ValueError(f"Invalid log level: {level_name}") logging.basicConfig( level=numeric_level, format="%(asctime)s - %(levelname)s - %(name)s - %(message)s", stream=sys.stdout, force=True, # <- reconfigures even if basicConfig was called earlier (Python 3.8+) )