elk5.4小白踩坑记录
搭建请参考: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的 plugins、modules 目录下,否则报一堆错误)
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)
启动elk服务
################插件安完毕#######################################
报错:
- 不能放在
elasticsearch的plugins、modules目录下 ·不能使用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小白踩坑记录的更多相关文章
- unionId突然不能获取的踩坑记录
昨天(2016-2-2日),突然发现系统的一个微信接口使用不了了.后来经查发现,是在网页授权获取用户基本信息的时候,unionid获取失败导致的. 在网页授权获取用户基本信息的介绍中(http://m ...
- CentOS7.4安装MySQL踩坑记录
CentOS7.4安装MySQL踩坑记录 time: 2018.3.19 CentOS7.4安装MySQL时网上的文档虽然多但是不靠谱的也多, 可能因为版本与时间的问题, 所以记录下自己踩坑的过程, ...
- ubuntu 下安装docker 踩坑记录
ubuntu 下安装docker 踩坑记录 # Setp : 移除旧版本Docker sudo apt-get remove docker docker-engine docker.io # Step ...
- SpringBoot + Shiro + shiro.ini 的踩坑记录
0.写在前面的话 好久没写博客了,诶,好多时候偷懒直接就抓网上的资料丢笔记里了,也就没有自己提炼,偷懒偷懒.然后最近参加了一个网络课程,要交作业的那种,为了能方便看下其他同学的作业,就写了个爬虫把作业 ...
- 你真的了解字典(Dictionary)吗? C# Memory Cache 踩坑记录 .net 泛型 结构化CSS设计思维 WinForm POST上传与后台接收 高效实用的.NET开源项目 .net 笔试面试总结(3) .net 笔试面试总结(2) 依赖注入 C# RSA 加密 C#与Java AES 加密解密
你真的了解字典(Dictionary)吗? 从一道亲身经历的面试题说起 半年前,我参加我现在所在公司的面试,面试官给了一道题,说有一个Y形的链表,知道起始节点,找出交叉节点.为了便于描述,我把上面 ...
- google nmt 实验踩坑记录
最近因为要做一个title压缩的任务,所以调研了一些text summary的方法. text summary 一般分为抽取式和生成式两种.前者一般是从原始的文本中抽取出重要的word o ...
- ABP框架踩坑记录
ABP框架踩坑记录 ASP.NET Boilerplate是一个专用于现代Web应用程序的通用应用程序框架. 它使用了你已经熟悉的工具,并根据它们实现最佳实践. 文章目录 使用MySQL 配置User ...
- SpringBoot+SpringSecurity+Thymeleaf认证失败返回错误信息踩坑记录
Spring boot +Spring Security + Thymeleaf认证失败返回错误信息踩坑记录 步入8102年,现在企业开发追求快速,Springboot以多种优秀特性引领潮流,在众多使 ...
- IDFA踩坑记录
IDFA踩坑记录: 1.iOS10.0 以下,即使打开“限制广告跟踪”,依然可以读取idfa: 2.打开“限制广告跟踪”,然后再关闭“限制广告跟踪”,idfa会改变: 3.越狱机器安装开发证书打的包, ...
随机推荐
- CodeForces 543D:Road Improvement
题目:http://codeforces.com/problemset/problem/543/D 题意:给你一棵树,一开始边都是0,可以使任意的边变成1,对于每一个根节点求使得它到其他任一点的路径上 ...
- ICMP TYPE-CODE查阅表
我们在使用ICMP协议进行作业时,经常会用到ICMP类型和code,这里给出ICMP类型和code对应表. ICMP TYPE CODE对照表 TYPE CODE Description Query ...
- Xtrabackup实现数据的备份与恢复
Xtrabackup介绍 Xtrabackup是由percona开源的免费数据库热备份软件,它能对InnoDB数据库和XtraDB存储引擎的数据库非阻塞地备份(对于MyISAM的备份同样需要加表锁): ...
- Angular 选项卡
<div ng-init="now=0;" class="nav"> <h4>选项卡</h4> <div > & ...
- PHPStorm+PHPStudy配置XDebug
img { max-width: 100% } 上一节里面从PHPStudy+PHPStorm的配置,到最后发布,PHPStorm只是承担了编辑器和发布站点的任务,但是还没有办法像Visual Stu ...
- Button重写onClick两种方式
实现接口和匿名内部类 下午没课,自己又继续安卓的学习,照着书上做了一个left碎片Button点击后动态加载right碎片布局的Test,准备自己再继续做一个单击左碎片的button1 加载右碎片布局 ...
- ThinkPHP5上传图片并压缩为缩略图
使用thinkphp开发app后端中,需要实现一个处理上传图片队列的功能 这是个上传多图片保存并且需要对其中一张图片进行压缩的功能 (使用的html5 mui框架开发app,如果直接载入原图,app客 ...
- Centos6.9安装Node.js+npm爬坑
Node.js选择 1.下载 wget https://nodejs.org/dist/v8.4.0/node-v8.4.0-linux-x86.tar.gz 2.解压 tar zxvf node-v ...
- Struts2中Action接收参数的方法主要有以下三种:
Struts2中Action接收参数的方法主要有以下三种: 1.使用Action的属性接收参数(最原始的方式): a.定义:在Action类中定义属性,创建get和set方法: b.接 ...
- MYSQL DISTINCT Optimization
在很多情况下,Distinct和order by的组合需要建立一个内存临时表. 因为distinct关键字可能利用group by,所以了解下mysql如何处理group by有帮助. distin ...