云日志服务 LTS-事件操作函数:e_keep

时间:2024-07-25 10:14:32

e_keep

据条件判断是否保留日志。

  • 函数格式
    e_keep(condition=true)

    支持固定标识KEEP,等价于e_keep()。

  • 参数说明

    参数名称

    参数类型

    是否必填

    说明

    condition

    Bool

    默认为true,一般传递一个条件判断函数的结果。

  • 返回结果

    满足条件则返回原日志,不满足时丢弃日志。

  • 函数示例
    1. 示例1:当__programe__字段的值是access的时候保留日志,否则丢弃日志。
      • 测试数据
        [
        {
        "__programe__": "access" ,
        "age":  18,
        "content":  123,
        "name": "maki" 
        },
        {
        "__programe__": "error" ,
        "age":  18,
        "content":  123,
        "name":  "maki"
        }
        ]
      • 加工规则
        e_keep(e_search("__programe__==access"))
        #等价于
        e_if(e_search("not __programe__==access"), e_drop())  
        #等价于
        e_if_else(e_search("__programe__==access"), e_keep(), e_drop())  
      • 加工结果

        保留__programe__字段值为access的日志。

        __programe__: access 
        age:  18
        content:  123
        name:  maki
    2. 示例2:条件判断结果为true,保留日志。
      • 测试数据
        {
         "k1":"v1" ,
         "k2": "v2",
         "k3": "k1"
        }
      • 加工规则
        e_keep(e_search("k1==v1"))
      • 加工结果
        k1: v1 
        k2: v2 
        k3: k1
    3. 示例3:条件判断结果为false,丢弃日志。
      • 测试数据
        {
         "k1":"v1" ,
         "k2": "v2",
         "k3": "k1"
        }
      • 加工规则
        e_keep(e_search("not k1==v1"))
      • 加工结果丢弃日志。
    4. 示例4:判断条件为false。
      • 测试数据
        {
         "k1":"v1" ,
         "k2": "v2",
         "k3": "k1"
        }
      • 加工规则
        e_keep(false)
      • 加工结果丢弃日志。
  • 更多参考

    支持和其他函数组合使用。

support.huaweicloud.com/usermanual-lts/lts_07_0164.html