Мой API работает на AWS экземплярах EC2, которые находятся за балансировщиком нагрузки Elasti c. С помощью API клиенты будут создавать project
и затем использовать этот проект в последующих запросах. Мне нужно сгруппировать запросы по идентификатору проекта и найти среднее время ответа для каждого проекта. Я могу легко вычислить это среднее время отклика по проектам из самого API, но чтобы придерживаться соглашения об уровне обслуживания, мне действительно нужно узнать среднее время, когда запросы принимаются и возвращаются балансировщиком нагрузки.
Я рассмотрел следующие решения, но ни одно из них, похоже, не может точно соответствовать тому, что мне нужно:
- Журналы доступа ELB. Они кажутся ненадежными:
Elastic Load Balancing logs requests on a best-effort basis. We recommend that you use access logs to understand the nature of the requests, not as a complete accounting of all requests.
Я также даже не знаю, можно ли использовать пользовательские данные в этих журналах. - AWS CloudTrail. Кажется, это отслеживает только AWS запросы API.
- AWS метрики CloudWatch. Показатели кажутся слишком простыми, не удается найти информацию о создании показателей с пользовательскими данными.