Open unaheidi opened 3 years ago
windows 10 上,input采用 file 的时候, logstash.conf 配置文件可以是下面的样子:
input {
file {
path => ["D:/Users/unaheidi/Desktop/wenzhang0323.CSV"]
type => "system"
start_position => "beginning"
}
}
output {
elasticsearch { hosts => ["localhost:9200"] index => "indexforlogstash" }
}
导入 csv 文件,里面有中文,出现了乱码
elasticsearch-plugin install analysis-smartcn
也可离线安装该插件。 参考文档用 tar 进行解压,我使用的时候报错,改为 unzip 。
重启 elasticsearch 依旧乱码
把 csv 文件用 Nodepad++ 打开,保存为 UTF-8 ,kibana 再 load 该文件,中文显示正常。
有多种方法:
./bin/elasticsearch -d -p pid
pkill -F pid
nohup ../bin/kibana &
sudo netstat -tulpn
ELK 中的 Elasticsearch 和 Kibana 两部分已经搭建好能运行了。
我们通过 Kibana 界面上 Upload a file 的方式在 Elasticsearch 中创建了 index 。
问个问题:如果这个 file 的内容不是一成不变的,当文件变化的时候,Kibana 如何自动随之变化呢 ?
带着这个问题,我们看看 filebeat 能不能帮我们这个忙吧。
从 官网filebeat-input-types 看下来,没有我期望的从某个站点 curl 一个 csv 文件的方式。
我们先用一下读取本地 csv 文件,感受一下 filebeat 把文件的变更存到 elasticsearch 的效果吧。
得先把 filebeat 给安装起来。
多么好的一句话 “You need Elasticsearch for storing and searching your data, and Kibana for visualizing and managing it.”
多么适合此刻的一篇文章,介绍 ingest pipeline 的 官网还是值得细细读的,kibana上可以定义 ingest node(采集点) 多好的一句话,把前后关系告诉我们了After defining the pipeline in Elasticsearch, you simply configure Filebeat to use the pipeline.
KQL 难用的一个场景,琢磨了好半天 我需要找到一批文章,根据这批文章的名称来查找 , 比如,KQL 输入框:
文章名称 : 学会自己重打镜像
找到的不是自己想要的结果,KQL 把包含任何一个字的都给搜出来了;其实,我想要得到的只是“学会自己重打镜像”这样的文章。
怎么办呢?
文章名称 : “学会自己重打镜像”
🔔 KQL 根据中文查询的时候,一定要注意,没有添加双引号的时候,即使两个字连在一起,每个字都会单独进行匹配。
举个例子,本来想把文章名称中包含”内测“二字的排除掉,没想到它把包含"测一测"这个也排除掉了。
:x: not 文章名称: 内测
:heavy_check_mark: "not 文章名称: ”内测" ```
到目前为止,终于让 E+K+F 帮我搞定 “服务号推文” 阅读报告了。
可以根据随着时间的推移,提供最新的阅读情况。
🍓 🍓 🍓
下一步我还想: 1) 如果 dashboard 太多了怎么办? kibana 怎么组织 dashboard 呢?
tips:
🔔 点 save as 可以修改 dashboard 的名称
🔔 dashboard 左上角保存按钮 和 右上角 edit 的区别
🔔 如果想创建一个只能看 dashboard 的用户,先创建一个 role
🔔 为了创建上面这类账号,无意间发现了 space 可以用来组织 dashboard
❓ csv 文件导入到 es 的时候,可能有些 field 不是 aggregatable ,这种类型的到时候无法根据这个 field 做统计。
怎么办呢?
🍀 看着下面的办法有戏。不妨重新导入 csv 试试看,记得自己手动改一下 advance 。
很简单!无需进行执行管理任务,如创建一个索引或指定每个属性的数据类型之类的,可以直接只索引一个文档。Elasticsearch 默认地完成其他一切,因此所有必需的管理任务都在后台使用默认设置完成。
但为什么 Jane Smith 也作为结果返回了呢?原因是她的 about 属性里提到了 “rock” 。因为只有 “rock” 而没有 “climbing” ,所以她的相关性得分低于 John 的。
这是一个很好的案例,阐明了 Elasticsearch 如何 在 全文属性上搜索并返回相关性最强的结果。Elasticsearch中的 相关性 概念非常重要,也是完全区别于传统关系型数据库的一个概念,数据库中的一条记录要么匹配要么不匹配。
match_prase 精准搜索
新版本已不用 type
报错
解决:https://www.cnblogs.com/zhangXingSheng/p/12500327.html
从异常信息中可以看出,是因为我要聚合的字段【interests】没有进行优化,也类似没有加索引。没有优化的字段es默认是禁止聚合/排序操作的。所以需要将要聚合的字段添加优化
2021-08-11 完成 😄 这速度
当使用于 过滤情况 时,查询被设置成一个“不评分”或者“过滤”查询。即,这个查询只是简单的问一个问题:“这篇文档是否匹配?”。回答也是非常的简单,yes 或者 no ,二者必居其一。
当使用于 查询情况 时,查询就变成了一个“评分”的查询。和不评分的查询类似,也要去判断这个文档是否匹配,同时它还需要判断这个文档匹配的有 多好(匹配程度如何)。