一. Windows
ELK下载地址
Elasticsearch | https://www.elastic.co/cn/start |
---|---|
Logstash | https://www.elastic.co/cn/downloads/logstash |
Kibana | https://www.elastic.co/cn/start |
- elasticsearch 解压压缩包, 直接在bin目录下, 双击 elasticsearch.bat 即可启动, 访问: http://localhost:9200
kibana 可视化页面
Kibana是世界上最受欢迎的开源日志分析平台ELK Stack中的“K” ,它为用户提供了一个工具,用于 在存储于Elasticsearch集群中的日志数据进行检索,可视化和构建仪表板。Kibana的核心功能是数据查询和分析。使用各种方法,用户可以搜索Elasticsearch中索引的数据, 以查找其数据中的特定事件或字符串,以进行根本原因分析和诊断。基于这些查询,用户可以使用 Kibana的可视化功能,允许用户使用图表,表格,地理图和其他类型的可视化以各种不同的方式可 视化数据。
-
kibana 类似, 解压压缩包, 进入bin目录下,双击kibana.bat, 访问 http://localhost:5601
-
logstash
Logstash是一个开源的服务器端数据处理管道,可以同时从多个数据源获取数据,并对其进行转 换,然后将其发送到你最喜欢的“存储”。创建于2009年,于2013年被elasticsearch收购。
虽然kibana 提供了一些数据集供我们使用,为了加深对logstash 的理解,我们 movielens 的电影数据集。
movielens 数据集的下载地址为:http://files.grouplens.org/datasets/movielens, 用下载 ml-latest.zip 数据即可,如下图所示:
将 ml-latest.zip 加压文件中的 movies.csv 文件拷贝到 logstash 的家目录下; 再将 logstash 的 config 目录下新建名为 logstash.conf 的文件,文件内容如下:
input {
file {
# 引号的的内容为 movies.csv 的实际路径,根据实际情况而定
path => "D:/tool/logstash-7.11.1/movies.csv"
start_position => "beginning"
sincedb_path => "D:/tool/logstash-7.11.1/db_path.log"
}
}
filter {
csv {
separator => ","
columns => ["id","content","genre"]
}
mutate {
split => { "genre" => "|" }
remove_field => ["path", "host","@timestamp","message"]
}
mutate {
split => ["content", "("]
add_field => { "title" => "%{[content][0]}"}
add_field => { "year" => "%{[content][1]}"}
}
mutate {
convert => {
"year" => "integer"
}
strip => ["title"]
remove_field => ["path", "host","@timestamp","message","content"]
}
}
output {
elasticsearch {
# 双引号中的内容为ES的地址,视实际情况而定
hosts => "http://localhost:9200"
index => "movies"
document_id => "%{id}"
}
stdout {}
}
movies.csv数据
打开dos命令行,进入到 logstash 的 bin 目录下,执行如下命令导入 movielens 的数据集。
备注:如果要重新导入,需先删除db_path.log文件
logstash.bat -f D:\tool\logstash-7.11.1\config\logstash.conf
进入到 kibana 的命令行页面,执行 GET _cat/indices 验证数据是否成功导入