はじめに
NSO のエラーログ、ncserr.* はその他のログとは違い、NSO によりローテーションされます。 そのため、デフォルトで logrotate の処理には含まれないようになっています。 一度作成されると、NSO が管理するため、 変更は必要ありません。
但し、これらのファイルが NSO 以外の第三者により操作されると、 (例 truncate ) NSO が書き込むことができなくなります。 この記事では、エラーログが書き込み可能な状態か確認し、必要であれば再作成する例を紹介します。
再作成
/var/log/ncs にある ncserr.* を確認します。 ファイルサイズが 0 バイトの場合、NSO が書き込めない状態なので再作成します。
-rw-r--r-- 1 root root 0 Oct 22 06:36 ncserr.log.siz
-rw-r--r-- 1 root root 0 Oct 22 06:36 ncserr.log.idx
-rw-r--r-- 1 root root 0 Oct 22 06:36 ncserr.log
ncserr.* ファイルをすべて削除し NSO を再起動します。
再起動後、ncserr.* が作成され、0バイトではないことを確認します。
$ ls -lrt ncserr*
-rw-r--r-- 1 root root 13 Oct 22 06:43 ncserr.log.siz
-rw-r--r-- 1 root root 42 Oct 22 06:43 ncserr.log.idx
-rw-r--r-- 1 root root 8 Oct 22 06:43 ncserr.log
ncserr* は NSO により書き込み可能な状態になりました。
なお、ファイルが 0 バイトではない場合でも、NSO 以外からの操作により NSO が書き込めないケースも考えられます。 エラーログのタイムスタンプ、サイズをみて長期間更新されていないようであれば、壊れている可能性があるため、再作成してください。