我有一个AWS Elastic Beanstalk实例,在上面运行了一些cron。偶尔有问题
Environment health has transitioned from Ok to Severe. 4.5 % of the requests to the ELB are failing with HTTP 5xx (2 minutes ago)
我设置了警报以让我知道这一点,并且该部分正常工作。但是,如果环境健康状况不是“正常”或“警告”,我想阻止执行任务。有没有办法从运行在同一实例上的php脚本以编程方式获取运行状况状态代码(如下图所示,用红色圆圈圈出)?
答案 0 :(得分:0)
在这种情况下,我将使用CloudWatch警报来触发发送通知电子邮件。
首先要了解的是,Elastic Beanstalk是一种方便的工具,可以在AWS上引导基础架构。通过Elastic Beanstalk的cli或控制台设置的任何内容,都可以在EC2页面上进行几乎相同的操作。
答案 1 :(得分:0)
假设您的应用程序中有一个health
脚本,该脚本会定期对Bean进行ping操作,那么您应该能够确定您的应用程序是否正常运行。您不应该依赖于以编程方式从Benstalk获取状态。
例如,在您的health
脚本中,可以设置应用程序是否正常的标志。这样的标志可以是文件系统中被触摸文件的形式。或在缓存中某处使用标志(如果您使用的话)。例如:内存缓存。