ログについて

開発の現場でまず手間取ったのはログでした。
そのため、ログについて調べたことを今回アウトプットしたいと思います。

まず、ログとは何者かから簡単に、、それは「記録」!
例えば、いつ起動したのか、いつだれがアクセスしたのか、記録として残す。
それも休みなく、記録としてご丁寧に残してくれる。

でも、いくつか種類を決めていないとこのログはなんなの?ってなるため、ログにも種類があります。
それが以下になります。
操作ログ、認証ログ、イベントログ、通信ログ、通話ログ、、、、、お腹いっぱいになりますねw

そのため、私が現場でよく見るログだけ挙げました。
①info
②error
③warn
④debug

【info】君の自己紹介
 システムやプログラムが正常に動作していることを示す情報を記録します。
 (起動の開始・終了、システムのパフォーマンス統計など、、)

【error】君の自己紹介
 システムやプログラムがエラーが発生した際にエラーの内容の情報を記録します。どこに問題が起きているのか問題特定をするときに役立ちます。

【warn】君の自己紹介
 システムやプログラムで警告が発生した際に記録します。先ほどのerror君よりは危険度は低く、異常であるけどもシステムはまだ正常に動くよねって時に使います。
 ただ、気を抜いてはいけませんので、将来的な問題が起きる前に注意しておこうねって感じです。

【debug】君の自己紹介
 開発する人がプログラムの動作を理解する際に使うものです。ある問題が発生した際に問題を特定して、解決するために使用するものになります。(どんな処理をしているのか、どんなクエリを流しているのか「DBというところからデータを取ったり、更新したりなどするものです」)

上記のように種類ごとにちゃんと役割があるため、使い分けるのが必要ですね。。
そのため、これらのログがないと「これっていつやったの?なんか問題おきてるんやけど?」って困りますよね。ww(笑い事ではありませんが)

だからと言ってめっちゃログ出力されるようにしようとしてもやりすぎだと不要なログになります。

日常動作の例で出すと、[手に取ったスマホの画面を指でタッチするだけを記録するとき]

-適切なログ-
2024/02/03 13:00:00 [Info] 片方の手でスマホを持ちました。
2024/02/03 13:00:10 [Info] 持ったスマホの画面を指でタッチしました。

-不要なログ-

2024/02/03 13:00:00 [Info] 片方の手でスマホを持ちました。
2024/02/03 13:00:01 [Info] スマホの画面とタッチする指との距離が10cmです。
2024/02/03 13:00:02 [Info] スマホの画面とタッチする指との距離が9cmです。
2024/02/03 13:00:03 [Info] スマホの画面とタッチする指との距離が8cmです。
2024/02/03 13:00:04 [Info] スマホの画面とタッチする指との距離が7cmです。
         (略)
2024/02/03 13:00:10 [Info] 持ったスマホの画面を指でタッチしました。

私としてはスマホの画面とタッチする指との距離は特に必要な情報ではないため、なんでもかんでもログを出せばいいやって訳にはいかないですね。(プログラムが記録したとしても結局確認するのは人なので、、)
適切にログを出力させるためにまずはシステムやプログラムを理解する必要がありますね。自分はまだまだですがうまく向き合えるように頑張ります。

この例えがイマイチやこれどうかなって思うことがあればコメントをお願いいたします。

この記事を閲覧いただきありがとうございました。


この記事が参加している募集

#仕事について話そう

110,851件

この記事が気に入ったらサポートをしてみませんか?