optuna.logging.enable_propagation

optuna.logging.enable_propagation()[源代码]

启用库日志输出的传播。

如果根日志记录器已被配置,请禁用 Optuna 的默认处理程序以防止重复日志记录。

示例

将所有日志输出传播到根日志记录器,以便将它们保存到文件中。

import optuna
import logging

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.
optuna.logging.disable_default_handler()  # Stop showing logs in sys.stderr.

study = optuna.create_study()

logger.info("Start optimization.")
study.optimize(objective, n_trials=10)

with open("foo.log") as f:
    assert f.readline().startswith("A new study created")
    assert f.readline() == "Start optimization.\n"
返回类型:

None