Это приложение предназначено для мониторинга доступности IP-адресов и сбора статистики.
- Docker
- Docker Compose
git clone https://github.com/yourusername/ip-monitoring-system.git
cd ip-monitoring-system
-
Постройте и запустите контейнеры Docker:
docker-compose up --build
-
Приложение будет доступно по адресу
http://localhost:9292
.
- POST /ips - добавить адрес с параметрами (enabled: bool, ip: ipv4/ipv6 address)
- POST /ips/:id/enable - включить сбор статистики ip
- POST /ips/:id/disable - выключить сбор статистики ip
- GET /ips/:id/stats - получить статистику для адреса (time_from: datetime, time_to: datetime)
- DELETE /ips/:id - выключить сбор и удалить адрес
curl -X POST http://localhost:9292/ips -H "Content-Type: application/json" -d '{"ip":"8.8.8.8","enabled":true}'
curl -X GET "http://localhost:9292/ips/1/stats?time_from=2023-01-01T00:00:00Z&time_to=2025-01-02T00:00:00Z"
- Создайте и мигрируйте тестовую базу данных:
docker-compose run app bundle exec rake db:create db:migrate RACK_ENV=test
- Запуск тестов:
docker-compose run app bundle exec rspec