logstash读取kafka中的消息。
每个消息都是一个json字典,其中有一个key,file_content的值使用base64 encode了
写入es之前,需要先对file_content进行base64 decode。
如果不是用logstash,自己写个py工具,直接调用base64.b64decode就可以得到正常结果。
使用logstash尝试了cipher插件,cipher默认是base64的encoding,然后我配置模式为解码:decrypt,但是这个插件还需要填其他几个参数:
iv_random_length
algorithm
请问该如何正确填写每个参数
每个消息都是一个json字典,其中有一个key,file_content的值使用base64 encode了
写入es之前,需要先对file_content进行base64 decode。
如果不是用logstash,自己写个py工具,直接调用base64.b64decode就可以得到正常结果。
使用logstash尝试了cipher插件,cipher默认是base64的encoding,然后我配置模式为解码:decrypt,但是这个插件还需要填其他几个参数:
iv_random_length
algorithm
请问该如何正确填写每个参数
1 个回复
shwtz - 学物理想做演员的IT男
赞同来自:
如果只是要base64编码或者解码,并不需要使用cipher插件,使用ruby code调用base64 encode或者decode就行了。
代码如下:
ruby {
init => "require 'base64'"
code => "event.set('file_content', Base64.decode64(event.get('file_content')))"
}