使用logstash grok过滤器屏蔽信用卡号的一部分



试图屏蔽16位信用卡的一部分(6-10位)。

1234567898763456123456######3456

我可以想到使用 gsub 过滤器,但我找不到匹配确切数字部分的方法。

选项是分成不同的部分,然后将整个字段 gsub 为"#",然后重新连接,似乎工作量太大。欢迎任何建议。

下面的示例将屏蔽所有字符,如何屏蔽从第 6 位到 10 位数字的选择性模式以获得类似 123456######3456 .

filter
{
  mutate {
    gsub => [
      "message","[0-9]{16}","################"   
    ]
  }
}
filter {
    mutate {
    gsub => [
      "message","([0-9]{6})([0-9]{6})([0-9]{4})", "1######3"
    ]
  }
}

最新更新