はじめに
vertica.logはLinuxのlogrotateにより、ログのローテートが行われます。
デフォルトでは1日1回ログファイルのサイズがチェックされ、10MBを超えている場合はローテートされます。
10MBを超えない場合も、週次で自動的にローテートされます。保存されるアーカイブは52世代数です。
本記事では、ログローテート設定をデフォルトから変更する方法をご紹介します。
vertica.logのローテート設定を変更する方法
ローテートの設定はadmintoolsコマンドで行います。
$ admintools -t logrotate -d <データベース名> <オプション>
#オプションの説明
-r ローテーション頻度の設定(daily|weekly|monthly)
-k 保存する世代数の設定
-s ローテートサイズの設定(MB)
例1)testデータベースのログローテートを週次で12世代分の保存に変更する場合
$ admintools -t logrotate -d test -r weekly -k 12
例2)testデータベースのログローテートサイズを30MBに変更する場合
$ admintools -t logrotate -d test -s 30ログローテートの設定は以下のファイルで確認することができます。
/opt/vertica/config/logrotate/データベース名
例)testデータベースのログローテートの設定を確認する
$ cat /opt/vertica/config/logrotate/test
~略~
#if set, rotate only if log is larger than this
size 10M ★10MBを超えている場合にローテート
#rotate weekly
weekly ★週次で自動的にローテート
#delete after this many days, not all logrotate support this
#keep for 52 weeks
rotate 52 ★ローテートされたログファイルは52世代保持
~略~注意点
dbLogもvertica.logと同様にLinuxのlogrotateによりローテートされています。そのため、この方法で設定を変更した場合、dbLogのローテート設定にも反映されます。
※デフォルトだとdbLogはファイルサイズのチェックは行われませんが、-sオプションでサイズを指定した場合、dbLogもファイルサイズのチェックが行われるようになります
参考情報
Verticaの各種ログファイル
https://www.ashisuto.co.jp/cm/analytics-database/logfiles.html
検証バージョン
この記事の内容はVertica 9.1で確認しています。