質問: ログライブラリに依存する話しではないと思いますが、例えばmonologでJSON形式でログを出力した場合、デフォルトのJsonFormatterを利用すると以下のようなJSON形式のログが出力されます。 ``` {"message":"ログメッセージ1","context":[],"level":200,"level_name":"INFO","channel":"myLog","datetime":{"date":"2020-01-21 22:19:25.220271","timezone_type":3,"timezone":"Asia/Tokyo"},"extra":[]} {"message":"ログメッセージ2","context":[],"level":200,"level_name":"INFO","channel":"myLog","datetime":{"date":"2020-01-21 22:19:29.884730","timezone_type":3,"timezone":"Asia/Tokyo"},"extra":[]} {"message":"ログメッセージ3","context":{},"level":200,"level_name":"INFO","channel":"myLog","datetime":{"date":"2020-01-21 22:23:29.169131","timezone_type":3,"timezone":"Asia/Tokyo"},"extra":[]} ``` 見ていただくとわかるとおり、行単位で見るとJSON形式であるものの、ログファイル全体でみれば正しいJSON形式とは言えません。 その為、単純にViewer(macOS向け)で閲覧したり、ATOMのJSON整形ツールに読み込ませても当然ですがエラーとなります。 JSON形式のログを採用している方にお伺いしたいのは、こういった問題(つまり行単位では正しいJSONであるものの、ログファイル全体を読む込みと正しいJSONではないという事)に対してどのような方法でログの閲覧や管理をされているのでしょうか?
回答: https://github.com/brocode/fblog fblogを使えば、json-logをprettyに表示することができます。また、SQLのようにそれぞれのkeyについてフィルタをかけることもできるので、生ログにgrepをかけるよりも便利にデバッグ等にログを活用することが可能です。