PMIECONF(1) General Commands Manual PMIECONF(1)

pmieconf - نمایش و تنظیم متغیرهای قابل‌پیکربندی قواعد pmie

pmieconf [-cFv?] [-f file] [-r rulepath] [command [args...]]

ابزار pmieconf ابزاری برای مشاهده و پیکربندی متغیرهای حاصل از قواعد تعمیم‌یافته pmie(1) است. مجموعه قواعد تعمیم‌یافته از rulepath خوانده می‌شود، و file خروجی تولیدشده توسط pmieconf یک فایل ورودی معتبر برای pmie است.

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

هنگام اجرا از طریق فرآیندهای راه‌اندازی خودکار pmie، این گزینه برای افزودن یک پیام مشخص و برچسب زمانی به منظور مشخص کردن این وضعیت به کار می‌رود. مگر اینکه توسط فلگ -f بازنویسی شود، فایل پیکربندی پیش‌فرضی که در صورت مشخص شدن فلگ -c و اجرای pmieconf توسط کاربر ریشه (root) نوشته یا به‌روزرسانی می‌شود، $PCP_VAR_DIR/config/pmie/config.default است. این فایل همچنین فایل پیکربندی پیش‌فرض استفاده‌شده توسط سرویس pmie است، به pmie_daily(1) مراجعه کنید. این فلگ هنگام استفاده تعاملی از ابزار مناسب نیست.
هرگونه تغییر در قواعد که ناشی از دستکاری مقادیر متغیرها توسط pmieconf باشد، در file نوشته خواهد شد. مقدار پیش‌فرض file به شناسه کاربر (user ID) وابسته است - برای کاربر ریشه (هنگامی که فلگ -c نیز داده نشده باشد، بالا را ببینید) این فایل $PCP_SYSCONF_DIR/pmie/config.default است. برای سایر کاربران پیش‌فرض $HOME/.pcp/pmie/config.pmie است.
ایجاد (یا به‌روزرسانی) file خروجی pmieconf را اجبار می‌کند، که پس از آن pmieconf بلافاصله خارج می‌شود.
امکان تغییر منبع قواعد تعمیم‌یافته pmie را فراهم می‌کند - rulepath فهرستی جداشده با دونقطه از فایل‌های قواعد و/یا زیردایرکتوری‌های pmieconf(5) است. مقدار پیش‌فرض برای rulepath برابر با $PCP_VAR_DIR/config/pmieconf است. استفاده از این گزینه متغیر محیطی PMIECONF_PATH را که عملکردی مشابه دارد بازنویسی می‌کند.
فعال‌سازی حالت پرگویی (verbose). متغیرهای مرتبط با قواعد نمایش داده خواهند شد. این فهرست کامل متغیرهایی است که بر هر قاعده مشخص تأثیر می‌گذارند (به طور پیش‌فرض، متغیرهای سراسری همراه با قاعده نمایش داده نمی‌شوند).
-?, --help
نمایش پیام راهنما و خروج.

دستورهای command در pmieconf امکان نمایش یا تغییر اطلاعات مربوط به قواعد گوناگون و متغیرهای قابل‌پیکربندی را فراهم می‌کنند. اگر هیچ command مربوط به pmieconf در خط فرمان مشخص نشده باشد، pmieconf دستورها را به صورت تعاملی درخواست می‌کند.

زبان command در pmieconf در اینجا شرح داده شده است:

بدون آرگومان، دستور help نحو تمام دستورهای موجود در pmieconf را نمایش می‌دهد. با یک آرگومان، شرح یک یا چند مورد از قواعد تعمیم‌یافته نمایش داده می‌شود. با دو آرگومان، شرح یک متغیر خاص مربوط به یک یا چند مورد از قواعد تعمیم‌یافته نمایش می‌یابد.
نمایش نام و خلاصه‌ای کوتاه برای تمام قواعد تعمیم‌یافته یافت‌شده در rulepath. هر یک از نام‌های قواعد می‌تواند به جای کلمه کلیدی <rule> در توصیف نحو این دستور استفاده شود. گزینه‌های enabled و disabled می‌توانند برای فیلتر کردن مجموعه قواعد نمایش‌داده‌شده تنها به مواردی که به ترتیب فعال یا غیرفعال هستند، به کار روند.
نمایش نام تمامی گروه‌های قواعدی که در rulepath یافت شده‌اند. هر یک از نام‌های گروه‌ها می‌تواند به جای کلمه کلیدی <group> در این توصیف نحو دستور به کار رود، که دستور را روی تمامی قواعد درون گروه قواعد اعمال می‌کند.
نمایش اطلاعات وضعیت مربوط به نشست فعلی pmieconf، شامل فهرستی از فرآیندهای در حال اجرای pmie که اکنون از file استفاده می‌کنند.
قاعده یا گروه قواعد مشخص‌شده را فعال می‌کند. یک قاعده فعال قاعده‌ای است که در فایل پیکربندی pmie تولیدشده توسط pmieconf گنجانده خواهد شد. هر «کنش» (action) فعال‌شده مطابق با نحو pmie به «گزاره» (predicate) قاعده الحاق خواهد شد (کنش‌ها را می‌توان با استفاده از دستور list global که در زیر شرح داده شده مشاهده کرد).
قاعده یا گروه قواعد مشخص‌شده را غیرفعال می‌کند. اگر قاعده پیش‌تر فعال بوده باشد، از فایل پیکربندی pmie تولیدشده توسط pmieconf حذف خواهد شد، و در نتیجه هنگامی که pmie مجدداً راه‌اندازی شود دیگر ارزیابی نخواهد شد (استفاده از pmieconf روی فرآیندهای فعال فعلی pmie که از file استفاده می‌کنند تأثیری ندارد).
نمایش مقادیر برای یک متغیر قاعده خاص؛ یا برای تمام متغیرهای یک قاعده، یک گروه قاعده، تمام قواعد، یا متغیرهای سراسری (global).
فعال‌سازی، غیرفعال‌سازی یا تغییر مقدار یک یا چند متغیر قاعده. این مقدار باید با نوع متغیر سازگار باشد، که می‌توان آن را از ساختار مقدار چاپ‌شده دریافت - برای نمونه رشته‌ها در دابل‌کوتیشن قرار می‌گیرند، درصدها نماد «%» به آن‌ها الحاق شده است و غیره. توجه داشته باشید که برخی متغیرهای قواعد را نمی‌توان از طریق pmieconf تغییر داد - برای مثال «predicate» و «help».
تنها برای متغیری کاربرد دارد که مقدار آن دستکاری شده باشد - این command صرفاً به مقدار پیش‌فرض متغیر مشخص بازمی‌گردد.
ذخیره تمامی تغییرات ایجادشده در file و سپس خروج از pmieconf.
خروج فوری از pmieconf بدون ذخیره تغییرات در file.

