skillup

技術ブログ

PHP

ログライブラリについて

投稿日:

以前にも少し書いたログ設計に関する記事。

ログの設計指針について

上記でログの設計について書きましたが、今回はログのライブラリに関して欲しいと思う機能を。

レベル分け

これがないとログツールとは言えないかと思いますが、一応記述。やはり最低3段階(詳細情報、通常の告知情報、エラー)、できれば4段階(警告情報)ないと原因追求が困難になります。

チャネルわけ

例えば複数のログを出したいた時にログを分けられるか否かです。

昔、インポートバッチを作っていましたが、インポート元が2つあり、同じログに出していたので、原因把握が困難になりました。

複数のチャネルを使い分けられればベターです。

出力先

ファイルや標準出力に出せないものはないかと思いますが、メールやSlackなどといった告知できるサービスにあると嬉しいです。

クラウドが主流の現在だとファイルに出すのはあまりいいことではないかもしれません。

もしファイルの場合、ログローテション(日付などを自動出力かつ古いものを消してくれる)があることが望ましいです。

出力情報のカスタマイズ

配列を渡して自動で出力してくれるか否か。sprintf()…みたいな形でかければいいんですが、長いと色々と面倒なんです。配列をそのままデバッグしてくれると楽です。(多すぎるとやばいですが・・)

PHPだと2020年11現在、monolog一択かなあ・・という気はします。

上記の機能は全て揃っています、というかmonologをみてこういう機能が必要なんだなと再認識しました。

自作で少し遊んだもの

https://github.com/umanari145/phptips/tree/master/logdir

参考リンク

PHPのロギングmonologを理解する

[PHP]Monologの使い方とすぐに使えそうなサンプルコード

PHPでのログ出力 PHP monolog

-PHP
-, ,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

composer経由でのpearライブラリのインストール

2018年7月現在、PHPのライブラリはほとんどComposer経由でインストールできるかと思いますが、稀にComposerに対応していないものもあり、その場合、pearから取得してくる必要があります …

no image

laravelでのredis活用

以前下記エントリーでredisの活用について書きました。 インメモリデータベース redis 一般的な使用法ですと登録できるデータはstring,list,hashのような比較的単純な形しか登録できな …

no image

PHPでのメール送信&カレントディレクトリ

PHPの小ネタ集です。 Contents1 メールでの改行2 PHPでのカレントディレクトリ メールでの改行 メールで改行する場合、いつも\nでOKだったんですが、本日これで送信すると送れないというバ …

no image

form以外でのPOST送信(というかHTTP通信全般)

前回の記事に引き続きですが、APIを叩く側はformでデータを送るのではなく、コードの中にPOSTする処理を書きます。 選択肢としては curlコマンドを使う file_get_contentsを使う …

no image

inotifyによる検知

以前、pynotifyというpythonの検知プログラムを書きましたが、元々はinotifyというLinux上のパッケージのライブラリが元になっています。 以前調べたリンク 監視検知処理に関して 実務 …

アーカイブ