您好,
我的服务器上的远程图片突然无法下载了,尽管我没有更改任何配置,并且磁盘空间也充足。
我尝试查看日志,但没有发现任何可疑之处。
唯一奇怪的是,我在 sidekiq 队列作业中看不到用于下载图片的 sidekiq 进程。
我在这里遗漏了什么吗?
此致
您好,
我的服务器上的远程图片突然无法下载了,尽管我没有更改任何配置,并且磁盘空间也充足。
我尝试查看日志,但没有发现任何可疑之处。
唯一奇怪的是,我在 sidekiq 队列作业中看不到用于下载图片的 sidekiq 进程。
我在这里遗漏了什么吗?
此致
您的磁盘已满(如果这是导致其停止的原因,您应该会在管理员仪表板上收到通知)。
您可以重启和/或重建以查看 sidekiq 是否正常运行。另请参阅 /sidekiq
编辑:
哎呀。抱歉。
正如我所说,磁盘没有满(使用了 30%),Sidekiq 正在运行。
更正:Jobs::UpdateHotlinkedRaw 正在运行,但我看不到日志中有任何错误。
我将尝试重建,看看是否有新的东西。
没问题 ![]()
我尝试重新构建,但没有任何新内容,远程图像仍未下载。
嗯。好吧。并且 /logs 中没有错误?
似乎重建让日志错误再次生效了,因为我现在终于看到了与图片相关的错误。
default: Failed to pull hotlinked image (https://www.2dgalleries.com/planches/800W/2017/139/marvano-les-sept-nains-3140.jpg) post: 945243
PG::UniqueViolation: ERROR: duplicate key value violates unique constraint \"index_post_hotlinked_media_on_post_id_and_url_md5\"
DETAIL: Key (post_id, md5(url::text))=(945243, af709cfc810efb23bda285d236a393a4) already exists.
但我认为这并不是这里的问题,因为许多其他图片没有被下载,而且我没有看到关于它们的错误。
编辑:好的,有些奇怪但可能有用。缩略图是为图片生成的。最近代码是否有过更改,粘贴的图片URL只生成一个指向原始来源的链接的缩略图?
我们最近确实重构了这个子系统。我已经联系了合适的工程师,请稍等。
您好 @Oni - 可以分享一个无法正常工作的示例帖子吗?(如果您愿意,可以通过私信分享)
^^ 这表明图片已被下载 - 我们无法从远程图片生成缩略图。所以图片仍然在帖子中热链接显示,这很奇怪 ![]()
这是链接
此帖子中的远程图片本应已下载。此问题出现已有 10-15 天。
您可以看到显示的是缩略图,但原始来源只是链接。它应该是原始下载的图片。
啊,我明白了——看起来图片本身已指向本地下载的版本,但 <a> 链接却没有指向。\n\n
我看到最新版本中新增了媒体屏蔽参数,但 onebox 链接错误仍然存在。
是的,这个 bug 还在我的待办事项列表里 ![]()
我不想成为那个抱怨的人,但一个月后这个错误仍然存在,而要做的只是更改一个变量名……
这应该可以解决问题:
直接单框的图片现在会被重写为 markdown 图片。这是在我最近重构之前的旧行为。和以前一样,重写会延迟大约 10 分钟。
对我来说似乎不起作用。
我重新构建了。
是的,当 onebox 是帖子中唯一的热链接媒体时,新逻辑不起作用。这应该可以解决问题:FIX: Ensure pull-hotlinked can rewrite lone oneboxes (#17354) · discourse/discourse@2d5d15b · GitHub
这是一个热链接图片 onebox - 它应该在 10 分钟左右被重写为图片
(https://pbs.twimg.com/media/FRdPEnnX0AIy0V8?format=jpg&name=large)
编辑:是的,这似乎奏效了。请您再试一次更新 @oni,并告知我们您的进展?
我可以确认它运行得非常顺利 ![]()