elk-(七)
最终架构确定为 logs--->blieb--->redis/kafka--->logstash--->es--->kibana
注意: geoip下载地址:
- wget http://geolite.maxmind.com/download/geoip/database/GeoLite2-City.tar.gz
filebeat 配置文件
filebeat-nginx
- filebeat.prospectors:
- - type: log
- paths:
- - /usr/local/nginx/logs/access.log #nginx路径
- # tags: ["access"]
- fields:
- app: www #所属于的项目
- type: nginx-access
- fields_under_root: true #目录制顶
- - type: log
- paths:
- - /usr/local/nginx/logs/error.log
- # ags: ["error"]
- fields:
- app: www
- type: nginx-error
- fields_under_root: true
- output.redis: #输入的redis
- hosts: ["192.168.0.215"] #ip 密码 key 数据库 数据类型
- password: ""
- key: "filebeat"
- db: 0
- datatype: list
filebeat-tomcat
- filebeat.prospectors:
- - type: log
- paths:
- - /usr/local/tomcat/logs/catalina.out
- # tags: ["tomcat"]
- fields:
- app: www
- type: tomcat-catalina
- fields_under_root: true
- multiline:
- pattern: '^\[' #自定义正则
- negate: true
- match: after
- output.redis:
- hosts: ["192.168.0.215"]
- password: ""
- key: "filebeat"
- db: 0
- datatype: list
nginx-json格式化
- log_format json '{ "@timestamp": "$time_iso8601", '
- '"remote_addr": "$remote_addr", '
- '"remote_user": "$remote_user", '
- '"body_bytes_sent": "$body_bytes_sent", '
- '"request_time": "$request_time", '
- '"status": "$status", '
- '"request_uri": "$request_uri", '
- '"request_method": "$request_method", '
- '"http_referrer": "$http_referer", '
- '"http_x_forwarded_for": "$http_x_forwarded_for", '
- '"http_user_agent": "$http_user_agent"}';
logstash配置文件
logstash-to-es-nginxjson.com (nginx json格式化日志)
- input { #进入的类型
- redis {
- host => "192.168.0.215"
- port => 6379
- password => ""
- db => ""
- data_type => "list"
- key => "filebeat"
- }
- }
- filter {
- if [app] == "www" { #判断项目
- if [type] == "nginx-access" { #判断类型
- json {
- source => "message"
- remove_field => ["message"]
- }
- geoip {
- source => "remote_addr"
- target => "geoip"
- database => "/opt/GeoLite2-City.mmdb" #geoip 数据库地址 可以自定义
- add_field => ["[geoip][coordinates]", "%{[geoip][longitude]}"]
- add_field => ["[geoip][coordinates]", "%{[geoip][latitude]}"]
- }
- mutate {
- convert => ["[geoip][coordinates]", "float"]
- }
- }
- }
- }
- output {
- elasticsearch {
- hosts => ["http://192.168.0.212:9200","http://192.168.0.213:9200","http://192.168.0.214:9200"] #es集群
- index => "logstash-%{type}-%{+YYYY.MM.dd}"
- }
- stdout{codec => rubydebug }
- }
logstash-to-es-custom.conf 自定义格式化
- input {
- redis {
- host => "192.168.0.215"
- port => 6379
- password => ""
- db => ""
- data_type => "list"
- key => "filebeat"
- }
- }
- filter {
- if [app] == "www" {
- if [type] == "nginx-access" {
- grok {
- match => {
- "message" => "%{IPV4:remote_addr} - (%{USERNAME:remote_user}|-) \[%{HTTPDATE:time_local}\] \"%{WORD:request_method} %{URIPATHPARAM:request_uri} HTTP/%{NUMBER:http_protocol}\" %{NUMBER:http_status} %{NUMBER:body_bytes_sent} \"%{GREEDYDATA:http_referer}\" \"%{GREEDYDATA:http_user_agent}\" \"(%{IPV4:http_x_forwarded_for}|-)\""
- } #自定义格式化
- overwrite => ["message"]
- }
- geoip {
- source => "remote_addr"
- target => "geoip"
- database => "/opt/GeoLite2-City.mmdb"
- add_field => ["[geoip][coordinates]", "%{[geoip][longitude]}"]
- add_field => ["[geoip][coordinates]", "%{[geoip][latitude]}"]
- }
- date {
- locale => "en"
- match => ["time_local", "dd/MMM/yyyy:HH:mm:ss Z"]
- }
- mutate {
- convert => ["[geoip][coordinates]", "float"]
- }
- }
- }
- }
- output {
- elasticsearch {
- hosts => ["http://192.168.0.212:9200","http://192.168.0.213:9200","http://192.168.0.214:9200"]
- index => "logstash-%{type}-%{+YYYY.MM.dd}"
- }
- stdout{codec => rubydebug }
- }
elk-(七)的更多相关文章
- SpringBoot进阶教程(七十四)整合ELK
在上一篇文章<SpringBoot进阶教程(七十三)整合elasticsearch >,已经详细介绍了关于elasticsearch的安装与使用,现在主要来看看关于ELK的定义.安装及使用 ...
- ELK系列七:Elasticsearch的集群配置和监控以及在部署ELK中踩的坑
1.基本下载安装 #按照ELK系列一博客安装启动即可,没有大坑,注意一下权限即可 chmod -R 777 ./elasticsearch #此外没有java的,注意安装下JDK,我这次部署的环境是C ...
- 中小型研发团队架构实践七:集中式日志ELK
一.集中式日志 日志可分为系统日志.应用日志以及业务日志,系统日志给运维人员使用,应用日志给研发人员使用,业务日志给业务操作人员使用.我们这里主要讲解应用日志,通过应用日志来了解应用的信息和状态,以及 ...
- Spring Cloud Sleuth+ZipKin+ELK服务链路追踪(七)
序言 sleuth是spring cloud的分布式跟踪工具,主要记录链路调用数据,本身只支持内存存储,在业务量大的场景下,为拉提升系统性能也可通过http传输数据,也可换做rabbit或者kafka ...
- 日志分析工具ELK配置详解
日志分析工具ELK配置详解 一.ELK介绍 1.1 elasticsearch 1.1.1 elasticsearch介绍 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分 ...
- ELK Packetbeat 部署指南(15th)
原文链接:http://www.ttlsa.com/elk/elk-packetbeat-deployment-guide/ Packetbeat 是一个实时网络数据包分析工具,与elasticsea ...
- ELK 之二:ElasticSearch 和Logstash高级使用
一:文档 官方文档地址:1.x版本和2.x版本 https://www.elastic.co/guide/en/elasticsearch/guide/index.html 硬件要求: 1.内存,官方 ...
- 云计算Docker全面项目实战(Maven+Jenkins、日志管理ELK、WordPress博客镜像)
2013年,云计算领域从此多了一个名词“Docker”.以轻量著称,更好的去解决应用打包和部署.之前我们一直在构建Iaas,但通过Iaas去实现统一功 能还是相当复杂得,并且维护复杂.将特殊性封装到 ...
- ELK日志管理搭建
目录: 一.介绍 二.安装JDK 三.安装Elasticsearch 四.安装Kibana 五.安装Nginx 六.安装Logstash 七.安装Logstash-forwarder 八.测试 系统环 ...
- [原创]ubuntu14.04部署ELK+redis日志分析系统
ubuntu14.04部署ELK+redis日志分析系统 [环境] host1:172.17.0.4 搭建ELK+redis服务 host2:172.17.0.3 搭建logstash+nginx服务 ...
随机推荐
- springboot 注解整理
项目用到的注解作用: bean的分类标识@Service: 注解在类上,表示这是一个业务层bean@Controller:注解在类上,表示这是一个控制层bean@Repository: 注解在类上,表 ...
- Github超棒资源汇总
Awesome List 中文资源大全 经典编程书籍大全 免费的编程中文书籍索引 awesome-awesomeness-zh_CN https://github.com/jnv/lists awes ...
- Linux中查看文件夹占用磁盘大小
一.命令 ./ du -h ./ 查看当前目录占用空间 二.样例
- 基于git命令的代码统计方法
基于git命令的代码统计方法 没什么好说的,基于git log命令,使用前提是安装了git ...... .统计所有人代码量 统计所有人代码增删量,拷贝如下命令,直接在git bash等终端,git项 ...
- 安装rcssmin方法
#安装rcssmin方法'''pip install wheelpip install rcssmin --install-option="--without-c-extensions&qu ...
- CentOS7 限制SSH密码尝试次数
编辑配置文件: vi /etc/pam.d/sshd 在文末添加内容: auth required pam_tally2.so deny= unlock_time= 代表失败5次,禁止访问600秒 保 ...
- vue:资源小记
github: https://github.com/keenleung/vue-tutorials 过滤器: https://segmentfault.com/a/1190000005027001 ...
- vs2017 打开附带的localdb v13
查看自己本机装了哪些版本的localdb 打开数据库资源管理器 添加数据库连接 选择要连接的localdb版本,这里选择的是v13版本 添加数据库 新建一个test数据库 ...
- 分析轮子(四)- 我也玩一把 Serializable.java
前言:在写 分析轮子(一)-ArrayList.java 的时候曾经下过一个结论 “实现Serializable接口,表示ArrayList是可序列化的”,这个结论是以往学习的经验所得,并且平时在编程 ...
- asp.net中WebResponse 跨域访问示例
前两天,一个朋友让我帮他写这样一个程序:在asp.net里面访问asp的页面,把数据提交对方的数据库后,根据返回的值(返回值为:OK或ERROR),如果为OK再把填入本地数据库.当时,想当然,觉得很简 ...