Docs Menu
Docs Home
/ /
Atlas App Services
/

Monitor Edge Server - Preview

項目一覧

  • 始める前に
  • Edge Server インスタンスのステータスを取得する
  • Edge Server ログ
  • Edge Server Metrics

Edge Server インスタンスのメトリクスとログを表示して、一般的なヘルス ステータス、または使用状況、パフォーマンス、エラーに関する情報を取得できます。

インスタンスを監視できます。

  • Atlas UI 内

  • ローカル ハードウェア上の UI 内

  • 管理 API 呼び出しによる

MongoDB コレクションまたは外部サービスにログを転送することもできます。

このページには、Edge Server インスタンスのメトリクスとログを表示する方法と、利用可能な情報についての詳細が含まれています。

Atlas UI で Edge Server を管理するには、次のものが必要です。

  • プロジェクト所有者の権限を持つ MongoDB Atlas アカウント。 無料アカウントの登録方法については、「 Atlasを使い始める 」を参照してください。

ローカル UI はデフォルトで有効になっており、実行中の Edge Server インスタンスのみが必要です。

信頼されていないホストでは、次の edgectlコマンドを実行してローカル UI を無効にできます。

edgectl config --disable-local-ui=true

Admin API を使用して Edge Server を管理するには、次のものが必要です。

Edge Server インスタンスのステータスの詳細を取得するには、次の方法があります。

  • Atlas UI での Edge Server インスタンスの詳細の表示

  • ローカル UI でステータスの詳細を表示する

  • ステータスを確認するにはedgectlを使用します

  • 関連する管理 API エンドポイントにリクエストを行う

利用可能な詳細は、アクセス方法によって異なります。

Edge Server ダッシュボードには、最後の接続の日時やそのステータスのスナップショットなど、各 Edge Server インスタンスの簡単な概要が表示されます。 オプションで、各インスタンスの詳細またはログを表示できます。

Edge Server ダッシュボードを表示するには、左側のナビゲーション サイドバーで Edge Serverを選択します。

特定の Edge Server インスタンスの詳細を表示するには、その Edge Server インスタンスの [ View Details ] をクリックします。 または、 App Logsをクリックして、インスタンスに関連するログを表示します。

Edge Server インスタンスを表示するときに利用できる情報は、インスタンスの状態によって異なります。 詳細については、「 Edge Server インスタンスの詳細 」を参照してください。

ローカル UI にアクセスするには、ウェブ ブラウザを開き、http-portlocalhost にGoします。 次の方法でデフォルトポートのローカル UI にアクセスできますhttp://localhost:80

ポートを変更するには、次のedgectlフラグを使用して代替ポートをIntとして提供します。

edgectl config --http-port=<YOUR-PORT-INT>

Edge Server インスタンスが実行されている場合は、次の方法でインスタンスのステータスが表示されます。

edgectl status

これにより、Edge Server コンテナの状態に関する情報と、重要な情報の内訳の Sync サーバーの詳細なステータスが提供されます。 次のようになります。

{
"mongoContainerStatus": {
"message": "running"
},
"mongoDBStatus": {
"message": "ready"
},
"syncServerContainerStatus": {
"message": "running"
},
"syncServerStatus": {
"message": "ACTIVE"
},
"syncServerDetailedStatus": {
"version": "v0.22.3",
"status": "ACTIVE",
"cloud_connected": true,
"num_local_clients": 0,
"query": {
"Item": "truepredicate"
}
}
}

syncServerDetailedStatusには、Edge Server インスタンスの状態に関する情報が含まれています。 これには、次のような、Atlas への接続と、それに接続されたクライアントに関する詳細が含まれます。

フィールド名
タイプ
version
文字列
インスタンスが実行している Edge Server コードの現在のバージョン。 Edge Server インスタンスが利用可能な最新バージョンより 1 つ以上前のメジャー バージョンより遅れている場合は、Atlas に接続できなくなるため、消去して更新する必要があります。 詳細については、「 Edge Server バージョンのアップグレード 」を参照してください。
status
文字列

Edge Server インスタンスの現在のステータス。 指定できる値は、 "ACTIVE""FAILED""BOOTSTRAPPING"です。

"ACTIVE": インスタンスが実行中、接続をリッスンし、同期しようとしているとき

"FAILED": インスタンスで介入が必要なエラー状態が発生しました。 詳細については、 「 Edge Server インスタンスのトラブルシューティング 」を参照してください。

"BOOTSTRAPPING": インスタンスはデータセット内の関連ドキュメントの初期ダウンロードを実行中であり、まだ使用する準備ができていません。

cloud_connected
ブール値
trueの場合、Edge Server インスタンスは現在 Atlas に接続されています。 falseの場合、Edge Server インスタンスは Atlas に接続されていません。 インスタンスが Atlas に接続されていない場合でも、ローカル接続は引き続き受信し、ローカル クライアントとデータを同期できます。 Atlas と再接続すると、接続されていない間に変更されたデータの同期が試行されます。
num_local_clients
Int
現在 Atlas Device SDK を介して Edge Server インスタンスに現在接続されているクライアントの数。 これにはワイヤプロトコルを介した接続は含まれません
query
オブジェクト
JSON オブジェクトとして表示される Edge Server インスタンス同期クエリ。 詳細については、「 Edge Server のクエリを指定する 」を参照してください。
1

MongoDB Atlas API キー ペアを使用して、管理ユーザー認証エンドポイントを呼び出します。

curl -X POST \
https://services.cloud.mongodb.com/api/admin/v3.0/auth/providers/mongodb-cloud/login \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-d '{
"username": "<Public API Key>",
"apiKey": "<Private API Key>"
}'

認証に成功すると、レスポンス本文にはaccess_token値を持つ JSON オブジェクトが含まれます。

