serilog - 从 Serilog.Sinks.Seq 将事件发布到 Seq 时被禁止

标签 serilog seq

我在将日志从 C# 控制台应用程序发布到 Seq 时遇到问题。我正在使用 NuGet 包 Serilog.Sinks.Seq 进行日志记录。在控制台输出中我收到错误消息:

Exception while emitting periodic batch from Serilog.Sinks.Seq.SeqSink: Serilog.Debugging.LoggingFailedException: Received failed result Forbidden when posting events to Seq

Seq 配置为接受所有日志,因此我不清楚为什么禁止记录到 Seq。

控制台应用程序的源代码:

using Serilog;
using System;

namespace SeqLogTest
{
    class Program
    {
        static void Main(string[] args)
        {
            Log.Logger = new LoggerConfiguration().WriteTo.Seq("http://localhost:5341").CreateLogger();

            Serilog.Debugging.SelfLog.Enable(Console.Error);

            Log.Warning("Hello Seq, it is warning!");

            Log.CloseAndFlush();

            Console.ReadKey();
        }
    }
}

感谢您的帮助!

最佳答案

事实证明,问题的原因是错误创建了 Windows 防火墙规则,该规则本应允许端口 5341 上的连接,但实际上并不起作用。删除规则后,Seq 开始正常显示日志。

关于serilog - 从 Serilog.Sinks.Seq 将事件发布到 Seq 时被禁止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58990105/

相关文章:

c# - 使用 Serilog XML 配置指定自定义增强器

c# - 记录(通过 Serilog)到 ElasticSearch 不起作用

r - 约束间隙插值

r - 你如何使用with.with为r中的唯一值创建序列

rust - 使用Arrayfire设置索引值

c# - Serilog SourceContext 类名仅通过 appsettings.json 唯一方法

asp.net-mvc - 无法将用户信息放入 Serilog 纯文本日志中

elasticsearch - Serilog 接收器(dll 文件)不会复制到 iOS 应用程序中

r - 如何在R中生成从01开始到99结束的序列?

parsing - Seq.Api.Client.SeqApiException : 400 - The filter expression could not be successfully parsed