
Kibana/ELK 如何实现"字段不存在"(NOT EXISTS)的过滤?
Kibana 中筛选"某字段不存在"的日志:KQL 写 not fieldname : *,或在 Add filter 选 exists 后点取反。本文给出 KQL/Lucene 两种语法与可视化操作方法。
聚焦概念、架构、排障、价格与选型,一篇解决一个明确问题。

Kibana 中筛选"某字段不存在"的日志:KQL 写 not fieldname : *,或在 Add filter 选 exists 后点取反。本文给出 KQL/Lucene 两种语法与可视化操作方法。

Distroless 镜像没有 shell 和包管理器,无法直接执行脚本。解决方案:自制镜像拷贝 bash 与脚本、改用带包管理器的基础镜像、或用 K8s initContainer 在容器外完成初始化。本文给出三种方案。

MySQL 数据同步到 Elasticsearch 的四种方案:Logstash JDBC 插件定时拉取、监听 binlog(Canal/Debezium)实时同步、应用双写、以及 CDC 平台。

统计字段唯一值(如独立访客数)用 Cardinality 聚合:Kibana 可视化中选 Unique Count 聚合类型,或 DSL 写 cardinality agg。注意它是近似算法,精度可控。本文给出两种操作与精度说明。

内网运行 Fluentd Docker 容器的关键点:离线镜像准备(save/load)、插件离线安装(gem 本地安装进自建镜像)、端口与日志目录挂载。本文给出无外网环境的完整部署方案。

K8s 应用接入 GCP Error Reporting 的两种方式:写符合格式的结构化日志到 stdout(含 stack_trace 与 severity=ERROR),或用客户端库直接调用 API。

CSV 导入 Elasticsearch 的四种方法:Logstash 的 csv filter 逐行解析、Kibana 界面的 Data Visualizer 直接上传、Python 脚本用 bulk API、以及 elastic…

Kibana 连接失败通常是连不上 Elasticsearch:检查 ES 是否存活、Kibana 配置的 elasticsearch.hosts 地址、认证凭据、TLS 证书与版本兼容性。本文给出按序排查清单。

Logstash 用 --config.test_and_exit 参数校验配置文件语法而不启动管道:bin/logstash --config.test_and_exit -f logstash.conf。

Logstash 的 date 过滤器把日志里的时间字符串解析为事件时间戳 @timestamp:match 指定字段与格式(如 dd/MMM/yyyy:HH:mm:ss Z)。本文给出配置示例、常见格式速查与时区注意事项。

Logstash 的 file input 默认把文件路径存在 path 字段,用 grok 从 path 提取文件名、或用 mutate+split 切分路径,即可把文件名作为独立字段。本文给出两种写法。

Logstash 删除嵌套字段用 mutate 的 remove_field 配合方括号路径语法:remove_field => ["[user][password]"]。删除整个子对象写父路径即可。本文给出语法与常见错误。