{
"access_token": "<access_token>",
"refresh_token": "<refresh_token>",
"user_id": "<user_id>",
"device_id": "<device_id>"
}

access_tokenは App Services Admin API へのアクセスを許可します。 すべての管理 API リクエストのAuthorizationヘッダーに Bearer トークンとして含める必要があります。

Tip

以下も参照してください。

2

すべての Edge Server インスタンスのリストを取得するには、 Admin API List Edge Serverエンドポイントを呼び出します。

Authorizationリクエストには、管理 API アクセス トークンが Bearer トークン として返される ヘッダーが含まれている必要があります。

curl -X GET \
https://services.cloud.mongodb.com/api/admin/v3.0/groups/{groupId}/apps/{appId}/edge \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <AccessToken>'

リクエストが成功すると、 200コードと、 appIdに関連付けられた各 Edge Server インスタンスの概要の詳細を含むオブジェクトの配列であるedge_serversキーが返されます。

{
"edge_servers": [
{
"id": "6622b8f5118368b943d228a9",
"created": "2024-04-19T08:51:00Z",
"name": "Edge-Store-42",
"user_id": "6622b8f5118368b943d2288a",
"status": "active",
"hostname": "ec2-13-58-70-88.us-east-2.compute.amazonaws.com",
"last_connection": "2024-04-19T09:51:00Z"
}
]
}

詳しくは、詳細を表示するインスタンスのidを見つけます。

3

Edge Server インスタンスに関する詳細情報を取得するには、 「Admin API Get Edge Server 情報エンドポイント」を呼び出します。

Authorizationリクエストには、管理 API アクセス トークンが Bearer トークン として返される ヘッダーが含まれている必要があります。

curl -X GET \
https://services.cloud.mongodb.com/api/admin/v3.0/groups/{groupId}/apps/{appId}/edge/{edgeServerId} \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <AccessToken>'

リクエストが成功すると、 200コードと、Edge Server インスタンスに関する詳細情報を含む JSON オブジェクトが返されます。

{
"id": "6622b8f5118368b943d228a9",
"created": "2024-04-19T08:51:00Z",
"name": "Edge-Store-42",
"user_id": "6622b8f5118368b943d2288a",
"status": "active",
"hostname": "ec2-13-58-70-88.us-east-2.compute.amazonaws.com",
"last_connection": "2024-04-19T09:51:00Z",
"query": {
"Item": "(store_id == \"641cb3d99e425c794ef69315\")"
},
"package_version": "v0.21.2",
"latest_package_version": "v0.22.2",
"metrics": [
{
"key": "edge_host_memory_percent",
"name": "Memory Usage",
"category": "host",
"detail": "Percentage of memory used by the edge container",
"value": 15,
"unit": "%"
},
...additional Edge Server metrics...
]
}

このレスポンス本体の詳細については、 API 仕様 を参照してください。

Edge Server は、次のログタイプを使用します。

  • 認証ログ: Edge Server インスタンスが Atlas で認証を試みる場合、またはクライアントが Edge Server インスタンスで認証を試みると、認証ログが生成されます。

  • Device Sync ログ: Edge Server インスタンスが Atlas と同期するか、Atlas Device SDK クライアントが Edge Server と同期すると、Device Sync ログが生成されます。

App Services ログには、 Admin APIのAdmin API Retry App Services ログエンドポイント を使用してアクセスできます。 Edge Server インスタンスuser_idに一致するuser_idをフィルタリングします。 または、Atlas UI でEdge Server インスタンスの詳細を表示するときにログを表示できます。

ログを MongoDB コレクションに保存したり、外部サービスに送信したりするようにログフォワーダーを構成できます。 詳細については、「 サービスへのログの転送 」を参照してください。

Edge Server インスタンスは、次に関するさまざまなメトリクスを追跡します。

  • ホスト ハードウェア

  • リクエスト

  • ワイヤプロトコルの接続とそのアクティビティ

  • 同期

メトリクス データには、Admin API のAdmin API Get Edge Server 情報エンドポイント を使用してアクセスできます。 または、Atlas UI でEdge Server インスタンスの詳細を表示するときに、これらのメトリクスのサブセットを表示できます。

返される正確なメトリクスは変更される場合があります。

メトリクスキー
名前
カテゴリ
単位
説明
Edge_host_memory_percent
メモリ使用量
Host
割合(%)
Edge Server コンテナによって使用されるメモリの割合。
Edge_host_CPU_percent
CPU 使用率
Host
割合(%)
Edge Server コンテナによって使用される CPU の割合。
total_request_success
成功したリクエスト
全体
Int
成功したリクエストの合計数。
total_request_fail
失敗したリクエスト
全体
Int
失敗したリクエストの合計数。
wire_protocol_request_success
成功したワイヤプロトコルリクエスト
ワイヤプロトコル
Int
成功した ワイヤプロトコル リクエストの合計数。
wire_protocol_request_fail
失敗したワイヤプロトコルリクエスト
ワイヤプロトコル
Int
失敗した ワイヤプロトコル リクエストの合計数。
wire_protocol_egress_bytes
ワイヤプロトコルによるデータ転送
ワイヤプロトコル
バイト
ワイヤプロトコルによって返された合計バイト数。
Edge_wire_protocol_ connection_count
ワイヤプロトコル接続数
ワイヤプロトコル
Int
The total number of clients currently connected using the Wire Protocol. これらの接続には、MongoDB ドライバー、MongoDB Shell、MongoDB Compass、および ワイヤプロトコル 接続を使用するその他のツールが含まれます。
sync_requests_success
成功した同期リクエスト
同期
Int
成功した同期リクエストの合計数。

戻る

権限ガイド