ELK
ELK是什么?
Elasticsearch
LogStash
Kibana
 
 
1,简单的安装
我采用的是本地window环境;
下载的包如下:
 
首先安装的是jdk8,安装完成之后,设置路径,
 
增加一个系统变量 JAVA_HOME 值为安装的jdk目录;
编辑系统变量 PATH 在值的末尾添加 ;%JAVA_HOME%/bin
 
打开命令行窗口,输入 java -version; 看看是否安装成功;
 
输入输出的版本号是1.8开头的,则jdk8环境安装完成;
 
elk的最新版本都是依赖的jdk1.8
 
 
然后安装的是elasticResearch;
直接解压到某个目录
 
 
elasticSearch 是一个分布式的,支持REST风格的搜索和分析工具。
 
 
这次什么配置都不用更改,使用它的默认配置,
打开命令行窗口,把bin目录下的 elasticsearch.bat 拖拽到命令行窗口,即可启动;
 
从命令行输出可以看到,已经成功的启动了,开启了两个端口 9200,9300
9200是 httpserver,可以通过浏览器直接访问到。
9300是 TransportService, clusterService ,是交换服务和集群服务,集群节点编号0;
 
可以看到这个 elasticSearch的集群信息;
 
先不去详细研究,把基础环境搭建起来再看。
接下来,安装kibana;
 
这是一个把数据边的可视化,并且提供一个导航查询的工具。看里面的文档结构,基于nodejs写得;
配置kibana;英文注释写的很清楚;
打开命令行窗口,把bin下面的 kibana.bat 的拽到命令行窗口下,即可运行kibana;并且链接上了elastic;
打开 127.0.0.1:5601之后会要先配置索引,选择默认的即可;
然后即可查询;
 
最后安装的是logstash
这是一个日志收集工具, 分成四步,收集,过滤,转换,输出;
 
首先需要配置好 logstash
input { stdin { } }
 
filter {
grok {
match => { "message" => "%{COMBINEDAPACHELOG}" }
}
date {
match => [ "timestamp" , "dd/MMM/yyyy:HH:mm:ss Z" ]
}
}
 
output {
elasticsearch { hosts => ["localhost:9200"] }
stdout { codec => rubydebug }
}
 
 
主要配置了一个message的格式,和时间戳的格式;
 
使用脚本启动 D:\logstash-5.1.1\bin\logstash.bat -f D:\logstash-5.1.1\config\l
ogstash.conf
 
即可把在命令行中输入的数据,传输到 elasticSearch ;
 
然后在kibana中展示出来;
 
 
最后一个简单的应用,把tomcat的异常日志和错误日志使用logstash,传输到 elasticSearch
 
