Movatterモバイル変換
[0]
ホーム
URL:
画像なし
夜間モード
Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
博文 斉藤
PDF, PPTX
6,676 views
GNU awk (gawk) を用いた Apache ログ解析方法
Read more
18
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 17
2
/ 17
3
/ 17
4
/ 17
5
/ 17
6
/ 17
7
/ 17
8
/ 17
9
/ 17
10
/ 17
11
/ 17
12
/ 17
13
/ 17
14
/ 17
15
/ 17
16
/ 17
17
/ 17
Recommended
PDF
OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話
by
Daichi Koike
PDF
Branded Interaction Design – Digitale Markenerlebnisse planen und gestalten. ...
by
think moto GmbH
PDF
確実に良くするUI/UX設計
by
Takayuki Fukatsu
PDF
Googleの創業と発展
by
Shigeki Yokoi
PDF
サービス開発とその進め方
by
KazuyukiHashimoto4
PDF
Cyta.jp_サービスEC説明資料
by
Find Job Startup
PDF
T TIME 滞在時間割キャンペーン(第4回販促会議企画コンペティション)
by
Keita Takizawa
PDF
แผนFlashหน่วย1
by
Junya Punngam
PDF
【企画書】omiai:IVS_LAUNCH PAD用資料
by
Find Job Startup
PDF
CleanArchitecture with AssemblyDefinition in unity
by
NakanoYosuke1
PDF
メルカリ_サービス説明資料
by
Find Job Startup
PDF
PIXTA_シードラウンド用事業プラン説明資料
by
Find Job Startup
PDF
ストリートアカデミー_ローンチ前企画書
by
Find Job Startup
PDF
Node.js Native ESM への道 〜最終章: Babel / TypeScript Modules との闘い〜
by
Teppei Sato
PDF
アプリを生み出す現場でUI/UXデザイナーが意識するべきこと:RoomClip
by
takaaya
PDF
これからはじめるサービスデザイン
by
Concent, Inc.
PDF
【企画書】ReceReco:新規事業討議用社内資料
by
Find Job Startup
KEY
テスト駆動開発入門
by
Shuji Watanabe
PDF
RDRAモデリングを見てみよう
by
Zenji Kanzaki
PDF
デザインのためのデザイン
by
Masayuki Uetani
PDF
事業成長にコミットするエンジニア組織への道のり
by
Recruit Lifestyle Co., Ltd.
PDF
心地よいUIの温度 - 言葉と気遣いで高めるUI -
by
wariemon
PDF
UXデザインワークショップ資料 by ATOMOS DESIGN
by
Akihiko Kodama
PDF
【freee】プロダクトマネージャーの仕事と魅力
by
dcubeio
PDF
WBSを始めよう
by
Takashi Yoshimura
PDF
โครงงานระบบปฏิบัติการ
by
Thanapon Seadthaisong
PDF
UX / UI สำหรับเว็บไทย
by
Menn Studio
PDF
โครงงานพัฒนาเครื่องมือ
by
pim12582
PDF
恐怖!シェルショッカーの POSIX原理主義シェルスクリプト
by
Richie Shellshoccar
PDF
Linux女子部第二回勉強会usp友の会
by
Ryuichi Ueda
More Related Content
PDF
OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話
by
Daichi Koike
PDF
Branded Interaction Design – Digitale Markenerlebnisse planen und gestalten. ...
by
think moto GmbH
PDF
確実に良くするUI/UX設計
by
Takayuki Fukatsu
PDF
Googleの創業と発展
by
Shigeki Yokoi
PDF
サービス開発とその進め方
by
KazuyukiHashimoto4
PDF
Cyta.jp_サービスEC説明資料
by
Find Job Startup
PDF
T TIME 滞在時間割キャンペーン(第4回販促会議企画コンペティション)
by
Keita Takizawa
PDF
แผนFlashหน่วย1
by
Junya Punngam
OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話
by
Daichi Koike
Branded Interaction Design – Digitale Markenerlebnisse planen und gestalten. ...
by
think moto GmbH
確実に良くするUI/UX設計
by
Takayuki Fukatsu
Googleの創業と発展
by
Shigeki Yokoi
サービス開発とその進め方
by
KazuyukiHashimoto4
Cyta.jp_サービスEC説明資料
by
Find Job Startup
T TIME 滞在時間割キャンペーン(第4回販促会議企画コンペティション)
by
Keita Takizawa
แผนFlashหน่วย1
by
Junya Punngam
What's hot
PDF
【企画書】omiai:IVS_LAUNCH PAD用資料
by
Find Job Startup
PDF
CleanArchitecture with AssemblyDefinition in unity
by
NakanoYosuke1
PDF
メルカリ_サービス説明資料
by
Find Job Startup
PDF
PIXTA_シードラウンド用事業プラン説明資料
by
Find Job Startup
PDF
ストリートアカデミー_ローンチ前企画書
by
Find Job Startup
PDF
Node.js Native ESM への道 〜最終章: Babel / TypeScript Modules との闘い〜
by
Teppei Sato
PDF
アプリを生み出す現場でUI/UXデザイナーが意識するべきこと:RoomClip
by
takaaya
PDF
これからはじめるサービスデザイン
by
Concent, Inc.
PDF
【企画書】ReceReco:新規事業討議用社内資料
by
Find Job Startup
KEY
テスト駆動開発入門
by
Shuji Watanabe
PDF
RDRAモデリングを見てみよう
by
Zenji Kanzaki
PDF
デザインのためのデザイン
by
Masayuki Uetani
PDF
事業成長にコミットするエンジニア組織への道のり
by
Recruit Lifestyle Co., Ltd.
PDF
心地よいUIの温度 - 言葉と気遣いで高めるUI -
by
wariemon
PDF
UXデザインワークショップ資料 by ATOMOS DESIGN
by
Akihiko Kodama
PDF
【freee】プロダクトマネージャーの仕事と魅力
by
dcubeio
PDF
WBSを始めよう
by
Takashi Yoshimura
PDF
โครงงานระบบปฏิบัติการ
by
Thanapon Seadthaisong
PDF
UX / UI สำหรับเว็บไทย
by
Menn Studio
PDF
โครงงานพัฒนาเครื่องมือ
by
pim12582
【企画書】omiai:IVS_LAUNCH PAD用資料
by
Find Job Startup
CleanArchitecture with AssemblyDefinition in unity
by
NakanoYosuke1
メルカリ_サービス説明資料
by
Find Job Startup
PIXTA_シードラウンド用事業プラン説明資料
by
Find Job Startup
ストリートアカデミー_ローンチ前企画書
by
Find Job Startup
Node.js Native ESM への道 〜最終章: Babel / TypeScript Modules との闘い〜
by
Teppei Sato
アプリを生み出す現場でUI/UXデザイナーが意識するべきこと:RoomClip
by
takaaya
これからはじめるサービスデザイン
by
Concent, Inc.
【企画書】ReceReco:新規事業討議用社内資料
by
Find Job Startup
テスト駆動開発入門
by
Shuji Watanabe
RDRAモデリングを見てみよう
by
Zenji Kanzaki
デザインのためのデザイン
by
Masayuki Uetani
事業成長にコミットするエンジニア組織への道のり
by
Recruit Lifestyle Co., Ltd.
心地よいUIの温度 - 言葉と気遣いで高めるUI -
by
wariemon
UXデザインワークショップ資料 by ATOMOS DESIGN
by
Akihiko Kodama
【freee】プロダクトマネージャーの仕事と魅力
by
dcubeio
WBSを始めよう
by
Takashi Yoshimura
โครงงานระบบปฏิบัติการ
by
Thanapon Seadthaisong
UX / UI สำหรับเว็บไทย
by
Menn Studio
โครงงานพัฒนาเครื่องมือ
by
pim12582
Viewers also liked
PDF
恐怖!シェルショッカーの POSIX原理主義シェルスクリプト
by
Richie Shellshoccar
PDF
Linux女子部第二回勉強会usp友の会
by
Ryuichi Ueda
PPTX
OSC・シェルのプロが語る『make を使ったデータ処理。』 【make 教】 - OSC2015 Tokyo/Spring 発表資料
by
博文 斉藤
PDF
awk入門
by
ika take
PDF
Log解析の基礎@phpcon2014
by
菊池 佑太
PDF
恐怖!シェルショッカー1号男
by
Tomoyuki Matsuura
PPTX
中年以降エンジニアの成長戦略
by
Ryo Tomidokoro
PDF
jus & USP友の会共催 シェルワンライナー勉強会@関西(第11回シェル芸勉強会)
by
Ryuichi Ueda
PDF
Good Parts of PHP and the UNIX Philosophy
by
Yuya Takeyama
PDF
サーバ攻撃されてみた
by
Kimie Furuya
恐怖!シェルショッカーの POSIX原理主義シェルスクリプト
by
Richie Shellshoccar
Linux女子部第二回勉強会usp友の会
by
Ryuichi Ueda
OSC・シェルのプロが語る『make を使ったデータ処理。』 【make 教】 - OSC2015 Tokyo/Spring 発表資料
by
博文 斉藤
awk入門
by
ika take
Log解析の基礎@phpcon2014
by
菊池 佑太
恐怖!シェルショッカー1号男
by
Tomoyuki Matsuura
中年以降エンジニアの成長戦略
by
Ryo Tomidokoro
jus & USP友の会共催 シェルワンライナー勉強会@関西(第11回シェル芸勉強会)
by
Ryuichi Ueda
Good Parts of PHP and the UNIX Philosophy
by
Yuya Takeyama
サーバ攻撃されてみた
by
Kimie Furuya
Similar to GNU awk (gawk) を用いた Apache ログ解析方法
PDF
awk v.s. bashどっちが強い?@OSC2011Tokyo
by
Ryuichi Ueda
PPTX
Windowsでも使えるシェル
by
Tetsuya Hasegawa
PDF
シェル芸初心者によるシェル芸入門 (修正版)
by
icchy
PDF
Awk勉強会用資料
by
Junnosuke Toku
PDF
スクリプト言語入門 - シェル芸のすすめ - 第2回クラウド勉強会
by
Makoto SAKAI
PPTX
シェルスクリプトワークショップ資料 - 上級者向け「シェル芸」
by
博文 斉藤
PDF
姫路IT系勉強会 Vol.11 第0回L-1グランプリ bash
by
Jun Nogata
PDF
Unix 基礎
by
Sho A
PPTX
シェルスクリプトワークショップ資料 - 初心者向け「シェル芸」
by
博文 斉藤
PDF
Usptomonokai 20111028
by
博文 斉藤
PDF
今さら聞けない! Linux コマンドラインツールテクニック その1 rev. 3
by
Fuminobu Takeyama
PDF
日本 GNU AWK ユーザー会スライド 2 - OSC2012 Tokyo/Fall
by
博文 斉藤
PDF
mlr-grep - レコード指向grep
by
Ryoichi KATO
PDF
Unix
by
Hiramatsu Ryosuke
PDF
業務報告会
by
Tomofumi Takayama
PDF
誰得コマンド&オプション35連発
by
Yozo SATO
PDF
OSC2012 Tokyo Spring, USP lab. presentation
by
Ryuichi Ueda
PDF
2012年10月27日 Hbstudy#38
by
Ryuichi Ueda
PDF
20130223 OSC Tokyo/Spring
by
Ryuichi Ueda
PDF
StatGenSummerSchool2023_Linux.pdf
by
The University of Tokyo, Osaka University, RIKEN IMS
awk v.s. bashどっちが強い?@OSC2011Tokyo
by
Ryuichi Ueda
Windowsでも使えるシェル
by
Tetsuya Hasegawa
シェル芸初心者によるシェル芸入門 (修正版)
by
icchy
Awk勉強会用資料
by
Junnosuke Toku
スクリプト言語入門 - シェル芸のすすめ - 第2回クラウド勉強会
by
Makoto SAKAI
シェルスクリプトワークショップ資料 - 上級者向け「シェル芸」
by
博文 斉藤
姫路IT系勉強会 Vol.11 第0回L-1グランプリ bash
by
Jun Nogata
Unix 基礎
by
Sho A
シェルスクリプトワークショップ資料 - 初心者向け「シェル芸」
by
博文 斉藤
Usptomonokai 20111028
by
博文 斉藤
今さら聞けない! Linux コマンドラインツールテクニック その1 rev. 3
by
Fuminobu Takeyama
日本 GNU AWK ユーザー会スライド 2 - OSC2012 Tokyo/Fall
by
博文 斉藤
mlr-grep - レコード指向grep
by
Ryoichi KATO
Unix
by
Hiramatsu Ryosuke
業務報告会
by
Tomofumi Takayama
誰得コマンド&オプション35連発
by
Yozo SATO
OSC2012 Tokyo Spring, USP lab. presentation
by
Ryuichi Ueda
2012年10月27日 Hbstudy#38
by
Ryuichi Ueda
20130223 OSC Tokyo/Spring
by
Ryuichi Ueda
StatGenSummerSchool2023_Linux.pdf
by
The University of Tokyo, Osaka University, RIKEN IMS
More from 博文 斉藤
PDF
お手軽並列処理
by
博文 斉藤
PDF
Obsidian Talk JP 資料 - 2021-10-15
by
博文 斉藤
PDF
Obsidian Talk JP - Template & Daily notes - 2021-09-04
by
博文 斉藤
PDF
日本 GNU AWK ユーザー会スライド 1 - OSC2012 Tokyo/Fall
by
博文 斉藤
PPTX
curl で iPhone にプッシュ通知しよう
by
博文 斉藤
PPTX
USP 友の会 LT 資料 20130413
by
博文 斉藤
PDF
日本 GNU AWK ユーザー会チラシ - OSC2012 Tokyo/Fall
by
博文 斉藤
PPTX
Shell で制限付き並列処理をしよう
by
博文 斉藤
PDF
Markdown で行こう!
by
博文 斉藤
PPT
「やっちまったぁ!」を防ごう!
by
博文 斉藤
お手軽並列処理
by
博文 斉藤
Obsidian Talk JP 資料 - 2021-10-15
by
博文 斉藤
Obsidian Talk JP - Template & Daily notes - 2021-09-04
by
博文 斉藤
日本 GNU AWK ユーザー会スライド 1 - OSC2012 Tokyo/Fall
by
博文 斉藤
curl で iPhone にプッシュ通知しよう
by
博文 斉藤
USP 友の会 LT 資料 20130413
by
博文 斉藤
日本 GNU AWK ユーザー会チラシ - OSC2012 Tokyo/Fall
by
博文 斉藤
Shell で制限付き並列処理をしよう
by
博文 斉藤
Markdown で行こう!
by
博文 斉藤
「やっちまったぁ!」を防ごう!
by
博文 斉藤
GNU awk (gawk) を用いた Apache ログ解析方法
1.
GNU awk (gawk)
を用いた ログ解析方法 Apache ログ解析方法 斉藤 博文
2.
自己紹介斉藤博文 日本
GNU AWK ユーザー会主宰。 hi_saito@yk.rim.or.jp @hi_saito http://gauc.no-ip.org/awk-users-jp/ さて、今回の課題です。
3.
目的Apache のログを簡単に整理したい。
combined 形式でも common 形式でも手 軽に処理したい。 項目分割を簡単にしたい。 コードの量を少なく、分かりやすくしたい。 でも awk は Apache の処理が苦手です。
4.
何故、苦手なのか何故、苦手なのか? Apache のログ項目は
3 つの形式がある。 スペース区切。 → awk で処理できる。 ダブルクォートで囲まれて中身にスペースが含ま れる。 大括弧で囲まれて中身にスペースが含まれる。 そんな時には GNU awk (gawk) です!
5.
形式のcombined 形式のログ***.***.***.*** -
- [25/Mar/2012:12:08:28 +0900]***.***.***.*** - - [25/Mar/2012:12:08:28 +0900]***.***.***.******.***.***.*** ¥ ¥"GET http://gauc.no-ip.org/ HTTP/1.1""GET http://gauc.no-ip.org/ HTTP/1.1" http://gauc.no-ip.org/ http://gauc.no-ip.org/ ¥ ¥200 492200 492 ¥ ¥"http://gauc.no-ip.org/" http://gauc.no-ip.org/" http://gauc.no-ip.org/""http://gauc.no-ip.org/" ¥ ¥"Mozilla/5.0 Gecko/20100101 Firefox/11.0""Mozilla/5.0 Gecko/20100101 Firefox/11.0" awk の FS では分割できない。 FS を用いない分割を行う必要がある。
6.
gawk で何ができるか? 今回紹介する方法は
2 つ。 gensub() 関数で後方参照を使った方法。 gawk4 から導入された FPAT でフィールド自 体の正規表現を記述する方法。 それぞれを説明します。
7.
関数で後方参照を いる場合gensub() 関数で後方参照を用いる場合
メリットとデメリット sed や Perl と同じような記述で分割できる。 combined 形式と common 形式を分けなく てはいけない。 フィールドに分割されるのではなく、配列または 変数として分割される。 例を示します。
8.
った例gensub() を使った例{{
log_str = gensub(/^([^ ]+) ([^ ]+) ([^ ]+) log_str = gensub(/^([^ ]+) ([^ ]+) ([^ ]+) gensub(/^([^ gensub(/^([^ [[^¥]]+¥(¥[[^¥]]+¥]) ("[^"]+") ([^ ]+) ([^ ]+) ("[^"]+")(¥[[^¥]]+¥]) ("[^"]+") ([^ ]+) ([^ ]+) ("[^"]+") [[^¥]]+¥("[^"]+")$/,("[^"]+")$/,"¥¥1¥034¥¥2¥034¥¥3¥034¥¥4¥034¥¥5¥034¥¥6¥034¥¥7¥034¥¥8 034¥ 034¥ 034¥ 034¥ 034¥ 034¥ 034¥"¥¥1¥034¥¥2¥034¥¥3¥034¥¥4¥034¥¥5¥034¥¥6¥034¥¥7¥034¥¥8 034¥ 034¥ 034¥ 034¥ 034¥ 034¥ 034¥ 034¥¥034¥¥9", 1, $0); 034¥¥034¥¥9", 1, $0); num_log = split(log_str, arr_log, "¥ 034"); num_log = split(log_str, arr_log, "¥034"); split(log_str, arr_log, "¥ split(log_str, arr_log, "¥ for (i = 1; i <= num_log; i++) { for (i = 1; i <= num_log; i++) { num_log; num_log; print "Item " i " = " arr_log[i]; print "Item " i " = " arr_log[i]; arr_log[i]; arr_log[i]; } }}} 分かりやすいような、分かりにくいような・・・。
9.
フィールド自体 指定するFPAT でフィールド自体を指定する場合
メリットとデメリット コードが短い。 combined 形式と common 形式で変える 必要がない。 $1, $2... というフィールドに分割される。 まだメジャーじゃない。 例を示します。
10.
った例FPAT を使った例BEGIN {BEGIN
{ FPAT = "(¥¥[[^¥¥[¥¥]]+¥¥])|(¥"[^¥"]+¥")|([^ ]+)"; FPAT = "(¥ ¥[[^¥¥[¥¥]]+¥¥])|(¥"[^¥"]+¥")|([^ ]+)"; "(¥ [[^¥ "(¥ [[^¥ ]]+¥ ])|(¥"[^¥"]+¥ ]]+¥ ])|(¥"[^¥"]+¥}} 大括弧で ダブルクォートで スペース区切 括られた部分 括られた部分{{ for (i = 1; i <= NF; i++) { for (i = 1; i <= NF; i++) { print "Item " i " = " $i; print "Item " i " = " $i; } }}} 大括弧のエスケープに注意してください。 短い。分かりやすい (?)
11.
デモ デモします。
gensub() 関数を用いた例。 FPAT を用いた例。 どうでしょうか?
12.
応用例CSV ファイルでも FPAT
は使えます。 FPAT = "([^,]+)|(¥"[^¥"]+¥")"; ただし、改行を含むものは使えません。 小さな努力で大きな成果を生み出す。
13.
まとめ Apache のログは
gawk4 でやろう。 時間があれば、おまけをやります。
14.
おまけ gawk でスタートスクリプトを書こう。
変数のデフォルト設定の書き方。 switch 文の使い方。 RETVAL の取得方法。 gawk ならできるよ
15.
おまけBEGIN {BEGIN {
# デフォルト変数 の代入には条件演算子が便利 デフォルト変数 代入には条件演算子が 変数の # デフォルト変数の代入には条件演算子が便利 デフォルト変数 代入には条件演算子が 変数の には条件演算子 には条件演算子 cmd = ENVIRON["cmd"] ? ENVIRON["cmd"] : "ls "; ENVIRON["cmd"] ENVIRON["cmd"] "ls ENVIRON["cmd"] ENVIRON["cmd"] "ls ls"; cmd = ENVIRON["cmd"] ? ENVIRON["cmd"] : "ls"; ls"; # gawk4 では switch 文も使えます # gawk4 では switch 文も使えます switch (ARGV[1]) { switch (ARGV[1]) { case "start": case "start": start_prog(cmd); start_prog(cmd); start_prog(cmd); start_prog(cmd); break; break; default: default: exit 0; exit 0; } }}}コンパイルオプションで gawk3 でも利用可能。
16.
おまけfunction start_prog(cmd) {function
start_prog(cmd) { start_prog(cmd) start_prog(cmd) # system() 関数は戻り値を返す (ただし OS 依存) # system() 関数は 戻り値を返す (ただし OS 依存) 関数は 関数は 依存) 依存) RETVAL = system(cmd); RETVAL = system(cmd); system(cmd); system(cmd); if (RETVAL != 0) { if (RETVAL != 0) { print "Error." > "/dev/stderr "; stderr"; print "Error." > "/dev/stderr"; "/dev/stderr stderr"; "/dev/stderr exit RETVAL; exit RETVAL; } }}} Shell よりも分かりやすいかも?
17.
おまけ awk は
Unix の「純文学」です。 いろいろなところで便利に使っていきましょう。 ご清聴ありがとうございました。
Download
[8]
ページ先頭
©2009-2025
Movatter.jp