- itail 20170709.1543(in MELPA)
- An interactive tail mode
概要
Webサーバなどのログを解析するのは
tail -f シェルコマンドを使うのが定番ですね。
tail -fとはファイルを開きっぱなしにして、
追記されたのと同時に追記分を出力するコマンドです。
itail.el は、Emacs内でtail -fを実行します。
それだけではなく、grepで絞り込んだり、
特定の文字列をハイライトする機能があります。
まさにログ解析に便利なツールです。
itail.elを実行するにはtailとgrepシェルコマンドが必要で、
/bin/shを使っているのでWindowsではCygwinが必要です。
まず、M-x itailでtail -fを実行させます。
そして、C-c gでgrepする正規表現(フィルタ)を指定します。
C-c hでハイライトを有効にします。
フィルタを全部解除し、tailを再起動するにはC-c C-kです。
Fig1: C-c g eeでeeが含まれるログだけに絞り込み
インストール
パッケージシステムを初めて使う人は
以下の設定を ~/.emacs.d/init.el の
先頭に加えてください。
(package-initialize) (setq package-archives '(("gnu" . "http://elpa.gnu.org/packages/") ("melpa" . "http://melpa.org/packages/") ("org" . "http://orgmode.org/elpa/")))
初めてitailを使う方は
以下のコマンドを実行します。
M-x package-install itail
アップグレードする方は、
以下のコマンドでアップグレードしてください。
そのためにはpackage-utilsパッケージが必要です。
M-x package-install package-utils (初めてアップグレードする場合のみ) M-x package-utils-upgrade-by-name itail
設定 150304063020.itail.el(以下のコードと同一)
(autoload 'itail "itail" nil t) ;;; modelineに実行中のコマンドを表示する (setq itail-fancy-mode-line t) ;;; ハイライトする正規表現とフェイス ;;; この例はWebサーバですが、各自設定してください (setq itail-highlight-list '(;; errorとwarningを赤で表示 ("[eE]rror\\|[wW]arning" . hi-red-b) ;; HTTPのmethodを緑で表示 ("GET\\|POST\\|DELETE\\|PUT" . hi-green-b) ;; IPアドレスを文字列の色で表示 ("[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}" . font-lock-string-face)))
実行方法
$ wget http://rubikitch.com/f/150304063020.itail.el $ emacs -Q -f package-initialize -l 150304063020.itail.el
本日もお読みいただき、ありがとうございました。参考になれば嬉しいです。