我在 Azure 中有一个 ASP.NET Core MVC 应用程序。我已经在 MVC 中实现了日志,我想在其中捕获信息日志和错误日志。因此,当需要时,开发人员可以在 Azure 门户中查看日志。为了做到这一点,我遵循了一些教程并从 stackoverflow 论坛获得了帮助,并多次尝试了不同的方法,但我无法在文件系统中看到错误日志。我的目标是使用文件系统查看文件的信息日志和错误。因为有很多方法可以查看错误,但我不想只看到错误,而是想看到信息以及我想在文件中看到的信息。请参阅下图了解 Azure 中的代码和设置。
--捕获错误的代码。该方法调用另一个方法,这肯定会出错。我使用诊断法来尝试是否可以捕获日志文件中的信息。但是,我有其他代码确实有 _loggger.logInformation("信息在此处") 的代码
--home>Logfiles>Application 下文件的 Kudu 视图。除了视图之外,我还检查了其他文件夹中的文件,以防万一文件是在其他位置创建的但没有创建文件。
所以请帮忙。
我可以使用您共享的相同代码记录信息和错误消息。
(ex.Message,"Text")
,而不是 (ex,"Text")
。builder.Logging.AddApplicationInsights();
行代码。我的
Controller.cs
:
[HttpGet(Name = "GetWeatherForecast")]
public IEnumerable<WeatherForecast> Get()
{
try
{
_logger.LogInformation("Log Information from API");
throw new Exception();
}
catch (Exception ex)
{
_logger.LogError(ex.Message, "Errorrrrrrrrrrrr");
_logger.LogError(ex.StackTrace);
_logger.LogError("DEBUG: A NEW EXCEPTION without Ex");
_logger.LogError(ex, "DEBUG ERROR: Error EXCEPTION with ex");
}
-----
}
我的
appsettings.json
文件:
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
}
}
App Service logs
中启用 Application logging
、Web server logging
、Detailed error messages
和 Failed request tracing
,如下所示。执行来自控制器的请求。
现在检查 LogStream 中的日志和跟踪。
主页 > 日志文件 > 应用程序下文件的 Kudu 视图
Diagnostics-Logs
的日志文件(我已在Program.cs
文件中设置)将在C:\home\LogFiles\Application
文件夹下创建。LogStream
中看到的日志也可以在这里看到。