coturnサーバーの運用のためのログポリシー設定方法
目的
- syslogではなく別のファイルにログを記録
- 一定期間が経過したログは自動削除されます
(예시 : 7일)
/var/log/turn ディレクトリの作成
/var/log/経路にturn名前のディレクトリを作成chown turnserver:turnserver turnディレクトリをコマンドでturnserverユーザーが使用できるように変更
turnサーバーの設定変更
ログレベルの変更
/etc/turnserver.confエディタで表示- 内容をずっと下にスクロールすると
#verboseと書かれた行が表示されること注意事項 :vが小文字のverboseイム、大文字もあるので区別をしっかりしなければならない。) #コメントを解除するために削除してください- その下に
Verboseラゴ大文字V始まるものがあるはずです、これは。#を追加してコメントアウトする
verbose: 一般的なデバッグVerbose(V大文字) : パケット単位の精密分析**(運用環境では非アクティブを推奨します)**
標準出力禁止
/etc/turnserver.confエディタで表示- 内容をずっと下にスクロールすると
#no-stdout-logと書かれた一行が見えるはずです。 - ここで
#を削除してコメントを解除
no-stdout-log: これがコメントアウトされている場合log-fileオプションとは別に標準出力も並行してsyslogわlog-file両方ともログが蓄積されます
ログ保存パスの変更
/etc/turnserver.confエディタで表示- 内容をずっと下にスクロールすると
syslogと書かれた一行が見えるはずです。 syslogというテキストをlog-file=/var/log/turn/turn.logのように変更- 下の行に
#simple-logテキストが存在します #simple-logの前の#を削除してコメントを解除
log-file: log を指定したパスに保存simple-log: ログファイル名にPIDが付かないようにする、これによりlogrotateパターンで指定するのが便利になった
로깅 수준 변경, 표준 출력 금지, log 저장 경로 변경作業完了後に保存
Linux logrotate を使用してログ管理の周期設定
/etc/logrotate.d経路にturnというファイルを作成- エディタで
turnファイルの閲覧 - 以下のようなログポリシーの内容を入力して保存します。
/var/log/turn/turn.log {
daily
rotate 7
missingok
compress
delaycompress
notifempty
create 640 turnserver turnserver
postrotate
/usr/bin/pkill -HUP turnserver > /dev/null 2>&1 || true
endscript
}
daily= 保存周期: 毎日 (weekly, monthly 可能)rotate 7= 保管数: 7個 (7日経過したログは削除されます)missingok= ファイルがなくてもエラーを無視compress= 過去のログ圧縮 (gzip, 保存周期をdailyに設定した場合、2日目のログから圧縮されます)delaycompress= 次の周期まで圧縮を遅延(ファイル書き込みの競合を防ぐ)notifempty= ログ内容がない場合はローテーションしないcreate 640 turnserver turnserver= 新しいファイルの作成権限と所有者の指定/usr/bin/pkill -HUP turnserver > /dev/null 2>&1 || true= Coturnにログファイルを再オープンする信号(SIGHUP)を送信
設定変更を適用するためのサービス再起動
sudo systemctl restart coturnコマンドでturnサービスを再起動