插件 "Gamification" 和 "Reactions" 出现了一些不稳定问题

您好,

尝试使用了 GamificationReactions 插件。但是这两个插件在我的测试实例中似乎不稳定。

到目前为止,我尝试重建容器以查看是否会改变任何情况 - 没有变化。另外,我之前添加的另外两个插件 SolvedBBcode 没有问题。

我还能检查什么来尝试弄清楚这种行为是什么原因?

发生的情况是:

  • 插件功能停止工作。
  • 插件从 已安装插件 列表中消失。
  • 如果插件存在,它可能会显示没有配置选项。
  • 如果插件配置选项存在,在更改时可能会抛出错误,显示没有名为 xxxx_xxxx_xxxx 的配置参数。

重新检查:

  • 重建日志 - 没有关于插件的错误。
  • Web 浏览器开发者控制台 - 没有错误,除了在无法加载页面时出现 404。
  • Rails/Unicorn 日志 - 没有可疑之处。

Discourse 版本:

  • v3.5.0beta7 (tests-passed chain)

请把你的 app.yml 文件中的插件部分发过来。

1 个赞

这部分?

hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          #- git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-bbcode.git
          - git clone https://github.com/discourse/discourse-solved.git
          - git clone https://github.com/discourse/discourse-reactions.git
          - git clone https://github.com/discourse/discourse-gamification.git

嗯……一切看起来都相当不错。我能问一下你为什么取消注释 Docker Manager 插件吗?

虽然这可能是问题的原因,但你能尝试取消注释它并重新构建吗?

我有多个主机系统位于反向代理 (rev-proxy) 之后以实现高可用性 (HA)。一个主机用于构建/重建 discourse,其余主机仅用于托管。我认为 docker manager 插件在这种情况下将无法正常工作,所以我禁用了它。

为什么禁用该插件会导致这两个出现问题?也许我应该直接将其从列表中删除?

那可能不行。这确实很奇怪。您能分享一张您的插件页面的截图吗?

编辑:现在应该在那里了,但正如所见,两个提到的插件都因为某种原因缺失了。

现在刷新页面后

那么……刷新页面后现在能用了吗?如果你点击 设置,插件的设置会加载吗?

目前它只加载一个空的设置页面。

编辑:重新加载后,设置确实会加载。但如前所述,它有效,但在发生某些情况后则无效。

1 个赞

很奇怪。您是否可以在您的论坛中使用插件(例如,查看/leaderboard,对帖子做出反应等)?

以前尝试 Gamification 时,有 50% 的几率加载成功,有时则不行。Reactions 似乎根本没有加载。只有默认的点赞功能,没有反应选择。

也许找到了一些东西。我尝试在私密/隐身标签页中重建,这样就没有缓存了。当我在这两个插件都启用时,discourse 总是会尝试从 S3 存储桶加载两个不存在的资产。我也没有在重建日志中看到对这两个的引用。这些插件可能与资产/上传存储在 minio S3 中的 discourse 设置不兼容吗?我已经创建了语法高亮器的解决方法

重建后 S3 上不存在的资产:

S3_URL/assets/chunk.86b59b318d00d6f8db6a.d41d8cd9.br.js
S3_URL/assets/chunk.23e5cc7cf06d7f53c6f5.d41d8cd9.br.js
1 个赞

等等,不对。严重的误操作。我在监控中配置错误,导致我没有注意到我没有关闭主机模式节点上的旧容器。因此,我在测试环境中构建了一个节点,其中包含带有新插件的较新 discourse 3.5.0beta8,以及不带那些插件的较旧 3.5.0beta7。并且反向代理设置为最少连接时,Web 界面在这些节点之间加载资源时变得混乱不堪……有了提到的插件后,一切都运行正常。现在,我最好删除这个话题,还是将其保留作为笔记,给可能陷入类似低级错误情况的人参考?