Learning ELK stack 学习笔记

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: 不错的入门书Learning ELK stack 第三章: Logstash插件类型分为四类:  Input  Filter  Output  Codec Logstash input类的file插件维护了一个sincedb文件追踪监控操作文件的当前位置。
不错的入门书Learning ELK stack
第三章:
Logstash插件类型分为四类:
 Input
 Filter
 Output
 Codec

Logstash input类的file插件维护了一个sincedb文件追踪监控操作文件的当前位置。默认写入$HOME/.sincedb*,游标及读取频率可以通过配置修改。
file的两个配置属性:sincedb_path,sincedb_write_interval(默认15秒读取一次文件)
这里还涉及另一个配置 start_position => "beginning" 或"end"(默认),使用beginning,如果移除了.sincedb,将重新读取历史数据,造成数据重复。
lumberjack和logstash forwarder(轻量化的logstash)使用lumberjack协议打包日志
redis经常做为logstash forwarder 与logstash的中间人角色,在高负载系统上提供获取日志的服务。

Logstash outpu类型插件:
重点是elasticsearch,email,kafka,lumberjack,redis,
Logstash filter类型插件:
date,drop,grok解析非结构化的日志转换成结构化,mutate重命名,移除,替换,修改字段,转换字段类型,合并字段等
Logstash codec类型插件:编码解码日志
json,mutliline


第五章节:
elasticsearch > indices > documents(json) > fields(_type,mapping)
                    pattern=>"logstash-%{+YYYY.MM.dd}"(默认index)
shard:index的物理存储位置,支持Primary shard and replica shard, 默认每个document使用5个shard
    replica shard分布在各个节点上,可以failover与平均负载

cluster > nodes :三种角色
                =>data node
                =>master node
                =>routing node & load banlancer node
elasticsearch api
    $curl -X '://://?'d ''
VERB:GET, POST, PUT,DELETE, HEAD
PROTOCAL:http,https
PATH:/index/type/id
OPERATION_NAME: _search, _count, and so on
QUERY_STRING: ?pretty for pretty print of JSON documents
BODY: This makes a request for body text.
查看指定index的document
thinkt@linux-pw37:~> curl -XGET 'http://192.168.56.101:9200/logstash-2016.09.09/_search?pretty'
{
  "took" : 107,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "failed" : 0
  },
  "hits" : {
    "total" : 1,
    "max_score" : 1.0,
    "hits" : [ {
      "_index" : "logstash-2016.09.09",
      "_type" : "logs",
      "_id" : "AVf3tVjYndkMLGPlmtnx",
      "_score" : 1.0,
      "_source" : {
        "message" : "2016-09-09,770.099976,773.244995,759.659973,759.659973,1812200,759.659973",
        "@version" : "1",
        "@timestamp" : "2016-09-09T00:00:00.000Z",
        "path" : "/home/vagrant/table.csv",
        "host" : "localhost.localdomain",
        "Date" : "2016-09-09",
        "Open" : 770.099976,
        "High" : 773.244995,
        "Low" : 759.659973,
        "Close" : 759.659973,
        "Volume" : 1812200,
        "Adj_close" : 759.659973
      }
    } ]
  }
}
查看所有index
thinkt@linux-pw37:~> curl -XGET 'http://192.168.56.101:9200/_cat/indices?v'
health status index               pri rep docs.count docs.deleted store.size pri.store.size
yellow open   logstash-2016.03.18   5   1          1            0      7.9kb          7.9kb
yellow open   logstash-2016.03.17   5   1          1            0      7.9kb          7.9kb
yellow open   logstash-2016.03.16   5   1          1            0      7.9kb          7.9kb
yellow open   logstash-2016.03.15   5   1          1            0      7.9kb          7.9kb
yellow open   logstash-2016.06.07   5   1          1            0      7.9kb          7.9kb
yellow open   logstash-2016.06.08   5   1          1            0      7.9kb          7.9kb
yellow open   logstash-2016.06.09   5   1          1            0      7.9kb          7.9kb
yellow open   logstash-2016.08.31   5   1          1            0        8kb            8kb
yellow open   logstash-2016.09.01   5   1          1            0      7.9kb          7.9kb
yellow open   logstash-2016.08.30   5   1          1            0        8kb            8kb
yellow open   logstash-2016.03.21   5   1          1            0      7.9kb          7.9kb
yellow open   logstash-2016.06.14   5   1          1            0      7.9kb          7.9kb
yellow open   logstash-2016.09.08   5   1          1            0        8kb            8kb
yellow open   logstash-2016.06.15   5   1          1            0      7.9kb          7.9kb
yellow open   logstash-2016.09.09   5   1          1            0      7.9kb          7.9kb
yellow open   logstash-2016.06.16   5   1          1            0      7.9kb          7.9kb
yellow open   logstash-2016.09.06   5   1          1            0      7.9kb          7.9kb

