syslogについて
https://eng-entrance.com/linux-log-syslog
ログのやつ rsyslogはsyslogのモジュール拡張ができるやつで,割と最近はこっち. jounraldとの関係はよくわかってない.
設定ファイルについて
syslogの場合は /etc/syslog.conf rsyslogの場合は /etc/rsyslog.conf
モジュールのロード
$ModLoad <モジュールの名前>
$ModLoad imjournal
頭文字にルールがあって,
omから始まるモジュールはアウトプットモジュール
im から始まるのがインプットモジュール
pm から始まるのがパーサモジュール
mm から始まるのがメッセージ修正モジュール
sm から始まるのがメッセージ生成モジュール
その他ライブラリモジュール
とかってなっている.
書き方
書式
<ファシリティ>.<プライオリティ> 出力先
はワイルドカード
;で区切って複数ファシリティやプライオリティの指定
noneで無効にする.(ワイルドカードで指定したあと特定のだけ無視させたりする時に使う)
ファシリティの種類
auth,authpriv 認証系(usなど)
cron cronからのメッセージ
daemon daemonからのメッセージ
kern カーネルからのメッセージ
lpr プリンタ、印刷関係のメッセージ
mail システムメール関係のメッセージ
syslog syslogの機能関係のメッセージ
local0~7 独自設定
プライオリティの種類
高い順から
emerg: 致命的状態
alert: 早急な対処が必要
crit: 危険な状態
err: 一般的エラー
warning: 一般的警告
notice: 重要な通知
info: システムからの情報
debug: デバッグ情報
none: ファシリティの無効化 ログの除外
出力先の種類と書き方
ファイル名: ファイルに出力
@ホスト名: リモートホストのsyslogデーモンへ出力する。
ユーザ名: ユーザの端末に出力する。
/dev/console: コンソールへ出力する。
*: 全てにユーザ端末へ出力する。
loggerコマンドでテスト
任意のログメッセージを生成する.
$ logger -p <ファシリティ>.<プライオリティ> -t <タグ> メッセージ
ローテーション設定
いつまでログを保持するか的な設定
$ sudo vim /etc/logrotate.conf
### example ###
# ローテーション周期を1週間ごとに
weekly
# 4世代ログをのこす
rotate 4
# ローテーション後に空のファイルを作成する
create
# ログファイルのサフィックス指定、この場合は日付がスタンプされる。
dateext
# ほか各設定ファイルをインクルード、書式はwtmpと同じである。
include /etc/logrotate.d
# /var/log/wtmpファイル設定
/var/log/wtmp {
monthly
create 0664 root utmp
rotate 1
}
######
現在のローテーション設定
$ sudo cat /var/lib/logrotate.status