开发与工程 ✓ Microsoft · 官方 azure-service-buspython-sdkmessage-queuespub-subenterprise-messagingazure-identity

Azure Service Bus Python 技能

为 Python 开发者提供 Azure Service Bus 队列与发布/订阅消息模式的实用指导。

FollowSkills 评估 · FSRS-2.0
不推荐
45/ 100 五分制 2.3 / 5
信任安全14 / 25 · 2.8/5

文档优先推荐 DefaultAzureCredential、避免密钥,并说明了部分认证数据流;但安装依赖和权限范围未细化,脚本允许使用连接字符串,且提供 queue/topic/subscription delete 操作而无确认、回滚或恢复说明;DLQ 示例还会打印消息体,可能暴露敏感数据。因此扣除最小权限、敏感数据处理、外部副作用和恢复保障分数。

可靠稳定6 / 20 · 1.5/5

主路径覆盖发送、接收、结算、会话、DLQ 和管理操作,但多个示例存在未导入名称、环境变量要求与示例不一致、异步凭据未始终关闭等问题;引用脚本也缺少异常分类和结构化失败反馈。仓库有通用 CI 与测试,但未证明该技能关键路径可执行,因此按静态校准限制保持在 10 分以下。

适用触发8 / 15 · 2.7/5

触发词、Python SDK 目标和队列/主题/订阅场景较清楚,且覆盖同步异步与多种消息模式;但未明确不适用边界、版本兼容矩阵、输入输出契约或中国 Azure 环境适配,核心功能依赖 Azure 服务连通性,缺少中国大陆网络和云区域说明。因此扣除边界、环境适配和触发精度分数。

规范维护8 / 15 · 2.7/5

SKILL.md 具有安装、认证、生命周期、操作模式、最佳实践和参考文件分层,声明 MIT、作者和 1.0.0 版本;但没有变更日志、维护责任、升级路径、依赖版本、FAQ 或系统化故障排查,示例与引用脚本之间也有隐含假设。因此扣除可维护性和治理完整性分数。

有效结果6 / 15 · 2.0/5

内容能够直接帮助用户编写常见 Service Bus 发送、接收、结算、会话、DLQ 和管理代码,边际价值明显;但若干片段需要补充导入、校正 API 或补齐错误处理,且没有该技能专属可验证输出或测试结果,交付前仍需较多审查。因此按静态上限给出中等偏上的有效性分数而非满分。

证据核验3 / 10 · 1.5/5

文件提供了可审阅的代码、配置示例、引用文档和仓库级 CI/测试线索;但没有该技能专属测试套件、真实运行结果、依赖锁定或多来源交叉验证,仓库通用测试不能证明此路径的关键示例。因此仅给有限静态可验证性分数。

证据充分度: 评估于 2026年7月20日 审查版本 9ccaf7c3704a
使用前请注意
  • 执行 setup_servicebus.py 的 delete 命令前必须增加人工确认、最小权限和可恢复备份;当前文档未提供回滚方案。
  • 不要在日志或 DLQ 分析中直接打印消息体、异常全文或应用属性,除非已完成脱敏。
  • 发布前应逐段验证示例的导入、SDK API、异步凭据生命周期和环境变量要求,并补充针对该技能的 CI/测试。
  • 面向中国大陆用户时,应说明 Azure 公有云/中国区差异、网络可达性和认证配置限制。
查看完整评分方法 →

它能做什么 & 适用场景

该技能面向使用 Azure Service Bus Python SDK 构建企业消息系统的开发者。它覆盖队列、主题、订阅、消息发送与接收、消息结算、会话、定时消息和死信队列。内容同时提供同步与异步客户端示例,并建议使用 DefaultAzureCredential 和上下文管理器。适合需要可靠云端消息通信的 Azure Python 项目,但不提供完整的部署、基础设施或服务端配置指南。

指导安装 azure-servicebus 与 azure-identity,配置 Service Bus 命名空间、队列、主题和订阅环境变量;生成使用 ServiceBusClient、sender 和 receiver 的同步或异步 Python 代码;演示批量发送、PEEK_LOCK 与 RECEIVE_AND_DELETE、complete/abandon/dead-letter/defer、主题订阅、FIFO 会话、定时消息和死信队列操作;引用模式文档与 setup_servicebus.py CLI 的位置。

  1. Python 后端开发者需要向 Azure Service Bus 队列发送和接收业务消息时。
  2. 企业应用需要使用主题和订阅实现发布/订阅分发时。
  3. 需要 PEEK_LOCK、消息完成、放弃和死信处理的可靠消费流程时。
  4. 需要按会话保持 FIFO 顺序处理订单或其他相关消息时。
  5. 需要批量发送、定时投递或监控死信队列的 Azure 项目时。

优缺点一览

优点
  • 覆盖队列、主题、订阅、会话、批量、定时消息和死信队列等常见 Service Bus 场景。
  • 同时提供同步和异步 Python 示例,并明确客户端及异步凭据的生命周期管理。
  • 强调 DefaultAzureCredential、生产环境凭据限制和消息结算等实践。
