目錄

簡介

必要條件

需求

採用元件

一般日誌准則

日誌記錄影響

生成技術報告

生成備份

未生成日誌檔案

日誌概述

啟用日誌和設定詳細程度

一般准則

內部

ncs.log

audit.log

audit-log-commit和audit-log-commit-defaults

devel.log

ncs-java-vm.log

ncs-python-vm.log

upgrade.log

raft.log

xpath.trace

ncserr.log

transerr.log

progress.trace

ncs-smart-licensing.log

北向

localhost:xxxx.access

traffic.trace

netconf.log

netconf-trace.log

json-rpc.log

南行

裝置NED跟蹤

audit-network.log

簡介

本文檔介紹NSO中可用的各種日誌、它們的用途以及如何啟用它們。

必要條件

需求

要檢視、啟用和設定日誌，您需要使用者有權訪問運行NSO服務的主機環境，以及有權訪問NSO CLI和NSO IPC埠。

採用元件

Cisco Crosswork網路服務協調器(NSO)版本6.4.1

本文檔是為截至NSO 6.4可用的日誌記錄選項編寫的。雖然本文檔中的大多數資訊適用於各個版本，但有些日誌可能與您使用的版本相比已被棄用或新增。本文檔不包括在NSO系統外部匯出日誌的配置。

本文檔中提供的命令假定使用預設目錄設定進行系統安裝NSO。在您的環境中，某些檔案的位置可能不同。

- 預設情況下可在$NCS_CONFIG_DIR中找到ncs.conf /etc/ncs/ncs.conf

- 預設情況下可在$NCS_LOG_DIR中找到日誌/var/log/ncs/

- 預設情況下，NSO安裝在$NCSDIR中/opt/ncs/

- 預設情況下，NSO的運行目錄為$NCS_RUN_DIR， /var/opt/ncs/

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路運作中，請確保您瞭解任何指令可能造成的影響。

一般日誌准則

日誌記錄影響

以更高的詳細程度啟用日誌可能會導致NSO伺服器的負載和磁碟空間需求增加。對於高度活動日誌（如devel.log），這尤其是一個考慮因素。在故障排除期間在短時間內啟用詳細程度通常不是問題，但在啟用較長時間時，請確保將資源和磁碟空間考慮在內。

生成技術報告

To generate a tech report for NSO, run the script at /opt/ncs/current/bin/ncs-collect-tech-report.

選項：

--install-dir

:指定安裝NCS靜態檔案的目錄，如安裝程式的 — install-dir選項。

--full :收集系統的ncs備份，使思科支援人員可以更輕鬆地重現任何錯誤。

--num-debug-dumps :預設1，生成調試轉儲快照。對於跟蹤資源洩漏的情況（如記憶體/檔案描述符洩漏），請將其設定為3。

推薦選項：

/opt/ncs/current/bin/ncs-collect-tech-report --num-debug-dumps 3

可以單獨收集和提供備份，以限制捆綁包的檔案大小，從而更輕鬆地上傳。

在運行指令碼的當前目錄中生成技術報告。

附註：技術報告收集NSO日誌目錄的內容。在生成新的技術報告之前，請驗證此目錄不包含任何以前的技術報告或備份。

生成備份

/opt/ncs/current/bin/ncs-backup

備份是在中生成的 /var/opt/ncs/backups/.

未生成日誌檔案

當日誌檔案被存檔或刪除時，NSO需要建立一個新檔案。這通常會自動發生，但是如果沒有發生，請使用命令：

/opt/ncs/current/bin/ncs_cmd -c reopen_logs.

附註：例如，使用ncs.conf中的ipc-access設定限制對IPC埠的訪問時，請確保將必要的變數定義為cron或anacron的一部分，以便每週日誌旋轉可以正確重新開啟日誌。

日誌概述

- NSO內部日誌

- ncs.log:ncs日誌記錄了NSO的主要過程。它只能用於有關關機、啟動、載入軟體包和升級的問題，其深度資訊有限。

