アーカイブの仕様

Garoonは、定期的(週単位)に、設定ファイル(common.ini)で設定しているログの保存期間より前のログが、データベースに保存されているかをチェックし、古いログがあれば、ログをアーカイブします。

アーカイブの仕様
  • ログの保存期間より前に出力されたログは、「アーカイブの設定」画面で設定した曜日と時刻に、「archive_log.csp」によってアーカイブ処理されます。アーカイブされたログはデータベースから削除されます。
    詳細は、アーカイブの設定を参照してください。
  • ログの量が多い場合は2個以上のアーカイブが作成されます。2個目以降のアーカイブには、アーカイブ名の末尾に、「_2」、「_3」などの連番が付与されます。
  • 1つのアーカイブに保存できるログの最大量は、アーカイブのファイル形式によって異なります。
    設定ファイルを変更すると、最大量の上限を変更できます。
    詳細は、1つのアーカイブに保存されるログの最大量を変更する方法を参照してください。
    • XLSX形式:
      最大量の上限は10万行です。初期設定は10万行です。
    • CSV(UTF-8)またはCSV(シフトJIS)形式:
      最大量の上限は50万行です。初期設定は10万行です。
archive_log.cspについて
  • archive_log.cspは、アーカイブ処理で使用されるコマンドです。次の制限があります。
    • 一度のアーカイブ処理で取得できるログは3週間分です。
    • 一度のアーカイブ処理で取得できるログの最大量は50万行です。この値は変更できません。
  • archive_log.cspは手動で実行することもできます。手動でコマンドを実行した場合、最大で50週間分の古いログをアーカイブできます。
    詳細は、ログをアーカイブする方法を参照してください。

アーカイブの作成例

作成例A

次の条件でアーカイブを作成した場合を例に説明します。

  • ファイル形式:XLSX
  • アーカイブの作成日時:日曜日0時00分
  • アーカイブ実行日時:2017/08/27 0:00
  • 基準日(アーカイブ実行日時の90日前):2017/5/29 0:00
  • 2017/05/22 0:00 - 2017/05/28 23:59:59の期間で出力されたログ:15万行

作成例Aを示した図

  • アーカイブ実行日時である2017/08/27 0:00から、90日前のログを検索し、1週間単位でアーカイブします。
  • ファイル形式がXLSXの場合、1つのアーカイブに最大10万行のログを保存できます。
  • 2017/05/22 0:00 – 2017/05/28 23:59:59までの1週間で出力されたログが15万行の場合、2つのアーカイブが作成されます。
作成例B
  • ファイル形式:CSV
  • アーカイブの作成日時:日曜日0時00分
  • アーカイブ実行日時:2017/08/27 0:00
  • 基準日(アーカイブ実行日時の90日前):2017/5/29 0:00
  • 2017/05/08 0:00 – 2017/05/28 23:59:59の期間で出力されたログ:
    • 2017/05/08 0:00 – 2017/05/14 23:59:59の期間:5万行
    • 2017/05/15 0:00 – 2017/05/21 23:59:59の期間:60万行
    • 2017/05/22 0:00 – 2017/05/28 23:59:59の期間:15万行

作成例Bを示した図

  • アーカイブ実行日時である2017/08/27 0:00から、90日前のログを検索し、1週間単位でアーカイブします。
  • ファイル形式がCSV、かつ、初期設定のままの場合、1つのアーカイブに最大10万行のログを保存できます。
  • 2017/05/08 0:00以降のログがアーカイブされずに残り、2017/05/08 0:00 – 2017/05/14 23:59:59の期間に出力されたログが5万行である場合、この期間のログは1つのアーカイブに保存されます。
  • 2017/05/15 0:00 – 2017/05/21 23:59:59の期間に出力されたログが60万行の場合、この期間のログは5つのアーカイブに保存されます。
    ただし、一度のアーカイブ処理で取得できるログの最大量は50万行という制限があります。
    2017/05/08 0:00 – 2017/05/14 23:59:59の期間で5万行のログを取得済みのため、2017/05/15 0:00 – 2017/05/21 23:59:59の期間で取得可能なログは45万行分です。
  • 2017/05/15 0:00 – 2017/05/21 23:59:59の期間で取得できなかった15万行と、2017/05/22 0:00 – 2017/05/28 23:59:59の期間に出力されたログは、2017/08/27 0:00の定期実行ではアーカイブされません。

バージョン 3.7.0より前のGaroonで出力された古いログの扱い

バージョン 3.7.0以降のGaroonでは、ログを定期的(週単位)にアーカイブしますが、バージョン 3.7.0より前のGaroonでは、定期的にアーカイブする機能がありません。
そのため、バージョン 3.7.0より前のGaroonから、バージョン 3.7.0以降のGaroonにバージョンアップすると、3.7.0より前のGaroonに保存されていたログをすべてアーカイブしようとします。この作業は古いログがなくなるまで毎週継続されます。
次の条件で、バージョンアップした場合を例に説明します。

  • ファイル形式:CSV
  • Garoon 4にバージョンアップした日:2017/8/20
  • アーカイブの作成日時:日曜日0時00分
  • 保存されている最も古いログの日時:2017/04/02 9:00

バージョンアップ後の定期実行でアーカイブされるログの範囲は、次のとおりです。

バージョンアップ後の定期実行でアーカイブされるログの範囲を示した図

  • アーカイブの実行日時:2017/8/27 0:00

  • 基準日(実行日時の90日前):2017/5/29 0:00

    アーカイブされるログの範囲 アーカイブ名
    2017/04/02 9:00 - 2017/04/08 23:59:59 log20170408.csv
    2017/04/09 0:00 - 2017/04/15 23:59:59 log20170415.csv
    2017/04/16 0:00 - 2017/04/22 23:59:59 log20170422.csv
  • アーカイブの実行日時:2017/09/03 0:00

  • 基準日(実行日時の90日前):2017/06/05 0:00

    アーカイブされるログの範囲 アーカイブ名
    2017/04/23 0:00 - 2017/04/29 23:59:59 log20170429.csv
    2017/04/30 0:00 - 2017/05/06 23:59:59 log20170506.csv
    2017/05/07 0:00 - 2017/05/13 23:59:59 log20170513.csv
  • アーカイブの実行日時:2017/09/10 0:00

  • 基準日(実行日時の90日前):2017/06/12 0:00

    アーカイブされるログの範囲 アーカイブ名
    2017/05/14 0:00 - 2017/05/20 23:59:59 log20170520.csv
    2017/05/21 0:00 - 2017/05/27 23:59:59 log20170527.csv
    2017/05/28 0:00 - 2017/06/03 23:59:59 log20170603.csv