Linuxメモ : GoAccessでリアルタイムにWebログ解析
- GoAccess
- インストール
- 使い方:ターミナル
- 基本
- tail -f
- 複数ファイル
- キーバインド
- 使い方:HTML版
- 基本
- リアルタイム解析
- 参考:ダミーログ生成
GoAccess
GoAccess - Visual Web Log Analyzer(公式ページ)
GoAccessはリアルタイムにWebログを解析するツール(GoAccessという名前だがGoではなくCで書かれているようだ)。インストールすれば複雑な設定不要で利用できるので手軽に解析したいときに便利。ここにHTML版デモページがあるので解析項目等を確認できる。
解析可能なログフォーマットの一覧は下記。
- Amazon CloudFront (Download Distribution).
- Amazon Simple Storage Service (S3)
- AWS Elastic Load Balancing
- Combined Log Format (XLF/ELF) Apache | Nginx
- Common Log Format (CLF) Apache
- Google Cloud Storage.
- Apache virtual hosts
- Squid Native Format.
- W3C format (IIS).
続きを読む
Pythonメモ : pyheatで時間のかかる処理をヒートマップで表示
- pyheat
- インストール
- 使い方
- pyheatmagic(IPythonで使う場合)
- インストール
- 使い方
pyheat
pyheatはpprofile + matplotlibのようなモジュールで、pprofile(line_profilerのようにコード単位でプロファイリング)のプロファイリング結果をヒートマップで表示することができる。
続きを読む
Linuxメモ : fkill, gkillでインタラクティブにプロセスをkillする
Linuxメモ : 「ccat」でcatをシンタックスハイライトする
- ccat
- インストール
- 使い方
ccat
cat
やless
をシンタックスハイライトさせるにはpygmentsやsource-highlightを使う方法があるが、ccat
というコマンドがあったので試してみる。
サポートしている言語の一覧は下記。
- JavaScript
- Java
- Ruby
- Python
- Go
- C
- JSON
作者によるとcat
とccat
の処理時間の差はほとんどないとのこと。
$ wc -l main.go 123 main.go $ time cat main.go > /dev/null cat main.go > /dev/null 0.00s user 0.00s system 61% cpu 0.005 total $ time ccat main.go > /dev/null ccat main.go > /dev/null 0.00s user 0.00s system 78% cpu 0.007 total
Pythonメモ : mimesisでテストデータを生成する
- mimesis
- インストール
- 使い方
- 作成可能なデータ種別
- JSONスキーマを指定して出力
mimesis
mimesis
というというPythonライブラリを使用するとテストデータを簡単に生成することができるので試してみる。
特徴としては、
- fakerなどの他のライブラリに比べて高速
- 様々なデータを生成可能
- Python標準ライブラリ以外を必要としないのでシンプル
とのこと。
ここにfaker
と速度を比較するコードがあったので試したところ確かに高速だった(コードのfrom elizabeth
はfrom mimesis
に変更。名前が変わったのだろうか)。
$ python comp.py [0.87593889s] generate_elizabeth(250000) -> 'Generated 250000' [130.84236121s] generate_faker(250000) -> 'Generated 250000'