Serilog:是时候在mongoDB封顶收藏中生活了

本文关键字:收藏 生活 活了 mongoDB Serilog | 更新日期: 2023-09-27 18:26:59

Serilog如何实现带上限集合的周期?请参阅此代码:

Log.Logger = new LoggerConfiguration() .WriteTo.MongoDBCapped(
                            database: database,
                            restrictedToMinimumLevel: (Serilog.Events.LogEventLevel)logEventLevel,
                            collectionName: _collectionName,
                            period: TimeSpan.FromDays(RetainedDays))

因为根据MongoDB文档,您不能将其"TTL功能"与capped集合一起存储文档。所以我假设:库在其代码中以某种方式跟踪这一点,但我想知道如何:以及它是否足够快。

MongoDB封顶系列:https://docs.mongodb.org/manual/core/capped-collections/Serilog的GitHub MongoDB接收器(目标):https://github.com/serilog/serilog-sinks-mongodb

也许用一个普通的集合和TTL文档一起编写我们自己的Sink会更容易。

Serilog:是时候在mongoDB封顶收藏中生活了

period参数不是TTL,而是Serilog在将事件批量发送到MongoDB之前缓冲事件的持续时间。我认为这个API不支持TTL。