技能 Azure Event Grid SDK for Python
📦

Azure Event Grid SDK for Python

安全

使用 Azure Event Grid 发布和路由事件

通过此技能在 Azure 上构建事件驱动型应用程序。它将指导您使用 Azure Event Grid Python SDK 发布 CloudEvents 和 EventGridEvents。

支持: Claude Codex Code(CC)
🥉 73 青铜
1

下载技能 ZIP

2

在 Claude 中上传

前往 设置 → 功能 → 技能 → 上传技能

3

开启并开始使用

测试它

正在使用“Azure Event Grid SDK for Python”。 发布 CloudEvent 当订单创建时

预期结果:

以下是发布订单创建 CloudEvent 的代码:

from azure.eventgrid import EventGridPublisherClient, CloudEvent
from azure.identity import DefaultAzureCredential

client = EventGridPublisherClient(endpoint, DefaultAzureCredential())

event = CloudEvent(
type="MyApp.Events.OrderCreated",
source="/myapp/orders",
data={"order_id": "12345", "amount": 99.99}
)
client.send(event)

正在使用“Azure Event Grid SDK for Python”。 如何向 Azure Event Grid 进行身份验证?

预期结果:

使用 DefaultAzureCredential 进行身份验证:

1. 安装:pip install azure-identity azure-eventgrid
2. 设置环境变量:EVENTGRID_TOPIC_ENDPOINT
3. 创建客户端:EventGridPublisherClient(endpoint, DefaultAzureCredential())

DefaultAzureCredential 支持托管标识、服务主体和本地开发身份验证。

安全审计

安全
v1 • 2/24/2026

This is a prompt-only skill containing documentation and code examples for the Azure Event Grid SDK for Python. Static analysis scanned 0 files with a risk score of 0/100. No security concerns identified as the skill provides reference documentation without any executable code or runtime behavior.

0
已扫描文件
0
分析行数
0
发现项
1
审计总数
未发现安全问题
审计者: claude

质量评分

38
架构
100
可维护性
87
内容
50
社区
100
安全
83
规范符合性

你能构建什么

事件驱动微服务

构建通过 Event Grid 通信的解耦微服务

实时事件发布

从 Python 应用程序向 Azure Event Grid 发布 CloudEvents

无服务器集成

通过 Event Grid 事件连接 Azure Functions 和 Logic Apps

试试这些提示

发布单个 CloudEvent
帮助我在新订单创建时向 Azure Event Grid 发布 CloudEvent。事件应包含 order_id 和 amount 字段。
批量事件发布
展示如何使用 Azure Event Grid Python SDK 通过批处理高效发布多个事件。
异步事件发布设置
我需要为高吞吐量场景设置异步事件发布。指导我使用异步 EventGridPublisherClient。
Event Grid Namespace 配置
解释如何配置和使用 Event Grid Namespaces 进行拉取交付。包括身份验证和主题配置。

最佳实践

  • 对新应用程序使用 CloudEvents 格式,因为它是互操作性的行业标准
  • 发布时将多个事件批量在一起以提高吞吐量并减少 API 调用
  • 在事件中包含有意义的主旨以实现高效的过滤和路由

避免

  • 不要在代码中硬编码连接字符串或凭据。使用环境变量或托管标识。
  • 避免在高吞吐量场景中同步发送事件。改用异步客户端。
  • 除非需要 Azure 原生功能,否则不要在新应用程序中使用 EventGridEvent 模式。优先使用 CloudEvents。

常见问题

CloudEvent 和 EventGridEvent 之间有什么区别?
CloudEvent 遵循 CNCF CloudEvents 规范以实现跨平台互操作性。EventGridEvent 使用 Azure 原生模式并具有额外的 Azure 特定功能。对于新应用程序,推荐使用 CloudEvent。
如何向 Azure Event Grid 进行身份验证?
使用 DefaultAzureCredential,它支持多种身份验证方法:托管标识(推荐用于 Azure 托管应用)、带客户端密钥的服务主体,或用于本地开发的 Azure CLI 凭据。
我可以异步发布事件吗?
可以。对异步操作使用 azure.eventgrid.aio.EventGridPublisherClient。这推荐用于高吞吐量场景,并能与异步 Python 框架良好集成。
什么是 Event Grid Namespaces?
Event Grid Namespaces 提供基于拉取的交付模型,客户端可以按需检索事件。这与基于推送的自定义主题不同。当您需要更多事件消费控制权时使用 Namespaces。
如何处理失败的事件发布?
Event Grid 具有内置重试策略。对于自定义重试逻辑,在 try-except 块中包装 send 调用并实现指数退避。对于持续性故障,考虑使用死信队列。
事件负载支持哪些数据格式?
Event Grid 默认支持 JSON 负载。您可以设置 datacontenttype 来指定格式。常见类型包括 application/json、application/xml 和 text/plain。

开发者详情

文件结构

📄 SKILL.md