skillup

技術ブログ

サーバー・ネットワーク

ログ抽出コマンド特集 その1 cat+grep+sort

投稿日:

先日、メモリ使用率の調査に関して記事をかいたのですが、今度はそのログの収集や抽出をおこなってみようかと思います。

やりたいこと

yyyy/MM/dd-HH:mm:ss  メモリ使用率(少数2桁まで) スワップ使用率(メモリ2桁まで)の形式で15分毎に吐かれているログがあるとします。

このログから、

  1. 前日の最高のメモリ使用率
  2. 前日の最低のメモリ使用率
  3. 分布 60%台が何割、70%台が何割・・

といったデータを取り出したいとします。

とりあえず今回は1,2に関して。

まずログの調査をする場合、大体

  1. ログ自体の取り込み、入力
  2. 抽出(特定の文字列を含む)
  3. 算出(最大、最小、平均など)
  4. 算出したものを出力

という流れになるかと思います。

まずログ自体の取り込み、入力はcatで行い、次に特定の日(前日)を含むはgrepで取り出します。最大値(最小値)ということはメモリ使用率でソート(or逆ソート)した1番目になりますのでsort+headで行けます。これらをパイプでつなげばよいので、

最小値

最大値

で取り出せます。

参考リンク

sortコマンドに関して

https://hydrocul.github.io/wiki/commands/sort.html

 

 

-サーバー・ネットワーク
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

大規模Webサービス技術入門 イントロ

一応WEBサービスを日々改修していますが、データが日々ふえ、大規模なサービスの対処法などを勉強する必要があるため、「大規模サービス技術入門」を少しずつ読んでいこうと思います。 ポイント データはディス …

no image

locationディレクティブについて

nginxを実務で使うときに重要になってくるlocationディレクティブについて。 ここでは実際のlocationディレクトリとマッチするURLのパターンを見ていきたいと思います。 Contents …

no image

ansible host指定,変数の外だし,ユーザー追加

Ansibleにてhostユーザーやユーザーの追加などす。 Contents1 ホストの指定2 ユーザーの追加2.1 変数を別ファイルに2.2 パスワードのハッシュ化2.3 パスワードなしでsudo2 …

no image

ログ抽出コマンド特集 その2 シェルスクリプトの算術計算、配列とループ

前回の続きですが、ログを収集し、分布(80%台が~%、70%台が~%)を出したいとします。 Contents1 ロジック2 ソース3 気づいたこと4 参考リンク ロジック ロジックは以下のような流れに …

no image

追跡ブランチからローカルブランチを作る方法~ (svn→gitの移行など)

SVNで運用されていたプロジェクトをgitに移行する機会があったのでその時のメモなどを。 思ってたよりは楽だったかな・・・ Contents1 準備2 実際の移行(git svn clone)3 gi …