如何使用Graphite监控AWS SQS - Grafana

问题描述 投票:0回答:1

我在AWS上托管了一堆微服务。我正在使用StatsD,Graphite和Grafana来监控它们。现在我想扩展它以监视这些微服务相互通信的队列(SQS)。我如何利用Graphite / Grafana来做到这一点?或者更好的方法,如果没有任何支持/插件相同。谢谢 :)

PS:如果它必须是Zipkin,请告诉我它们可以共存或者是否有使用多个示踪剂的问题。

monitoring grafana metrics graphite statsd
1个回答
0
投票

好的,所以我将根据你在这里说的话回答这个问题:

或者更好的方法,如果没有任何支持/插件相同。

我通过Prometheus,与cloudwatch_exporteralertmanager合作的方式。

用于监控SQS的cloudwatch_exporter的配置将类似于(这只是两个指标,您需要根据您要监控的内容添加更多指标):

tasks:
 - name: ec2_cloudwatch
   default_region: us-west-2
   metrics:
    - aws_namespace: "AWS/SQS"
      aws_dimensions: [QueueName]
      aws_metric_name: NumberOfMessagesReceived
      aws_statistics: [Sum]
      range_seconds: 600
    - aws_namespace: "AWS/SQS"
      aws_dimensions: [QueueName]
      aws_metric_name: ApproximateNumberOfMessagesDelayed
      aws_statistics: [Sum]

然后你需要配置prometheus以一定间隔刮掉cloudwatch_exporter端点,这是我所做的:

  - job_name: 'somename'
    scrape_timeout: 60s
    dns_sd_configs:
    - names:
        - "some-endpoint"
    metrics_path: /scrape
    params:
      task: [ec2_cloudwatch]
      region: [us-east-1]
    relabel_configs:
      - source_labels: [__param_task]
        target_label: task
      - source_labels: [__param_region]
        target_label: region

然后,您可以根据这些已删除的指标将alertmanager配置为警报;我没有提醒这些指标,所以我不能举个例子。但是,为了让您了解这种架构的方法,下图如下:

enter image description here

如果你需要使用像statsd这样的东西你可以使用statsd_exporter。而且,只是在你想知道的情况下,是的Grafana supports prometheus

© www.soinside.com 2019 - 2024. All rights reserved.