Glue 分类器无法使用 Grok 模式对列进行分类

Glue Classifier could not classify columns using Grok pattern

我有一个使用 s3://<bucket-name>/year=<yearno>/month=<monthno>/day=<dayno>/<filename>.log 格式构建的 s3 存储桶。我得到的 .log 文件中的行结构如下:

2020-01-06 09:05:14,450 INFO [Asterisk-Java DaemonPool-1-thread-3] handler.CallHandler (CallHandler.java:849) - Original name : harris changed to : haris . Exist? true

虽然我用于分类器的 Grok 模式是:

[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9:,]{12} INFO \[Asterisk-Java DaemonPool-1-thread-[0-9]{1,3}] handler.CallHandler \(CallHandler.java:849\) - Original name : %{WORD:original_name} changed to : %{WORD:transformed_name} . Exist\? %{WORD:exist_prior}

我使用 this debugger web app 检查了我的 Grok 模式,确认它是正确的。我期望结果 table 是:

+------+-------+-----+---------------+------------------+--------------+
| year | month | day | original_name | transformed_name | exists_prior |
+------+-------+-----+---------------+------------------+--------------+
|    - |     - |   - |             - |                - |            - |
+------+-------+-----+---------------+------------------+--------------+

然而,我得到的 table 是:

+------+-------+-----+------+------+------+------+
| year | month | day | col0 | col1 | col2 | col3 |
+------+-------+-----+------+------+------+------+
|    - |     - |   - |    - |    - |    - |    - |
+------+-------+-----+------+------+------+------+

我哪里错了?

我将捕获正则表达式从 %{WORD:variable_name} 更改为 %{DATA:variable_name}。然后它按预期工作。