You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
alpha_tools/simple72/fix_log_levels.py

46 lines
2.0 KiB

#!/usr/bin/env python3
"""
批量修复日志级别脚本
将 logger.info 中应该为 warning 或 error 的改为正确的级别
"""
import re
def fix_log_levels(file_path):
with open(file_path, 'r', encoding='utf-8') as f:
content = f.read()
# 定义需要改为 warning 的模式
warning_patterns = [
(r'logger\.info\("(⚠[^"]*)"\s*,\s*flush\s*=\s*True\)', r'logger.warning("\1")'),
(r'logger\.info\(f"(⚠[^"]*)"\s*,\s*flush\s*=\s*True\)', r'logger.warning(f"\1")'),
(r'logger\.info\("([^"]*Warning[^"]*)"\s*,\s*flush\s*=\s*True\)', r'logger.warning("\1")'),
(r'logger\.info\(f"([^"]*Warning[^"]*)"\s*,\s*flush\s*=\s*True\)', r'logger.warning(f"\1")'),
]
# 定义需要改为 error 的模式
error_patterns = [
(r'logger\.info\("(❌[^"]*)"\s*,\s*flush\s*=\s*True\)', r'logger.error("\1")'),
(r'logger\.info\(f"(❌[^"]*)"\s*,\s*flush\s*=\s*True\)', r'logger.error(f"\1")'),
(r'logger\.info\("([^"]*Failed[^"]*)"\s*,\s*flush\s*=\s*True\)', r'logger.error("\1")'),
(r'logger\.info\(f"([^"]*Failed[^"]*)"\s*,\s*flush\s*=\s*True\)', r'logger.error(f"\1")'),
(r'logger\.info\("(错误:[^"]*)"\s*,\s*flush\s*=\s*True\)', r'logger.error("\1")'),
(r'logger\.info\(f"(错误:[^"]*)"\s*,\s*flush\s*=\s*True\)', r'logger.error(f"\1")'),
]
# 应用 warning 模式
for pattern, replacement in warning_patterns:
content = re.sub(pattern, replacement, content, flags=re.IGNORECASE)
# 应用 error 模式
for pattern, replacement in error_patterns:
content = re.sub(pattern, replacement, content, flags=re.IGNORECASE)
with open(file_path, 'w', encoding='utf-8') as f:
f.write(content)
print(f"✓ 已修复: {file_path}")
if __name__ == "__main__":
fix_log_levels("/Users/jack/source/mySpace/mycode/my_project/py/alpha_odoo/alpha_tools/simple72/Tranformer/Transformer.py")
print("✓ 所有日志级别修复完成!")