NetWorker:如何啟用 RabbitMQ 偵錯

Summary: 本 KB 概述 rabbitmq 服務、關聯的記錄檔,以及可應用的其他偵錯。

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

RabbitMQ

NetWorker 伺服器使用 RabbitMQ 作為訊息代理程式服務。它在 NetWorker 伺服器程序 (nsrd) 和 NetWorker 使用的其他服務之間提供訊息佇列機制,例如:AUTHC、NetWorker Management Console (NMC)、NetWorker Web 使用者介面 (NWUI) 等。RabbitMQ 服務問題導致 NetWorker 伺服器服務關閉;一般訊息會記錄在 NetWorker 伺服器的 daemon.raw:

  • Linux: /nsr/logs/daemon.raw
  • Windows (預設): C:\Program Files\EMC NetWorker\nsr\logs\daemon.raw
    137911 YYYY-MM-DD HH:mm:SS AM/PM  5 5 0 313919296 1615791 0 NW_SERVER-NAME nsrctld NSR critical Aborting startup sequence: Process /opt/nsr/rabbitmq-server-3.8.18/bin/rabbitmq-server exited in less than 10 seconds at startup: exit code 0
    127108 YYYY-MM-DD HH:mm:SS AM/PM  5 5 0 313919296 1615791 0 NW_SERVER-NAME nsrctld NSR critical Failed to start all daemons; shutting down...
  • 如何呈現daemon.raw:NetWorker:如何使用nsr_render_log呈現.raw紀錄檔

記錄檔:

記錄路徑會依使用的 rabbitmq 伺服器 版本而有所不同。NetWorker 版本可能包含較新版本的 RabbitMQ。您可以在 NetWorker 安裝和 NetWorker 管理指南中找到特定版本的詳細資料,網址為:NetWorker 支援 |手冊與文件 

Linux 記錄位置:
/nsr/logs/daemon.raw NetWorker 服務記錄
/opt/nsr/rabbitmq-server*/var/log/rabbitmq/log/crash.log RabbitMQ 當機記錄,此目錄包含 crash.log#,視記錄輪替而定。
/opt/nsr/rabbitmq-server*/var/log/rabbitmq/rabbit@localhost.log RabbitMQ 一般記錄
/opt/nsr/rabbitmq-server*/var/log/rabbitmq/rabbit@localhost_upgrade.log RabbitMQ 升級記錄
/nsr/tmp/rabbitmq/cores/erl_crash.dump 當機堆疊追蹤記錄

 

Windows 記錄位置 (預設安裝位置)
C:\Program Files\EMC NetWorker\nsr\logs\daemon.raw NetWorker 服務記錄
C:\Program Files\EMC NetWorker\nsr\tmp\RabbitMQ\log\log\crash.log RabbitMQ 當機記錄,此目錄包含 crash.log#,視記錄輪替而定。
C:\Program Files\EMC NetWorker\nsr\tmp\RabbitMQ\log\rabbit@HOSTNAME.log RabbitMQ 一般記錄
C:\Program Files\EMC NetWorker\nsr\tmp\RabbitMQ\log\rabbit@HOSTNAME_upgrade.log RabbitMQ 升級記錄
C:\Program Files\EMC NetWorker\nsr\tmp\RabbitMQ\cores\erl_crash.dump 當機堆疊追蹤記錄

偵錯:

  1. 製作原始 rabbitmq.config 的複本。
  • Linux: /opt/nsr/rabbitmq-server-#.#.#/etc/rabbitmq/rabbitmq.config
  • Windows (預設): C:\Program Files\EMC NetWorker\nsr\rabbitmq-server-#.#.#\etc\rabbitmq.config
注意:RabbitMQ 伺服器版本會因 NetWorker 版本而異。「rabbitmq-server」資料夾包含 RabbitMQ 伺服器版本。
  1. 編輯 rabbitmq.config 檔案以包含下列行:
    Linux:
%% {log_levels, [{channel, info}, {connection, info}, {federation, info}, {mirroring, info}]},
      {log_levels, [{connection, debug}, {queue, debug}]},
           {log,
                [{file, [{level, debug}]},
                {categories,
                    [{connection,
                        [{level, debug}]
                    },
                    {queue,
                        [{level, debug}]
                    }
                    ]
                }]
            },
注意:註解行 (%%) 已經存在,變更可新增在此行下方。
Windows:

