ganglia离线安装_ELK学习笔记之logstash安装logstash-filter-multiline(在线离线安装)

时间:2025-05-13 07:02:35

0x00 概述

ELK-logstash在搬运日志的时候会出现多行日志,普通的搬运会造成保存到ES中单条单条,很丑,而且不方便读取,logstash-filter-multiline可以解决该问题

普通日志如下:

记录到es会的记录则是:

我们希望的结果肯定是这样的

0x01 原生安装

# /usr/share/logstash/bin/logstash-plugin install logstash-filter-multiline

Validating logstash-filter-multiline

Installing logstash-filter-multiline

WARNING: can not set Session#timeout=(0) no session context

0x02 改镜像源安装

Ruby 加上国内的镜像站:/,替代。

注意原/目前已经可用,需要使用/

1. 安装Gem并更新

# yum install -y gem

# gem -v

2.0.14.1

# gem update --system

# gem -v

2.6.13

2. 检查并修改镜像源

# gem sources -l

*** CURRENT SOURCES ***

/

# gem sources --add / --remove /

/ added to sources

/ removed from sources

# cat ~/.gemrc

---

:backtrace: false

:bulk_threshold: 1000

:sources:

- /

:update_sources: true

:verbose: true

3. 安装 bundle 并更改镜像源

# gem install bundler

# bundle config ://

4. 修改 logstash的 gem 镜像源

# vim /usr/share/logstash/Gemfile

# This is a Logstash generated Gemfile.

# If you modify this file manually all comments and formatting will be lost.

source ""

gem "logstash-core", :path => "./logstash-core"

......

# 更改默认的 为

-1.文件不用改,会自动更新。

5. 安装 logstash-filter-multiline

# /usr/share/logstash/bin/logstash-plugin install logstash-filter-multiline

Validating logstash-filter-multiline

Installing logstash-filter-multiline

Installation successful

我们看看logstash都安装了哪些插件

# /usr/share/logstash/bin/logstash-plugin list

logstash-codec-cef

logstash-codec-collectd

logstash-codec-dots

logstash-codec-edn

logstash-codec-edn_lines

logstash-codec-es_bulk

logstash-codec-fluent

logstash-codec-graphite

logstash-codec-json

logstash-codec-json_lines

logstash-codec-line

logstash-codec-msgpack

logstash-codec-multiline

logstash-filter-multiline

logstash-codec-netflow

logstash-codec-plain

logstash-codec-rubydebug

logstash-filter-aggregate

logstash-filter-anonymize

logstash-filter-cidr

logstash-filter-clone

logstash-filter-csv

logstash-filter-date

logstash-filter-de_dot

logstash-filter-dissect

logstash-filter-dns

logstash-filter-drop

logstash-filter-elasticsearch

logstash-filter-fingerprint

logstash-filter-geoip

logstash-filter-grok

logstash-filter-jdbc_static

logstash-filter-jdbc_streaming

logstash-filter-json

logstash-filter-kv

logstash-filter-metrics

logstash-filter-mutate

logstash-filter-ruby

logstash-filter-sleep

logstash-filter-split

logstash-filter-syslog_pri

logstash-filter-throttle

logstash-filter-translate

logstash-filter-truncate

logstash-filter-urldecode

logstash-filter-useragent

logstash-filter-xml

logstash-input-beats

logstash-input-dead_letter_queue

logstash-input-elasticsearch

logstash-input-exec

logstash-input-file

logstash-input-ganglia

logstash-input-gelf

logstash-input-generator

logstash-input-graphite

logstash-input-heartbeat

logstash-input-http

logstash-input-http_poller

logstash-input-imap

logstash-input-jdbc

logstash-input-kafka

logstash-input-pipe

logstash-input-rabbitmq

logstash-input-redis

logstash-input-s3

logstash-input-snmptrap

logstash-input-sqs

logstash-input-stdin

logstash-input-syslog

logstash-input-tcp

logstash-input-twitter

logstash-input-udp

logstash-input-unix

logstash-output-cloudwatch

logstash-output-csv

logstash-output-elasticsearch

logstash-output-email

logstash-output-file

logstash-output-graphite

logstash-output-http

logstash-output-kafka

logstash-output-lumberjack

logstash-output-nagios

logstash-output-null

logstash-output-pagerduty

logstash-output-pipe

logstash-output-rabbitmq

logstash-output-redis

logstash-output-s3

logstash-output-sns

logstash-output-sqs

logstash-output-stdout

logstash-output-tcp

logstash-output-udp

logstash-output-webhdfs

