У меня есть приложение .NET, которое использует пакет Microsoft.TeamFoundationServer.Client для получения данных с сервера TFS.
Когда я запускаю свое приложение в Visual Studio 2017, я вижу следующую информацию в консоли вывода:
Web method running: [https://mytfsserver/tfs/Site/_apis/git/repositories/<repoId>/items?scopePath=%2FMobile.AuthenticationService%2FMobile.AuthenticationService.Tests%2F&recursionLevel=Full&download=False&version=Release] (GET)items[git]
Web method response: [https://mytfsserver/tfs/Site/_apis/git/repositories/<repoid>/items?scopePath=%2FMobile.AuthenticationService%2FMobile.AuthenticationService.Tests%2F&recursionLevel=Full&download=False&version=Release] (GET)items[git] 206 ms
Я пытаюсь устранить проблему с производительностью, когда моему тому же приложению на сервере требуется в два раза больше времени для выполнения отчета, чем локально, и я хотел бы зафиксировать время ответа на запрос, как показано в конце второго сообщения отладки ответа.
Есть ли способ программно захватить эти строки отладки? Я знаю, что могу использовать fiddler, но не думаю, что у меня есть права на его установку на моем веб-сервере.
Вот ссылка на существующее поведение вывода отладки VSTS REST API: https://developercommunity.visualstudio.com/content/problem/263288/please-Optionally-Remove-web-method-running-and-we.html
Вот пример вызова, который приведет к такому результату:
var changeset = versionControlServer.ArtifactProvider.GetChangeset(new Uri(externalLink.LinkedArtifactUri));
Как насчет использования таймера, как показано в этом сообщении https://stackoverflow.com/questions/7893897/check-response-time-with-httpwebrequest? — person Adolfo Perez schedule 13.06.2018
Проблема в том, что API TFS выполняет внутренние запросы. Эти строки отладки исходят из библиотеки. Я думаю об использовании прослушивателя Trace, подобного этому stackoverflow.com/questions/1159755/ — person Adolfo Perez schedule 13.06.2018
Не глядя на код, это трудно понять, но нельзя ли запустить таймер перед передачей в API, а затем остановить его после получения ответа? — person Adolfo Perez schedule 13.06.2018
Я поместил образец запроса в свой исходный пост. Я мог бы попробовать оборачивать свои звонки в таймер. Спасибо за предложение — person Adolfo Perez schedule 13.06.2018
Просто попробуйте средство диагностики — Network
в VS, см. в этом блоге, чтобы узнать подробности. Надеюсь, это поможет. — person Adolfo Perez schedule 14.06.2018
@AdolfoPerez Вы решили проблему? любое обновление? — person Adolfo Perez schedule 26.06.2018