В нашем приложении scala/play у нас есть запрос, который обычно занимает около секунды, чтобы ответить. Примерно в 2-4% случаев запросы требуют от секунд для ответа - и веб-прокси выдает запрос (504). 61 секунд выглядит подозрительно, как таймаут.Play framework 60 секундная задержка - распространение информации в журналах
Я пытаюсь получить больше информации из журналов, но они молчат в течение этих 61 секунды. Я пробовал установить играть и io.netty, чтобы выровнять DEBUG, но ничего не нашли. Успешный ответ последовал на следующем запросе (1,4 второй щели) выглядит
2017-01-31 13:13:09,931 - [DEBUG] - from com.xxx.api.controllers.Api in monolith-akka.actor.default-dispatcher-34
new Result created - .. ..
2017-01-31 13:13:11,318 - [DEBUG] - from com.xxx.api.controllers.Api in monolith-
akka.actor.default-dispatcher-34
Upload media - .. ..
Отклик с последующим следующим запросом с второго зазора выглядит
2017-01-31 13:12:08,624 - [DEBUG] - from com.xxx.api.controllers.Api in monolith-akka.actor.default-dispatcher-31
new Result created - .. ..
2017-01-31 13:13:09,892 - [DEBUG] - from com.xxx.controllers.Api in monolith-akka.actor.default-dispatcher-34
Upload media - .. ..
Кто получил какие-либо предложения при настройке logback.xml, чтобы рассказать мне, что происходит между 13:12:08 и 13:13:09.
Где у вас есть журналы в коде? – nmat
'uploadMedia()' - это метод реализации контроллера, называемый конфигурацией маршрутов. _Upload media .._ - это первое выражение в методе, _new Result created .._ - последнее утверждение в методе. –
Установив уровень для TRACE на всех журналах, я могу найти, я сузил задержку на следующие две строки, которые указывают, что задержка происходит в рамках Play. 'хх: х5: 45640 \t play.core.server.netty.PlayRequestHandler в Netty-событие-петля-1 \t HTTP-запрос получен netty' ' хх: х6: 45630 \t play.api.mvc.Action в монолите -akka.actor.default-dispatcher-23 \t Вызов действия с запросом ' –