Logstash 过滤器 - 添加值为当前目录名称的字段

Logstash Filter - add field with value current directory name

我想使用 Logstash 的拆分过滤器插件添加两个字段。下面的例子将给出问题的更多上下文,目录结构如下:

Artist
  |
  |___Album
        |
        |__SongsList.xml

当我解析 XML 数据时,我想将专辑名称和艺术家名称添加到我的索引中,分别是当前目录和父目录。

filter {
  mutate {
    add_field => {
      "artist" => "What will I add here?"
      "album" => "What will I add here?"
    }
  }
}

有什么办法可以实现吗?

经过一些研究找到了我要找的东西。事实证明,这可以使用 grok 过滤器轻松完成:

grok {
        match => ["path","%{GREEDYDATA}/%{GREEDYDATA:artist_name}/%{GREEDYDATA:album_name}/%{GREEDYDATA:filename}\.xml"]
    }