Windows Logtail支持通过插件采集Windows事件日志。本文介绍如何通过日志服务控制台创建Logtail采集配置来采集Windows事件日志。
原理
对于事件日志,Windows提供了Windows Event Log和Event Logging两套API,前者是后者的升级,仅在Windows Vista及以上的版本中提供。Logtail插件会根据所运行的系统,自动选择API(优先选择Windows Event Log)来获取Windows事件日志。
Windows事件日志采用发布订阅的模式,应用程序或者内核将事件日志发布到指定的通道(例如Application、Security、System),Logtail通过对应的Logtail插件调用Windows API,实现对这些通道的订阅,从而不断地获取相关的事件日志并发送到日志服务。
Logtail支持同时采集多个通道事件,例如同时采集应用程序和系统日志。

查看通道信息
您可以在Windows服务器的事件查看器中可以查看通道信息。
采集步骤
后续步骤
采集Windows至日志服务后,您可以在日志服务控制台上查看日志。

字段名 | 字段类型 | 是否会被过滤 | 字段含义 |
---|---|---|---|
activity_id | string | 是 | 表示当前事件所属活动的全局事务ID,同一个活动的事件具有相同的全局事务ID。 |
computer_name | string | 否 | 产生当前事件的节点名。 |
event_data | JSON object | 否 | 和当前事件相关的数据。 |
event_id | int | 否 | 当前事件的ID。 |
kernel_time | int | 是 | 当前事件消耗的内核时间,一般为0。 |
keywords | JSON array | 是 | 当前事件关联的关键字,用于事件分类。 |
level | string | 是 | 当前事件的等级。 |
log_name | string | 否 | 获取当前事件的通道名,即logtail采集配置中Name参数。 |
message | string | 是 | 当前事件关联的消息。 |
message_error | string | 是 | 在解析当前事件关联消息时发生的错误信息。 |
opcode | string | 是 | 当前事件关联的操作码。 |
process_id | int | 是 | 当前事件的进程ID。 |
processor_id | int | 是 | 当前事件对应的处理器ID,一般为0。 |
processor_time | int | 是 | 当前事件消耗的处理器时间,一般为0。 |
provider_guid | string | 是 | 当前事件来源的全局事务ID。 |
record_number | int | 否 | 当前事件关联的记录编号。事件的记录编号会随着每条事件的写入递增,当超过2 32(Event Logging)或2 64(Windows Event Log)后会重新从0开始。 |
related_activity_id | string | 是 | 当前事件所属活动关联的其他活动的全局事务ID。 |
session_id | int | 是 | 当前事件的会话ID,一般为0。 |
source_name | string | 否 | 当前事件的来源,即logtail采集配置中Provider参数。 |
task | string | 是 | 当前事件关联的任务。 |
thread_id | int | 是 | 当前事件的线程ID。 |
type | string | 否 | 获取当前事件使用的API。 |
user_data | JSON object | 否 | 当前事件关联的用户数据。 |
user_domain | string | 是 | 当前事件关联的用户的域。 |
user_identifier | string | 是 | 当前事件关联的用户Windows安全标识(Security Identifier)。 |
user_name | string | 是 | 当前事件关联的用户名。 |
user_time | int | 是 | 当前事件消耗的用户态时间,一般为0。 |
user_type | string | 是 | 当前事件关联的用户的类型。 |
version | int | 是 | 当前事件的版本号。 |
xml | string | 是 | 当前事件最原始的信息,XML格式。 |