Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google cloud platform 计算指定时间内GCP日志项的数量_Google Cloud Platform_Google Bigquery_Stackdriver_Google Cloud Console - Fatal编程技术网

Google cloud platform 计算指定时间内GCP日志项的数量

Google cloud platform 计算指定时间内GCP日志项的数量,google-cloud-platform,google-bigquery,stackdriver,google-cloud-console,Google Cloud Platform,Google Bigquery,Stackdriver,Google Cloud Console,是否可以从GCP Stackdriver日志记录中计算特定时间段内特定日志消息的出现次数?为了回答“在这段时间内,这一事件发生了多少次”的问题,基本上我想要下图中曲线的积分 它不必是一个移动的窗口,这次它更像是一个一次性任务。如果可用,高级日志查询上的计数聚合器或类似工具也可以工作 查询如下所示: (resource.type="container" logName="projects/xyz-142842/logs/drs" "Publish Message for updated enti

是否可以从GCP Stackdriver日志记录中计算特定时间段内特定日志消息的出现次数?为了回答“在这段时间内,这一事件发生了多少次”的问题,基本上我想要下图中曲线的积分

它不必是一个移动的窗口,这次它更像是一个一次性任务。如果可用,高级日志查询上的计数聚合器或类似工具也可以工作

查询如下所示:

(resource.type="container"
logName="projects/xyz-142842/logs/drs"
"Publish Message for updated entity"
) AND (timestamp>="2018-04-25T06:20:53Z" timestamp<="2018-04-26T06:20:53Z")
(resource.type=“container”
logName=“项目/xyz-142842/logs/drs”
“发布已更新实体的消息”

)(timestamp>=“2018-04-25T06:20:53Z”timestamp有多种方法可以做到这一点,我看到的两种方法确实有效,并且适用于您的情况,如下所示:

  • 例如,他们可以记录包含特定错误消息的日志条目的数量,也可以提取日志条目中报告的延迟信息

    基于Stackdriver日志的度量可以是两种度量类型之一:计数器或分布。[…]计数器度量统计与高级日志筛选器匹配的日志条目数。[…]分布度量从与筛选器匹配的日志条目中累积数字数据

    我建议您仔细阅读文档,检查此功能是否完全涵盖您的用例

  • 您可以,一旦有了它们,您就可以使用经典工具,如
    groupby
    select
    ,以及BigQuery提供的所有工具

    关于如何导出日志以及如何使用BigQuery分析审核日志,您可以找到一个非常简单的分步指南,但我相信您可以在线找到许多资源


产品和方法确实不同,我想说BigQuery更灵活,但配置和正确使用它也更复杂。如果你找到第三种更好的方法,请用这些信息更新你的问题。

还有一个选项。 您可以使用Stackdriver Monitoring API()读取自定义度量,并在脚本中使用所需的任何聚合进行处理

如果您正在使用python—您可以查看gcloud python库
这将是一个非常简单的脚本,您可以将计算结果流式传输到bigquery表中,并在仪表板中使用它

有了正确的缩放级别,我就可以很容易地总结出出现的次数。直接从图形(积分)中获取计数本来是一个不错的功能,但现在可以这样做了


我用更多信息更新了问题。我确实使用了基于日志的计数器类型的度量,并在仪表板上用聚合和显示它,它确实计数,但每秒计数。我需要一个更大时间量的整数。我将尝试大查询选项!因为导出到BigQuery是一个连续操作,所以它实际上不需要这个场景更像是我们发现了一个错误,然后问这样一个问题:“这个周末发生了多少次?”。您可以使用总和对齐器对一个对齐周期内的计数进行时间总和。这是否需要我的代码不仅记录数据,而且还从代码中发送Stackdriver度量?我主要是寻找一种方法来计算特定时间段内的日志项数,在不从y代码发送特定度量的情况下获取数据。请记住如果你认为谷歌产品应该引入新功能,你总是可以提出新功能请求:如果你感兴趣,你可以直接做,或者如果你愿意更准确地表达你感兴趣的内容,我可以代表你发布。(我为谷歌云平台支持部工作)谢谢!我认为本质上是从云控制台的logs视图中计算特定过滤器(特定时间段)的点击数!然后这可以在将来通过度量、警报等进行扩展,但第一步功能请求肯定是一个计数(*)日志聚合器。可能只是GUI中的一个输出,其中包含所选时间段的点击数和使用的过滤器。我很乐意指定更多需要的内容,但我现在想不出更好的描述。很抱歉,我阅读了功能的描述,但我仍然不完全理解。我建议您u创建它,使用一个小示例以使其更清晰,但是如果不清楚,团队很可能会与您联系,以获得更多详细信息以决定是否值得添加。使用基于日志的度量时,不要在筛选器中添加时间戳限制,因为基于日志的度量会计算日志条目或在创建后及时返回。@SummitRaj感谢您的评论。我不知道它在创建后开始计数!