问题标签 [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.
ruby - Google Cloud Logging Ruby:找不到某些日志
我在从google-cloud-logging ruby gem查找日志时遇到问题。
我可以通过我的谷歌云控制台使用高级搜索找到这些日志:jsonPayload.requestId=875325619
它返回多个结果,一个基本示例:
{
insertId: "epfh5dffj67k5"
jsonPayload: {
requestId: 875325619
request: {…}
timeSeconds: 5.296060973778367
}
resource: {
type: "gce_instance"
labels: {…}
}
timestamp: "2017-05-08T19:31:20.145488859Z"
severity: "WARNING"
logName: "projects/myproject/logs/mylog"
}
然而,通过 ruby 代理,这将返回一个空数组:
logging = Google::Cloud::Logging.new
logging.entries filter: "jsonPayload.requestId=875325619"
=> []
但是,寻找我发送的不同日志消息有效:
logging.entries filter: 'jsonPayload.uploadKey="example"'
[#<Google::Cloud::Logging::Entry:0x00000008e6ea30 (data here)>]
该数据如下所示:
{
insertId: "8w81fbg2a077zl"
jsonPayload: {
processingTime: 0.79228602
uploadType: "type"
uploadKey: "example"
}
resource: {
type: "gce_instance"
labels: {…}
}
timestamp: "2017-05-08T18:58:11Z"
labels: {…}
logName: "projects/myproject/logs/otherapp"
}
为什么我可以找到一组日志消息而找不到另一组?
fluentd - google-fluentd 和 Stackdriver 在自定义配置上落后一项
根据https://cloud.google.com/logging/docs/agent/installation上的说明,我有一个在 Google Cloud 上运行的 VM,并通过 google-fluentd 在其上安装了日志记录。我已经为将日志输出到 /var/log/myapp.log 的应用程序设置了自定义配置。
我创建了一个名为的配置(作为 root,实际上是 的副本tomcat.conf
)/etc/google-fluentd/config.d/myapp.conf
,它具有以下内容:
条目显示在 Stackdriver 中,但只有在将下一个条目放入 .log 文件并显示为错误时间(即,第 1 行正在获取第 2 行的时间戳)后,它才会进入 Stackdriver。
我在 .conf 文件中是否缺少可能导致此问题的内容?
logging - Stackdriver Logging 可以接收 syslog 协议吗?
Stackdriver Logging 是否能够通过 syslog 协议接收日志?
我正在使用开源 Heroku Logplex 路由器来收集日志。Logplex 允许您设置一个排水管来发送聚合日志,但我认为它使用 syslog 格式发送它。
我想使用 Stackdriver Logging,但我不知道要发送到哪个 syslog URL。
python - 如何有效地使用 Google App Engine python 应用程序中的日志记录?
如何在用 python 实现的Google Cloud Endpoints Frameworks应用程序中打印日志消息以进行调试?
由于Cloud Endpoints应用程序部署在App Engine上,我按照 App Engine 的文档阅读和编写应用程序日志,并尝试在 GAE控制台日志中找到我的日志消息。
即使使用了所有可用的过滤器,这也无济于事,因为大多数日志条目都有数百行嵌套的 JSON 对象,而我的日志消息将隐藏在一个日志条目中的元数据和不相关信息中。
有没有办法像我在本地机器上运行一个简单的 python 应用程序一样打印和查看日志消息?
node.js - Node.js @google-cloud/logging-winston 在 GCE 实例中不起作用
我正在使用 npm @google-cloud/logging-winston 将应用程序日志事件发送到谷歌堆栈驱动程序日志接收器。下面是我的代码片段,它在我的本地 macbook 中运行良好。当我尝试在 GCE 实例(谷歌云上的 ubuntu 16.10 图像计算实例)中运行它时,它不会将日志事件发送到日志接收器,并且我无法在谷歌云日志仪表板上看到它。任何帮助在这里表示赞赏
在此先感谢-jag
stackdriver - 如何通过 Python 中的 Stackdriver Logging 将错误记录到 Stackdriver 错误报告
我已经使用 Stackdriver Logging 很长时间了,现在我也想利用错误报告。如果可能(出于各种原因),我宁愿使用 Python 的日志记录机制并从日志文件中刮除异常,而不是使用 error_reporting 库。话虽如此,文档非常混乱。例如文档说: https ://cloud.google.com/error-reporting/docs/setup/compute-engine#log_exceptions
首先,安装 fluent-logger-python 库:
sudo pip install google-cloud-error-reporting --upgrade
这让我相信 google-cloud-error-reporting 是 fluent-logger-python 的一个分支或与之相关,但是,当我初始化 google-cloud-error-reporting 它直接调用 GCE 元数据服务器而不是连接到当地流利的。这两个不相关的软件包或者文档是否错误或具有误导性?如果我将 JSON 格式的异常发送到 fluentd 或 fluentd 监控的日志文件,错误报告会理解它们吗?
感谢您的任何澄清
ruby - Google Cloud Logging 中的 UnavailableError
我想在安装了 google-cloud-logging gem 的 ruby 脚本中创建一个特定的日志。
当我在我的 Windows 客户端上运行它时它可以工作,但是当我在我的 linux 服务器上运行它时出现以下错误:
我已经在两台机器上安装了 Google Cloud SDK,并且我通过 ginit 获得了授权。我还添加了密钥文件,它是一个日志管理服务帐户,但没有任何作用。我可以通过同一台机器上的 googl-cloud-storage 将文件上传到存储桶
这是我的 Ruby 脚本示例: