FCEFPARSER
解析 ArcSight 通用事件格式 (CEF) 日志文件。该解析器将值直接加载到列名称与源数据键相匹配的任何表列中。该解析器可将加载到 Flex 表中的数据存储在单个 VMap 中。
该解析器仅可用于 Flex 表。所有 Flex 解析器均会将数据作为单个 VMap 存储在 LONG VARBINAR_raw__
列中。如果某个数据行过大而无法适应该列,该数据行将被拒绝。Vertica 在加载带 NULL 指定列的数据时支持 NULL 值。
语法
FAVROPARSER ( [parameter‑name='value'[,...]] )
参数
delimiter
- 单字符分隔符。
默认值:
' '
record_terminator
- 单字符记录终止符。
**默认 **** 值: **
newline
trim
- 布尔值,指定是否从标题名和键值中去掉空格。
默认值:
true
reject_on_unescaped_delimiter
- 布尔值,指定是否拒绝包含非转义分隔符的行。CEF 标准不允许出现此类行。
默认值:
false
示例
以下示例演示了为 CEF 数据创建 Flex 表的示例,该表包含两个实际列,eventId
和 priority
。
-
创建 Flex 表
cefdata
:=> create flex table cefdata(); CREATE TABLE
-
使用 Flex 解析器
fcefparser
加载一些基本的 CEF 数据:=> copy cefdata from stdin parser fcefparser(); Enter data to be copied followed by a newline. End with a backslash and a period on a line by itself. >> CEF:0|ArcSight|ArcSight|2.4.1|machine:20|New alert|High| >> \.
-
使用
maptostring()
函数查看cefdata
Flex 表的内容:=> select maptostring(__raw__) from cefdata; maptostring ------------------------------------------------------------- { "deviceproduct" : "ArcSight", "devicevendor" : "ArcSight", "deviceversion" : "2.4.1", "name" : "New alert", "severity" : "High", "signatureid" : "machine:20", "version" : "0" } (1 row)
-
从
cefdata
Flex 表中选择一些虚拟列:= select deviceproduct, severity, deviceversion from cefdata; deviceproduct | severity | deviceversion ---------------+----------+--------------- ArcSight | High | 2.4.1 (1 row)
有关详细信息,请参阅 通用事件格式 (CEF) 数据
另请参阅