C# 部署后ASP.NET核心web api未将日志发布到Seq
我有一个使用ASP.NET Core 3.1开发的Web Api项目,并安装了Seq用于日志记录。在我的开发机器上,我在Seq UI上接收日志。我还在我的linux服务器(CentOS 7)上安装了Seq、docker和nginx。在docker容器中使用nginx部署到linux服务器(CentOS 7)后,Api运行正常,在控制台上可以看到日志,但没有任何日志记录到Seq UI 我尝试了所有已知的配置,但无法使其工作。我甚至在linux服务器上安装了VS代码,并在其上运行了一个示例代码,成功地在Seq UI上发布了日志,因此我不知道为什么docker容器中部署的api从未成功地在Seq UI上登录。代码如下: Startup.csC# 部署后ASP.NET核心web api未将日志发布到Seq,c#,asp.net-core,asp.net-core-webapi,seq,C#,Asp.net Core,Asp.net Core Webapi,Seq,我有一个使用ASP.NET Core 3.1开发的Web Api项目,并安装了Seq用于日志记录。在我的开发机器上,我在Seq UI上接收日志。我还在我的linux服务器(CentOS 7)上安装了Seq、docker和nginx。在docker容器中使用nginx部署到linux服务器(CentOS 7)后,Api运行正常,在控制台上可以看到日志,但没有任何日志记录到Seq UI 我尝试了所有已知的配置,但无法使其工作。我甚至在linux服务器上安装了VS代码,并在其上运行了一个示例代码,成功
public void ConfigureServices(IServiceCollection services)
{
services.AddControllers();
services.AddLogging(loggingBuilder =>
{
loggingBuilder.AddSeq();
});
}
HomeController.cs
private readonly ILogger<HomeController> _logger;
public HomeController(ILogger<HomeController> logger)
{
_logger = logger;
}
public IActionResult Index()
{
_logger.LogInformation("Called Index action in Home Controller.");
return View();
}
我很困惑,几天来一直在努力让它工作。我不知道如何检查nginx是否会阻止发送到端口5341的邮件,对此我表示怀疑。拜托,我需要帮助,因为我真的很沮丧。
谢谢
"Name": "/seq",
"RestartCount": 0,
"Driver": "overlay2",
"Platform": "linux",
"MountLabel": "",
"ProcessLabel": "",
"AppArmorProfile": "",
"ExecIDs": null,
"HostConfig": {
"Binds": [
"/****/****/Documents/****/****/****/seq:/data:rw"
],
"ContainerIDFile": "",
"LogConfig": {
"Type": "json-file",
"Config": {}
},
"NetworkMode": "dryvadevices_default",
"PortBindings": {
"5341/tcp": [
{
"HostIp": "",
"HostPort": "5341"
}
],
"80/tcp": [
{
"HostIp": "",
"HostPort": "9000"
}
]
},
"RestartPolicy": {
"Name": "unless-stopped",
"MaximumRetryCount": 0
},