Skip to content

PET project. Data comes to EFK structure from flask web server, running with gunicorn in docker compose

Notifications You must be signed in to change notification settings

Sectumsempr/pet-efk-docker-flask-gunicorn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EFK stack (PET)

ТЗ

  1. Описать docker-контейнеры для flask-приложения, развернутого с помощью gunicorn, fluentd, elasticsearch и kibana.
  2. Во flask-приложении опишите 6 роутов (/one, /two, .., /five, /error , где роуты возвращают HTTP-коды состояния 201, 202,..., 205, 500 соответственно)
  3. Опишите конфиг логов для gunicorn.access, чтобы они писали в stdout приложения
  4. Опишите конфиг для fluentd, чтобы он забирал логи из stdout контейнеров и передавал в elasticsearch. Также необходимо описать шаблон для обработки gunicorn.access логов, используя fluentd grok plugin.
  5. Топ-5 самых посещаемых эндпоинтов в kibana dashboard
  6. Счетчик посещений сайта в kibana dashboard
  7. Топ-5 кодов состояния HTTP в kibana dashboard

Реализация

Использован docker compose, содержащий основные контейнеры для поднятия сервера gunicorn и flask, а также контейнеры EFK стека, настроена их коммуникация. Dashboards настроены локально - скриншот:

img.png

Запуск:

docker compose up

Запросы на flask c помощью клиента

python app/client.py

Kibana: kibana-local

About

PET project. Data comes to EFK structure from flask web server, running with gunicorn in docker compose

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published