- audit.log:稽核日誌記錄通過任何API在NSO上進行身份驗證的所有使用者。它還記錄NSO CLI和低精度北向介面上的任何活動。

- audit-log-commit:啟用此設定將增強audit.log。它不會建立自己的日誌。它在提交和同步起始操作期間記錄對NSO CDB的所有非預設更改。

- audit-log-commit-default :啟用此設定將增強audit.log。它不會建立自己的日誌。它將在提交和同步起始操作期間記錄對NSO CDB的所有預設更改。

- devel.log:該日誌記錄了NSO的一般操作和工作流程。

- ncs-java-vm.log:Java日誌記錄所有與Java-VM相關的操作。最明顯的是所有網路元素驅動程式(NED)和服務包都是用Java編寫的。所有CLI NED都用Java編寫。

- ncs-python-vm.log:python日誌記錄與用Python編寫的服務包相關的活動。每個用python編寫的服務包都會生成單獨的python日誌。沒有用Python編寫的NED。

- upgrade.log:升級日誌記錄在NSO升級期間對NSO型號所做的更改，包括重新載入軟體包期間的NSO版本升級和NSO軟體包升級。

- raft.log:專用於利用HA-Raft功能的NSO群集的日誌。

- xpath.trace:xpath跟蹤記錄NSO執行的所有xpath評估。這有助於確定刪除操作花費較長時間的原因。

- ncserr.log:ncserr.log是記錄來自NCS守護程式的內部進程的錯誤的二進位制日誌。對於幾乎所有的「內部錯誤」錯誤消息和崩潰情況都是強制性的。

- transerr.log:事務錯誤日誌是收集導致CDB啟動錯誤或運行時事務失敗的失敗事務資訊的日誌。

- progress.trace:進度跟蹤用於跟蹤系統中由事務和操作發出的進度事件。在/progress/trace中配置要發射的資料。

- ncs-smart-licensing.log:NSO內部許可證smart-agent的日誌。

- 北行：從北向元素到達NSO

- audit.log:稽核日誌記錄在NSO CLI上執行的命令。

- localhost:8080.access/localhost:8888.access :這是嵌入式Web伺服器的訪問日誌並收集HTTP活動。此檔案遵循Apache定義的通用日誌格式

- traffic.trace:此日誌收集非常高詳細的HTTP流量。使用它調試Restconf和json-rpc API。

- netconf.log:Netconf API的日誌

- netconf-trace.log:高精度netconf API的日誌

- json-rpc.log:json-rpc.log API的日誌

- 南行：記錄從NSO到網路的通訊。

- 裝置NED跟蹤：每台裝置生成自己的跟蹤。裝置跟蹤名稱為ned-<ned-id>-<devicename>.trace或netconf-<devicename>.trace

- audit-network.log:記錄NSO傳送到南向裝置的配置命令。

- 系統記錄

- Linux日誌：通常位於/var/log/並包括消息或系統日誌等日誌。具體取決於主機。

- ncs_crash.dump:NSO因記憶體問題終止時生成的NSO系統轉儲。

- 核心轉儲：當NSO由於非記憶體原因終止時，Linux可以生成一個稱為core的核心轉儲。<PID>

Linux需要滿足某些條件才能生成核心轉儲。Ulimit配置是阻止轉儲的最常見設定。有關要求的完整清單，請參見Linux手冊頁

附註：NCS技術報告不收集系統日誌，但是對效能和故障相關問題可能有用。

啟用日誌和設定詳細程度

附註：更改ncs.conf檔案中的配置設定可以通過執行命令來ncs --reload應用。ncs --reload, it 從ncs.conf檔案中重新載入值並更新正在運行的系統，同時關閉並重新開啟所有日誌檔案，以便應用任何日誌記錄更改。這不會中斷服務。

一般准則

- 當ncs.conf檔案中不存在特定配置時，NSO會採用檔案中指定的預設行/opt/ncs/current/src/ncs/ncs_config/tailf-ncs-config.yang為。

- 當日誌被指定為預設啟用時，這意味著即使缺少用於啟用該日誌的配置，也會啟用該日誌。

