前言

  ELK已经是一套成熟的日志解决方案,虽然出现了好久,今日才终于研究了一下,不过是在windows平台上安装的。

搭建步骤

  • 下载软件
  • 安装软件
  • 修改配置文件
  • 启动软件
  • 集成测试

下载软件

  首先从官网下载三个软件。我下载的是 6.2.3版本的,最好都统一,否则会出现小问题。官网地址:https://www.elastic.co/

  

安装软件

  分别将上文中的ELK三个压缩包解压到相应的文件夹下。(我的电脑文件夹是C:/elk/)

 

  由于logstashkibana都需要配置elasticsearchserver url,所以先配置了elasticsearch。

  打开 elasticsearch-6.2.3/config 文件夹,打开elasticsearch.yml,配置一下基本信息:

cluster.name: <集群名称>
node.name: <当前节点名称>
network.host: <本机IP或者localhost>
http.port:

  使用cmd命令安装elasticsearch service

  

  安装完成之后启动es服务。打开 host:9200 测试一下es是否安装成功。

  

  下面安装logstash。

  进入到 C:\elk\logstash-6.2.3\config 文件夹下新建log.config文件。这里我选择的输入源是file,然后filter处理日志中的jsonoutputelasticsearch和控制台。log.config文件配置如下:

  

input {
file {
type => "log"
path => "C:/logs/*.log"
codec => plain{
charset => "UTF-8"
}
start_position => "beginning"
}
}
filter {
ruby {
将@timestamp转换为服务器时间,否则会是UTC时间(慢8个小时)
code => "event.timestamp.time.localtime"
}
json{
解析日志中的json格式到log字段,移除message字段和host
source => "message"
target => "log"
remove_field => ["message"]
remove_field => ["host"]
}
} output {
stdout {
codec => rubydebug
}
elasticsearch {
hosts => ["127.0.0.1:9200"]
index => "logs"
}
}

  下面打开cmd运行命令:

  

  等待启动即可,如果报错了,看一下报错信息即可。logstash能正常解析日志。

  

  最后安装kibana。

  同样进入 config文件夹。配置kibana.yml 配置elasticsearch.url和host.name即可。端口默认是5601。

  cmd  bin/kibana 启动

 

  打开浏览器,正常出现kibana界面。

  到目前为止,ELK已经基本配置完了。

集成测试

  因为 logstash 配置的是采集 C:/logs文件夹下的日志文件。写一个简单的程序写入日志,日志内容如下:

  

  正如上文中logstash输出一样,logstash正常采集到了日志,并且解析了日志中的json串。下面打开elasticsearch看一下是否有数据

  

  如上图所示,是有数据的,最后使用kibana配置一下index即可。(由于kibana我也不太会用,所以不做详细介绍了)

总结

  总体而言安装过程中的配置过程还不是很难,但是要做到很复杂的日志处理或者其他的功能那么就需要下功夫了。这里我只是简单的做了一个搭建工作。想要深入了解ELK体系的使用还是需要下功夫的!!

  另外,logstash的  input  output  filter 配置还是有很多门道的,相当复杂,本来我试了用filebeat作为input,但是老是报 Invalid Frame Type 后来我就没在理他了,大概日志文件的编码不对吧(我也不清楚)。

  以上就是windows下搭建简单的ELK的具体过程了。如有问题或者不当之处,欢迎留言咨询。

  

