搭建请参考:http://www.ywnds.com/?p=9776

搭建步骤:http://www.ywnds.com/?p=9776

初步解方案:先不用管这个提示,当你创建完索引后,接受数据后。一般刷新就ok了

出现这个估计是服务正在运行中,你又开启服务就会报错

这个报错是由于在lasticsearch中开启了用户登陆的插件,所以解决这个问题添加上用户即可:如:

启动失败:

2017-09-01 09:22:38,499 main ERROR RollingFileManager (/path/to/logs/elasticsearch_access.log) java.io.FileNotFoundException: /path/to/logs/elasticsearch_access.log (Permission denied) java.io.FileNotFoundException: /path/to/logs/elasticsearch_access.log (Permission denied

办法:chown elasticsearch.elasticsearch -R /path    改权限

索引创建:

Elk ---head  插件安装

wget https://nodejs.org/dist/v6.9.2/node-v6.9.2-linux-x64.tar.xz

tar xf node-v6.9.2-linux-x64.tar -C /usr/local/

cd /usr/local/

ln -s node-v6.9.2-linux-x64/ node

[root@elk node]# cat /etc/profile.d/node.sh

export nodePATH=/usr/local/node

export PATH=$PATH:$nodePATH/bin

export nodePATH PATH

[root@elk node]# source   /etc/profile.d/node.sh

[root@elk ~]# node –v

v6.9.2

yum install git -y

git clonegit://github.com/mobz/elasticsearch-head.git (这个文件千万不能放在elasticsearch的 pluginsmodules 目录下,否则报一堆错误)

cat config/elasticsearch.yml|grep -v"$^"|grep -v "#"

node.name: hyxdelk

network.host: 0.0.0.0

http.port: 9200

http.cors.enabled: true (在文件最后添加)

http.cors.allow-origin: "*" (在文件最后添加)

[root@elk elasticsearch-head]# npm install

npm install -g grunt-cli

[root@elk elasticsearch-head]# ./node_modules/grunt/bin/grunt server (可能会报错,解决方法: 别用路径,直接进入/node_modules/grunt/bin/下  直接执行 grunt server)

 

 

http://elk安装主机:9100访问

 

启动elk服务

################插件安完毕#######################################

报错:

  • 不能放在elasticsearch的 pluginsmodules 目录下
  • ·         不能使用 elasticsearch-plugin install

移动到别的地方就OK

报错:curl -XGET http://10.0.3.149:9200/productindex/_mapping?pretty  访问服务

这是由于添加了X-pack(这个插件有点坑,只能使用一个月,之后就会收费,也可以使用免费的但是安全性就没有了)插件需要用户登录才能,所以

curl -u elastic -XGET http://10.0.3.149:9200/productindex/_mapping?pretty

-u 添加登陆用户,按步骤输入密码即可

自定义索引:

在已经安装head插件的基础上

curl -u elastic -XPUT http://10.0.3.149:9200/customer?pretty  这个命令是添加自定义的索引

查看所有索引:

curl -u elastic -XGET http://10.0.3.149:9200/_cat/indices?v  这个命令是查看当前所有有效的索引

你可能注意到了:customer索引的状态为yellow。知道yellow意味着某些备份还没有分配。发生这种情况的原因是因为Elasticsearch默认情况下会为这个索引创建一个备份。因为我们目前只有一个节点,因此备份无法分配(为了高可用性),直到有其他节点能够加入到集群中。一旦备份分配到第二个节点上,健康状态就会变为green。

删除elastic中指定索引的数据:

curl -u elastic -XDELETE http://10.0.3.149:9200/logstash-*/

虽然写入数据时Elasticsearch会自动的添加映射进行处理,但是删除数据并不会删除数据的映射

#curl -XDELETE 'http://localhost:9200/logstash-2016.01.01/syslog'                  删除了syslog下面的全部数据,但是syslog的映射还在

删除映射的命令:

#curl -XDELETE 'http://localhost:9200/logstash-2016.01.01/_mapping'

删除索引的话映射也会删除

#curl -XDELETE 'http://localhost:9200/logstash-2016.01.01'

指定使用那个索引:

Logstas配置报错:

原因,在配置文件中的input的type中不能有“.”的出现

列如;

解决方法:在type中去掉“.”起别的名字

ELK日志处理之使用Grok解析日志:特殊字符得用“\”来转译字段的格式

正则匹配练习网址:http://grokdebug.herokuapp.com/

{正则表达式:自定义名}

默认自带的正则匹配规则

filter {

grok {

match => { "message" => "%{COMBINEDAPACHELOG}"}

}

练习一:

日志格式:

120.132.73.107  - -  2017-09-09 04:10:05 POST /promotion/online.php

正则匹配过滤:

%{IP:clentip} \s*-\s*-\s*%{TIMESTAMP_ISO8601:time}\s*%{WORD:method}\s*%{URIPATHPARAM:request}\s*

说明:在每一个字段的前面添加%作为分割,”\s*“这个能够替代空格;正则严格匹配格式;格式中的“(”和“)”是成对存在的

{IP:clentip}匹配对应位的IP地址

{TIMESTAMP_ISO8601:time}匹配对应位的时间格式

{WORD:method}匹配对应位的请求方式(get/post/put等)

{URIPATHPARAM:request}匹配对应位的请求路径

练习二:

日志格式:

11.11.1.1 - - [01/Mar/2013:12:23:53 +0800]

正则匹配格式:

方法一:%{IPORHOST:client_ip} \s*-\s*- \[%{HTTPDATE:timestamp}\]

方法二:%{IPORHOST:client_ip} %{USER:ident} %{USER:auth} \[%{HTTPDATE:timestamp}\]

说明:

{IPORHOST:client_ip}也用于匹配客户端IP地址

{HTTPDATE:timestamp}用于匹配对应位的格式的时间

{USER:ident}匹配对应的“-”

练习三:

日志格式“

"GET /v1/api HTTP/1.1"

正则匹配格式:

方法一:\"%{WORD:verb} %{NOTSPACE:request} HTTP/%{NUMBER:http_version}\"

方法二:\"(?:%{WORD:verb} %{NOTSPACE:request}(?: HTTP/%{NUMBER:http_version})?|-)\"

方法三:\"(%{WORD:verb} %{NOTSPACE:request}( HTTP/%{NUMBER:http_version}))\"

方法四:\"(%{WORD:verb} %{NOTSPACE:request}(\s*HTTP/%{NUMBER:http_version}))\"

说明:

{NOTSPACE:request}也用于匹配对于对应位的请求路径(和上面的功能一样,区别目前还没发现)

HTTP这个就是格式中的HTTP,这个没法正则,所以说要是出现不能匹配的串直接照样写出来就可以了

{NUMBER:http_version}匹配对应位的数字

练习四:

日志格式:

"https://api.xx.com/v1/api" "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0)"

正则匹配:

%{QS:referrer} %{QS:agent}

说明:

{QS:referrer}匹配服务端网址信息和客户端信息,要是有客户端信息匹配若没有的话只匹配服务端的信息

{QS:agent}匹配对应的客户端信息

练习五:

日志格式:

10.0.3.104 - - [05/Sep/2017:01:02:20 -0700] "GET / HTTP/1.1" 403 4897 "-" "Mozilla/5.0 Windows NT 10.0; WOW64; Trident/7.0; rv:11.0 like Gecko Core/1.53.3376.400 QQBrowser/9.6.11924.400"

正则匹配:

%{IP:clentip}\s*-\s*-\s*\[%{HTTPDATE:timestamp}\] \"%{WORD:verb} / HTTP/%{NUMBER:http_version}\" %{NUMBER:buzhidao} %{NUMBER:jiubzhidao} \"-\" %{QS:agent}

说明:

服务端/客户端的信息那边的"Mozilla/5.0 Windows NT 10.0; WOW64; Trident/7.0; rv:11.0 like Gecko Core/1.53.3376.400 QQBrowser/9.6.11924.400" 冒号这个“”“不能在正则中加,加上不匹配不成功,不加就可以了;但是其他的字段要是出现冒号得加。这个是特殊的字段

Logstas配置语法:

报错:Cannot create pipeline {:reason=>"translation missing: en.logstash.agent.configuration.invalid_plugin_register"}

在fork的插件中添加

Kibana报错:

可视化报错:

解决方法:

Kibana访问出错:提示访问被重定向,查看启动过程有如下报错:

提示[security_exception](安全异常),这个原因可能是xpack这个安全插件到期导致的(也可以找免费的但是不安全);

解决办法:

If your license is expired, you'll need to disable security. You can do this by adding the following to both your Elasticsearch and your Kibana config:(禁止安全插件,在Elasticsearch和Kibana配置文件中添加以下的内容,禁止启动用xpack安全插件就可以了)

xpack.security.enabled: false

 

Elastic终端报错:

出现下面的情况说明数据的插入已经失败了,这个有可能是_ID号的原因,在kinbana上的DEV TOOls中插入即可,把id号改变下就可以了

Mapping练习报错以及解决方法记录:

错误一:

解决方法:

先创建一个索引,在这个索引下在创建mapping映射

elk5.4小白踩坑记录的更多相关文章

  1. unionId突然不能获取的踩坑记录

    昨天(2016-2-2日),突然发现系统的一个微信接口使用不了了.后来经查发现,是在网页授权获取用户基本信息的时候,unionid获取失败导致的. 在网页授权获取用户基本信息的介绍中(http://m ...

  2. CentOS7.4安装MySQL踩坑记录

    CentOS7.4安装MySQL踩坑记录 time: 2018.3.19 CentOS7.4安装MySQL时网上的文档虽然多但是不靠谱的也多, 可能因为版本与时间的问题, 所以记录下自己踩坑的过程, ...

  3. ubuntu 下安装docker 踩坑记录

    ubuntu 下安装docker 踩坑记录 # Setp : 移除旧版本Docker sudo apt-get remove docker docker-engine docker.io # Step ...

  4. SpringBoot + Shiro + shiro.ini 的踩坑记录

    0.写在前面的话 好久没写博客了,诶,好多时候偷懒直接就抓网上的资料丢笔记里了,也就没有自己提炼,偷懒偷懒.然后最近参加了一个网络课程,要交作业的那种,为了能方便看下其他同学的作业,就写了个爬虫把作业 ...

  5. 你真的了解字典(Dictionary)吗? C# Memory Cache 踩坑记录 .net 泛型 结构化CSS设计思维 WinForm POST上传与后台接收 高效实用的.NET开源项目 .net 笔试面试总结(3) .net 笔试面试总结(2) 依赖注入 C# RSA 加密 C#与Java AES 加密解密

    你真的了解字典(Dictionary)吗?   从一道亲身经历的面试题说起 半年前,我参加我现在所在公司的面试,面试官给了一道题,说有一个Y形的链表,知道起始节点,找出交叉节点.为了便于描述,我把上面 ...

  6. google nmt 实验踩坑记录

       最近因为要做一个title压缩的任务,所以调研了一些text summary的方法.    text summary 一般分为抽取式和生成式两种.前者一般是从原始的文本中抽取出重要的word o ...

  7. ABP框架踩坑记录

    ABP框架踩坑记录 ASP.NET Boilerplate是一个专用于现代Web应用程序的通用应用程序框架. 它使用了你已经熟悉的工具,并根据它们实现最佳实践. 文章目录 使用MySQL 配置User ...

  8. SpringBoot+SpringSecurity+Thymeleaf认证失败返回错误信息踩坑记录

    Spring boot +Spring Security + Thymeleaf认证失败返回错误信息踩坑记录 步入8102年,现在企业开发追求快速,Springboot以多种优秀特性引领潮流,在众多使 ...

  9. IDFA踩坑记录

    IDFA踩坑记录: 1.iOS10.0 以下,即使打开“限制广告跟踪”,依然可以读取idfa: 2.打开“限制广告跟踪”,然后再关闭“限制广告跟踪”,idfa会改变: 3.越狱机器安装开发证书打的包, ...

随机推荐

  1. React Native学习(四)—— 写一个公用组件(头部)

    本文基于React Native 0.52 Demo上传到Git了,有需要可以看看,写了新内容会上传的.Git地址 https://github.com/gingerJY/React-Native-D ...

  2. linux中mv命令使用详解

    mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命令,经常用来备份文件或者目录. 1.命令格式: mv [选项] 源文件或目 ...

  3. volatile 与 synchronized 区别

    在Java中,为了保证多线程读写数据时保证数据的一致性,可以采用两种方式: 同步 如用synchronized关键字,或者使用锁对象. volatile 使用volatile关键字用一句话概括vola ...

  4. SpringBoot Unable to start EmbeddedWebApplicationContext due to missing EmbeddedServletContainerFactory bean.

    SpringBoot Unable to start EmbeddedWebApplicationContext due to missing EmbeddedServletContainerFact ...

  5. 我是如何将网站全站启用Https的?-记录博客安装配置SSL证书全过程

    评论»   文章目录 为什么要Https 如何选择Https 安装部署SSL证书 平滑过渡Https 搜索引擎的响应 启用Https小结 正如大家所看到的,部落全站已经启用了Https访问了,连续几天 ...

  6. 正则API

    正则表达式:规定字符串中字符出现规律的公式 如果备选字符列表中个别字符之间是连续的,可用-省略中间的字符.比如: 匹配1位数字:   [0-9]匹配1位小写字母 : [a-z] 匹配1位大写字母 : ...

  7. 本地如何使用phpstudy环境搭建多站点

    http://jingyan.baidu.com/article/e52e36154227ef40c70c5147.html 平时在开发项目的时候, 多个项目同时开发的时候会遇到都得放到根目录才能正常 ...

  8. MyBatis之基于XML的动态SQL

    先说下我的梦想,大学的时候一直想着是能开店卖胡辣汤,到目前依然还是我的梦想,上周一家出版社联系我问我有没有时间可以合作出书,这也是我的梦想之一,想了想还是放弃了,至少觉得目前不行,毕竟工作还不到五年, ...

  9. Redis单机版安装

    1.工具简单介绍 1.博主使用的是Xshell工具 ps:需要设置端口和连接名称,端口一般默认为22,需要的童鞋可以自行百度 2.Redis单机版安装 第一步:安装gcc编译环境 yum instal ...

  10. MongDB .Net工具库MongoRepository的简单使用

    MongDB .Net工具库MongoRepository的简单使用 最近研究了一下MongoDB数据库,并使用了开源的在.net环境下的一个类库,Mongo仓库.对于数据的一些简单的操作非常好用,特 ...