日志三剑客ELK

新的服务器需要搭建ELK三剑客,就是日志分析的工具,整理下步骤,供以后复习用。

说明下,我这里使用的是logstash从redis里获取日志信息的。所以还需要redis,这里就不做redis的介绍了。

下载对应文件,

Java: http://www.oracle.com/technetwork/java/javase/downloads/index.html

Logstash: https://www.elastic.co/downloads/logstash

Elasticsearch: https://www.elastic.co/downloads/elasticsearch

Kibana: https://www.elastic.co/downloads/kibana

Nssm: https://nssm.cc/download

把文件放在服务器上,我这里是放在E:\Tool下了。

第一步,先运行ElasticSearch(命令行方式),正常。

有个问题是,正常步骤解压出来,命令行可以运行,但是在服务器上一定要做成服务才行,不然服务器重启了,或者是被别人不小心关闭了,就比较尴尬了。

做服务的步骤很简单,这个不需要借助NSSM工具,直接在elasticsearch的bin下,运行命令

elasticsearch-service.bat install

刷新下服务列表,这个服务就已经安装好了。

 

第二步,运行logstash,(本地使用的管道是连接redis的)这个的运行不想用命令行了,想借助nssm来安装服务,可谁曾想,执行了nssm install logstash,可以弹出浏览框框,但是一点浏览,直接就闪退了。

先怀疑是我的nssm版本有问题,然后想着去官网下载一个新的,官网上2014年的,但是也试试下载吧,别我的文件有损坏,结果下载了被360当成病毒处理了,那么我就觉得,可能是这个需要的权限比较大,改了服务,被360当成木马了。

然后抱着试一试的态度,给这个logstash文件夹的权限开放到最大,再试一次,安装成功了。

到bin文件夹下,有个配置文件logstash_default.conf

这里配置关于读取redis的管道。

然后启动即可。

第三步,启动Kibana,启动成功,(这个做服务就需要使用nssm)

 

path里有值即可,然后继续填写Details

然后点击安装服务即可

直接启动即可。

 

手动通过客户端往redis里插入一条数据,结果发现并没有任何log显示,因为索引是空的。奇怪的很。

回过头来看一下,logstash的配置文件

这里配置的是list,那就是说,只能读取redis里的rpush的数据。

那么很简单,在客户端执行以下命令

然后再去看一下索引

 

这下有了,很简单,加入到索引里,这个就是kibana的配置了,必须加一个索引,才能查看log。

 

 

这里的配置,再选择时间戳,然后创建,成功后查看

出现这个说明kibana可以使用了。

然后就可以按照条件查看日志了,完美。

可是这个只是在服务器内访问,如果想要在外网下访问,还需要一些改动,就是kibana的yml文件

把这个server.port改成0.0.0.0就代表允许外网访问(或者说就允许IP访问了),当然了,服务器这个5601端口一定要打开,这个是最基本的。

 当使用一段时间以后,发现旧的log用不上了。那就想办法给删了吧,找了一下,在文件夹中没有能找到这些个东西,然后试了下查下elastic应该有提供,果然。

在kibana这个可视化界面中,可以直接执行delete命令即可。

当然了,也可以按照查询条件删除的

参考 https://www.elastic.co/guide/en/elasticsearch/reference/5.2/docs-delete-by-query.html

POST dlog-*/_delete_by_query
{
  "query": {
    "match": {
      "projectName": "OA"
    }
  }
}

 但是删除有个需要注意的地方,物理文件不是直接删除的。只是做个标记先。

参考

 

posted @ 2018-08-19 15:52  Rexcnblog  阅读(818)  评论(0编辑  收藏  举报