ApsaraDB for MongoDB インスタンスの監査ログのエントリをクエリします。
- この操作を呼び出すときは、インスタンスの監査ログ機能が有効になっていることを確認してください。そうでない場合、操作は空の監査ログを返します。
- この操作は、汎用ローカルディスク インスタンスと 専用ローカルディスク インスタンスにのみ適用されます。
- この操作は、1 分間に最大 30 回呼び出すことができます。より高い頻度でこの操作を呼び出すには、ログストアを使用します。詳細については、「ログストアの管理」をご参照ください。
デバッグ
リクエストパラメーター
| パラメーター | タイプ | 必須 | 例 | 説明 |
| Action | String | はい | DescribeAuditRecords | 実行する操作。値を DescribeAuditRecords に設定します。 |
| RegionId | String | いいえ | cn-hangzhou | インスタンスのリージョン ID。DescribeDBInstanceAttribute 操作を呼び出して、インスタンスのリージョン ID をクエリできます。 |
| DBInstanceId | String | はい | dds-bp12c5b040dc**** | インスタンスの ID。 説明 このパラメーターをシャードクラスターインスタンスの ID に設定する場合は、NodeId パラメーターも指定する必要があります。 |
| NodeId | String | いいえ | d-bp128a003436**** | インスタンス内で監査ログをクエリする mongos ノードまたはシャードノードの ID。インスタンスがシャードクラスターインスタンスの場合は、このパラメーターを指定する必要があります。 説明 このパラメーターは、DBInstanceId がシャードクラスターインスタンスの ID に設定されている場合にのみ有効です。 |
| StartTime | String | はい | 2019-03-13T12:11:14Z | クエリする時間範囲の開始。 yyyy-MM-ddTHH:mm:ssZ 形式で時間を指定します。時間は UTC でなければなりません。 |
| EndTime | String | はい | 2019-03-13T13:11:14Z | 監査ログのクエリに指定された時間範囲の終了。終了時刻は開始時刻より後である必要があります。 yyyy-MM-ddTHH:mm:ssZ 形式で時間を指定します。時間は UTC でなければなりません。 説明 終了時刻は開始時刻から 24 時間以内である必要があります。そうでない場合、クエリは失敗します。 |
| Database | String | いいえ | testdatabase | クエリ対象のデータベースの名前。デフォルトでは、すべてのデータベースがクエリされます。 |
| User | String | いいえ | root | データベースのユーザー。このパラメーターを指定しない場合、この操作はすべてのユーザーのレコードを返します。 |
| Form | String | いいえ | Stream | 操作が返す監査ログの形式。有効な値:
デフォルト値: Stream。 |
| QueryKeywords | String | いいえ | slow | クエリに使用されるキーワード。複数のキーワードはスペースで区切ります。キーワードの最大数は 10 です。 |
| PageSize | Integer | いいえ | 30 | 各ページに返すエントリの数。有効な値: 30、50、100。デフォルト値: 30。 |
| PageNumber | Integer | いいえ | 1 | 返すページ番号。値は 0 より大きい整数である必要があります。デフォルト値: 1。 |
| OrderType | String | いいえ | asc | 返すログエントリがソートされる時間の順序。有効な値:
|
レスポンスパラメーター
| パラメーター | タイプ | 例 | 説明 |
| TotalRecordCount | Integer | 40 | エントリの総数。 |
| PageRecordCount | Integer | 30 | 現在のページの最大エントリ数。 |
| RequestId | String | 3278BEB8-503B-4E46-8F7E-D26E040C9769 | リクエストの ID。 |
| PageNumber | Integer | 1 | 返すページ番号。 |
| Items | SQLRecord の配列 | 監査ログエントリの情報で構成される配列。 | |
| SQLRecord | |||
| HostAddress | String | 11.xxx.xxx.xxx | クライアントの IP アドレス。 |
| TableName | String | C1 | コレクションの名前。 |
| ReturnRowCounts | Long | 2 | 返される SQL 監査ログエントリの数。 |
| DBName | String | test123 | データベースの名前。 |
| ExecuteTime | String | 2019-03-11T03:30:27Z | ステートメントが実行された時刻。時刻は yyyy-MM-ddTHH:mm:ssZ 形式です。時間は UTC で表示されます。 |
| ThreadID | String | 140682188297984 | SQL 監査ログエントリに記録されているスレッドの ID。 |
| TotalExecutionTimes | Long | 700 | ステートメントの実行時間。単位: マイクロ秒。 |
| Syntax | String | { \"atype\" : \"createCollection\", \"param\" : { \"ns\" : \"123.test1\" }, \"result\": \"OK\" } | 実行されたステートメント。 |
| AccountName | String | root | データベースのアカウント。 |
例
リクエストの例
http(s)://mongodb.aliyuncs.com/?Action=DescribeAuditRecords
&StartTime=2019-03-13T12:11:14Z
&EndTime=2019-03-13T13:11:14Z
&DBInstanceId=dds-bp12c5b040dc****
&<共通リクエストパラメーター>成功レスポンスの例
XML 形式
HTTP/1.1 200 OK
Content-Type:application/xml
<?xml version="1.0" encoding="UTF-8" ?>
<DescribeAuditRecordsResponse>
<Items>
<SQLRecord>
<TotalExecutionTimes>703</TotalExecutionTimes>
<Syntax>{ "atype" : "command", "param" : { "command" : "find", "ns" : "123.test1", "args" : { "find" : "test1", "filter" : { "x" : 1, "y" : 2 }, "shardVersion" : [ { "$timestamp" : { "t" : 0, "i" : 0 } }, { "$oid" : "000000000000000000000000" } ], "$clusterTime" : { "clusterTime" : { "$timestamp" : { "t" : 1552275017, "i" : 2 } }, "signature" : { "hash" : { "$binary" : "9qfygDs61fKCvdXJqjq+f0zML0E=", "$type" : "00" }, "keyId" : { "$numberLong" : "6666955498811555841" } } }, "$client" : { "application" : { "name" : "MongoDB Shell" }, "driver" : { "name" : "MongoDB Internal Client", "version" : "3.4.10" }, "os" : { "type" : "Linux", "name" : "Ubuntu", "architecture" : "x86_64", "version" : "16.04" }, "mongos" : { "host" : "rxxxxxx.cloud.cm10:3074", "client" : "47.xxx.xxx.xx:53854", "version" : "4.0.0" } }, "$configServerState" : { "opTime" : { "ts" : { "$timestamp" : { "t" : 1552275017, "i" : 2 } }, "t" : { "$numberLong" : "3" } } }, "$db" : "123" } }, "result": "OK" }</Syntax>
<HostAddress>11.xxx.xxx.xx</HostAddress>
<ExecuteTime>2019-03-11T03:30:27Z</ExecuteTime>
<ThreadID>139xxxxxxxx</ThreadID>
<AccountName>__system;</AccountName>
<DBName>local;</DBName>
</SQLRecord>
<SQLRecord>
<TotalExecutionTimes>0</TotalExecutionTimes>
<Syntax>{ "atype" : "createIndex", "param" : { "ns" : "123.test1", "indexName" : "y_1", "indexSpec" : { "v" : 2, "key" : { "y" : 1 }, "name" : "y_1", "ns" : "123.test1" } }, "result": "OK" }</Syntax>
<HostAddress></HostAddress>
<ExecuteTime>2019-03-11T03:30:06Z</ExecuteTime>
<ThreadID>140xxxxxxxx</ThreadID>
<AccountName>__system;</AccountName>
<DBName>local;</DBName>
</SQLRecord>
</Items>
<PageNumber>1</PageNumber>
<TotalRecordCount>2</TotalRecordCount>
<RequestId>3278BEB8-503B-4E46-8F7E-D26E040C9769</RequestId>
<PageRecordCount>30</PageRecordCount>
</DescribeAuditRecordsResponse>JSON 形式
HTTP/1.1 200 OK
Content-Type:application/json
{
"Items" : {
"SQLRecord" : [ {
"TotalExecutionTimes" : 703,
"Syntax" : "{ \"atype\" : \"command\", \"param\" : { \"command\" : \"find\", \"ns\" : \"123.test1\", \"args\" : { \"find\" : \"test1\", \"filter\" : { \"x\" : 1, \"y\" : 2 }, \"shardVersion\" : [ { \"$timestamp\" : { \"t\" : 0, \"i\" : 0 } }, { \"$oid\" : \"000000000000000000000000\" } ], \"$clusterTime\" : { \"clusterTime\" : { \"$timestamp\" : { \"t\" : 1552275017, \"i\" : 2 } }, \"signature\" : { \"hash\" : { \"$binary\" : \"9qfygDs61fKCvdXJqjq+f0zML0E=\", \"$type\" : \"00\" }, \"keyId\" : { \"$numberLong\" : \"6666955498811555841\" } } }, \"$client\" : { \"application\" : { \"name\" : \"MongoDB Shell\" }, \"driver\" : { \"name\" : \"MongoDB Internal Client\", \"version\" : \"3.4.10\" }, \"os\" : { \"type\" : \"Linux\", \"name\" : \"Ubuntu\", \"architecture\" : \"x86_64\", \"version\" : \"16.04\" }, \"mongos\" : { \"host\" : \"rxxxxxx.cloud.cm10:3074\", \"client\" : \"47.xxx.xxx.xx:53854\", \"version\" : \"4.0.0\" } }, \"$configServerState\" : { \"opTime\" : { \"ts\" : { \"$timestamp\" : { \"t\" : 1552275017, \"i\" : 2 } }, \"t\" : { \"$numberLong\" : \"3\" } } }, \"$db\" : \"123\" } }, \"result\": \"OK\" }",
"HostAddress" : "11.xxx.xxx.xxx",
"ExecuteTime" : "2019-03-11T03:30:27Z",
"ThreadID" : "139xxxxxxxx",
"AccountName" : "__system;",
"DBName" : "local;"
}, {
"TotalExecutionTimes" : 0,
"Syntax" : "{ \"atype\" : \"createIndex\", \"param\" : { \"ns\" : \"123.test1\", \"indexName\" : \"y_1\", \"indexSpec\" : { \"v\" : 2, \"key\" : { \"y\" : 1 }, \"name\" : \"y_1\", \"ns\" : \"123.test1\" } }, \"result\": \"OK\" }",
"HostAddress" : "",
"ExecuteTime" : "2019-03-11T03:30:06Z",
"ThreadID" : "140xxxxxxxx",
"AccountName" : "__system;",
"DBName" : "local;"
} ]
},
"PageNumber" : 1,
"TotalRecordCount" : 2,
"RequestId" : "3278BEB8-503B-4E46-8F7E-D26E040C9769",
"PageRecordCount" : 30
}エラーコード
| HttpCode | エラーコード | エラーメッセージ | 説明 |
| 400 | InvalidEndTime.Format | 指定された終了時刻が無効です。 | 指定された EndTime パラメーターが無効であるために返されたエラーメッセージ。時刻は yyyy-MM-ddTHH:mmZ 形式で指定します。時間は UTC でなければなりません。終了時刻は開始時刻より後である必要があります。 |
エラーコードのリストについては、API エラーセンターをご覧ください。