У нас есть куча проблем (длительное время ответа) с несколькими проектами в производстве и хотелось посмотреть, что именно происходит на сервере. Затем я продолжил добавлять Application Insights ко всем нашим проектам, следуя этой статье. Проблема в том, что оба наших проекта WebAPI не отправляют данные сервера на портал Azure, а все остальные проекты (MVC 5).
Это то, что показано, когда я обращаюсь к соответствующему лесу Application Insights на Azure:
Я попытался отключить и снова включить сбор данных в Мониторе состояния Insight Status на наших Azure VM, перезапустил IIS несколько раз при обращении к API, но безрезультатно. Когда я включаю его в проект MVC, я могу видеть данные почти мгновенно на портале Azure, когда открываю страницы на сайте.
Когда я увидел, что эти данные не были отправлены с наших Azure VM для этих конкретных проектов, я попытался настроить те же коллекции в нашей среде dev, которая размещена в нашей собственной инфраструктуре, и точно такая же ситуация повторялась сама, что это связано с проектами, размещаемыми в Azure VM.
Я не совсем уверен, что мешает этим проектам отправлять данные Azure, но, взглянув на рабочие проекты и на неработающие, я думаю, что это может быть связано с тем, что наши проекты WebAPI используют новый OWIN-конвейер, а MVC - это стандартные проекты MVC. Я проверил как файл web.config, так и папку bin для обоих типов проектов, и они, похоже, были правильно изменены монитором Insights (я могу видеть те же новые DLL, добавленные в папку bin и тот же самый http-модуль, добавленный в Интернет. конфигурации).
С учетом этого, как включить телеметрию на стороне сервера, используя приложения Insights для проектов WebAPI, которые полагаются на конвейер OWIN/Katana? Что я могу сделать, чтобы узнать, что именно заставляет проект не отправлять данные в Azure в этом случае?