EC2自建mongostat数据可视化

(1)ec2自建的mongo,把mongostat数据实时输出到cloudwatch,并且做成条形图,方便查看。

首先在装有mongo的ec2机器上安装awslogs,参考,然后根据提示设置采集相关配置。

然后把mongostat数据传到cloudwatch,类似于:

mongostat --host xxxxx:28017 --username root --password xxxx --authenticationDatabase admin --json > /var/log/mongostat.json &

 也可以直接做成系统进程,cloudwatch日志输出为json格式的数据。  

(2)在cloudwatch上写表达式,比如我的:

parse @message /delete\":\"\D*(?<delete_c>[0-9\.%]*).*dirty\":\"\D*(?<dirty_c>[0-9\.%k]*).*flushes\":\"\D*(?<flushes_c>[0-9\.%]*).*insert\":\"\D*(?<insert_c>[0-9\.%]*).*query\":\"\D*(?<query_c>[0-9\.%]*).*time\":\"\D*(?<time>[0-9\.%:]*).*update\":\"\D*(?<update_c>[0-9\.%]*)/
|sort time desc|display time,query_c,insert_c,update_c,delete_c,flushes_c  

(3)做成的条形图稍微要修改下表达式,例如:

fields @timestamp|parse @message /delete\":\"\D*(?<delete_c>[0-9\.%]*).*dirty\":\"\D*(?<dirty_c>[0-9\.%k]*).*flushes\":\"\D*(?<flushes_c>[0-9\.%]*).*insert\":\"\D*(?<insert_c>[0-9\.%]*).*query\":\"\D*(?<query_c>[0-9\.%]*).*time\":\"\D*(?<time>[0-9\.%:]*).*update\":\"\D*(?<update_c>[0-9\.%]*)/
|display flushes_c,delete_c,insert_c,query_c,update_c
|stats sum(insert_c),sum(delete_c),sum(query_c),sum(update_c) by bin(1min)

 最后显示效果为:

  

posted @ 2021-01-05 22:14  5sdba  阅读(96)  评论(0编辑  收藏  举报