Dev & Engineering ✓ Microsoft · Official rustazure-event-hubsevent-streamingbatch-processingazure-sdkcargo

Azure Event Hubs for Rust

A practical guide to sending, batching, and consuming Azure Event Hubs data with the official Rust SDK.

FollowSkills review · FSRS-2.0
Use with care
49/ 100 5-point scale 2.5 / 5
1 2 3 4 5 6
1Trust15 / 25 · 3.0/5

The skill explicitly requires the official azure_messaging_eventhubs crate, rejects unofficial crates, recommends managed identity for production, prohibits hardcoded credentials, and lists sender, receiver, and owner RBAC roles. These provide basic credential and permission guidance. Points are deducted because data flows, sensitive event handling, user confirmation for external send/receive effects, least-privilege selection, auditing, rollback, and the scope of DeveloperToolsCredential are not explained.

2Reliability7 / 20 · 1.8/5

The installation, authentication, sending, batching, partition receiving, and start-position examples are broadly consistent, and event-level errors are matched. Points are deducted because crate/API versions are not pinned, no skill-specific build or test evidence is supplied, and connection failures, authorization errors, empty streams, reconnects, cancellation, duplicate consumption, and checkpointing are not handled. Static review caps this dimension at 10.

3Adaptability9 / 15 · 3.0/5

The name, description, and trigger phrases clearly target Rust Event Hubs sending, receiving, batching, and partition-start scenarios. Points are deducted because non-fit boundaries, input/output expectations, partition discovery, and production limitations are not stated; there is no Chinese-language guidance, and reachability or alternatives for Azure and crates.io in mainland-China networks are not discussed.

4Convention8 / 15 · 2.7/5

The document is readable and layered, with installation, environment variables, concepts, authentication, workflows, RBAC, best practices, references, MIT licensing, and author metadata. Points are deducted for missing version policy, changelog, maintainer and update path, troubleshooting, compatibility notes, and a complete runnable project; the warning about version 0.21.0 lacks supporting explanation or a replacement version.

5Effectiveness6 / 15 · 2.0/5

The snippets directly demonstrate core ProducerClient and ConsumerClient calls, including single-event sending, batch sending, partition receiving, and start-position control, so they can support basic tasks. Points are deducted because they omit complete application context, lifecycle management, retries, checkpointing, and production configuration, while the consumer example may run indefinitely. No execution evidence is included; static calibration caps this dimension at 7.

6Verifiability4 / 10 · 2.0/5

The skill supplies docs.rs, crates.io, and Azure SDK source references and identifies an official crate source, giving limited traceability. Points are deducted because links are not version-pinned and the skill contains no tests, lockfile, runnable sample project, or outcome evidence; repository-level CI and harness files do not demonstrate coverage of this specific skill path. Static calibration caps this dimension at 5.

Evidence confidence:Low Reviewed Jul 20, 2026 Reviewed revision 9ccaf7c3704a
Before you use it
  • Do not use the DeveloperToolsCredential example directly in production; specify ManagedIdentityCredential, required RBAC, and credential sources.
  • Sending events creates external and potentially irreversible data writes; confirm the target namespace, Event Hub, data sensitivity, and least-privilege RBAC before implementation.
  • Pin and verify a compatible azure_messaging_eventhubs version; the document provides no version number, build result, or troubleshooting guidance.
  • Add retry, cancellation, reconnect, checkpointing, duplicate-consumption, and consumer-shutdown handling, and assess mainland-China reachability for Azure and crates.io dependencies.
See the full review method →

What does this skill do, and when should you use it?

This skill helps Rust developers build Azure Event Hubs clients for streaming ingestion and batch processing. It focuses on the official azure_messaging_eventhubs crate and shows ProducerClient and ConsumerClient workflows. The guidance covers single-event sends, batch sends, partition receivers, start positions, Entra ID authentication, and RBAC roles. It is a good fit for SDK-level implementation guidance, but it does not provide a complete deployed application or infrastructure setup.

It guides users to add azure_messaging_eventhubs, azure_identity, tokio, and futures with cargo add; configure EVENTHUBS_HOST and EVENTHUB_NAME; create clients with DeveloperToolsCredential or ManagedIdentityCredential; send individual events with ProducerClient; create and send batches; open a ConsumerClient receiver on a partition; consume events through an asynchronous stream; select Earliest or Latest start positions; handle per-event success and failure results; and assign Azure Event Hubs Data Sender, Data Receiver, or Data Owner roles.

  1. A Rust developer needs to publish application events to Azure Event Hubs for streaming ingestion.
  2. A service must receive and process ordered events from a specific Event Hubs partition.
  3. A high-throughput producer needs batch creation and batch sending.
  4. A consumer must start at the earliest available event or at the latest position.
  5. A team needs local developer authentication and managed identity authentication in production.

What are this skill's strengths and limitations?

Pros
  • Provides concrete Rust examples for sending, batching, and consuming partitioned events.
  • Explicitly directs users to the official azure_messaging_eventhubs crate.
  • Distinguishes local developer credentials from production managed identity.
  • Covers batching, per-event error handling, and consumer start positions.
