Довідка MON щодо визначення послуг Це другий і останній етап конфігурації MON.
Значення за замовчуванням відображаються для обов'язкових служб . Дивіться відповідну тему довідки нижче, щоб отримати додаткову допомогу щодо Визначень послуг. Для "mail.alert" переконайтесь, що sendmail налаштовано, а "sendmail" deamon запускається на хост-машині.
Визначення послуг
- ім'я послуги
- Визначення послуги починається з служби ключових слів, а потім із слова, яке є тегом для цієї послуги.
Компоненти послуги - це інтервал, монітор та одне або більше визначень часового періоду, як визначено нижче.
Якщо назва служби "за замовчуванням" визначена в групі спостереження під назвою "dafault" (див. Вище), то визначення за замовчуванням / за замовчуванням буде використовуватися для обробки невідомих мон-пасток.
- інтервал часу
- Інтервал ключових слів, який супроводжується значенням часу, визначає частоту запуску сценарію монітора. Значення часу визначаються як "30s", "5m", "1h" або "1d", що означає 30 секунд, 5 хвилин, 1 годину або 1 день. Числова частина може бути дробом, наприклад, «1,5 год» або півтори години. Цей формат часової специфікації буде називатися часовим інтервалом .
- traptimeout timeval
- Це ключове слово приймає той самий аргумент специфікації часу , як інтервал , і змушує службу очікувати пастки від зовнішнього джерела хоча б часто, інакше помилка буде зареєстрована. Це використовується для сердечного обслуговування.
- таймвал трапдурації
- Якщо пастка отримана, стан послуги, до якої було доставлено пастку, як правило, залишається незмінним. Якщо вказана трапдурація , статус послуги залишатиметься в стані відмови протягом тривалості, визначеної тимчасовим інтервалом , а потім буде скинутий на "успіх".
- randskew timeval
- Замість того, щоб запланувати сценарій монітора для запуску на початку кожного інтервалу, випадковим чином відрегулюйте інтервал, визначений параметром інтервалу, через плюс-або-мінус randskew. Значення перекосу вказується як параметр інтервалу : "30s", "5m" тощо. Наприклад, якщо інтервал дорівнює 1 м, а рейдшвек - "5с", пн буде планувати сценарій монітора деякий час між кожні 55 секунд і 65 секунд. Наміром є допомогти розподілити навантаження на сервер, коли багато сервісів заплановано з однаковими інтервалами.
- монітор -ім'я монітора [арг ...]
- Монітор ключових слів з ім'ям сценарію та аргументами визначає запуск монітора, коли таймер закінчується. Обов'язки цитування, подібні до оболонок, дотримуються, коли вказуються аргументи для надсилання до сценарію монітора. Сценарій викликається в каталозі, заданому аргументом -s , і всі наступні слова подаються як аргументи до програми монітора, а потім перелік хостів у групі, на яку посилається поточна група спостереження. Якщо рядок монітора закінчується символом ";;" як окреме слово, хост-групи не додаються до списку аргументів, коли програма викликається.
- enable_empty_group
- Параметр enable_empty_group дозволить викликати монітор навіть тоді, коли група хостів для цього годинника порожня через відсутність хостів. Типова поведінка - це не викликати монітор, коли всі хости в групі хостів були відключені.
- опис описутексту
- Наступний опис тексту запитується клієнтськими програмами, передається сповіщенням та моніторам через змінну середовища. Він повинен містити короткий опис послуги, придатний для включення в електронний лист або на веб-сторінку.
- виключити_хости хоста [хост ...]
- Будь-які хости, перелічені після виключення_хостів, будуть виключені з перевірки обслуговування.
- виключити_період періодупек
- Не запускайте плановий монітор протягом часу, визначеного періодами .
- залежно від вираження
- Ключове слово залежність використовується для визначення виразу залежності, яке оцінюється як істинне хибне, в булевому значенні. Залежності - це фактичні вирази Perl, і вони повинні підкорятися всім синтаксичним правилам. Вирази оцінюються у власному просторі пакунків, щоб випадково не виникнути небажаних побічних ефектів. Якщо при оцінці виразу виявлена синтаксична помилка, вона реєструється через syslog.
Перед оцінкою в виразі відбуваються такі підстановки: фрази, які мають вигляд "група: служба", замінюються значенням поточного операційного стану зазначеної послуги. Ці заміни opstatus обчислюються рекурсивно, тому якщо служба A залежить від послуги B, а служба B залежить від служби C, то служба A залежить від служби C. Успішні робочі статуси (які оцінюються як "1") "STAT_OK", "STAT_COLDSTART "," STAT_WARMSTART "та" STAT_UNKNOWN ". Слово "SELF" (у всіх шапках) може бути використане для групи (наприклад, "SELF: service") і є абревіатурою для поточної групи Watch.
Ця функція може використовуватися для керування сповіщеннями для служб, які залежать від інших служб, наприклад, тест SMTP, який залежить від того, на якій машині буде доступно пінг.
- dep_behavior {a | m}
- Оцінка графіків залежності може контролювати придушення або тривожних викликів, або спостереження.
Придушення сповіщення Якщо для цього параметра встановлено значення "a", вираз залежності буде оцінено після виходу монітора для служби або після отримання пастки. Попередження буде надіслане лише у випадку успішної оцінки, що означає, що жоден з вузлів у графіку залежності не вказує на збій.
Контроль придушення . Якщо воно встановлено на "m", то вираз залежності буде евальовано до того, як монітор для служби збирається запустити. Якщо еваляція пройде успішно, монітор буде запущений. В іншому випадку монітор не буде запускатися, і стан служби залишиться колишнім.
Визначення періоду
Періоди використовуються для визначення умов, які повинні дозволяти надсилати сповіщення.
- period [label:] periodpec
- Період групує один або кілька сигналів тривоги та змінних, які контролюють, як часто відбувається оповіщення, коли відбувається збій. Ключове слово періоду має дві форми. Перший бере аргумент, який є специфікацією періоду з модуля Патріка Райана Час :: Період Perl 5. Для отримання додаткової інформації див. "Час perldoc :: Період".
Друга форма вимагає етикетки з наступною специфікацією періоду, як визначено вище. Мітка - це тег, що складається з алфавітного символу або підкреслення, з подальшим нулем або більше буквено-цифрових знаків або підкреслення і закінчується двокрапкою. Ця форма допускає декілька періодів з однаковим визначенням періоду. Одне використання - це визначення періоду, в якому немає параметрів сповіщення або сповіщення про сповіщення протягом певного періоду часу, а інше для того ж періоду часу з іншим набором сповіщень, яке містить ці параметри.
- тривалість сповіщення
- Ключове слово попередження (у визначенні періоду ) приймає аргумент того ж типу, що і інтервальна змінна, і обмежує кількість надсилань попередження, коли служба продовжує відмовлятися. Наприклад, якщо інтервал "1h", то лише попередження в розділі періоду будуть спрацьовувати лише раз на годину. Якщо ключове слово оповіщення пропущено у записі періоду, повідомлення буде надсилатися щоразу, коли виявляється помилка. За замовчуванням, якщо вихід двох послідовних відмов змінюється, то інтервал оповіщення перевизначається. Якщо слово "підсумок" є останнім аргументом, то при порівнянні результатів послідовних відмов враховуватимуться лише підсумкові рядки виводу.
- alertafter Num
- попереджувальний номер timevalval
- Ключове слово попередження (у розділі періоду ) має дві форми: лише з аргументом "num" або з аргументами "num timeval". У першій формі сповіщення буде викликано лише після послідовних відмов "нумерувати".
У другій формі аргументи - це додатне ціле число з подальшим інтервалом, як описано вище змінною інтервалу . Якщо вказані ці параметри, то сповіщення за цей період буде викликано лише після того, як протягом цього інтервалу станеться багато відмов. Наприклад, якщо сповіщувачу надано аргументи "3 30м", то сповіщення буде викликано, якщо протягом 30 хвилин трапиться 3 відмови.
- numalerts num
Ця змінна вказує сервера не більше попереджень піт виклику під час збою. Лічильник сповіщень зберігається періодично та скидається під час кожного успіху.
- comp_alerts
Якщо вказана ця опція, виклику upalerts буде викликано лише в тому випадку, якщо було викликано відповідне сповіщення "вниз".
- попередження [аргумент ...]
- Період може містити кілька сповіщень, які спрацьовують після відмови служби. Попередження задається ключовим словом попередження , за ним - необов'язковий параметр виходу та аргументи, які інтерпретуються так само, як визначення монітора , але без ";" виняток. Параметр виходу має вигляд exit = x або exit = xy і призводить до того, що сповіщення викликається лише у тому випадку, якщо статус виходу скрипта монітора потрапляє в діапазон параметра виходу . Наприклад, якщо рядок оповіщення є вихідним сповіщенням = 10-20 mail.alert mis, тоді поштове сповіщення буде викликано помилково як його аргументи, якщо значення виходу програми монітора становить від 10 до 20. Ця функція дозволяє запускати різні сповіщення різного рівня вираженості (наприклад, коли вільний простір на диску становить від 8% до 3%).
Див. Розділ ПРОГРАМИ ALERT вище, список списку праметерів автоматично передається для програм попередження.
- сповіщення про upalert [ арг ...]
- Упалерт - комплімент попередження . Упалерт називається, коли сервіс робить стан переходу від невдачі до успіху. Сценарій upalert називається тим, що надає ті самі параметри, що і сценарій оповіщення , з додаванням параметра -u, який просто використовується для того, щоб скрипт попередження знав, що він викликається як upalert. Для кожного визначення періоду може бути вказано декілька параметрів. Зверніть увагу, що поведінка за замовчуванням полягає в тому, що упалерта буде надіслана незалежно від того, чи були надіслані попередні сповіщення про "вниз", оскільки пакети запускаються при переході стану. Встановіть параметр comp_alerts за періодом, щоб з’єднати upalerts з попередженнями "вниз"
- попередження про startupalert [ арг ...]
- Startupalert викликається тільки тоді , коли сервер ПН починає виконання.
- upalertafter timeval
- Параметр upalertafter визначається у вигляді рядка, який слід за синтаксисом параметра інтервалу ("30s", "1m" тощо) та керує спрацюванням запуску upalert . Якщо послуга повертається назад після виходу з ладу на час, більший або рівний значенню цієї опції, буде викликано upalert . Використовуйте цю опцію, щоб запобігти виклику упалера через "провалля" (короткий відключення).