ASP.NET Core уже собирает эту информацию.Вам просто нужно убедиться, что он зарегистрирован, в общем, и где вы хотите, чтобы это было.В разработке они отправляются на консоль.Если вы посмотрите это, вы увидите журналы, такие как:
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
Request starting HTTP/1.1 GET http://localhost:44301/
...
info: Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker[1]
Route matched with {action = "Index", controller = "Home"}. Executing action MyApp.HomeController.Index (MyApp)
...
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[2]
Request finished in 7.981ms 200 text/html; charset=utf-8
Основные категории, которые вас заинтересуют: Microsoft.AspNetCore.Hosting
и Microsoft.AspNetCore.Mvc
, которые оба регистрируются на уровне Information
.При работе в рабочей среде уровень журнала по умолчанию - Warning
, поэтому вы не регистрируете его там.Вы можете просто добавить что-то в свой appsettings.Production.json
файл, например:
"Logging": {
"LogLevel": {
"Microsoft.AspNetCore.Hosting": "Information",
"Microsoft.AspNetCore.Mvc": "Information"
}
}
. Или вы можете указать ведение журнала только для определенного поставщика:
"Serilog": {
"LogLevel": {
"Microsoft.AspNetCore.Hosting": "Information",
"Microsoft.AspNetCore.Mvc": "Information"
}
}
.этот.См. документы по фильтрации журналов для получения дополнительной информации.