- 
                Notifications
    You must be signed in to change notification settings 
- Fork 262
[replace]Transformer
        Sun Jianbo edited this page Jan 2, 2018 
        ·
        3 revisions
      
    可以在Parser前使用,也可以在Parser后使用,用stage字段区别。
在parser前使用表示对reader获得的数据整体做字符串替换;在parser后使用则针对key指定的字段做字符串替换。
配置如下:
{
		"type":"replace",
		"stage":"after_parser",
		"key":"MyReplaceFieldKey",
		"old":"myOldString",
		"new":"myNewString",
                "regex":false,
}
- 
key字段支持多级嵌套,多级间用.符号连接,如abc.xyz,表示 data["abc"]["xyz"]中的数据。
- replace Transformer支持正则表达式,当 regex 标志位为 true时,把old字段对应的字符串当作正则表达式处理。
一份带有replace Transformer的完整配置类似如下:
实例的配置会将字段“MyReplaceFieldKey”中的字符串“myOldString”替换为“myNewString”。
{
		"name":"test2.csv",
		"reader":{
			"log_path":"./tests/logdir",
			"mode":"dir"
		},
		"parser":{
			"name":"jsonps",
			"type":"json"
		},
		"transforms":[{
		   "type":"replace",
		   "stage":"after_parser",
		   "key":"MyReplaceFieldKey",
		   "old":"myOldString",
		   "new":"myNewString",
                   "regex":false,
                }],
		"senders":[{
			"name":"file_sender",
			"sender_type":"file",
			"file_send_path":"./test2/test2_csv_file.txt"
		}]
	}
快速开始 | Pandora | Readers | Parsers | Senders | Download | 七牛智能日志管理平台 | logkit-pro专业版