首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从监控接口获取指标样本

如何从监控接口获取指标样本
EN

Stack Overflow用户
提问于 2020-05-02 05:04:11
回答 1查看 332关注 0票数 2

我非常仔细地看了一下monitoring API。据我所知,可以使用gcloud创建监控策略和编辑策略( Using Aleert API)。

然而,从一方面来看,gcloud似乎只能创建和编辑策略选项,而不能读取这些策略的结果。从这个页面我读到了这个选项:

代码语言:javascript
复制
Creating new policies
Deleting existing policies
Retrieving specific policies
Retrieving all policies
Modifying existing policies

另一方面,我从result of a failed request上读到

代码语言:javascript
复制
Summary of the result of a failed request to write data to a time series.

所以它在我的脑海中敲响了警钟,我确实可以得到一个结果列表,比如在一段时间内所有失败的写入请求。但是怎么做呢?

我直截了当的问题是:我能以某种方式监听警报事件或获得抛出Monitoring API v3的警报结果列表吗?

我看到tag_firestore_instance在某种程度上与firestore有关,但是如何使用它以及我可以搜索哪些信息?我到处都找不到怎么用它。也许像常见的get一样(例如,Postman/curl)或来自gcloud shell。

附言:这个问题最初是在Google Group上发布的,但我被邀请在这里提问。

*根据Alex的建议编辑

我有一个从Firestore数据库监听文档的角度页面

代码语言:javascript
复制
export class AppComponent {
  public transfers: Observable<any[]>;

  transferCollectionRef: AngularFirestoreCollection<any>;

  constructor(public auth: AngularFireAuth, public db: AngularFirestore) {
    this.listenSingleTransferWithToken();
  }

  async listenSingleTransferWithToken() {
    await this.auth.signInWithCustomToken("eyJ ... CVg");
    this.transferCollectionRef = this.db.collection<any>('transfer', ref => ref.where("id", "==", "1"));
    this.transfers = this.transferCollectionRef.snapshotChanges().map(actions => {
      return actions.map(action => {
        const data = action.payload.doc.data();
        const id = action.payload.doc.id;
        return { id, ...data };
      });
    });
  }
}

所以,我知道至少有一个读者计数要返回

代码语言:javascript
复制
name: projects/firetestjimis
filter: metric.type = "firestore.googleapis.com/document/read_count"
interval.endTime: 2020-05-07T15:09:17Z

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-06 06:28:34

听懂你说的话有点困难,但这是我想出来的。

以下是可用Firestore指标的列表:https://cloud.google.com/monitoring/api/metrics_gcp#gcp-firestore

然后,您可以将这些指标类型传递给此https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list接口

在该页面上,我使用了右侧的"Try This API“工具,并填写了以下内容

name = projects/MY-PROJECT-ID

filter = metric.type = "firestore.googleapis.com/api/request_count"

interval.endTime = 2020-05-05T15:01:23.045123456Z

在chrome的检查器中,我可以看到这是该工具发出的GET请求:https://content-monitoring.googleapis.com/v3/projects/MY-PROJECT-ID/timeSeries?filter=metric.type%20%3D%20%22firestore.googleapis.com%2Fapi%2Frequest_count%22&interval.endTime=2020-05-05T15%3A01%3A23.045123456Z&key=API-KEY-GOES-HERE

编辑:上面返回200,但json有效负载为空。我们还需要添加以下条目以获取要填充的数据

interval.startTime = 2020-05-04T15:01:23.045123456Z

也可以尝试访问console.cloud.google.com/monitoring/metrics-explorer,在“查找资源类型和指标”框中输入firestore,看看谷歌自己的仪表板是否有数据填充。(这是为了确认确实有数据需要您获取)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61550776

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档