このページでは、Cloud Network Insights がアラーム生成のために AppNeta と統合する方法と、これらのアラームが分析、表示、アラート ポリシーの作成のために Google Cloud に送信される方法について説明します。
ロギングとアラートのタスクは、 Google Cloud と AppNeta に分割されます。Cloud Network Insights ロギングは、モニタリング ポイントによって収集された指標が、AppNeta のアラームルールで構成したしきい値を超えたときに追跡します。
AppNeta でアラームとアラームルールを作成して、アラームログを生成します。アラームログとイベントログは、Cloud Logging にエクスポートされます。ネットワーク インシデントが発生したときにアラートと通知を送信するには、アラート ポリシーを使用します。
始める前に
アラームルールを作成する前に、モニタリング ポイントをデプロイする必要があります。
AppNeta のアラート
アラームとアラームルールは AppNeta で作成されます。アラームは、ネットワークで問題が発生したときに通知します。レイテンシなどの追跡対象の指標が、特定の期間内に設定されたしきい値を超えると、アラームルールの違反となります。1 回の違反後にアラームをトリガーするか、設定した期間に複数回の違反が発生した後にアラームをトリガーするかを選択できます。
たとえば、レイテンシが 3 分以内に 2 回 160 ミリ秒を超えた場合に、アラームを設定して警告をトリガーできます。このアラームはログとして Google Cloud に送信されます。ログが Cloud Logging に届いたら、アラートを送信してチームに通知できます。
アラームの詳細については、AppNeta ドキュメントのアラームの概要またはアラーム - ベスト プラクティスをご覧ください。
AppNeta でアラームルールを作成する
パフォーマンスのしきい値を定義するアラームルールを作成します。
Google Cloud コンソールを開き、[ネットワーク インテリジェンス] > [Cloud Network Insights] > [アラート ポリシー] に移動します。
[アラームルールの作成] をクリックして、AppNeta の [アラームルールの編集] ページを開きます。
指標、しきい値、違反戦略、重大度を指定するルールを定義します。デフォルトのルールを使用またはカスタマイズできます。
アラームがトリガーされると、アラームログが Cloud Logging に送信されます。ログが Google Cloudに送信されたら、Cloud Network Insights に移動してアラート ポリシーを設定できます。
アラームルールの作成の詳細については、AppNeta ドキュメントのアラームルールをご覧ください。
Google Cloudでログを表示する
Cloud Network Insights は、Cloud Logging に詳細なログをエクスポートして、ネットワーク パフォーマンスと重要なイベントの分析とトラブルシューティングに役立てます。これらのログには、ログ エクスプローラを使用してアクセスできます。
Google Cloud コンソールで、[ログ エクスプローラ] ページに移動します。
関連情報に関するアラートを生成するクエリを作成します。
Cloud Network Insights ログでは、logName に次のいずれかが使用されます。
- アラームログ -
networkmanagement.googleapis.com/insights_alarm - イベントログ -
networkmanagement.googleapis.com/insights_event
詳細については、Logging のクエリ言語を使用してクエリを作成して保存するをご覧ください。
料金
すべての Cloud Network Insights ログは Cloud Logging に書き込まれます。このサービスに対して Cloud Network Insights から別途料金が発生することはありません。ただし、書き込まれて保存されるログのサイズによっては、追加のストレージ コストが発生する可能性があります。
Cloud Logging の料金については、Google Cloud Observability の料金: Cloud Logging をご覧ください。
ログの詳細
各ログタイプの詳細情報は jsonPayload フィールドに含まれていますが、ログのクエリと理解には、他の標準の LogEntry フィールドも重要です。
アラームログ
- ログ名:
networkmanagement.googleapis.com/insights_alarm - トリガー: アラームルールの条件が満たされたときに生成されます。
- リソースラベル: ログに関連付けられているモニタリング対象リソースについて説明します。これには以下が含まれます。
type- リソースのタイプ。次のいずれかになります。networkmanagement.googleapis.com/NetworkMonitoringProvidernetworkmanagement.googleapis.com/MonitoringPointnetworkmanagement.googleapis.com/NetworkPath
labels- 特定のリソース インスタンスを識別するキーと値のペア(resource_container(プロジェクト ID)、location、network_monitoring_provider_id、path_id、monitoring_point_idなど)。
- キー JSON フィールド: アラームログには、トリガーされたアラームに関する情報が記載されています。
- 重大度のマッピング: 重大度は AppNeta と Google Cloudで異なる方法で記録されます。
AppNeta の重大度 Google Cloud ログの重大度 重大 重大 重大 エラー 軽微 警告 警告 通知
アラームログのフィールド
アラームログの jsonPayload には次のフィールドが含まれます。
| フィールド | 型 | 説明 |
|---|---|---|
alarm_id |
文字列 | AppNeta のアラートの固有識別子。 |
alarm_severity |
enum | アラームの重大度。CRITICAL、MAJOR、MINOR、WARNING のいずれかになります。 |
alarm_type |
enum | アラームのタイプ。QUALITY_OF_SERVICE 型がサポートされています。 |
cleared_time |
timestamp | アラームがクリアされた時刻。アラームログの状態が RAISED または UPDATED の場合、これは空になります。 |
description |
文字列 | アラームの説明(人が読める形式)。 |
first_violation_time |
timestamp | アラーム条件が最初に違反された時刻。 |
item |
オブジェクト | アラームに関連付けられているエンティティ。詳しくは、一般的なアイテム構造をご覧ください。 |
provider_link |
文字列 | AppNeta UI のアラームへのハイパーリンク。 |
raised_time |
timestamp | アラームが発生した時刻。 |
receiveTimestamp |
文字列 | アラームが作成された時刻( Google Cloud)。 |
rule |
文字列 | アラームをトリガーしたアラームルールの名前。 |
state |
enum | アラームの状態。RAISED、UPDATED(アラームの詳細は AppNeta で更新されたが、まだクリアされていない)、CLEARED のいずれかになります。 |
timestamp |
文字列 | AppNeta でアラームが作成された時刻。 |
イベントログ
- ログ名:
networkmanagement.googleapis.com/insights_event - トリガー: 構造的な変更(
Route Change、MTU Change、Monitoring Point Offlineなど)が発生したときに生成されます。 - 重大度: 常に
INFO。 - 主な JSON フィールド: イベントログには、トリガーされたイベントに関する情報が記録されます。
イベントログのフィールド
イベントログの jsonPayload には、次のフィールドが含まれます。
| フィールド | 型 | 説明 |
|---|---|---|
event_detail |
オブジェクト | イベントタイプに固有の詳細。値は route_change_event、mtu_change_event または qos_change_event です。詳細情報のないイベントについては、空のオブジェクトが返されます。詳しくは、
イベントの詳細フィールドをご覧ください。 |
event_id |
文字列 | このイベントの一意の識別子。 |
event_type |
enum | イベントのタイプ。MONITORING_POINT_OFFLINE、MONITORING_POINT_ONLINE、ROUTE_CHANGE、MTU_CHANGE、QOS_CHANGE のいずれかになります。 |
item |
オブジェクト | イベントに関連付けられているエンティティ。詳しくは、共通アイテム構造をご覧ください。 |
receiveTimestamp |
文字列 | イベントが作成された時刻( Google Cloud)。 |
timestamp |
文字列 | AppNeta でイベントが作成された時刻。 |
イベントの詳細フィールド
event_detail オブジェクトには、イベントタイプに固有の詳細が含まれます。event_type に応じて、次のいずれかのネストされたオブジェクトが含まれます。
詳細情報のないイベントの場合は、空のオブジェクトが返されます。
MTU 変更イベント(mtu_change_event)
このオブジェクトは、MTU サイズが変更されるたびに詳細をキャプチャします。
| フィールド | タイプ | 説明 |
|---|---|---|
new_mtu |
int32 | 新たに測定された MTU。 |
previous_mtu |
int32 | 以前の MTU(存在する場合)(起動時は省略)。 |
QoS 変更イベント(qos_change_event)
このオブジェクトは、検出されたすべてのパスでの QoS 再マッピングを報告します。
| フィールド | タイプ | 説明 |
|---|---|---|
configured_qos |
int32 | ジョブ設定で構成された QoS。 |
remapped_qos |
int32 | パスで QoS の変更が検出されました。 |
ip_address |
文字列 | QoS の変更が検出されたホップの IP アドレス(わかっている場合)。 |
ルート変更イベント(route_change_event)
このオブジェクトは、連続する traceroute 間のホップ数または既知の IP アドレスのシーケンスの違いをキャプチャします。
| フィールド | タイプ | 説明 |
|---|---|---|
previous_route_change_time |
timestamp | 前のルートを最初に検出したトレースルートのタイムスタンプ。 |
protocol |
文字列 | traceroute に使用されるプロトコル(TCP、UDP、ICMP など)。 |
hop_count |
int32 | ルート内のホップの合計数。 |
target_ip |
文字列 | traceroute のターゲット IP アドレス。 |
route_changes |
オブジェクトの配列 | 検出されたすべての変更の配列。各オブジェクトには、route_change_type 文字列と details オブジェクトが含まれています。ルート変更の詳細をご覧ください。 |
ルート変更の詳細
route_changes 配列内の details オブジェクトは route_change_type に依存します。
incomplete_routeまたはcomplete_routeterminal_hop(ホップ オブジェクト): 最後に到達したホップ(完了した場合は最終ホップ)。terminal_network(ネットワーク オブジェクト): ターミナルホップのネットワーク情報。
route_loopfirst_hop(ホップ オブジェクト): 検出されたルートループの最初のホップ。last_hop(ホップ オブジェクト): 検出されたルートループの最後のホップ。loop_span(int32): ループに関与するホップの数。
target_ip_changeprevious_target_ip(文字列): 前の traceroute で観測されたターゲット IP アドレス。new_target_ip(文字列): 現在のターゲット IP アドレス。
sequence_changelast_common_hop(ホップ オブジェクト): 前のトレースルートと現在のトレースルートの間の最後の共通ホップ。previous_next_hop(ホップ オブジェクト): シーケンス内の前のネクストホップ デバイス。new_next_hop(ホップ オブジェクト): シーケンス内の新しいネクストホップ デバイス。previous_hop_count(int32): 前の traceroute のホップの合計数。hop_count(int32): 現在のトレースルートのホップの合計数。
network_changeprevious_asns(int32 の配列): パスの ASN ネットワークのシーケンス。new_asns(int32 の配列): パスの ASN ネットワークの新しいシーケンス。
isp_changeprevious_isp(ネットワーク オブジェクト): 前回の traceroute で観測された ISP。new_isp(ネットワーク オブジェクト): 現在観測されている ISP。
共通サブオブジェクト
ホップ オブジェクトとネットワーク オブジェクトは、複数のフィールドに対して返されます。
ホップ
ホップ オブジェクトは、特定のネットワーク ホップを表します。
| フィールド | タイプ | 説明 |
|---|---|---|
hop_number |
int32 | traceroute のホップ番号。 |
ip_address |
文字列 | ホップの IP アドレス。 |
hostname |
文字列 | ホップの IP アドレスに解決されたホスト名。 |
ネットワーク
ネットワーク オブジェクトは、アクションが発生したネットワークを表します。
| フィールド | タイプ | 説明 |
|---|---|---|
asn |
int32 | ネットワークの自律システム番号(ASN)。 |
display_name |
文字列 | ネットワークの名前(ISP 名や組織名など)。 |
一般的なアイテム構造
アラームログとイベントログの両方の jsonPayload 内のアイテム フィールドには、関連付けられたエンティティの詳細が含まれています。構造は商品アイテム タイプによって異なります。
NetworkPathItem
| フィールド | 型 | 説明 |
|---|---|---|
destination |
文字列 | 宛先 IP アドレスまたはホスト名。 |
destination_monitoring_point |
MonitoringPointItem | 移行先 MonitoringPointItem の詳細(MonitoringPoint から MonitoringPoint へのパスの場合のみ)。 |
display_name |
文字列 | ネットワーク パスのユーザー定義の表示名。 |
monitoring_policy_display_name |
文字列 | モニタリング ポリシーの表示名。 |
monitoring_policy_id |
文字列 | モニタリング ポリシーの ID。 |
network_protocol |
文字列 | 使用されるネットワーク プロトコル(TCP、UDP、ICMP など)。 |
provider_tags |
オブジェクトの配列 | パス用に AppNeta で定義されたタグ。 |
source_monitoring_point |
MonitoringPointItem | ソース MonitoringPointItem の詳細。 |
WebPathItem
| フィールド | 型 | 説明 |
|---|---|---|
destination |
文字列 | リンク先 URL。 |
display_name |
文字列 | ウェブパスのユーザー定義の表示名。 |
monitoring_policy_display_name |
文字列 | モニタリング ポリシーの表示名。 |
monitoring_policy_id |
文字列 | モニタリング ポリシーの ID。 |
provider_tags |
配列 | パスのプロバイダで定義されたタグ。 |
source_monitoring_point |
オブジェクト | ソース MonitoringPoint の詳細。 |
MonitoringPointItem
| フィールド | 型 | 説明 |
|---|---|---|
display_name |
文字列 | ユーザー定義のモニタリング ポイントの表示名。 |
host |
オブジェクト | モニタリング ポイントのホストの詳細。 |
id |
文字列 | モニタリング ポイントの一意の識別子。 |
provider_tags |
配列 | モニタリング ポイントのプロバイダで定義されたタグ。 |
MonitoringPointHost
| フィールド | 型 | 説明 |
|---|---|---|
cloud_instance_id |
文字列 | クラウド プロバイダのインスタンス ID。 |
cloud_project_id |
文字列 | Google Cloud プロジェクト ID |
cloud_provider |
文字列 | GCP、AWS、AZURE などのクラウド プロバイダ。 |
cloud_region |
文字列 | エンドポイントのクラウド リージョン(例: us-central1)。 |
cloud_virtual_network_ids |
array of strings | ユーザーに表示されるクラウド仮想ネットワーク ID。 |
cloud_zone |
文字列 | エンドポイントのクラウドゾーン(例: us-central1-a)。 |
labels |
地図 | VM インスタンスに構成されたユーザー定義ラベル。 |
os |
文字列 | モニタリング ポイントのホストのオペレーティング システム。 |