Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
一日の終わりに、晩酌しながら眺めたいシステムログの世界
Search
Shuma
May 18, 2025
Programming
0
77
一日の終わりに、晩酌しながら眺めたいシステムログの世界
5月18日 Hackers' Meetup #11 LTスライド
Shuma
May 18, 2025
Tweet
Share
More Decks by Shuma
See All by Shuma
阿部寛のホームページをSRE観点で改善出来るか考えてみた。
shubox
0
76
プロダクトがクローズした話
shubox
0
27
今も熱いもの!魂を揺さぶる戦士の儀式:マオリ族のハカ
shubox
0
240
信頼性工学とは? ~カツオを題材に~
shubox
0
92
バージョン管理と人生設計の類似点ver2 -リポジトリから学ぶ生きるヒント-
shubox
0
270
バージョン管理と人生設計の類似点
shubox
0
120
今年を振り返り、来年の抱負
shubox
0
260
インフラエンジニアが活きる組織、活きない組織って?
shubox
0
200
少し早いけど、今年を振り返ります。。
shubox
0
120
Other Decks in Programming
See All in Programming
CloudNative Days Winter 2025: 一週間で作る低レイヤコンテナランタイム
ternbusty
7
1.5k
AIと協働し、イベントソーシングとアクターモデルで作る後悔しないアーキテクチャ Regret-Free Architecture with AI, Event Sourcing, and Actors
tomohisa
2
2.6k
Reactive Thinking with Signals and the new Resource API
manfredsteyer
PRO
0
100
「正規表現をつくる」をつくる / make "make regex"
makenowjust
1
630
高単価案件で働くための心構え
nullnull
0
150
自動テストを活かすためのテスト分析・テスト設計の進め方/JaSST25 Shikoku
goyoki
3
700
カンファレンス遠征を(安く)楽しむ技術
wp_daisuke
0
170
オフライン対応!Flutterアプリに全文検索エンジンを実装する @FlutterKaigi2025
itsmedreamwalker
2
220
Honoを技術選定したAI要件定義プラットフォームAcsimでの意思決定
codenote
0
250
Tangible Code
chobishiba
3
570
TVerのWeb内製化 - 開発スピードと品質を両立させるまでの道のり
techtver
PRO
3
1.1k
FlutterKaigi 2025 システム裏側
yumnumm
0
1.1k
Featured
See All Featured
Producing Creativity
orderedlist
PRO
348
40k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Fireside Chat
paigeccino
41
3.7k
GitHub's CSS Performance
jonrohan
1032
470k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Faster Mobile Websites
deanohume
310
31k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Context Engineering - Making Every Token Count
addyosmani
9
400
Transcript
一日の終わりに、晩酌しながら眺めたいシステムログの世界 @ShuShuShuBOOOx
自己紹介 $ whoami:Shuma $ id: uid=1337(shuma) gid=42(engineers) groups=42(engineers),1001(sysadmins),1002(devs) $ history
| grep "career":# 飲食店店長 → スポーツバー → インフラエンジニア (IT二社目) $ cat ~/.bash_aliases | grep "favorite" alias favorite_tasks="echo '障害対応、監視周り、原因調査 '" $ cat ~/.tech_stack.json | jq . { "cloud": ["AWS", "Google Cloud"], "languages": ["PHP (Laravel)", "Python"], "current_study": "IaC (Terraform)" }
今宵のお品書き 🍢 お通し: ログを「つまみ」として見る新しい視点 🍶 本日のおすすめ三種 : • ① 🥟
カーネルログの刺身盛り合わせ • ② 🍲 アプリケーションログの煮込み • ③ 🌶 セキュリティログの辛味和え 🥢 お好みの食べ方 : ログ分析のちょっとした技 🎵 宴もたけなわに : 明日から使えるログの楽しみ方 🏮 締めの一杯 : エンジニアの晩酌タイム
お通し:ログを「つまみ」として見る新しい視点 普段のログとの付き合い方 • ❌ エラーが出たときだけ見る • ❌ アラートが鳴ったら確認する • ❌
「早く解決して帰りたい」と思いながら見る 今日ご紹介する付き合い方 • ✅ システムの「声」として耳を傾ける • ✅ パターンの中に「美味しい発見」を探す • ✅ リラックスして「味わう」気持ちで眺める
① カーネルログの刺身盛り合わせ お品書き • 鮮度が命 : システム起動直後の新鮮なメッセージ • 繊細な味わい :
ハードウェアとOSの対話の痕跡 • 職人の技 : カーネル開発者の設計思想が垣間見える おすすめの飲み方 🍶 純米大吟醸 : 繊細な香りと軽やかな味わいで、カーネルの微妙な動きを感じ取る
カーネルログの楽しみ方(こんな楽しみ方はいかが?) # 起動時の「デバイス発見物語」を追う $ dmesg | grep -i "detected\|found" |
ccze -A # カーネルの小言(警告メッセージ)を集める $ dmesg | grep -i "warning" | ccze -A # USBの抜き差しドラマを観察 $ dmesg | grep -i "usb" | tail -30 | ccze -A 「へぇ、こんなデバイスが繋がってたんだ ...」
② アプリケーションログの煮込み 〜じっくりと時間をかけて、旨みを引き出す〜 お品書き • 具だくさん : ユーザーアクション、システム応答、エラーが混在 • 煮込むほどに深まる味
: 時間をかけて見ると見えてくるパターン • 隠し味: エラースタックの奥に隠れた真因 おすすめの飲み方 🍺 クラフトIPA: ほろ苦さと複雑さを持ち、長いエラースタックトレースの解読に最適
アプリケーションログの楽しみ方 # HTTPステータスコードの「今日の気分」 $ cat /var/log/nginx/access.log | cut -d '"'
-f3 | cut -d ' ' -f2 | sort | uniq -c | sort -rn # 「迷子になったユーザー」を探す( 404エラーの宝探し) $ grep " 404 " /var/log/nginx/access.log | cut -d '"' -f2 | sort | uniq -c | sort -rn | head -10 # スローページの「おしゃべり大会」 $ grep -v "200" /var/log/app/production.log | grep "Completed" | sort -k1,8
③ セキュリティログの辛味和え 〜ピリッとした刺激が病みつきに〜 お品書き • 辛さの中毒性 : 攻撃パターンの観察が癖になる • 複雑な香辛料
: 多様な侵入試行とテクニック • 後から効いてくる : 一見無害に見えて実は重大な前兆 おすすめの飲み方 🥃 黒糖焼酎 : 力強い味わいで、セキュリティの脅威と向き合う勇気が湧いてくる
セキュリティログの楽しみ方 # 「しつこい訪問者」ランキング $ grep "Failed password" /var/log/auth.log | awk
'{print $11}' | sort | uniq -c | sort -nr | head -5 # 「世界の国からこんにちは」攻撃元マップ $ grep "Failed password" /var/log/auth.log | awk '{print $11}' | sort | uniq | xargs -I{} geoiplookup {} | sort | uniq -c | sort -nr # 「怪しい時間」の訪問者を探す(深夜の侵入者) $ grep "Failed password" /var/log/auth.log | grep "03:" | ccze -A
お好みの食べ方:ログ分析のちょっとした技 味の調整テクニック • 彩り豊かに : ccze -A や lnav でカラー表示
• 薄味で: | head -20 で少量ずつ味わう • 香り付け : | grep -v "DEBUG" で邪魔な香りを除去 • 盛り付け : パイプラインで必要な情報だけ取り出す
宴もたけなわに:明日から使えるログの楽しみ方 「ログ観察」を日常に取り入れる • 朝の儀式: コーヒーを飲みながら昨日のエラーログをチェック • 昼休みの楽しみ : アクセスログでユーザー行動の「小説」を読む •
夕方の習慣 : セキュリティログで今日の攻撃パターンをチェック
締めの一杯:エンジニアの晩酌タイム モニターの明かりだけが照らす部屋で、キーボードをそっと置いて、グラスを手に取る 今日も無事に動いているシステムに乾杯 そして端末を開き、静かにコマンドを打つ “tail -f /var/log/app.log | grep -v
"DEBUG" | ccze -A “ 流れるログの色彩に目を細め、一日の物語を追う これはエンジニアだけの、特別な晩酌の時間
乾杯の言葉 システムの健康と、発見の喜びに ──
ご清聴ありがとうございました。