Windows环境下ELK简单搭建记录的更多相关文章

  1. Windows环境下ELK(5.X)平台的搭建

    一.Windows环境下ELK平台的搭建(2.*) 1.安装配置Java环境 在Oracle官网获取最新版的Java版本,由于只是运行不是开发,所以也可以只下载JRE.官网:http://www.or ...

  2. Windows环境下使用Nginx搭建负载均衡

    前言 最近没有什么事情,喜欢总结并学习东西!前几天写来一个Session共享,那么我们为什么需要Session共享?因为我们的应用程序分布在多个服务器上,为了合理分配用户的请求,就需要用到负载均衡技术 ...

  3. windows环境下apache-apollo服务器搭建及发布订阅测试

    查证了一些资料之后,发现 apache-apollo服务器使用的人还是挺多的,资料也比较齐全,所以直接选择 apache-apollo了,具体性能如何,先用起来再说吧: 1.下载 apache-apo ...

  4. windows环境下基于nginx搭建rtmp服务器

    基于nginx搭建rtmp服务器需要引入rtmp模块,引入之后需重新编译nginx linux环境几个命令行就能实现编译,笔者未尝试,网上有很多教程. windows环境还需要安装一系列的编译环境,例 ...

  5. windows环境下利用Gitblit搭建Git服务器并实现自动部署Web站点目录

    Git服务搭建多见于linux环境,但windows主机也不少,目前网上文章诸多不全,且以讹传讹,不甚清楚.下面介绍windows环境下的自动部署和发布. 所需环境及资源:Java环境.Gitblit ...

  6. Windows环境下ELK平台的搭建

    .背景 日志主要包括系统日志.应用程序日志和安全日志.系统运维和开发人员可以通过日志了解服务器软硬件信息.检查配置过程中的错误及错误发生的原因.经常分析日志可以了解服务器的负荷,性能安全性,从而及时采 ...

  7. windows 环境下Maven私服搭建

    使用Nexus.3.11在Windows环境上搭建1.下载nexus.3.11.zip包https://www.sonatype.com/download-oss-sonatype 下载下来之后,进行 ...

  8. 在windows环境下利用virtualenv搭建Python虚拟环境

    安装Python 安装时只有一点需要注意,一定一定要将Python添加到系统环境变量那一项勾选. 安装 virtualenv 加入系统目录之后,命令行(CMD)下就多了一条命令:pip.用pip可以自 ...

  9. windows环境下最简单的nginx + tomcat负载均衡配置示例

    后端是两台tomcat服务器,我们简称为node1 和node2,访问地址分别是 http://192.168.1.2:8080 和 http://192.168.1.4:8080 前端使用nginx ...

随机推荐

  1. 压缩图片或pdf

    压缩图片或pdf { /// <summary> /// 压缩图片或pdf大小的Level /// </summary> public enum ReduceSizeLevel ...

  2. CSS3——transform2D的应用

    前言: 关于CSS3,我想最让人感到有意思的就是2D和3D的技术,这让我们的网页立马丰富起来,可以让我们完成一些很酷很炫的效果,比如旋转木马.经过一段时间的学习,让我对CSS3有了更近一步的了解,在此 ...

  3. linux创建日期文件名

    linux创建文件名添加当前系统日期时间的方法 使用`date +%y%m%d` Example: mkdir `date +%y%m%d` tar cfvz /tmp/bak.`date +%y%m ...

  4. Java Object类的equals()方法

    所有类都从Object类中继承了equals方法,Object类中equals方法源代码如下: public boolean equals(Object obj)     {         retu ...

  5. JavaScript之如何对客户端进行检测

    本文主要是针对各种客户端进行检测,使用了用户代理字符串检测技术,具体代码如下: var client=function() { var engine= { // 呈现引擎 ie: 0, gecko: ...

  6. git新建分支没有master分支,其他分支也看不到

    git checkout -b dev git新建dev分支,发现切换到了dev分支,但是master分支没有了 git branch和git branch -a 都没有任何反应,看不到其他分支, g ...

  7. float、display和流

    一.css的元素有很深的道理和它存在的意义 块元素:默认元素的上下左右会有间隔(即使设置margin.padding为0也一样).如果想0间隔,考虑float. float:会使元素自动生成一个块级框 ...

  8. flask-login的简单实用

    # encoding: utf-8 from flask import Flask, Blueprint from flask_login import (LoginManager, login_re ...

  9. SSIS 和 SSRS自制Template

    可以使用VS 制作一个SSIS 的Package. 路径:C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssembl ...

  10. MXNet 分布式环境部署

    MXNet 分布式环境部署 1. MxNet 分布式介绍 先忽略吧, 回头在填上去 2. 分布式部署方法 假设有两台主机ip地址分别是xxx.xxx.xxx.114 和 xxx.xxx.xxx.111 ...