record.log.config module

class record.log.config.LogConfig(source: Config | dict[str, Any], dict_prefix: str = '')[源代码]

基类:Config

format

延迟加载的配置项

在Config类中作为属性定义,如:

class AppConfig(Config):
    # 由语言服务器自动推断类型
    value = LazySetting('value', default=0)
    op1 = LazySetting('op1', int)
    op2 = LazySetting('op2', int, default=0)
    # 也可以使用type指定类型,写法建议参考`LazySetting.checkable_type`的文档
    assert_d = LazySetting('value/dict', type=dict)
    i_or_s = LazySetting('value/i_or_s', type=(int, str))
    assert_ls = LazySetting('value/ls', type=list[str])
    tuple = LazySetting('value/tuple', type=tuple[int, str])

上述代码在访问时会自动计算并缓存结果:

config = AppConfig()
# 自动推断的类型
config.value: int
config.op1: int | None
config.op2: int
# 用type指定的类型
config.assert_d: dict
config.i_or_s: int | str    # 检查是否为int或str
list[str], tuple[int, str]  # 检查是否为列表,元组等,不检查元素类型
抛出:

ImproperlyConfigured -- 配置最终值不匹配期望类型

level

延迟加载的配置项

在Config类中作为属性定义,如:

class AppConfig(Config):
    # 由语言服务器自动推断类型
    value = LazySetting('value', default=0)
    op1 = LazySetting('op1', int)
    op2 = LazySetting('op2', int, default=0)
    # 也可以使用type指定类型,写法建议参考`LazySetting.checkable_type`的文档
    assert_d = LazySetting('value/dict', type=dict)
    i_or_s = LazySetting('value/i_or_s', type=(int, str))
    assert_ls = LazySetting('value/ls', type=list[str])
    tuple = LazySetting('value/tuple', type=tuple[int, str])

上述代码在访问时会自动计算并缓存结果:

config = AppConfig()
# 自动推断的类型
config.value: int
config.op1: int | None
config.op2: int
# 用type指定的类型
config.assert_d: dict
config.i_or_s: int | str    # 检查是否为int或str
list[str], tuple[int, str]  # 检查是否为列表,元组等,不检查元素类型
抛出:

ImproperlyConfigured -- 配置最终值不匹配期望类型

log_dir

延迟加载的配置项

在Config类中作为属性定义,如:

class AppConfig(Config):
    # 由语言服务器自动推断类型
    value = LazySetting('value', default=0)
    op1 = LazySetting('op1', int)
    op2 = LazySetting('op2', int, default=0)
    # 也可以使用type指定类型,写法建议参考`LazySetting.checkable_type`的文档
    assert_d = LazySetting('value/dict', type=dict)
    i_or_s = LazySetting('value/i_or_s', type=(int, str))
    assert_ls = LazySetting('value/ls', type=list[str])
    tuple = LazySetting('value/tuple', type=tuple[int, str])

上述代码在访问时会自动计算并缓存结果:

config = AppConfig()
# 自动推断的类型
config.value: int
config.op1: int | None
config.op2: int
# 用type指定的类型
config.assert_d: dict
config.i_or_s: int | str    # 检查是否为int或str
list[str], tuple[int, str]  # 检查是否为列表,元组等,不检查元素类型
抛出:

ImproperlyConfigured -- 配置最终值不匹配期望类型

stack_level

延迟加载的配置项

在Config类中作为属性定义,如:

class AppConfig(Config):
    # 由语言服务器自动推断类型
    value = LazySetting('value', default=0)
    op1 = LazySetting('op1', int)
    op2 = LazySetting('op2', int, default=0)
    # 也可以使用type指定类型,写法建议参考`LazySetting.checkable_type`的文档
    assert_d = LazySetting('value/dict', type=dict)
    i_or_s = LazySetting('value/i_or_s', type=(int, str))
    assert_ls = LazySetting('value/ls', type=list[str])
    tuple = LazySetting('value/tuple', type=tuple[int, str])

上述代码在访问时会自动计算并缓存结果:

config = AppConfig()
# 自动推断的类型
config.value: int
config.op1: int | None
config.op2: int
# 用type指定的类型
config.assert_d: dict
config.i_or_s: int | str    # 检查是否为int或str
list[str], tuple[int, str]  # 检查是否为列表,元组等,不检查元素类型
抛出:

ImproperlyConfigured -- 配置最终值不匹配期望类型