MENU

業務に使えるログの見方とgrep入門

~「なんかエラー出たっぽい」を卒業しよう~

この記事でわかること

  • ログファイルってそもそもどこにあるの?
  • よく見る「エラーログ」の探し方
  • grepを使った効率的な検索方法

目次

ログってどこにあるの?

サーバやアプリケーションは、処理内容やエラー情報をログファイルに出力しています。
Linux系のサーバなら、たいていここにあります:

ログの種類よくあるファイルパス
システムログ/var/log/syslog/var/log/messages
認証ログ/var/log/auth.log
Webサーバ(Apache/Nginx)/var/log/apache2/error.log/var/log/nginx/access.log
アプリ独自のログアプリ配下の logs/ ディレクトリなど

上記はあくまで一例。
アプリによってログの保存場所は異なるので、READMEやマニュアルに記載されていることも多いです。


ログってどうやって読むの?

ログファイルは基本的にテキストファイルなので、catlesstail などのコマンドで中身を確認します。

コマンド内容
cat ファイル名全文を一気に表示(長いと使いづらい)
less ファイル名スクロールしながら読める
tail ファイル名一番下の数行を表示(デフォルト10行)
tail -f ファイル名ログのリアルタイム監視ができる!

grepって何?どう使うの?

grepは、文字列をログから検索できる最強の相棒です。
「エラーが出たけど、何行もあるログのどこだ…」というとき、これで一発。

grep "error" /var/log/syslog
  • grep:検索コマンド
  • "error":探したい文字列(エラーメッセージなど)
  • /var/log/syslog:ログファイルのパス

よく使うオプション

オプション意味
-i大文字小文字を区別しない
-n行番号を表示する
-rディレクトリを再帰的に検索
--color該当文字列を色付きで表示

例:

grep -i --color "timeout" /var/log/nginx/error.log

実務での使い方例

🛠️「Webアプリが落ちた」とき…

tail -n 100 /var/log/nginx/error.log | grep -i "fatal"

→ 直近100行から “fatal” を含むエラーを絞り込み!


FAQ

Q. grep以外にも検索に便利なツールはある?
A. awksed などのツールもありますが、まずは grep から覚えるのが王道です。

Q. ログが多すぎてgrepでも追えない…
A. grep "文字列" * のように複数ファイル対象にしたり、grep -r でディレクトリごと検索もおすすめです。


出典

Linux JP:grep コマンドの使い方

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

・IT業界5年~
未経験からエンジニア挑戦組。もともとは技術職、工場経験も有り。
〇現在はソフトウェア開発

・紹介したいこと
未経験→エンジニア挑戦でつまずいたこと、今更聞けない初歩的なこと、勉強していて良かったこと、暗黙的ルールによる落とし穴等

・趣味
ゲームはPC、SwitchでFPSだったりスローライフから様々やります。

コメント

コメントする

目次