2017-02-15 4 views
1

Я хочу отслеживать все API-интерфейсы, которые я создал на одном из моих контейнеров-докеров. Этот контейнер Docker использует инфраструктуру Django REST для своих сервисов. И я запускаю его на Azure. Я хочу контролировать свой API с помощью, если он работает, или если есть слишком много запросов, он будет вызывать предупреждение. Каков его запрос в секунду что-то вроде этого.Инструмент мониторинга API

Мы используем sysdig для мониторинга наших контейнеров, но я не думаю, что он имеет возможность контролировать весь наш API, из нашего Джанго Rest Framework

+0

Вы ищете что-то устанавливаемое (в этом случае вам нужно беспокоиться о * том, что оно падает) или доступно как услуга (например, кто-то запускает службу мониторинга и позволяет узнать, когда ваш API не работает)? – Scovetta

+0

в любом случае .. –

ответ

0

Поскольку вы работаете на Azure, вы должны смотреть на Application Insights:

Insights приложений является расширяемым Application Performance Management службы (APM) для веб-разработчиков на разных платформах. Используйте , чтобы отслеживать ваше онлайн-приложение. Он автоматически обнаружит аномалии производительности . Он включает в себя мощные инструменты аналитики, которые помогают вы диагностируете проблемы и понимаете, что на самом деле делают пользователи с вашим приложением . Он разработан, чтобы помочь вам постоянно улучшать производительность и удобство использования . Он работает для приложений на самых разных платформах, включая .NET, Node.js и J2EE, размещенные на месте или в облаке. Он интегрируется с вашим процессом devOps и имеет точки подключения к различным средствам разработки. Source

Описан мониторинг API here.

+0

Я тоже пробовал, но я не думаю, что он способен с мониторингом API. –

+0

Добавлена ​​ссылка на документацию по мониторингу API. – Scovetta

+0

Хорошо, я попробую это сделать –

1

Чтобы контролировать производительность и время простоя API, вы можете создавать собственные скрипты для проверки вашего API и предупреждать вас о простоях или использовать сторонний сервис для удаленного мониторинга. Это более простой вариант, поскольку он не требует написания и ведения кода.

Одностороннее обслуживание, которое вы можете использовать, это мое, https://assertible.com. Они обеспечивают частые проверки работоспособности (1/5/15 минут), глубокую проверку данных, интеграцию с другими службами, такими как Slack и GitHub, и хороший способ просмотра/управления ошибками тестирования.

Если вы хотите интегрировать с вашим собственным кодом или сценариями, вы можете использовать Trigger URL-адрес и/или Deployments API программно запускать тесты, когда и где:

$ curl 'https://assertible.com/apis/{API_ID}/run?api_token=ABC' 
[{ 
    "runId": "test_fjdmbd", 
    "result": "TestPass", 
    "assertions": { 
     "passed": [{...}], 
     "failed": [{...}] 
    }, 
    ... 
}] 

Надеется, что это помогает!

+0

О, и так как вы также упомянули о мониторинге _resources_ на сервере: я бы порекомендовал также использовать сторонний сервис здесь. Одним из наиболее популярных является [Nagios] (https://nagios.org), поэтому вы можете проверить это и найти похожие инструменты, если это необходимо. –

Смежные вопросы