- 預設情況下，某些日誌處於禁用狀態，但在首次安裝NSO期間，ncs.conf具有啟用該日誌的特定說明。

- 當ncs.conf檔案中不存在特定配置時，可以新增配置，如logs container在ncs.conf檔案

和之間所示。

內部

ncs.log

預設情況下啟用此日誌。要啟用此日誌，請開啟/etc/ncs/ncs.conf並更改<ncs-log>的內容。

true

${NCS_LOG_DIR}/ncs.log

true

編輯ncs.conf後，執行ncs —reload。

audit.log

預設情況下啟用此日誌。要啟用此日誌，請開啟/etc/ncs/ncs.conf並更改<audit-log>的內容。

true

${NCS_LOG_DIR}/audit.log

true

編輯ncs.conf後，執行ncs —reload。

audit-log-commit和audit-log-commit-defaults

預設情況下未啟用此日誌。要啟用此日誌，請開啟/etc/ncs/ncs.conf，然後在<audit-log>之後新增內容。

true

${NCS_LOG_DIR}/audit.log

true

true

true

編輯ncs.conf後，執行ncs —reload。

devel.log

預設情況下，此日誌在INFO詳細程度啟用。若要啟用和更改此日誌的詳細程度，請打開/etc/ncs/ncs.conf並更改<developer-log>的內容。

true

${NCS_LOG_DIR}/devel.log

true

trace

編輯ncs.conf後，執行ncs —reload。

ncs-java-vm.log

預設情況下，此日誌在INFO詳細程度啟用。可以為由java-vm管理的各個元素設定詳細程度。詳細程度會從NSO CLI改變，NSO CLI可通過SSH或ncs_cli -C -noaaa訪問

要增加com.tailf下所有java元素的詳細程度，請執行以下操作：

設定

java-vm java-logging logger com.tailf level-trace

提交無網路

要增加特定NED包的詳細程度，請執行以下操作：

設定

java-vm java-logging logger com.tailf.packages.ned.<NED-name> level-trace

提交無網路

要增加Java NED包中使用的SSHJ客戶端的詳圖，請執行以下操作：

設定

java-vm java-logging logger net.schmizz.sshj level-error

提交無網路

附註：思科建議將日誌記錄的SSHJ客戶端設定為level-error。預設情況下禁用。

要恢復特定Java元素的日誌記錄，請執行以下操作：

設定

no java-vm java-logging logger com.tailf

提交無網路

要檢視當前的java-vm日誌記錄設定，請執行以下操作：

show running-config java-vm java-logging

ncs-python-vm.log

預設情況下，此日誌在INFO詳細程度啟用。從NSO CLI更改詳細程度，NSO CLI可通過SSH或ncs_cli -C -noaaa訪問。

為所有Python VM的日誌設定詳細程度。

設定

python-vm logging level level-debug

提交無網路

要恢復，請執行以下操作：

設定

no python-vm logging level-debug

提交無網路

要檢視當前的python-vm日誌記錄設定，請執行以下操作：

show running-config python-vm logging

upgrade.log

預設情況下啟用此日誌。要啟用此日誌，請開啟/etc/ncs/ncs.conf並更改<upgrade-log>的內容。

true

${NCS_LOG_DIR}/upgrade.log

true

編輯ncs.conf後，執行ncs —reload。

raft.log

預設情況下，此日誌在INFO詳細程度啟用。要啟用和設定此日誌的詳細度，請開啟/etc/ncs/ncs.conf並更改<raft-log>的內容。

true

${NCS_LOG_DIR}/raft.log

true

trace

編輯ncs.conf後，執行ncs —reload。

xpath.trace

預設情況下未啟用此日誌。若要啟用此日誌，請開啟/etc/ncs/ncs.conf並更改<xpath-trace-log>的內容。

true

${NCS_LOG_DIR}/xpath.trace

編輯ncs.conf後，執行ncs —reload。

ncserr.log

