PCP2INFLUXDB(1) General Commands Manual PCP2INFLUXDB(1)

pcp2influxdb - صادرکننده معیارهای کارایی از PCP به InfluxDB

pcp2influxdb [-CGHIjLnrRvV?] [-4 action] [-8|-9 limit] [-a archive] [-A align] [--archive-folio folio] [-b|-B space-scale] [-c config] [--container container] [-D debug] [--daemonize] [-e derived] [-E password] [-g server] [-h host] [-i instances] [-J rank] [-K spec] [-N predicate] [-O origin] [-P|-0 precision] [-q|-Q count-scale] [-s samples] [-S starttime] [-t interval] [-T endtime] [-U username] [-x database] [-X tags] [-y|-Y time-scale] metricspec [...]

pcp2influxdb ابزاری قابل‌سفارشی‌سازی برای صدور معیارهای کارایی از PCP به InfluxDB است. هر معیار کارایی موجود، به‌صورت زنده یا بایگانی‌شده، سیستمی یا برنامه‌ای، می‌تواند با استفاده از آرگومان‌های خط فرمان یا یک فایل پیکربندی برای صدور انتخاب شود.

دستور pcp2influxdb از خویشاوندان نزدیک pmrep(1) است. برای شرح metricspec پذیرفته‌شده در خط فرمان pcp2influxdb به pmrep(1) مراجعه کنید. برای شرح ساختار نحوی فایل پیکربندی pcp2influxdb.conf به pmrep.conf(5) مراجعه نمایید. این صفحه گزینه‌های اختصاصی pcp2influxdb و تفاوت‌های فایل پیکربندی آن با pmrep.conf(5) را شرح می‌دهد. همچنین pmrep(1) نمونه‌های کاربردی متعددی را فهرست می‌کند که بیشتر آن‌ها برای pcp2influxdb نیز قابل استفاده هستند.

تنها گزینه‌های خط فرمانی که در این صفحه فهرست شده‌اند پشتیبانی می‌شوند؛ سایر گزینه‌های موجود برای pmrep(1) پشتیبانی نمی‌شوند.

گزینه‌های تعیین‌شده از طریق مقادیر متغیرهای محیطی (نگاه کنید به pmGetOptions(3)) بر مقادیر پیش‌فرض توکار متناظر (در صورت وجود) اولویت دارند. گزینه‌های فایل پیکربندی بر متغیرهای محیطی متناظر (در صورت وجود) مقدم هستند. گزینه‌های خط فرمان نیز بر گزینه‌های متناظر در فایل پیکربندی (در صورت وجود) برتری دارند.

pcp2influxdb از یک فایل پیکربندی با ساختار نحوی شرح داده‌شده در pmrep.conf(5) استفاده می‌کند. گزینه‌های زیر با pmrep.conf مشترک هستند: version، source، speclocal، derived، header، globals، samples، interval، type، type_prefer، ignore_incompat، names_change، instances، live_filter، rank، limit_filter، limit_filter_force، invert_filter، predicate، omit_flat، precision، precision_force، count_scale، count_scale_force، space_scale، space_scale_force، time_scale، time_scale_force. سایر گزینه‌های pmrep.conf شناسایی می‌شوند اما به منظور سازگاری نادیده گرفته خواهند شد..SS گزینه‌های اختصاصی pcp2influxdb influx_server (string)

سرور InfluxDB مقصد را مشخص می‌کند. گزینه خط فرمان معادل -g است. پیش‌فرض http://127.0.0.1:8086 است.

influx_db (string)

پایگاه‌داده سنجه‌ها را مشخص می‌کند. گزینه خط فرمان معادل -x است. پیش‌فرض pcp است.

influx_user (string)

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

influx_pass (string)

گذرواژه پایگاه‌داده را مشخص می‌کند. گزینه خط فرمان معادل -E است. به‌طور پیش‌فرض تعریف‌نشده است (هیچ تلاشی برای احراز هویت صورت نمی‌گیرد).

influx_tags (string)

رشته‌ای از برچسب‌ها را جهت افزودن به سنجه‌ها مشخص می‌کند. گزینه خط فرمان معادل -X است. به‌طور پیش‌فرض تعریف‌نشده است.

گزینه‌های دردسترس خط فرمان عبارتند از:

