Робота із журналами подій в інтерфейсі застосунку Kibana
1. Інструкція з користування
Kibana є інструментом для візуалізації журналів усіх додатків. Журнали у будь-якому віртуальному середовищі записуються до консолі й дублюються в Elasticsearch.
Отримати доступ до журналів можна в додатку Kibana.
Посилання до сервісу технічних логів Kibana можливо отримати в адміністративній панелі Control Plane: Відкрийте вкладку Швидкі посилання > розділ Операційна зона Платформи та перейдіть за посиланням до Вебінтерфейс перегляду журналу подій Платформи (Kibana). |
Для цього слід виконати наступні кроки:
-
Відкрийте додаток, перейдіть до секції Management.
-
Натисніть
Create index pattern
, щоб отримати можливість прочитати журнали з індексів, що потрапляють до Elasticsearch. -
У полі Define Index Pattern, створіть свій індекс-паттерн згідно з шаблоном. Наприклад, якщо всі журнали починаються з app-, створіть індекс-паттерн app-*, щоб відобразити відповідні журнали.
-
Натисніть
Next step
, щоб перейти до наступного кроку. -
Скористуйтеся фільтром на вкладці Configure Settings, щоб обрати період, дані за який слід відобразити.
За замовчуванням, будуть відображені журнали за останні 15 хвилин. -
Натисніть
Create Index Pattern
. -
Після створення індекс-паттерну
app-*
, перейдіть на вкладку Discover, щоб отримати наступну інформацію:-
кількість журналів, що були створені за обраний період;
-
список журналів.
-
-
Натисніть значок зліва, біля відповідного рядка, щоб подивитися параметри події:
-
час, коли відбулася подія;
-
місце, де вона відбулася;
-
тип (info/warning/error);
-
повідомлення.
-
2. Помилки
2.1. Фільтрування даних
Якщо при виконанні запиту виникла помилка, отримати інформацію щодо цієї помилки можна кількома способами за допомогою trace id – ідентифікатора.
- Спосіб I.
-
Щоб дістатися до журналів, що містять інформацію про подію, необхідно скопіювати trace id у Реєстрі на порталі або в Openshift і додати його у строку пошуку на вкладці Discover. Також необхідно обрати період, дані за який слід отримати.
- Спосіб II.
-
На вкладці Discover, у вікні Filter, оберіть
X-B3-Traceid
, потім is, додайте trace id і натиснітьSave
.
Журнали, що з’являться на сторінці, відповідатимуть даному trace id.
Щоб скоротити обсяг інформації, яку буде відображено, і отримати лише
необхідну, слід налаштувати відповідні поля, обравши Message
і Level
зі списку ліворуч.
2.2. Візуалізація даних
Kibana дозволяє візуалізувати інформацію за допомогою різних чартів. Для цього здійсніть наступні кроки:
-
Оберіть вкладку Visualize;
-
Натисніть
Create visualization
; -
Оберіть тип візуалізації;
-
Оберіть час, за який слід отримати дані.
Візуалізації можуть бути об’єднані й розміщені на одній дошці за допомогою вкладки Dashboard.
2.3. Імпорт дашборду
Для імпортування дашборду, завантажте файл kibana-logs-dashboard.json.
Далі виконайте наступні кроки:
-
Оберіть вкладку Management.
-
Натисніть
Saved Objects
. -
Натисніть
Import
. -
У вкладці, що відкрилася, знов натисніть
Import
. -
Після завантаження, зайдіть в папку Downloads і оберіть файл kibana-logs-dashboard.json.
-
Натисніть
Import
іDone
, щоб імпортувати всі об’єкти, серед яких є:-
дашборд;
-
індекс-паттерн, що був створений;
-
всі візуалізації.
-
Після здійснення імпорту, для отримання доступу до консолідованої інформації з усіх журналів виконайте наступні дії.
-
Перейдіть на вкладку Dashboard.
-
Оберіть
Logs Dashboard
зі списку. -
Оберіть середовище за допомогою фільтрів.
-
Натисніть
Apply changes
та отримайте агреговану інформацію по даному середовищу за останні 15 хвилин. -
Скористайтеся фільтром, щоб зазначити час, за який потрібна інформація.
2.4. Робота з чартами
Інформація, яку відображено на чартах і в таблицях містить:
-
загальну кількість запитів за обраний період:
-
вихідних;
-
вхідних.
-
-
кількість вхідних запитів, що надійшли в те чи інше середовище.
-
загальну кількість:
-
помилок;
-
відповідей.
-
-
кількість відповідей, що надійшли в те чи інше середовище;
Запити й відповіді є окремі події, що пишуться в окремі журнали. Кількість відповідей повинна сходитися з кількістю запитів.
Відповідь вважається успішною, якщо код відповіді не перевищує 500. Якщо значення сягає 500 і більше, це вказує на наявність помилки.
-
http трафік (перелік запитів, що надійшли та відповідей, що були отримані);
-
всі журнали з інформацією, яка дозволяє провести детальне розслідування падіння запиту;
-
далі фільтруємо інформацію за конкретним trace id;
-
ми бачимо скільки запитів і відповідей було за цим trace id, всі журнали, а також повідомлення в журналах, що містять такі дані:
-
час тривання запиту;
-
хедери;
-
статус-код відповіді;
-
повідомлення;
-
всі журнали, що відповідають цьому ідентифікатору.
-
-
виключення є сортовані за кількістю (зменшується знизу вверх) і містять наступну інформацію:
-
які то були виключення;
-
на якому сервісі виникли.
-
Для отримання більш детальної інформації щодо виключення:
-
оберіть час;
-
перейдіть до поля
container
і оберіть ім’я сервісу, на якому трапилася помилка; -
натисніть
Apply changes
.
Якщо помилка трапилася не у рамках якогось сервісу:
-
Скопіюйте назву помилки.
-
Додайте назву у рядок пошуку (повинна бути у подвійних лапках з метою фільтрування за точним співпадінням всіх символів).
У таблиці нижче, наведені такі дані:
-
час;
-
рівень;
-
повідомлення.
-
Розділ повідомлення містить детальну інформацію про помилку та причини, за яких вона сталася.
На вкладці Dashboard
, ми бачимо кількість помилок,
що виникли за обраний період часу.
Якщо натиснути на цифру, буде створено фільтр з кодами відповідей: 501, 502, 503, 504, 505.
Нижче ми можемо побачити інформацію відносно цих кодів відповідей. Якщо скопіювати trace id запита, де сталася помилка і вставити в строку пошуку на вкладці Dashboard, можна отримати інформацію за цим ідентифікатором.
Зараз ми маємо змогу бачити кількість запитів, відповідей та помилок за даним trace id.
Далі переходимо до таблиці, яка містить інформацію по запиту де сталася помилка. Таблицю слід починати дивитися знизу оскільки дані сортовані за часом.
Таблиця дозволяє прослідкувати весь шлях проходження запиту і знайти місце де сталася помилка, а також з’ясувати її причини.
Запит з помилкою завжди має виключення, за допомогою якого ми можемо зрозуміти чому сталася помилка. Для цього треба звернути увагу на розділ level, який може мати одне з трьох значень:
-
info – інформація про стан подій;
-
warning – застереження;
-
error - помилка.
Перші два значення не є критичними та не потребують особливої уваги.
Щоб знайти помилку скористуйтеся фільтром на вкладці Dashboard
і оберіть err.
У журналах помилок, що відкрилися, натисніть на стрілку справа, щоб подивитися детальну інформацію.
Дана інформація містить дані про помилку і причину.