elasticsearch - Fluentd 正在工作,但没有在 elastcisearch 上创建索引
问题描述
我有一个 Kubernetes pod java 应用程序(将日志写入卷主机 (/var/log/java-app/java.log) 上的文件),并使用 Fluentd 作为守护程序集来跟踪日志文件并写入 Elasticsearch。我的 fluentd 正在工作,但没有在弹性搜索上创建索引,也没有在 kibana 上显示索引。
这是 Fluentd 的配置:
javaapp.conf: |
<source>
@type tail
path /var/log/java-app/java.log
pos_file /var/log/java-apps.log.pos
tag java.app
read_from_head true
<parse>
@type json
time_format %Y-%m-%dT%H:%M:%S.%NZ
</parse>
</source>
# we send the logs to Elasticsearch
<match java.**>
@type elasticsearch_dynamic
@log_level info
include_tag_key true
host "#{ENV['FLUENT_ELASTICSEARCH_HOST']}"
port "#{ENV['FLUENT_ELASTICSEARCH_PORT']}"
user "#{ENV['FLUENT_ELASTICSEARCH_USER']}"
password "#{ENV['FLUENT_ELASTICSEARCH_PASSWORD']}"
scheme "#{ENV['FLUENT_ELASTICSEARCH_SCHEME'] || 'http'}"
ssl_verify "#{ENV['FLUENT_ELASTICSEARCH_SSL_VERIFY'] || 'true'}"
reload_connections true
logstash_format true
logstash_prefix java-app-logs
<buffer>
@type file
path /var/log/fluentd-buffers/java-app.system.buffer
flush_mode interval
retry_type exponential_backoff
flush_thread_count 2
flush_interval 5s
retry_forever true
retry_max_interval 30
chunk_limit_size 2M
queue_limit_length 32
overflow_action block
</buffer>
</match>
Fluentd 版本:fluent/fluentd-kubernetes-daemonset:v1.1-debian-elasticsearch Elasticsearch 版本:docker.elastic.co/elasticsearch/elasticsearch:7.3.0
看起来 Fluentd 无法将日志放入 Elasticsearch。
解决方案
推荐阅读
- javascript - 省略'new'关键字导致javascript构造函数出现无法解释的问题
- html - VBA-从TR子列表中获取HREF
- testing - 当第二个文件在 testcafe 中启动时 Fixture.page 不会改变
- javascript - 如何检查是否提到了某个用户
- list - 如何将第三个字符串输入到 List
- c# - FreeOnTheBar.exe 中出现“System.StackOverflowException”类型的未处理异常
- apache-spark - 最小化随机溢出和随机写入
- amazon-dynamodb - DynamoDB 是否公开 API 以查询或检测何时合并项目数据发生冲突
- python - 如何将自定义模型管理器设置为 Django 中的默认模型管理器?
- ruby-on-rails - rails开发中rails generate controller home top命令不生成控制器文件