私は、弾力のあるbeanstalk上でscalaアプリケーションを実行しており、回転されていないコンテナ・ログがサーバーに過剰充填されています。 beanstalkのデフォルトスキームは、/var/log/eb-docker/containers/eb-current-app/*
フォルダ内のドッカーログを回転させますが、追加のログは/var/lib/docker/containers/<container-id>/*
に蓄積され、回転していないため、ディスクは非常に高速にいっぱいになります。AWS beanstalk環境がドッキング・コンテナ・ログを回転していません
私は別のログローテーションを手動で/etc/logrotate.elasticbeanstalk.hourly/logrotate.elasticbeanstalk.applogs.conf
に追加することでこの問題を解決しようとしましたが、これで問題は解決しました。
ただし、すべてのインスタンスで変更を実装しようとすると、.ebextension設定ファイルを使用してBeanStalkが起動され、変更されたログローテーションファイルがサーバーに表示されません。ここで
は私の.configファイルである -
files:
"/etc/logrotate.elasticbeanstalk.hourly/logrotate.elasticbeanstalk.applogs.conf":
mode: "000644"
content: |
/var/log/eb-docker/containers/eb-current-app/* {
size 10M
rotate 5
missingok
compress
notifempty
copytruncate
dateext
dateformat %s
olddir /var/log/eb-docker/containers/eb-current-app/rotated
}
/var/lib/docker/containers/*/*.log {
size 10M
rotate 5
missingok
compress
notifempty
copytruncate
dateext
dateformat %s
olddir /var/log/eb-docker/containers/eb-current-app/rotated
}
また、私は、このredditの記事で発見した設定ファイルの最も単純な形式を使用しようとした - https://www.reddit.com/r/aws/comments/2u3afj/elastic_beanstalk_issues_with_ebextensions/を、それはまた、任意の効果を持つことができませんでした私の起動したインスタンスで。
私の設定が環境に影響を与えない理由についての助言は非常に高く評価されるでしょう。
logrotate設定を試してデバッグしましたか? http://superuser.com/a/255970/141またはhttp://serverfault.com/a/58403/783 – VonC
私のlogrotate設定は正常に動作しています。私は手動でサーバに追加します。問題は事前設定しています.ebextensionsを使用するインスタンス。 –
あなたの '.ebextensions'に'/etc/logrotate.d/logrotate.elasticbeanstalk.applogs.conf'のパスを入れてみることができますか? https://sandro-keil.de/blog/2015/03/11/logrotate-for-docker-container/ – VonC