TL;DR: 本文档旨在指导SRE团队成员利用Zapier和Make(原Integromat)平台,将AI服务(如通过API访问的Gemini模型)集成到现有工作流中,实现自动化。重点在于配置触发器、动作和数据映射,以减少手动干预,提升运营效率。我们将通过具体案例演示如何实现AI自动化工作流。
1. 前提条件与工具准备
在开始集成前,请确保满足以下条件:
- Zapier或Make账户: 拥有有效的Zapier或Make订阅。对于Make,如果需要 高级功能,请确保账户权限。
- AI服务API密钥: 例如,Google AI Studio的API密钥,用于访问Gemini模型。关于 Gemini怎么注册 和 Google AI怎么用,请参阅内部文档《Gemini API集成指南》。
- 相关应用账户: 需要集成的其他应用账户,如Slack、Google Sheets、Jira等。
Warning: API密钥应妥善保管,切勿硬编码到公共代码库或不安全的存储位置。建议使用环境变量或平台提供的安全凭证管理功能。
2. Zapier平台集成AI工作流
以一个SRE场景为例:当新Jira工单创建时,自动使用AI对工单描述进行初步分类和摘要,并将结果发送到Slack。
2.1. 创建Zap
登录Zapier,点击“Create Zap”。
# Zapier UI操作:点击 "Create Zap"
预期输出:进入Zap编辑界面。
2.2. 配置触发器 (Trigger)
选择Jira作为触发应用,事件为“New Issue”。
# Zapier UI操作:
# 1. Choose App & Event: Jira Software
# 2. Trigger Event: New Issue
# 3. Choose Account: [Your Jira Account]
# 4. Set up trigger: Select Project/Issue Type (e.g., "SRE Project", "Bug")
# 5. Test trigger
预期输出:成功获取Jira测试数据,包含工单ID、描述等信息。
2.3. 配置AI动作 (Action)
选择“Webhooks by Zapier”作为AI服务的中间层,或直接选择支持的AI应用(若有)。此处以通过Webhooks调用Gemini API为例。
# Zapier UI操作:
# 1. Choose App & Event: Webhooks by Zapier
# 2. Action Event: Custom Request
# 3. Method: POST
# 4. URL: https://generativelanguage.googleapis.com/v1beta/models/gemini-pro:generateContent?key=YOUR_GEMINI_API_KEY
# 5. Data Pass-Through: No
# 6. Data: { "contents": [{"parts": [{"text": "Please summarize and categorize this SRE incident ticket: " + {{2. Description}} + "\nCategory: "}]}]}
# (注意:{{2. Description}} 为Jira触发器输出的工单描述字段)
# 7. Headers: Content-Type: application/json
# 8. Test action
预期输出:HTTP 200响应,包含Gemini模型生成的总结和分类结果。
Note: 为了 Gemini国内使用,可能需要配置代理或VPN服务,确保API可达。
2.4. 配置后续动作
将AI处理结果发送到Slack。
# Zapier UI操作:
# 1. Choose App & Event: Slack
# 2. Action Event: Send Channel Message
# 3. Choose Account: [Your Slack Account]
# 4. Set up action:
# Channel: #sre-alerts
# Message Text: "New SRE Incident: {{2. Summary}} \nAI Analysis: {{3. choices__0__content}} "
# (注意:{{2. Summary}} 为Jira输出的工单标题,{{3. choices__0__content}} 为AI API的响应内容)
# 5. Test action
预期输出:Slack频道收到包含AI分析的通知消息。
3. Make平台集成AI工作流
Make提供更强大的可视化流程控制。以类似场景为例:新邮件到达时,使用AI提取关键信息并更新Google Sheet。
3.1. 创建新场景 (Scenario)
登录Make,点击“Create a new scenario”。
# Make UI操作:点击 "Create a new scenario"
预期输出:进入场景编辑画布。
3.2. 配置触发器 (Trigger)
选择Gmail作为触发模块,事件为“Watch emails”。
# Make UI操作:
# 1. Add first module: Gmail
# 2. Trigger: Watch emails
# 3. Connection: [Your Gmail Account]
# 4. Folder: Inbox
# 5. Criteria: (Optional, e.g., Subject contains "Urgent SRE Request")
# 6. Run once to test
预期输出:获取Gmail测试数据。
3.3. 配置AI模块
添加HTTP模块调用Gemini API。
# Make UI操作:
# 1. Add another module: HTTP
# 2. Action: Make a request
# 3. URL: https://generativelanguage.googleapis.com/v1beta/models/gemini-pro:generateContent?key=YOUR_GEMINI_API_KEY
# 4. Method: POST
# 5. Headers: Content-Type: application/json
# 6. Body type: Raw
# 7. Content type: JSON
# 8. Request content: { "contents": [{"parts": [{"text": "Extract key entities (e.g., system, error code, urgency) from this email: " + {{1. Text content}} + "\nJSON format: "}]}]}
# (注意:{{1. Text content}} 为Gmail模块输出的邮件正文)
# 9. Parse response: Yes
# 10. Run once to test
预期输出:HTTP 200响应,包含AI提取的关键信息。
3.4. 更新Google Sheet
添加Google Sheets模块,更新提取信息。
# Make UI操作:
# 1. Add another module: Google Sheets
# 2. Action: Update a Row
# 3. Connection: [Your Google Sheets Account]
# 4. Spreadsheet: [Your Spreadsheet Name]
# 5. Sheet name: [Your Sheet Name]
# 6. Row number: (e.g., dynamically map a row based on email ID, or append a row)
# 7. Values: Map AI响应中的字段到对应的列 (e.g., Column A: {{2. choices__0__content__system}}, Column B: {{2. choices__0__content__urgency}})
# 8. Run once to test
预期输出:Google Sheet中对应行被更新。
4. 总结与展望
通过Zapier和Make等工具,SRE团队可以显著提升AI在日常操作中的应用效率。无论是工单处理、报告生成还是数据分析,AI自动化工作流都能减少重复性劳动,使团队能够专注于更复杂的工程问题。未来,我们将探索更多 Gemini怎么用 的高级场景,例如结合自然语言处理进行告警富化或根因分析自动化。