Carpe Diem

備忘録。https://github.com/jun06t

Papertrailでエラーログ監視

概要

以前Logentriesでエラー監視 - Carpe Diemでエラーログの監視方法を紹介しました。
ところがこのLogentriesで利用できていたアラート機能が有料プランのみになってしまったため、なにか無料で使えるサービスはないかと探したところ、この

Papertrail - cloud-hosted log management, live in seconds

がありましたので設定方法などを紹介します。

フリープランだと以下の条件で機能が使えます。

  • 検索可能な期間は直近48時間
  • 7日間ログを保持
  • アラート可
  • 1月あたりの転送量の上限は100MB

注意として転送量上限を超えると新しいログが破棄されるので、無駄なログを送らないようにしてください。

環境

  • remote_syslog2 0.19
  • Ubuntu 14.04
  • Nginx 1.4.6

アカウント作成

Papertrail - cloud-hosted log management, live in seconds

でアカウントを作成してください。

次に「Add your first system」で今回ログをとるものを設定します。

f:id:quoll00:20170212161355p:plain

Linuxのシステムログを転送する場合

インストール

シェルスクリプトが用意されているのでそれを実行します。

f:id:quoll00:20170212161449p:plain

$ wget -qO - --header="X-Papertrail-Token: xxxxxxxxxxxxxxxxxxxx" \
>   https://papertrailapp.com/destinations/4295672/setup.sh | sudo bash

動作確認

ダッシュボードに新しく追加されています。

f:id:quoll00:20170212163738p:plain

中ではちゃんとログが転送されています。

f:id:quoll00:20170212163850p:plain

テキストログをtailして転送する場合

インストール

今回はNginxのログを転送します。テキストログを転送する場合は以下のツールを使います。

github.com

バージョンは0.19以降を使ってください。それより古いとログローテーション時に新しいファイルをきちんと見てくれませんでした。

$ wget https://github.com/papertrail/remote_syslog2/releases/download/v0.19/remote_syslog_linux_amd64.tar.gz
$ tar xzf ./remote_syslog*.tar.gz
$ cd remote_syslog
$ sudo cp ./remote_syslog /usr/local/bin

デーモンとして起動したい場合はgithubに起動スクリプトがあるのでそれを使います。

remote_syslog2/examples at master · papertrail/remote_syslog2 · GitHub

$ sudo cp examples/remote_syslog.init.d /etc/init.d/remote_syslog
$ sudo chmod 755 /etc/init.d/remote_syslog
$ sudo update-rc.d remote_syslog defaults

設定

PapertrailはLogentriesとは異なり、トークンでデータを転送せずにドメインとポートでユーザを判別します。

f:id:quoll00:20170212165739p:plain

SettingのLog Destinationを元に、/etc/log_files.ymlに以下のように設定します。

files:
 - /var/log/nginx/access.log 
destination:
  host: logs.papertrailapp.com
  port: 12345
  protocol: tls

※↑はダミーです

設定できたら起動します。

$ sudo service remote_syslog start

動作確認

Nginxにアクセスしてみると以下のようになりました。

f:id:quoll00:20170212170119p:plain

アラート設定

404の時にアラートがなるようにしてみましょう。

f:id:quoll00:20170212170502p:plain

404で反応するようにします。

f:id:quoll00:20170212170634p:plain

次は通知ツールの選択です。

f:id:quoll00:20170212170658p:plain

アラートが飛ぶ頻度などを設定します。

f:id:quoll00:20170212170842p:plain

問題なく設定できると以下のようにアラートが飛びます。

f:id:quoll00:20170212170952p:plain