首页 > 解决方案 > 为什么我在记录时出现 Timber logger 500 HTTP 错误?

问题描述

我刚刚为我的应用程序升级了 Elixir/Phoenix 到 Elixir 1.9.0,Phoenix 1.4.10。

木材记录器后端在升级后停止工作。登录 Timber 时,我总是收到 500 HTTP 错误。

我的新木材包版本是 3.1.0。旧版本(Elixir 1.6+ 上的 Timber 2.8.0,Phoenix 1.3+)运行良好。

我在这里尝试了文档:https ://docs.timber.io/setup/protocols/http

事实证明,该部分中的 POST 和 curl 示例也都返回了 500 错误。

有人遇到同样的问题吗?任何建议表示赞赏。

谢谢你。

标签: elixirphoenixtimber

解决方案


我想到了。

示例中的 URL 是https://logs.timber.io/sources/YOUR_SOURCE_ID/frames

当我在 Timber 中创建 Source 时,它​​有一个名称。我使用 Timber 中的源名称而不是源 ID 来替换“YOUR_SOURCE_ID”,因此 Timber 返回了 500。

太可怕了,因为至少它应该返回一个 422,表示请求格式没问题,但由于某种原因它无法处理。

无论如何,有两种情况下 Timber 错误地返回了 500:

  1. 正文中的 JSON 数据格式错误。应该返回 400。(现在可能已修复 - 不确定)。

  2. URL 中的 source_id 错误。应该返回 422。仍然错误。


推荐阅读