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

biosnoop.bt - ابزار ردیابی ورودی/خروجی بلوکی، با نمایش تاخیر هر ورودی/خروجی. استفاده از bpftrace/eBPF.

biosnoop.bt

این یک ابزار پایه‌ای ردیابی ورودی/خروجی بلوکی (ورودی/خروجی دیسک) است که هر رویداد ورودی/خروجی را به همراه شناسه فرایند صادرکننده و میزان تاخیر ورودی/خروجی نشان می‌دهد. این ابزار می‌تواند برای بررسی مشکلات کارایی ورودی/خروجی دیسک استفاده شود.

این ابزار در حال حاضر با ردیابی پویای توابع هسته blk_account*() کار می‌کند، که برای تطابق با هرگونه تغییر در این توابع در نسخه‌های آینده هسته نیازمند به‌روزرسانی خواهد بود.

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

CONFIG_BPF و bpftrace.

ردیابی رویدادهای ورودی/خروجی بلوکی، با چاپ خلاصه‌های خط‌به‌خط:
# biosnoop.bt

زمان تکمیل ورودی/خروجی، بر حسب میلی‌ثانیه از زمان شروع برنامه.
شماره‌های اصلی (Major) و فرعی (Minor) دستگاه دیسک.
نام فرایند صادرکننده. این مورد اغلب فرایند برنامه صادرکننده را مشخص می‌کند، اما ورودی/خروجی ممکن است تنها از رشته‌های هسته آغاز شده باشد.
شناسه فرایند صادرکننده. این مورد اغلب فرایند برنامه صادرکننده را مشخص می‌کند، اما ورودی/خروجی ممکن است تنها از رشته‌های هسته آغاز شده باشد.
میزان تاخیر به ازای هر ورودی/خروجی.

از آنجا که ورودی/خروجی دستگاه بلوکی معمولاً بسامد نسبتاً پایینی دارد (کمتر از ۱۰٬۰۰۰ در ثانیه)، انتظار می‌رود بار پردازشی این ابزار ناچیز باشد. برای سامانه‌های ذخیره‌سازی با IOPS بالا، پیش از استفاده آزمایش و ارزیابی کمّی انجام دهید.

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

https://github.com/bpftrace/bpftrace

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

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

https://github.com/iovisor/bcc

Linux

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

Brendan Gregg

opensnoop.bt(8)

2018-09-11 USER COMMANDS