elk中kibna搜索时,如果搜索 包含 单个 双引号 的字符串时:

"'/goods" &&"result\":true"

使用双引号包起来作为一个短语搜索

"like Gecko"

# 字段

也可以按页面左侧显示的字段搜索

限定字段全文搜索:field:value

精确搜索:关键字加上双引号 filed:"value"

http.code:404 搜索http状态码为404的文档

# 字段本身是否存在

_exists_:http:返回结果中需要有http字段

_missing_:http:不能含有http字段

# 通配符

? 匹配单个字符

* 匹配0到多个字符

kiba?a, el*search

? * 不能用作第一个字符,例如:?text *text

# 正则

es支持部分正则功能

mesg:/mes{2}ages?/

# 模糊搜索

~:在一个单词后面加上~启用模糊搜索

first~ 也能匹配到 frist

还可以指定需要多少相似度

cromm~0.3 会匹配到 from 和 chrome

数值范围0.0 ~ 1.0,默认0.5,越大越接近搜索的原始值

# 近似搜索

在短语后面加上~

"select where"~3 表示 select 和 where 中间隔着3个单词以内

# 范围搜索

数值和时间类型的字段可以对某一范围进行查询

length:[100 TO 200]

date:{"now-6h" TO "now"}

[ ] 表示端点数值包含在范围内,{ } 表示端点数值不包含在范围内

# 逻辑操作

AND

OR

+:搜索结果中必须包含此项

-:不能含有此项

+apache -jakarta test:结果中必须存在apache,不能有jakarta,test可有可无

# 分组

(jakarta OR apache) AND jakarta

# 字段分组

title:(+return +"pink panther")

转义特殊字符

+ - && || ! () {} [] ^" ~ * ? : \

以上字符当作值搜索的时候需要用\转义

链接:https://www.jianshu.com/p/f88979868fb2

环境:OS X 10.10.5 + JDK 1.8

步骤:

一、下载ELK的三大组件

Elasticsearch下载地址: https://www.elastic.co/downloads/elasticsearch (目前最新版本:2.1.1)

Logstash下载地址: https://www.elastic.co/downloads/logstash (目前最新版本:2.1.1)

Kibana下载地址: https://www.elastic.co/downloads/kibana (目前最新版本:4.3.1)

下载后将其解压到某个目录即可,本文中的解压目录为:

~/app/elasticsearch-2.1.1

~/app/logstash-2.1.1

~/app/kibana-4.3.1-darwin-x64

注:这3个组件相互之间的关系及作用如下:

Logstash(收集服务器上的日志文件) --》然后保存到 ElasticSearch(搜索引擎) --》Kibana提供友好的web界面(从ElasticSearch读取数据进行展示)

二、启动elasticsearch

2.1

进入elasticsearch目录\bin

./elasticsearch

顺利的话,启动成功后,在浏览器里输入http://localhost:9200/ 应该能看到类似下面的输出:

 1 {
2 "name" : "Atalanta",
3 "cluster_name" : "elasticsearch",
4 "version" : {
5 "number" : "2.1.1",
6 "build_hash" : "40e2c53a6b6c2972b3d13846e450e66f4375bd71",
7 "build_timestamp" : "2015-12-15T13:05:55Z",
8 "build_snapshot" : false,
9 "lucene_version" : "5.3.1"
10 },
11 "tagline" : "You Know, for Search"
12 }

2.2 安装kopf插件

先按Ctrl+C停止elasticsearch,接下来准备安装插件,elasticsearch有大量插件资源,用于增加其功能,bin目录下,输入

./plugin list 可以查看当前安装的插件列表,我们刚刚全新安装,输出的是一个空列表,继续输入

./plugin install lmenezes/elasticsearch-kopf

将会联网安装kopf插件,安装完成后,再次用./plugin list确认下:

Installed plugins in /Users/yjmyzz/app/elasticsearch-2.1.1/plugins:
- .DS_Store
- kopf

如果输出上述类似,表明kopf安装成功。

然后重启elasticsearch,浏览器里输入http://localhost:9200/_plugin/kopf,将会看到类似下面的界面,可以很直观的看到elasticsearch的一些运行状况