هر یک از دستورهای بالا را می‌توان با استفاده از نویسه اول نام دستور، و همچنین «?» برای راهنما خلاصه کرد.

استفاده از کلمه کلیدی all موجب اعمال دستور روی تمامی قواعد می‌شود. کلمه کلیدی global به متغیرهایی اشاره دارد که بر تمام قواعد اعمال می‌شوند. چنین متغیرهایی را می‌توان به صورت سراسری یا محلی تغییر داد، برای مثال:

pmieconf> modify global delta "5 minutes"
pmieconf> modify memory delta "1 minute"

باعث می‌شود تمامی قواعد اکنون هر پنج دقیقه یک‌بار ارزیابی شوند، به جز قواعد موجود در گروه «memory» که باید یک‌بار در هر دقیقه ارزیابی شوند.

نویسه «.» برای pmieconf ویژه است - این نویسه به آخرین مقدار موفقیت‌آمیز استفاده‌شده از all، global، <rule> یا <group> اشاره دارد.

مشخص کردن اینکه تمام قواعد موجود در گروه «memory» باید ارزیابی شوند:

pmieconf> modify memory enabled yes

تغییر نظر و بازگشت به استفاده از تنها قواعد «memory» که به طور پیش‌فرض فعال بودند:

pmieconf> undo memory enabled

مشخص کردن اینکه اعلان قواعدی که مقدار آن‌ها درست (true) ارزیابی می‌شود باید به syslogd(1) فرستاده شود:

pmieconf> modify global syslog_action yes

مشخص کردن اینکه قواعد موجود در گروه «per_cpu» باید از مقدار holdoff متفاوتی نسبت به سایر قواعد استفاده کنند:

  pmieconf> help global holdoff
    rule: global  [generic parameters applied to all rules]
     var: holdoff
    help: Once the predicate is true and the action is executed,
	  this variable allows suppression of further action
	  execution until the specified interval has elapsed.
	  A value of zero enables execution of the action if
	  the rule predicate is true at the next sample. Default
	  units are seconds and common units are "second", "sec",
	  "minute", "min" and "hour".
  pmieconf> modify per_cpu holdoff "1 hour"

کاهش آستانه (threshold) مرتبط با متغیری خاص برای قاعده‌ای مشخص:

  pmieconf> l cpu.syscall predicate
    rule: cpu.syscall  [High aggregate system call rate]
      predicate =
	      some_host (
		  ( kernel.all.syscall $hosts$ )
		    > $threshold$ count/sec * hinv.ncpu $hosts$
	      )
  pmieconf> m . threshold 7000
  pmieconf> l . threshold
    rule: cpu.syscall  [High aggregate system call rate]
	    threshold = 7000

$PCP_VAR_DIR/config/pmieconf/*/*
قواعد تعمیم‌یافته نظارت بر منابع سیستم
$PCP_SYSCONF_DIR/pmie/config.pmie
تنظیمات پیش‌فرض کاربر ارشد برای قواعد نظارت بر منابع سیستم
$HOME/.pcp/pmie/config.pmie
تنظیمات پیش‌فرض کاربر برای قواعد نظارت بر منابع سیستم

متغیر محیطی PMIECONF_PATH عملکردی مشابه گزینه -r توصیف‌شده در بالا دارد، و اگر تنظیم شده باشد در صورتی که گزینه -r ارائه نشده باشد استفاده خواهد شد.

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

PCPIntro(1), pmie(1), pmie_check(1) و pmieconf(5).

PCP Performance Co-Pilot