optuna.logging.disable_propagation
- optuna.logging.disable_propagation()[source]
禁用库日志输出的传播。
请注意,日志传播默认是禁用的。只有在使用
enable_propagation()
时,才需要使用此函数来停止日志传播。示例
在第二次 optimize 调用时停止将日志传播到根记录器。
import optuna import logging optuna.logging.disable_default_handler() # Disable the default handler. logger = logging.getLogger() logger.setLevel(logging.INFO) # Setup the root logger. logger.addHandler(logging.FileHandler("foo.log", mode="w")) optuna.logging.enable_propagation() # Propagate logs to the root logger. study = optuna.create_study() logger.info("Logs from first optimize call") # The logs are saved in the logs file. study.optimize(objective, n_trials=10) optuna.logging.disable_propagation() # Stop propogating logs to the root logger. logger.info("Logs from second optimize call") # The new logs for second optimize call are not saved. study.optimize(objective, n_trials=10) with open("foo.log") as f: assert f.readline().startswith("A new study created") assert f.readline() == "Logs from first optimize call\n" # Check for logs after second optimize call. assert f.read().split("Logs from second optimize call\n")[-1] == ""
- 返回类型:
None