カスタム メトリックを出力する
適用対象: すべての API Management レベル
emit-metric
ポリシーにより、指定された形式のカスタム メトリックが Application Insights に送信されます。
Note
ポリシーの要素と子要素を、ポリシー ステートメントで指定された順序で設定します。 API Management ポリシーを設定または編集する方法について説明します。
カスタム メトリックの制限
Azure Monitor では、API Management からメトリックを出力する機能に影響を与える可能性があるカスタム メトリックに対して使用制限が課されます。 たとえば、現在 Azure Monitor では、メトリックあたりで 10 ディメンション キーの制限と、サブスクリプション内のリージョンあたりでアクティブな時系列に合計 50,000 の制限 (12 時間以内) が設定されています。
これらの制限により、API Management ポリシーでカスタム メトリック (emit-metric
や azure-openai-emit-token-metric
など) を構成する場合に次のような影響があります。
ポリシーごとに最大 10 のカスタム ディメンションを構成できます。
12 時間以内に ポリシーで生成されるアクティブな時系列の数は、期間中に構成された各ディメンションで一意な値の数の積です。 たとえば、ポリシーで 3 つのカスタム ディメンションが構成され、各ディメンションが期間内に 10 の使用可能な値を持つ場合、 ポリシーは 1,000 (10 x 10 x 10) のアクティブな時系列を提供します。
サブスクリプション内の同じリージョンにある複数の API Management インスタンスで ポリシーを構成した場合、すべてのインスタンスがリージョンのアクティブな時系列の制限に影響します。
Azure Monitor のカスタム メトリックに関する設計上の制限事項と考慮事項の詳細については、こちらを参照してください。
前提条件
- API Management インスタンスを Application Insights と統合する必要があります。 詳細については、「Azure API Management と Azure Application Insights を統合する方法」を参照してください。
- API に対して Application Insights ログを有効にする
- Application Insights でディメンションを使用してカスタム メトリックを有効にします。 詳細については、「カスタム メトリックを出力する」を参照してください。
ポリシー ステートメント
<emit-metric name="name of custom metric" value="value of custom metric" namespace="metric namespace">
<dimension name="dimension name" value="dimension value" />
</emit-metric>
属性
属性 | 説明 | 必須 | 既定値 |
---|---|---|---|
name | 文字列。 カスタム メトリックの名前。 ポリシー式は使用できません。 | はい | 該当なし |
namespace | 文字列。 カスタム メトリックの名前空間。 ポリシー式は使用できません。 | いいえ | API Management |
値 | Double で表されるカスタム メトリックの値。 ポリシー式を使用できます。 | いいえ | 1 |
要素
要素 | 説明 | 必須 |
---|---|---|
ディメンション | カスタム メトリックに含まれるディメンションごとに、これらの要素を 1 つ以上追加します。 | はい |
dimension の属性
属性 | 説明 | 必須 | 既定値 |
---|---|---|---|
name | 文字列またはポリシー式。 ディメンションの名前。 | はい | 該当なし |
value | 文字列またはポリシー式。 ディメンションの値。 省略できるのは、name が既定のディメンションのいずれかと一致する場合のみです。 その場合、ディメンション名に従って値が指定されます。 |
いいえ | 該当なし |
値なしで使用できる既定のディメンション名
- API ID
- 操作 ID
- Product ID
- User ID
- サブスクリプション ID
- 場所
- ゲートウェイ ID
使用法
- ポリシー セクション: inbound、outbound、backend、on-error
- ポリシー スコープ: グローバル、ワークスペース、製品、API、操作
- ゲートウェイ: クラシック、v2、従量課金、セルフホステッド、ワークスペース
使用上の注意
- このポリシーには、最大 10 個のカスタム ディメンションを構成できます。
例
次の例では、API 要求数をカウントするカスタム メトリックを API ID と共にカスタム ディメンションとして送信します。
<policies>
<inbound>
<emit-metric name="Request" value="1" namespace="my-metrics">
<dimension name="API ID" />
</emit-metric>
</inbound>
<outbound>
</outbound>
</policies>
関連ポリシー
関連するコンテンツ
ポリシーに対する処理の詳細については、次のトピックを参照してください。
- チュートリアル:API を変換および保護する
- ポリシー ステートメントとその設定の一覧に関するポリシー リファレンス
- ポリシー式
- ポリシーの設定または編集
- ポリシー構成を再利用する
- ポリシー スニペットのリポジトリ
- Azure で Microsoft Copilot を使用してポリシーを作成する