#c# #asp.net-core #logging #oauth-2.0
Вопрос:
Я могу просматривать связь по переднему каналу с помощью инструментов разработчика браузера, но как можно просматривать или регистрировать связь по заднему каналу, чтобы получить представление о потоке?
В частности, я хочу видеть http-трафик при обмене кода авторизации на токены.
До сих пор я безуспешно пытался:
- Добавлено в AppSettings.json: «System.Net.Http.HttpClient»: «Отладка»
- Добавлено в Program.cs: ConfigureLogging(x => x.AddConsole())
- Добавлено в Startup.cs: app.UseHttpLogging (по-видимому, доступно в .net 6 preview 4)
Спасибо.
Комментарии:
1. Возможно , вам потребуется увеличить его до
Trace
уровней, чтобы просмотреть сведения самого низкого уровня, поскольку такие вещи, как токены OAuth, по умолчанию не регистрируются, поскольку они содержат конфиденциальную информацию.2. В дополнение к тому, что сказал @MartinCostello, включите ведение журнала PII
IdentityModelEventSource.ShowPII = true;
(для разработки)
Ответ №1:
Спасибо @abdusco и @Martin. Используя указатели, которые вы дали, я смог найти больше информации.
В интересах других, вот фрагмент кода для добавления при запуске::Configure() и источник в качестве ссылки:
IdentityModelEventSource.Logger.LogLevel = EventLevel.Verbose;
IdentityModelEventSource.ShowPII = true;
var listener = new TextWriterEventListener(new StreamWriter(Console.OpenStandardOutput())
{
AutoFlush = true,
});
listener.EnableEvents(IdentityModelEventSource.Logger, EventLevel.LogAlways);
Ссылка: https://gist.github.com/jorrit/0712ed32534b45ccca393e4c86b08526