s_tajima:TechBlog

渋谷で働くインフラエンジニアのTechブログです。

ElasticSearchのIndexをローテートするスクリプト作成

Kibana3でログを解析する環境を構築する際、
ElasticSearch上にいつまでもログを残しておけないので定期的にIndexを削除するスクリプトを作成。

仕様としては以下のような感じ。

  • ElasitcSearch上にあるIndex名を最初に取得
  • [PREFIX]-[YYYY].[MM] もしくは [PREFIX]-[YYYY].[MM].[DD]というフォーマットのIndexを対象とする
  • 対象のIndexのうち、expire_days以上の日数が経過([PREFIX]-[YYYY].[MM]の場合は月末からの経過日数を計算)している場合はIndexを削除


Remove old indices on ElasticSearch