NetWorker. Как включить отладку RabbitMQ
Сводка: Эта статья базы знаний является обзором службы rabitmq, относящихся к ней файлов журналов и дополнительной применимой отладки.
Инструкции
RabbitMQ
Серверы NetWorker используют RabbitMQ в качестве службы агента брокера сообщений. Он предоставляет механизм очереди сообщений между серверными процессами NetWorker (nsrd) и другие службы, используемые NetWorker, например: AUTHC, NetWorker Management Console (NMC), NetWorker Web User Interface (NWUI) и т. д. Проблемы со службой RabbitMQ приводят к выключению службы сервера NetWorker; Общие сообщения регистрируются в папке сервера NetWorker daemon.raw.
- Linux:
/nsr/logs/daemon.raw - Windows (по умолчанию):
C:\Program Files\EMC NetWorker\nsr\logs\daemon.raw137911 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-server Используемая версия. Версии NetWorker могут включать более поздние версии RabbitMQ. Подробные сведения о конкретных версиях можно найти в руководствах по установке и администрированию NetWorker, доступных по адресу: Поддержка NetWorker | Руководства и документы
/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 |
Журналы отслеживания стека сбоев |
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 |
Журналы отслеживания стека сбоев |
Отладка:
- Создайте копию исходного файла rabbitmq.config.
- Linux:
/opt/nsr/rabbitmq-server-#.#.#/etc/rabbitmq/rabbitmq.config - Windows (по умолчанию):
C:\Program Files\EMC NetWorker\nsr\rabbitmq-server-#.#.#\etc\rabbitmq.config
- Отредактируйте файл 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}]
}
]
}]
},
Добавьте следующие выделенные строки в начало файла.
[
{rabbit,
[{tcp_listeners, []},
{log_levels, [{connection, debug}, {queue, debug}]},
{log,
[{file, [{level, debug}]},
{categories,
[{connection,
[{level, debug}]
},
{queue,
[{level, debug}]
}
]
}]
},
{ssl_listeners, [5671]},
- На серверах Linux добавьте обмен сообщениями трассировки в
rabbitmq-serverДвоичном:vi /opt/nsr/rabbitmq-server-#.#.#/bin/rabbitmq-server- В верхней части файла, в той же строке, что и
#!/bin/shДобавить-x. Пример:[root@nsr ~]# head /opt/nsr/rabbitmq-server-4.1.1/bin/rabbitmq-server #! /bin/sh -x
Во время запуска сервера NetWorker сообщения трассировки RabbitMQ регистрируются непосредственно в/nsr/logs/daemon.raw. Когда отладка больше не понадобится, удалите-xот этой строки.
- В верхней части файла, в той же строке, что и
- Попытайтесь запустить службы NetWorker:
- Linux:
systemctl restart networker - Windows (PowerShell):
net stop nsrd /y ; net start nsrd
- Следите за
rabbit@localhost.log(если Linux),rabbit@NODE.log(если Windows), иcrash.logдля ошибок, которые могут препятствовать запуску RabbitMQ.
rabbitmq.config с настройками по умолчанию. Кроме того, можно использовать резервную копию, созданную перед добавлением строк отладки. Для того, чтобы RabbitMQ перезагрузил файл конфигурации после отключения отладки, требуется перезапуск служб NetWorker.
При работе RabbitMQ сервер NetWorker должен прослушивать порт 5671 (SSL).
nsrports -t localhost -p 5671
Для получения идентификатора процесса (PID) прослушивания порта 5671 можно использовать следующие команды. Процесс, связанный с портом 5671, должен начинаться rabbitmq-server.
Linux:
netstat -apno | grep 5671
Или
ss -tanp 'sport = :5671'
Использование PID параметра beam.smp process, убедитесь, что это 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
Дополнительная информация
NetWorker. Как включить AUTHC DEBUG для устранения
неполадокNetworker: Включение отладки
по API-интерфейсу RESTВеб-интерфейс управления NetWorker (NWUI): Руководство по сортировке и поиску и устранению неисправностей