-0 precision, --precision-force=precision
مشابه -P است، اما این گزینه مشخصات اختصاصی هر سنجه را بازنویسی خواهد کرد.
-4 action, --names-change=action
مشخص می‌کند که هنگام دریافت رویداد تغییر نام سنجه در حین نمونه‌برداری، چه action (اقدامی) انجام شود. این رویدادها زمانی رخ می‌دهند که یک PMDA مدتی پس از راه‌اندازی، سنجه‌های جدیدی را شناسایی کرده و به ابزارهای کلاینت در حال اجرا مانند pcp2influxdb اطلاع دهد. مقادیر معتبر برای action عبارتند از update (تازه‌سازی سنجه‌های در حال نمونه‌برداری)، ignore (انجام ندادن هیچ کاری - رفتار پیش‌فرض) و abort (خروج از برنامه در صورت وقوع چنین رویدادی).
-5, --ignore-unknown
هر نام سنجه‌ای را که قابل حل‌وفصل نباشد، بدون هشدار نادیده می‌گیرد. برای شروع به کار ابزار، باید دست‌کم یک سنجه پیدا شود.
-8 limit, --limit-filter=limit
نتایج را به نمونه‌هایی با مقادیر بالاتر/پایین‌تر از limit محدود می‌کند. یک عدد صحیح مثبت، نمونه‌هایی با مقادیر برابر یا بیشتر از حد را در گزارش لحاظ می‌کند. یک عدد صحیح منفی، نمونه‌هایی با مقادیر برابر یا کمتر از حد را در گزارش لحاظ می‌کند. مقدار صفر هیچ‌گونه فیلتر محدودیتی اعمال نمی‌کند. این گزینه مشخصات احتمالی اختصاصی هر سنجه را بازنویسی نخواهد کرد. همچنین ببینید: -J و -N.
-9 limit, --limit-filter-force=limit
مشابه -8 است، اما این گزینه مشخصات اختصاصی هر سنجه را بازنویسی خواهد کرد.
مقادیر سنجه‌های کارایی از مجموعه فایل‌های بایگانی Performance Co-Pilot (PCP) که با آرگومان archive مشخص شده‌اند، بازیابی می‌شوند؛ این آرگومان فهرستی از نام‌هاست که با کاما از هم جدا شده‌اند و هر یک از آن‌ها می‌تواند نام پایه یک بایگانی یا نام دایرکتوری حاوی یک یا چند بایگانی باشد.
نمونه اولیه را وادار می‌کند تا با مرز یک واحد زمانی طبیعی align هم‌تراز شود. برای شرح کامل نحو مربوط به align، به PCPIntro(1) مراجعه کنید.
بایگانی‌های منبع سنجه را از folio بایگانی PCP که توسط ابزارهایی مانند pmchart(1) یا در مواردی نادرتر، به‌طور دستی با mkaf(1) ایجاد شده است، می‌خواند.
واحد/مقیاس برای سنجه‌های فضا (بایت)؛ مقادیر ممکن شامل bytes، Kbytes، KB، Mbytes، MB و موارد مشابه است. این گزینه مشخصات احتمالی اختصاصی هر سنجه را بازنویسی نخواهد کرد. همچنین ببینید: pmParseUnitsStr(3).
مشابه -b است، اما این گزینه مشخصات اختصاصی هر سنجه را بازنویسی خواهد کرد.
فایل یا دایرکتوری config مورد استفاده را مشخص می‌کند. در صورتی که config یک دایرکتوری باشد، تمام فایل‌های درون آن که به .conf ختم می‌شوند، لحاظ خواهند شد. پیش‌فرض، نخستین مورد یافت‌شده از میان موارد زیر است: ./pcp2influxdb.conf، $HOME/.pcp2influxdb.conf، $HOME/pcp/pcp2influxdb.conf و $PCP_SYSCONF_DIR/pcp2influxdb.conf. برای جزئیات بیشتر، بخش بالا و pmrep.conf(5) را ببینید.
سنجه‌های کارایی را از container مشخص‌شده، به‌صورت محلی یا از راه دور واکشی می‌کند (ببینید: -h).
پیش از گزارش هرگونه مقدار، اما پس از تجزیه پیکربندی و سنجه‌ها و چاپ سرآیندهای احتمالی، از برنامه خارج می‌شود.
هنگام راه‌اندازی، به‌صورت دیمن (در پس‌زمینه) اجرا می‌شود.
سنجه‌های کارایی مشتق‌شده را مشخص می‌کند. اگر derived با یک اسلش (``/'') یا با یک نقطه (``.'') آغاز شود، به‌عنوان یک فایل پیکربندی سنجه‌های مشتق‌شده PCP تفسیر خواهد شد، در غیر این صورت به‌صورت عبارت‌های سنجه مشتق‌شده که با کاما یا نقطه-ویرگول از هم جدا شده‌اند، تفسیر می‌شود. برای شرح کامل سنجه‌های مشتق‌شده و فایل‌های پیکربندی سنجه‌های مشتق‌شده PCP، به pmLoadDerivedConfig(3) و pmRegisterDerived(3) مراجعه کنید. همچنین، استفاده از نحو پیکربندی pmrep.conf(5) امکان تعریف سنجه‌های مشتق‌شده را به‌عنوان بخشی از مجموعه‌سنجه‌ها (metricsets) فراهم می‌کند.

در صورت بروز مشکل در سنجه‌های مشتق‌شده، صفحات راهنمای یادشده را به‌دقت بررسی کنید و مطمئن شوید تمام سنجه‌های مورد نیاز در دسترس هستند، به‌ویژه هنگام استفاده از بایگانی‌ها. برای مشاهده اطلاعات اشکال‌زدایی بیشتر درباره تجزیه سنجه‌های مشتق‌شده، از -Dderive استفاده کنید.

گذرواژه پایگاه‌داده را مشخص می‌کند.
سرور مقصد InfluxDB.
سنجه‌های سراسری را در گزارش لحاظ نمی‌کند (ببینید: pmrep.conf(5)).
سنجه‌های کارایی را به‌جای localhost پیش‌فرض، از pmcd(1) روی host واکشی می‌کند.
هیچ سرآیندی را چاپ نمی‌کند.
تنها نمونه‌های سنجه مشخص‌شده را بازیابی و گزارش می‌کند. به‌طور پیش‌فرض، همه نمونه‌ها، چه فعلی و چه در آینده، گزارش می‌شوند. برای توضیحات کامل این گزینه به pmrep(1) مراجعه کنید.

نادیده‌گرفتن معیارهای ناسازگار. به‌طور پیش‌فرض معیارهای ناسازگار (یعنی نوع آن‌ها پشتیبانی نمی‌شود یا طبق درخواست نمی‌توان آن‌ها را مقیاس‌بندی کرد) باعث می‌شوند pcp2influxdb با یک پیام خطا متوقف شود. با این گزینه، تمام معیارهای ناسازگار در سکوت و بدون اعلام خطا از گزارش حذف می‌شوند. این مورد به‌ویژه هنگام درخواست گره‌های غیربرگ (non-leaf) درخت PMNS برای گزارش‌گیری مفید است.
انجام پالایش زندهٔ نمونه‌ها (live filtering). این قابلیت امکان دریافت تمام نمونه‌های نام‌گذاری‌شده را فراهم می‌کند، حتی اگر فرآیندها در مقطعی مجدداً راه‌اندازی شوند (برخلاف حالت بدون فیلتر زنده). انجام پالایش زنده روی تعداد بسیار زیادی از نمونه‌ها مقداری بار اضافی (overhead) داخلی تحمیل می‌کند، بنابراین احتیاط کاربر توصیه می‌شود. همچنین ببینید -n.
محدود کردن نتایج به بالاترین/پایین‌ترین نمونه‌های رتبه‌بندی‌شده بر اساس rank در معیارهای چندمقداری (set-valued). یک عدد صحیح مثبت، نمونه‌های دارای بالاترین مقدار را در گزارش لحاظ می‌کند. یک عدد صحیح منفی، نمونه‌های دارای کمترین مقدار را در گزارش لحاظ می‌کند. مقدار صفر هیچ رتبه‌بندی‌ای انجام نمی‌دهد. رتبه‌بندی به معنای مرتب‌سازی نیست، ببینید -6. همچنین ببینید -8.
هنگام دریافت معیارها از یک بافت محلی (ببینید -L)، گزینهٔ -K می‌تواند برای کنترل DSO PMDAهایی که باید قابل دسترس شوند استفاده شود. آرگومان spec از نحو شرح داده‌شده در pmSpecLocalPMDA(3) پیروی می‌کند. می‌توان بیش از یک گزینهٔ -K را مشخص کرد.
استفاده از یک بافت محلی برای جمع‌آوری معیارها از DSO PMDAها روی میزبان محلی بدون PMCD. همچنین ببینید -K.
انجام رتبه‌بندی پیش از پالایش زنده. به‌طور پیش‌فرض، پالایش زندهٔ نمونه‌ها (در صورت درخواست، ببینید -j) پیش از رتبه‌بندی نمونه‌ها (در صورت درخواست، ببینید -J) انجام می‌شود. با این گزینه، این منطق معکوس شده و رتبه‌بندی پیش از پالایش زنده انجام می‌پذیرد.
مشخص کردن فهرستی از معیارهای مرجع پالایش گزاره (predicate) که با کاما جدا شده‌اند. به‌طور پیش‌فرض رتبه‌بندی (ببینید -J) برای هر معیار به‌طور جداگانه انجام می‌شود. با گزاره‌ها، رتبه‌بندی فقط برای معیارهای گزارهٔ مشخص‌شده انجام می‌گیرد. هنگام گزارش‌گیری، باقی معیارهایی که دامنهٔ نمونهٔ (instance domain) یکسان (ببینید PCPIntro(1)) با گزاره دارند، تنها شامل بالاترین/پایین‌ترین نمونه‌های رتبه‌بندی‌شدهٔ گزارهٔ متناظر خواهند بود. رتبه‌بندی به معنای مرتب‌سازی نیست، ببینید -6.

بنابراین برای مثال، استفاده از proc.memory.rss (اندازهٔ حافظهٔ مقیم فرآیند) به‌عنوان معیار predicate همراه با proc.io.total_bytes و mem.util.used به‌عنوان معیارهایی که باید گزارش شوند، باعث می‌شود تنها فرآیندهایی که بیشترین/کمترین حافظه را (طبق -J) مصرف می‌کنند هنگام گزارش مجموع بایت‌های نوشته‌شده توسط فرآیندها لحاظ شوند. از آنجا که mem.util.used یک معیار تک‌مقداری است (و در نتیجه دامنهٔ نمونهٔ یکسانی با معیارهای مرتبط با فرآیند ندارد)، طبق روال معمول گزارش خواهد شد.

هنگام گزارش معیارهای بایگانی‌شده، شروع گزارش‌گیری از origin درون پنجرهٔ زمانی (ببینید -S و -T). برای شرح کامل نحو origin به PCPIntro(1) مراجعه کنید.
استفاده از precision برای دقت اعشار مقادیر غیرصحیح در خروجی. حالت پیش‌فرض استفاده از ۳ رقم اعشار است (در صورت امکان). این گزینه مشخصات احتمالیِ تعیین‌شده به‌ازای هر معیار را لغو نمی‌کند.
واحد/مقیاس برای معیارهای شمارشی؛ مقادیر ممکن شامل count x 10^-1، count، count x 10، count x 10^2، و به همین ترتیب از 10^-8 تا 10^7. (این مقادیر در حال حاضر به فاصله‌ها حساس هستند.) این گزینه مشخصات احتمالی تعیین‌شده به‌ازای هر معیار را لغو نمی‌کند. همچنین ببینید pmParseUnitsStr(3).
مشابه -q با این تفاوت که این گزینه مشخصات به‌ازای هر معیار را لغو خواهد کرد.
خروجی دادن مقادیر خام معیار و عدم تبدیل شمارنده‌های تجمعی به نرخ (rate). این گزینه مشخصات احتمالی به‌ازای هر معیار را لغو خواهد کرد.
مشابه -r با این تفاوت که این گزینه مشخصات به‌ازای هر معیار را لغو نمی‌کند.
آرگومان samples تعداد نمونه‌هایی را که باید دریافت و گزارش شوند مشخص می‌کند. اگر samples برابر 0 باشد یا -s تعیین نشده باشد، pcp2influxdb به‌طور پیوسته نمونه‌برداری و گزارش می‌دهد (در حالت بی‌درنگ یا real time) یا تا انتهای مجموعه بایگانی‌های PCP ادامه می‌دهد (در حالت بایگانی یا archive). همچنین ببینید -T.
هنگام گزارش معیارهای بایگانی‌شده، گزارش به رکوردهایی محدود خواهد شد که در زمان starttime یا پس از آن ثبت شده‌اند. برای توضیحات کامل دربارهٔ نحو starttime به PCPIntro(1) مراجعه کنید.
تنظیم interval (بازهٔ زمانی) گزارش‌گیری به مقداری غیر از مقدار پیش‌فرض ۱ ثانیه. آرگومان interval از نحو شرح داده‌شده در PCPIntro(1) پیروی می‌کند و در ساده‌ترین شکل می‌تواند یک عدد صحیح بدون علامت باشد (واحد پیش‌فرض در این حالت ثانیه است). همچنین گزینهٔ -T را ببینید.
هنگام گزارش معیارهای بایگانی‌شده، گزارش به رکوردهایی محدود خواهد شد که پیش از endtime یا در همان زمان ثبت شده‌اند. برای توضیحات کامل نحو endtime به PCPIntro(1) مراجعه کنید.

