Strategy ONE
故障排除 MicroStrategy Library 安装
问题:我的 Library 是空的
- 打开 Library 管理控制面板 并检查 Intelligence 服务器是否已配置并正在运行。
- 您的 Library。
- 监控 REST API 错误
当。。。的时候 Library Web 应用程序行为异常且没有任何错误消息,监视从 MicroStrategy 使用 Web 浏览器调试工具的 REST API。
- 在 Chrome 中,打开开发者工具。
- 打开网络选项卡。
- 执行重现步骤。
- 检查是否捕获了所有请求。
- 单击您感兴趣的网络请求。
- 在请求信息窗口中,打开“预览”选项卡。这将以 JSON 格式显示响应。
- 查找任何红色的网络请求,因为这表示 REST API 请求可能已失败。如果您仅查找 API 错误,请点击 西门子 选项,以便网络选项卡显示所有 http(s) 调用,包括 API。
- 查看 MicroStrategyLibrary 错误日志并在浏览器调试工具中查找任何控制台错误。
- 确保您拥有使用 Library 所有项目的特权(见 特权 Library 网页),这样您就可以访问所有项目内的仪表板。
问题:协作服务器不可用
-
如果通知图标不可用:
- 前往 Library 管理控制面板 并配置协作服务器。
- 确保您具有使用协作服务权限(请参阅 特权 Library 网页)。
- 如果通知图标可用但被禁用,则表示协作服务器未连接。单击该图标并使用错误消息对话框联系您的管理员。
- 监控 Web Socket 错误
当 Collaboration 服务器具有 Library 失败并且没有详细的错误消息,使用 Web 浏览器调试工具直接从 Web Socket 消息中监视错误消息。
- 在 Chrome 中,打开 开发者工具。
- 打开网络选项卡。
- 执行重现步骤。
- 通过“WS”(WebSockets)过滤请求类型。
- 点击一个网络请求。
- 在请求信息窗口中,打开“框架”选项卡。这将以 JSON 格式显示请求和响应。
- 如果您没有看到任何请求,请刷新页面。浏览器调试工具有可能在建立 Web Socket 连接后开始捕获网络调用。
- 如果刷新后仍未看到任何请求,则 Library 由于环境限制,您环境中的 Web 和协作服务器是通过 HTTP 轮询而不是 Web Socket 进行的。
常见配置错误
- 表示连接被拒绝的错误,如:
- 无法调用身份验证服务器方法。错误:连接 ECONNREFUSED 127.0.0.1:8443(代码=ECONNREFUSED)无法连接到身份验证服务器。
- 验证“authorizationServerUrl”是否使用与您的证书关联的“通用名称”相同的机器名称。简而言之,如果您没有同一台机器的证书并且该证书不是由受信任的证书颁发机构签名的,那么您就无法打开到同一台机器的安全连接。
- 表示证书存在问题的错误,例如:
- 无法调用身份验证服务器方法。错误:无法验证第一个证书 <code=UNABLE_TO_VERIFY_LEAF_SIGNATURE>。无法连接到身份验证服务器。
- 验证协作服务器中指定的证书
config.json
文件与创建 Tomcat 所用的密钥库文件相同。
诊断协作服务器连接问题
MicroStrategy 安装提供了命令行诊断工具,用于解决协作服务器连接问题。
调用诊断工具:
Windows:
将当前工作目录更改为 <MicroStrategy_commonFiles_path>\nodejs
。
运行以下命令:
node "<MicroStrategy_installed_path>\Collaboration Server\node_modules\mstr-collab-svc\diagnose.js" "<MicroStrategy_installed_path>\Collaboration Server\config.json"
Linux:
从运行以下命令 /opt/mstr/MicroStrategy/install/CollaborationServer
启动协作服务器诊断工具的目录:
./collaborationServer.sh diagnose
在正在运行的系统上调用诊断工具将返回以下内容:
- 两个从属服务器都将显示为已连接
-
协作服务器显示为已启动且处于运行状态。
-
受信任证书的列表,包括名称和到期日期(仅当在
config.json
文件)
诊断工具的常见错误
协作服务器显示已停止
这意味着协作服务器没有运行。您需要启动协作服务器并重新运行诊断工具。
协作服务器状态显示为暂停:授权服务器未连接
受信任的 CA 证书文件
对角线工具将尝试读取配置的每个文件路径 config.json
文件作为 TrustedCert。一个文件中可能有多个证书。可能的结果如下:
-
成功
-
不支持的格式
-
警告:包含过期的证书
-
无效的 PEM 块
-
成功:2 张证书
-
警告:包含已过期的证书(此文件中有 2 个证书。一个有效,一个已过期)
通过协作服务器日志排除故障
如果启用了协作服务器日志记录,则协作服务器创建的日志将提供更详细的信息,包括:
- 运行警告和错误
- 请求活动
- 通知记录
Library 服务器到协作服务器错误和警告
警告:密钥不匹配
Library 服务器和协作服务器需要设置相同的密钥(至少 5 个字符的字符串),以验证对方服务器的身份。如果密钥不匹配, Library 服务器无法与协作服务器对话。更新协作服务器配置等功能 Library 管理控制面板将会失败。这 Library 服务器本身可以使用。
警告:缺少信任库 Library 服务器
如果协作服务器在启用 TLS 的情况下运行,并使用私有根 CA 签名证书,则 Library 服务器需要出示相应的证书才能建立安全通信。管理员可以在 Library 服务器(参见 MicroStrategy Library 服务器配置属性)。如果未能引用信任库中所需的证书,将导致此警告。随着此警告生效, Library 服务器无法与协作服务器通信。更新协作服务器配置等功能 Library 管理控制面板将会失败。这 Library 服务器本身可以使用。
警告:无法建立从浏览器到协作服务器的套接字连接
在某些情况下, Library 服务器可以与协作服务器通信,但最终用户(浏览器)可能无法与协作服务器建立通信(无法建立套接字连接)。可能的原因有以下三种:
-
这 Library 服务器在启用 TLS 的情况下运行(URL 以“https”开头),而协作服务器在禁用 TLS 的情况下运行(URL 以“http”开头)。如果当前网站使用“https”,某些浏览器将阻止任何对“http”的请求。
-
协作服务器在启用 TLS 的情况下运行,但使用私有根 CA 签名的证书。一些浏览器会将此类私有根 CA 视为不受信任,并阻止对这些服务器的请求。管理员可能需要将这些私有根 CA 添加到信任列表中。
-
管理员可以使用主机名(如“localhost”)作为协作服务器的计算机名 Library 服务器。该主机名仅被 Library 服务器,其他用户(客户端机器/浏览器)无法访问。
可能有两个原因:
-
找不到该主机名的 IP 地址:最终用户可以更新系统中的 hosts 文件,这可以帮助系统将域名解析为 IP 地址
-
IP 地址对最终用户不可见:它可能是本地 IP 地址或端口未公开。
-
协作服务器 Library 服务器错误和警告
警告:协作服务器未针对当前 Library 服务器。
这只是一个警告:协作服务器正在与不同的 Library 服务器。当前 Library 服务器可以使用。当两者 Library 服务器提供不同的数据。
错误:协作服务器未针对当前 Library 服务器和目标 Library 无法连接服务器。
对于这种情况, Library 由于此错误导致协作服务器暂停,因此无法使用。管理员可以选择使用当前 Library 服务器作为目标 Library 此协作服务器的服务器。
错误:目标 Library 无法访问服务器,无法通过管理控制面板进行设置
在两种情况下,管理 UI 可以显示有关当前协作服务器的问题,但无法提供任何解决方案:
-
密钥不匹配 Library 服务器和协作服务器。
-
协作服务器使用私有根 CA 签名证书启用 TLS,而 Library 服务器缺少该证书的信任库。
这两种原因都会导致 Library 服务器无法与协作服务器通信,因此无法控制/更新协作服务器设置。
错误:无法访问协作商店
当前的管理控制面板没有公开更新协作存储的界面。管理员可以通过协作服务器配置手动更新。
Library 服务器到 Intelligence Server 的错误和警告
错误:Intelligence Server 无法访问
当 Library 服务器无法连接到当前情报服务器。
当 Library 服务器无法连接到当前 Intelligence 服务器,并且 Admin UI 已使用当前 Intelligence 服务器的主机名和端口成功进行连接测试。这很可能是由于使用了不正确的 TLS 设置造成的。
错误:最低版本要求
如果 Library 服务器设置了最低 Intelligence 服务器版本要求,而当前 Intelligence 服务器不满足该要求,则会显示此错误消息。