尋找和檢視 Voice Gateway 日誌檔

SIP Orchestrator 日誌檔

SIP Orchestrator 儲存器的日誌檔位於 /logs/ 目錄。此目錄含有 messages.log 檔以及詳細記憶體回收日誌,例如 verbosegc.1.001.log。如果將 LOG_LEVEL 至少設為 fine,則目錄也會包含 trace.log 檔,其中含有其他詳細資料。如果 SIP Orchestrator 遇到任何異常狀況,異常狀況會根據發生日期而彙總在 ffdc 子目錄中的日誌檔。

如果要從 SIP Orchestrator 儲存器複製日誌檔,請執行下列指令:

若為「Docker 引擎」:

docker cp voice-gateway-so:/logs/messages.log .
docker cp voice-gateway-so:/logs/trace.log .

若為 IBM Cloud Private 和 IBM Cloud Kubernetes Service,其中 namespace 為 default,pod 名稱為 pod1

kubectl cp default/pod1:logs -c vgw-sip-orchestrator .

Media Relay 日誌檔

同樣地,Media Relay 的主要日誌檔 trace-mr.log 位於其儲存器上的 /vgw-media-relay/logs/ 目錄。如果要檢視 trace-mr.log 檔,最好的作法是使用 Bunyan,尤其是當記載層次設為 DEBUG 時,應該這樣做。如果要從 Media Relay 儲存器複製 trace-mr.log 檔,請執行下列指令:

若為「Docker 引擎」:

docker cp voice-gateway-mr:/vgw-media-relay/logs/trace-mr.log .

若為 IBM Cloud Private 和 IBM Cloud Kubernetes Service,其中 namespace 為 default,pod 名稱為 pod1

kubectl cp default/pod1:/vgw-media-relay/logs -c vgw-media-relay .

若有安裝 Bunyan,您可以使用下列指令來檢視日誌檔:

bunyan trace-mr.log

由於日誌採用 UTC(世界標準時間),您也可以使用 bunyan,來檢視採用您現行當地時區的日誌:

bunyan --time local trace-mr.log

依預設,除非在 MEDIA_RELAY_LOG_ROTATION_PERIOD 環境變數上設定不同的輪換週期,依預設,Media Relay 日誌檔採每日輪換。日誌檔會重新命名,因此 trace-mr.log 是 Media Relay 所寫入的現行檔案,舊檔案則會命名為 trace-mr.X,其中 X 代表該日誌檔是在幾天前輪換。舉例來說,在下列日誌目錄中,trace-mr.log 是作用中日誌檔,trace-mr.log.0 是昨天的日誌,trace-mr.log.1 是前天的日誌。

+ /vgw-media-relay/logs/
+ -- trace-mr.log        // 作用中的日誌檔
+ -- trace-mr.log.0      // 昨天的日誌
+ -- trace-mr.log.1      // 一天前的日誌

日誌檔會加總到 MEDIA_RELAY_LOG_ROTATION_FILE_COUNT 值中,依預設,會設為 10。當抵達該日誌檔數目,就會刪除最舊的日誌檔。

請注意,在 1.0.0.2 版及更舊版本中,如果您配置多個叢集工作者,每一個工作者會將日誌寫入到 /vgw-media-relay/logs/ 目錄之下的其自己的目錄中。

Speech to Text Adapter 日誌檔

Speech to Text Adapter 儲存器的日誌會輸出至 /stt-adapter/logs/ 目錄中的 trace.log 檔。如果要從儲存器複製日誌檔,請執行下列指令:

若為「Docker 引擎」:

docker cp voice-gateway-stt-adapter:/stt-adapter/logs/trace.log .

裝載 Docker 磁區,以輕鬆收集日誌

與其執行 docker cp 指令,來收集每一個儲存器中的日誌,您可以改為將本端檔案系統中的目錄,裝載到儲存器。儲存器會將日誌直接寫入至所裝載的目錄,這樣您就可以在本端檢視與收集日誌,而不必每次都要從儲存器複製它們。

如果要將本端目錄裝載成 Docker 磁區,請 docker-compose.yml 檔中,在每一個儲存器的 volumes 索引鍵上,以 host_directory:container_directory 格式來指定目錄對映。在下列範例中, $PWD/logs/ 表示現行工作目錄中的 logs 目錄,且該目錄會分別裝載到每一個儲存器的 logs 目錄。

version: '2'
services:
  sip.orchestrator:
    # Rest of the configuration
    ...

    # Mount the 'logs/' directory from the current working directory to the containers log directory
    volumes:
      - $PWD/logs/:/logs/

  media.relay:
  ...
    volumes:
      - $PWD/logs/:/vgw-media-relay/logs/
  stt.adapter:
    ...
    volumes:
      - $PWD/logs/:/stt-adapter/logs/

在您執行 docker-compose up 指令,來重新部署儲存器之後,就會在指令執行所在的現行工作目錄中,建立 logs 目錄。系統會在該處,建立及更新每一個儲存器的日誌檔。