OpenResty Edge™ 日志收集(主机部署)

我们推荐使用 Filebeat 进行 Openresty Edge 的错误日志和访问日志收集。 在所有 OpenResty Edge Node 机器上安装 Filebeat 软件,请参考 Filebeat 安装文档。

我们推荐使用 Filebeat 进行 Openresty Edge 的错误日志和访问日志收集。

安装 Filebeat

在所有 OpenResty Edge Node 机器上安装 Filebeat 软件,请参考 Filebeat 安装文档

配置 Filebeat

以下配置为收集 OpenResty Edge Node 上的日志并发送到 Kafka 的简单示例:

filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /usr/local/oredge-node/logs/access.log*
    - /usr/local/oredge-node/logs/error.log*

output.kafka:
  enabled: true
  # fill in the kafka broker address, this can also be multiple broker addresses
  hosts: ["127.0.0.1:9092"]
  topic: edge_node_logs

logging.level: error
# fill in the local host name or IP
name: 127.0.0.1

将以上内容保存到 /etc/filebeat/filebeat.yml,并启动 Filebeat 服务,成功启动后就会将日志发送到 Kafka 了。

sudo systemctl start filebeat

验证日志

我们可以使用 Kafka 提供的命令行工具 kafka-console-consumer.sh 检查日志是否成功发送。

在安装了 Kafka 的机器上,执行以下命令 (Kafka 安装目录根据实际情况替换),有日志输出表示 Filebeat 已经正常工作了。

$ /opt/kafka/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic edge_node_logs --from-beginning --max-messages 1
{"@timestamp":"2022-12-27T07:06:53.045Z","@metadata":{"beat":"filebeat","type":"_doc","version":"8.5.3"},"message":"127.0.0.1 - - [14/Dec/2022:16:02:36 +0800] test.com \"GET http://test.com/ HTTP/1.1\" 200 22 0.000 \"-\" \"curl/7.61.1\" - - -","input":{"type":"log"},"ecs":{"version":"8.0.0"},"host":{"name":"127.0.0.1"},"agent":{"version":"8.5.3","ephemeral_id":"fd94a28e-91fe-4365-9584-fe6beb258751","id":"e84c2374-3272-430e-bfe6-84ad2b24b845","name":"127.0.0.1","type":"filebeat"},"log":{"offset":0,"file":{"path":"/usr/local/oredge-node/logs/access.log_20221214.160000"}}}