5

我正在评估 GCP 的 stackdriver 以跨多个微服务进行日志记录。其中一些服务部署在本地,其中一些在 AWS/GCP 上。我们的服务是基于 .NET 或 nodejs 的应用程序,我们投资于 winston for nodejs 和 nlog in .net。

我正在寻找 @ 将我们的本地 nodejs 应用程序与 stackdriver 日志集成。查看@ https://cloud.google.com/logging/docs/setup/nodejs的文档,似乎我们需要为除谷歌计算实例之外的任何机器安装代理。这个对吗?

如果我们需要安装代理,那么有什么方法可以在我的开发过程中测试日志记录?开发环境是 windows 10/mac。

4

3 回答 3

2

使用 Stackdriver 提取日志(和指标)有一个新选项,因为大多数非 Google 环境代理看起来都已被弃用。https://cloud.google.com/stackdriver/docs/deprecations/third-party-apps

关于使用 stackdriver 和 Blue Medora 记录本地资源的 Google 帖子 https://cloud.google.com/solutions/logging-on-premises-resources-with-stackdriver-and-blue-medora

对于日志,您仍然需要在每个盒子上安装一个代理来收集日志,它是 BindPlane 代理而不是 Google 代理。

于 2019-08-08T15:20:57.470 回答
1

对于 node.js,您可以在任何地方(本地、AWS、GCP 等)使用@google-cloud/logging-winston@google-cloud/logging-bunyan模块。如果不在 GCP 上运行,您将需要手动提供 projectId 和 auth 凭据。链接页面中提供了有关如何设置这些的说明。

在 GCP 上运行时,我们会自动找出确切的环境(App Engine、Compute Engine 等),并且日志应该在 Logging UI 中的这些资源下显示。如果您要使用开发机器中的模块,默认情况下我们将根据“全局”资源报告日志。您可以通过自己传递特定的资源描述符来自定义它。

如果您遇到任何麻烦,请告诉我们。

于 2017-10-09T18:22:14.567 回答
0

我尝试在我的本地 k8s 集群上进行设置。按照这个:https ://kubernetes.io/docs/tasks/debug-application-cluster/logging-stackdriver/

但我无法让它工作,fluentd-gcp-v2.0-qhqzt 一直在崩溃。

此外,该页面还提到,如果您不在 google GKE 上使用堆栈驱动程序日志记录,则会出现多个问题。请参阅屏幕截图。

我认为谷歌正试图将你锁定在 GKE 中。

在此处输入图像描述

于 2018-09-07T14:13:34.243 回答