هنگامی که برای تعیین مدت زمان اجرا پیش از خروج pcp2influxdb استفاده می‌شود، اگر هیچ samples تعیین نشده باشد (ببینید -s)، تعداد نمونه‌های گزارش‌شده به interval بستگی دارد (ببینید -t). اگر samples مشخص شده باشد، interval تنظیم می‌شود تا امکان گزارش samples نمونه در طول مدت اجرا فراهم گردد. در صورتی که تمام گزینه‌های -T، -s و -t مشخص شده باشند، endtime مدت زمان اجرای نهایی pcp2influxdb را تعیین می‌کند. -U username, --db-user=username username پایگاه‌داده را مشخص می‌کند.

تنها معیارهای مجموعه‌مقداری دارای نمونه (مانند disk.dev.read) را گزارش کرده و معیارهای تک‌مقداری «مسطح» بدون نمونه (مانند kernel.all.sysfork) را نادیده می‌گیرد. گزینه‌های -i و -I را ببینید.
نمایش شماره نسخه و خروج.
نام database (پایگاه‌داده) معیارها را مشخص می‌کند.
رشته‌هایی از tags (برچسب‌ها) را برای افزودن به معیارها مشخص می‌کند.
واحد/مقیاس برای معیارهای زمانی؛ مقادیر مجاز شامل nanosec، ns، microsec، us، millisec، ms و به همین ترتیب تا hour، hr است. این گزینه مشخصات احتمالی اختصاصی هر معیار را بازنویسی نمی‌کند. همچنین ببینید: pmParseUnitsStr(3).
مشابه -y است، اما این گزینه مشخصات اختصاصی هر معیار را بازنویسی خواهد کرد.
-?, --help
نمایش پیام راهنما و خروج.

فایل پیکربندی pcp2influxdb (نگاه کنید به -c)
$PCP_SYSCONF_DIR/pmrep/*.conf
فایل‌های پیکربندی پیش‌فرض pmrep ارائه‌شده توسط سیستم

متغیرهای محیطی با پیشوند PCP_ برای تعیین پارامترهای نام فایل‌ها و دایرکتوری‌های مورد استفاده PCP به کار می‌روند. در هر نصب، فایل /etc/pcp.conf حاوی مقادیر محلی برای این متغیرها است. متغیر $PCP_CONF می‌تواند برای مشخص کردن یک فایل پیکربندی جایگزین استفاده شود، همان‌طور که در pcp.conf(5) شرح داده شده است.

برای متغیرهای محیطی مؤثر بر ابزارهای PCP، به pmGetOptions(3) مراجعه کنید.

به‌ویژه، متغیر PCP_DISCRETE_ONCE را می‌توان برای اطمینان از اینکه مقادیر معیارهای گسسته تنها یک بار گزارش می‌شوند تنظیم کرد، مگر اینکه در مقطعی تغییر کنند.

گزینه -D یا --debug خروجی عیب‌یابی تکمیلی را روی stderr فعال می‌کند تا به تفکیک و اولویت‌بندی مشکلات کمک کند، اگرچه اطلاعات گاهی مبهم است و در وهله اول برای راهنمایی توسعه‌دهندگان در نظر گرفته شده است تا کاربران نهایی. debug فهرستی از گزینه‌های اشکال‌زدایی جداشده با کاما است؛ از pmdbg(1) همراه با گزینه -l استفاده کنید تا فهرستی از گزینه‌های اشکال‌زدایی موجود و معانی آن‌ها به دست آید.

PCPIntro(1)، mkaf(1)، pcp(1)، pcp2elasticsearch(1)، pcp2graphite(1)، pcp2json(1)، pcp2spark(1)، pcp2xlsx(1)، pcp2xml(1)، pcp2zabbix(1)، pmcd(1)، pminfo(1)، pmrep(1)، pmGetOptions(3)، pmLoadDerivedConfig(3)، pmParseUnitsStr(3)، pmRegisterDerived(3)، pmSpecLocalPMDA(3)، LOGARCHIVE(5)، pcp.conf(5)، pmrep.conf(5) و PMNS(5).

PCP Performance Co-Pilot