使用 cloudwatch 判断 linux 服务是否正在运行 [英] Use cloudwatch to determine if linux service is running
本文介绍了使用 cloudwatch 判断 linux 服务是否正在运行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
假设我有一个带有服务 /etc/init/my_service.conf
和内容的 ec2 实例
Suppose I have an ec2 instance with service /etc/init/my_service.conf
with contents
script
exec my_exec
end script
我如何监控该 ec2 实例,以便在 my_service
停止运行时我可以对其采取行动?
How can I monitor that ec2 instance such that if my_service
stopped running I can act on it?
推荐答案
您可以将自定义指标以心跳"的形式发布到 CloudWatch.
You can publish a custom metric to CloudWatch in the form of a "heart beat".
- 在您的服务器上通过 cron 运行一个小脚本,检查进程列表以查看 my_service 是否正在运行,如果正在运行,请执行对 CloudWatch 的
put-metric-data
调用. - 该指标可能就像将数字1"推送到 CloudWatch 中的自定义指标一样简单.
- 设置一个 CloudWatch 警报,当指标的平均值低于 1 时触发该警报
- 使闹钟的时间段 >= cron 运行的时间段,例如cron 每 5 分钟运行一次,如果在两个 5 分钟的时间段内看到平均值低于 1,则发出警报.
- 确保您还处理未发布指标的情况(例如,cron 无法运行或整机死机).如果缺少指标,您可能希望设置警报.(请参阅此处:AWS Cloudwatch 心跳警报)
- 请注意,自定义指标会给您的 AWS 账单增加 50c 的额外成本(对于一个指标来说没什么大不了的 - 但如果您想推送成百上千的指标,等式会发生巨大变化 - 即很高兴知道它是不像人们期望的那样免费)
请参阅此处了解如何发布自定义指标:http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/publishingMetrics.html
See here for how to publish a custom metric: http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/publishingMetrics.html
这篇关于使用 cloudwatch 判断 linux 服务是否正在运行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文