AWS Elastic Beanstalk Java应用程序的默认CloudWatch日志位置

AWS Elastic Beanstalk Java应用程序的默认CloudWatch日志位置,java,amazon-web-services,amazon-elastic-beanstalk,amazon-cloudwatchlogs,Java,Amazon Web Services,Amazon Elastic Beanstalk,Amazon Cloudwatchlogs,我在AWS Elastic Beanstalk环境中部署了一个JAR文件,使用负载平衡器和最多2个EC2实例 我的环境似乎正在使用新的统一CloudWatch代理,而不是传统的CloudWatch日志代理 在控制台的环境配置中,我打开了“实例日志流到CloudWatch日志”,现在在CloudWatch日志中,我得到了以下组: /aws/elasticbeanstalk/myapp myenv/var/log/eb engine.log /aws/elasticbeanstalk/myapp

我在AWS Elastic Beanstalk环境中部署了一个JAR文件,使用负载平衡器和最多2个EC2实例

我的环境似乎正在使用新的统一CloudWatch代理,而不是传统的CloudWatch日志代理

在控制台的环境配置中,我打开了“实例日志流到CloudWatch日志”,现在在CloudWatch日志中,我得到了以下组:

  • /aws/elasticbeanstalk/myapp myenv/var/log/eb engine.log
  • /aws/elasticbeanstalk/myapp myenv/var/log/eb hooks.log
  • /aws/elasticbeanstalk/myapp myenv/var/log/nginx/access.log
  • /aws/elasticbeanstalk/myapp myenv/var/log/nginx/error.log
  • /aws/elasticbeanstalk/myapp myenv/var/log/web.stdout.log
这很好。值得注意的是,web服务器访问在
access.log
中,甚至我的JAR文件的STDOUT控制台输出也在
web.STDOUT.log
中。到目前为止还不错

现在让我们假设我希望我的JAR应用程序生成一个日志文件,并在CloudWatch日志中自动获取它。我已经阅读了说明我可以在我的应用程序中捆绑特殊的
.ebextensions
,以指示新的日志记录位置“[I]如果您的应用程序在不属于您环境平台默认配置的位置生成日志”

短期内,我不希望创建
.ebextensions
文件。关于“…位置…默认配置的一部分…”的部分引起了我的兴趣


Elastic Beanstalk Java平台日志是否有默认位置?换句话说,是否有一些默认位置,例如
/var/log/app/
,我可以简单地将应用程序日志记录到其中(例如,通过环境变量配置),并让新的统一代理自动获取它们,无需创建
.ebextensions
文件?(作为第二个最佳解决方案,是否有一种方法可以使用AWS控制台配置位置?

我不这么认为。您在问题中提到的日志文件已硬编码到配置文件
/opt/aws/amazon cloudwatch agent/etc/beanstalk.json

{
        "logs": {
                "logs_collected": {
                        "files": {
                                "collect_list": [
                                        {
                                                "file_path": "/var/log/eb-engine.log",
                                                "log_group_name": "/aws/elasticbeanstalk/A03cBeanstalkApplicationMybeanstalka-env/var/log/eb-engine.log",
                                                "log_stream_name": "{instance_id}"
                                        },
                                        {
                                                "file_path": "/var/log/eb-hooks.log",
                                                "log_group_name": "/aws/elasticbeanstalk/A03cBeanstalkApplicationMybeanstalka-env/var/log/eb-hooks.log",
                                                "log_stream_name": "{instance_id}"
                                        },
                                        {
                                                "file_path": "/var/log/nginx/access.log",
                                                "log_group_name": "/aws/elasticbeanstalk/A03cBeanstalkApplicationMybeanstalka-env/var/log/nginx/access.log",
                                                "log_stream_name": "{instance_id}"
                                        },
                                        {
                                                "file_path": "/var/log/nginx/error.log",
                                                "log_group_name": "/aws/elasticbeanstalk/A03cBeanstalkApplicationMybeanstalka-env/var/log/nginx/error.log",
                                                "log_stream_name": "{instance_id}"
                                        },
                                        {
                                                "file_path": "/var/log/web.stdout.log",
                                                "log_group_name": "/aws/elasticbeanstalk/A03cBeanstalkApplicationMybeanstalka-env/var/log/web.stdout.log",
                                                "log_stream_name": "{instance_id}"
                                        }
                                ]
                        }
                }
        }
}
没有任何添加额外日志文件的选项

在我看来,您必须通过
extensions
config文件自定义配置文件