问题标签 [google-cloud-logging]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
go - 如何通过 Stackdriver Logging 将错误记录到 Stackdriver Error Reporting
我正在尝试将错误记录到 Go 中的 Stackdriver 错误报告。在错误报告的第一页上,有说明“可以通过将应用程序错误记录到 Google Stackdriver Logging 或...来实现从您的应用程序报告错误”(https://cloud.google.com/error-reporting/docs /)。我如何使用 Go 客户端库来做到这一点?
日志库Entry
提供的构造如下:
github.com/GoogleCloudPlatform/.../logging.go#L412
我是否需要将此JSON 结构编组到有效负载中?或者我可以将堆栈跟踪作为字符串插入吗?
python - Google Stackdriver 不显示跟踪
以前,当我的应用程序中发生错误时,我可以找到整个代码到它发生的位置(文件、行号)的踪迹。在 Google Cloud 控制台中。
现在我只收到一个请求 ID 和一个时间戳,当在 Google Cloud Console 的“日志记录”窗口中时,代码中没有任何跟踪或行号的指示。选择“日志事件”仅显示请求的某种 JSON 结构,但不显示任何关于代码或任何有用信息的应用程序出了什么问题。
应该在谷歌云控制台中选择什么选项来显示 Python App Engine 应用程序的堆栈跟踪?
python - ImportError:没有名为 auth.credentials 的模块
我试图添加 GAE StackDriver 日志记录功能: https ://cloud.google.com/logging/docs/reference/libraries#client-libraries-resources-python
...到我正在运行的一个简单的 Web 服务,并且收到以下错误:
我让所有这些都在虚拟环境中运行。我仔细查看了依赖项、权限,并检查了 dist-packages/google/ 目录以确认 auth 包在其中。
非常感谢任何帮助故障排除。
google-app-engine - BigQuery 中导出的 App Engine 日志缺少字段
对于 App Engine(Python,标准环境),我在与应用程序相同的项目中创建了一个日志导出 (v2)。接收器的目的地是 Google BigQuery 中的数据集。
我可以在 BigQuery 中执行一些简单的查询:
虽然httpRequest.status
将在结果中显示值(并且所有其他选定字段都相同),但其他字段httpRequest
显示为null
,例如:requestMethod
、userAgent
、remoteIp
。
在 Cloud Log 网页上,我可以看到这些日志条目并且这些值是存在的,但似乎它们没有导出到 BigQuery。
当我尝试按请求方法过滤时GET
,例如:
此查询将返回零记录。
知道吗,为什么某些字段未在查询中显示并且不能用于 BigQuery 中的过滤器?
google-cloud-platform - Google Cloud Logs 未导出到存储
我正在尝试设置一个接收器,它将一组特定的 Google Cloud Platform 日志导出到 Google Cloud Storage 存储桶,但无法使其工作,并且文档似乎与 GCP 控制台上发生的情况不匹配。
步骤(全部使用 GCP 控制台):
1)我在日志查看器上设置了一个过滤器,它向我显示了预期的日志
2)我选择“创建导出”并填写以下字段:
- 接收器名称 = defaultServiceToGCSSink
- 接收器服务 = 谷歌云
- 存储接收器目标 = mylogsBucket
点击 OK 后,我收到一条消息: 未知用户电子邮件地址:defaultServiceToGCSSink@logging-somedigits.iam.gserviceaccount.com
显然,接收器正在尝试使用我给它的名称作为将写入存储桶的用户。
当我检查存储桶时,我可以看到拥有该电子邮件的用户已作为所有者添加到mylogsBucket。但存储桶中仍然没有日志。
我还将组 cloud-logs@google.com 作为所有者添加到存储桶(如文档所述),但没有任何效果,也没有日志导出到存储桶(我已经等了几个小时)。
我应该将该新用户添加到 IAM 吗?我尝试了,但它不接受电子邮件地址作为有效的用户名。
google-cloud-logging - Python 中的 Google Cloud Logging - ImportError
尝试在 Python 中导入 Google Cloud Logging 时出现以下错误:
我让它在一个虚拟环境中运行,在 requirements.txt 中有这个:
google-cloud-platform - “gcloud app logs tail”显示一周前的数据
我正在尝试为我的 Google Cloud Platform 应用程序流式传输日志。我注意到的第一件事是谷歌至少每秒发送大约 10 次健康检查,所以我必须grep -v /health
获取任何有用的信息。那是标准吗?
第二件事是它流式传输旧日志。我正在运行gcloud app logs tail -s default
并从 4 月 11 日(此时是一周前)开始获取日志。较新的日志(从 4、3 和 2 天前开始)在几个小时内慢慢流入。我刚刚在我的应用程序上点击了刷新(这会触发一条日志消息)并且没有看到新的日志。
有什么方法可以获得新日志消息的近实时(几分钟或几小时内)视图?
python - 使用 Python 客户端写入 Stackdriver 的日志偶尔不会被记录
我使用 Python 客户端编写的日志偶尔不会出现在 Web 控制台中。这些应该出现在默认 python 记录器下的全局区域中。只有极少数人真正到达那里,没有真正的模式来说明哪些做哪些不做。我在容器引擎中运行并且启用了堆栈驱动程序日志记录。
我的代码如下所示:
我这样记录的所有内容都会在 stdout 上获取,但我想使用 python 日志框架来正确获取级别。有什么建议我哪里出错了吗?
node.js - nodejs 在 google-cloud/logging 中编写 protopayload
我们如何在 NodeJS 中使用 google-cloud/logging 包传递 protopayload 联合标签?
到目前为止,我能够在日志中写入 textPayload 和 jsonPayload。
尝试使用 google-protobuf 和 protobufjs 创建协议缓冲区,甚至尝试了协议缓冲区包,但是当我执行 log.entry 和 log.write 时,在日志中看不到有效负载。
这是写日志的代码
//writelogs.js
//test.proto
编写代码是从 github 的 nodejs-doc-samples 复制的,我自己对 protopayload 的更改很少。示例日志写入仅适用于 jsonPayload 和 textPayload。