プライベートエンドポイント経由で Azure ポータルから Azure AI Search にアクセスした際に "Failed to fetch" が表示される場合の対処方法

Azure AI Search サービスでパブリック ネットワーク アクセスを無効化し、プライベート エンドポイント経由のみでアクセス可能な構成としています。 この状態で Azure ポータルの Azure AI Search から 「インデックス」 「インデクサー」 「データソース」 「スキルセット」 などの画面で、次のようなエラーが表示されます。 「インデックスの一覧の読み込み中にエラーが発生しました」 概要欄のエラーメッセージに “Failed to fetch” ネットワークや DNS は問題なく、VM から curl や SDK 経由で AI Search エンドポイントへは正常に到達できています。このようなケースでは何が原因で、どのように対処すればよいでしょうか? 回答この事象はAzure ポータルから Azure AI Search 内部 API を呼び出す際、ブ...

Read more

Azure Functions のトリガーの同期とは

Azure Functions にトリガーの同期がありますが何の機能ですか。 トリガーのいずれかを変更する場合、Functions インフラストラクチャにその変更を認識させる必要があります。 同期は、多くのデプロイ テクノロジでは自動的に実行されます。 ただし、場合によっては、トリガーを手動で同期する必要があります。 回答Azure Functions にデプロイされたアプリケーションのトリガーの情報を Azure Functions のバックエンドに同期するための機能です。 なぜトリガーの同期が必要かAzure Functions は、アプリケーション ルート(/home/site/wwwroot/)を基幹として複数のトリガーごとにフォルダを分割した構造となっています。下記は C#(インプロセス) の場合のフォルダ階層の例です。 host.j...

Read more

Azure App Service Triggered WebJob がデプロイ直後に即実行される場合がある — 10 分間のグレース期間について

お世話になっております。Azure App Service サポート担当の押田です。本記事は、Azure App Service の Triggered WebJob において、デプロイ直後に WebJob が意図せず即実行されるケースについて解説します。 Triggered WebJob は Cron 式でスケジュールを設定できますが、削除方法とデプロイのタイミングによっては、次のスケジュール時刻を待たずに直後に実行されることがあります。これは Kudu のスケジューラに実装されている「10 分間のグレース期間(grace period)」 に起因する設計上の動作です。 公式ドキュメントにはこのグレース期間に関する詳細な記載がないため、本記事ではソースコードの実装を根拠として動作を説明し、回避策を紹介します。 背景Triggered WebJob のスケジュール実行の仕組みAzure A...

Read more

App Service / Azure Functions の Windows 環境において `Node.js 24` を利用する場合は 64 bit process の有効化を行ってください。

お世話になっております。Azure App Service サポート担当の押田です。本記事では、App Service / Azure Functions の Windows 環境において、 Node.js 24 を利用する際の注意点を記載します。結論から先にお伝えしますと、プラットフォームの設定 にて 64bit プロセスの有効化をしていただく必要がございます。 Windows 環境で Node.js 24 を利用する方法App Service / Azure Functions の Windows 環境においては、Azure ポータルから Node.js 24 が選択可能な状態となっています。 ここで選択した Node.js バージョンは、App Settings WEBSITE_NODE_DEFAULT_VERSION に ~24 を指定する動作となります。Ap...

Read more

Azure Communication Services Email クォータ緩和について

お世話になっております。Azure Communication Services サポート担当の押田です。 Azure Communication Services で Email を送信には規定でクォータが設けられております。 Azure Communication Services のサービス制限 - An Azure Communication Services article 送信できる電子メール メッセージの数には制限があります。 サブスクリプションに応じたメールのレート制限を超えた場合、要求が拒否されます。 再試行までの時間が経過した後に、これらの要求をもう一度試すことができるようになります。 必要に応じて、送信ボリュームの制限を引き上げるリクエストを行って、制限に達する前に対処してください。 クォータの緩和はサポートリクエストを起票いただき申請いただく必要がございます。 ...

Read more

Azure ポータルで BLOB のリストやダウンロードはできるけれど削除ができないときに考えられること

