问题标签 [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.
logging - 将 fluentd 切换到 Stackdriver 日志记录 API v2
我们有一个在 Google Cloud Platform 上运行 Ubuntu 的 Google Compute Engine 网络服务器,它将日志发送到 Stackdriver Logging API “v1beta”
我们收到了来自 Google Cloud Platform 的关于 Stackdriver Logging API v1beta3 弃用的电子邮件,提醒我们我们的“项目”仍在访问 v1 API,并建议我们切换到 v2 API。电子邮件建议升级 Stackdriver Logging Agent (fluentd),我已经这样做了。
如果我尝试从该服务器上的命令行发送日志项:
metadata.projectId
它仍然以 v1 API 格式(带有、metaData.serviceName
等)出现在 Stackdriver Log 中
如何配置 fluentd 以使用 v2 API 而不是已弃用的 v1 API?我必须更新此服务器上应用程序中的所有日志记录集成,但我看不到在何处或如何让日志记录代理使用新 API。
google-app-engine - 在 GCS 中存储 Google App Engine 标准日志时,_A0 和 _S0 日志文件有什么区别
我已打开开关以将 GAE 标准应用程序的日志发送到 GCS 存储桶。我按预期看到每天都有一个文件夹。对于每一天的每一个小时,我都会看到一个非常大的 json 文件,扩展名为 _S0.json。几个小时后,我还看到一个小得多的文件,扩展名为 _A0:.json。例如:
01:00:00_01:59:59_S0.json & 01:00:00_01:59:59_A0:4679580000.json
有什么区别,我正在尝试对文件进行后期处理并且需要知道。
java - 如何在 Play Framework 1.4 上设置 Stackdriver 错误报告
我正在 Heroku 上运行 Play Framework 1.4 应用程序。我的目标是捕获生产应用程序中的任何 Java 异常,并将其报告给Stackdriver Error Reporting以进行自动异常监控和警报。
javascript - 将浏览器 JavaScript 错误发送到 Stackdriver 错误报告
我有一个客户端 JavaScript 应用程序,我想向 Stackdriver Error Reporting 报告错误和异常。
google-app-engine - 在 Stackdriver 中,如何编辑资源数量?
最近,Google 开始对 stackdriver 服务收费。每个资源 8 美元,我只想选择单一服务。但是在我选择的项目中它有 4 个资源,如果我选择单个项目,它会占用所有 4 个资源,我不需要。它会向我收取更多费用。
他们是否有任何配置更改,我可以在哪里更改以仅选择所需的资源?
谢谢
java - 如何使用 java 在 Google App Engine 中编写自定义日志?
有没有办法以编程方式将自定义日志条目从我的 App Engine 应用程序(在标准环境中运行)写入 Stackdriver Logging 上的“自定义日志”?
我可以使用 gcloud 命令行工具编写自定义日志:
我想在我的应用程序中使用标准的 java 记录器做同样的事情。我的应用引擎应用程序将所有日志写入“request_log”下,其中包含我不需要的请求中的大量数据。
在我的应用程序中,我正在使用这样的 java 记录器:
但是,使用此选项,我只能编写带有字符串消息的日志。我想使用自定义有效负载(JSON)生成日志。
谢谢。
google-cloud-platform - Google Stackdriver 中基于日志的指标如何定价?
我正在评估应用程序日志记录解决方案,但我不清楚堆栈驱动程序的定价。
现在,我的日志记录是node.js apps
-> fluentd server
-> 托管elasticsearch
->kibana
在我的应用程序中,我记录事件json
,键入一个eventType
字段,例如,
然后,在 中,对这些事件进行过滤/计数/等Kibana
是一件小事。queries
并构建仪表板。总而言之,我目前正在为仪表板计算大约 30 个不同的事件。
我正在尝试将其转换为stackdriver
的定价模型。根据他们当前的定价页面(斜体重点 是我的):
基本层:每个时间序列/月 0.10 美元,每个指标描述符/月 1.00 美元。
要了解分配和超额费用,您必须了解 Stackdriver 如何使用指标描述符和时间序列:
度量描述符定义度量类型和用于参数化度量的任何关联标签。单个度量描述符可以负责任意数量的时间序列。例如,来自所有 VM 实例的时间序列数据只需要一个描述符。
时间序列包含度量类型、受监控资源(如 VM 实例或数据库)以及度量定义的任何标签的值的组合的时间戳数据。时间序列中的数据点在其保留期结束时到期。基于日志的指标是由 Stackdriver Logging 创建的自定义指标描述符。它计算与过滤器匹配的日志条目数。
例如,假设您有 180 个 VM 实例,并且您希望每分钟为每个实例编写一个自定义度量。您定义一个自定义指标描述符 custom.googleapis.com/my_measurement。在每个 VM 实例上,您每分钟向该指标写入一个数据点,同时指定指标的名称和 VM 实例的名称。这将为每个 VM 实例创建一个单独的时间序列。在高级层中,您在 180 个收费资源中的每一个中使用了一个时间序列(共 500 个),并在您的项目中使用了一个指标描述符(共 250 个)。在基本层中,此自定义数据的超额成本为每月 19.00 美元:指标描述符为 1.00 美元,180 时间序列为 18.00 美元。如果您停止将数据写入指标,所有时间序列最终都会过期,并且您需要为描述符支付每月 1.00 美元的费用,您可以将其删除。
该示例处理虚拟机,因此很难应用于我的用例。我能想到两种可能的解释:
- 我计算的每个
eventType
成本为 1.10 美元/月(描述符为 1 美元,结果时间序列为 0.10 美元)。因此,30 个事件 = 33.00 美元/月 - 每个
eventType
I 计数都被视为一个单独的time series
,导致 1 美元/月,每个 0.10 *descriptor
30 美元eventType
。time-series
鉴于 VM 示例(即,1 个“描述符”和 180 个“系列”,每个 VM 1 个),数字 2 似乎是一个合理的解释,但我知道我的阅读可能只是乐观。
google-cloud-platform - StackDriver 是否支持 Syslog 协议?
StackDriver 是否支持 Syslog 协议?如果是这样,有人可以分享一个例子吗?
对于上下文,我希望使用 Syslog 协议将日志记录条目写入 StackDriver。我已经查看了文档,但没有办法这样做。因此,到目前为止,关闭方法似乎是使用 StackDriver 代理。但是,我想利用 API 网关,例如 Apigee,它们通过Message Logging Policy支持 Syslog 协议。
我知道可以利用 REST API 来发送这些条目。但是,我试图避免创建额外的 HTTP 层。
任何帮助表示赞赏。提前致谢!
json - 格式 json 在 google-fluend 中不起作用
背景
大家好,我正在从 EC2 实例收集日志并将其发送到 StackDriver。我的所有日志都是 JSON 格式。
我正在使用 google-fluend 代理,这是实现此目的的配置文件..
问题:
json 格式不起作用,当我使用它时,日志停止进入输入文件(/var/log/xyz/access.log)以及堆栈驱动程序。
任何想法如何解决这个问题。
trace - Adding Service and Version to custom stackdriver trace api
I am using https://github.com/GoogleCloudPlatform/google-cloud-go/tree/master/trace to send custom traces to Stackdriver Trace from GCP. All these traces end up without a service or version. How do you add that information using the trace api ?
Is there a way to add the serviceContext in trace.NewClient
or the span ?
EDIT : The first answer helps but the Stackdriver UI does not show these unless they are GAE( or internal apps). Mine is a standlone Go app.