@google-cloud/logging-winston Express 中间件请求捆绑问题

@google-cloud/logging-winston Express middleware request bundling issue

我在 Node/Express 应用程序中使用 @google-cloud/logging-winston 包在 Google 云 运行 中进行日志记录。 最近我通过 makeMiddleware() 方法切换到使用基于 Express 中间件的记录器。我进行了切换以启用请求日志捆绑。现在可以使用了,但由于某种原因,日志在 Google 云日志中出现两次,一次作为请求的一部分,另一次作为单独的日志。

这正常吗?

是否有任何方法可以跳过额外的日志记录,以便任何特定于请求的日志仅显示在他们的请求下?

更新
我正在使用 @google-cloud/logging-winston 包的 v4.0.4 和 winston 包的 v3.3.3

根据github,这是按预期工作的:

According to our backend team, this particular case is actually working as intended. We will not resolve this at the API/client library level.

It is annoying that the logs show up twice in the Logs Viewer UI. So, internally there's now a P2 ticket for a UI improvement on this. Thanks for alerting us on it!

In the meantime, the recommended approach is still to filter for the *_req lognames while using the UI.

您也可以尝试将 Winston 更新为 latest version 并仔细检查您的运输申报。