随着项目越来越庞大,日志的数量也随之增多,游戏上线后的日志量肯定更多了,所以对日志的收集、存储、查询就非常重要了,开源界第一日志分析系统ELK必不可少。

ELK系统由Elasticsearch(分布式存储搜索服务器)、Logstash(日志收集服务器)和Kibana(Elasticsearch前端展示工具)三个开源工具组成。

ELK工作原理展示图:

如上图所示,Logstash收集AppServer产生的Log,并存放到Elasticsearch集群中,而Kibana则从ES集群中查询数据,最后通过Browser(浏览器)展示查询结果。

下图是博主自己建立ELK系统的计划用时与实际用时对比图,大家可以参考下:

接下来,我们先学习ELK三个工具的部署安装,并试验你的第一个例子。

一、elasticsearch 部署安装

1、官网下载ZIP

2、解压

3、进bin目录:G:\elasticsearch-5.6.3\elasticsearch-5.6.3\bin,shift+右键 --》 “此处打开命令行”,输入:elasticsearch

4、报错:elasticsearch missing `server' JVM at `C:\Program Files (x86)\Java\jre1.8.0\bin\server\jvm.dll'.

   解决办法:jdk1.8.0\jre\bin\server 整个文件夹,复制到 jre1.8.0\bin 里面

5、继续执行第3步,输入:elasticsearch

6、报错:

  Error occurred during initialization of VM
  Could not reserve enough space for 2097152KB object heap

      解决办法:G:\elasticsearch-5.6.3\elasticsearch-5.6.3\config\jvm.options,修改jvm.options文件的22,23行,

           22 -Xms2g
           23 -Xmx2g
          改成: -Xms512m
                      -Xmx512m
7、再次执行第3步:输入:elasticsearch 
 

启动ES成功,打开地址:http://localhost:9200/

二、logstash 部署安装

1、下载ZIP

2、解压

3、找到 G:\ELK\logstash-5.6.3\config\jvm.options,修改其中JVM的内存配置为512m,6、7行

   6 -Xms2g
           7 -Xmx2g
          改成: -Xms512m
                      -Xmx512m

4、进行最简单的管道测试,进入 G:\ELK\logstash-5.6.3\bin 目录,shift+右键 "此处打开命令行"  输入:logstash -e 'input { stdin { } } output { stdout {} }'

5、可以看到Pipeline main started,此时命令行已经准备好你的输入了,我们输入“hello world”

6、至此,我们确认logstash安装部署成功。(你也可以试试执行命令: logstash -e '',看看会输出什么)

三、Kibana部署安装

1、下载ZIP

2、解压

3、进入G:\ELK\kibana-5.6.3-windows-x86\bin 目录,shift+右键 "此处打开命令行"  ,运行kibana.bat,结果如下图:

注意:Kibana是基于Elastcisearch的前端显示工具,运行前要确认Elasticsearch服务已经开启,否则将会报错。

4、访问http://localhost:5601/,会看到:

5、至此,Kibana已经成功安装部署。

