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
Wprowadzenie do DTrace
Search
Tomasz
June 06, 2009
Technology
140
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Wprowadzenie do DTrace
Wykład dla BLUG.
Tomasz
June 06, 2009
More Decks by Tomasz
See All by Tomasz
The Song of JBoss and Chef
ttorcz
0
220
Home, Smart Home
ttorcz
0
360
FreeIPA: zintegrowane zarządzanie użytkownikami
ttorcz
0
270
systemd – ściągawka
ttorcz
0
190
Solaris? meh.
ttorcz
0
140
systemd: wymyślmy jeszcze jedno koło
ttorcz
0
220
Podziel się wiedzą: systemd
ttorcz
0
86
Wirtualizacja od podszewki
ttorcz
0
360
Zastosowanie swarmingu do dystrybucji danych
ttorcz
0
110
Other Decks in Technology
See All in Technology
AIエージェントを安全で速い現場監督にする:Jev・Obsidian・メタハーネス
x5gtrn
PRO
0
140
【データ横丁主催】AI Agentがコンテキストを使って仕事をした後、何が残るのか― 組織の経験を次の判断に引き継ぐ「Agent Memory」
shisyu_gaku
2
260
Making AI Agents Safe and Fast- Jev, Obsidian, and the Meta-Harness
x5gtrn
PRO
0
160
企業の現実世界をグラフで写し取る
sansantech
PRO
0
200
高負荷プロダクション環境におけるAWS Lambdaのリアル 〜スケールとコストを左右する実行ライフサイクルの技術仕様〜
maimyyym
2
820
AIは推し活である。
kurazuuuuuu
2
1k
React Nativeでの OTA Updateって、 どう説明する?
ichiki1023
0
110
BedrockとLambdaで作る リアルタイム進行型推理ゲーム
kawametho
0
110
雪かき部 #7 もう怖くない!SELECT文!
foursue
0
200
Azure Copilot Resiliency Agentをいろいろ試してみる
tomokusaba
0
140
The kernel report
ennael
PRO
1
140
Coil3を内部実装から読み解く~キャッシュ戦略とAVIF画像の描画〜/nikkei-tech-talk50
nikkei_engineer_recruiting
0
170
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
225
10k
Optimising Largest Contentful Paint
csswizardry
37
4k
Into the Great Unknown - MozCon
thekraken
41
2.7k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
250
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
540
Balancing Empowerment & Direction
lara
6
1.3k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.4k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.2k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
Designing for Timeless Needs
cassininazir
1
510
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Test your architecture with Archunit
thirion
2
2.4k
Transcript
Wprowadzenie do DTrace Tomasz Torcz <
[email protected]
> Bydgoszcz 6.06.2009 Massagetherapyfoundation, http://www.flickr.com/photos/8206128@N06/512560597/
Plan akcji • *ja* • czym właściwie jest DTrace •
jak może się przydać • hands-on • SystemTap
Dynamic Tracing • systemowa komisja śledcza • ( ) ★
★ ★ ★ ★ Euro NCAP • język D • histogramy, agregacje • Solaris (styczeń 2005), FreeBSD, Mac OS X
Co można śledzić • sąsiada • wywołania systemowe • funkcje
jądra i sterowników • wywołania I/O • żonę sąsiada • blokady
Prezentacja dowodów • podliczenia • agregacje • histogramy • back
trace
Jak • koszernie #! /usr/sbin/dtrace -s syscall:::entry /pid == 1000/
{ @c[probefunc] = count(); } • perliście dtrace -n 'syscall:::entry/pid==1000/{@c[probename]=count();}'
Przez granicę syscalli
Informacja z aplikacji • USDT • coś mądrego o transakcjach
(bazy danych) • PHP, Ruby, Python • Xen
vIH legh • choQ gnochwI' • (★★★★★) DivI' NCAP •
Hol D • ngoqDe', chel • Hov (wen 2005), FreeBSD, naHnagh OS X
vIH legh
#pragma D option destructive BEGIN { self->interested =0; } proc:::exec-success
/(execname =="rm") && (self->interested == 0) && (dirname(curpsinfo->pr_psargs) != " { self->interested = 1 ; printf("Someone is trying to delete %s\n",dirname(curpsinfo->pr_psargs +3)); printf("%s %d",dirname(curpsinfo->pr_psargs+3),timestamp); printf("Snapshotting %s %d",dirname(curpsinfo->pr_psargs+3),timestamp); system("/usr/sbin/zfs snapshot rpool%s@%d",dirname(curpsinfo->pr_psargs+3),times stop(); system("prun %d", pid); }
... • PowerTop • tcpdump • usbmon • blktrace •
bootchart – any program chart
Drób arktyczny • First rule of … • Second rule
of … • http://www.crisp.demon.co.uk/blog/ • kranik • ½ roku
Dziękuję za uwagę.