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

メールパーサー(mailparseとphp-mime-mail-parser)に関して

以前、POP3を使ったメール受信というエントリーでメールパーサーをインストールしたんですが、他のライブラリをインストールする機会があったんでメモ。 https://github.com/php-mim …

no image

cakePHP Tips その2

またまたCakePHPのネタです。 タイトルから内容がわからなくてすいません。 五月雨式に行きます。 Contents1 コントローラーごとのベースになるテンプレートの変更2 linkタグでのHTML …

no image

PHPで配列の同一性(集合のチェック)

AとBという配列があり、A⊂B つまりは集合のような関係を確かめたいときに下記のようなメソッドを使います。  

no image

phpの時分秒+cakePHPのupdate

ちょっと小ネタ集になります。 Contents1 PHPで秒→時分秒変換2 cakePHPでのupdate PHPで秒→時分秒変換 PHPで秒数から時分秒に変換するプログラムです。 汎用的かなと思った …

no image

php5.6のインストール+cake3でのbake

cake3を動かしたい場合、PHP5.4以上でないと動きません。 2016年1月現在、CentOS6でyumでPHPをインストールする場合、php5.3ですので、5.4以上を入れる場合、別のリポジトリ …