logstash

微服务业务日志收集方案

泪湿孤枕 提交于 2020-02-25 21:26:23
背景 日志内容复杂多样,如何去收集有价值的日志是我们重点关注的。日志的价值其实是取决于业务操作的,不同的业务场景下相同类型的日志的价值会截然不同。 根据以往的业务实践,结合企业级的一些业务需求,我们选定关注以下几类日志。 跟踪日志【trace.log】 Server引擎的调试日志,用于系统维护人员定位系统运行问题使用。 系统日志【system.log】 大粒度的引擎运行的入口、出口的日志,用于调用栈分析,可以进行性能分析使用。 部署日志【deploy.log】 记录系统启动、停止、构件包部署、集群通知等信息的日志。 引擎日志【engine.log】 细粒度的引擎运行日志,可以打印上下文数据,用于定位业务问题。 构件包日志【contribution.log】 构件包记录的业务日志(使用基础构件库的日志输出API写日志) 这里我们专门针对系统日志收集讨论几种收集方案 方案一:通过日志组件来收集 这里是指通过logback、log4j等日志组件来输出文件,然后再通过文件输出到logstash、kibana等日志组件中,通过这些日志组件来进行可视化统计与分析,这里需要统一关键日志输出格式方便日后统计搜索。 优点 操作简单,收集方便 减少业务依赖 粒度细 缺点 依赖于logstash、kibana 只能满足简单的日志操作,详细点或者个性化需求操作起来比较复杂 方案二

部署elk7.2.0

扶醉桌前 提交于 2020-02-25 16:39:25
说明: 12 1 单台k8s,本机目录挂载(未配置cephfs)2 如果replicas大于1, 就会出现多个es挂载同一个目录,会出现报错(uuid block) 1. es配置本地挂载 k8s-es-7.2.0.yml 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128 apiVersion: v1kind: ServiceAccountmetadata: labels: app: elasticsearch name: elasticsearch7-admin namespace: ns-elastic7apiVersion: rbac.authorization.k8s.io/v1kind: ClusterRoleBindingmetadata: name:

filebeat.yml

北城以北 提交于 2020-02-23 15:24:38
#=========================== Filebeat prospectors ============================= filebeat.prospectors: - type: log #指定文件的输入类型log(默认)或者stdin。 enabled: true # 允许采集器配置内容 paths: # paths指定要监控的日志 - /var/log/*.log #- c:\programdata\elasticsearch\logs\* #exclude_lines: ["^DBG"] # 在输入中排除符合正则表达式列表的那些行 #include_lines: ["^ERR", "^WARN"] # 包含输入中符合正则表达式列表的那些行默认包含所有行include_lines执行完毕之后会执行exclude_lines。 #exclude_files: [".gz$"] # 忽略掉符合正则表达式列表的文件默认为每一个符合paths定义的文件都创建一个harvester。 # 向输出的每一条日志添加额外的信息比如“level:debug”方便后续对日志进行分组统计。默认情况下会在输出信息的fields子目录下以指定的新增fields建立子目录例如fields.level。 #fields: # level: debug # review

CentOS 7 kibana安装配置

自闭症网瘾萝莉.ら 提交于 2020-02-22 12:53:14
Kibana 是为Elasticsearch设计的开源分析和可视化平台,你可以使用 Kibana 来搜索,查看存储在 Elasticsearch 索引中的数据并与之交互。你可以很容易实现高级的数据分析和可视化,以图表的形式展现出来。 (1)kibana配置 1.下载安装 wget https://artifacts.elastic.co/downloads/kibana/kibana-6.0.0-x86_64.rpm yum install -y kibana-6.0.0-x86_64.rpm 2.修改配置文件 vim /etc/kibana/kibana.yml server.port: 5601 //监听端口 server.host: "192.168.1.31" //监听IP地址,建议内网ip elasticsearch.url: "http://192.168.1.31:9200" //elasticsearch连接kibana的URL,也可以填写192.168.1.32,因为它们是一个集群 3.启动服务 systemctl enable kibana systemctl start kibana 4.验证 ss -antlup | grep 5601 测试访问192.168.1.31:5601 可以通过访问http://192.168.1.31:5601