此日誌記錄的資訊量有限。NSO維護5個錯誤檔案，每個檔案預設最大大小為1MB。在極少數情況下，當日誌資料中發生超過5MB的問題時，您需要增加最大大小。預設情況下啟用此日誌。若要將此日誌的最大大小更改為每個檔案10MB，請打開/etc/ncs/ncs.conf，然後更改<error-log>的內容。

true

${NCS_LOG_DIR}/ncserr.log

S10M

編輯ncs.conf後，執行ncs —reload。

transerr.log

預設情況下未啟用此日誌，但在第一次安裝時在ncs.conf中啟用。要啟用此日誌，請開啟/etc/ncs/ncs.conf並更改<transaction-error-log>的內容。

true

${NCS_LOG_DIR}/transerr.log

編輯ncs.conf後，執行ncs —reload。

progress.trace

預設情況下未啟用此日誌，但在第一次安裝時在ncs.conf中啟用。要啟用此日誌，請開啟/etc/ncs/ncs.conf並更改<progress-trace>的內容。

true

${NCS_LOG_DIR}

編輯ncs.conf後，執行ncs —reload。

ncs-smart-licensing.log

預設情況下未啟用此日誌。日誌從NSO CLI啟用，後者可通過SSH或ncs_cli -C -noaaa訪問。要啟用此日誌，請執行以下操作：

設定

已啟用智慧許可證智慧代理出站捕獲

提交無網路

要恢復日誌記錄更改，請執行以下操作：

設定

未啟用智慧許可證智慧代理stdout捕獲

提交無網路

北向

localhost:xxxx.access

預設情況下啟用此日誌。此日誌的名稱因HTTP埠而異。預設值為8080和8888。要啟用此日誌，請開啟/etc/ncs/ncs.conf並更改<webui-access-log>的內容。

true

${NCS_LOG_DIR}

編輯ncs.conf後，執行ncs —reload。

traffic.trace

預設情況下未啟用此日誌。traffic.trace日誌在目錄(如/var/log/ncs/trace_20240628_010010/)中生成。要啟用此日誌，請開啟/etc/ncs/ncs.conf並更改<webui-access-log>的內容。

true

${NCS_LOG_DIR}

true

編輯ncs.conf後，執行ncs —reload。

netconf.log

預設情況下啟用此日誌。要啟用此日誌，請開啟/etc/ncs/ncs.conf，然後在<netconf-log>後新增內容。

true

${NCS_LOG_DIR}/netconf.log

true

編輯ncs.conf後，執行ncs —reload

其他選項：在之

true

後插入，使NSO記錄rpc-reply狀態「ok」或「error」。

netconf-trace.log

預設情況下未啟用此日誌。若要啟用此日誌，請開啟/etc/ncs/ncs.conf，然後更改<netconf-trace-log>的內容。

true

${NCS_LOG_DIR}/netconf-trace.log

編輯ncs.conf後，執行ncs —reload。

json-rpc.log

預設情況下未啟用此日誌。若要啟用此日誌，請開啟/etc/ncs/ncs.conf，然後在<jsonrpc-log>之後新增內容。

true

${NCS_LOG_DIR}/json-rpc.log

true

編輯ncs.conf後，執行ncs —reload。

南行

裝置NED跟蹤

預設情況下未啟用此日誌。日誌從NSO CLI啟用，後者可通過SSH或ncs_cli -C -noaaa訪問。

要為裝置啟用跟蹤，請執行以下操作：

設定

devices device <devicename> trace raw

devices device <devicename> ned-setting <ned-id> logger level debug

提交無網路

要檢視應用於裝置的所有日誌設定，請使用show devices device <devicename> active-settings。

要清除device-trace檔案的內容，請使用devices device <devicename> clear-trace。

要禁用裝置跟蹤，請執行以下操作：

設定

no devices device <devicename>跟蹤

提交無網路

audit-network.log

預設情況下未啟用此日誌。要啟用此日誌，請開啟/etc/ncs/ncs.conf，然後在<audit-network-log>後新增內容。

true

${NCS_LOG_DIR}/audit-network.log

true

編輯ncs.conf後，執行ncs —reload。