.bash_profileに設定した環境変数がデーモン(td-agent)に反映されません。
具体的には、td-agentの設定ファイルtd-agent.confで.bash_profileに記述した環境変数が利用できません。
.bash_profile
bash
1export Test=test
td-agent.conf
<record> test "#{ENV['TEST']}" </record>
"test test"となるかと思いましたが"test"のみが表示されます。
- td-agentのバージョンは0.12.31
- td-agentはrootユーザで実行
- .bash_profileは/rootディレクトリに配置
なお、/etc/init.d/td-agentの起動スクリプトに直接環境変数を設定したらちゃんと読み込まれましたが
いちいち必要な環境変数を全て起動スクリプトで設定し直すのは良い方法とは思えません。
子プロセスは親プロセスの環境変数を引き継ぐとどこかで聞いた覚えがあるのですが、そうであればなぜ.bash_profileに記述した環境変数がtd-agentに設定されていないのか分かりません。
いまいち環境変数の設定と取得の概要が理解できません。
どなたかなぜ.bash_profileで設定した環境変数がtd-agentに反映されないのかその他環境変数のプロセス間の引き継ぎについて教えていただけると助かります。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/05/22 06:41