Я использую веб-API и консольные приложения на Net Core 3.1 на Windows 10 Professional. У меня есть приемники для консоли, текстовый файл, файл json, ms sql и seq. Каждый из них регистрирует все события, за исключением того, что seq не регистрирует никаких событий.
Я установил Docker с помощью следующей команды:
docker run -d --restart, если не остановлен --name seq -e ACCEPT_EULA = Y -v D: \ Logs \ Seq: / data -p 8081: 80 datalust / seq: последний
Я создал регистратор с этим кодом:
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();
Я вижу следующее в моем seq . json файл в каталоге D: \ Logs \ Seq:
"api": {
"listenUris": [
"http://localhost:8081"
],
Я также вижу файлы журналов, записываемые каждую минуту, но ни один из них не регистрирует события из веб-API или консольных приложений.
Когда я go до localhost:8081
, я получаю сообщение "localhost refused to connect."
.
Я подозреваю, что у меня неверные номера портов, но я не знаю. Должны ли они быть разными или одинаковыми между 1) настройкой docker, 2) значением seq. json, 3) созданием регистратора?