配置文件:
input {
file { 
path => "D:/tomcat/apache-tomcat-7.0.62/logs/localhost_access_log*.txt" 
type => "apache_access_log"
add_field => {"tomcatip" => "172.27.42.22"}

}

filter{
if [type] == "apache_access_log" {
grok{
match => { "message" => "%{IPORHOST:clientip} %{USER:ident} %{USER:auth} \[%{HTTPDATE:timestamp}\] \"(?:%{WORD:verb} %{URIPATHPARAM:request}(?: HTTP/%{NUMBER:httpversion})?|-)\" %{NUMBER:response} (?:%{NUMBER:bytes}|-) %{NUMBER:responsetime} \"(?:%{URI:referrer}|-)\" %{QS:agent}" }
}
date{
match => [ "timestamp", "dd/MMM/yyyy:HH:mm:ss Z" ]
target => ["writetime"]
}
mutate {
convert => { 
"response" => "integer" 
"bytes" => "integer" 
"responsetime" => "integer" 
}
}
}
}

output {
if [type] == "apache_access_log" {
elasticsearch {
hosts => "127.0.0.1:9200"
index => "logstash-apacheaccesslog-%{+YYYY.MM.dd}"
}
}
}

然后在kibana中可以看到tomcat的访问日志数据,并可以对它的访问情况定制仪表盘,得到BI报表;
 
直接使用filebeat抓取tomcat的日志
修改配置文件:
 
 
使用命令启动:
然后可以在kibana中查找到收集过来的数据;
 

ELK的简单安装使用的更多相关文章

  1. ELK简单安装测试

    1 介绍组件 Filebeat是一个日志文件托运工具,在你的服务器上安装客户端后,filebeat会监控日志目录或者指定的日志文件,追踪读取这些文件(追踪文件的变化,不停的读). Kafka是一种高吞 ...

  2. 用ELK搭建简单的日志收集分析系统【转】

    缘起 在微服务开发过程中,一般都会利用多台服务器做分布式部署,如何能够把分散在各个服务器中的日志归集起来做分析处理,是一个微服务服务需要考虑的一个因素. 搭建一个日志系统 搭建一个日志系统需要考虑一下 ...

  3. Kibana安装(图文详解)(多节点的ELK集群安装在一个节点就好)

    对于Kibana ,我们知道,是Elasticsearch/Logstash/Kibana的必不可少成员. 前提: Elasticsearch-2.4.3的下载(图文详解) Elasticsearch ...

  4. Filebeat-1.3.1安装和设置(图文详解)(多节点的ELK集群安装在一个节点就好)(以Console Output为例)

    前期博客 Filebeat的下载(图文讲解) 前提 Elasticsearch-2.4.3的下载(图文详解) Elasticsearch-2.4.3的单节点安装(多种方式图文详解) Elasticse ...

  5. ELK-6.5.3学习笔记–elk基础环境安装

    本文预计阅读时间 13 分钟 文章目录[隐藏] 1,准备工作. 2,安装elasticsearch. 3,安装logstash. 4,安装kibana 以往都是纸上谈兵,毕竟事情也都由部门其他小伙伴承 ...

  6. 【ELK】ELK日志套件安装与使用

    ELK日志套件安装与使用   1.ELK介绍 ELK不是一款软件,而是elasticsearch+Logstash+kibana三款开源软件组合而成的日志收集处理套件,堪称神器.其中Logstash负 ...

  7. tftp服务器简单安装配置

    tftp服务器最简单安装配置 1.安装tftp-server sudo apt-get install tftpd-hpa sudo apt-get install tftp-hpa(如果不需要客户端 ...

  8. 【elasticsearch】(2)centos7 超简单安装elasticsearch 的监控、测试的集群工具elasticsearch head

    elasticsearch-head是elasticsearch(下面称ES)比较普遍使用的可监控.测试等功能的集群管理工具,是由H5编写的单独的网页程序.使用方法网上很多,这里教大家一个超简单安装h ...

  9. Redis简介与简单安装

    Redis简介与简单安装   一.NoSQL的风生水起 1.1 后Web2.0时代的发展要求 随着互联网Web2.0网站的兴起,传统的关系数据库在应付Web2.0网站,特别是超大规模和高并发的SNS类 ...

随机推荐

  1. 修改dns访问android.com

    1.几个常用dns服务器 8.8.8.8 美国 加利福尼亚州圣克拉拉县山景市谷歌公司DNS服务器 8.8.4.4 美国 加利福尼亚州圣克拉拉县山景市谷歌公司DNS服务器 8.8.4.3 美国 加利福尼 ...

  2. ionic之自定义图片

    一个好的app,必须都有很好的ui设计师来设计界面,增强客户的体验,表现自己本身公司的特色,但是,在ionic中有些是无法用img标签直接引入图片,只能通过设定的css之后引入css. 页面: < ...

  3. [转]VC++的类头文件

    本文转自:http://blog.csdn.net/forevertali/article/details/4370602   animal.h //在头文件中包含类的定义及类成员函数的声明 clas ...

  4. 分布式数据存储 之 Redis(一) —— 初识Redis

    分布式数据存储 之 Redis(一) -- 初识Redis 为什么要学习并运用Redis?Redis有什么好处?我们步入Redis的海洋,初识Redis. 一.Redis是什么 ​ Redis 是一个 ...

  5. LN : leetcode 730 Count Different Palindromic Subsequences

    lc 730 Count Different Palindromic Subsequences 730 Count Different Palindromic Subsequences Given a ...

  6. canvas基础绘制-倒计时(上)

    效果: html: <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  7. 微信小程序 逻辑层

    1. 注册程序小程序APP在小程序的根目录下有一个app.js文件.有App(Object),App() 函数用来注册一个小程序.接受一个 Object 参数,其内便是小程序的生命周期.App() 必 ...

  8. 如何查看安装的java是32位的,还是64位的

    命令 java -d32 -version 或者 java -d64 -version

  9. centos设置系统时间

    系统日期设定成1996年6月10日上午9点date -s 06/22/96date -s 09:00:00

  10. centos7环境搭建Eureka-Server注册中心集群

    目的:测试和线上使用这套独立的Eureka-Server注册中心集群,目前3台虚拟机集群,后续可直接修改配置文件进行新增或减少集群机器. 系统环境: Centos7x64 java8+(JDK1.8+ ...