این دستور pt-stalkp است که می تواند در ارائه دهنده هاست رایگان OnWorks با استفاده از یکی از چندین ایستگاه کاری آنلاین رایگان ما مانند Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا شود.
برنامه:
نام
pt-stalk - جمع آوری داده های پزشکی قانونی در مورد MySQL در صورت بروز مشکلات.
خلاصه
استفاده: pt-stalk [OPTIONS]
pt-stalk منتظر می ماند تا یک وضعیت ماشه رخ دهد، سپس داده ها را برای کمک به تشخیص جمع آوری می کند
چالش ها و مسائل. این ابزار به گونه ای طراحی شده است که به عنوان یک شبح با امتیازات روت اجرا شود تا بتوانید
مشکلات متناوب را که نمی توانید مستقیماً مشاهده کنید، تشخیص دهید. همچنین می توانید از آن استفاده کنید
یک فرمان سفارشی را اجرا کنید، یا برای جمعآوری دادهها در صورت تقاضا بدون اینکه منتظر ماشه باشید
به وقوع پیوستن.
خطرات
Percona Toolkit بالغ است، در دنیای واقعی اثبات شده است، و به خوبی آزمایش شده است، اما همه پایگاه داده است
ابزارها می توانند برای سیستم و سرور پایگاه داده خطر ایجاد کنند. قبل از استفاده از این ابزار،
لطفا:
· اسناد ابزار را بخوانید
· بررسی "BUGS" شناخته شده ابزار
· ابزار را روی یک سرور غیر تولیدی تست کنید
· از سرور تولید خود نسخه پشتیبان تهیه کنید و پشتیبان گیری را تأیید کنید
شرح
گاهی اوقات یک مشکل به ندرت و برای مدت کوتاهی اتفاق می افتد و به شما فرصتی برای دیدن نمی دهد
سیستم زمانی که اتفاق می افتد. چگونه مشکلات متناوب MySQL را در حالی که نمی توانید حل کنید؟
آنها را مشاهده کنید؟ به همین دلیل است که pt-stalk وجود دارد. علاوه بر استفاده از آن زمانی که شناخته شده وجود دارد
مشکل در سرورهای شما، ایده خوبی است که pt-stalk را همیشه اجرا کنید، حتی زمانی که شما
فکر کن هیچ چیز اشتباه نیست هنگام بروز مشکل از داده هایی که جمع آوری می کند قدردانی خواهید کرد،
زیرا مشکلاتی مانند قفل شدن MySQL یا افزایش فعالیت ها معمولاً هیچ مدرکی باقی نمی گذارد
برای استفاده در تجزیه و تحلیل علت اصلی
pt-stalk دو کار انجام می دهد: یک سرور MySQL را تماشا می کند و منتظر یک شرط ماشه است
رخ می دهد، و داده های تشخیصی را هنگامی که آن محرک رخ می دهد جمع آوری می کند. برای جلوگیری از مثبت کاذب
ناشی از مشکلات کوتاه مدت، شرط ماشه باید حداقل "--cycles" درست باشد
بارها قبل از اینکه "--collect" فعال شود.
برای استفاده موثر از pt-stalk، باید یک ماشه خوب تعریف کنید. یک محرک خوب است
به اندازه کافی حساس است که در هنگام بروز مشکل به طور قابل اعتماد شلیک کند تا فرصتی را از دست ندهید
برای حل مشکلات. از سوی دیگر، یک محرک خوب مستعد مثبت کاذب نیست، بنابراین
وقتی سرور به طور معمول کار می کند، اطلاعاتی را جمع آوری نمی کنید.
قابل اعتمادترین محرک برای MySQL تعداد اتصالات به سرور است.
و تعداد پرس و جوهایی که به طور همزمان اجرا می شوند. اینها در SHOW GLOBAL موجود هستند
دستور STATUS به صورت Threads_connected و Threads_running. گاهی اوقات Threads_connected است
شاخص قابل اعتمادی برای مشکل نیست، اما Threads_running معمولاً اینطور است. شغل شما، به عنوان
کاربر ابزار، این است که یک شرط ماشه مناسب برای ابزار تعریف کند. انتخاب کنید
با دقت، زیرا کیفیت نتایج شما به محرکی که انتخاب می کنید بستگی دارد.
شما ماشه را با "--function"، "--variable"، "--threshold" و "--cycles" تعریف می کنید.
گزینه ها. مقادیر پیشفرض برای این گزینهها یک ماشه معقول را تعریف میکنند، اما شما باید
آنها را مطابق با سیستم و نیازهای خاص خود تنظیم یا تغییر دهید.
بهطور پیشفرض، ابزار pt-stalk MySQL را برای همیشه تماشا میکند تا زمانی که تریگر رخ دهد، سپس جمعآوری میکند.
داده های تشخیصی را برای مدتی انجام می دهد و پس از آن می خوابد تا از جمع آوری مکرر داده ها جلوگیری شود
ماشه درست باقی می ماند ترتیب کلی عملیات به شرح زیر است:
در حالی که درست است؛ انجام دادن
اگر --متغیر از --function > --threshold; سپس
cycles_true++
if cycles_true >= --cycles; سپس
-- از طریق ایمیل اطلاع دهید
اگر -- جمع آوری سپس
اگر ---disk-bytes-free و --disk-pct-free ok; سپس
(--جمع آوری برای --ثانیه زمان اجرا) و
fi
فایلهای rm در -- قدیمیتر از ---retain-time هستند
fi
iter++
cycles_true=0
fi
if iter < --iterations; سپس
خواب -- ثانیه خواب
دیگر
شکستن
fi
دیگر
if iter < --iterations; سپس
خواب --ثانیه فاصله
دیگر
شکستن
fi
fi
انجام شده
rm قدیمی --dest فایل های قدیمی تر از --retain-time
اگر فرآیند --collect هنوز در حال اجرا باشد. سپس
تا --run-time * 3 ثانیه صبر کنید
تمام فرآیندهای باقیمانده را بکشید
fi
دادههای تشخیصی روی فایلهایی نوشته میشوند که نام آنها با مهر زمانی شروع میشود، بنابراین میتوانید
در صورتی که ابزار چندین بار داده ها را جمع آوری کند، نمونه ها را از یکدیگر متمایز کنید. در
ابزار pt-sift برای کمک به مرور و تجزیه و تحلیل نمونه های داده به دست آمده طراحی شده است.
اگرچه این به اندازه کافی ساده به نظر می رسد، اما در عمل تعدادی ظرافت وجود دارد، مانند
تشخیص زمانی که دیسک شروع به پر شدن می کند تا ابزار باعث ایجاد سرور نشود
تا فضای دیسک تمام شود. این ابزار این نوع مشکلات بالقوه را مدیریت می کند، بنابراین یک
ایده خوبی است که به جای نوشتن چیزی از ابتدا و احتمالاً از این ابزار استفاده کنید
تجربه برخی از خطرات که این ابزار برای اجتناب از آن طراحی شده است.
پیکربندی
برای تنظیم گزینه های خط فرمان می توانید از فایل های پیکربندی استاندارد Percona Toolkit استفاده کنید.
احتمالاً می خواهید ابزار را به صورت دیمون اجرا کنید و حداقل آن را شخصی سازی کنید
"--آستانه". در اینجا یک فایل پیکربندی نمونه برای راهاندازی در زمانی که تعداد آنها بیشتر از آن است وجود دارد
20 پرس و جو به طور همزمان اجرا می شوند:
شیطان سازی
آستانه = 20
اگر ابزار را به صورت root اجرا نمی کنید، باید چندین گزینه را مشخص کنید، مانند
"--pid"، "--log"، و "--dest"، در غیر این صورت احتمالاً ابزار شروع به کار نخواهد کرد.
OPTIONS
--ask-pass
هنگام اتصال به MySQL یک رمز عبور درخواست کنید.
-- جمع آوری
پیش فرض: بله منفی: بله
هنگامی که ماشه رخ می دهد، داده های تشخیصی را جمع آوری کنید. برای ایجاد "--no-collect" را مشخص کنید
ابزار سیستم را تماشا می کند اما داده ها را جمع آوری نمی کند.
همچنین به "--stalk" مراجعه کنید.
--collect-gdb
Stacktraces GDB را جمع آوری کنید. این با اتصال به MySQL و پشته چاپ به دست می آید
آثاری از همه رشته ها این کار سرور را برای مدتی محدود می کند
از یک ثانیه یا بیشتر تا خیلی بیشتر در سیستم های بسیار شلوغ با حافظه زیاد و زیاد
موضوعات در سرور به همین دلیل به صورت پیش فرض غیرفعال است. با این حال، اگر شما
در حال تلاش برای تشخیص توقف یا قفل شدن سرور هستند، فریز کردن سرور باعث عدم وجود آن می شود
آسیب اضافی، و آثار پشته می تواند برای تشخیص حیاتی باشد.
علاوه بر فریز کردن سرور، خطر از کار افتادن یا خرابی سرور نیز وجود دارد
پس از جدا شدن GDB از آن، عملکرد بدی دارد.
--collect-oprofile
جمع آوری داده های پروفیل این با شروع یک جلسه oprofile و اجازه دادن به آن به دست می آید
برای زمان جمع آوری اجرا شود و سپس داده های نمایه به دست آمده را متوقف و ذخیره کنید
در مکان پیش فرض سیستم لطفاً اسناد oprofil سیستم خود را بخوانید
در این مورد بیشتر بدانید
-- جمع آوری - strace
داده های strace را جمع آوری کنید. این با اتصال strace به سرور به دست می آید که این کار را انجام می دهد
آن را بسیار آهسته اجرا کنید تا زمانی که نوار جدا شود. همان احتیاط ها اعمال می شود
فهرست شده در --collect-gdb. شما نباید این گزینه را همراه با آن فعال کنید
--collect-gdb، زیرا GDB و strace نمی توانند به فرآیند سرور متصل شوند
با هم.
--collect-tcpdump
داده های tcpdump را جمع آوری کنید. این گزینه باعث می شود tcpdump تمام ترافیک روی همه را ضبط کند
اینترفیس برای پورتی که MySQL به آن گوش می دهد. بعداً می توانید از pt-query- استفاده کنید
digest برای رمزگشایی پروتکل MySQL و استخراج گزارشی از ترافیک پرس و جو از آن.
- پیکربندی
نوع: رشته
این لیست فایل های پیکربندی جدا شده با کاما را بخوانید. اگر مشخص شده است، این باید اولین مورد باشد
گزینه در خط فرمان
-- چرخه ها
نوع: int; پیش فرض: 5
چند بار "--variable" باید بیشتر از "--threshold" قبل از راه اندازی باشد
"--جمع آوری". این به جلوگیری از مثبت کاذب کمک می کند و شرایط محرک را کاهش می دهد
احتمالاً زمانی که مشکل به سرعت بهبود یابد، آتش می گیرد.
-- شیطان سازی
ابزار را شیطانی کنید. این باعث میشود که ابزار در پسزمینه فوک کرده و آن را ثبت کند
خروجی همانطور که در --log مشخص شده است.
---فایل پیش فرض
فرم کوتاه: -F; نوع: رشته
فقط گزینه های mysql را از فایل داده شده بخوانید. شما باید یک pathname مطلق بدهید.
--دسترسی
نوع: رشته; پیش فرض: /var/lib/pt-stalk
کجا می توان داده های تشخیصی را از "--collect" ذخیره کرد. هر بار که ابزار جمع آوری داده ها را انجام می دهد
به مجموعه جدیدی از فایل ها می نویسد که با مهر زمانی سیستم فعلی نامگذاری شده اند.
- بدون دیسک بایت
نوع: اندازه; پیش فرض: 100M
اگر دیسک کمتر از این مقدار فضای خالی دارد، از "--collect" خودداری کنید. این مانع از
ابزار پر کردن دیسک با داده های تشخیصی.
اگر دایرکتوری "--dest" حاوی نمونهای از دادههای گرفته شده قبلی باشد، ابزار این کار را انجام خواهد داد
اندازه آن را اندازه گیری کنید و از آن به عنوان تخمینی از احتمال جمع آوری داده ها استفاده کنید
این بار هم سپس بدبین تر خواهد شد و از جمع آوری امتناع خواهد کرد
داده ها مگر اینکه دیسک فضای خالی کافی برای نگهداری نمونه داشته باشد و همچنان آن را داشته باشد
مقدار فضای آزاد مورد نظر به عنوان مثال، اگر می خواهید 100 مگابایت فضای خالی داشته باشید
نمونه تشخیصی قبلی 100 مگابایت مصرف می کرد، این ابزار هیچ داده ای را جمع آوری نمی کند مگر اینکه این
دیسک 200 مگابایت رایگان دارد.
پسوندهای اندازه معتبر k، M، G و T هستند.
--بدون دیسک کامپیوتر
نوع: int; پیش فرض: 5
اگر دیسک کمتر از این درصد فضای خالی دارد، از "--collect" خودداری کنید. این مانع می شود
ابزار از پر کردن دیسک با داده های تشخیصی.
این گزینه مشابه "--disk-bytes-free" کار می کند اما یک درصد حاشیه را مشخص می کند.
ایمنی به جای حاشیه ایمنی بایت. این ابزار به هر دو گزینه و اراده احترام می گذارد
هیچ داده ای را جمع آوری نکنید مگر اینکه هر دو حاشیه راضی باشند.
--عملکرد
نوع: رشته; پیش فرض: وضعیت
چه چیزی را برای ماشه تماشا کنیم. مقدار پیشفرض «Show GLOBAL STATUS» را تماشا میکند، اما
شما همچنین می توانید "SHOW PROCESSLIST" را تماشا کنید و یک فایل با کد سفارشی خود را مشخص کنید.
این تابع مقدار "--variable" را ارائه می دهد که سپس با آن مقایسه می شود
"--threshold" برای مشاهده اینکه آیا شرط ماشه برآورده شده است یا خیر. گزینه های اضافی ممکن است باشد
همچنین لازم است؛ زیر را ببینید. مقادیر ممکن عبارتند از:
· وضعیت
برای ماشه، «نمایش وضعیت جهانی» را تماشا کنید. سپس مقدار "--variable".
تعیین می کند که کدام شمارنده وضعیت ماشه است.
· لیست فرآیند
برای محرک، «نمایش فهرست کامل فرآیندها» را تماشا کنید. مقدار ماشه تعداد است
فرآیندهایی که ستون "--variable" آنها با گزینه "--match" مطابقت دارد. به عنوان مثال، به
هنگامی که بیش از 10 فرآیند در وضعیت "آمار" هستند، "--collect" را فعال کنید.
مشخص كردن:
-- لیست فرآیندهای تابع \
- حالت متغیر \
--آمار مسابقه \
-- آستانه 10
علاوه بر این، می توانید فایلی را مشخص کنید که حاوی تابع ماشه سفارشی شما باشد،
با اسکریپت پوسته یونیکس نوشته شده است. این می تواند پوششی باشد که هر چیزی را که بخواهید اجرا می کند.
اگر آرگومان "--function" یک فایل باشد، آنگاه بر داخلی ارجحیت دارد
توابع، بنابراین اگر فایلی در دایرکتوری کاری با نام "status" یا وجود داشته باشد
"processlist" سپس ابزار از آن فایل استفاده خواهد کرد حتی اگر مقادیر داخلی معتبری داشته باشند.
فایل با ارائه تابعی به نام "trg_plugin" و ابزار به سادگی کار می کند
فایل را منبع می کند و تابع را اجرا می کند. به عنوان مثال، فایل ممکن است شامل موارد زیر باشد:
trg_plugin() {
mysql $EXT_ARGV -e "Show ENGINE INNODB STATUS" \
| grep -c "به انتظار نشسته است"
}
این قطعه تعداد انتظارات mutex در داخل InnoDB را می شمارد. این را نشان می دهد
اصل کلی: تابع باید یک عدد را خروجی دهد که سپس با آن مقایسه می شود
"-- آستانه" طبق معمول. متغیر $EXT_ARGV شامل گزینه های MySQL ذکر شده است
در "خلاصه" بالا.
فایل نباید متغیرهای جهانی موجود ابزار را تغییر دهد. پیشوند هر فایل-
متغیرهای جهانی خاص با "PLUGIN_" یا آنها را محلی کنید.
--کمک
راهنما را چاپ کنید و خارج شوید.
-روح
فرم کوتاه: -h; نوع: رشته
میزبان برای اتصال.
--فاصله
نوع: int; پیش فرض: 1
چند بار در چند ثانیه بررسی شود که آیا ماشه درست است.
--تکرارها
نوع: بین المللی
چند بار برای "-جمع آوری" داده های تشخیصی. به طور پیش فرض، ابزار برای همیشه اجرا می شود و
هر بار که ماشه رخ می دهد، داده ها را جمع آوری می کند. برای جمع آوری داده ها "--iterations" را مشخص کنید
تعداد دفعات محدود این گزینه همچنین با "--no-stalk" برای جمع آوری داده ها مفید است
یک بار و مثلا خارج شوید.
-- ثبت نام
نوع: رشته; پیش فرض: /var/log/pt-stalk.log
همه خروجیها را در زمانی که دیمونیزه میشوند در این فایل چاپ کنید.
--همخوانی داشتن
نوع: رشته
الگوی مورد استفاده هنگام تماشای SHOW PROCESSLIST. برای جزئیات بیشتر به "--function" مراجعه کنید.
-- از طریق ایمیل اطلاع دهید
نوع: رشته
برای هر "--collect" یک ایمیل به این آدرس ها ارسال کنید.
--کلمه عبور
فرم کوتاه: -p; نوع: رشته
رمز عبور برای استفاده در هنگام اتصال. اگر رمز عبور حاوی کاما باشد، باید از آنها فرار کرد
با علامت معکوس: "exam\,ple"
-پید
نوع: رشته; پیش فرض: /var/run/pt-stalk.pid
فایل PID داده شده را ایجاد کنید. اگر فایل PID از قبل وجود داشته باشد، ابزار شروع نمی شود
PID موجود در آن با PID فعلی متفاوت است. با این حال، اگر فایل PID
وجود دارد و PID موجود در آن دیگر در حال اجرا نیست، ابزار PID را بازنویسی می کند
فایل با PID فعلی پس از خروج ابزار، فایل PID به طور خودکار حذف می شود.
-- پلاگین
نوع: رشته
یک پلاگین را بارگذاری کنید تا به ابزار متصل شود و کارایی آن گسترش یابد. فایل مشخص شده
نه نیازی به اجرایی شدن دارد و نه خط اول آن باید خط shebang باشد. آی تی
فقط باید یک یا چند مورد از این توابع Bash را تعریف کنید:
قبل از_ساقه
قبل از تعقیب صدا زد.
قبل از_جمع آوری
هنگامی که ماشه رخ می دهد، قبل از اجرای یک "--collect" زیر فرآیندها در
زمینه.
پس از_جمع آوری
پس از اجرای فرآیند جمعآوری فراخوانی میشود. PID فرآیند جمع کننده است
به عنوان اولین استدلال تصویب شد. این قلاب قبل از "after_collect_sleep" نامیده می شود.
بعد از_جمع_خواب
پس از خواب "--sleep" ثانیه ها برای پایان فرآیند جمع آوری صدا می شود. این
hook بعد از "after_collect" نامیده می شود.
بعد از_فاصله_خواب
پس از خواب "--فاصله" ثانیه پس از هر بررسی ماشه تماس گرفته می شود.
after_stalk
بعد از تعقیب صدا زد. از آنجایی که pt-stalk به طور پیش فرض برای همیشه ساقه می شود، این قلاب است
فقط در صورتی فراخوانی می شود که "--iterations" مشخص شده باشد.
به عنوان مثال، یک پلاگین بسیار ساده که با فعال شدن "--collect" یک فایل را لمس می کند:
before_collect() {
/tmp/foo را لمس کنید
}
از آنجایی که افزونه به طور کامل در فضای نام ابزار منبع (وارد شده) است، باشید
مواظب باشید که دیگر توابع یا متغیرهای سراسری را که قبلاً در آن وجود دارند، تعریف نکنید
ابزار شما باید تمام توابع خاص پلاگین و متغیرهای سراسری را با پیشوند قرار دهید
"plugin_" یا "PLUGIN_".
پلاگین ها به تمام گزینه های خط فرمان دسترسی دارند اما نباید آنها را تغییر دهند. هر یک
گزینه یک متغیر جهانی مانند $OPT_DEST است که با "--dest" مطابقت دارد. از این رو،
متغیر جهانی برای هر گزینه خط فرمان "OPT_" به اضافه نام گزینه در همه است
کلاه ها با خط فاصله با خط زیر جایگزین شده اند.
پلاگین ها می توانند ابزار را با تنظیم متغیر جهانی "OKTORUN" روی 1 متوقف کنند
در این مورد، متغیر سراسری "EXIT_REASON" نیز باید برای نشان دادن دلیل این ابزار تنظیم شود
متوقف شد.
نویسندگان افزونه باید در نظر داشته باشند که پیشوند مقصد فایل در حال حاضر استفاده می شود
باید از طریق متغیر $prefix به جای $OPT_PREFIX قابل دسترسی باشد.
--بندر
فرم کوتاه: -P; نوع: بین المللی
شماره پورت برای استفاده برای اتصال.
-- پیشوند
نوع: رشته
پیشوند نام فایل برای نمونه های تشخیصی. به طور پیش فرض، همه فایل ها توسط یکسان ایجاد می شوند
نمونه "--collect" دارای پیشوند مهر زمانی بر اساس زمان محلی فعلی است، مانند
"2011_12_06_14_02_02"، که در 6 دسامبر 2011 در ساعت 14:02:02 است.
--زمان نگهداری
نوع: int; پیش فرض: 30
تعداد روزهای نگهداری نمونه های جمع آوری شده هر نمونه ای که قدیمی تر باشد خواهد بود
پاکسازی شد.
-- زمان اجرا
نوع: int; پیش فرض: 30
چه مدت برای "--جمع آوری" داده های تشخیصی زمانی که ماشه رخ می دهد. مقدار در است
ثانیه و نباید بیشتر از "--sleep" باشد. معمولاً لازم نیست
این را تغییر دهید؛ اگر 30 ثانیه پیشفرض دادههای کافی را جمعآوری نمیکند، اجرای طولانیتر است
به احتمال زیاد کمکی نمی کند زیرا سیستم یا سرور MySQL احتمالاً برای پاسخگویی خیلی شلوغ است.
در واقع، در بسیاری از موارد دوره جمع آوری کوتاهتر مناسب است.
این مقدار دو بار دیگر استفاده می شود. پس از جمع آوری، فرآیند فرعی جمع آوری خواهد شد
چند ثانیه دیگر منتظر بمانید تا دستورات آن به پایان برسد. برخی از دستورات ممکن است
برای مدتی اگر سیستم بسیار کند کار می کند (که با توجه به اینکه a
مجموعه فعال شد). از آنجایی که فایل های خالی حذف می شوند، انتظار اضافی می دهد
زمان را برای تکمیل و نوشتن داده های خود فرمان می دهد. مقدار به طور بالقوه دوباره استفاده می شود
درست قبل از خروج ابزار دوباره منتظر بمانید تا هر زیر فرآیند جمع آوری تمام شود. که در
در بیشتر موارد به دلیل انتظار اضافی فوق الذکر این اتفاق نمی افتد. اگر اتفاق بیفتد،
ابزار "منتظر تا N ثانیه برای تکمیل فرآیندهای فرعی..." را ثبت می کند که N است
سه بار "--run-time". در هر دو مورد، پس از انتظار، ابزار تمام موارد خود را از بین می برد
فرآیندهای فرعی
--خواب
نوع: int; پیش فرض: 300
چه مدت بعد از "--جمع کردن" بخوابیم. این از فعال شدن ابزار جلوگیری می کند
به طور مداوم، که اگر فرآیند جمع آوری مزاحم باشد، ممکن است مشکل ساز شود. آی تی
همچنین از پر شدن دیسک یا جمع آوری داده های بیش از حد برای تجزیه و تحلیل منطقی جلوگیری می کند.
--خواب-جمع کردن
نوع: int; پیش فرض: 1
مدت زمان خواب بین چرخه های حلقه جمع آوری این برای "--no-stalk" مفید است
انجام مجموعه های طولانی به عنوان مثال، برای جمع آوری داده ها در هر دقیقه به مدت یک ساعت، مشخص کنید:
"--no-stalk --run-time 3600 --sleep-collect 60".
-- سوکت
فرم کوتاه: -S; نوع: رشته
فایل سوکت برای استفاده برای اتصال.
--ساقه
پیش فرض: بله منفی: بله
سرور را تماشا کنید و منتظر بمانید تا ماشه رخ دهد. برای جمع آوری "--no-stalk" را مشخص کنید
داده های تشخیصی بلافاصله، یعنی بدون انتظار برای رخ دادن ماشه. شما
احتمالاً همچنین می خواهید مقادیر "--interval"، "--iterations" و "--sleep" را مشخص کنید.
برای مثال، برای جمعآوری فوری دادهها به مدت 1 دقیقه و سپس خروج، مشخص کنید:
--بدون ساقه -- زمان اجرا 60 -- تکرار 1
"--cycles"، "--daemonize"، "--log" و "--pid" هیچ تاثیری با "--no-stalk" ندارند.
گزینههای حفاظتی، مانند «--disk-bytes-free» و «--disk-pct-free» همچنان وجود دارند.
احترام.
همچنین به "--جمع آوری" مراجعه کنید.
--آستانه
نوع: int; پیش فرض: 25
حداکثر مقدار قابل قبول برای "--variable". "--collect" زمانی فعال می شود که
مقدار "--variable" بارها از "--threshold" برای "--cycles" بیشتر است.
در حال حاضر، هیچ راهی برای تعریف آستانه پایین تر برای بررسی یک "--variable" وجود ندارد.
مقداری که خیلی کم است
همچنین به "--function" مراجعه کنید.
--کاربر
فرم کوتاه: -u; نوع: رشته
کاربر برای ورود اگر کاربر فعلی نیست.
--متغیر
نوع: رشته; پیش فرض: Threads_running
متغیری که باید با "--threshold" مقایسه شود. همچنین به "--function" مراجعه کنید.
-- پرحرف
نوع: int; پیش فرض: 2
هنگام اجرا اطلاعات کم و بیش چاپ کنید. از آنجایی که ابزار به صورت a
دیمون طولانیمدت، سطح پرحرفی پیشفرض فقط مهمترین موارد را چاپ میکند
اطلاعات اگر ابزار را به صورت تعاملی اجرا می کنید، ممکن است بخواهید از ابزار بالاتر استفاده کنید
سطح پرحرفی
چاپ سطح
==========================================
0 خطا
1 هشدار
2 تطبیق محرک ها و اطلاعات مجموعه
3 محرک غیر منطبق
- نسخه
نسخه ابزار را چاپ کنید و از آن خارج شوید.
محیط زیست
این ابزار برای پیکربندی به هیچ متغیر محیطی نیاز ندارد، اگرچه ممکن است
تحت تأثیر چندین متغیر برای کار متفاوت. به خاطر داشته باشید که اینها هستند
تنظیمات تخصصی، و در بیشتر موارد نباید استفاده شود.
به طور خاص، متغیرهای قابل تنظیم عبارتند از:
CMD_GDB
CMD_IOSTAT
CMD_MPSTAT
CMD_MYSQL
CMD_MYSQLADMIN
CMD_OPCONTROL
CMD_OPREPORT
CMD_PMAP
CMD_STRACE
CMD_SYSCTL
CMD_TCPDUMP
CMD_VMSTAT
به عنوان مثال، در طول مجموعه، iostat با آرگومان -dx فراخوانی می شود، اما به این دلیل که شما دارید
یک پارتیشن NFS، شما همچنین به پرچم -n در آنجا نیاز دارید. به جای ویرایش منبع، می توانید
pt-stalk را به عنوان فراخوانی کنید
CMD_IOSTAT="iostat -n" pt-stalk ...
که دقیقاً همان چیزی را که شما نیاز دارید انجام می دهد. همراه با قلاب های پلاگین، این به شما می دهد
کنترل دقیق کاری که ابزار انجام می دهد.
SYSTEM الزامات
این ابزار به Bash نسخه 3 یا جدیدتر نیاز دارد. برخی از گزینه ها به برنامه های دیگری نیاز دارند:
"--collect-gdb" به "gdb" نیاز دارد
"--collect-oprofile" به "opcontrol" و "opreport" نیاز دارد
"--collect-strace" به "strace" نیاز دارد
"--collect-tcpdump" به "tcpdump" نیاز دارد
با استفاده از خدمات onworks.net از pt-stalkp به صورت آنلاین استفاده کنید