高质量Python开发运维脚本编写提示词
这是一份为Python开发与运维工程师设计的专业提示词方案,旨在系统化指导如何生成高质量、可维护...
提示词内容
复制角色定义与任务定位
请以“资深Python开发与运维工程师”的身份,并设定“编写一个用于解决特定运维场景问题的高质量、健壮、可维护的Python脚本”为明确目标来使用本提示词。你的核心产出不是演示代码片段,而是可直接部署于生产环境、具备良好错误处理、日志记录和可配置性的完整脚本方案。
适用场景
- 服务器资源监控与自动化告警(CPU、内存、磁盘、进程)。
- 日志文件的自动化分析、归档与关键信息提取。
- 批量系统配置管理、文件分发与应用程序部署。
- 数据库的定期备份、健康检查与数据清理任务。
- 网络服务的状态探测与自动化故障恢复。
核心提示词
以下为可直接使用或组合的核心提示词结构,请将 `{具体任务}` 替换为你的实际需求:
- “编写一个Python脚本,用于{监控指定目录的文件变化并同步到备份服务器}。要求使用argparse解析命令行参数,包含完整的日志记录(logging模块)、异常处理,并支持配置文件(YAML格式)读取路径和服务器信息。”
- “开发一个专业的生产环境运维脚本,功能是{定期检查多个远程主机的SSH连通性与关键服务端口}。脚本需支持从CSV文件读取主机列表,使用多线程或异步提高效率,结果输出为HTML报告,并集成邮件告警功能。”
- “生成一个健壮的Python脚本,实现{自动化清理超过N天的特定日志文件,但排除正在被进程占用的文件}。要求脚本包含详细注释、安全删除确认机制(可交互或 dry-run 模式),并记录所有操作到syslog。”
风格方向
- 代码架构:采用函数式或轻量级面向对象设计。主逻辑清晰,将配置、业务逻辑、工具函数分离。
- 代码规范:严格遵循PEP 8风格指南。使用有意义的变量名和函数名(动词开头),添加模块文档字符串(docstring)和关键函数注释。
- 工业级质感:代码应体现“为运维而设计”的专业感,优先考虑可读性、可维护性和可扩展性,而非一味追求最简短的写法。
构图建议(代码结构布局)
- 头部区域:Shebang (`#!/usr/bin/env python3`)、模块编码声明、详细的脚本功能描述、作者、版本变更记录。
- 导入区块:按标准库、第三方库、本地模块顺序分组导入。
- 配置区块:定义常量、或封装配置读取函数,避免硬编码。
- 函数定义区:每个函数职责单一,工具函数在前,主逻辑函数在后。
- 主程序入口:使用 `if __name__ == '__main__':` 包裹,清晰组织参数解析、初始化、主逻辑调用和优雅退出。
细节强化
- 错误处理:针对文件I/O、网络请求、外部命令执行等可能失败的操作,使用try-except进行具体异常捕获,并给出有意义的错误信息记录到日志。
- 日志记录:使用Python `logging` 模块,配置不同级别(DEBUG, INFO, WARNING, ERROR),建议同时输出到控制台和文件。
- 可配置性:通过命令行参数(argparse)和/或配置文件(JSON/YAML)来参数化脚本行为,提高灵活性。
- 安全考虑:涉及密码或密钥时,提示从环境变量或安全 vault 读取,避免明文写在脚本中。
- 性能提示:处理大量文件或网络请求时,考虑使用生成器、`with`语句管理资源,或采用并发机制(如`concurrent.futures`)。
使用建议
- 将上述“核心提示词”直接复制到AI编程助手的对话起点,可快速获得符合专业要求的脚本草稿。
- 在实际生成代码后,重点审查和补充异常处理分支、日志记录点以及配置加载部分,这是AI容易忽略或简化的环节。
- 本方案也可作为团队内部编写运维脚本的检查清单或规范模板,确保产出代码风格统一、质量可控。
- 根据具体运维环境(如Linux/Windows, 有无特定Agent)调整依赖库和系统命令调用方式。