kibana7 索引 *** 作

kibana7 索引 *** 作,第1张

切换到控制台 http://your_ip:5601/app/dev_tools#/console

结果

指定分片数量和副分片数量来创建索引

结果:

直接创建索引

结果:

结果:

结果:

再次查询索引 GET /test_index ,结果为:

number_of_replicas副分片变为2

Kibana Discover功能,主要用于查询Elasticsearch数据,通过Kibana Query Language (KQL)查询语法实现数据查询。

创建索引模式

索引模式介绍

要使用Discover的功能首先需要创建索引模式(Index patterns), 索引模式其实就是包含通配符(*)的索引名,我们需要查询ES的数据,首先得知道要查询的索引(index)名字,但是有时候,我们想查询一批索引的数据。

例如:

同时查询下面索引的数据

tizi365_log_202005

tizi365_log_202006

tizi365_log_202007

那么我们可以使用 tizi365_log_* 作为索引模式,可以匹配以tizi365_log_为前缀的所有索引名。

例子

我们依然使用前面导入的航班数据,下面介绍如何创建新的索引模式

步骤1:打开管理页面(Management)

步骤2:

因为前面的章节导入航班数据的时候,自动创建了一个名字叫kibana_sample_data_flights的航班数据索引,如果我们只想搜索kibana_sample_data_flights索引的数据,则不需要通配符,直接使用kibana_sample_data_flights这个名字作为索引模式即可,如下图

因为导入测试数据的时候,自动创建了同名的索引模式,为了演示,我们这里使用kibana_sample_data_flig* 作为索引模式(使用了通配符星号,代表匹配任意字符)。

步骤3:

配置时间过滤器,主要用于排序和作为默认的数据过滤条件。

到此为止索引模式已经创建好了,下面我切换到Discover页面看看。

Discover 功能介绍

进入Discover页面,默认展示的索引数据不一定是我们想看的数据,可以点击change切换到kibana_sample_data_flig* 索引模式,如下图

我们可以通过KQL查询语法查询ES数据,可以把你感兴趣的字段名称和值当做搜索的条件,对于数字字段您可以使用比较运算符,例如大于(>)、小于(<)或等于(=)。您可以使用逻辑运算符 AND,OR 和 NOT 连接搜索条件。

例如:

查询航班机票平均价格大于300且小于600的航班信息

查询航班编号等于 1MAEYXT 的航班信息

例子:

过滤字段

默认查询结果展示索引的所有字段,信息比较多,我们可以选择展示指定的文档字段。

Discover左侧可以直接选择需要展示的文档字段。

上图我们仅展示航班编号和平均票价

创建kibana索引

若只需要收集显示nginx的访问日志,则可以建立一个名为nginx+时间的索引 

若是需要收集一个服务器下的多个服务日志,则可以在一个conf下添加多个input并根据type来区分和实现

环境 

192.168.2.112 ES/kibana 

192.168.2.118 logstash/nginx 

192.168.2.117 logstash/mysql/nginx

建立nginx索引

1)在118服的logstash/etc目录下建立的nginxlog.conf,添加

input {

   file {

       path =>"/usr/local/nginx/logs/access.log"

       type =>"nginx"

   }

}

output {

   elasticsearch {

       hosts =>"192.168.2.112:9200"

       index =>"nginx-%{+YYYY.MM.dd}"

       }

}12345678910111213

其中,index即代表对应的索引名称

2)然后启动logstash

[root@localhost etc]# pwd/usr/local/logstash/etc

[root@localhost etc]# ../bin/logstash  -f nginxlog.conf1234

3)登陆kibana设置索引

4)然后手动访问nginx页面后,可以在kibana的discover界面看到

收集nginx日志和mysql日志

1)把118服的logstash目录复制到117服对应目录下

scp -r logstash/*  root@192.168.2.117:/usr/local/logstash1

2)在117服logstash/etc目录下建立all.conf

input {

   file {

       path =>"/usr/local/nginx/logs/access.log"

       type =>"nginx"

   }

}

input {

   file {

       path =>"/var/log/mysqld.log"

       type =>"mysql"

   }

}

output {  if [type] == "nginx"{

   elasticsearch {

       hosts =>"192.168.2.112:9200"

       index =>"nginx-%{+YYYY.MM.dd}"

       }

}if [type] == "mysql"{

   elasticsearch {

       hosts =>"192.168.2.112:9200"

       index =>"mysql-%{+YYYY.MM.dd}"

       }

}

}1234567891011121314151617181920212223242526272829

3)在kibana页面建立mysql索引

4)启动logstash

[root@host107 etc]# pwd/usr/local/logstash/etc

[root@host107 etc]# ../bin/logstash -f all.conf1234

5)然后启动及关闭mysql服务,就可以看到日志数据

6)同样的,访问nginx页面后,也会收到nginx日志数据

备注: 

1)其中上面的host列显示0.0.0.0,是因为没有设置主机名,在/etc/hosts下加上 

127.0.0.1 hostmysqlnginx 

然后hostname hostmysqlnginx 

重启下logstash,就可以看到host


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11469634.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-16
下一篇2023-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存