在文件上方新增以下醒目顯示的行。

[  
 {rabbit, 
 [{tcp_listeners, []}, 
 {log_levels, [{connection, debug}, {queue, debug}]},
           {log,
                [{file, [{level, debug}]},
                {categories,
                    [{connection,
                       [{level, debug}]
                    },
                    {queue,
                        [{level, debug}]
                    }
                    ]
                }]
            },            
    {ssl_listeners, [5671]}, 
  1. 嘗試啟動 NetWorker 服務:
  • Linux: systemctl restart networker
  • Windows (PowerShell): net stop nsrd /y ; net start nsrd
  1. 監控 rabbit@localhost.log (如果是 Linux)、rabbit@NODE.log (如果是 Windows),並crash.log上可能阻止 RabbitMQ 啟動的錯誤。
警告:此偵錯的目的在於主動進行故障診斷。舉例來說,當 RabbitMQ 無法啟動時。它不應在使用中的 NetWorker 伺服器上啟用及自動執行。如果 RabbitMQ 正常運作,此偵錯可能會使用數千個與 java 的連接埠連線,這可能會使其停止回應 NetWorker 伺服器及其使用者介面。故障排除后,通過將 rabbitmq.config 檔還原到其預設設置來刪除調試。或者,使用在添加調試行之前創建的備份。停用除錯後,RabbitMQ 需要重新啟動 NetWorker 服務,才能重新載入組態檔案。

RabbitMQ 執行時,NetWorker 伺服器應讓連接埠 5671 (SSL) 進行接聽。

nsrports -t localhost -p 5671

您可以使用以下命令取得接聽 5671 上程序的程序 ID (PID)。與連接埠 5671 相關聯的程序應來自 rabbitmq-server

Linux:

netstat -apno | grep 5671

或:

ss -tanp 'sport = :5671'

使用 beam.smp 程序的 PID,確認其是否為 RabbitMq:

ps -ef | grep PID

如果 RabbitMQ 正在執行,則應該會有一個 beam.smp 進程偵聽埠 5671。
範例:

nve:~ # netstat -apno | grep :5671
tcp        0      0 :::5671                 :::*                    LISTEN      31393/beam.smp      off (0.00/0/0)
tcp        0      0 192.168.0.4:50612       192.168.0.4:5671        ESTABLISHED 13960/java          off (0.00/0/0)
tcp        0      0 ::1:5671                ::1:36464               ESTABLISHED 31393/beam.smp      off (0.00/0/0)
tcp        0      0 192.168.0.4:50596       192.168.0.4:5671        ESTABLISHED 13960/java          off (0.00/0/0)
tcp        0      0 ::1:36464               ::1:5671                ESTABLISHED 31927/nsrjobd       keepalive (6849.54/0/0)
tcp        0      0 ::1:56715               ::1:8695                TIME_WAIT   -                   timewait (0.24/0/0)
tcp        0      0 192.168.0.4:5671        192.168.0.4:50612       ESTABLISHED 31393/beam.smp      off (0.00/0/0)
tcp        0      0 ::1:56711               ::1:9436                TIME_WAIT   -                   timewait (23.09/0/0)
tcp        0      0 ::1:56717               ::1:7937                TIME_WAIT   -                   timewait (21.02/0/0)
tcp        0      0 ::1:56719               ::1:9436                TIME_WAIT   -                   timewait (23.09/0/0)
tcp        0      0 192.168.0.4:5671        192.168.0.4:50596       ESTABLISHED 31393/beam.smp      off (0.00/0/0)

nve:~ # ps -ef | grep 31393
root     12207 15447  0 23:09 pts/0    00:00:00 grep --color=auto 31393
root     31393 31385  1 23:01 ?        00:00:05 /opt/nsr/rabbitmq-server-4.1.1/erts-14.2.5.11/bin/beam.smp -W w -MBas ageffcbf -MHas ageffcbf -MBlmbcs 512 -MHlmbcs 512 -MMmcs 30 -pc unicode -P 1048576 -t 5000000 -stbt db -zdbbl 128000 -sbwt none -sbwtdcpu none -sbwtdio none -B i -- -root /opt/nsr/rabbitmq-server-4.1.1 -bindir /opt/nsr/rabbitmq-server-4.1.1/erts-14.2.5.11/bin -progname erl -- -home /nsr/rabbitmq -- -pa  -noshell -noinput -s rabbit boot -boot start_sasl -syslog logger [] -syslog syslog_error_logger false -kernel prevent_overlapping_partitions false
root     31408 31393  0 23:01 ?        00:00:00 erl_child_setup 1024

Windows (PowerShell):

Get-NetTCPConnection -LocalPort 5671 |
  Select-Object LocalAddress, LocalPort, RemoteAddress, RemotePort, State,
                @{Name='PID';Expression={$_.OwningProcess}},
                @{Name='ExecutablePath';Expression={
                  (Get-CimInstance Win32_Process -Filter "ProcessId = $($_.OwningProcess)" -ErrorAction SilentlyContinue).ExecutablePath
                }}

範例:

PS C:\Users\Administrator.NETWORKER> Get-NetTCPConnection -LocalPort 5671 |
>>   Select-Object LocalAddress, LocalPort, RemoteAddress, RemotePort, State,
>>                 @{Name='PID';Expression={$_.OwningProcess}},
>>                 @{Name='ExecutablePath';Expression={
>>                   (Get-CimInstance Win32_Process -Filter "ProcessId = $($_.OwningProcess)" -ErrorAction SilentlyContinue).ExecutablePath
>>                 }}


LocalAddress   : fe80::d3e7:121a:e342:3332%4
LocalPort      : 5671
RemoteAddress  : fe80::d3e7:121a:e342:3332%4
RemotePort     : 52085
State          : Established
PID            : 7720
ExecutablePath : C:\Program Files\EMC NetWorker\nsr\rabbitmq-server-3.12.14\bin\erl.exe

LocalAddress   : fe80::d3e7:121a:e342:3332%4
LocalPort      : 5671
RemoteAddress  : fe80::d3e7:121a:e342:3332%4
RemotePort     : 51582
State          : Established
PID            : 7720
ExecutablePath : C:\Program Files\EMC NetWorker\nsr\rabbitmq-server-3.12.14\bin\erl.exe

LocalAddress   : ::1
LocalPort      : 5671
RemoteAddress  : ::1
RemotePort     : 51813
State          : Established
PID            : 7720
ExecutablePath : C:\Program Files\EMC NetWorker\nsr\rabbitmq-server-3.12.14\bin\erl.exe

LocalAddress   : ::
LocalPort      : 5671
RemoteAddress  : ::
RemotePort     : 0
State          : Listen
PID            : 7720
ExecutablePath : C:\Program Files\EMC NetWorker\nsr\rabbitmq-server-3.12.14\bin\erl.exe

LocalAddress   : 0.0.0.0
LocalPort      : 5671
RemoteAddress  : 0.0.0.0
RemotePort     : 0
State          : Listen
PID            : 7720
ExecutablePath : C:\Program Files\EMC NetWorker\nsr\rabbitmq-server-3.12.14\bin\erl.exe

Windows (命令提示字元)

netstat -ano | findstr 5671
wmic process where "ProcessID='PID'" get ProcessID,ExecutablePath

範例:

PS C:\Users\Administrator.AMER> netstat -ano | findstr 5671
  TCP    0.0.0.0:5671           0.0.0.0:0              LISTENING       356
  TCP    192.168.9.123:5671     192.168.9.123:63097    ESTABLISHED     356
  TCP    192.168.9.123:5671     192.168.9.123:63098    ESTABLISHED     356
  TCP    192.168.9.123:63097    192.168.9.123:5671     ESTABLISHED     6324
  TCP    192.168.9.123:63098    192.168.9.123:5671     ESTABLISHED     6324
  TCP    [::]:5671              [::]:0                 LISTENING       356
  TCP    [::1]:5671             [::1]:63105            ESTABLISHED     356
  TCP    [::1]:5671             [::1]:63106            ESTABLISHED     356
  TCP    [::1]:63105            [::1]:5671             ESTABLISHED     4676
  TCP    [::1]:63106            [::1]:5671             ESTABLISHED     776

PS C:\Users\Administrator.AMER> wmic process where "ProcessID='356'" get ProcessID,ExecutablePath
ExecutablePath                                                         ProcessId
C:\Program Files\EMC NetWorker\nsr\rabbitmq-server-3.8.18\bin\erl.exe  356

Additional Information

Affected Products

NetWorker

Products

NetWorker Family, NetWorker Series
Article Properties
Article Number: 000212107
Article Type: How To
Last Modified: 06 Jan 2026
Version:  9
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.