#!/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("✓ 所有日志级别修复完成!")