以上操作都ok后,建议Ctrl+C关掉,改用nohup ./elasticsearch & 将其做为后台进程运行,以免退出。

三、logstash的启动与配置

3.1 新建索引配置文件

~/app/logstash-2.1.1/bin 下

mkdir conf

vi conf/logstash-indexer.conf

内容如下:

 1 input {
2 file {
3 path => ["/var/opt/log/a.log","/var/opt/log/b.log"]
4 }
5 }
6
7 output {
8 elasticsearch { hosts => ["localhost:9200"] }
9 stdout { codec => rubydebug }
10 }

上面几个步骤的意思就是创建一个名为logstash-indexer.conf的配置文件,input{file{...}}部分指定的是日志文件的位置(可以多个文件),一般来说就是应用程序log4j输出的日志文件。output部分则是表示将日志文件的内容保存到elasticsearch,这里hosts对应的是一个数组,可以设置多个elasticsearch主机,相当于一份日志文件的内容,可以保存到多个elasticsearch中。

至于第9行的stdout,则表示终端的标准输出,方便部署时验证是否正常运行,验证通过后,可以去掉。

3.2 启动

继续保持在logstash的bin目录下,输入

./logstash -f conf/logstash-indexer.conf

稍等片刻,如果看到Logstash startup completed,则表示启动成功。然后另开一个终端窗口,随便找个文本编辑工具(比如:vi),向/var/opt/log/a.log里写点东西,比如:hello world之类,然后保存。观察logstash的终端运行窗口,是否有东西输出,如果有以下类似输出:

1 {
2 "message" => "hello world",
3 "@version" => "1",
4 "@timestamp" => "2016-01-08T14:35:16.834Z",
5 "host" => "yangjunmingdeMacBook-Pro.local",
6 "path" => "/var/opt/log/a.log"
7 }

说明logstash工作正常,此时浏览http://localhost:9200/_search?pretty 也应该能看到一堆输出,表明elasticsearch接收到logstash的数据了。

四、kibana的配置及启动

4.1 修改配置文件

~/app/kibana-4.3.1-darwin-x64/config 下有一个配置文件kibana.yml,大概在12行的位置,改成下面这样:

1 # The Elasticsearch instance to use for all your queries.
2 elasticsearch.url: "http://localhost:9200"

即:指定elasticsearch的访问位置

4.2 启动

~/app/kibana-4.3.1-darwin-x64/bin 下,输入:

./kibana

注:如果启动不成功,请检查版本是否为4.3.1,kibana必须与elasticsearch的版本匹配,一般说来,都从官网下载最新版即可。

启动完成后,在浏览器里输入http://localhost:5601/ 即可看到kibana界面,首次运行,会提示创建index,直接点击Create按钮即可。

然后,就能看到类似下面的界面了:

参考文章:

http://baidu.blog.51cto.com/71938/1676798?utm_source=tuicool&utm_medium=referral

https://www.elastic.co/products

http://www.cnblogs.com/yjf512/p/4199105.html

http://kibana.logstash.es/content/

http://www.cnblogs.com/yjmyzz/p/ELK-install-tutorial.html

