Hes*_*oon 5 amazon-web-services amazon-beanstalk docker
目前使用 Amazon Web 服务,我在 Elastic Beanstalk(具有绿色集群健康状况)上成功部署了多个应用程序作为 Docker 容器。
然而,当我尝试使用控制台获取日志时出现了问题;当我执行“请求日志”时,没有找到日志。当我在请求日志后返回仪表板时,出现了一个新事件/错误:
[实例:i-123456789] 命令在实例上失败。返回代码:1 输出:bundleLogs.py --conf-path '/opt/elasticbeanstalk/tasks/bundlelogs.d/*' --location-prefix 'resources/environments/logs/bundle/' 无法在任何地方执行方法 publish_contents_from_filename的目标对象。有关更多详细信息,请使用控制台或 EB CLI 检查 /var/log/eb-activity.log。
为了解决这个问题,我通过 SSH 连接到我的集群并使用以下命令在我的 Docker 容器中查找日志:
sudo docker exec myinstance cat /var/log/logstash_activity.log
Run Code Online (Sandbox Code Playgroud)
我的日志按预期找到。
为了了解有关该错误的更多信息,我查看了 /var/log/eb-activity.log 并发现了以下几行:
[2015-07-06T12:54:30.137Z] INFO [26993] - [CMD-BundleLogs] : Starting activity...
[2015-07-06T12:54:30.363Z] INFO [26993] - [CMD-BundleLogs/AddonsBefore] : Starting activity...
[2015-07-06T12:54:30.363Z] INFO [26993] - [CMD-BundleLogs/AddonsBefore] : Completed activity.
[2015-07-06T12:54:30.363Z] INFO [26993] - [CMD-BundleLogs/BundleLogs] : Starting activity...
[2015-07-06T12:54:30.364Z] INFO [26993] - [CMD-BundleLogs/BundleLogs/BundleLogs] : Starting activity...
[2015-07-06T12:54:30.627Z] INFO [26993] - [CMD-BundleLogs/BundleLogs/BundleLogs] : Activity execution failed, because: bundleLogs.py --conf-path '/opt/elasticbeanstalk/tasks/bundlelogs.d/*' --location-prefix 'resources/environments/logs/bundle/'
Unable to execute method publish_contents_from_filename on any of the target objects (Executor::NonZeroExitStatus)
[2015-07-06T12:54:30.627Z] INFO [26993] - [CMD-BundleLogs/BundleLogs/BundleLogs] : Activity failed.
[2015-07-06T12:54:30.627Z] INFO [26993] - [CMD-BundleLogs/BundleLogs] : Activity failed.
[2015-07-06T12:54:30.627Z] INFO [26993] - [CMD-BundleLogs] : Completed activity. Result:
Command CMD-BundleLogs failed.
Run Code Online (Sandbox Code Playgroud)
但是,错误消息对我没有多大帮助。
在我的 Dockerrun.aws.json 的“日志记录”字段中,我提供了路径“/var/log”,因为它是包含我的应用程序日志等的文件夹。我还尝试了值“/var/log/logstash_activity.log”但没有成功。
为什么 Beanstalk 控制台找不到我的应用程序的日志?
小智 1
老问题,但我只是为我们的应用程序想到了这一点。您使用什么用户策略?如果您使用的是ReadOnly,默认策略 \xe2\x80\x9c AWSElasticBeanstalkReadOnlyAccess \xe2\x80\x9d 不包括日志下载功能。在 aws 文档中,有一个 IAM 策略示例,可以为用户创建该策略以启用此功能。
\n\n请参阅\xe2\x80\x9c 创建自定义用户策略\xe2\x80\x9d 下的http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/AWSHowTo.iam.management-policies.html 。最后一个示例显示了除了 ReadOnlyAccess 策略中已提供的权限之外还需要授予所需的 S3 权限,以便捆绑和下载日志。
\n| 归档时间: |
|
| 查看次数: |
1659 次 |
| 最近记录: |