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)
最后显示效果为:
业余经济爱好者