Help us understand the problem. What is going on with this article?

Logについて[初心者向け]

More than 1 year has passed since last update.

簡単にLogについて調べた内容をまとめたものを綴りたいと思います。

Logとは

コンピュータの利用状況やデータ通信など履歴や情報の記録を取る事、またその記録を指す。操作やデータの送受信が行われた日時と、行われた操作の内容や送受信されたデータの中身などが記録される。

これは、私たちの生活に置き換えると、日記のようなものだと思います。

Logファイルとは

コンピュータの利用状況やプログラムの実行状況、データ通信の送受信状況などを記録したファイル

これは、上記であげた日記を記したノートようなものだと思います。

これら2点でLogについてはざっくりわかったと思います。
Logとは日記のようなもので、それを記したノートがLogファイル。
(※日記のような解釈は私自身の解釈であって完全にイコールでは無いので、ニュアンス的な捉え方をして頂くと良いかと思います。)

Logを確認してみる

私は普段仮想環境下でCentOSを使って開発を行っていますので、CentOSを例に確認しようと思います。

CentOSがわからない方へ
[参考] https://wa3.i-3-i.info/word15502.html
まずLogファイルですが、CentOSの場合/var/log/配下にLogファイルがありますので、確認してみましょう

[vagrant@local ~]$ cd /var/log/
[vagrant@local log]$ ll
合計 3860
-rw-r--r--  1 root   root       268 10月 21 04:47 VBoxGuestAdditions-uninstall.log
-rw-r--r--  1 root   root       148  1月 27  2016 VBoxGuestAdditions.log
-rw-r--r--  1 root   root     22222 11月 11 03:38 Xorg.9.log
-rw-r--r--  1 root   root     22852 11月  5 00:56 Xorg.9.log.old
drwxr-xr-x. 2 root   root      4096  1月 27  2016 anaconda
drwxr-x---. 2 root   root        22  1月 27  2016 audit
・
・
・

長いので一部割愛しましたが、このようにLogファイルが存在します。
/var/log/配下にもディレクトリが存在する場合がありますが、その場合はそのディレクトリ内にLogファイルが存在します。
例えば

[vagrant@local log]$ ll
合計 3860
drwx------  2 root   root       141 11月  4 03:30 httpd

drwx------このパーミッションを確認すると、先頭がdとなっています。
これは、ディレクトリという事を意味しています。
通常ファイルの場合-が先頭に記されています。
なので、このLogファイルは、httpdディレクトリ内に存在する事になります。

パーミッションがわからない方へ
[参考] https://eng-entrance.com/linux-permission-basic

権限の関係上スーパーユーザー(rootユーザー)での操作に移行します。

スーパーユーザー(rootユーザー)がわからない方へ
[参考] https://eng-entrance.com/linux-root

[vagrant@local log]$ sudo su
[root@local log]# cd httpd/
[root@local httpd]# ll
合計 128
-rw-r--r-- 1 root root     0 11月  4 03:30 access_log
-rw-r--r-- 1 root root 11791 10月 21 08:05 access_log-20181028
-rw-r--r-- 1 root root 58997 11月  4 03:16 access_log-20181104
-rw-r--r-- 1 root root  1307 11月 11 03:38 error_log
-rw-r--r-- 1 root root 21545 10月 28 03:18 error_log-20181028
-rw-r--r-- 1 root root 24059 11月  4 03:30 error_log-20181104

このようにhttpdディレクトリ配下にLogファイルが存在する事が確認できたかと思います。

Logレベルについて

ログファイルに出力される情報の基準を定義する為の設定

どういった情報をどのファイルに出力するか、を設定する為の指標としてログレベルが存在します。
PHPにおけるPSR-3の場合、Logレベルは以下に細分化されて定義されています。

Logレベル 概要
emergency システムが使用不可能な状態
alert 直ちになんらかの対処の必要がある
critical 危機的な状態
error 直ちに対処する必要のない実行時エラーだが、通常はログに記録して監視すべき
warning エラーではない例外的な出来事
notice 正常だが、重要な事象
info 興味深い事象
debug 詳細なデバッグ情報

PSR-3とは

PHP-FIG(PHP Framework Interop Group = PHPフレームワーク相互運用性グループ)が策定しているPHPコーディング規約
PHPフレームワーク相互運用性グループには色々な人がいるみたいだが、名前にもあるようにPHPのフレームワーク開発者などはだいたい属している
PSR-3というのは、目次の三章目みたいな感じで、PSR-3にはLogger Interface(ロガーインタフェース)の規約が掲載されている。
目次みたい、という事は当然他の項目には、例えばPSR-1にはBasic Coding Standard(基本的なコーディング標準)、PSR-6にはCaching Interface(キャッシングインターフェイス)などが記載されている

各PSRについて簡単にまとめられた記事がありましたので、掲載します。
[参考] http://rabbitfoot141.hatenablog.com/entry/2018/10/14/002210

tatsuo-iriyama
Web Engineer|96'|高卒|前職:溶接工|2019-01〜ユアマイスター株式会社|
yourmystar
サービス産業のIT化プラットフォーム「ユアマイスター」と大切なものをもっと大切にするメディア「ユアマイスター スタイル」を運営するスタートアップです。
http://corp.yourmystar.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした