Главная Партнеры Контакты  
Юридическая компания — «Основной закон», консультации и помощь в возвращении депозитов, защита по кредиту

ЮК
"ОСНОВНОЙ ЗАКОН"  

г. Киев, бул. Пушкина, 2а                
тел.: (044) 334-99-77                               
         (095) 407-407-3
         (096) 703-11-82

график работы: пн.- пт. с 9:00 до 18:00
          
                           

 












Рассматривается вопрос о предоставление нотариусам права выдачи извлечения из Реестра прав на недвижимое имущество.
Министерством юстиции был разработан проект Закона «О внесении изменений в некоторые Законы Украины относительно предоставления информации о государст...


Держреєстрація речових прав на нерухоме майно та їх обтяжень у 2014 році буде здійснюватись за новою - удосконаленою та спрощеною - процедурою.
Постанова Кабінету Міністрів "Про затвердження порядку державної реєстрації прав на нерухоме майно та їх обтяжень і Порядку надання інформації з Держа...




Система Orphus


6 Моніторинг файлів журналів [Zabbix Documentation 3.2]

  1. 6 Моніторинг файлів журналів
  2. Налаштування
  3. Налаштування елемента даних
  4. важливі зауваження
  5. Витяг збігається частини регулярного виразу
  6. Використання параметра максзадержка
  7. Дії, якщо сталася помилка зв'язку між агентом і сервером

6 Моніторинг файлів журналів

огляд

Zabbix можна використовувати для централізованого моніторингу і аналізу файлів журналів з / без підтримки ротації журналів.

Можна використовувати оповіщення для попередження користувачів, коли файл журналу містить конкретні рядки або шаблони рядків.

Для спостереження за файлом журналу у вас має бути:

Налаштування

Перевірка параметрів агента

Переконайтеся, що в файлі конфігурації агента :

  • Параметр 'Hostname' збігається з ім'ям вузла мережі в веб-інтерфейсі

  • Вказані сервера в секції "Тайм ServerActive 'для обробки активних перевірок

Налаштування елемента даних

Налаштуйте елемент даних для моніторингу журналу:

Спеціально для елементів даних спостереження за журналами ви повинні вказати:

Тип Тут виберіть Zabbix агент (активний). Ключ Вкажіть:
log [/ шлях / до / файлу / имя_файла, <регулярний вираз>, <кодування »,« макс. кількість рядків "," режим "," висновок "," максзадержка>]
або
logrt [/ шлях / до / файлу / регулярное_вираженіе_опісивающее_шаблон_імені_файла, <регулярний вираз>, <кодування »,« макс. кількість рядків "," режим "," висновок "," максзадержка>]
Zabbix агент фільтрує записи з файлу журналу по регулярному виразу, якщо воно вказане.
Якщо потрібно тільки кількість співпадаючих рядків вкажіть:
log.count [/ шлях / до / файлу / имя_файла, <регулярний вираз>, <кодування »,« макс. кількість рядків "," режим "," максзадержка>]
або
logrt.count [/ шлях / до / файлу / регулярное_вираженіе_опісивающее_шаблон_імені_файла, <регулярний вираз>, <кодування »,« макс. кількість рядків "," режим "," максзадержка>].
Переконайтеся, що у файлу є права на читання для користувача 'zabbix', в іншому випадку стан елемента даних буде 'unsupported'.
Для отримання більш детальної інформації дивіться інформацію про ключах log, log.count, logrt і logrt.count в розділі підтримуваних ключів елементів даних Zabbix агентом . Тип інформації Виберіть тут Журнал (лог) для елементів даних log і logrt або Числовий (ціле позитивне) для елементів даних log.count і logrt.count.
Якщо використовується опціональний параметр висновок, ви можете вибрати відповідний тип інформації, відмінний від "Журнал (лог)".
Зверніть увагу, що вибір не журнального типу інформації призведе до втрати локального штампа часу. Частота оновлення (в сек) Цей параметр задає як часто Zabbix агент буде перевіряти наявність будь-яких змін у файлі журналу. Вказавши цей параметр рівним 1 секунді, ви можете бути впевненими, що отримаєте нові записи якомога швидше. Формат часу журналу В цьому полі ви можете опціонально задати шаблон для аналізу штампа часу рядки журналу.
Якщо залишити порожнім, штамп час не буде аналізуватися.
Підтримувані значення:
* Y: Рік (0001-9999)
* M: Місяць (01-12)
* D: День (01-31)
* H: Час (00-23)
* M: Хвилина (00-59)
* S: Секунда (00-59)
Наприклад, розглянемо наступний рядок з файлу журналу Zabbix агента:
"23480: 20100328: 154718.045 Zabbix agent started. Zabbix 1.8.2 (revision 11211). "
Вона починається шістьма символами позначають PID, далі йде дата, час, і інша частина рядка.
Форматом часу журналу для цього рядка є "pppppp: yyyyMMdd: hhmmss".
Зверніть увагу, що символи "p" і ":" є лише замінниками і можуть бути чим завгодно, за винятком "yMdhms".

