V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
HangoX
V2EX  ›  程序员

elasticsearch 有什么值得看的书吗?

  •  
  •   HangoX · 2019-02-26 19:35:48 +08:00 · 13755 次点击
    这是一个创建于 2083 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我想实现这样的功能,把移动端的 log 发送到 elasticsearch ,然后在 kibana 上创建展示,目前知道需要用到 kafra 做筛选,然后扔到 logstash 中,最后流入 elasticseach,但是我对这些都不熟悉

    13 条回复    2019-02-27 12:49:28 +08:00
    nullllllllllllll
        1
    nullllllllllllll  
       2019-02-26 19:43:58 +08:00
    Elasticsearch 技术解析与实战
    Wincer
        2
    Wincer  
       2019-02-26 19:45:43 +08:00 via Android
    es 的官方文档很详细了
    kingguy
        3
    kingguy  
       2019-02-26 19:46:30 +08:00   ❤️ 1
    实现这点功能看 elk 文档就可以了。。或者随便搜篇文章就可以搞定了
    liuxliang
        4
    liuxliang  
       2019-02-26 20:01:54 +08:00
    官方文档
    kongkongyzt
        5
    kongkongyzt  
       2019-02-26 20:06:20 +08:00
    Hieast
        6
    Hieast  
       2019-02-26 23:28:02 +08:00 via Android
    看 es 权威指南,不要嫌弃这本书的版本低。一开始会根据你的需求推荐你看哪几章,把那几章看完。
    然后看你使用的那个版本的官方接口文档,用到哪看到哪。
    kiddingU
        7
    kiddingU  
       2019-02-27 10:22:52 +08:00
    看官方文档咯,不过只是做日志收集的话也没什么看的,自动生成的 es index ,mapping 自动建立的,就是 index 看你日志大小的粒度是什么样的
    CivAx
        8
    CivAx  
       2019-02-27 10:38:11 +08:00   ❤️ 1
    通常情况下日志的流转过程是:
    部署多个 FileBeat 从多个地方(服务器)收集日志,然后推送给 LogStash,LogStash 根据自身的配置文件进行小筛,然后推送到 ElasticSearch,ElasticSearch 接收到 Raw Data 后根据自身设置建立索引,Kibana 通过读取 ElasticSearch 的索引来进行各种图形化的展示

    那么这套流程的难点主要在两个地方:
    1、LogStash 如何配置才能按照格式进行匹配与筛选( grok ),这是个力气活,你只能不停地调整 grok 的规则以匹配你的日志格式(比如我们是 tomcat 标准输出,grok 起来会十分简单)

    2、ElasticSearch 如何对传入的 Raw Data 进行格式化处理。是根据传入的 Raw Data 自动生成 Index (一般没人这么干),还是根据模板进行文件名匹配来生成 Index,还是直接写入现有 Index。

    前些阵子我也在为我司配 ELK 做日志管理系统的问题上踩了不少坑。。。要是还有不懂的可以问我(用 IM 工具会更方便,ODYzNzk3OTM=)
    shaohan0228
        9
    shaohan0228  
       2019-02-27 11:27:28 +08:00
    官方文档
    我是先从网上找了一个 Demo,跑起来之后根据需求再开始翻文档
    HangoX
        10
    HangoX  
    OP
       2019-02-27 12:00:52 +08:00
    @Wincer 官方文档的确很详细,但是貌似我没找到怎么把东西串起来的方法。logstash 这个东西我还是看别人的文章才知道的,我需要一个比较大体的东西,比如这个是干嘛的,这个是干嘛的,然后他们分别是怎么串起来完成一些事情。

    @CivAx 这边主要是移动端 log 收集,和 服务端有点不一样,毕竟移动端没有 FIleBeat。然后移动端是直接把 log 文件压缩发送到 s3 或者服务器上,然后服务器怎么传递给 es 这里我就断了。。。
    CivAx
        11
    CivAx  
       2019-02-27 12:19:56 +08:00
    @HangoX #10 压缩发送到目标服务器后解包就是了…然后 FileBeat 从这里开始收集
    Wisho
        12
    Wisho  
       2019-02-27 12:25:27 +08:00
    @HangoX
    感觉你是不是想要一本像《 MySQL 技术内幕》那样的书,从底层实现讲几大核心模块的原理的书?
    暂时 es 还没有这样的书,一是 es 的版本号升得太快了,虽然底层的东西基本不怎么变,但是很少人会对更迭这么快的东西写书。二是 es 的用户还不是特别多。
    Wincer
        13
    Wincer  
       2019-02-27 12:49:28 +08:00 via Android
    @HangoX filebeat 可以检测某一个文件夹内文件的变动,你把移动端的 log 发到某个指定文件夹里就行。然后 filebeat 的输出指向 logstash,logstash 的输出指向 es,就行了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2685 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 06:38 · PVG 14:38 · LAX 22:38 · JFK 01:38
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.