查看集群中所有nodes
thinkt@linux-pw37:~> curl -XGET 'http://192.168.56.101:9200/_cat/nodes?v'
host      ip        heap.percent ram.percent load node.role master name
10.0.2.15 10.0.2.15           13          56 0.00 d         *      node-1

logstash 的elasticsearch 插件会自动创建index


kibana4特性:
搜索关键字高亮
聚合类型:桶,度量
可脚本化的字段
动态展示

kibana的主项:
discover,visualize,dashboard,settings

discover的search box搜索记录默认最多显示500条index documents
    time filter支持quick,absolute,relative三种时间过滤方式,并支持定义自动刷新间隔,也可以使用histogram直方图拖动选择时间。
    查询语法使用lucene语法
    Lucene     
        n.     Lucene是一个非常优秀的开源的全文搜索引擎; 我们可以在它的上面开发出各种全文搜索的应用来。Lucene在国外有很高的知名度; 现在已经是Apache的顶级项目; 在国内;
    搜索方式:search box 文本查询,field查询

visualize,dashboard


阻止数据丢失
logs > borker(redis,rabbit mq,amqp,zeroMQ) > logstash > elasticsearch > kibana > nginx
加固数据访问
elasticsearch,kibana使用SSL认证访问elasticsearch
    browser-(ssl_key_file,ssl_cert_file)->kibana->elasticsearch
Elasticsearch shield(收费)
Search guard(free)
系统伸缩性
    horizontally scalable
    fast,quick,realtime
    inexpensive便宜的
    flexable弹性灵活的
    用户量及支持力度
    开源的
    
数据保留策略
    elasticsearch curator管理indeices


相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
目录
相关文章
|
2月前
|
消息中间件 缓存 Java
ELK技术栈 - logstash学习笔记(九)
ELK技术栈 - logstash学习笔记(九)
34 0
|
3月前
|
存储 Prometheus 监控
Prometheus vs. ELK Stack:容器监控与日志管理工具的较量
随着容器化技术的广泛应用,容器监控与日志管理成为了关键任务。本文将对两种常用工具进行比较与选择,分别是Prometheus和ELK Stack。Prometheus是一款开源的监控系统,专注于时序数据的收集和告警。而ELK Stack则是一套完整的日志管理解决方案,由Elasticsearch、Logstash和Kibana三个组件组成。通过比较它们的特点、优势和适用场景,读者可以更好地了解如何选择适合自己需求的工具。
|
3月前
|
Go 数据处理 Docker
elk stack部署自动化日志收集分析平台
elk stack部署自动化日志收集分析平台
78 0
|
2月前
|
SQL JSON API
ELK技术栈 - Elasticsearch 学习笔记(三)
ELK技术栈 - Elasticsearch 学习笔记(三)
37 0
|
2月前
|
JSON 数据可视化 应用服务中间件
ELK技术栈 - Kibana 学习笔记
ELK技术栈 - Kibana 学习笔记
38 0
|
2月前
|
存储 JSON API
ELK技术栈 - Elasticsearch 学习笔记(二)
ELK技术栈 - Elasticsearch 学习笔记(二)
204 0
|
2月前
|
存储 SQL JSON
ELK技术栈 - Elasticsearch 学习笔记(一)
ELK技术栈 - Elasticsearch 学习笔记(一)
179 0
|
2月前
|
存储 监控 NoSQL
ELK技术栈 - logstash学习笔记(八)
ELK技术栈 - logstash学习笔记(八)
38 0
|
2月前
|
存储 编解码 自然语言处理
ELK技术栈 - logstash学习笔记(七)
ELK技术栈 - logstash学习笔记(七)
31 0
|
2月前
|
JSON 编解码 运维
ELK技术栈 - logstash学习笔记(六)
ELK技术栈 - logstash学习笔记(六)
41 0