从官网下载

elasticsearch

传送门:Download Elasticsearch | Elastic

filebeat

传送门:Download Filebeat • Lightweight Log Analysis | Elastic

filebeat

传送门:Download Kibana Free | Get Started Now | Elastic

logstash

传送门:Download Logstash Free | Get Started Now | Elastic

在此上传8.4.2的解压包下载路径

elasticsearch-8.4.2-windows-x86_64.zip

filebeat-8.4.2-windows-x86_64.zip

kibana-8.4.2-windows-x86_64.zip

logstash-8.4.2-windows-x86_64.zip

使用nssm将elasticsearch、kibana注册成Windows服务

传送门:NSSM - the Non-Sucking Service Manager

nssm-2.24.zip

elasticsearch

elk日志收集系统 elk收集windows日志_ffmpeg

Kibana

Kibana配置文件修改

文件路径:kibana-8.4.2\config 配置文件的修改内容如下:

elk日志收集系统 elk收集windows日志_ffmpeg_02

elk日志收集系统 elk收集windows日志_大数据_03

将下载后的nssm.exe文件复制到Kibana的bin目录里,双击执行

绑定启动文件和启动路径,服务就注册好了

使用nssm将Kibana注册成服务

elk日志收集系统 elk收集windows日志_ffmpeg_04

启动好之后

查看 elasticsearch http://127.0.0.1:9200

elk日志收集系统 elk收集windows日志_Elastic_05

查看 Kinbana http://127.0.0.1:5601

elk日志收集系统 elk收集windows日志_elasticsearch_06

配置logstash文件

在logstash-8.4.2\config解压的config文件夹下新建logstash的配置文件

elk日志收集系统 elk收集windows日志_Elastic_07

配置的文件内容如下


#input是日志文件的来源处,可以从log文件中读取,也可以从后台端口服务中启用
#这边配置的是从beats(filebeats)中上传读取的,
input {
  beats {
    port => 5044
  }
}
#filter是过滤器,可以用来匹配日志,利用自定义字段区分判断日志归属
filter{
    grok{
        #通过\[和\]来匹配对应数据
        match => {"message" => "\[%{DATA:date}\]\[%{DATA:level}\]\[%{DATA:proc}\] %{DATA:msg}"}
        
    }
    json{
            source => "message"
        }
        if [mptype] {
        mutate {
           add_field => {
             "index_name" => "%{mptype}-%{+YYYY.MM.dd}"
           }
          }
        } else {
          mutate {
           add_field => {
             "index_name" => "未知模块日志"
           }
          }
        }
}
#output主要是日志的输出,基本上都是发送到elasticsearch
output {
  elasticsearch {
   hosts => ["http://localhost:9200"]
   index => "mp_%{index_name}"
 }
 stdout { codec => rubydebug }
}


配置完之后启用cmd命令行启动logstash

命令如下:


D:\ELK\logstash-8.4.2\bin\logstash.bat  -f  D:\ELK\logstash-8.4.2\config\lostash-local.conf
#指定logstash.bat启动,并且以刚刚定义的config文件启动


当出现这个的时候就代表logstash启动成功

elk日志收集系统 elk收集windows日志_elk日志收集系统_08

查看 logstash页面

http://127.0.0.1:9600/

elk日志收集系统 elk收集windows日志_大数据_09

beats(filebeat)配置启动文件

打开解压的文件夹filebeat-8.4.2-windows-x86_64

elk日志收集系统 elk收集windows日志_elk日志收集系统_10

修改配置文件 filebeat.yml

内容如下

elk日志收集系统 elk收集windows日志_Elastic_11

elk日志收集系统 elk收集windows日志_大数据_12

配置完之后启用cmd命令行启动filebeat

命令如下:

D:\ELK\filebeat-8.4.2-windows-x86_64\filebeat.exe  -e -c  D:\ELK\filebeat-8.4.2-windows-x86_64\filebeat.yml

注意:要先启动logstash,再启动filebeat,不然会报端口错误

Kibana界面使用

elk日志收集系统 elk收集windows日志_elk日志收集系统_13

左边打开菜单栏,进入开发工具

这边显示的是一个控制台

elk日志收集系统 elk收集windows日志_elk日志收集系统_14

使用命令查看所有可用日志文件


GET /_cat/indices?v


elk日志收集系统 elk收集windows日志_elk日志收集系统_15

运行之后搜索出这些文件

下面进入到stack Management

elk日志收集系统 elk收集windows日志_大数据_16

按步骤点击创建视图,关联上前面的索引

elk日志收集系统 elk收集windows日志_elasticsearch_17

elk日志收集系统 elk收集windows日志_elasticsearch_18

下面就是查看成果的时候了,进入discover视图

elk日志收集系统 elk收集windows日志_ffmpeg_19

从这边选择你刚刚创建的视图,进行日志查看

elk日志收集系统 elk收集windows日志_Elastic_20

如果出现这样的页面,不用担心,

elk日志收集系统 elk收集windows日志_大数据_21

调整一下你日志的输出时间,然后点击刷新

elk日志收集系统 elk收集windows日志_大数据_22

elk日志收集系统 elk收集windows日志_elk日志收集系统_23

这样的日志信息太杂乱了,我们要给他进行修剪一下

elk日志收集系统 elk收集windows日志_elasticsearch_24

将主要输出内容筛选出来,主要的输出内容都在【message】这个字段里

elk日志收集系统 elk收集windows日志_elk日志收集系统_25

顺带的,我们再把时间日期格式修改一下

elk日志收集系统 elk收集windows日志_Elastic_26

elk日志收集系统 elk收集windows日志_elk日志收集系统_27

elk日志收集系统 elk收集windows日志_Elastic_28

最后的结果,是不是就顺眼很多了

elk日志收集系统 elk收集windows日志_Elastic_29