IBQUERYERRORS(8) OpenIB Diagnostics IBQUERYERRORS(8)

ibqueryerrors - پرس‌وجو و گزارش شمارنده‌های خطای درگاه IB

ibqueryerrors [گزینه‌ها]

رفتار پیش‌فرض، گزارش شمارنده‌های خطای درگاه است که برای هر درگاه در ساختار شبکه (fabric)، از یک مقدار آستانه معین فراتر می‌روند. مقدار آستانه پیش‌فرض صفر (0) است. فیلدهای خطا را می‌توان به‌طور کامل نیز نادیده گرفت (سرکوب کرد).

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

-s, --suppress <err1,err2,...> خطاهای مشخص‌شده در فهرست ارائه‌شده که با کاما از هم جدا شده‌اند را نادیده می‌گیرد (سرکوب می‌کند).

-c, --suppress-common برخی از شمارنده‌های رایج «اثر جانبی» را نادیده می‌گیرد. این شمارنده‌ها معمولاً نشان‌دهنده وضعیت خطا نیستند و در اکثر مواقع می‌توان با اطمینان از آن‌ها چشم‌پوشی کرد.

-r, --report-port اطلاعات درگاه را گزارش می‌دهد. این اطلاعات شامل LID، درگاه، درگاه خارجی (در صورت وجود)، تنظیمات سرعت پیوند، GUID راه دور، درگاه راه دور، درگاه خارجی راه دور (در صورت وجود) و اطلاعات شرح گره راه دور است.

--data شمارنده‌های اختیاری داده‌های ارسالی و دریافتی را نیز شامل می‌شود.

--threshold-file <filename> یک فایل آستانه جایگزین را مشخص می‌کند. پیش‌فرض /etc/infiniband-diags/error_thresholds است.

--switch داده‌ها را فقط برای سوییچ‌ها چاپ می‌کند

--ca داده‌ها را فقط برای CAها (تطبیق‌دهنده‌های کانال) چاپ می‌کند

--skip-sl از sl پیش‌فرض برای پرس‌وجوها استفاده می‌کند. هنگام استفاده از موتور مسیریابی آگاه از کیفیت خدمات (QoS)، استفاده از این گزینه توصیه نمی‌شود زیرا می‌تواند باعث بن‌بست اعتباری (credit deadlock) شود.

--router داده‌ها را فقط برای مسیریاب‌ها چاپ می‌کند

--clear-errors -k پس از خواندن، شمارنده‌های خطا را پاک می‌کند.

--clear-counts -K پس از خواندن، شمارنده‌های داده را پاک می‌کند.

هشدار: پاک کردن شمارنده‌های داده یا خطا بدون در نظر گرفتن اینکه چاپ شوند یا خیر اتفاق می‌افتد. برای جزئیات مربوط به کنترل اینکه کدام شمارنده‌ها چاپ شوند، --counters و --data را ببینید.

--details شامل جزئیات خطاهای دریافتی و بسته‌های دور ریخته‌شده ارسالی (transmit discard) می‌شود

--counters فقط شمارنده‌های داده را چاپ می‌کند

گره مورد نظر برای شروع پویش جزئی را می‌توان با آدرس‌های زیر مشخص کرد.

--port-guid, -G <port_guid> یک port_guid را مشخص می‌کند

-D, --Direct <dr_path> آدرس مشخص‌شده یک مسیر هدایت‌شده (directed route) است

مثال‌ها:
   -D "0"          # درگاه خود گره (self port)
   -D "0,1,2,1,4"  # خروج از طریق درگاه ۱، سپس ۲، ...
   (توجه داشته باشید که عدد دوم در مسیر مشخص‌شده باید با درگاه مورد استفاده
   مطابقت داشته باشد. این مقدار را می‌توان با فلگ انتخاب درگاه '-P' یا
   درگاه پیداشده از طریق فرآیند انتخاب خودکار مشخص کرد.)

نکته: برای سوییچ‌ها، نتایج برای همه درگاه‌ها چاپ می‌شوند، نه فقط درگاه ۰ سوییچ.

-S <port_guid> همانند "-G" عمل می‌کند (تنها برای سازگاری با نسخه‌های پیشین ارائه شده است).

--load-cache <filename> داده‌های ذخیره‌شده کش ibnetdiscover در فایل مشخص‌شده را بارگذاری و استفاده می‌کند. این گزینه می‌تواند برای خروجی گرفتن و کسب اطلاعات درباره ساختارهای دیگر یا وضعیت پیشین یک ساختار شبکه مفید باشد.

-C, --Ca <ca_name> از ca_name مشخص‌شده استفاده می‌کند.

-P, --Port <ca_port> از ca_port مشخص‌شده استفاده می‌کند.

نمایه جدول P_Key (از 0-65535، پیش‌فرض 0) که برای MADهای خروجی SA/GMP استفاده می‌شود. بسته‌های MAD از نوع SMP (شامل مسیر هدایت‌شده SMI / مسیریابی‌شده با LID) همواره از نمایه P_Key برابر با 0 استفاده می‌کنند.

پشتیبانی از چند درگاه / چند CA: زمانی که هیچ دستگاه یا درگاه IB مشخص نشده باشد (بخش «پارامترهای محلی umad» را در زیر ببینید)، کتابخانه libibumad درگاه مورد استفاده را بر اساس معیارهای زیر انتخاب می‌کند:

