日志三剑客ELK
新的服务器需要搭建ELK三剑客,就是日志分析的工具,整理下步骤,供以后复习用。
说明下,我这里使用的是logstash从redis里获取日志信息的。所以还需要redis,这里就不做redis的介绍了。
下载对应文件,
Java: http://www.oracle.com/technetwork/java/javase/downloads/index.html
Logstash: https://www.elastic.co/downloads/logstash
Elasticsearch: https://www.elastic.co/downloads/elasticsearch
Kibana: https://www.elastic.co/downloads/kibana
Nssm: https://nssm.cc/download
把文件放在服务器上,我这里是放在E:\Tool下了。

第一步,先运行ElasticSearch(命令行方式),正常。
有个问题是,正常步骤解压出来,命令行可以运行,但是在服务器上一定要做成服务才行,不然服务器重启了,或者是被别人不小心关闭了,就比较尴尬了。
做服务的步骤很简单,这个不需要借助NSSM工具,直接在elasticsearch的bin下,运行命令
elasticsearch-service.bat install


刷新下服务列表,这个服务就已经安装好了。
第二步,运行logstash,(本地使用的管道是连接redis的)这个的运行不想用命令行了,想借助nssm来安装服务,可谁曾想,执行了nssm install logstash,可以弹出浏览框框,但是一点浏览,直接就闪退了。
先怀疑是我的nssm版本有问题,然后想着去官网下载一个新的,官网上2014年的,但是也试试下载吧,别我的文件有损坏,结果下载了被360当成病毒处理了,那么我就觉得,可能是这个需要的权限比较大,改了服务,被360当成木马了。
然后抱着试一试的态度,给这个logstash文件夹的权限开放到最大,再试一次,安装成功了。

到bin文件夹下,有个配置文件logstash_default.conf

这里配置关于读取redis的管道。


然后启动即可。
第三步,启动Kibana,启动成功,(这个做服务就需要使用nssm)


path里有值即可,然后继续填写Details

然后点击安装服务即可

直接启动即可。
手动通过客户端往redis里插入一条数据,结果发现并没有任何log显示,因为索引是空的。奇怪的很。
回过头来看一下,logstash的配置文件

这里配置的是list,那就是说,只能读取redis里的rpush的数据。
那么很简单,在客户端执行以下命令

然后再去看一下索引

这下有了,很简单,加入到索引里,这个就是kibana的配置了,必须加一个索引,才能查看log。

这里的配置,再选择时间戳,然后创建,成功后查看

出现这个说明kibana可以使用了。

然后就可以按照条件查看日志了,完美。
可是这个只是在服务器内访问,如果想要在外网下访问,还需要一些改动,就是kibana的yml文件

把这个server.port改成0.0.0.0就代表允许外网访问(或者说就允许IP访问了),当然了,服务器这个5601端口一定要打开,这个是最基本的。
当使用一段时间以后,发现旧的log用不上了。那就想办法给删了吧,找了一下,在文件夹中没有能找到这些个东西,然后试了下查下elastic应该有提供,果然。

在kibana这个可视化界面中,可以直接执行delete命令即可。
当然了,也可以按照查询条件删除的
参考 https://www.elastic.co/guide/en/elasticsearch/reference/5.2/docs-delete-by-query.html
POST dlog-*/_delete_by_query
{
"query": {
"match": {
"projectName": "OA"
}
}
}
但是删除有个需要注意的地方,物理文件不是直接删除的。只是做个标记先。

