OnmyojiAutoScript 通知推送功能优化实践
背景概述
在自动化脚本开发领域,通知推送功能是系统监控的重要组成部分。以阴阳师自动化脚本项目OnmyojiAutoScript为例,其通知模块需要清晰传达任务执行状态,特别是在任务异常时能够提供足够信息供开发者快速定位问题。
原始问题分析
原通知系统存在信息简略的问题,主要表现在:
- 仅显示基础错误状态(如"crashed")
- 缺乏具体任务上下文
- 任务名称使用英文标识符,对中文用户不够友好
这种设计会导致维护人员在接收报警时需要额外查证当前运行的具体任务,降低了问题排查效率。
技术解决方案
项目团队通过以下方式进行了优化:
1. 任务名称嵌入
修改通知模块的标题生成逻辑(notify.py),将当前运行的任务名称动态插入到推送标题中。例如:
# 优化后的标题生成示例
title = f"[异常报警] {current_task} 任务执行异常"
2. 中英标识映射
虽然核心模块保持英文标识符(如"BondlingFairyland"),但在展示层建议:
- 维护中英文任务名称对照表
- 在用户界面展示时进行本地化转换
- 保留原始英文标识用于日志记录
实现效果
优化后的通知系统具有以下特点:
- 信息完整性:直接显示异常任务名称
- 可读性提升:通过后续处理可实现中文展示
- 兼容性保持:核心逻辑仍使用英文标识,不影响程序执行
最佳实践建议
对于类似自动化项目,建议:
- 异常通知应包含"5W"要素(What/When/Where/Why/Who)
- 保持核心代码与展示层的分离
- 建立标准的任务命名规范
- 考虑实现多语言支持架构
总结
本次优化通过增强通知内容的信息密度,显著提升了系统的可维护性。这种"机器友好+人工可读"的双重设计思路,值得在其他自动化项目中借鉴应用。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考