важливі зауваження

  • Сервер і агент стежать за розміром спостережуваного журналу і часом останньої модифікації (для logrt) двома лічильниками. додатково:

    • Також агент використовує номера inode (на UNIX / GNU / Linux), індекси файлів (на Microsoft Windows) і MD5 суми перших 512 байт файлу журналу для поліпшення вибору в разі коли файли журналу усікаються і ротируються.

    • На системах UNIX / GNU / Linux передбачається, що файлові системи де зберігаються файли журналів, повідомляють числа inode, які можуть бути використані для спостереження за станом файлів.

    • На системах Microsoft Windows Zabbix агент визначає тип файлової системи на якій знаходяться файли журналів:

      • На файлової системи NTFS 64-бітові файлові індекси.

      • На файлових системах ReFS (тільки Microsoft Windows Server 2012) 128-бітові файлові ID.

      • На файлових системах де файлові індекси змінюються (тобто FAT32, exFAT) використовується запасний алгоритм для отримання розумного підходу в невизначених умовах, коли стиснення файлу журналу призводить в результаті до безлічі файлів журналів з однаковим часом зміни.

    • Номери inode, індекси файлів і суми MD5 збираються Zabbix агентом. Вони не передаються Zabbix сервера і губляться в разі зупинки Zabbix агента.

    • Не міняйте час останньої модифікації файлів журналів, використовуючи утиліту 'touch', не копіюйте файл журналу з подальшим відновленням його імені (це змінить ідентифікатор иноді файлу). В обох випадках файл буде розглядатися як інший і буде проаналізовано з самого початку, що може привести до дублікатами сповіщень.

    • Якщо є кілька співпадаючих файлів журналів для елемента даних logrt [] і Zabbix агент стежить за найбільш новим з них і цей новіший файл журнал видаляється, предупрежающіее повідомлення буде записано "there are no files matching" <regexp mask> "in" <directory> ". Zabbix агент ігнорує файли журнали з часом зміни менше ніж останнім часом модифікації отримане агентом під час перевірки елемента даних logrt [].

  • Агент починає читати файл журналу з тієї позиції, на якій він зупинився востаннє.

  • Кількість байт вже проаналізоване (лічильник розміру) і час останньої модифікації (лічильник часу) зберігаються в базі даних Zabbix і відправляються агенту, для впевненості, що агент почне читати файл журналу з цієї позиції в випадках, коли агент щойно був запущений або агент отримав елементи даних, які були раніше деактивовані або не підтримувалися.

  • Всякий раз, коли файл журналу стає менше, ніж значення лічильника розміру відоме агенту, лічильник обнуляється і агент починає читати файл журналу з самого початку, беручи до уваги лічильник часу.

  • Eсли є кілька файлів журналів, з однаковим останнім часом модифікації файлу у відповідній папці, агент намагається коректно проаналізувати всі файли журнали з однаковим часом модифікації і уникнути пропущених даних або проаналізувати дані дважни, незважаючи на це неможливо охопити всі можливі ситуації. Агент не передбачає якусь певну схему ротації файлів журналів, або визначає її. Коли є кілька фалів журналів з однаковим останнім часом зміни, агент буде обробляти їх лексикографічно в порядку убування. Таким чином, для деяких схем ротації файли журнали будуть проаналізовані в їх оригінальному порядку. Для інших же схем ротації журналів початковий порядок файлу журналу не буде дотримуватися, що може привести до отримання знайдених за шаблоном рядків файлу журналу в зміненому порядку (проблема не трапиться, якщо файли журналу мають різний час останньої зміни).

  • Zabbix агент обробляє нові записи файлу журналу один раз за Період поновлення секунд.

  • Zabbix агент відправляє не більше ніж макс. кількість рядків записів з файлу журналу за секунду. Це обмеження запобігає перевантаження мережі і ресурсів процесора і перевизначає значення за замовчуванням передбачене параметром MaxLinesPerSecond в файлі конфігурації агента .
  • Для пошуку необхідної рядки Zabbix обробляє в 4 рази більше рядків, ніж зазначено в параметрі MaxLinesPerSecond. Таким чином, наприклад, якщо елемент даних log [] або logrt [] має Частота оновлення 1 секунда, за замовчуванням агент буде аналізувати не більше ніж 400 рядків файлу журналу і буде відправляти не більше ніж 80 збіглися записів Zabbix сервера за одну перевірку. Збільшенням параметра MaxLinesPerSecond в файлі конфігурації агента або зазначенням параметра макс. кількість рядків в ключі елемента даних, ліміт можна збільшити аж до 4000 проаналізованих записів в журналі і 1000 співпадаючих записів для відправки Zabbix сервера за одну перевірку. Якщо Частота оновлення вказано значенням в 2 секунди, ліміти для однієї перевірки можуть бути збільшені в два рази більше, ніж для Інтервалу поновлення в 1 секунду.

  • Крім того, значення log і log.count завжди обмежені 50% розміру буфера відправки у агента, навіть якщо в буфері немає значень не пов'язаних з даними з файлів журналів. Таким чином, значення макс. кількість рядків будуть відправлені за одне з'єднання (а не в декількох з'єднань), параметр BufferSize агента повинен бути принаймні дорівнює макс. кількість рядків x 2.
  • При відсутності даних для елементів даних журналів весь розмір буфера використовується для значень не пов'язаних з даними з журналів. Коли з'являються значення від файлів журналів вони замінюють застарілі дані не пов'язані з файлами журналів, якщо потрібно, до максимального рівня 50%.

  • Для записів в файлі журналу довше 256КБ, тільки перші 256КБ зіставляються з регулярним виразом, інша частина ігнорується. Однак, якщо Zabbix агент був зупинений в процесі обробки довгої рядки, внутрішній стан агента втрачається і довга рядок може бути проаналізована інакше після запуск агента.

  • Особливо слід відзначити для роздільників шляху "\": якщо формат файлу представлений як "file \ .log", тоді там не повинно бути папки "file", оскільки неможливо однозначно визначити, екранується чи це символ "." Або це перший символ в імені файлу .

  • Регулярні вирази для logrt підтримуються тільки в іменах файлів, збіг регулярного виразу з папкою не підтримується.

  • В UNIX елементи даних logrt [] стає Неподдерживается, в разі якщо папка не існує де файл журналу мав би перебувати.

  • У Microsoft Windows, якщо папка не існує елемент даних не перетворюється на стан Неподдерживается (наприклад, якщо в ключі елемента даних папка вказана з помилкою)

  • Відсутність файлу журналу для елемента даних logrt [] не переводить в його в стан Неподдерживается.

  • Помилки читання файлів журналів для елемента даних logrt [] записуються в журнал агента як попередження, але не переводять елемент даних в стан Неподдерживается.

  • Журнал Zabbix агента може бути дуже корисний для пошуку причин чому елементи даних log [] або logrt [] стають Неподдерживается. Zabbix може моніторити свій файл журналу, за винятком випадку коли він в режимі DebugLevel = 4.

Витяг збігається частини регулярного виразу

Іноді ми можемо захотіти отримати тільки цікавлять значення з необхідного файлу замість того, щоб отримувати всю рядок, в разі коли знайдено збіг з регулярним виразом.

Починаючи з Zabbix 2.2.0, елементи даних файлів журналів розширені можливістю отримання витягу необхідних значень з рядків файлу. Додався додатковий параметр висновок у елементів даних log і logrt.

Використання параметра 'висновок' дозволяє позначити підгрупу збіги в якій ми можемо бути зацікавлені.

І так, наприклад

log [/ path / to / the / file, "large result buffer allocation. * Entries: ([0-9] +)" ,,,, \ 1]

має дозволити отримати кількість записів з наступного змісту:

Fr Feb 07 2014 11: 07: 36.6690 * / Thread Id 1400 (GLEWF) large result buffer allocation - / Length: 437136 / Entries: 5948 / Client Ver:> = 10 / RPC ID: 41726453 / User: AUser / Form: CFG : ServiceLevelAgreement

Причина, чому Zabbix поверне тільки одне число, тому що параметр 'висновок' тут визначено як \ 1 посилання тільки на першу цікаву підгрупу: ([0-9] +)

Разом з можливістю вилучення і отримання числа, значення можна використовувати в визначеннях тригерів.

Використання параметра максзадержка

Параметр 'максзадержка' в елементах даних журналів дозволяє ігнорувати старіші рядки з метою отримання найбільш нових рядків проаналізованих протягом "максзадержка" секунд.

Параметр 'maxdelay'> 0, може привести до ігнорування важливих записів у файлах журналів і пропуску сповіщень. Використовуйте цей параметр обережно і на свій страх і ризик, тільки в разі потреби.

За замовчуванням елементи даних моніторингу журналів забирають все нові рядки з'являються в файлах журналів. Однак, є програми, які в деяких ситуаціях починають записувати величезну кількість повідомлень в свої файли журналів. Наприклад, якщо база даних або DNS сервер недоступні, то такі додатки можуть флудить файли журналів тисячами практично ідентичних повідомлень про помилку до тих пір поки не відновиться нормальний режим роботи. За замовчуванням, всі ці повідомлення сумлінно аналізуються і збігаються рядки оговтуються на сервер, як налаштоване в елементах даних log і logrt.

Захист від перевантажень складається з параметра, що набудовує 'макс. кількість рядків '(захищає сервер від занадто великої кількості приходять співпадаючих рядків в журналі) і обмеження в 4 *' макс. кількість рядків '(захищає CPU і I / O хоста від перевантаження агентам однією перевіркою). Проте є 2 проблеми зі вбудованим механізмом захисту. Перша, на сервер буде відправлено велику кількість потенційно не так інформативних повідомлень, які займуть місце в базі даних. Друга, через обмежену кількість рядків аналізованих в секунду агент може відставати на годинник від найновіших записів в журналі. Цілком ймовірно, що ви захочете якомога швидше бути поінформованим про поточну ситуацію в файлах журналів замість колупання годинами старих записів.

Вирішення цих двох проблем є використання параметра 'максзадержка'. Якщо параметр 'maxdelay'> 0, під час кожної перевірки вимірюються кількість оброблених байт, кількість залишилися байт і час обробки. Відштовхуючись від цих значень, агент обчислює оціночну затримку - як багато секунд може знадобитися, щоб проаналізувати всі залишилися записи в файлі журналу.

Якщо затримка не перевищує 'максзадержка', тоді агент поступає з аналізом файлу журналу як зазвичай.

Якщо затримка більше ніж 'максзадержка', тоді агент ігнорує частину файлу журналу, "перестрибуючи" цю частину до нової оціночної позиції таким чином, щоб залишилися рядки можна було проаналізувати за 'максзадержка' секунд.

Зверніть увагу, що агент навіть не читає проігноровані рядки в буфер, але обчислює приблизну позицію для стрибка в файлі.

Сам факт пропуску рядків у файлі журналу записується в файл журналу агента, приблизно наступним чином:

14287: 20160602: 174344.206 item: "logrt [" / home / zabbix32 / test [0-9] .log ", ERROR ,, 1000 ,,, 120.0]" logfile: "/ home / zabbix32 / test1.log" skipping 679858 bytes (from byte 75653115 to byte 76332973) to meet maxdelay

Кількість "to byte" є оціночним, тому що після "стрибка" агент скоректує позицію в файл до початку рядка в журналі, яка може бути у файлі трохи далі або раніше.

Залежно від того як швидкість росту співвідноситься до швидкості аналізу файлу журналу, ви можете не побачити "стрибків", а можете побачити рідкісні або часті "стрибки", великі чи маленькі "стрибки", або навіть маленькі "стрибки" кожну перевірку. Коливання завантаження системи і мережеві затримки також впливають на обчислення затримки і, отже, "стрибки" вперед щоб не відставати від параметра "максзадержка".

Не рекомендується вказувати 'максзадержка' < 'інтервал поновлення' (це може привести до частих маленьким "стрибків").

Дії, якщо сталася помилка зв'язку між агентом і сервером

Кожна збігається рядок з елементів даних log [] і logrt [] і результат перевірки кожного елемента даних log.count [] і logrt.count [] вимагає вільний слот в виділеної 50% області буфера відправки в агента. Елементи буфера регулярно відправляються сервера (або проксі) і слоти буфера стають знову порожніми.

Поки є вільні слоти в виділеної області для журналів в буфері відправки в агента і зв'язок між агентом і сервером (або проксі) порушена, результати моніторингу журналів накопичуються в буфері відправки. Така поведінка дозволяє пом'якшити короткочасні порушення зв'язку.

Під час тривалих порушень свящ всі слоти журналів стають зайнятими і виконуються наступні дії:

  • Перевірки елементів даних log [] і logrt [] зупиняються. Коли зв'язок відновиться і з'являться вільні слоти, перевірки повернуться до попередньої позиції. Чи не збігаються рядки загубляться. Збігаються рядки не будуть втрачені, вони просто вирушать пізніше.

  • Перевірки log.count [] і logrt.count [] зупиняються, якщо maxdelay = 0 (за замовчуванням). Поведінка схоже на елементи даних log [] і logrt [], описане вище. Зверніть увагу, що втрата зв'язку може вплинути на результати log.count [] і logrt.count []: наприклад, одна перевірка нарахує 100 співпадаючих рядків у файлі журналу, але через відсутність вільних слотом в буфері перевірка буде зупинена. Коли зв'язок відновиться агент нарахує ті ж 100 співпадаючих рядків, а також 70 нових співпадаючих рядків. Після чого агент відправить кількість = 170, так як вони знайдені за одну перевірку.

  • Перевірки log.count [] і logrt.count [] при maxdelay> 0: якщо не було "стрибка" під час перевірки, тоді поведінка аналогічно описаному вище. Якщо все ж був "стрибок" через рядки файлу журналу, тоді позиція після "стрибка" збережеться і підрахований результат буде відкинутий. Таким чином, агент намагається не відставати від зростаючого файлу журналу, навіть в разі проблем зі зв'язком.

Главная Партнеры Контакты    
Cистема управления сайта от студии «АртДизайн»