You need to enable JavaScript to run this app.
Torch Log Service

Torch Log Service

Copy page
Download PDF
Data processing best practices
Data filtering
Copy page
Download PDF
Data filtering
Data filtering is a common operation in data cleansing. You can use the data transformation feature in TLS to filter log data stored in log topics, enabling field-level and row-level filtering. This topic provides typical examples of field filtering and log filtering.​
Field filtering​
The following example shows how to filter redundant fields after extracting key-value pairs. After extracting key-value pairs from the URI content field, the content field is split into multiple subfields. The content field is no longer needed for subsequent operations, so it is recommended to filter out this field in log data to avoid storing redundant fields in downstream systems.​
Raw log​
​
[​
{​
"content":"Method=CreateTask&TaskName=MyTask&TaskType=1&Enable=true&StartTime=1672057815"​
},​
{​
"content":"Method=ModifyTask&TaskID=1234&Enable=false"​
},​
{​
"content":"Method=DeleteTask&TaskID=1236"​
}​
]​
​
DSL processing rules​
​
# Split the content field by key-value​
ext_kv("content", pair_sep="&", kv_sep="=", prefix="", suffix="", mode="overwrite")​
# Delete the content field​
f_drop("content")​
​
Processing result​
​
[​
{​
"Method": "CreateTask",​
"TaskName": "MyTask",​
"TaskType": "1",​
"Enable": "true",​
"StartTime": "1672057815"​
},​
{​
"Method": "ModifyTask",​
"TaskID": "1234",​
"Enable": "false"​
},​
{​
"Method": "DeleteTask",​
"TaskID": "1236"​
}​
]​
​
Log filtering​
The following example demonstrates how to delete logs with a log-level of DEBUG. Generally, logs with a log-level of DEBUG require less attention, so you can delete this level of logs and retain logs with a level of INFO or higher to prevent unnecessary log data from occupying storage resources long-term.​
Raw log​
​
[​
{​
"log-level":"DEBUG",​
"msg": "This is a debug msg,line 1",​
},​
{​
"log-level":"DEBUG",​
"msg": "This is a debug msg,line 2",​
},​
{​
"log-level":"INFO",​
"msg": "This is a info msg,line 3",​
}​
]​
​
DSL processing rules​
​
# Discard logs with log-level DEBUG​
c_if(op_eq(v("log-level"), "DEBUG"), e_drop())​
​
Processing result​
​
[​
{​
"log-level":"INFO",​
"msg": "This is a info msg,line 3",​
}​
]​
​
​
Last updated: 2026.03.16 11:00:11