ADC

ログファイルのローテーションを構成する方法

Citrix ADCアプライアンスは、複数のディレクトリにさまざまな形式でログを生成します。これらのログの一部はデフォルトではローテーションされておらず、サイズが大きくなりすぎてディスク領域を消費する可能性があります。付属のログローテーションユーティリティ(newsyslog)を使用すると、関連情報のみを保持して管理と管理を容易にすることで、これらのログを一貫して管理できます。

Citrix ADCファームウェアに含まれている newsyslog ユーティリティは、ログファイルをアーカイブし、システムログをローテーションして、ローテーション中に現在のログが空になるようにします。システムcrontabは、このユーティリティを1時間ごとに実行し、ローテーションするファイルと条件を指定する構成ファイルを読み取ります。アーカイブされたファイルは、必要に応じて圧縮される場合があります。

既存の設定は/etc/newsyslog.confにあります。ただし、このファイルはメモリファイルシステムにあるため、管理者が変更を/nsconfig/newsyslog.confに保存して、構成がNetScalerの再起動後も維持する必要があります。

このファイルに含まれるエントリの形式は次のとおりです。 logfilename [owner:group] mode count size when flags [/pid_file] [sig_num]

注:

角括弧内のフィールドはオプションであり、省略できます。

ファイルの各行は、ログファイルとローテーションが発生する必要がある条件を表します。

一例では、 size フィールドが示すことの大きさ ns.log 100としてキロバイト。count フィールドは、アーカイブされた ns.log ファイルの数が25であることを示します。100Kのサイズと25のカウントがデフォルトのサイズとカウント値です。

注:

フィールドがアスタリスクで構成されている場合( * )、ns.logファイルが時間に基づいてローテーションされないことを意味します。crontabジョブは1時間ごとに、ns.logのサイズがこのファイルで構成されているサイズ以上であるかどうかをチェックする newsyslog ユーティリティを実行します。この例では、100 K以上の場合、そのファイルをローテーションします。

root@ns# cat /etc/newsyslog.conf
# Netscaler newsyslog.conf

# This file is present in the memory filesystem by default, and any changes
# to this file will be lost following a reboot. If changes to this file
# require persistence between reboots, copy this file to the /nsconfig
# directory and make the required changes to that file.
#
# logfilename [owner:group] mode count size when flags [/pid_file] [sig_num]
/var/log/cron 600 3 100 * Z
/var/log/amd.log 644 7 100 * Z
/var/log/auth.log 600 7 100 * Z
/var/log/ns.log 600 25 100 * Z
<!--NeedCopy-->

size フィールドを変更して ns.log ファイルの最小サイズを変更したり、フィールドを変更して ns.log ファイルを特定の時間に基づいて回転させたりすることができます。

毎日、毎週、または毎月の仕様は、それぞれ、[Dhh]および[Dhh [Mdd]]として与えられます。オプションの時刻フィールドは、デフォルトで深夜に設定されています。これらの仕様の範囲と意味は次のとおりです。

Hh hours, range 0 ... 23
w day of week, range 0 ... 6, 0 = Sunday
dd day of month, range 1 ... 31, or the letter L or l to specify the last day of the month.
<!--NeedCopy-->

例:

デフォルトでローテーションされるログの説明を含むいくつかの例を次に示します。

/var/log/auth.log 600 7 100 * Z

ファイルが100Kに達すると、認証ログがローテーションされ、auth.logの最後の7つのコピーがアーカイブされ、gzip(Zフラグ)で圧縮され、結果のアーカイブに次のアクセス許可が割り当てられます–rw ——- 。

/var/log/all.log 600 7 * @T00 Z

キャッチオールログは毎晩深夜に7回ローテーションされます (@T00) そしてgzipで圧縮されます。結果のアーカイブには、次のアクセス許可–rw-r —–が割り当てられます。

/var/log/weekly.log 640 5 * $W6D0 Z

毎週のログは、毎週月曜日の深夜に5回ローテーションされます。結果のアーカイブには、アクセス許可が割り当てられます。

一般的な回転パターン:

  • D0。毎晩深夜にローテーション
  • D23。毎日ローテーション 23:00
  • W0D23。毎週日曜日にローテーション 23:00
  • W5。毎週金曜日の深夜にローテーション
  • MLD6。毎月最終日にローテーションする 6:00
  • M5。月の5日ごとの深夜にローテーションします

間隔と時間の指定が両方とも指定されている場合は、両方の条件が満たされている必要があります。つまり、ファイルは指定された間隔と同じかそれより古い必要があり、現在の時刻は時刻の指定と一致する必要があります。

最小ファイルサイズを制御できますが、 newsyslog ユーティリティが次の1時間のスロットで順番を取得するまでのファイルサイズに制限はありません。

newsyslogをデバッグします。

newsyslogユーティリティの動作をデバッグするには、verbose フラグを追加します。

root@dj_ns# newsyslog -v
/var/log/cron <3Z>: size (Kb): 31 [100] --> skipping
/var/log/amd.log <7Z>: does not exist, skipped.
/var/log/auth.log <7Z>: size (Kb): 2 [100] --> skipping
/var/log/kerberos.log <7Z>: does not exist, skipped.
/var/log/lpd-errs <7Z>: size (Kb): 0 [100] --> skipping
/var/log/maillog <7Z>: --> will trim at Tue Mar 24 00:00:00 2009
/var/log/sendmail.st <10>: age (hr): 0 [168] --> skipping
/var/log/messages <5Z>: size (Kb): 7 [100] --> skipping
/var/log/all.log <7Z>: --> will trim at Tue Mar 24 00:00:00 2009
/var/log/slip.log <3Z>: size (Kb): 0 [100] --> skipping
/var/log/ppp.log <3Z>: does not exist, skipped.
/var/log/security <10Z>: size (Kb): 0 [100] --> skipping
/var/log/wtmp <3>: --> will trim at Wed Apr 1 04:00:00 2009
/var/log/daily.log <7Z>: does not exist, skipped.
/var/log/weekly.log <5Z>: does not exist, skipped.
/var/log/monthly.log <12Z>: does not exist, skipped.
/var/log/console.log <5Z>: does not exist, skipped.
/var/log/ns.log <5Z>: size (Kb): 18 [100] --> skipping
/var/log/nsvpn.log <5Z>: size (Kb): 0 [100] --> skipping
/var/log/httperror.log <5Z>: size (Kb): 1 [100] --> skipping
/var/log/httpaccess.log <5Z>: size (Kb): 1 [100] --> skipping
root@dj_ns#
<!--NeedCopy-->
ログファイルのローテーションを構成する方法

この記事の概要