问题标签 [google-cloud-stackdriver]

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 回答
33 浏览

google-app-engine - BigQuery 表装饰器与 AppEngine RequestLog 时间戳

我正在尝试在 BigQuery 的 AppEngine RequestLog 表之一中使用表装饰器范围。根据文档,日志条目是 LogEntry https://cloud.google.com/logging/docs/reference/v2/rest/v2/LogEntry类型的对象。

有两列时间戳和接收时间戳。第一列描述是“日志条目描述的事件发生的时间”,第二列是“Stackdriver Logging 接收日志条目的时间”。

我尝试使用时间戳列和表装饰器范围比较表查询表中的时间范围和记录数。

查询我在哪里使用时间戳列。

查询结果。

1698320 | 2017-06-22 01:00:00 UTC | 2017-06-22 01:59:59 UTC

查询我在哪里使用表装饰器范围。

查询结果。

1534754 | 2017-06-22 00:40:45 UTC | 2017-06-22 01:35:59 UTC

我没有得到相同的日期范围和相同数量的记录。这三个时间戳中的每一个是什么意思?以及桌面装饰器系列如何在引擎盖下工作?(BigQuery 是否会在创建表时创建表的快照)

0 投票
1 回答
277 浏览

ruby-on-rails - 在 Rails 中使用 stackdriver gem

我对使用各种堆栈驱动程序产品很感兴趣,但我似乎无法让它与 Rails 一起使用。我添加stackdriver到我的 Gemfile,运行bundle install并添加了配置块。

这是我得到的错误:

我曾尝试手动要求 Gem,除此之外,它似乎没有加载代码。

0 投票
0 回答
59 浏览

google-kubernetes-engine - 在堆栈驱动程序日志记录的元数据字段上添加图像

我有一个正在运行的应用程序google-container-engine

这是我的deployment.yaml

当我从我的应用程序登录时

我得到这些细节stackdirver

有没有办法添加细节(不在我的应用程序上添加代码)还有imageId?

就像是:

你是一种配置将在stackdriver上添加哪些字段的方法吗?

0 投票
1 回答
1112 浏览

fluentd - Stackdriver 自定义多行日志记录,时间格式

我一直在尝试设置一个自定义的多行日志解析器,以将带有一些可读字段的日志输入 Stackdriver。目前它看起来像这样:

它已按照http://docs.fluentd.org/v0.12/articles/parser_multiline上的规范完成,并且可以正常工作。但它没有适当的时间戳就可以工作 -timestart并且timeend只是 json 中的简单字段。所以在这个当前状态下,time_format设置是没有用的,因为我在正则表达式中没有time变量。这确实聚合了我需要的所有变量,当我运行流利的服务时,日志会显示在 Stackdriver 中,并且一切都非常愉快。

但是,当我将其中一个时间变量的名称更改为 时time,尝试将 Stackdriver 时间戳实际分配给条目时,它不起作用。机器上的 fluentd 日志显示工作人员已启动并解析了所有内容,但 Stackdriver 控制台中根本没有显示日志。

timestarttimeend看起来像或Fri Jun 2 20:39:58 UTC 2017类似的东西。时间格式规范位于http://ruby-doc.org/stdlib-2.4.1/libdoc/time/rdoc/Time.html#method-c-strptime并且我已经检查并仔细检查了太多次并且我无法弄清楚我做错了什么。

编辑:另一个细节:当我尝试解析time变量时,虽然日志没有显示在 Stackdriver 控制台中,但相应的标签(在本例中ansible)显示在标签列表中。只是结果是空的。

0 投票
1 回答
159 浏览

stackdriver - StackDriver - 每 1 分钟匹配超过 X 行的简单日志警报

非常简单的场景 StackDriver 日志记录警报场景。如果 1 分钟内 nginx 日志中有超过 100 条 404s 日志条目,请提醒我。我已经设置了日志过滤器,它可以正常工作,过滤 404 行。

而且我几乎可以让图表在仪表板中显示这一点,我猜这里的细微差别在于采样和分钟边界,没关系,足够好。

但是定义一个策略我不知道如何指定它,因为策略图回到 0.x/sec,这里不能指定采样周期或聚合。

0 投票
1 回答
228 浏览

google-bigquery - 将我项目中所有 BigQuery 加载作业的统计信息(日志)加载到 BigQuery 表

在 Apache Beam (Google Cloud Dataflow 2.0) 作业结束后,我们会在日志末尾获得一个现成的命令,该命令bq show -j --format=prettyjson --project_id=<My_Project_Id> 00005d2469488547749b5129ce3_0ca7fde2f9d59ad7182953e94de8aa83_00001-0可以从 Google Cloud SDK 命令提示符运行。

基本上它显示了所有信息,如作业开始时间、结束时间、不良记录数、插入记录数等。

我可以在 Cloud SDK 控制台上看到这些信息,但是这些信息存储在哪里?我检查了堆栈驱动程序日志,它有直到前一天的数据甚至不是 Cloud SDK 控制台上显示的完整信息。

如果我想导出这些信息并加载到 BigQuery 中,我在哪里可以得到它。

