C# Azure:如何在Azure中的ASP.NET核心应用程序中写入和读取自定义日志消息?
我希望实现以下目标:C# Azure:如何在Azure中的ASP.NET核心应用程序中写入和读取自定义日志消息?,c#,azure,asp.net-core,logging,pulumi,C#,Azure,Asp.net Core,Logging,Pulumi,我希望实现以下目标: 在我的ASP.NET核心web服务应用程序中具有自定义日志语句 将我的应用程序部署到Azure(在我的例子中使用Pulumi) 调用webservice,使其触发日志代码 以编程方式或通过基于Azure浏览器的GUI读取记录的消息 我的目标是.NET5.0 在我的代码中,我执行以下操作: public class MyController : ControllerBase { private readonly ILogger<MyController>
public class MyController : ControllerBase
{
private readonly ILogger<MyController> _logger;
public MyController(ILogger<MyController> logger) => _logger = logger;
public async Task<ActionResult<something>> DoStuff()
{
_logger.LogInformation("Hello, World!");
...
}
}
通过上述步骤,当我在VisualStudio中以调试模式运行应用程序时,我可以在输出窗格中看到日志消息。所以日志代码肯定会被触发。但是,当我将应用程序部署到Azure时,我不知道如何获取日志消息,并且我发现Azure GUI令人困惑
我正在挣扎的是:
程序
和启动
类中的NuGet包或东西提前谢谢 您有几种选择:
要下载日志,请使用命令或使用FTP连接到日志目录。您有几个选项:
要下载日志,请使用命令或使用FTP连接到日志目录,我想我已经找到了缺少的内容。我做了两件事 第一件事是将我在Pulumi中的错误级别从“error”更改为“Verbose”: 另一件事是安装一个站点扩展:
我想我找到了丢失的东西。我做了两件事 第一件事是将我在Pulumi中的错误级别从“error”更改为“Verbose”: 另一件事是安装一个站点扩展:
您可以在单击(例如)性能后读取日志→ 选择一个电话→ 查看右下角的“查看所有遥测”。如果日志没有出现,则配置为发送您希望的日志级别。我没有看到“查看所有遥测”按钮。你能再解释一下你点击按钮的顺序吗?你可以在点击(例如)后阅读日志→ 选择一个电话→ 查看右下角的“查看所有遥测”。如果日志没有出现,则配置为发送您希望的日志级别。我没有看到“查看所有遥测”按钮。你能再次解释一下你点击按钮的顺序吗?还有一个选项可以实时查看日志(无需手动使用az webapp log tail命令)。转到Azure门户->监控(左菜单)->日志流。还有一个选项可以实时查看日志(无需手动使用az webapp Log tail命令)。转到Azure门户->监视(左菜单)->日志流。
var app = new AppService(
"kmsApp",
new AppServiceArgs
{
Logs = new AppServiceLogsArgs
{
ApplicationLogs = new AppServiceLogsApplicationLogsArgs { FileSystemLevel = "Error" },
DetailedErrorMessagesEnabled = true,
FailedRequestTracingEnabled = true,
HttpLogs = new AppServiceLogsHttpLogsArgs
{
FileSystem = new AppServiceLogsHttpLogsFileSystemArgs { RetentionInDays = 1, RetentionInMb = 35 }
}
}
},
...);
ApplicationLogs = new AppServiceLogsApplicationLogsArgs { FileSystemLevel = "Verbose" },