MongoDB Atlas アプリケーションのログとメトリクスの収集
このページでは、MongoDB Atlas からログを収集して Sumo Logic に取り込み、MongoDB Atlas アプリケーションで事前定義済みのダッシュボードとサーチを使用する方法を説明します。
収集の概要
Sumo Logic は、MongoDB Atlas から API コールでログとメトリクスを取り出すソリューションを提供しています。収集するログ タイプを設定すると、ログと メトリクスが Sumo Logic の HTTP エンドポイントに転送されます。
MongoDB Atlas の収集を設定するには、次の作業を行います。
ステップ 1: MongoDB Atlas ポータルからの認証情報の取得
このセクションでは、MongoDB Atlas ポータルから認証情報を取得する方法を説明します。
MongoDB Atlas ポータルの認証情報を取得するには、以下の手順を実行します。
- Atlas ドキュメントの説明に従って、プロジェクト所有者権限を持つプログラマティックな API キーを生成します。次に、公開鍵と秘密鍵をコピーします。これらは、それぞれユーザ名と API キーとして機能します。
- [Organization (組織)] > [Access (アクセス)] > [API Keys (API キー)] に移動して、次の例に示すように API キーの組織メンバー権限を設定します。
- [Project (プロジェクト)] > [Access Management (アクセス管理)] > [API Keys (API キー)] に移動して、次の例に示すように [Project Data Access Read Only (プロジェクト データ アクセス読み取り専用)] 権限を設定します。
- プロジェクトに移動し、[Settings (設定)] をクリックして、次の例に示すようにプロジェクト ID をコピーします。
- 一番上にあるコンテキスト ドロップダウンを使用して自分の組織に移動し、[Settings (設定)] をクリックして組織 ID をコピーします。
- この Atlas ドキュメントの説明に従って、ログをモニタリングする Atlas プロジェクトに対して [Database Auditing (データベースの監査)] を有効にします。
次の例に示すように、[Database Auditing (データベースの監査)] を [ON] のままにします。
ステップ 2: Hosted Collector と HTTP Source を追加する
このセクションでは、MongoDB Atlas のログを収集するために、Sumo Logic の Hosted Collector と HTTP ログおよびメトリクス Source を追加する方法を説明します。
Hosted Collector と HTTP Source を追加するには、次の手順を実行します。
- 次のいずれかを実行します。
- Sumo Logic の Hosted Collector がすでに作成されている場合は、使用する Collector を選択します。
- 「Hosted Collector の設定」ドキュメントの説明に従って Hosted Collector を新規作成します。
- ログとメトリクス用に 1 つずつ、合計 2 つの HTTP Source を追加します。
- ログの取り込み用に作成した Source に移動し、[Timestamp Format (タイムスタンプの形式)] > [Advanced Options (詳細オプション)] に移動して、[Specify a format (形式を指定)] をクリックします。
- ログ Source の各フィールドに以下の情報を入力します。
- Timestamp Locator (タイムスタンプ ロケータ):
\"created\":(.*)
- Format (形式):
yyyy-MM-dd'T'HH:mm:ss.SSS'Z'
- [Add (追加)] をクリックします。
- メトリクス Source の各フィールドに以下の情報を入力します。
- Timestamp Locator (タイムスタンプ ロケータ):
\"created\":(.*)
- Format (形式):
yyyy-MM-dd'T'HH:mm:ss'Z'
- [Add (追加)] をクリックします。
ステップ 3: MongoDB Atlas の収集の設定
このセクションでは、MongoDB Atlas からデータベース ログ、イベント、メトリクス、およびアラートを収集して Sumo Logic に送信するメカニズムについて調べます。これらの情報は、MongoDB Atlas アプリケーションのダッシュボードに表示されます。Amazon Web Services (AWS) で AWS Lambda サービスを使用して Sumo Logic の MongoDB Atlas Collector を設定するか、または Linux マシンで cron ジョブを使用してスクリプトを実行できます。最も適した方法を選択してください。
-
サーバレス アプリケーション モデル (SAM) アプリケーションによる AWS Lambda ベースの収集
-
Linux マシンからのスクリプト ベースの収集 from a Linux machine
Sumo Logic MongoDB Atlas SAM アプリケーションのデプロイ
このセクションでは、AWS アカウントで必要なリソースを作成する SAM アプリケーションをデプロイします。
Sumo Logic MongoDB Atlas SAM アプリケーションをデプロイするには、以下の手順を実行します。
- https://serverlessrepo.aws.amazon.com/applications にアクセスします。
- sumologic-mongodb-atlas を探して、[Show apps that create custom IAM roles or resource policies (カスタム IAM ロールまたはリソース ポリシーを作成するアプリケーションを表示)] チェックボックスをオンにして、表示されるアプリケーション リンクをクリックします。
- Sumo Logic アプリケーション ページが表示された [Deploy (デプロイ)] をクリックします。
- [AWS Lambda] > [Functions (関数)] > [Application Settings (アプリケーション設定)] パネルで、対応するテキスト フィールドに以下のパラメータを指定します。
- HTTPLogsEndpoint: ステップ 2 から HTTP ログ Source の URL をコピーして貼り付けます。
- HTTPMetricsEndpoint: ステップ 2 から HTTP メトリクス Source の URL をコピーして貼り付けます。
- OrganizationID: ステップ 1 から組織 ID をコピーして貼り付けます。
- ProjectID: ステップ 1 からプロジェクト ID をコピーして貼り付けます。
- Private API Key: ステップ 1 から秘密鍵をコピーして貼り付けます。
- Public API Key: ステップ 1 から公開鍵をコピーして貼り付けます。
- [Deploy (デプロイ)] をクリックします。
複数プロジェクトの収集の設定
このセクションでは、すでに 1 つのプロジェクトから Atlas データを収集しているという前提で、複数のプロジェクトからの収集を設定する方法を説明します。この作業では以下を行います。
- OrgEvents はグローバルであり、最初の Collector ですでに収集されているため、2 番目の SAM アプリケーション デプロイでは OrgEvents の収集を停止します。
- データベース (キー値ストア) で管理 (整理) されている状態 (キー) が競合しないように、DB_NAME を変更します。
複数のプロジェクトのログ収集を設定するには、以下の作業を行います。
- 新しいプロジェクトの設定で MongoDB Atlas SAM アプリケーションをデプロイします。
- デプロイが完了したら、次の例に示すように、AWS Lambda で環境変数 (DBNAME) を追加してデータベース名を変更します。
- Lambda コンソールで mongodbatlas.yaml ファイルを開いて、次の例に示すように EVENTS_ORG をコメントアウトします。これによって、すでに最初の Collector によって収集されている組織イベントが収集されなくなります。
MongoDB Atlas のスクリプト ベース収集の設定
このセクションでは、Sumo Logic MongoDB Atlas アプリケーションのスクリプト ベース収集を設定する方法を説明します。
前提条件
この作業では以下を想定しています。
- すでに Hosted Collector を正常に追加してあり、「Hosted Collector と HTTP Source の追加」の説明に従って MongoDB Atlas コンソールからパラメータ (ProjectID、OrganizationID、PublicKey、および PrivateKey) をコピーしてある。
- Collector をインストールするユーザ アカウントでログインしている必要があります。そうでない場合は、次のコマンドで正しいアカウントに切り替えてください。
sudo su <user_name>
Linux マシンでのスクリプトの設定
この作業では、Linux マシンにスクリプトをインストールする方法を示します。
Linux マシンにスクリプトをデプロイするには、次の手順を実行します。
-
まだ pip がインストールされていない場合は、pip のドキュメントの指示に従って pip をダウンロードしてインストールします。
-
Python 3.7 または Python 2.7 と互換性のある Linux マシンにログインします。
-
次のいずれかを実行します。
- Python 2 の場合は、次のコマンドを実行します。
pip install sumologic-mongodb-atlas
- Python 3 の場合は、次のコマンドを実行します。
pip3 install sumologic-mongodb-atlas
-
mongodbatlas.yaml
設定ファイルをホーム ディレクトリに作成し、次の例に示すようにパラメータを設定します。
SumoLogic: LOGS_SUMO_ENDPOINT: <Paste the URL for the HTTP Logs source from> METRICS_SUMO_ENDPOINT: <Paste the URL for the HTTP Metrics source> MongoDBAtlas: ORGANIZATION_ID: Paste the Organization ID PROJECT_ID: Paste the Project ID PRIVATE_KEY: Paste the Private Key PUBLIC_KEY: Paste the Public Key
-
Collector を 5 分おきに実行する cron ジョブを作成します (
crontab -e
オプションを使用します)。次のいずれかを実行します。
-
Python 2 の場合は、次の行を crontab に追加します。
*/5 * * * * /usr/bin/python -m sumomongodbatlascollector.main > /dev/null 2>&1
-
Python 3 の場合は、次の行を crontab に追加します。
*/5 * * * * /usr/bin/python3 -m sumomongodbatlascollector.main > /dev/null 2>&1
複数プロジェクトの収集の設定
このセクションでは、すでに 1 つのプロジェクトから Atlas データを収集しているという前提で、複数のプロジェクトからの収集を設定する方法を説明します。この作業では以下を行います。
- OrgEvents はグローバルであり、最初の Collector ですでに収集されているため、2 番目の SAM アプリケーション デプロイでは OrgEvents の収集を停止します。
- データベース (キー値ストア) で管理 (整理) されている状態 (キー) が競合しないように、DB_NAME を変更します。
複数のプロジェクトのログ収集を設定するには、以下の作業を行います。
- Linux マシンでスクリプトを設定し、設定ファイルに移動します。
- 次の例に示すように、DB_NAME を変更して EVENTS_ORG をコメントアウトします。
SumoLogic: LOGS_SUMO_ENDPOINT: <Paste the URL for the HTTP Logs source from step 2.> METRICS_SUMO_ENDPOINT: <Paste the URL for the HTTP Metrics source from step 2.> MongoDBAtlas: ORGANIZATION_ID: <Paste the Organization ID from step 1.> PROJECT_ID: <Paste the Project ID from step 1.> PRIVATE_KEY: <Paste the Private Key from step 1.> PUBLIC_KEY: <Paste the Public Key from step 1.> LOG_TYPES: - DATABASE - AUDIT - EVENTS_PROJECT # - EVENTS_ORG - ALERTS METRIC_TYPES: PROCESS_METRICS: - CACHE_DIRTY_BYTES - CACHE_USED_BYTES - CONNECTIONS - CURSORS_TOTAL_OPEN - CURSORS_TOTAL_TIMED_OUT - DB_STORAGE_TOTAL - DB_DATA_SIZE_TOTAL - EXTRA_INFO_PAGE_FAULTS - GLOBAL_LOCK_CURRENT_QUEUE_TOTAL - MEMORY_RESIDENT - MEMORY_VIRTUAL - MEMORY_MAPPED - NETWORK_BYTES_IN - NETWORK_BYTES_OUT - NETWORK_NUM_REQUESTS - OPCOUNTER_CMD - OPCOUNTER_QUERY - OPCOUNTER_UPDATE - OPCOUNTER_DELETE - OPCOUNTER_GETMORE - OPCOUNTER_INSERT - OP_EXECUTION_TIME_READS - OP_EXECUTION_TIME_WRITES - OP_EXECUTION_TIME_COMMANDS - OPLOG_MASTER_LAG_TIME_DIFF - OPLOG_SLAVE_LAG_MASTER_TIME - QUERY_EXECUTOR_SCANNED - QUERY_EXECUTOR_SCANNED_OBJECTS - QUERY_TARGETING_SCANNED_PER_RETURNED - QUERY_TARGETING_SCANNED_OBJECTS_PER_RETURNED - SYSTEM_NORMALIZED_CPU_USER - SYSTEM_NORMALIZED_CPU_KERNEL - SYSTEM_NORMALIZED_CPU_IOWAIT - PROCESS_CPU_USER - PROCESS_CPU_KERNEL - SYSTEM_NORMALIZED_CPU_STEAL DISK_METRICS: - DISK_PARTITION_IOPS_READ - DISK_PARTITION_IOPS_WRITE - DISK_PARTITION_UTILIZATION - DISK_PARTITION_LATENCY_READ - DISK_PARTITION_LATENCY_WRITE - DISK_PARTITION_SPACE_PERCENT_FREE - DISK_PARTITION_SPACE_PERCENT_USED Collection: DBNAME: "newmongodbatlas"
ステップ 4.アラート収集用の Webhook の設定
リアルタイム アラート用の Webhook を設定します。このセクションでは、Webhook を使用してアラート収集を設定する方法を説明します。
Webhook を使用してアラート収集を設定するには、次の手順を実行します。
- MongoDBAtlas コンソールに移動して
- ステップ 2 からログ エンドポイントをコピーして貼り付けることで Webhook をセットアップします。
- アラートを設定する場合は、次の例に示すように Webhook を指定して、[Save (保存)] をクリックします。
高度な設定
このセクションは、AWS Lambda ベースの収集とスクリプト ベースの収集の両方に共通です。
設定ファイルで定義できる (省略可能な) MongoDB Atlas 変数のリストを次の表に示します。
変数 | 使い方 |
---|---|
LOG_TYPES MongoDBAtlas セクション |
- DATABASE - AUDIT - EVENTS_PROJECT - EVENTS_ORG - ALERTS 収集しないメトリクス タイプがあれば、その行を削除してください。 |
PROCESS_METRICS MongoDBAtlas セクション |
- CACHE_DIRTY_BYTES - CACHE_USED_BYTES - CONNECTIONS - CURSORS_TOTAL_OPEN - CURSORS_TOTAL_TIMED_OUT - DB_STORAGE_TOTAL - DB_DATA_SIZE_TOTAL - EXTRA_INFO_PAGE_FAULTS - GLOBAL_LOCK_CURRENT_QUEUE_TOTAL - MEMORY_RESIDENT - MEMORY_VIRTUAL - MEMORY_MAPPED - NETWORK_BYTES_IN - NETWORK_BYTES_OUT - NETWORK_NUM_REQUESTS - OPCOUNTER_CMD - OPCOUNTER_QUERY - OPCOUNTER_UPDATE - OPCOUNTER_DELETE - OPCOUNTER_GETMORE - OPCOUNTER_INSERT - OP_EXECUTION_TIME_READS - OP_EXECUTION_TIME_WRITES - OP_EXECUTION_TIME_COMMANDS - OPLOG_MASTER_LAG_TIME_DIFF - OPLOG_SLAVE_LAG_MASTER_TIME - QUERY_EXECUTOR_SCANNED - QUERY_EXECUTOR_SCANNED_OBJECTS - QUERY_TARGETING_SCANNED_PER_RETURNED - QUERY_TARGETING_SCANNED_OBJECTS_PER_RETURNED - SYSTEM_NORMALIZED_CPU_USER - SYSTEM_NORMALIZED_CPU_KERNEL - SYSTEM_NORMALIZED_CPU_IOWAIT - PROCESS_CPU_USER - PROCESS_CPU_KERNEL - SYSTEM_NORMALIZED_CPU_STEAL 収集しないメトリクス タイプがあれば、その行を削除してください。 |
DISK_METRICS MongoDBAtlas セクション |
- DISK_PARTITION_IOPS_READ - DISK_PARTITION_IOPS_WRITE - DISK_PARTITION_UTILIZATION - DISK_PARTITION_LATENCY_READ - DISK_PARTITION_LATENCY_WRITE - DISK_PARTITION_SPACE_FREE - DISK_PARTITION_SPACE_USED - - -DISK_PARTITION_SPACE_PERCENT_FREE - DISK_PARTITION_SPACE_PERCENT_USED 収集しないメトリクス タイプがあれば、その行を削除してください。 |
BACKFILL_DAYS Collection セクション |
イベント収集を開始する前の日数。1 を指定すると、昨日から今日にかけてイベントがフェッチされます。 |
PAGINATION_LIMIT Collection セクション |
1 つの API コールでフェッチするイベント数。 |
LOG_FORMAT Logging セクション |
Python ログ モジュールがログをファイルに書き込むために使用するログ形式。 |
ENABLE_LOGFILE Logging セクション |
すべてのログとエラーをログ ファイルに書き込む場合は TRUE に設定します。 |
ENABLE_CONSOLE_LOG Logging セクション |
コンソールへのログ出力を有効にします。 |
LOG_FILEPATH Logging セクション |
ENABLE_LOGFILE を TRUE に設定した場合に使用するログ ファイルのパス。 |
NUM_WORKERS Collection セクション |
API コールで生成するスレッド数。 |
MAX_RETRY Collection セクション |
リクエスト失敗時の再試行回数。 |
BACKOFF_FACTOR Collection セクション |
2 回目以降の再試行において、再試行と再試行の間に適用されるバックオフ係数。backoff_factor が 0.1 の場合、sleep() は再試行と再試行の間で [0.0s, 0.2s, 0.4s, ...] とスリープします。 |
TIMEOUT Collection セクション |
リクエスト ライブラリで使用するリクエスト タイムアウト。 |
LOGS_SUMO_ENDPOINT MongoDBAtlas セクション |
Sumo Logic で作成されるログ取り込み用の HTTP Source エンドポイント URL。 |
METRICS_SUMO_ENDPOINT MongoDBAtlas セクション |
Sumo Logic で作成されるメトリクス取り込み用の HTTP Source エンドポイント URL。 |
トラブルシューティング
このセクションでは、関数を手動で実行して MongoDB Atlas からログ メッセージが送信されていることを確認する方法を説明します。
関数を手動で実行するには、次の手順を実行します。
- 次のいずれかのコマンドを入力します。
- Python 2 の場合は次のコマンドを使用します。
python -m sumomongodbatlascollector.main
- Python 3 の場合は次のコマンドを使用します。
python3 -m sumomongodbatlascollector.main
- /tmp/sumoapiclient.log に自動生成されているログをチェックして、関数がトリガされているかどうかを確認します。
- Collector を
root
ユーザとしてインストールしてから、通常ユーザとして実行した場合は、次のエラー メッセージが表示されます。これは、Collector を実行しているユーザのホーム ディレクトリに設定が存在しないためです。root
ユーザに切り替えて、スクリプトを再び実行してください。
Traceback (most recent call last): File "/usr/local/lib/python2.7/dist-packages/sumomongodbatlascollector/main.py", line 190, in main ns = MongoDBAtlasCollector() File "/usr/local/lib/python2.7/dist-packages/sumomongodbatlascollector/main.py", line 29, in __init__ self.config = Config().get_config(self.CONFIG_FILENAME, self.root_dir, cfgpath) File "/usr/local/lib/python2.7/dist-packages/sumomongodbatlascollector/common/config.py", line 22, in get_config self.validate_config(self.config) File "/usr/local/lib/python2.7/dist-packages/sumomongodbatlascollector/common/config.py", line 34, in validate_config raise Exception("Invalid config") Exception: Invalid config
ログ メッセージのサンプル
MongoDB Atlas のログはすべて JSON 形式、メトリクスは Carbon 2.0 形式です。MongoDB Atlas は、5 種類の ログと 2 種類のメトリクスを使用します。このセクションでは、MongoDB Atlas アプリケーションが使用するログ タイプの例を示します。
データベース ログ
メッセージ例
{"msg": "2019-07-03T16:07:40.366+0000 I CONTROL [initandlisten] MongoDB starting : pid=20104 port=27017 dbpath=/srv/mongodb/M10AWSTestCluster-shard-1-node-2 64-bit host=m10awstestcluster-shard-01-02-snvkl.mongodb.net", "project_id": "5cd0343ff2a30b3880beddb0", "hostname": "m10awstestcluster-shard-01-02-snvkl.mongodb.net", "cluster_name": "m10awstestcluster", "created": "2019-07-03T16:07:40.366+0000"}
詳細については、https://docs.mongodb.com/manual/refe.../log-messages/ を参照してください。
監査ログ
メッセージ例
{"atype": "authenticate", "ts": {"$date": "2019-07-03T16:08:50.256+0000"}, "local": {"ip": "192.168.253.201", "port": 27017}, "remote": {"ip": "192.168.254.91", "port": 49592}, "users": [{"user": "mms-monitoring-agent", "db": "admin"}], "roles": [{"role": "clusterMonitor", "db": "admin"}], "param": {"user": "mms-monitoring-agent", "db": "admin", "mechanism": "SCRAM-SHA-1"}, "result": 0, "project_id": "5cd0343ff2a30b3880beddb0", "hostname": "m10awstestcluster-shard-01-02-snvkl.mongodb.net", "cluster_name": "m10awstestcluster", "created": "2019-07-03T16:08:50.256+0000"}
詳細については、https://docs.mongodb.com/manual/refe...audit-message/ を参照してください。
アラート
メッセージ例
{"alertConfigId": "5cf9c324f2a30b3783a1dd28", "clusterName": "M10AWSTestCluster", "created": "2019-06-07T01:52:28Z", "currentValue": {"number": 5.142857142857142, "units": "RAW"}, "eventTypeName": "OUTSIDE_METRIC_THRESHOLD", "groupId": "5cd0343ff2a30b3880beddb0", "hostnameAndPort": "m10awstestcluster-shard-00-01-snvkl.mongodb.net:27017", "id": "5cf9c35cd5ec1376c01e81e5", "lastNotified": "2019-06-07T02:28:38Z", "links": [{"href": "https://cloud.mongodb.com/api/public...ec1376c01e81e5", "rel": "self"}], "metricName": "CONNECTIONS_PERCENT", "replicaSetName": "M10AWSTestCluster-shard-0", "resolved": "2019-06-07T02:28:29Z", "status": "CLOSED", "typeName": "HOST_METRIC", "updated": "2019-06-07T02:28:29Z"}
詳細については、https://docs.atlas.mongodb.com/refer...et-all-alerts/ を参照してください。
プロジェクト イベント
メッセージ例
{"apiKeyId": "5cef76e8c56c9800d21aa96d", "created": "2019-07-29T11:49:56Z", "eventTypeName": "MONGODB_LOGS_DOWNLOADED", "groupId": "5cd0343ff2a30b3880beddb0", "id": "5d3edd64ff7a25581ef2a95b", "isGlobalAdmin": false, "links": [{"href": "https://cloud.mongodb.com/api/atlas/...7a25581ef2a95b", "rel": "self"}], "publicKey": "hpgstoga", "remoteAddress": "111.93.54.106"}
詳細については、https://docs.atlas.mongodb.com/refer...ath-parameters を参照してください。
組織イベント
メッセージ例
{"created": "2019-07-22T12:50:32Z", "eventTypeName": "API_KEY_WHITELIST_ENTRY_ADDED", "id": "5d35b118a6f2391aafc77a05", "isGlobalAdmin": false, "links": [{"href": "https://cloud.mongodb.com/api/atlas/...f2391aafc77a05", "rel": "self"}], "orgId": "5cd0343ef2a30b3bc7b8f88e", "remoteAddress": "113.193.231.154", "targetPublicKey": "hpgstoga", "userId": "5cd0343ec56c985c82d3822f", "username": "hpal@sumologic.com", "whitelistEntry": "3.216.123.80"}
詳細については、https://docs.atlas.mongodb.com/reference/api/events-orgs-get-all/ を参照してください。
メトリクス タイプ
このセクションでは、MongoDB Atlas アプリケーションが使用するメトリクス タイプの例を示します。
プロセス メトリクス
収集されるメトリクス
CACHE_DIRTY_BYTES
CACHE_USED_BYTES
CONNECTIONS
CURSORS_TOTAL_OPEN
CURSORS_TOTAL_TIMED_OUT
DB_STORAGE_TOTAL
DB_DATA_SIZE_TOTAL
EXTRA_INFO_PAGE_FAULTS
GLOBAL_LOCK_CURRENT_QUEUE_TOTAL
MEMORY_RESIDENT
MEMORY_VIRTUAL
MEMORY_MAPPED
NETWORK_BYTES_IN
NETWORK_BYTES_OUT
NETWORK_NUM_REQUESTS
OPCOUNTER_CMD
OPCOUNTER_QUERY
OPCOUNTER_UPDATE
OPCOUNTER_DELETE
OPCOUNTER_GETMORE
OPCOUNTER_INSERT
OP_EXECUTION_TIME_READS
OP_EXECUTION_TIME_WRITES
OP_EXECUTION_TIME_COMMANDS
OPLOG_MASTER_LAG_TIME_DIFF
OPLOG_SLAVE_LAG_MASTER_TIME
QUERY_EXECUTOR_SCANNED
QUERY_EXECUTOR_SCANNED_OBJECTS
QUERY_TARGETING_SCANNED_PER_RETURNED
QUERY_TARGETING_SCANNED_OBJECTS_PER_RETURNED
SYSTEM_NORMALIZED_CPU_USER
SYSTEM_NORMALIZED_CPU_KERNEL
SYSTEM_NORMALIZED_CPU_IOWAIT
PROCESS_CPU_USER
PROCESS_CPU_KERNEL
SYSTEM_NORMALIZED_CPU_STEAL
メトリクス例
"projectId=5cd0343ff2a30b3880beddb0 hostId=m10awstestcluster-shard-00-00-snvkl.mongodb.net:27016 processId=m10awstestcluster-shard-00-00-snvkl.mongodb.net:27016 metric=ASSERT_REGULAR units=SCALAR_PER_SECOND cluster_name=m10awstestcluster 0.0 1564207269"
詳細については、https://docs.atlas.mongodb.com/refer...-measurements/ を参照してください。
ディスク メトリクス
収集されるメトリクス
DISK_PARTITION_IOPS_READ
DISK_PARTITION_IOPS_WRITE
DISK_PARTITION_UTILIZATION
DISK_PARTITION_LATENCY_READ
DISK_PARTITION_LATENCY_WRITE
DISK_PARTITION_SPACE_PERCENT_FREE
DISK_PARTITION_SPACE_PERCENT_USED
メトリクス例
projectId=5cd0343ff2a30b3880beddb0 partitionName=nvme1n1 hostId=m10awstestcluster-shard-01-02-snvkl.mongodb.net:27017 processId=m10awstestcluster-shard-01-02-snvkl.mongodb.net:27017 metric=DISK_PARTITION_IOPS_READ units=SCALAR_PER_SECOND cluster_name=m10awstestcluster 0.0 1564207300
詳細については、https://docs.atlas.mongodb.com/refer...-measurements/ を参照してください。
クエリのサンプル
このセクションに示されているクエリ例は、[MongoDB Atlas - Audit (MongoDB Atlas - 監査)] ダッシュボードの [Recent Audit Events (最近の監査イベント)] パネルから引用されています。
_sourceCategory=Labs/MongoDBAtlas/logs AND (_sourceName="mongodb-audit-log.gz" OR _sourceName="mongos-audit-log.gz") | json "atype", "local.ip", "remote.ip", "users","result", "project_id", "hostname", "cluster_name", "param" as atype, local_ip, remote_ip, users, result, project_id, hostname, cluster_name, param | json field=param "db", "ns" as database1, database2 nodrop | parse field=database2 "*.*" as database2, collection nodrop | if (isBlank(database1), database2, database1) as database | where atype matches /create|add|grant|drop|remove|revoke|shutdown|rename|update/ | first(_messageTime) as latest_event_date group by atype, project_id, hostname, cluster_name, database, collection, users, local_ip, remote_ip | sort by latest_event_date | formatDate(fromMillis(toLong(latest_event_date)),"MM-dd-yyyy HH:mm:ss:SSS") as latest_event_date