parse_regex 通过自定义的正则表达式来解析自定义的日志格式。所以符合三种格式任意一种的事件,最终都能通过这个 VRL 的链路正确地解析到 Structured 变量,然后把解析完后的字段跟当前 Log 里面的其他字段去 Merge 在一起。 (2)Transform-Filter 实际的使用中,除了 Remap 还有一些其它类型的功能。比如,可以利用 ...
如果还是解析错误的话,最终fall back 到 parse_regex 方法。parse_regex 通过自定义的正则表达式来解析自定义的日志格式。所以符合三种格式任意一种的事件,最终都能通过这个 VRL 的链路正确地解析到 Structured 变量,然后把解析完后的字段跟当前 Log 里面的其他字段去 Merge 在一起。 (2)Transform-Filter 实际的使用...
[transforms.process]type="remap"inputs=["track"]source=''' . |= parse_regex!(.message, r'^(?P<ip>\d+\.\d+\.\d+\.\d+)\-(?P<date>\d+\-\d+\-\d+)T(?P\d+:\d+:\d+).+?"(?P<url>.+?)"(?P<status>\d+)(?P<size>\d+)"(?P<agent>.+?)"$') ''' Transform...
source = """. |= parse_regex!(.message, r'^(?P\\d{4}-[0-1]\\d-[0-3]\\d \\d+:\\d+:\\d+\\.\\d+ [A-Z]{3}) (?P\\d+) (?P(\\[\\w+\\]@\\w+|@|\\w+@\\w+)) from (?P(\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}|\\[\\w+\\]|\...
. |= parse_regex!(.message, r'^(?P<ip>\d+\.\d+\.\d+\.\d+) \- (?P<date>\d+\-\d+\-\d+)T(?P\d+:\d+:\d+).+?"(?P<url>.+?)" (?P<status>\d+) (?P<size>\d+) "(?P<agent>.+?)"$') ''' Transform...
. |= parse_regex!(.message, r'^\\[(?P\\S+)\\]\\[(?P<log_level>\\S+)\\s+\\]\\[(?P<query_type>\\S+)\\]\\[(?P<instance>\\S+)\\]\\[(?P<query_index>\\S+)\\]\\[(?P<query_shard>\\d+)\\] took\\[(?P<delay_time>\\d+\\.{0,1}\\d*)(?P<delay_tim...
为了得到结构化的数据,我们在 VRL 中使用带有捕获组的正则表达式来处理每一行日志,这部分配置到 transforms 中。 [transforms.process] type = "remap" inputs = ["track"] source = ''' . |= parse_regex!(.message, r'^(?P<ip>\d+\.\d+\.\d+\.\d+) \- (?P<date>\d+\-\d+\-\d+)T...
[transforms.parse_moss] type = "remap" inputs = ["moss"] source = ''' .|=parse_regex!(.message, r'^(?P<log_date>\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}:\d{2}\.\d{3})\s+\[(?P<thread_name>.*)\]\s+\[TID:(?P<tid>.*)\]\s+(?P<...
# vector.toml[transforms.postgres_remap]type="remap"inputs=["postgres_logs"]source=""". |= parse_regex!(.message, r'^(?P\\d{4}-[0-1]\\d-[0-3]\\d \\d+:\\d+:\\d+\\.\\d+ [A-Z]{3}) (?P\\d+) (?P(\\[\\w+\\]@\\w+|@|\\w+@\\w+)) from (?P(\\d{...
# vector.toml[transforms.postgres_remap]type = "remap"inputs = [ "postgres_logs" ]source = """. |= parse_regex!(.message, r'^(?P\\d{4}-[0-1]\\d-[0-3]\\d \\d+:\\d+:\\d+\\.\\d+ [A-Z]{3}) (?P\\d+) (?P(\\[\\w+\\]@\\w+|@|\\w+@\\w+)) from ...