面向微服务开发时会涉及到多系统的日志跟踪,一旦出现问题过滤起来系统间切换非常麻烦,所以需要采用特定工具将日志统一归类处理,方便查询排查错误,下面将介绍一种开源的工具ELK.

ELK由ElasticSearch、Logstash和Kiabana三个开源工具组成。官方下载地址:https://www.elastic.co/cn/downloads/

准备环境

客户机:win10

Java环境: jdk1.8(必须1.7以上版本!!!)

组件信息:

      logstash: 日志收集过滤工具, 下载 https://artifacts.elastic.co/downloads/logstash/logstash-7.3.0.zip

kibana: 提供搜索、查看和与存储在 Elasticsearch 索引中的数据进行交互的功能,下载 https://artifacts.elastic.co/downloads/kibana/kibana-7.3.0-windows-x86_64.zip

elasticsearch: 开源分布式搜索引擎, 下载 https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.3.0-windows-x86_64.zip

    elasticsearch-head:es插件, 一个界面化的集群操作和管理工具, 下载https://github.com/mobz/elasticsearch-head/releases

第一步

下载组件并解压到本地磁盘(注意不要解压到带有空格的路径,否则后续的安装可能出错),如下图:

第二步

安装jdk1.8,并配置环境变量

第三步

安装logstash,在powershell中执行下面的命令:

logstash.conf: 在logstash文件夹的bin目录里新建logstash.conf配置文件

具体内容如下,

input {

file {

path => "D:/ELK/logs/*"                                                    ## 日志存放目录

start_position => "beginning"

codec => plain { charset => "GBK" }

}

}

filter {

mutate {

add_field => [ "[fields][path]", "%{[path]}"]

add_field => [ "message]", "%{[message]}"]

}

}

output {

elasticsearch {

hosts => ["http://127.0.0.1:9200"]

index => "logstash-%{type}-%{+YYYY.MM.dd}"

template_overwrite => true

}

}

* 可以将运行logstash的命令"logstash.bat -f logstash.conf"保存到run.bat文件,方便下次启动

第四步

安装elasticsearch,为简化操作可以将把elasticsearch-7.3.0/bin路径加入到环境变量,那样就可以在powershell中的任意位置直接输入elasticsearch命令,用默认配置启动(默认传输端口为9300,接受HTTP请求的端口为9200),然后使用浏览器打开http://localhost:9200/,看到下图表示启动安装成功

1. 启用elasticsearch外网访问,修改config/elasticsearch.yml文件内容:

network.host: 0.0.0.0 #不限IP,须避免公网使用

2. 禁用X-Pack机器学习功能,仅限Windows

xpack.ml.enabled: false

3. 注册elasticsearch为windows系统服务,进入bin目录执行如下命令:
elasticsearch-service.bat install

elasticsearch-service.bat 可执行参数 :
install: 安装Elasticsearch服务
remove: 删除已安装的Elasticsearch服务

start: 启动Elasticsearch服务

stop: 停止服务
manager:启动GUI来管理已安装的服务

4. 重启elasticsearch服务

第五步

安装elasticsearch-head,此处需要提前安装nodejs url: https://nodejs.org/en/download/,然后依次执行下面的命令:

npm install -g grunt-cli #编译源码

npm install #安装服务

grunt server #启动服务

第六步

安装Kibana,为简化操作可以将把ibana-7.3.0-windows-x86_64/bin路径加入到环境变量,那样就可以在powershell中的任意位置直接输入Kibana命令启动

注意:连接远程elasticsearch时,需修改文件/config/kibana.yml内容 elasticsearch.hosts

启动成功后,在浏览器中输入:http://localhost:5601/,出现下面的界面

然后我们回到前面第三步中logstash.conf文件中指定的日志目录,新建日志txt文件,文件内容如图:

日志文件保存之后,在浏览器访问Url:http://localhost:5601/app/kibana#/management/kibana/index_pattern,就可以看到可以新建日志索引了

索引创建完成后就可以在下面的链接看到日志数据了,http://localhost:5601/app/kibana#/discover

