问题标签 [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.

0 投票
1 回答
181 浏览

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" }

为什么我可以找到一组日志消息而找不到另一组?

0 投票
1 回答
360 浏览

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 文件中是否缺少可能导致此问题的内容?

0 投票
1 回答
269 浏览

c# - 在 C# 中使用 Google.Cloud.Logging.V2 包的内存泄漏

使用来自 nuget 的最新 Google.Cloud.Logging.V2 包,1.0.0

我发送日志的功能:

进行了压力测试,使用此功能从 40 个线程发送约 50 个日志/秒/线程。该测试大量泄漏内存,与禁用测试相比,运行大约 100MB/10 分钟。

这是内存分析器的差异: 内存分析器

通过 Google.Cloud.Logging.Log4Net 包时也会发生此问题。

任何有关如何进一步缩小范围的建议将不胜感激。是否有任何可用于云日志记录包的源代码可以检查以找到内存泄漏的来源?

0 投票
1 回答
1177 浏览

google-cloud-platform - Stackdriver 日志记录 - 通过 syslog 发送时未报告/接收的日志严重级别

似乎日志严重性没有通过 fluentd 代理传递到 Google Cloud Logging 平台,要重现您可以尝试:

重击:

logger -p user.crit "My log"

或 PHP:

php -r "syslog(LOG_CRIT,'My log');"

或 Python:

事情正在传递给谷歌日志查看器,如下所示:

在此处输入图像描述

但是严重性没有被发送出去,任何想法为什么会这样?

0 投票
1 回答
2108 浏览

logging - Stackdriver Logging 可以接收 syslog 协议吗?

Stackdriver Logging 是否能够通过 syslog 协议接收日志?

我正在使用开源 Heroku Logplex 路由器来收集日志。Logplex 允许您设置一个排水管来发送聚合日志,但我认为它使用 syslog 格式发送它。

我想使用 Stackdriver Logging,但我不知道要发送到哪个 syslog URL。

0 投票
1 回答
269 浏览

python - 如何有效地使用 Google App Engine python 应用程序中的日志记录?

如何在用 python 实现的Google Cloud Endpoints Frameworks应用程序中打印日志消息以进行调试?

由于Cloud Endpoints应用程序部署在App Engine上,我按照 App Engine 的文档阅读和编写应用程序日志,并尝试在 GAE控制台日志中找到我的日志消息。

即使使用了所有可用的过滤器,这也无济于事,因为大多数日志条目都有数百行嵌套的 JSON 对象,而我的日志消息将隐藏在一个日志条目中的元数据和不相关信息中。

有没有办法像我在本地机器上运行一个简单的 python 应用程序一样打印和查看日志消息?

0 投票
2 回答
1743 浏览

node.js - Node.js @google-cloud/logging-winston 在 GCE 实例中不起作用

我正在使用 npm @google-cloud/logging-winston 将应用程序日志事件发送到谷歌堆栈驱动程序日志接收器。下面是我的代码片段,它在我的本地 macbook 中运行良好。当我尝试在 GCE 实例(谷歌云上的 ubuntu 16.10 图像计算实例)中运行它时,它不会将日志事件发送到日志接收器,并且我无法在谷歌云日志仪表板上看到它。任何帮助在这里表示赞赏

在此先感谢-jag

0 投票
1 回答
520 浏览

google-cloud-platform - 更新日志接收器时“请求包含无效的协议”

我正在尝试使用 (Python) Google Stackdriver Logging API 更新现有接收器,但遇到了一个我无法追踪的错误。

有问题的方法的 API 资源管理器在此处,我将projects/my_project/sinks/my_sink_name作为提供给它sinkName,请求正文提供以下内容:

提交时,我收到以下错误:

...它没有指定哪个参数无效,我尝试了几种变体但没有成功。

附加信息:此请求基于 Python API 生成的请求。我也尝试指定接收器的完整路径name无济于事,这是 Python API 生成的,这似乎与文档相反。

0 投票
2 回答
1395 浏览

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 监控的日志文件,错误报告会理解它们吗?

感谢您的任何澄清

0 投票
1 回答
206 浏览

ruby - Google Cloud Logging 中的 UnavailableError

我想在安装了 google-cloud-logging gem 的 ruby​​ 脚本中创建一个特定的日志。

当我在我的 Windows 客户端上运行它时它可以工作,但是当我在我的 linux 服务器上运行它时出现以下错误:

我已经在两台机器上安装了 Google Cloud SDK,并且我通过 ginit 获得了授权。我还添加了密钥文件,它是一个日志管理服务帐户,但没有任何作用。我可以通过同一台机器上的 googl-cloud-storage 将文件上传到存储桶

这是我的 Ruby 脚本示例: