🐓

Azure Event Hubsのメッセージの内容を確認する(blob保存)

に公開1
Azureの記事です

やりたいこと

Event Hubsにメッセージ送るよって言われることは多いと思います。
本当に来てるの?どんなメッセージ?って確認したいですよね。

使う機能

Evnet Hubsにキャプチャという機能があります。
ここで保存先と形式を指定するだけです。
※Basicプランだとキャプチャ機能使えないのでStandard以上で。

出力ファイル形式でAvro,Parquet,DeltaLakeが選べます。

はまったこと

何も考えずに保存をすると、下記のエラーが出ます。

making the request doesn't have the required data plane write permissions. Please enable Microsoft.Storage/storageAccounts/blobServices/containers/write, Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write permission(s)

何やら、storageのパーミッションエラーみたいです。

"ストレージ BLOB データ共同作成者"の権限が必要だそうです。

https://learn.microsoft.com/ja-jp/azure/role-based-access-control/role-assignments-portal?tabs=delegate-condition

ユーザーに対して、ストレージBLOBデータ共同作成者の権限をつけて、

キャプチャの認証では既定値 (SAS)を選ぶと設定できました。

試しにメッセージを飛ばすと

メッセージ保存されてました。AVROを開くと、メッセージの中身が見れます。

ヘッドウォータース

Discussion