window10下搭建ELK环境的更多相关文章

  1. 使用Docker快速搭建ELK环境

    今天由于Win系统的笔记本没带回家,其次Docker在非Linux系统下都需要安装额外的软件去镜像才行 所以感觉没有差别,先直接用Mac搭建一遍呢, 本篇部分命令和配置内容为摘抄 Mac下使用Dock ...

  2. Docker-compose搭建ELK环境并同步MS SQL Server数据

    前言 本文作为学习记录,供大家参考:一次使用阿里云(Aliyun)1核2G centos7.5 云主机搭建Docker下的ELK环境,并导入MS SQL Server的商品数据以供Kibana展示的配 ...

  3. Linux 14.04lts 环境下搭建交叉编译环境arm-linux-gcc-4.5.1

    交叉编译工具链是为了编译.链接.处理和调试跨平台体系结构的程序代码,在该环境下编译出嵌入式Linux系统所需要的操作系统.应用程序等,然后再上传到目标板上. 首 先要明确gcc 和arm-linux- ...

  4. Sublime Text 2下搭建Python环境常见错误

    Sublime Text 2下搭建Python环境时,最容易出的错误就是Python环境配置错误,导致build(Ctrl+B)后没有任何反应. 关于Python编程环境的配置,网上很容易搜索到.先默 ...

  5. Android学习——windows下搭建Cygwin环境

    在上一篇博文<Android学习——windows下搭建NDK_r9环境>中,我们详细的讲解了在windows下进行Android NDK开发环境的配置,我们也讲到了在NDk r7以后,我 ...

  6. Android学习——windows下搭建NDK_r9环境

    1. NDK(Native Development Kit) 1.1 NDK简介 Android NDK是一套允许开发人员使用本地代码(如C/C++)进行Android APP功能开发的工具,通过这个 ...

  7. CentOS下搭建LAMP环境详解

    前言:在这里将介绍如何在CentOS下搭建LAMP环境(全部使用源码编译安装),用于web服务器开发. •LAMP: Linux + Apache + PHP + Mysql. •系统: CentOS ...

  8. Linux下搭建PHP环境

    转载于: http://www.uxtribe.com/php/405.html 该站下有系列PHP文章. 在Linux下搭建PHP环境比Windows下要复杂得多.除了安装Apache,PHP等软件 ...

  9. Java学习心得之 Linux下搭建Java环境

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Java学习心得之 Linux下搭建Java环境 1.前言2.JDK安装3.配置环境变量4. ...

随机推荐

  1. MegaPixImage插件代码(new MegaPixImage)

    /** * Mega pixel image rendering library for iOS6 Safari * * Fixes iOS6 Safari's image file renderin ...

  2. python连接 MySQ 数据库

    python 是目前比较流行的语言,所以学习一下 首先需要 安装MySQL-python驱动 下载地址:http://dev.mysql.com/downloads/connector/python/ ...

  3. MYSQL<五>

    -- ########## 01.LIMIT的使用和分页 ########## INSERT INTO studentinfo VALUES(NULL, '刘备', '男', 35), (NULL, ...

  4. pt-config-diff的使用记录

    pt-config-diff的使用记录 pt-config-diff功能:比较差异两套库配置差不多,性能就是不一样,无奈之举,去比对数据库配置是否相同. 运行的MySQL和运行的MySQL做对比 [r ...

  5. 对TypeScript进行研究

    1.npm install -g typescript 在编辑器,将下面的代码输入到greeter.ts文件里: function greeter(person) { return "Hel ...

  6. 7.28Assignment

    1.考试题(7.27) + 2.插头dp 4道题 0/4  before 18:00 3.cdq分治 2道题理解 0/2  before 21:00 4.点分治 2道题 0/2 before 7:00 ...

  7. Mysql安装及用简单用法

    Mysql安装和初始化 初见: Mysql软件 - 服务端软件 - 服务端程序 - 解析指令 - 对文件的操作 - 客户端软件 - 客户端程序 - 发送指令(sql语句) - 解析指令 其他类似软件: ...

  8. 第十一周java学习总结

    目录 第十一周java学习总结 学习内容 学习总结 提交代码截图 代码推送 第十一周java学习总结 学习内容 第13章 Java网络编程 主要内容 URL类 InetAdress类 套接字 UDP数 ...

  9. Mac OS下Flutter环境搭建记录,VS Code开发

    安装Flutter 获取FlutterSDK 终端cd进入SDK安装目录,比如 cd ~/FlutterSDK 由于在国内访问Flutter有时可能会受到限制,Flutter官方为中国开发者搭建了临时 ...

  10. RTMP服务器的延迟,多级边缘不影响延迟,gop为最大因素

    转自:http://blog.chinaunix.net/uid-26000296-id-4932826.html 编码器用FMLE,用手机秒表作为延迟计算. 结论: 1. 影响延迟的三个重要因素:网 ...