ELK日志系统:Elasticsearch + Logstash + Kibana 搭建教程(转)的更多相关文章

  1. 键盘侠Linux干货| ELK(Elasticsearch + Logstash + Kibana) 搭建教程

    前言 Elasticsearch + Logstash + Kibana(ELK)是一套开源的日志管理方案,分析网站的访问情况时我们一般会借助 Google / 百度 / CNZZ 等方式嵌入 JS ...

  2. Elasticsearch + Logstash + Kibana 搭建教程

    # ELK:Elasticsearch + Logstash + Kibana 搭建教程 Shipper:日志收集者.负责监控本地日志文件的变化,及时把日志文件的最新内容收集起来,输出到Redis暂存 ...

  3. ELK日志系统:Elasticsearch + Logstash + Kibana 搭建教程

    环境:OS X 10.10.5 + JDK 1.8 步骤: 一.下载ELK的三大组件 Elasticsearch下载地址: https://www.elastic.co/downloads/elast ...

  4. ELK日志系统:Elasticsearch + Logstash + Kibana 搭建教程 good

    环境:OS X 10.10.5 + JDK 1.8 步骤: 一.下载ELK的三大组件 Elasticsearch下载地址: https://www.elastic.co/downloads/elast ...

  5. 用ElasticSearch,LogStash,Kibana搭建实时日志收集系统

    用ElasticSearch,LogStash,Kibana搭建实时日志收集系统 介绍 这套系统,logstash负责收集处理日志文件内容存储到elasticsearch搜索引擎数据库中.kibana ...

  6. 【转】ELK(ElasticSearch, Logstash, Kibana)搭建实时日志分析平台

    [转自]https://my.oschina.net/itblog/blog/547250 摘要: 前段时间研究的Log4j+Kafka中,有人建议把Kafka收集到的日志存放于ES(ElasticS ...

  7. 【Big Data - ELK】ELK(ElasticSearch, Logstash, Kibana)搭建实时日志分析平台

    摘要: 前段时间研究的Log4j+Kafka中,有人建议把Kafka收集到的日志存放于ES(ElasticSearch,一款基于Apache Lucene的开源分布式搜索引擎)中便于查找和分析,在研究 ...

  8. 使用ELK(Elasticsearch + Logstash + Kibana) 搭建日志集中分析平台实践--转载

    原文地址:https://wsgzao.github.io/post/elk/ 另外可以参考:https://www.digitalocean.com/community/tutorials/how- ...

  9. ELK(ElasticSearch+Logstash+ Kibana)搭建实时日志分析平台

    一.简介 ELK 由三部分组成elasticsearch.logstash.kibana,elasticsearch是一个近似实时的搜索平台,它让你以前所未有的速度处理大数据成为可能. Elastic ...

随机推荐

  1. POJ2485——Highways

    Description The island nation of Flatopia is perfectly flat. Unfortunately, Flatopia has no public h ...

  2. Linux高性能server编程——高级I/O函数

     高级I/O函数 pipe函数 pipe函数用于创建一个管道,实现进程间的通信. #include <unistd.h> int pipe(int pipefd[2]); 通过pipe ...

  3. Java CopyOnWriteArrayList分析

    CopyOnWriteArrayList是一种线程安全的ArrayList,顾名思义,它会利用写时拷贝技术,它对共享对象做仅仅读操作的时候,大家都用一个共享对象,假设有可变的操作时,就会复制一份出来, ...

  4. 平衡工作与生活的艺术——GTD简单介绍

    1 开场白 大家好,今天是工作四年来第一次站在部门的分享会议上,所以有讲得不好的地方请大家见谅!而对于今天我想给大家介绍的"GTD工作方法",从2012年接触,认为对工作非常有帮助 ...

  5. ASP.NET aspx页面中 写C#脚本; ASP.NET 指令(<%@%>);

    1 <h2>Welcome</h2> <ul> <% for (int i = 0; i <= Convert.ToInt32(ViewData[&qu ...

  6. HDOJ 2120 并查集

    并查集的应用,用来查找被分割的区域个数. 即当两个节点值相同时说明已经为了一个圈,否则不可能,此时区域个数加1. #include<iostream> #include<cstdio ...

  7. android wifi讲解 wifi列表显示

    1.怎样获取wifi对象并进行操作 要操作WIFI设备,需要先获取Context.getSystemService(Context.WIFI_SERVICE)来获取WifiManager对象,并通过这 ...

  8. codeforces 437C The Child and Toy

    time limit per test 1 second memory limit per test 256 megabytes input standard input output standar ...

  9. IOS引导页的编写

    我们在第一次打开App的时候,通常不是直接进入App主界面,而是会有一个能左右滑动.介绍App功能的界面.我是用NSUserDefaults + UIScrollview实现. 新建一个类,继承UIV ...

  10. IIS - HTTP 错误 500.21 - Internal Server Error 处理程序“WebServiceHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”

    http://www.cnblogs.com/yc-755909659/p/3445278.html 首先观察,aspnet_regiis.exe文件是不是损坏的,如果是,重新下载,覆盖即可,在百度云 ...