局限
  • 内容聚焦 SDK 使用,未提供完整的 Azure 资源创建、网络配置或权限授予流程。
  • 示例依赖已有的 Service Bus 命名空间及实体;所需环境变量值需要自行准备。
  • 未提供该技能专属测试套件或测试覆盖证据。

如何安装

安装整个仓库的技能集合:运行 npx skills add microsoft/skills,在向导中选择所需技能。技能安装到所选 Agent 的目录,例如 GitHub Copilot 使用 .github/skills/。该技能的仓库路径是 .github/plugins/azure-sdk-python/skills/azure-servicebus-py/。Python 依赖安装命令为 pip install azure-servicebus azure-identity

如何使用

在编码 Agent 中提出类似“使用 Python Azure Service Bus,为订单队列实现异步发送和 PEEK_LOCK 接收,并正确结算消息”的请求。代码应配置 SERVICEBUS_FULLY_QUALIFIED_NAMESPACE 及相应的队列、主题或订阅变量;优先使用 DefaultAzureCredential,并为同步客户端使用 with、为异步客户端使用 async with

常见问题

使用该技能是否需要 Azure 权限?
需要可访问目标 Service Bus 命名空间及实体的凭据。技能建议使用 DefaultAzureCredential,但未列出具体 RBAC 授权步骤。
应该选择同步还是异步客户端?
技能建议每个调用路径保持一致;简单脚本可使用同步客户端,生产工作负载建议使用异步客户端。
消息处理失败时如何处理?
可放弃消息以便稍后重试,或将永久失败消息移入死信队列;成功处理后应完成消息。

同仓库的其他 Skills

均来自 microsoft/agent-skills

开发与工程 ✓ Microsoft · 官方

Azure Identity Python 认证技能

为 Python Azure 应用提供基于 Microsoft Entra ID 的可复用身份认证指导。

开发与工程 ✓ Microsoft · 官方

Azure Event Hubs Java 开发技能

帮助 Java 开发者构建高吞吐、可 checkpoint 的 Azure 事件流应用。

开发与工程 ✓ Microsoft · 官方

Azure Tables Python 技能

帮助 Python 开发者使用 Azure Tables 完成安全认证、实体管理、查询与批量事务操作。

开发与工程 ✓ Microsoft · 官方

Azure Identity TypeScript

为 TypeScript Azure 应用配置安全、可切换的 Microsoft Entra ID 身份验证。

自动化与运维 ✓ Microsoft · 官方

Azure 应用可靠性顾问

评估并提升 Azure Functions 与 App Service 的可靠性。

开发与工程 ✓ Microsoft · 官方

Azure 云架构师

帮助编码代理按照 Azure 架构中心最佳实践设计和审查生产级云系统。

开发与工程 ✓ Microsoft · 官方

Azure AI 文本分析 Python 技能

为 Python 开发者提供 Azure 文本分析与自然语言处理集成指导。

自动化与运维 ✓ Microsoft · 官方

Azure 资源架构可视化器

分析 Azure 资源组及其依赖关系,生成详细的 Mermaid 架构图。

开发与工程 ✓ Microsoft · 官方

Azure Maps .NET 开发技能

为 .NET 应用提供地理搜索、路线、地图、定位与天气开发指导。

开发与工程 ✓ Microsoft · 官方

Azure AI Vision 图像分析技能

为 Python 编码代理提供 Azure AI Vision 图像理解实现指南。

开发与工程 ✓ Microsoft · 官方

Azure Blob Storage Python 技能

帮助 Python 开发者安全高效地操作 Azure Blob Storage。

开发与工程 ✓ Microsoft · 官方

Azure Queue Storage Python 技能

帮助编码代理使用 Python 构建安全、可靠的 Azure Queue Storage 异步消息处理。

自动化与运维 ✓ Microsoft · 官方

Azure AI 网关治理

用 Azure API Management 统一治理 AI 模型、MCP 工具和智能体流量。

自动化与运维 ✓ Microsoft · 官方

AKS Automatic 就绪评估

评估 Kubernetes 工作负载能否迁移到 AKS Automatic,并定位兼容性阻塞项。

开发与工程 ✓ Microsoft · 官方

Azure Cosmos DB .NET 资源管理技能

用 .NET 通过 ARM 部署和管理 Azure Cosmos DB 资源。

开发与工程 ✓ Microsoft · 官方

Azure Playwright 工作区管理技能

用 .NET 通过 Azure Resource Manager 配置和管理 Microsoft Playwright Testing 工作区。

开发与工程 ✓ Microsoft · 官方

Azure Cosmos DB Python 技能

帮助 Python 开发者可靠地构建和操作 Azure Cosmos DB NoSQL 应用。

开发与工程 ✓ Microsoft · 官方

Azure Key Vault Python SDK 技能

帮助 Python 编码代理安全管理 Azure Key Vault 中的机密、加密密钥和证书。

开发与工程 ✓ Microsoft · 官方

Azure API Management Python 技能

帮助编码代理使用 Python SDK 管理 Azure API Management 的服务、API、产品、订阅与策略。

开发与工程 ✓ Microsoft · 官方

Azure Monitor 查询 Python 技能

帮助 Python 开发者查询 Azure Monitor 日志与指标。

相关 Skills