Skip to content

ForestHeart/ip_monitoring

Repository files navigation

IP Monitoring System

Это приложение предназначено для мониторинга доступности IP-адресов и сбора статистики.

Требования

  • Docker
  • Docker Compose

Установка

Клонируйте репозиторий:

git clone https://github.com/yourusername/ip-monitoring-system.git
cd ip-monitoring-system

Запуск

  1. Постройте и запустите контейнеры Docker:

    docker-compose up --build
  2. Приложение будет доступно по адресу http://localhost:9292.

Использование

API

  • 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 - выключить сбор и удалить адрес

Пример запросов

Добавить IP-адрес

curl -X POST http://localhost:9292/ips -H "Content-Type: application/json" -d '{"ip":"8.8.8.8","enabled":true}'

Получить статистику для IP-адреса

curl -X GET "http://localhost:9292/ips/1/stats?time_from=2023-01-01T00:00:00Z&time_to=2025-01-02T00:00:00Z"

Тестирование

  1. Создайте и мигрируйте тестовую базу данных:
docker-compose run app bundle exec rake db:create db:migrate RACK_ENV=test
  1. Запуск тестов:
docker-compose run app bundle exec rspec

About

Ip monitoring service

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published