Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
LT会:普段お世話になってるStackTraceと少しだけ向き合ってみる
Search
Yuto
May 14, 2025
Technology
83
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
LT会:普段お世話になってるStackTraceと少しだけ向き合ってみる
Yuto
May 14, 2025
More Decks by Yuto
See All by Yuto
自分の言葉で伝える
tsukamoto1783
0
4
画像のリサイズ関数の裏側では何が起きている?
tsukamoto1783
0
23
「ラストエリクサー症候群」からの脱却~ 持ってるアイテム温存するだけで眠らせてませんか? ~
tsukamoto1783
0
32
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
340
【超入門】AR 技術の"さわり"だけ学んでみる
tsukamoto1783
0
33
MCPサーバーって結局何ができるの?
tsukamoto1783
0
40
初使用の技術スタックで、 ミニマルなアプリケーションを 2日で作る
tsukamoto1783
0
91
アクセシビリティ対応について考えよう
tsukamoto1783
0
36
Flutterのすヽめ
tsukamoto1783
0
34
Other Decks in Technology
See All in Technology
⾮構造化データを価値に変える AI エージェント基盤とその組織
ivry_presentationmaterials
0
110
夫婦で子育てするための育児標準化
codmoninc
PRO
0
190
大型犬好きによるPugの紹介
yamanoku
1
140
DGX Spark でどこまでハッキングができるのか?
kash1064
0
790
AI時代だからこそ推したい!Gitコマンド再入門
munakata
0
180
LocalStack を使ったサーバーレスアプリケーション開発 / Serverless Development with LocalStack
kakakakakku
1
400
事業成長とデータ活用を止めないためのマネジメントへ挑戦
hiracky16
0
280
Kiro Crewをはじめよう
kizawa2020
1
140
二歩目のフロントエンド・ウェブアクセシビリティ
camiha
2
380
しろおびから始める!ログ活用の第一歩
shumei_ito
0
900
10年後、Engineering 行為を剥奪されるとして、わたしたちは、どう、何を創ればいいだろうか。 / If Engineering Is Taken Away in 10 Years, How and What Should We Create?
bitkey
PRO
1
110
使いこなすために知っておきたい Azure SRE Agent アンチパターン
torumakabe
2
480
Featured
See All Featured
Making Projects Easy
brettharned
120
6.8k
How GitHub (no longer) Works
holman
316
150k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
67k
Exploring anti-patterns in Rails
aemeredith
4
530
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
280
Fantastic passwords and where to find them - at NoRuKo
philnash
53
4k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.5k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
50
10k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
530
Optimising Largest Contentful Paint
csswizardry
37
4k
First, design no harm
axbom
PRO
2
1.3k
Everyday Curiosity
cassininazir
0
350
Transcript
普段お世話になってる StackTraceと少しだけ向き合ってみる ~ログに関するTips LT会~
目次 • はじめに • StackTrace とは • StackTrace の役割 •
StackTrace と Log の違い
はじめに StackTrace について、こんなこと一度は感じたことありませんか? • コンソールに大量のエラー内容が表示されて煩わしい • 英語の長文が出てきて、見る前からアレルギー反応 • 見方がいまいち分かっていない •
ログの1種だろう、で、それ以下もそれ以上も考えたことない
はじめに StackTrace について、こんなこと一度は感じたことありませんか? • コンソールに大量のエラー内容が表示されて煩わしい • 英語の長文が出てきて、見る前からアレルギー反応 • 見方がいまいち分かっていない •
ログの1種だろう、で、それ以下もそれ以上も考えたことない エンジニアである以上、今後もずっと付き合うことになる StackTrace について、 少しだけ向き合ってみましょう。
目次 • はじめに • StackTrace とは • StackTrace の役割 •
StackTrace と Log の違い
StackTrace とは StackTrace とは、ざっくり一言で言うと、 “エラー発生時点までの処理の呼び出し履歴” です。
StackTrace とは StackTrace とは、ざっくり一言で言うと、 “エラー発生時点までの処理の呼び出し履歴” です。 • stack ≒ 積み重ね
• trace ≒ 跡、形跡 +
目次 • はじめに • StackTrace とは • StackTrace の役割 •
StackTrace と Log の違い
StackTrace の役割 StackTrace の主な役割・メリット • エラー発生箇所の迅速な特定 • 処理の流れの可視化 • デバッグ効率の向上
• 根本原因特定の手がかり • etc.
StackTrace の役割 StackTrace の簡単な例
StackTrace の役割 StackTrace の簡単な例 Error: Bad state: 'str' is null
StackTrace: #0 main.<anonymous closure>.processString (file:///Users/<Path>/test/stacktrace_test.dart:7:9) #1 main.<anonymous closure>.main (file:///Users/<Path>/test/stacktrace_test.dart:16:9) #2 main.<anonymous closure> (file:///Users/<Path>/test/stacktrace_test.dart:23:5) #3 Declarer.test.<anonymous closure>.<anonymous closure> (package:test_api/src/backend/declarer.dart:215:19) #4 Declarer.test.<anonymous closure> (package:test_api/src/backend/declarer.dart:213:7) #5 Invoker._waitForOutstandingCallbacks.<anonymous closure> (package:test_api/src/backend/invoker.dart:258:9)
StackTrace の役割 StackTrace の簡単な例 Error: Bad state: 'str' is null
StackTrace: #0 main.<anonymous closure>.processString (file:///Users/<Path>/test/stacktrace_test.dart:7:9) #1 main.<anonymous closure>.main (file:///Users/<Path>/test/stacktrace_test.dart:15:9) #2 main.<anonymous closure> (file:///Users/<Path>/test/stacktrace_test.dart:22:5) #3 Declarer.test.<anonymous closure>.<anonymous closure> (package:test_api/src/backend/declarer.dart:215:19) #4 Declarer.test.<anonymous closure> (package:test_api/src/backend/declarer.dart:213:7) #5 Invoker._waitForOutstandingCallbacks.<anonymous closure> (package:test_api/src/backend/invoker.dart:258:9)
StackTrace の役割 StackTrace の簡単な例 StackTraceを読み解くことで、 エラー箇所の特定を助け、 問題箇所の修正をするための情報源に。 Error: Bad state:
'str' is null StackTrace: #0 main.<anonymous closure>.processString (file:///Users/<Path>/test/stacktrace_test.dart:7:9) #1 main.<anonymous closure>.main (file:///Users/<Path>/test/stacktrace_test.dart:15:9) #2 main.<anonymous closure> (file:///Users/<Path>/test/stacktrace_test.dart:22:5) #3 Declarer.test.<anonymous closure>.<anonymous closure> (package:test_api/src/backend/declarer.dart:215:19) #4 Declarer.test.<anonymous closure> (package:test_api/src/backend/declarer.dart:213:7) #5 Invoker._waitForOutstandingCallbacks.<anonymous closure> (package:test_api/src/backend/invoker.dart:258:9)
目次 • はじめに • StackTrace とは • StackTrace の役割 •
StackTrace と Log の違い
StackTrace と Log の違い 「StackTraceとLogとの違いは?」
StackTrace と Log の違い 「StackTraceとLogとの違いは?」 StackTrace は、エラー発生時の呼び出し履歴であり、自動で取得できる。 Log は、システムの広範な活動記録であり、意図した仕込みが必要。 ※
StackTrace を Log に含めることも一般的ですが、 「StackTrace = Logの一部」ではないことは注意。 Stack Trace Time stamp user Id event Id url Log
StackTrace と Log の違い 【StackTrace】 • 目的 • プログラムの実行中に発生したエラーや例外が、どのような処理の経路をたどって発生した のかを特定すること
• 取得内容 • エラーや例外が発生した時点の、プログラムの呼び出し履歴(時系列) • どのクラスの、どのメソッドでエラーが発生したかどうか • ファイル名と行番号 • ライブラリやフレームワーク側の実行履歴 • 用途 • 不具合解析(デバッグ):不具合箇所・不具合原因の特定 • 処理の流れの把握:コード理解に一部有効
StackTrace と Log の違い 【Log】 • 目的 • システムやアプリケーションの “動作状況、イベント、状態の変化”
などを記録し、後から 参照できるようにすること • 取得内容 • アプリケーションの動作に関する情報(ex. ログイン、データの作成・更新) • システムの状態に関する情報( ex. CPU使用率、メモリ使用量、ネットワークの状態) • エラーや警告などの情報 • ログレベルの設定により、記録する情報の粒度を調整可能 • 用途 • 運用監視: システムが正常に動作しているかなどの監視 • 障害調査: 問題が発生した際、その前後の状況を把握して原因特定 • セキュリティ監査:アクセスや操作の記録を残し、不正アクセスや操作の追跡 • 利用状況分析: ユーザーの行動や利用状況を分析・改善に利用 • デバッグ: 開発中にデバッグに利用
StackTrace と Log の違い StackTraceとLog の違いざっくりまとめ • Stack Trace: •
用途:エラー発生時の原因特定、処理の流れの把握 • 取得契機:エラー発生時 • Log: • 用途:エラーの原因特定、通常動作時の”監視・分析”などで幅広く参照 • 取得契機:意図的に仕込んだ箇所
まとめ • StackTrace とは • エラー発生時点までの処理の呼び出し履歴 • StackTrace の役割 •
エラー発生時、原因箇所の迅速な特定 • StackTrace と Log の違い • Stack Trace:エラー発生時の原因特定 • Log: エラーの原因特定、通常動作時の”監視・分析”などで幅広く参照
おわり 基本的な内容が多かったとは思いますが、 たまには「初心忘るべからず」ということで、基本的だけど大事な機能 について、改めてフォーカスを当ててみました。 他にも基本だけどなんとなくで使ってる機能(仕組み)があると思うので、 時には立ち止まって彼らに目を向けて見るのも良いかもしれません。 (目を向けた際は是非LT等で教えてください。)
ご清聴ありがとうございました。