正在创建 Filebeat 索引,但有 0 个文档

Filebeat index is getting created but with 0 documents

我正在尝试使用 filebeat 为我的自定义日志文件编制索引。我成功地 运行ning filebeat 与 mysql、nginx 等预构建模块。但是当我实际尝试将它与我的应用程序特定日志文件一起使用时,索引是用 0 个文档创建的。

如果需要采取任何特定步骤来确保为自定义日志文件建立索引,我在 filebeats 文档中找不到任何地方。

我在设置 filebeats 或 运行 filebeats post 设置时没有收到任何错误。

下面是filebeat.yml:

filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /Applications/MAMP/htdocs/247around-adminp-aws/application/logs/log-2020-12-21.log
  include_lines: ['^INFO', '^ERROR']
  fields:
    app_id: crm
filebeat.config.modules:
setup.template.settings:
  index.number_of_shards: 1
  path: ${path.config}/modules.d/*.yml
setup.kibana:
output.elasticsearch:
  hosts: ["localhost:9200"]
processors:

可以看出,它主要是默认的 .yml 文件,只有很小的改动。

我的自定义日志文件 log-2020-12-21.php 是:

INFO  - 2020-12-21 15:10:26 --> index Logging details have been captured for employee. Details are : Array
INFO  - 2020-12-21 15:10:36 --> editpartner partner_id:1
INFO  - 2020-12-21 15:10:36 --> SELECT DISTINCT service_id, brand, active
ERROR - 2020-12-21 15:10:36 --> Query error: Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'boloaaka.collateral.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
INFO  - 2020-12-21 15:10:36 -->  Database Error: A Database Error Occurred<br/>Array
ERROR - 2020-12-21 15:10:54 --> Query error: Expression #5 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'boloaaka.service_centres.district' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
INFO  - 2020-12-21 15:10:54 -->  Database Error: A Database Error Occurred<br/>Array
INFO  - 2020-12-21 23:53:21 --> Loginindex
INFO  - 2020-12-21 23:54:50 --> Loginindex
INFO  - 2020-12-21 23:55:42 --> Loginindex
INFO  - 2020-12-21 23:56:24 --> Loginindex

正在创建包含 0 个文档的索引文件:

日志文件显示 filebeats 设置和 filebeats 运行ning 的日志: https://pastebin.com/TK6uYXuq

请帮忙:

  1. 如果由于哪些文档未被索引而出现错误,为什么没有错误消息?如果事情不对,我应该会得到一些错误。
  2. 我应该如何索引我的日志文件?
  3. 我应该在哪里为我的日志文件添加模式,如键值对,这将有助于我稍后在文档中搜索相关值?

感谢您的帮助。

在您的 filebeat 配置中,您确定您指的是存储日志的确切文件吗? filebeat.yml 中的 'paths' 指的是 .log 文件扩展名,而您粘贴的自定义日志文件是 log-2020-12-21.php 尝试更改路径以匹配此 .php 扩展名. 如果 filebeat 正确地选择了这个文件,你可以在你的 filebeat 日志中看到类似下面的代码

INFO log/harvester.go:287 Harvester started for file: /Applications/MAMP/htdocs/247around-adminp-aws/application/logs/log-2020-12-21.php