ELK环境的部署与安装

末鹿安然 提交于 2020-02-19 20:06:19
ELK简介 Elasticsearch :是一个高度可扩展的开源全文搜索和分析引擎。能够快速,实时的存储,搜索和分析大量数据,通常用做底层引擎技术。 Kibana :是一个开源分析和可视化平台,是进入Elastic Stack的窗口,可以在Elasticsearch中对程序的数据进行可视化探索和实时分析,旨在与Elasticsearch协同工作。 使用Kibana搜索,查看和与存储在Elasticsearch索引中的数据进行交互,可以轻松执行数据分析,并在各种表格,图标和地图中查看数据,基于浏览器的界面能够快速创建和共享动态仪表板 Logstash :是一个具有实时功能的开源数据收集引擎。Logstash可以动态统一来自不同来源的数据,并将数据标准化到所在的目录文件中 1.水平和扩展的数据处理管道,具有强大的Elasticsearch和Kibana协同作用 2.混合,匹配和编排不同的输入,过滤器和输出,以便在管道协调中发挥作用 3.插件丰富,提供能过的灵活性 安装ELK环境 在安装这些软件的首要准备就是 需要最新的java-JDK运行环境。在官网下载最新的java和对应的JDK 设置java的环境变量 下载最新的java环境安装包 下载地址:https://download.oracle.com/otn-pub/java/jdk/11.0.1+13

集群日志收集架构ELK

浪尽此生 提交于 2020-02-18 21:03:44
前言 前几篇我们介绍了项目中 如何使用logback组件记录系统的日志情况 ;现在我们的系统都是分布式的,集群化的,那就代表着**我们的应用会分布在很多服务器上面;**那应用的日志文件就会分布在各个服务器上面。 问题 突然有一天我们系统出现了问题,我们第一时间想到的是 先要判断到底哪个服务出现了问题 ;我们的技术人员就连接生产环境服务器,查看服务器上面的应用日志。 那么多的服务器,技术人员这个时候就会很抓狂 ,一个个的查看分析日志,是比较愚蠢的方法。那有什么好的方式呢?今天老顾给大家介绍常规的方案。 ELK方案 ELK 是elastic公司提供的一套完整的日志收集以及展示的解决方案 ,是三个产品的首字母缩写,分别是ElasticSearch、Logstash 和 Kibana。 ElasticSearch简称ES ,它是一个 实时的分布式搜索和分析引擎 ,它可以用于全文搜索,结构化搜索以及分析。它是一个 建立在全文搜索引擎 Apache Lucene 基础上的搜索引擎 ,使用 Java 语言编写。 Logstash是一个具有实时传输能力的数据收集引擎 ,用来进行数据收集(如:读取文本文件)、解析,并将数据 发送给ES 。 Kibana为 Elasticsearch 提供了分析和可视化的 Web 平台 。它可以在 Elasticsearch 的索引中查找,交互数据,并生成各种维度表格

Spring Cloud集成ELK完成日志收集实战(elasticsearch、logstash、kibana)

梦想与她 提交于 2020-02-16 03:09:36
简介 对于日志来说,最常见的需求就是收集、存储、查询、展示,开源社区正好有相对应的开源项目: logstash(收集)、elasticsearch(存储+搜索)、kibana(展示) ,我们将这三个组合起来的技术称之为ELK,所以说ELK指的是Elasticsearch、Logstash、Kibana技术栈的结合。ELK对外作为一个日志管理系统的开源方案,能够可靠和安全地从任何格式的任何来源获取数据,并实时搜索、分析和可视化。 1 Elasticsearch elasticsearch是一个高可扩展的、开源的、全文本搜索和分析的引擎 。它能够近乎实时地存储,检索和分析大量数据,通常用作底层引擎/技术,为具有复杂搜索特性和需求的应用程序提供动力。 elasticsearch的底层是开源库 Lucene。但是,你没法直接用 Lucene,必须自己写代码去调用它的接口。Elastic 是 Lucene 的封装,提供了 REST API 的操作接口,开箱即用。 1.1节点和集群 elasticsearch 本质上是一个分布式数据库,允许多台服务器协同工作,每台服务器可以运行多个 elasticsearch 实例。 单个 elasticsearch 实例称为一个节点(node)。一组节点构成一个集群(cluster) 。 1.2索引(Index) elasticsearch 会索引所有字段

