gpt4 book ai didi

docker - 带有Docker的Serilog Seq Sink无法捕获事件

转载 作者:行者123 更新时间:2023-12-02 18:26:56 28 4
gpt4 key购买 nike

我正在Windows 10专业版的Net Core 3.1上运行Web API和控制台应用程序。我有用于控制台,文本文件,json文件,mssql和seq的接收器。它们每个都记录所有事件,但seq不记录任何事件。

我使用以下命令安装了Docker:

docker run -d --restart unless-stopped --name seq -e ACCEPT_EULA=Y -v D:\Logs\Seq:/data -p 8081:80 datalust/seq:latest



我使用以下代码创建了记录器:
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Information()
.MinimumLevel.Override("Microsoft", LogEventLevel.Warning)
.MinimumLevel.Override("System", LogEventLevel.Warning)
.Enrich.FromLogContext()
.Enrich.WithMachineName()
.Enrich.WithEnvironmentUserName()
.Enrich.WithProcessId()
.Enrich.WithThreadId()
.WriteTo.Console()
.WriteTo.File($@"{Constants.LogsDirectory}log-.txt", LogEventLevel.Information, rollingInterval: RollingInterval.Day)
.WriteTo.File(new JsonFormatter(), $@"{Constants.LogsDirectory}log-.json", rollingInterval: RollingInterval.Day)
.WriteTo.MSSqlServer(DatabaseAccess.ConnectionString(context), nameof(ProcessMessageLog), columnOptions: columnOptions)
.WriteTo.Seq("http://localhost:8081")
.CreateLogger();

我在D:\ Logs \ Seq目录的seq.json文件中看到以下内容:
  "api": {
"listenUris": [
"http://localhost:8081"
],

我还看到了每分钟编写的日志文件,但是它们都没有捕获Web API或控制台应用程序的事件。

当我转到 localhost:8081时,我收到一条 "localhost refused to connect."消息。

我怀疑端口号有误,但是我不知道。在1)docker设置,2)seq.json值,3)记录器创建之间它们应该是不同还是相同?

最佳答案

看来Docker中的Seq容器不能与我的micro SD卡D:驱动器很好地配合使用。我只是从那个切换到了我的C:驱动器,它工作正常。

关于docker - 带有Docker的Serilog Seq Sink无法捕获事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59941763/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com