Fix | local logger

This commit is contained in:
shenjack 2023-12-13 11:02:48 +08:00
parent 498cfcc8f7
commit 941f06b719
5 changed files with 24 additions and 20 deletions

View File

@ -4,13 +4,11 @@
# All rights reserved
# -------------------------------
import time
# import logging.config
from pathlib import Path
from Difficult_Rocket.api.types import Options, Version
sdk_version = Version("0.8.7.3") # SDK 版本
sdk_version = Version("0.9.0.0-alpha.0") # SDK 版本
build_version = Version("2.2.0.0") # 编译文件版本(与游戏本体无关)
api_version = Version("0.1.1.0") # API 版本
__version__ = sdk_version
@ -43,7 +41,7 @@ class _DRStatus(Options):
DR 的特性开关 / 基本状态
"""
name = "DR Option"
name = "DR Status"
# run status
client_running: bool = False
server_running: bool = False
@ -81,16 +79,6 @@ DR_status = _DRStatus()
def load_logging():
# with open("./config/logger.toml") as f:
# import rtoml
#
# logger_config = rtoml.load(f)
# log_path = logger_config["handlers"]["file"]["filename"]
# log_path = f"logs/{log_path.format(time.strftime('%Y-%m-%d %H-%M-%S', time.gmtime(time.time_ns() / 1000_000_000)))}"
# if not Path("logs/").is_dir():
# Path("logs/").mkdir()
# logger_config["handlers"]["file"]["filename"] = log_path
# logging.config.dictConfig(logger_config)
log_config_path = Path("./config/lndl-logger.toml")
import rtoml
@ -98,7 +86,10 @@ def load_logging():
if not log_config_path.is_file():
# 生成默认配置文件
from Difficult_Rocket.data import log_config
log_config_path.write_text(log_config.default_config)
try:
log_config_path.write_text(log_config.default_config)
except (FileNotFoundError, OSError, PermissionError):
print("\033[31mFailed to write default log config file\033[0m")
logger_config = rtoml.loads(log_config.default_config)
else:
# 读取配置文件
@ -107,8 +98,18 @@ def load_logging():
# 输入 lndl 进行配置
from lib_not_dr.loggers.config import read_config
read_config(logger_config)
from lib_not_dr.loggers.config import get_logger
logger = get_logger("main")
print("Logger config loaded")
print(logger.as_markdown())
print(logger.outputs[0].as_markdown())
print(logger.outputs[0].formatter.as_markdown())
logger.info("Logger config loaded", tag='DR-init')
logger.info(f"DR status: {DR_status}", tag='DR-init')
# 读取日志配置
# 也保证可以直接运行,不带日志 ( 因为有默认配置 )
load_logging()

View File

@ -5,8 +5,7 @@
# -------------------------------
default_config = """
config_version = 1
default_config = """config_version = 1
[Logger]
@ -47,7 +46,7 @@ config_version = 1
[Formatter.std_formatter]
class = "StdFormatter"
sub_formatter = ["main_formatter"]
default_template = "[{log_time}][{level}]|{logger_name}:{logger_tag}|{messages}"
default_template = "[${log_time}][${level}]|${logger_name}:${logger_tag}|${messages}"
[Outstream]
@ -76,6 +75,7 @@ config_version = 1
# or flush_time_limit = 0.5
file_path = "./logs"
file_name = "dr-{time}.log"
"""
# 整的跟 export 一样

View File

@ -39,7 +39,7 @@ config_version = 1
[Formatter.std_formatter]
class = "StdFormatter"
sub_formatter = ["main_formatter"]
default_template = "[{log_time}][{level}]|{logger_name}:{logger_tag}|{messages}"
default_template = "[${log_time}][${level}]|${logger_name}:${logger_tag}|${messages}"
[Outstream]

View File

@ -9,6 +9,9 @@
### Rename
- `Api_version` -> `api_version`
- `_DR_Status` -> `_DRStatus`
- `name` = `DR Option` -> `DR Status`
- 这毛病属实是没想到, 之前一直没发现
### Add

@ -1 +1 @@
Subproject commit a4e63ef73f6d25a7840c88dc6f4286157785f41e
Subproject commit 4fa50898199bad9b97530373a15dc575e4024000