AWS-Elastic-BeanstalkでJava 7 with Tomcat 7 version 1.4.1 と Java 7 with Tomcat 7 version 2.0.8 両方に対応した形でlogrotateの設定を書き換える方法

@iwasaki 27views 更新:2016年3月25日

Java 7 with Tomcat 7 version 1.4.4 でlogrotateのパスが変わった宣言がされています。

https://aws.amazon.com/releasenotes/AWS-Elastic-Beanstalk/5819471886940272

Log rotation configuration files have been moved from /etc/logrotate.d to /etc/logrotate.elasticbeanstalk.hourly to prevent chron from running the files both daily and hourly (BEANSTALK-5013).

デプロイするアプリケーション内の設定と環境の設定の組み合わせによってはお互いに影響しあってアップデートができなくなる場合があります。

両方に対応した形で書く場合は以下のようにすればよさそうです。

commands:
  update-logrotate-tomcat7:
    command: |
      if [ -f /etc/logrotate.elasticbeanstalk.hourly/logrotate.elasticbeanstalk.tomcat7.conf ]; then
        sed -i -e "s|^size .*|size 1|g" /etc/logrotate.elasticbeanstalk.hourly/logrotate.elasticbeanstalk.tomcat7.conf
      fi
      if [ -f /etc/logrotate.d/logrotate.elasticbeanstalk.tomcat7.conf ]; then
        sed -i -e "s|^size .*|size 1|g" /etc/logrotate.d/logrotate.elasticbeanstalk.tomcat7.conf
      fi

なおTomcat Platform Historyは以下にまとまっっています。

http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/platform-history-java.html

ログイン / 新規登録してコメントする

このソースコードをストックして後で利用したり、作業に利用したソースコードをまとめることができます。

こちらもお役に立つかもしれません