若是搭建elk,建议先安装好elasticsearch

来自官网,版本为2.3

wget -c https://download.elastic.co/logstash/logstash/packages/centos/logstash-2.3.4-1.noarch.rpm
rpm -ivh logstash-2.3.4-1.noarch.rpm

logstash的配置文件为/etc/sysconfig/logstash,本文不需要修改它,默认即可

日志位于/var/log/logstash/

为防止重复解析,logstash会记录文件的解析进度到/var/lib/logstash/.sincedb_xxxxxxx,如果希望重复解析(比如测试的时候)记得删除这里的缓存

解析日志相关的配置文件放到/etc/logstash/conf.d/,默认文件夹是空的,这个是需要自己写的,下面先来一个简单的:

mkdir -p /data/logs/
touch /data/logs/test.log

vi /etc/logstash/conf.d/first.conf(意思是解析test.log内容,输出到标准输出,这里会重定向输出到/var/log/logstash/logstash.stdout)

input {
file {
path => "/data/logs/test.log"
}
}
output {
stdout {}
}

启动logstash

/etc/init.d/logstash start

在test.log中追加信息,然后查看输出

echo 'hello world 1' >> /data/logs/test.log
echo 'hello world 2' >> /data/logs/test.log
tail /var/log/logstash/logstash.stdout

可以看到追加的信息被logstash以一定格式输出到了stdout

下面来个复杂的日志文件,下载官方的测试log:https://download.elastic.co/demos/logstash/gettingstarted/logstash-tutorial.log.gz

然后解压到/data/logs/logstash/logstash-tutorial.log

新加一个日志解析配置:

vi /etc/logstash/conf.d/second.conf

input {
file {
path => "/data/logs/logstash/*.log"
start_position => beginning
ignore_older => 0
}
}
output {
stdout {}
}

可以看到指定文件那里可以用匹配模式指定

start_position:默认是从文件末尾开始解析(监控)

ignore_older:默认超过24小时的日志不解析,0表示不忽略任何过期日志

重启logstash,可以看到logstash-tutorial.log的解析结果会输出到stdout

输出到stdout并没有用,我们现在把结果存储到elasticsearch:

output {
elasticsearch {}
stdout {}
}
若elasticsearch不是在本机
elasticsearch {
hosts => "192.168.1.111"
}
若elasticsearch不是默认端口9200
elasticsearch {
hosts => "192.168.1.111:9292"
}

先停止logstash,清空解析缓存,再启动

/etc/init.d/logstash stop
rm -rf /var/lib/logstash/*
/etc/init.d/logstash start

在elasticsearch中查询可以看到多了一个索引logstash-2016.11.25,数据已经存储在里面

(而且是解析过的,ip、url、时间等,解析是用的过滤器filter,这里没有配置单应该用的是默认filter:grok)

基础用法至此结束

logstash安装与基础用法的更多相关文章

  1. Docker 安装和基础用法

    理解Docker(1):Docker 安装和基础用法 本系列文章将介绍Docker的有关知识: (1)Docker 安装及基本用法 (2)Docker 镜像 (3)Docker 容器的隔离性 - 使用 ...

  2. elasticsearch安装与基础用法

    来自官网,版本为2.3 注意elasticsearch依赖jdk,2.3依赖jdk7 下载rpm包并安装 wget -c https://download.elastic.co/elasticsear ...

  3. 理解Docker(1):Docker 安装和基础用法

    本系列文章将介绍Docker的有关知识: (1)Docker 安装及基本用法 (2)Docker 镜像 (3)Docker 容器的隔离性 - 使用 Linux namespace 隔离容器的运行环境 ...

  4. logstash安装及基础入门

    Logstash是一款开源的数据收集引擎,具备实时管道处理能力.简单来说,logstash作为数据源与数据存储分析工具之间的桥梁,结合 ElasticSearch以及Kibana,能够极大方便数据的处 ...

  5. filebeat安装与基础用法

    来自官网,版本为1.2 下载rpm包并安装 wget -c https://download.elastic.co/beats/filebeat/filebeat-1.2.3-x86_64.rpm r ...

  6. kibana安装与基础用法

    来自官网,版本为4.5 下载rpm包并安装 wget -c https://download.elastic.co/kibana/kibana/kibana-4.5.4-1.x86_64.rpm rp ...

  7. git安装及基础用法

    1.安装GitGit-2.9.3-64-bit.exe 2.打开Git Bash,设置用户名,Email $ git config --global user.name "Your Name ...

  8. 前端自动化测试神器-Katalon的基础用法

    前言 最近由于在工作中需要通过Web端的功能进行一次大批量的操作,数据量大概在5000左右,如果手动处理, 完成一条数据的操作用时在20秒左右的话,大概需要4-5个人/天的工作量(假设一天8小时的工作 ...

  9. mySQL的安装和基础使用及语法教程

    mySQL的安装和基础使用及语法指南 一.MySQL的安装.配置及卸载 1.安装 2.配置 3.mySQL5.1的完全卸载 4.MYSQL环境变量的配置 二.MySQL控制台doc窗口的操作命令 1. ...

随机推荐

  1. Java实现智能机器自动操作电脑

    package com.tz.util; import java.awt.Robot; import java.awt.event.InputEvent; import java.awt.event. ...

  2. js console 一些拓展技巧

    console.time 方法 / console.timeEnd() 方法 统计一段代码的执行时间, 形参必须一致 console.time("string"); for(var ...

  3. “迷宫”sprint——6.8

    会议时间:2015.6.8 ,12:30——13:00 会议内容:开始第二阶段冲刺,分配任务. 我的任务:完成安卓环境搭建.

  4. YII2 blockui

    https://packagist.org/packages/ayrozjlc/yii2-blockui

  5. 分享一个基于HTML5实现的视频播放器【转】

    什么是hivideo? 最近一段时间在使用PhoneGap开发一个App应用,App需要播放视频,本想直接使用html5的video,但使用它在全屏播放时不支持横屏播放,只能放弃.最终决定还是自己封装 ...

  6. 安装Arch Linux(桌面环境)

    安装xorg-server # pacman -S xorg-server xorg-server-utils xorg-xinit 安装显卡驱动 如果不知道是什么显卡,就使用以下命令查看 # lsp ...

  7. controlling the variance of request response times and not just worrying about maximizing queries per second

    http://highscalability.com/blog/2010/11/4/facebook-at-13-million-queries-per-second-recommends-minim ...

  8. View的drawRect方法

    1)此方法在View第一次在展示时调用,此后都用他的一个shotCut,可用setNeedsDisplay方法强制调用. 1)此方法在ViewDidAppear方法中才会调用.因此要想获得在drawR ...

  9. 【C++】const

    1. 默认状态下,const对象仅在文件内有效,即在不同文件中出现同名const变量的时候,其实相当于这些同名const是不同的东西. 如果想要在文件中共享const变量,可以在const变量不管是声 ...

  10. 使用CMD命令设置IP

    使用CMD命令设置IP,将下面文本保存为bat文件后执行 netsh interface ip set address name="本地连接" source=static addr ...