日志三剑客ELK的更多相关文章
- docker 容器日志集中 ELK + filebeat
docker 容器日志集中 ELK ELK 基于 ovr 网络下 docker-compose.yaml version: '2' networks: network-test: external: ...
- 【ELK】5.spring boot日志集成ELK,搭建日志系统
阅读前必看: ELK在docker下搭建步骤 spring boot集成es,CRUD操作完整版 ============================================== 本章集成 ...
- 开源实时日志分析ELK
开源实时日志分析ELK 2018-01-04 转自:开源实时日志分析ELK平台部署 日志主要包括系统日志.应用程序日志和安全日志.系统运维和开发人员可以通过日志了解服务器软硬件信息.检查配置过程中的错 ...
- ASP.NET Core分布式日志系统ELK实战演练
一.ELK简介 ELK是Elasticsearch.Logstash和Kibana首字母的缩写.这三者均是开源软件,这三套开源工具组合起来形成了一套强大的集中式日志管理平台. • Elastics ...
- 云计算Docker全面项目实战(Maven+Jenkins、日志管理ELK、WordPress博客镜像)
2013年,云计算领域从此多了一个名词“Docker”.以轻量著称,更好的去解决应用打包和部署.之前我们一直在构建Iaas,但通过Iaas去实现统一功 能还是相当复杂得,并且维护复杂.将特殊性封装到 ...
- Linux日志分析ELK环境搭建
场景:ELK作为一个日志收集和检索系统,感觉功能还是相当的强大的. ELK是啥, 其实是是三个组件的缩写, 分别是elasticsearch, logstash, kibana. ELK平台可以用于实 ...
- 日志收集ELK+kafka相关博客
SpringBoot+kafka+ELK分布式日志收集 使用 logstash + kafka + elasticsearch 实现日志监控 Kibana 安装 与 汉化 windows系统安装运行f ...
- 快速搭建日志系统——ELK STACK
什么是ELK STACK ELK Stack是Elasticserach.Logstash.Kibana三种工具组合而成的一个日志解决方案.ELK可以将我们的系统日志.访问日志.运行日志.错误日志等进 ...
- CTO详细讲解海量日志处理ELK
ELK实时日志分析平台之Elasticsearch简介 Elasticsearch是一个高度灵活的开源全文检索和分析引擎.它能够迅速(几乎是实时地)地存储.查找和分析大规模数据.通常被用在有复杂的搜索 ...
随机推荐
- Java中数据类型转换&基本类型变量和对象型变量
1.Java的数据类型分为三大类 布尔型,字符型和数值型 其中数值型又分为整型和浮点型 2.Java的变量类型 布尔型 boolean 字符型 char 整型 byte,short,int,lo ...
- 网络策略中使用的 VLAN 属性
TechNet 库 Windows Server Windows Server 2008 R2 und Windows Server 2008 按类别提供的 Windows Server 内容 Win ...
- js限制文本框只能输入特定字符
限制只能输入数字 // ---------------------------------------------------------------------- // <summary> ...
- python 学习分享-实战篇类 Fabric 主机管理程序开发
# 类 Fabric 主机管理程序开发: # 1. 运行程序列出主机组或者主机列表 # 2. 选择指定主机或主机组 # 3. 选择让主机或者主机组执行命令或者向其传输文件(上传/下载) # 4. 充分 ...
- Space Shooter 太空射击
1.控制玩家移动 public float speed = 10f; public float xMin = -6.5f; public float xMax = 6.5f; public float ...
- 使用Unity 实现ASP.NET Web API 依赖注入
DI/IoC 的设计前面已经讲过好几次了,简单的一段话说明就是:「目标对象与外部相依的方式仅相依于 interface,而相依 interface 的 instance 透过 constructor ...
- Struts1 多个配置文件的实现
在Struts 1.0中,我们只能在web.xml中为ActionServlet指定一个配置文件,这对于我们这些网上的教学例子来说当然没什么问题,但是在实际的应用开发过程中,可能会有些麻烦.因为许多开 ...
- 【bzoj3325】[Scoi2013]密码 逆模拟Manacher
题目描述 给出一个只包含小写字母的字符串的长度.以每一个字符为中心的最长回文串长度.以及以每两个相邻字符的间隙为中心的最长回文串长度,求满足条件的字典序最小的字符串. 输入 输入由三行组成.第一行仅含 ...
- 动态规划DP的斜率优化 个人浅解 附HDU 3669 Cross the Wall
首先要感谢叉姐的指导Orz 这一类问题的DP方程都有如下形式 dp[i] = w(i) + max/min(a(i)*b(j) + c(j)) ( 0 <= j < i ) 其中,b, c ...
- html li css选中状态切换
思路:点击当前li元素后是用removeClass()删除所有兄弟元素(使用siblings()获取)的class样式,然后使用addClass()为当前li添加class. 具体演示如下: 1.HT ...