【问题标题】:How to get DynamoDB monitoring metrics to InfluxDB如何将 DynamoDB 监控指标获取到 InfluxDB
【发布时间】:2017-02-27 10:54:37
【问题描述】:

我正在构建一个监控管道,有没有人尝试在没有在 EC2/Lambda 中运行自定义代码的情况下将 DynamoDB 监控指标导入 InfluxDB。有没有插件可以解决这个问题?

如果你有什么好主意或者可以推荐一个插件,请与我分享。

【问题讨论】:

    标签: amazon-dynamodb influxdb grafana amazon-cloudwatch


    【解决方案1】:

    是的,您可以使用以下方法将 DynamoDB 矩阵从 AWS 拉到 InfluxDB Telegraf图书馆。

    Telegraf 是一个用 Go 编写的代理,用于收集、处理、 汇总和编写指标。

    注意:您不需要在 EC2/Lambda 中运行自定义代码。

    根据Issue Raised for : influxdata/telegraf

    以下是最终在 InfluxDB 中出现的指标:

    cloudwatch_aws_efs
    cloudwatch_aws_elastic_beanstalk
    cloudwatch_aws_elb
    cloudwatch_aws_lambda
    cloudwatch_aws_rds
    

    配置:

    [[inputs.cloudwatch]]
      role_arn = 'arn:aws:iam::MYACCOUNT:role/MYROLE'
      region = 'us-east-1'
      period = '1m'
      delay = '3m'
      interval = '3m'
      namespace = 'AWS/ApplicationELB'
      [inputs.cloudwatch.tags]
        aws_account = 'MYACCOUNT'
    
    [[inputs.cloudwatch]]
      role_arn = 'arn:aws:iam::MYACCOUNT:role/MYROLE'
      region = 'us-east-1'
      period = '1m'
      delay = '3m'
      interval = '3m'
      namespace = 'AWS/AutoScaling'
      [inputs.cloudwatch.tags]
        aws_account = 'MYACCOUNT'
    
    [[inputs.cloudwatch]]
      role_arn = 'arn:aws:iam::MYACCOUNT:role/MYROLE'
      region = 'us-east-1'
      period = '1m'
      delay = '3m'
      interval = '3m'
      namespace = 'AWS/DynamoDB'
      [inputs.cloudwatch.tags]
        aws_account = 'MYACCOUNT'
    
    [[inputs.cloudwatch]]
      role_arn = 'arn:aws:iam::MYACCOUNT:role/MYROLE'
      region = 'us-east-1'
      period = '1m'
      delay = '3m'
      interval = '3m'
      namespace = 'AWS/EC2'
      [[inputs.cloudwatch.metrics]]
        names = [ 'CPUCreditBalance', 'CPUCreditUsage', 'StatusCheckFailed', 'StatusCheckFailed_Instance',
    

    'StatusCheckFailed_System'] [inputs.cloudwatch.tags] aws_account = 'MYACCOUNT'

    [[inputs.cloudwatch]]
      role_arn = 'arn:aws:iam::MYACCOUNT:role/MYROLE'
      region = 'us-east-1'
      period = '1m'
      delay = '3m'
      interval = '3m'
      namespace = 'AWS/ElasticBeanstalk'
      [inputs.cloudwatch.tags]
        aws_account = 'MYACCOUNT'
    
    [[inputs.cloudwatch]]
      role_arn = 'arn:aws:iam::MYACCOUNT:role/MYROLE'
      region = 'us-east-1'
      period = '1m'
      delay = '3m'
      interval = '3m'
      namespace = 'AWS/EFS'
      [inputs.cloudwatch.tags]
        aws_account = 'MYACCOUNT'
    
    [[inputs.cloudwatch]]
      role_arn = 'arn:aws:iam::MYACCOUNT:role/MYROLE'
      region = 'us-east-1'
      period = '1m'
      delay = '3m'
      interval = '3m'
      namespace = 'AWS/ELB'
      [inputs.cloudwatch.tags]
        aws_account = 'MYACCOUNT'
    
    [[inputs.cloudwatch]]
      role_arn = 'arn:aws:iam::MYACCOUNT:role/MYROLE'
      region = 'us-east-1'
      period = '1m'
      delay = '3m'
      interval = '3m'
      namespace = 'AWS/ElasticMapReduce'
      [inputs.cloudwatch.tags]
        aws_account = 'MYACCOUNT'
    
    [[inputs.cloudwatch]]
      role_arn = 'arn:aws:iam::MYACCOUNT:role/MYROLE'
      region = 'us-east-1'
      period = '1m'
      delay = '3m'
      interval = '3m'
      namespace = 'AWS/Kinesis'
      [inputs.cloudwatch.tags]
        aws_account = 'MYACCOUNT'
    
    [[inputs.cloudwatch]]
      role_arn = 'arn:aws:iam::MYACCOUNT:role/MYROLE'
      region = 'us-east-1'
      period = '1m'
      delay = '3m'
      interval = '3m'
      namespace = 'AWS/Lambda'
      [inputs.cloudwatch.tags]
        aws_account = 'MYACCOUNT'
    
    [[inputs.cloudwatch]]
      role_arn = 'arn:aws:iam::MYACCOUNT:role/MYROLE'
      region = 'us-east-1'
      period = '1m'
      delay = '3m'
      interval = '3m'
      namespace = 'AWS/Redshift'
      [inputs.cloudwatch.tags]
        aws_account = 'MYACCOUNT'
    
    [[inputs.cloudwatch]]
      role_arn = 'arn:aws:iam::MYACCOUNT:role/MYROLE'
      region = 'us-east-1'
      period = '1m'
      delay = '3m'
      interval = '3m'
      namespace = 'AWS/RDS'
      [inputs.cloudwatch.tags]
        aws_account = 'MYACCOUNT'
    
    [[inputs.cloudwatch]]
      role_arn = 'arn:aws:iam::MYACCOUNT:role/MYROLE'
      region = 'us-east-1'
      period = '1m'
      delay = '3m'
      interval = '3m'
      namespace = 'AWS/SNS'
      [inputs.cloudwatch.tags]
        aws_account = 'MYACCOUNT'
    
    [[inputs.cloudwatch]]
      role_arn = 'arn:aws:iam::MYACCOUNT:role/MYROLE'
      region = 'us-east-1'
      period = '1m'
      delay = '3m'
      interval = '3m'
      namespace = 'AWS/SQS'
      [inputs.cloudwatch.tags]
        aws_account = 'MYACCOUNT'
    
    [[inputs.cloudwatch]]
      role_arn = 'arn:aws:iam::MYACCOUNT:role/MYROLE'
      region = 'us-east-1'
      period = '1m'
      delay = '60m'
      interval = '60m'
      namespace = 'AWS/S3'
      [inputs.cloudwatch.tags]
        aws_account = 'MYACCOUNT'
    

    另外,根据https://github.com/influxdata/telegraf/issues/1907#issuecomment-258270588

    AWS 账户中默认不启用 AutoScaling 指标。

    您是否为某些 ASG 启用了它们?

    关注: http://docs.aws.amazon.com/autoscaling/latest/userguide/as-instance-monitoring.html#as-enable-group-metrics

    如果您没有为任何 ASG 启用它们,则 cloudwatch 会返回一个空的可用于 AWS/AutoScaling 命名空间的指标列表。

    【讨论】:

    • @HusainKhambaty,你怎么看?它已经建立并已实施;)
    • @lok​​esh-raj-urs,这个答案是否帮助您解决了您的问题?
    • 然后必须试一试:)
    猜你喜欢
    • 2020-08-16
    • 1970-01-01
    • 2020-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多