Cato APIを使用する前に、Cato APIのサポートポリシーを確認することを強くお勧めします。
アカウントメトリクスの概要
アカウントメトリクスクエリは、サイトやSDPユーザーのCato Cloudへの接続の状態と品質を分析するのに役立ちます。 このデータは、サイトとCato Cloud間のDTLSトンネル内のトラフィックに関するものです。
アカウントメトリクスは、アカウントの歴史的なメトリクス、統計、および分析を表示します。 これは、Cato管理アプリケーションのサイト接続ウィンドウに類似したデータを返します。
販売代理店のアカウントに対して、接続している顧客アカウント内に別々のAPIキーを作成することができます。 レート制限とアカウントメトリクスAPIクエリに関する詳細は、Cato APIのレート制限の理解を参照してください。
バケットの粒度とAPIクエリ制限の作業
アカウントメトリクスAPIクエリごとに返されるアイテムの最大数は100,000です。 あるクエリがこの制限に達すると、そのクエリは追加のデータを返さず、エラーメッセージが表示されます。
Catoは次の要素を掛け合わせてこの制限を計算します。
サイト数プラスVPNユーザー
メトリック数(APIラベル/テレメトリー)
バケット数
つまり、(サイト数 + VPNユーザー)*(メトリック)*(バケット)の合計が100,000未満でなければなりません。 例えば、次のクエリはエラーを引き起こします:
10サイト
140 VPNユーザー
5メトリック
150バケット
(10 + 140) * 5 * 150 = 112,500 アイテムがクエリに含まれています。 この例では、クエリを正常に実行するためにバケット数を減らすことができます。
APIラベルのタイプについて詳しくは、Cato API - アカウントメトリクス > タイムシリーズを参照してください。
クエリの最小粒度の計算
このセクションでは、クエリの時間枠に基づいて最小粒度(バケットサイズ)を計算する方法を説明します。
時間枠 - 時間枠を秒に換算
バケット制限 - 100,000 / ( (サイト数 + VPNユーザー) * (メトリック) )に基づいてバケット制限を計算。
最小粒度 = (時間枠) / (バケット制限)
例えば、以下の表の最初の行は、7日間、100サイトとVPNユーザー、5メトリックでのクエリ制限を示しています。
7日間 = 604,800秒
200 バケット = 10000 / (100) * (5)
3024秒の最小粒度 = 604800 / 200
以下の表は、最小バケット粒度を持つアカウントメトリクスクエリのサンプル設定を示しています。
クエリ時間枠(日) | サイトとVPNユーザー | メトリック(ラベル) | バケット制限 | 最小粒度(秒) |
|---|---|---|---|---|
7 (604800秒) | 100 | 5 | 200 | 3024 |
7 (604800秒) | 100 | 10 | 100 | 6048 |
7 (604800秒) | 500 | 10 | 20 | 30240 |
3 (259200秒) | 100 | 5 | 200 | 1296 |
3 (259200秒) | 100 | 10 | 100 | 2592 |
3 (259200秒) | 500 | 10 | 20 | 12960 |
1 (86400秒) | 100 | 5 | 200 | 432 |
1 (86400秒) | 100 | 10 | 100 | 864 |
1 (86400秒) | 500 | 10 | 20 | 4320 |
アカウントメトリクスフィールドの詳細
これらは、クエリに対してアカウントメトリクスフィールドが返すことができる詳細です:
ID - アカウントID
from - 開始時刻
to - 終了時刻
粒度 - バケットサイズ
sites - 各サイトに対して返されるデータ(ネストされたクエリとフィールドを持つ配列)
タイムシリーズ - データの時間枠を示し、バケットとデータの関係を定義します(ネストされたクエリとフィールドを持つ配列)
アカウントメトリクスID
IDフィールドは、ユニークなアカウント内部IDを表示します。
このアカウントIDはCato管理アプリケーションには表示されず、URL内の番号です。 例えば、以下のURL 中のアカウントIDは26です: https://cc2.catonetworks.com/#!/26/topology。
アカウントメトリクスFrom
Fromフィールドはクエリデータの開始時刻を示し、timeFrame引数で定義されます。
アカウントメトリクスTo
Toフィールドはクエリデータの終了時刻を示し、timeFrame引数で定義されます。
アカウントメトリクスの粒度
粒度フィールドは、単一のメトリックバケットの秒単位の期間を示します。 バケットの数は、タイムシリーズ>バケット引数で定義されています。
粒度は次の式に基づいて計算されます:timeFrame/buckets。 例えば、クエリが60のバケットで5分間のデータを返す場合、粒度(バケットサイズ)は5秒(300秒/60)です。
バケットの最小粒度は5秒です。 バケットの粒度が5秒未満の場合、そのバケットにはデータが返されない可能性があります。
粒度フィールドについての詳細は、アカウントメトリクス > 粒度を参照してください。
アカウントメトリクスサイト
サイトフィールドには、アカウント内の1つ以上のサイトに関連するデータが含まれています。 VPNユーザーについても、ユーザーIDでデータを指定できます。
アカウントメトリクスのサイトフィールドについての詳細は、Cato API - アカウントメトリクス > サイトを参照してください。
アカウントメトリクスタイムシリーズ
指定された時間枠(バケット)に基づいてアカウントのメトリクスを表示し、過去の統計およびメトリクスを含みます。 このデータは、Cato管理アプリケーションの各サイトのサイト接続ウィンドウのフィールドに類似しています。
アカウントメトリクスのタイムシリーズフィールドについての詳細は、Cato API - アカウントメトリクス > タイムシリーズを参照してください。
アカウントメトリクスの引数
これらは、クエリが返すデータを渡して定義できる引数です:
accountID - アカウントID
ID - アカウントID(レガシー引数)
timeFrame - クエリの開始時刻と終了時刻
groupInterfaces - リンクのアナリティクスを1つのリンクにまとめます(boolean値trueの場合)。
groupDevices - 複数のサイト及び、複数のソケットを持つ単一のサイトの場合、アナリティクスを1つのソケットに統合します(boolean値trueの場合)。
アカウントメトリクスアカウントID引数
クエリが返すデータのアカウントIDを入力します。 この引数は必須です。
このアカウントIDはCato管理アプリケーションには表示されず、URL内の番号です。 例えば、以下のURL 中のアカウントIDは26です: https://cc2.catonetworks.com/#!/26/topology。
アカウントメトリクスの時間枠引数
クエリが返すデータの時間枠を入力します。 引数は<type>.<time value>の形式です。。 この引数は必須です。
時間枠を定義するためにサポートされているオプションは次のとおりです:
last.<time duration> -
lastタイプの<time duration>値はISO-8601に準拠しており、前の特定の時間のデータを返します。 例えば:timeFrame =
last.PT5Mは、前の5分を示しますtimeFrame =
last.PT2Hは、前の2時間を示しますtimeFrame =
last.P1Dは、前の1日を示しますtimeFrame =
last.P3Mは、前の3ヶ月を示しますtimeFrame =
last.P1Yは、前の1年を示します
utc.<short-time-frame-spec> - 時間枠は、指定されたタイムゾーンに従ったYY-MM-DD/hh:mm:ss形式での開始と終了の日付を組み合わせます。 引数にすべての日付と時間の値を入力する必要があります。 例えば:
timeFrame =
utc.2020-02-{11/04:50:00--21/04:50:00}は、2020年2月11日4:50:00 amから2020年2月21日4:50:00 amまでの10日間のアナリティクスデータを表示します。timeFrame =
utc.2020-02-11/{04:50:15--16:50:15}は、2020年2月11日4:50:15 amから16:50:15 pmまでの12時間のアナリティクスデータを表示します。timeFrame =
utc.2020-{02-11/04:50:00--04-11/04:50:00}は2020年2月11日4:50:00 amから2020年4月11日4:50:00 amまでの2ヶ月のアナリティクスデータを表示します。timeFrame =
utc.{2019-10-01/04:50:00--2020-02-01/04:50:00}は2019年10月1日4:50:00 amから2020年2月11日4:50:00 amまでの4ヶ月のアナリティクスデータを表示します。このフォーマットにより、複数の暦年を含む時間枠を設定できます
時間枠引数と粒度フィールドについての詳細は、アカウントメトリクス > 粒度を参照してください。
アカウントメトリクスのgroupInterfaces引数
Boolean引数groupInterfacesがtrueに設定されている場合、すべてのインタフェースのデータが1つのインタフェースに集約されます。
アカウントメトリクスのgroupDevices引数
Boolean引数groupDevicesがtrueに設定されている場合、すべてのソケット(通常は高可用性で2つ)データは1つの結果として集約されます。 集約されたソケットの最良の結果を得るためには、両方のソケットに一貫した名前と機能(例えば宛先)を持たせることをお勧めします。
注:この引数は複数サイトのクエリにおいて必須であり、groupDevices値の唯一の有効な値はtrueです。