Azure 仮想マシン上でブラウザを起動して Azure ポータルを表示しています。また、該当の Azure 仮想マシンが属している仮想ネットワークのサブネットに、今回操作対象のストレージアカウントの blob のプライベート エンドポイントはすでに作成済みです。 この環境で、Azure ポータルで対象のストレージアカウント内のコンテナー配下の BLOB の一覧を出したり、個別の BLOB のアップロードやダウンロード、個別の BLOB の画面まで行って削除はできるのですが、BLOB の一覧でチェックを入れて削除、などをすると以下のように失敗します。考えられることを教えてください。 例えば以下のようにコンテナー con1 の BLOB の一覧は見えています。あわせて、ダウンロードやアップロードもできました。 ただ、一覧からチェックを入れて削除しようとすると 403 エラー (This ...

Read more

ドキュメントキー文字数制限エラーの解消法

Blob ストレージをデータソースとする AI Search を利用して、インデクサーを実行した際に 「Document key cannot be longer than 1024 characters」というエラーが発生し、インデクサーの実行が失敗しました。 回答AI Search のインデックス内のドキュメントを一意に識別するドキュメントキーは、エラーにある通り、1,024文字を超えることはできません。このドキュメントキーは一般的には、BLOBのパス(metadata_storage_path)を Base64 でエンコードすることで生成されます。Blob の エンコードされたURLは、ファイル名に日本語等のマルチバイト文字列が含まれる場合、長さが大きくなり、1,024文字の制限に到達しやすくなります。 エラーの解消方法としては 3 つございます。 1. fixedLengthEnc...

Read more

Azure Communication Services メール機能でよく頂くご質問

こんにちは。Azure Communication Services (以下 ACS) のサポートチームです。 Exchange Online SMTP 基本認証廃止 等をきっかけに、ACS メール機能のご利用をご検討くださり、ありがとうございます。本記事では、ACS のメール機能をご利用いただく方に向けて、よく頂くご質問をおまとめしております。本情報がご参考になりましたら幸いでございます。 ACS メール機能では SMTP AUTH 基本認証はサポートされていますか?SMTP AUTH 基本認証はサポートされております。 基本認証を利用してメール送信する際のセットアップは簡易メール転送プロトコル (SMTP) 認証の資格情報を作成する をご確認ください。 先端認証は利用できますか?はい、ACS メール機能では先端認証もサポートされています。 先端認証として、XOauth2 を利用した...

Read more

Azure Functions トリガー・バインディング シリーズ - Service Bus トリガー

Service Bus トリガー は Service Bus からイベントを読み取り実行される関数です。 Service Bus トリガーは、Service Bus のキューとトピック に対し、それぞれ Service Bus キュー トリガーと Service Bus トピック トリガーの 2 種類のトリガーを設定できます。メッセージに対して、単一処理を行うか(キュー)、複数処理を行うか(トピック)により、トリガーを使い分けてご利用ください。なお、キューとトピックの処理は混在させることができないので、それぞれ異なるトリガー(Service Bus キュー トリガーと Service Bus トピック トリガー)を作る必要があります。Service Bus のメッセージに対して、PeekLock  と呼ばれるロックを取得し、ロック更新することで動作します(外部ストレージにどこまで読んだかな...

Read more

Azure Functions で使用している CDN ドメインの移行について

お世話になっております。App Service サポート担当の仲野です。いつも Azure Functions(関数アプリ)をご利用いただき誠にありがとうございます。Azure Functions では拡張バンドルのコンテンツを Contents Delivery Network(CDN) を使用して取得しています。これまで使用していた CDN プロバイダーの運用の停止に伴い、Azure Functions では新たな CDN よりコンテンツの配布を行うようになりました。本記事は CDN ドメインの移行の詳細、それに伴う影響についてを解説します。 Azure Functions で使用している CDN 移行についてAzure CDN from Edgio の廃止に関する FAQ にて言及されているように、2025 年 1 月 15 日に Edgio 社にて提供されているサービスが終了され、...

Read more