Limitations
  • Requires an existing Azure Event Hubs namespace, Event Hub, and appropriate RBAC permissions.
  • Focuses on SDK usage rather than a complete application, deployment, or operations design.
  • The README's test-coverage summary does not list Rust skills, so dedicated test evidence for this skill is absent from the source.
  • The source does not specify supported Rust versions, pricing, or performance benchmarks.

How do you install this skill?

Run npx skills add microsoft/skills and select azure-eventhub-rust in the wizard. The collection installs skills into the selected agent's skill directory; the README does not document a separate installation command for this skill. Add the Rust dependencies with cargo add azure_messaging_eventhubs azure_identity tokio futures.

How do you use this skill?

In an Agent Skills-compatible coding agent, use a request such as “Implement Azure Event Hubs batch sending and partition consumption in Rust using the official azure_messaging_eventhubs crate.” The documented trigger phrases include “event hubs rust,” “ProducerClient rust,” “ConsumerClient rust,” “send event rust,” “streaming rust,” and “eventhub rust.” Set EVENTHUBS_HOST and EVENTHUB_NAME, and assign the required Event Hubs RBAC role for Entra ID authentication.

FAQ

Which Rust crate should I use?
Use the official azure_messaging_eventhubs crate published by the azure-sdk crates.io user. The skill explicitly says not to use unofficial or community crates.
Which credentials are recommended for development and production?
Use DeveloperToolsCredential for local development and ManagedIdentityCredential in production. Credentials should not be hardcoded.
How do I control the consumer's starting position?
Set StartLocation::Earliest or StartLocation::Latest through StartPosition when opening a partition receiver.
Do I need to add azure_core directly?
Only when the code imports azure_core types directly. It is optional when using only types re-exported by azure_messaging_eventhubs.

More skills from this repository

All from microsoft/agent-skills

Dev & Engineering ✓ Microsoft · Official

Azure Blob Storage for Rust

Guides Rust developers through official Azure SDK patterns for managing blobs and containers.

Dev & Engineering ✓ Microsoft · Official

Azure Event Hubs Java Skill

Build production-oriented Java event streaming applications on Azure Event Hubs.

Dev & Engineering ✓ Microsoft · Official

Azure Event Hubs for Python

A practical guide to high-throughput event ingestion, consumption, and checkpointing in Python.

Dev & Engineering ✓ Microsoft · Official

Azure Event Hubs TypeScript Skill

Build TypeScript event-streaming applications with batching, partition-aware consumers, checkpointing, and Azure identity authentication.

Dev & Engineering ✓ Microsoft · Official

Azure Event Hubs for .NET

A practical .NET guide to high-throughput Azure Event Hubs production, consumption, partitioning, and checkpointing.

Dev & Engineering ✓ Microsoft · Official

Azure Queue Storage for Rust

A focused guide for building secure Azure Queue Storage messaging workflows in Rust.

Dev & Engineering ✓ Microsoft · Official

Azure Identity for Rust

Configure Microsoft Entra ID authentication for Azure SDK clients written in Rust.

Dev & Engineering ✓ Microsoft · Official

Azure Cosmos DB for Rust

A practical guide to building Rust applications with the official Azure Cosmos DB NoSQL client.

Dev & Engineering ✓ Microsoft · Official

Azure Key Vault Secrets for Rust

Guides Rust applications in securely storing and managing passwords, API keys, and connection strings in Azure Key Vault.

Dev & Engineering ✓ Microsoft · Official

Azure Blob Storage for TypeScript

A practical guide for uploading, downloading, and managing Azure Blob Storage from TypeScript and JavaScript applications.

Dev & Engineering ✓ Microsoft · Official

Azure Document Intelligence for .NET

Guides .NET developers in extracting structured data from invoices, receipts, IDs, and forms.

Dev & Engineering ✓ Microsoft · Official

Azure Identity for TypeScript

Configure secure, flexible Microsoft Entra ID authentication for TypeScript Azure applications.

Dev & Engineering ✓ Microsoft · Official

Azure Playwright Workspace Manager

Provision and manage Microsoft Playwright Testing workspaces with .NET and Azure Resource Manager.

Dev & Engineering ✓ Microsoft · Official

Azure Key Vault Certificates for Rust

Guides Rust applications in creating, managing, and using X.509 certificates in Azure Key Vault.

Dev & Engineering ✓ Microsoft · Official

Azure Document Intelligence for TypeScript

Extract document text, tables, and structured fields in TypeScript applications.

Dev & Engineering ✓ Microsoft · Official

Azure Identity for .NET

Guides .NET applications in authenticating Azure SDK clients with Microsoft Entra ID.

Dev & Engineering ✓ Microsoft · Official

Azure Key Vault Keys for Rust

A practical Rust guide for creating, managing, and using RSA, EC, and HSM-protected keys in Azure Key Vault.

Dev & Engineering ✓ Microsoft · Official

Azure AI Search for TypeScript

Build TypeScript search apps with vector, hybrid, and semantic retrieval patterns.

Dev & Engineering ✓ Microsoft · Official

Azure AI Projects for TypeScript

Practical TypeScript guidance for building Azure AI Foundry applications with project clients, agents, tools, and evaluations.

Dev & Engineering ✓ Microsoft · Official

Azure AI Transcription for Python

Guides Python applications through Azure AI real-time and batch speech-to-text transcription.

Related skills