更新:这是可能的,我resource.type="bigquery_resource"在 Stackdriver 日志查看器中添加过滤器时找到了信息,但它显示时间戳信息,如 CreateTime、StartTime 和 EndTime1970-01-01T00:00:00Z

0 投票
0 回答
97 浏览

google-cloud-functions - 当 Stackdriver 提醒我时如何生成正在运行的 API?

我正在关注这个文档。我知道云函数向您的函数发出 HTTP 请求,请运行以下命令。 https://cloud.google.com/functions/docs/

我想运行一个在可能触发 Stackdriver 警报时预先创建的 API。我已经在 GCP 中定义了简单的基于日志的自定义指标。

例如,我创建了一个 Stackdriver 警报,检测到意外错误 GAE 日志。如果这提醒我,我希望系统关闭。

是否可以使用 StackDriver Alerting 和 Cloud 功能自动控制 API?如果你是我?

0 投票
0 回答
190 浏览

google-cloud-platform - 在 google stackdriver 上添加 500 个状态错误的通知

虽然这不是与代码相关的问题,但我想知道是否有办法将通知添加到谷歌云服务,更具体地说是 Stackdriver Trace 服务?

当有以 500 状态代码错误结尾的请求时,我不想添加通知。

有谁知道这是否可能?

0 投票
2 回答
2032 浏览

python - 使用 Python 从 Google Cloud Stackdriver API 检索日志名称列表

我正在使用 Google 的Stackdriver Logging Client Libraries for Python以编程方式检索日志条目,类似于使用gcloud beta logging read.

Stackdriver 还提供了一个 API 来检索日志名称列表,这很可能是gcloud beta logging logs list使用的。

如何将该 API 与 Python 客户端库一起使用?我在文档中找不到任何东西。

0 投票
1 回答
412 浏览

google-app-engine - 如何最准确地将 Google Cloud Platform 项目成本与 App Engine 活动相关联?

我支持基于 Google Cloud Platform 构建的数据管理解决方案。随着我们产品的成熟,越来越多的团队和个人正在采用它,这意味着越来越多的人正在存储和搜索数据并增加成本。我们需要更好地了解这些用户/工作流程中的每一个给我们带来了多少成本,以便我们最终可以开始向他们收取使用我们服务的费用。

我已经将运行我们的解决方案的 Google Cloud Platform 项目的计费数据导出到 BigQuery。我观察到,我们针对该项目的 Google Cloud Platform 账单的 70-80% 归功于 App Engine(作为产品),因此我目前专注于分摊 App Engine 成本。以下是该项目一天的 App Engine 费用的简明视图(来自 BigQuery):

问题 1:顺便说一下,对于熟悉 Google Cloud Platform 计费导出的任何人,输入start_time 2017-08-20 07:00:00 UTCend_time 2017-08-20 08:00:00 UTC反映 2017 年 8 月 20 日产生的费用,而不是 2017 年 8 月 19 日,对吗?

现在,我知道将这些 App Engine 成本与 App Engine 活动关联起来并不是一个精确的映射——Google Cloud Platform 不会按操作计费,并且会有固定的,我猜是共享的资源成本(请纠正我,如果我错了!)——但我仍然想得到一个合理的估计。我的第一次尝试涉及检查Google 记录的每个请求的估计成本。因此,我为 App Engine 请求日志创建了一个接收器,并等待数字滚入。但是,使用这种方法在给定日期的所有请求的总估计成本非常低:

产量

这仅占 App Engine 总成本的 1.5%!

问题 2:请求日志成本估算对应或有助于什么resource_type(来自 Google Cloud Platform 计费导出)?

我大约 95% 的 App Engine 成本归因于后端实例resource_type。我对它们是什么做了一些粗略的研究(包括这段视频,声称谷歌正在摆脱整个后端/前端实例的区别)。我假设(或可能已经读过)谷歌依赖任何秘密算法来启动、关闭和以其他方式管理这些实例。这样……</p>

问题 3(大问题):我如何才能了解单个用户/工作流操作(仅限于通过 App Engine 可以)对 Google Cloud 的总 App Engine 成本或最低 App Engine 后端实例成本的贡献程度项目?如果没有诸如根据用户活动回归成本和创建 ML 模型之类的东西,是否有可能?深入了解这个黑匣子(从扩展和定价的角度)是如何工作的,或者认为 App Engine 成本在某种程度上与用户活动直接相关的想法是否合理?

附加信息

  1. 我们的数据管理解决方案使用了自己的身份概念,我并不指望 Google 会神奇地弄清楚这一点。我目前可以request_log通过解析 Stackdriver 日志将项目链接到用户,我将计算出用户-工作流关联或从其他工具获取它们。

  2. 以防万一,开箱即用这些东西有什么可做的吗?一条 StackOverflow 评论提到了Potamus,但该存储库不再可用,而且几乎没有任何关于它开始做什么的信息。

  3. 如果 App Engine 成本分摊不是什么大问题,那么 Cloud Storage 等其他产品呢?这将是我的下一个目标,尽管此时将云存储成本(实际的、可能可以忽略不计的存储成本和更昂贵的 I/O 成本)与 App Engine 活动相关联的挑战似乎更不合理。