ELK新手教程——pomelo + log4js + ELK(一)的更多相关文章

  1. ELK新手教程(二)

    暂不排版,后面整理. logstash 使用配置文件 在bin目录下创建一个名为test.conf的文件,内容为: input { stdin {} } output { stdout{} } 执行命 ...

  2. Web项目的发布新手教程

    ASP.NET服务器发布新手教程 ——本文仅赠予第一次做Web项目,需要发布的新手们,转载的请注明出处. 首先我们说一下我们的需要的一个环境.我使用的是Visual Studio 2010,版本.NE ...

  3. APP设计尺寸规范大全,APP界面设计新手教程【官方版】(转)

    正值25学堂一周年之际,同时站长和APP设计同仁们在群里(APP界面设计 UI设计交流群,APP界面设计⑥群 APPUI设计③群58946771 APP设计资源⑤群 386032923欢迎大家加入交流 ...

  4. ROS探索总结(三)——ROS新手教程【转】

    转自:http://blog.csdn.net/hcx25909/article/details/8811313 版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[-] 一ROS的 ...

  5. 新手教程之使用Xib自定义UITableViewCell

    新手教程之使用Xib自定义UITableViewCell 前言 首先:什么是UITableView?看图 其次:什么是cell? 然后:为什么要自定cell,UITableView不是自带的有cell ...

  6. MATLAB新手教程

    MATLAB新手教程   .MATLAB的基本知识 1-1.基本运算与函数    在MATLAB下进行基本数学运算,仅仅需将运算式直接打入提示号(>>)之後,并按入Enter键就可以.比如 ...

  7. 【OpenCV十六新手教程】OpenCV角检测Harris角点检测

    本系列文章由@浅墨_毛星云 出品.转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/29356187 作者:毛星云(浅墨) ...

  8. hibernate官方新手教程 (转载)

    hibernate官方新手教程第一部分 - 第一个Hibernate程序 首先我们将创建一个简单的控制台(console-based)Hibernate程序.我们使用内置数据库(in-memory d ...

  9. Groovy新手教程

    Groovy新手教程 kmyhy@126.com  2009-5-13 一.groovy是什么 简单地说,Groovy 是下一代的java语言,跟java一样,它也执行在 JVM 中. 作为跑在JVM ...

随机推荐

  1. requestAnimationFrame 知识点

    与setTimeout相比,requestAnimationFrame最大的优势是由系统来决定回调函数的执行时机.具体一点讲,如果屏幕刷新率是60Hz,那么回调函数就每16.7ms被执行一次,如果刷新 ...

  2. openstack 开启 spice远程连接

    openstack 默认开的远程控制是novnc 这里是用kolla初建的openstack nova_console vi /etc/kolla/globals.yml ... # Valid op ...

  3. 逻辑回归(logic regression)的分类梯度下降

    首先明白一个概念,什么是逻辑回归:所谓回归就是拟合,说明x是连续的:逻辑呢?就是True和False,也就是二分类:逻辑回归即使就是指对于二分类数据的拟合(划分). 那么什么是模型呢?模型其实就是函数 ...

  4. Shell中怎么获取当前日期和时间

    转载自:https://zhidao.baidu.com/question/627912810044012524.html 获得当天的日期 [root@master ~]# date +%Y-%m-% ...

  5. Github访问慢解决办法

    为什么慢?github的CDN被某墙屏了. 绕过dns解析,在本地直接绑定host.打开dns查询工具网站http://tool.chinaz.com/dns 查询域名github.global.ss ...

  6. ecstore-自定义app里增加对应的wap的模板

    注意第二个参数空第三个参数是自定义app名称$this->page('wap/member/recmembers.html','','ecstoreapprcomp2p');

  7. java集合之HashMap源码解析

    Map是java中的一种数据结构,围绕着Map接口,有一系列的实现类如Hashtable.HashMap.LinkedHashMap和TreeMap.而其中HashMap和Hashtable我们平常使 ...

  8. Python关于self用法重点分析

    在介绍Python的self用法之前,先来介绍下Python中的类和实例…… 我们知道,面向对象最重要的概念就是类(class)和实例(instance),类是抽象的模板,比如学生这个抽象的事物,可以 ...

  9. react路由传值

    在上一篇总结了react中路由的基本用法,实现了基本的页面跳转,但这肯定是不够用的,比如说在新闻列表页面,点击某一条新闻,希望页面能跳转到新闻详情页,又该如何实现呢? 首先继续上一篇的项目,添加一个新 ...

  10. 微服务之分布式跟踪系统(springboot+pinpoint)

    这篇文章介绍一下在微服务(springboot开发)的项目中使用pintpoint监控的过程及效果展示. 背景 随着项目微服务的进行,微服务数量逐渐增加,服务间的调用也越来越复杂,我们急切需要一个AP ...