问题标签 [serilog]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
804 浏览

.net - 如何在 Serilog 中手动渲染模板及其参数?

如何实现以下方法?

ILogger.Debug论点与等接受的论点相同。

我想要这个的原因是因为我想在一个中间异常中保留模板/值,它也需要有单个字符串消息。基本上是这样的:

0 投票
1 回答
124 浏览

linq - 使用 RavenDb 和 Serilog 查询问题

我将 Serilog 日志事件存储到 ravenDb 中。

现在我尝试编写一个查询,其中应返回具有特定“动态”属性的所有文档。

这是我的查询(不工作)

这是我试图查询的 ravenDb 文档之一的示例:

刚得到一个 NotSupportedException:无法理解表达式:.Where(o => o.Properties.ContainsKey("Role"))

我在这里做错了什么?由于 Serilogs 结构化日志记录功能以及 nuGet 将其与 RavenDb 集成,因此必须能够在 Properties-object 及其内部的对象和值上完成一些这样的查询?

0 投票
1 回答
3248 浏览

serilog - 使用 Serilog 记录通用对象

是否可以登录传入参数是通用的方法?例如

请注意,在上面,我在模板中使用字符串连接,我不确定这是最佳实践。还有另一种记录传入对象的方法吗?

0 投票
2 回答
13985 浏览

winforms - 桌面版 Serilog GUI

Serilog 是一个日志库,它具有许多日志查看/分析服务(如 Glimpse 或 Loggly)的接收器(适配器)。这很酷,但它们都需要浏览器才能查看日志。

是否有适用于 serilog 的日志条目的桌面应用程序(使用 winforms、WPF 等)的现成 GUI 控件?

PS 我们可以使用 IObservable serilog Sink 并创建我们自己的“LogGrid”,但我们不希望重新发明自行车。

0 投票
1 回答
1838 浏览

c# - 配置 NServiceBus 以记录导致消息重试的异常

我正在使用 NServiceBus 4.6 和 Serilog。我已经将 NServiceBus 配置为通过以下方式使用 Serilog:

工厂本身也很简单:

我肯定会收到与 NServiceBus 相关的日志条目,但缺少的一件事是处理消息但引发异常时的异常详细信息。我可以在 NServiceBus 消息头中看到异常信息(直接通过查看错误队列中的消息或通过 Service Insight),但 NServiceBus 记录的消息缺少最相关的信息:

ID 为“0d255d19-85f9-4915-a27c-a41000da12ed”的消息 FLR 失败,将移交给 SLR 进行重试尝试 1

或者

SLR 未能解决消息 0d255d19-85f9-4915-a27c-a41000da12ed 的问题,并将被转发到 MYERRORQUEUE 的错误队列

没有关于根异常的任何详细信息会使调试有点困难。它需要开发人员打开 Service Insight,或者打开一个工具来查看队列本身中的消息。两者都很麻烦,并且都缺乏任何可扩展性。

例如,Serilog 允许您创建 ILogEventEnricher 类,这些类可以记录有关异常的特殊详细信息 - 异常的简单 .ToString 未记录的内容。如果没有 NServiceBus 实际记录我的异常,我就无法提取这些详细信息。

我在这里想念什么?

0 投票
3 回答
24772 浏览

c# - 向 Serilog 添加自定义属性

我在我的应用程序中使用带有 MS SQL Server 接收器的 Serilog。假设我已经定义了以下类...

...并创建了一个实例:

我在我的代码中放置了以下日志调用:

是否也可以在不将其添加到消息模板BirthDate的情况下记录该属性,以便在XML 列中呈现它?我想稍后在我的应用程序日志查看器的详细信息视图中输出它。Properties

我基本上是在寻找类似于对象解构的行为,但没有将平面对象打印为日志消息的一部分。

0 投票
1 回答
11100 浏览

serilog - 如何在 serilog RollingFile outputTemplate 中输出事件源类名?

RollingFile.outputTemplate我在配置中用于接收器的内容<appSettings>如下:

我得到的输出日志为:

19:55:10 [Information] Application_Start...

但是,我还想输出生成日志的类名(源),例如 -

19:55:10 [Information] [Global.asax.cs] Application_Start...

我应该为“价值”添加什么?我添加了[Source]但无法正常工作。

value="{Timestamp:HH:mm:ss} [{Level}] [Source?] {Message}{NewLine}{Exception}"

0 投票
2 回答
926 浏览

autofac - 如何使用 Serilog 与 Raygun 和 Autofac 区分日志和错误

我正在尝试使用 AutoFac 将 Serilog 与 Raygun 接收器一起使用

我使用https://groups.google.com/forum/#!topic/serilog/R23B8CLso9Q成功地使用 AutoFact 配置 Serilog

如果我只想将跟踪/调试/信息记录到日志滚动文件并将警告/错误/致命记录到滚动文件和 raygun

如何配置日志?

这是我的实际配置:

使用此 web.config 条目:

由于 conf 是全局的,如果我添加 .WriteTo.Raygun(),它会将trace/debug/info记录到 raygun 我不想要的。

有任何想法吗

0 投票
5 回答
20668 浏览

c# - Serilog - 多个日志文件

我正在使用 Serilog 进行日志记录,但无法弄清楚如何将日志事件分隔到不同的文件中。例如,我想将错误记录到 error_log-ddmmyyyy.txt 并将警告记录到 warn_log-ddmmyyyy.txt。

这是我的记录器配置:

它仅在我在日志消息中明确指定 {Level} 属性时才有效。

我试图使用:

但它也没有用。

0 投票
1 回答
5015 浏览

c# - Serilog topshelf 集成不起作用

我正在尝试使用 Topshelf 和 Serilog(分别为 Serilog.Extras.Topshelf 包)为我的 Windows 服务设置一个简单的日志记录配置。

该服务运行良好,但是没有输出到控制台和指定的日志文件(我可以看到正在创建一个,但它仍然是空的)。有没有人使用这两个框架的经验?