简介编辑

ECS 日志是您最喜欢的 .NET 日志库的集成。它们可以轻松地将您的日志格式化为与 ECS 兼容的 JSON。

想要了解更多关于 ECS、ECS 日志和其他可用的语言插件的信息?请查看 ECS 日志概述.

.NET ECS 库分为几个类别

模型编辑

所有 .NET ECS 库的核心都由 Elastic.CommonSchema 提供支持,它将 ECS 规范强类型化到 .NET 类。

此库可用于以类型安全的方式将您的事件映射到 ECS。

var doc = EcsDocument.CreateNewWithDefaults<EcsDocument>();
doc = new EcsDocument();

详细了解 Elastic.CommonSchema.

日志格式化器编辑

我们的日志格式化器允许您更改各种日志框架记录到 IO(文件/控制台)的方式,以使用 ECS json。

数据转发器编辑

我们的数据转发器与日志框架集成,以方便将事件(日志)发送到各种 Elastic 接收器。

目前,这些转发器支持 Elastic Cloud 和 Elasticsearch,但其他输出正在开发中。

所有数据转发器都利用 Elastic.Ingest.Elasticsearch.CommonSchema 将事件发送到 Elasticsearch。

丰富器编辑

丰富器可以与 Log FormattersData Shippers 一起安装,以自动丰富生成的 ECS json。

架构编辑

这些库重用了为 Elastic 的其他 .NET 库提供支持的相同组件,从而确保了以共同的方式配置和监控 Elastic 的 .NET 库。

ECS.NET Artichtecture overview

所有数据转发器的核心都依赖于 Elastic.Transport 来协调 HttpRequests。此库也是 Elastic 客户端的核心,确保我们共享最佳实践和配置选项。

数据转发器库都依赖于 Elastic.Ingest.* 中的基于推送的摄取抽象,该抽象提供了一种易于使用的 System.Threading.Channels 支持的方法,以可变速率将事件作为批处理推送到外部数据源。

详细了解 Elastic.Ingest.Elasticsearch.CommonSchema.