ELK学习001:Elastic Stack简介

こ雲淡風輕ζ 提交于 2020-02-12 18:19:47
ELK简介: ELK Stack:ELK是Elasticsearch、Logstash、Kibana的缩写简称,这三者都是开源软件。ELK是5.0版本前的统称;这是一套统一的日志收集分析系统。它能够方便的为我们收集你想要的日志并且展示出来。 Elastic Stack:是ELK5.0之后加入了Beats 套件后的新称呼。是软件集合Elasticsearch、Logstash、Kibana的简称。新增的一个FileBeat,它是一个轻量级的日志收集处理工具(Agent),Filebeat占用资源少,适合于在各个服务器上搜集日志后传输给Logstash,官方也推荐此工具。 1. Elasticsearch -->存储数据 , 来源: https://www.cnblogs.com/liuhaidon/p/12299451.html

Elk安装与部署

≡放荡痞女 提交于 2020-02-12 04:16:43
什么是ELK Elasticsearch是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。 Logstash是一个完全开源的工具,他可以对你的日志进行收集、过滤,并将其存储供以后使用(如,搜索)。 Kibana 也是一个开源和免费的工具,它Kibana可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据日志 Filebeat隶属于Beats。目前Beats包含四种工具: Packetbeat(搜集网络流量数据) Topbeat(搜集系统、进程和文件系统级别的 CPU 和内存使用情况等数据) Filebeat(搜集文件数据) Winlogbeat(搜集 Windows 事件日志数据) 操作系统 IP地址 主要软件 centos7 10.0.0.73 jdk,elasticsearch,kibana centos7 10.0.0.74 jdk,logstash ##10.0.0.73操作 安装Elk包 [ root@ localhost ~ ] # unzip ELK.zip Archive: ELK.zip inflating: ELK/elasticsearch-6.6.2.rpm inflating: ELK/jdk

ELK大流量日志分析系统搭建

不想你离开。 提交于 2020-02-07 03:52:28
1、首先说下EKL到底是什么吧? ELK是Elasticsearch(相当于仓库)、Logstash(相当于旷工,挖矿即采集数据)、Kibana(将采集的数据展示出来)的简称,这三者是核心套件,但并非全部。 Elasticsearch是实时全文搜索和分析引擎,提供搜集、分析、存储数据三大功能;是一套开放REST和JAVA API等结构提供高效搜索功能,可扩展的分布式系统。它构建于Apache Lucene搜索引擎库之上。 Logstash是一个用来搜集、分析、过滤日志的工具。它支持几乎任何类型的日志,包括系统日志、错误日志和自定义应用程序日志。它可以从许多来源接收日志,这些来源包括 syslog、消息传递(例如 RabbitMQ)和JMX,它能够以多种方式输出数据,包括电子邮件、websockets和Elasticsearch。 Kibana是一个基于Web的图形界面,用于搜索、分析和可视化存储在 Elasticsearch指标中的日志数据。它利用Elasticsearch的REST接口来检索数据,不仅允许用户创建他们自己的数据的定制仪表板视图,还允许他们以特殊的方式查询和过滤数据。 三者相互通信的端口是:9200 优化模型: filebeat(日志采集)——》kafaka集群(防止日志丢失,进行限流和负载均衡)-------》logstash集群(日志输入、过滤、输出)-----