我正在使用Airflow 1.10.5
。似乎找不到有关如何使用Elasticsearch设置远程日志记录的完整文档或样本。我看到了这份文档https://airflow.readthedocs.io/en/stable/howto/write-logs.html),但没有帮助。我正在尝试将气流(而非任务)日志写入ES。
答案 0 :(得分:0)
据我了解的文档,ES日志处理程序只能从ES读取。您将必须设置日志记录以打印到文件中,然后使用filebeat之类的东西将文件内容发布到ES,然后Airflow可以将它们读回...
https://airflow.readthedocs.io/en/stable/howto/write-logs.html#writing-logs-to-elasticsearch
将日志写入Elasticsearch
气流可以配置为阅读任务 来自Elasticsearch的日志并有选择地将日志写入stdout 标准或json格式。以后可以收集这些日志并 使用流利的工具转发给Elasticsearch集群, logstash或其他。
答案 1 :(得分:0)
我能够使用 [filebeat][1]
shipper 实现。
filebeat.yml
中的输入配置部分
</snip>
# ============================== Filebeat inputs ===============================
filebeat.inputs:
# Each - is an input. Most options can be set at the input level, so
# you can use different inputs for various configurations.
# Below are the input specific configurations.
- type: log
# Change to true to enable this input configuration.
enabled: true
# Paths that should be crawled and fetched. Glob based paths.
paths:
- /path/to/logs/*.log
</snip>
filebeat.yml
中的输出配置部分
<snip>
# ---------------------------- Elasticsearch Output ----------------------------
output.elasticsearch:
# Array of hosts to connect to.
hosts: ["localhost:9200"]
# Protocol - either `http` (default) or `https`.
#protocol: "https"
# Authentication credentials - either API key or username/password.
#api_key: "id:api_key"
username: "elastic"
password: "changeme"
</snip>
非常适合阅读doc,特别是关于气流 --> ES。