您可以针对 FileLog
和 WinLog
收集器配置逗号分隔值 (CSV) 分析程序。
针对 csv
分析程序的可用选项是 fields
和 delimiter
。
逗号分隔值分析程序选项
请注意有关 csv 分析程序结构的下列信息。
选项 | 描述 |
---|---|
fields |
字段名称必须用逗号分隔,例如
fields = field_name1, field_name2, field_name3, field_name4此定义假定名称 field_name1、 field_name2、 field_name3 和 field_name4 按顺序分配给提取的字段。 如果 CSV 分析程序必须省略某些字段,则可以从列表中省略这些字段的名称。例如, fields = field_name1, , field_name3, field_name4 在这种情况下,分析程序仅从事件中提取第一个、第三个和第四个字段,并将名称 field_name1、field_name3 和 field_name4 按顺序分配给它们。 如果 fields 选项未指定日志中的完整字段列表,则分析程序将返回空列表。例如,如果日志文件包含 不能将 |
delimiter |
例如, csv 分析程序支持任何字符集作为分隔符(用双引号括起来),例如“||”或“asd”。日志中字段值的分隔符必须与分隔符参数定义的模式完全匹配,否则,分析程序将失败。 只要 \"、\s、\t 优先被用作转义符而非特殊字符,则可定义如空格或 Tab 之类的特殊字符为 csv 分析程序的分隔符。例如, |
CSV 日志分析程序配置
要分析从 winlog 或 filelog 源收集的日志,请使用以下配置。
[filelog|some_csv_logs] directory=D:\Logs include=*.txt;*.txt.* parser=myparser [parser|myparser] base_parser = csv fields = timestamp,field_name1, field_name2, field_name3 delimiter = ";" field_decoder={"timestamp": "tsp_parser"} [parser|tsp_parser] ; timestamp is a built-in parser base_parser=timestamp ; "format" is an option of timestamp parser format=%Y-%m-%d %H:%M:%S
对于此配置,从 some_csv_logs 源(例如,从 directory=D:\Logs 目录)收集的日志由 myparser 进行分析。如果收集的日志包含三个用分号分隔的值,则分析的事件将按顺序收到 field_name1、field_name2 和 field_name3 名称。
要解析以下 CSV 日志,请执行以下操作:
"United States","USA","North America","High income: OECD","Fiscal year end: September 30; reporting period for national accounts data: CY."
[parser|csv_log_parser] base_parser=csv fields=country_name, country_code, region, income_group, special_notesCSV 分析程序返回以下字段:
country_name=United States country_code=USA region=North America income_group=High income: OECD special_notes=Fiscal year end: September 30; reporting period for national accounts data: CY.