问题描述
TL:DR; 如何将 AWS Beanstalk 中环境变量的值获取到 filebeat.yml 文件配置中?
我有 3 个 Beanstalk 环境;开发、测试、分期。每个环境都有一个日志文件,格式为 brainwaves-*.log 。 * 随环境变化。
我正在其中之一中配置 FileBeat 7.8 版。我已经安装了 FileBeat,现在正在修改 /etc/filebeat/filebeat.yml 文件。我需要 FileBeat 从该环境的日志文件中获取输入:
filebeat.inputs:
- type: log
enabled: true
paths:
- /home/webapp/brainwaves-'${/opt/elasticbeanstalk/bin/get-config environment -k BRAINWAVES-ENV-TYPE}'.log
在这里,我需要做的是,获取名为 BRAINWAVES-ENV-TYPE(位于文件 /opt/elasticbeanstalk/bin/get-config)的环境变量的值,并使用该值来确定FileBeat 的输入路径。环境变量 BRAINWAVES-ENV-TYPE 已经由我自己设置,可以保存以下值之一:DEV、TEST、STAGING。因此,如果文件部署到 STAGING Beanstalk 环境中,则输入路径应如下所示:
/home/webapp/brainwaves-STAGING.log
这样 FileBeat 将从脑波-STAGING.log 文件中收集输入。
然而,这种配置使filebeat 服务失败。那么我应该对我的语法做哪些修改?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)