RESTCONF エージェントのアカウンティング ログ
POST、PUT、PATCH、または DELETE などの書き込み操作の場合、RESTCONF は関連するアカウンティングログを出力します。これには、受信した元の要求と、スイッチに適用された最終的な変更の両方が含まれます。
アカウンティングログは、show accounting log コマンドを使用して表示できます。
次の要求例を考えてみます。
---
curl -s -L --request POST --user admin: --header 'Content-Type: application/yang.data+json' --url “restconf/data/Cisco-NX-OS-device:System/intf-items/lb-items/LbRtdIf-list=lo10” --data-raw @request.txt
Payload:
<descr>test</descr>
Or
{"descr":"test"}
---
アカウンティング ログには、次の項目が含まれます。
表 3. スイッチに適用される変更
項目 |
説明 |
コンテキスト |
セッション ID とユーザー |
オペレーション |
コミット/中止 |
データベース |
実行または候補 |
ConfigMO |
MO ツリーのテキスト表現。最大 3,000 文字。 |
ステータス |
成功/失敗 |
例:
Wed Jun 29 13:53:37
2022:type=update:id=3180018864:user=admin:cmd=(COMMIT),database=[running],configMo=[ <topSystem childAction="" dn="sys" status="created,modified"><interfaceEntity childAction=""
rn="intf" status="created,modified"><l3LbRtdIf childAction="" descr="test" id="lo10" rn="lb-
[lo10]" status="created,modified"/></interfaceEntity></topSystem>] (SUCCESS)
表 4. 受信した元の要求
項目 |
説明 |
コンテキスト |
セッション ID とユーザー |
オペレーション |
RESTCONF:POST、RESTCONF:PUT、RESTCONF:PATCH、RESTCONF:DELETE |
送信元 IP(Source IP) |
RESTCONF クライアント IP |
URL |
HTTP URL |
ペイロード |
受信したXML/JSONリクエスト。最大 3,000 文字。 |
ステータス |
成功/失敗 |
例:
Wed Jun 29 13:53:37
2022:type=update:id=3180018864:user=admin:cmd=(RESTCONF:POST),sourceIp=[192.168.1.2], url=[/restconf/data/Cisco-NX-OS-device:System/intf-items/lb-items/LbRtdIflist=lo10],payload=[<descr>test</descr>] (SUCCESS)
失敗した要求の場合、失敗のシナリオによっては、ユーザーは両方のログを確認できない場合があります。
無効な要求:
無効な要求は、構成の変更なしに拒否されるため、元の要求のみがログに記録されます。
例:
Wed Jun 29 20:16:26
2022:type=update:id=3180018864:user=admin:cmd=(RESTCONF:POST),
sourceIp=[192.168.1.2],url=[/restconf/data/Cisco-NX-OS-device:System/intf-items/lb-items/LbRtdIflist=lo10],payload=[<descr>test</descr>] (FAILED)
さまざまな構成制限による要求の失敗:
この場合、失敗した構成試行と元の要求の両方がログに記録されます。
例:
Wed Jun 29 20:32:01
2022:type=update:id=3180018864:user=admin:cmd=(COMMIT),database=[running], configMo=[<topSystem childAction="" dn="sys" status="created,modified"><telemetryEntity
childAction="" rn="tm" status="created,modified"><telemetryCertificate childAction="" filename="foo" hostname="foo" rn="certificate" status="created,modified" trustpoint="test"/></telemetryEntity></topSystem>] (FAILED)
Wed Jun 29 20:32:01
2022:type=update:id=3180018864:user=admin:cmd=(RESTCONF:PATCH),
sourceIp=[192.168.1.2],url=[/restconf/data/Cisco-NX-OS-device:System/tm-items/certificateitems],payload=[<trustpoint>test</trustpoint><hostname>foo</hostname><filename> foo</filename>] (FAILED)