logstash-patterns-core

6. 离线打包

这里安装好了,那么就可以打个离线的 zip 包,方便生产环境直接安装。离线包将包含所有依赖的包。

# cd /usr/share/logstash/bin

# ./logstash-plugin prepare-offline-pack --overwrite --output logstash-filter-multiline

Offline package created at:

You can install it with this command `bin/logstash-plugin install file:///usr/share/logstash/bin/`

7. logstash-filter-multiline使用方法

codec =>multiline {

charset=>... #可选 字符编码

max_bytes=>... #可选 bytes类型 设置最大的字节数

max_lines=>... #可选 number类型 设置最大的行数,默认是500行

multiline_tag... #可选 string类型 设置一个事件标签,默认是multiline

pattern=>... #必选 string类型 设置匹配的正则表达式

patterns_dir=>... #可选 array类型 可以设置多个正则表达式

negate=>... #可选 boolean类型 默认false不显示,可设置ture

what=>... #必选 向前previous , 向后 next

}

## negate 只支持布尔值,true 或者false,默认为false。

如果设置为true,表示与正则表达式(pattern)不匹配的内容都需要整合,

具体整合在前还是在后,看what参数。如果设置为false,即与pattern匹配的内容

## what 前一行 或者后一行,指出上面对应的规则与前一行内容收集为一行,还是与后一行整合在一起

negate默认是 false,不显示与patten匹配的行

由what决定 向前或向后 匹配

negate 设置为true

则与patten 不匹配的行

由what决定 向前或向后 匹配

python3.4学习笔记(五) IDLE显示行号问题,插件安装和其他开发工具介绍

python3.4学习笔记(五) IDLE显示行号问题,插件安装和其他开发工具介绍 IDLE默认不能显示行号,使用ALT+G 跳到对应行号,在右下角有显示光标所在行.列.pycharm免费社区版.Su ...

Linux 学习笔记 1 使用最小的系统,从分区安装系统开始

我们常用的linux系统在安装过程中大多都省略了对系统进行分区的操作,以至于后期,不了解什么是分区以及分区当中最基本的一些概念, 我们不说最细的知识,只求了解这个过程,那直接步入正题,开始第一节的学习 ...

ES6学习笔记<;四>; default、rest、Multi-line Strings

default 参数默认值 在实际开发 有时需要给一些参数默认值. 在ES6之前一般都这么处理参数默认值 function add(val_1,val_2){ val_1 = val_1 || 10; ...

Ubuntu14.04用apt在线/离线安装CDH5.1.2[Apache Hadoop 2.3.0]

目录 [TOC] 介绍 1.1.什么是CDH和CM? CDH一个对Apache Hadoop的集成环境的封装,可以使用Cloudera Manager进行自动化安装. Cloudera-Ma ...

Centos7中在线/离线安装DockerCE最新版

Docker在Centos7在线/离线安装 一.在线安装 1.检查系统是否支持,因为Docker 要求 CentOS 系统的内核版本高于 3.10 uname -r 2.确保 yum 包更新到最新 y ...

ELK学习笔记(一)安装Elasticsearch、Kibana、Logstash和X-Pack

最近在学习ELK的时候踩了不少的坑,特此写个笔记记录下学习过程. 日志主要包括系统日志.应用程序日志和安全日志.系统运维和开发人员可以通过日志了解服务器软硬件信息.检查配置过程中的错误及错误发生的原因 ...

ELK 学习笔记之 Logstash安装

Logstash安装: /downloads/logstash 下载解压: tar –zxvf logstash-5.6. 在/usr/lo ...

ELK学习笔记之CentOS 7下ELK(6.2.4)++LogStash+Filebeat+Log4j日志集成环境搭建

0x00 简介 现在的公司由于绝大部分项目都采用分布式架构,很早就采用ELK了,只不过最近因为额外的工作需要,仔细的研究了分布式系统中,怎么样的日志规范和架构才是合理和能够有效提高问题排查效率的. 经 ...

ELK学习笔记之Logstash详解

0x00 Logstash概述 官方介绍:Logstash is an open source data collection engine with real-time pipelining cap ...

ElasticSearch学习笔记(三)logstash安装和logstash-input-jdbc插件

ElasticSearch的索引可以手动添加索引的,就是类似下面这样添加的 PUT /movies/movie/1 { "title": "The Godfather&q ...

随机推荐

CSS3——3D翻转相册

transform属性和transition过渡属性,结合jQuery代码实现翻转功能. ...

CSS用Id选择器在本页写样式

静夜思