dcsnoop.bt(8) System Manager's Manual dcsnoop.bt(8)

dcsnoop.bt - ردیابی جستجوهای حافظه نهان ورودی دایرکتوری (dcache). استفاده از bpftrace/eBPF.

dcsnoop.bt

به‌طور پیش‌فرض، این ابزار تمام جستجوهای dcache را ردیابی کرده و فرآیند انجام‌دهنده جستجو و نام پرونده درخواستی را نمایش می‌دهد.

خروجی این ابزار می‌تواند پرحجم باشد و برای بررسی‌های دقیق‌تر کارایی dcache فراتر از dcstat(8) که خلاصه‌های ثانیه‌ای چاپ می‌کند، طراحی شده است.

این ابزار از ردیابی پویای هسته برای تابع ()d_lookup استفاده می‌کند و در صورت هرگونه تغییر در این تابع، نیاز به به‌روزرسانی خواهد داشت.

از آنجا که این ابزار از BPF استفاده می‌کند، تنها کاربر ریشه (root) می‌تواند آن را اجرا کند.

CONFIG_BPF و bcc.

ردیابی تمام جستجوهای dcache:
# dcsnoop.bt

زمان جستجو به میلی‌ثانیه.
شناسه فرآیند.
نام فرآیند.
نوع: R == ارجاع (reference)، M == عدم تطابق (miss). در صورت miss دو خط چاپ می‌شود، یکی برای ارجاع و دیگری برای miss.
جزئی از نام پرونده که در حال جستجو بود. این بخش شامل اجزای بعدی مسیر پرونده (پس از '/') است که موضوع جستجوهای بعدی خواهند بود.

جستجوهای نام پرونده می‌توانند بسیار مکرر باشند (بسته به بار کاری سیستم)، و این ابزار برای هر جستجوی ناموفق و همراه با -a برای هر ارجاع نیز یک خط چاپ می‌کند. خروجی ممکن است پرحجم باشد و بار پردازشی تحمیل‌شده، اگرچه تا حدی بهینه‌سازی شده، ممکن است از محسوس تا قابل توجه باشد. استفاده از این ابزار واقعاً تنها برای بررسی‌های عمیق‌تر فراتر از dcstat(8) و در مواقع ضروری در نظر گرفته شده است. پیش از استفاده در محیط عملیاتی، بار پردازشی را در یک محیط آزمایشی اندازه‌گیری و ارزیابی کنید.

این ابزار برگرفته از bpftrace است.

https://github.com/bpftrace/bpftrace

همچنین در توزیع bpftrace به پرونده همراه _examples.txt شامل نمونه‌های استفاده، خروجی و توضیحات این ابزار مراجعه کنید.

این نسخه bpftrace از ابزار bcc با همین نام است. ابزار bcc ممکن است گزینه‌ها و قابلیت‌های سفارشی‌سازی بیشتری ارائه دهد.

https://github.com/iovisor/bcc

Linux

ناپایدار - در حال توسعه.

Brendan Gregg

dcstat(8)

2018-09-08 USER COMMANDS