1.
نخستین درگاهی که در وضعیت ACTIVE (فعال) باشد.
2.
در صورت پیدا نشدن، نخستین درگاهی که در وضعیت UP (پیوند فیزیکی برقرار) باشد.

اگر نام درگاه یا CA مشخص شده باشد، کتابخانه libibumad تلاش می‌کند درخواست کاربر را برآورده سازد و در صورتی که ممکن نباشد، با شکست مواجه می‌شود.

برای مثال:

ibaddr                 # استفاده از نخستین درگاه (معیار شماره ۱ در بالا)
ibaddr -C mthca1       # انتخاب بهترین درگاه فقط از "mthca1"
ibaddr -P 2            # استفاده از دومین درگاه (active/up) از نخستین دستگاه IB موجود
ibaddr -C mthca0 -P 2  # استفاده انحصاری از درگاه مشخص‌شده

--config, -z <config_file> فایل پیکربندی جایگزین را مشخص می‌کند.

پیش‌فرض: /etc/infiniband-diags/ibdiag.conf
تعداد SMPهای معوق (outstanding) که باید در طول پویش صادر شوند را مشخص می‌کند.

پیش‌فرض: 2

--node-name-map <node-name-map> یک نگاشت نام گره را مشخص می‌کند.

این فایل GUIDها را به نام‌های کاربرپسندتر نگاشت می‌کند. بخش «فایل‌ها (FILES)» را ببینید.

-t, --timeout <timeout_ms> مهلت زمانی پیش‌فرض را برای MADهای تقاضاشده لغو و مقدار جدید تعیین می‌کند.

از M_key مشخص‌شده برای درخواست‌ها استفاده می‌کند. اگر مقداری غیرعددی (مانند 'x') مشخص شود، مقدار مورد نظر از کاربر درخواست خواهد شد.

سطح اشکال‌زدایی IB را افزایش می‌دهد. می‌تواند چندین بار استفاده شود (-ddd یا -d -d -d).
نمایش خطاهای ارسال و دریافت (اتمام مهلت زمانی و سایر موارد)

-h, --help نمایش پیام راهنما

سطح پرگویی برنامه را افزایش می‌دهد. می‌تواند چندین بار استفاده شود (-vv یا -v -v -v)

-V, --version اطلاعات نگارش را نمایش می‌دهد.

-R (این گزینه منسوخ شده است و هیچ کاری انجام نمی‌دهد)

-1 در صورتی که پویش شکست بخورد.

0 در صورتی که پویش بدون خطاهای فراتر از آستانه با موفقیت انجام شود.

1 در صورتی که خطاهای فراتر از آستانه یافت شوند یا در حالت بررسی ناهماهنگی‌هایی پیدا شود.

/etc/infiniband-diags/error_thresholds

مقادیر آستانه برای خطاها را تعریف می‌کند. قالب فایل به‌صورت ساده "name=val" است. توضیحات با '#' آغاز می‌شوند.

مثال:

# تعیین آستانه‌ها برای شمارنده‌های خطا
SymbolErrorCounter=10
LinkErrorRecoveryCounter=10
VL15Dropped=100

/etc/infiniband-diags/ibdiag.conf

یک فایل پیکربندی سراسری برای تنظیم برخی از گزینه‌های مشترک برای همه ابزارها ارائه شده است. برای جزئیات به فایل پیکربندی ارائه‌شده مراجعه کنید.

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

این قابلیت توسط بسته opensm-libs ارائه شده است. برای محل فایل در نصب خود به opensm(8) مراجعه کنید.

به‌طور کلی:

# توضیحات
<guid> "<name>"

مثال:

# IB1
# کارت‌های خط (Line cards)
0x0008f104003f125c "IB1 (Rack 11 slot 1   ) ISR9288/ISR9096 Voltaire sLB-24D"
0x0008f104003f125d "IB1 (Rack 11 slot 1   ) ISR9288/ISR9096 Voltaire sLB-24D"
0x0008f104003f10d2 "IB1 (Rack 11 slot 2   ) ISR9288/ISR9096 Voltaire sLB-24D"
0x0008f104003f10d3 "IB1 (Rack 11 slot 2   ) ISR9288/ISR9096 Voltaire sLB-24D"
0x0008f104003f10bf "IB1 (Rack 11 slot 12  ) ISR9288/ISR9096 Voltaire sLB-24D"
# ستون‌های اصلی (Spines)
0x0008f10400400e2d "IB1 (Rack 11 spine 1   ) ISR9288 Voltaire sFB-12D"
0x0008f10400400e2e "IB1 (Rack 11 spine 1   ) ISR9288 Voltaire sFB-12D"
0x0008f10400400e2f "IB1 (Rack 11 spine 1   ) ISR9288 Voltaire sFB-12D"
0x0008f10400400e31 "IB1 (Rack 11 spine 2   ) ISR9288 Voltaire sFB-12D"
0x0008f10400400e32 "IB1 (Rack 11 spine 2   ) ISR9288 Voltaire sFB-12D"
# GUID   Node Name
0x0008f10400411a08 "SW1  (Rack  3) ISR9024 Voltaire 9024D"
0x0008f10400411a28 "SW2  (Rack  3) ISR9024 Voltaire 9024D"
0x0008f10400411a34 "SW3  (Rack  3) ISR9024 Voltaire 9024D"
0x0008f104004119d0 "SW4  (Rack  3) ISR9024 Voltaire 9024D"

< <ira.weiny@intel.com> >
2016-09-26