跳到主要内容

Qlik NPrinting 消息服务 (RabbitMQ) 启动和连接问题

以下步骤适用于嵌入 RabbitMQ 版本 3.8.3 的 Qlik NPrinting 版本。您可以检查安装的正确路径。

进行以下操作:

  1. 通过选择以管理员身份运行,打开新命令提示。运行:

    • cd %ProgramFiles%\NPrintingServer

    • dir

  2. 请注意 RabbitMQ 安装文件夹。它以 rabbitmq_server 开头。

  3. 将文件夹名称替换为正确的文件夹,包括所有疑难解答命令中的正确版本号。

可能的原因  

如果未生成报表,或者引擎从未转为 Online 状态,或者如果 Qlik NPrinting 调度服务 在启动后大约一分钟之后停止,Qlik NPrinting 消息服务 (RabbitMQ) 可能已停止或者可能无法连接。

调度程序日志显示类似以下的消息:

*********************************************
Error: RabbitMQ message broker is unreachable
Shutting down scheduler service
*********************************************

Or like:

*********************************************
RabbitMQ service is not connected - trying again in 3 seconds
*********************************************

建议的操作  

  1. 检查 Qlik NPrinting 消息服务 是否在运行。
  1. 从系统配置文件文件夹 (C:\WINDOWS\system32\config\systemprofile\) 复制 .erlang.cookie 文件并用它替换 %USERPROFILE% 文件夹 (C:\Users\npadmin) 中的该文件。
  2. 以管理员身份打开新命令提示。
  3. 导航至 RabbitMQ sbin 文件夹:%ProgramFiles%\NPrintingServer\rabbitmq_server-3.8.3\sbin
  4. 运行以下命令:

    rabbitmqctl.bat list_permissions

    输出应当为:

    Listing permissions for vhost "/" ...
    user configure write read
    client_engine .* .* .*
    client_webengine .* .* .*
    remote .* .* .*
    client_audit .* .* .*
    client_scheduler .* .* .*
  5. 如果输出与此不同,请转到修复消息服务用户和权限。
  1. 以管理员身份打开新命令提示。
  2. 导航至证书生成器文件夹:%ProgramFiles%\NPrintingServer\NPrinting\RabbitMQCertificatesGenerator
  3. 运行以下命令:

    RabbitMQCertificatesGenerator.exe -d -c "C:\ProgramData\NPrinting\certificates"

  4. 如果输出由于缺少证书或证书无效而出现警告或错误,请转到重新创建消息服务证书
  1. 从系统配置文件文件夹 (C:\WINDOWS\system32\config\systemprofile\) 复制 .erlang.cookie 文件并用它替换 %USERPROFILE% 文件夹 (C:\Users\npadmin) 中的该文件。
  2. 以管理员身份打开新命令提示。

  3. 导航至 RabbitMQ sbin 文件夹:%ProgramFiles%\NPrintingServer\rabbitmq_server-3.8.3\sbin

  4. 运行以下命令:

    rabbitmqctl.bat status

  5. 检查输出。要检查的主要部分如下:
    Runtime
    OS PID: 12128
    OS: Windows
    Uptime (seconds): 23801
    RabbitMQ version: 3.8.3
    Node name: rabbit@localhost
    Erlang configuration: Erlang/OTP 22 [erts-10.6] [64-bit] [smp:12:12] [ds:12:12:10] [async-threads:64]
    Erlang processes: 316 used, 1048576 limit
    Scheduler run queue: 1
    Cluster heartbeat timeout (net_ticktime): 60
     
    Plugins
    Enabled plugin file: C:/ProgramData/NPrinting/RabbitMQ/enabled_plugins
    Enabled plugins:
    * rabbitmq_auth_mechanism_ssl
     
    Data directory
    Node data directory: c:/ProgramData/NPrinting/RabbitMQ/db/rabbit@localhost-mnesia
     
    Config files
    * c:/ProgramData/NPrinting/RabbitMQ/advanced.config
     
    Listeners
    Interface: [::], port: 25672, protocol: clustering, purpose: inter-node and CLI tool communication
    Interface: 0.0.0.0, port: 5672, protocol: amqp/ssl, purpose: AMQP 0-9-1 and AMQP 1.0 over TLS
    Interface: [::], port: 5672, protocol: amqp/ssl, purpose: AMQP 0-9-1 and AMQP 1.0 over TLS
  6. 如果命令失败或输出与预期的不同,请转到重新创建 Qlik NPrinting 消息服务

  7. 如果遇到命令错误,可以运行以下命令以获取更详细的错误:

    rabbitmq-server.bat

  1. 从系统配置文件文件夹 (C:\WINDOWS\system32\config\systemprofile\) 复制 .erlang.cookie 文件并用它替换 %USERPROFILE% 文件夹 (C:\Users\npadmin) 中的该文件。
  2. 以管理员身份打开新命令提示。
  3. 导航至证书生成器文件夹:%ProgramFiles%\NPrintingServer\NPrinting\RabbitMQCertificatesGenerator
  4. 运行以下命令:

    RabbitMQCertificatesGenerator.exe -p "%ProgramFiles%\NPrintingServer\rabbitmq_server-3.8.3"

  5. 重启服务
  1. 备份文件夹 C:\Programdata\NPrinting\RabbitMQ 并将其放在其他位置
  2. 从系统配置文件文件夹 (C:\WINDOWS\system32\config\systemprofile\) 复制 .erlang.cookie 文件并用它替换 %USERPROFILE% 文件夹 (C:\Users\npadmin) 中的该文件。
  3. 以管理员身份打开新命令提示。
  4. 停止所有服务,并关闭 services.msc 窗口。

  5. 通过运行以下命令停止 epmd.exe 进程: taskkill /f /im epmd.exe
  6. 导航至 RabbitMQ sbin 文件夹:%ProgramFiles%\NPrintingServer\rabbitmq_server-3.8.3\sbin
  7. 删除文件夹 C:\ProgramData\NPrinting\RabbitMQ 中的所有内容,但文件 enabled_pluginsadvanced.config 除外。
  8. 运行以下命令: rabbitmq-service.bat remove
  9. 使用指向 Erlang 基本文件夹 (C:\Program Files\erl10.6) 的路径,添加系统环境变量 ERLANG_HOME(如果缺失)
  10. 以管理员身份关闭命令提示并打开新的命令提示。
  11. 导航至 RabbitMQ sbin 文件夹:%ProgramFiles%\NPrintingServer\rabbitmq_server-3.8.3\sbin
  12. 运行以下命令:

    rabbitmq-service.bat install

    rabbitmq-service.bat start

  13. 如果服务没有启动,可以尝试运行此命令以获取更详细的错误: rabbitmq-server.bat
  14. 转到重新创建消息服务证书并完成步骤。
  1. 以管理员身份打开新命令提示。
  2. 导航至证书生成器文件夹:%ProgramFiles%\NPrintingServer\NPrinting\RabbitMQCertificatesGenerator
  3. 运行以下命令: RabbitMQCertificatesGenerator.exe -f -c "C:\ProgramData\NPrinting\certificates" -p "%ProgramFiles%\NPrintingServer\rabbitmq_server-3.8.3"

    该步骤也可修复消息服务用户和权限

  4. 重新安装 Qlik NPrinting Engine 并从 Qlik NPrinting web 控制台 重新配置它们。转到管理员 > 引擎管理器以使用新证书。
  5. 重启服务

本页面有帮助吗?

如果您发现此页面或其内容有任何问题 – 打字错误、遗漏步骤或技术错误 – 请告诉我们如何改进!