是否可以在不修改代码的情况下,在 Discourse 自托管的生产实例中使用 Docker 镜像启用详细日志记录?
我重新阅读了这里的许多建议,但没有一个奏效,或者没有获得任何额外信息。
1 个赞
我理解你的痛苦——尽管我并不知情!
在 Chatbot 插件中,我可以将冗长的 Info 日志(可选通过设置)重定向到 Production 的 Warn 级别,以便我能看到它们。这对于 AI 问题的可见性至关重要。
1 个赞
… 我看到了你的帖子 … 我的问题与 SAML 插件 相关,即使我对 SAML 和身份验证协议很了解,没有日志我也无能为力,而且看起来该插件根本不起作用(我甚至尝试根据插件中的参数创建理想的 SAML 响应)。我看到了 Discourse 的巨大潜力,但安装、配置,尤其是日志记录非常奇怪(与使用相同平台的 GitLab 相比)。
看起来我需要快速学习 Ruby 环境来解决我遇到的问题 ![]()
1 个赞
解决 SAML 插件问题
… 这是插件本身的问题,而不是 omniauth 或 ruby-saml gem/库的问题(我会尝试记录我所做的,但基本上是文档不足和误导性文档的组合,以及一些奇怪的编程解决方案,没有适当的调试,添加了一些注释,但没有注释,系统很难理解)。
为了不偏离主题,我建议(根据我对 Discourse 和 Ruby 的有限了解)这样做:
- 手动编辑容器文件(containers/app.yml)
- 提示:如果你希望容器有一个不同的名称,你可以在 containers 目录中更改文件名,并在所有命令中将 app 改为
your_name(这可能还有其他方法可以实现,但我没有时间去研究) - 在 GitHub 上 fork 该插件到你自己的空间,这样你就可以操作代码了,你可以在容器配置文件中像调用任何其他插件一样调用它
- 在很多地方你只需要添加
File.write('/var/www/discourse/log/production.log', 'Some text', mode: 'a'),每次代码执行到那一部分时,它都会被写入日志文件 - 如果你也想改进 Discourse,你也可以在 GitHub 上 fork Discourse 项目并从你的地方克隆它
1 个赞
那也行!
但如果你想继续使用 Rails,我认为这是个更好的选择:
(直到有人能为我们提供生产环境的信息级别选项!)
感谢您提供的额外选项……我对 Ruby/Rails 的了解不足以做到这些
……我需要学到更多才能达到您那样的知识水平,我会尝试以这种方式改进 SAML 插件(希望很快),但现在我需要在其中一个试点项目中完成其他软件的安装,Discourse 是其中一个组件。
1 个赞