我试图用flume读取一个syslog,使用morpline将其分成几个部分,并用delimiter''将结果写入hdfs,但我不知道如何将'grok'的输出重定向到sink。
谢谢!!
这是我的变形线文件:
morphlines:[{id:morphline1
commands : [
{
readLine {
charset : UTF-8
}
}
{
grok {
dictionaryFiles : [/grok-dictionaries]
expressions : {
message : """<%{POSINT:priority}>%{SYSLOGTIMESTAMP:timestamp} %{SYSLOGHOST:hostname} %{DATA:program}(?:\[%{POSINT:pid}\])?: %{GREEDYDATA:msg}"""
}
}
}
]
} ]
1条答案
按热度按时间9udxz4iz1#
解决了的!这就是解决方案:
{java{code:“”record.replacevalues(“\u attachment\u body”,record.getfirstvalue(“\u attachment\u body”).tostring().getbytes(charsets.utf\u 8));返回child.process(record);“”“}}