在Kibana的visualize中显示Nginx访问日志客户端IP地域分布图

官网介绍:

https://www.elastic.co/guide/en/beats/packetbeat/current/packetbeat-geoip.html

https://www.elastic.co/guide/en/elasticsearch/plugins/5.5/ingest-geoip.html

一、插件及文件配置

1 、首先,Elsaticsearch服务器中需要安装 ingest-geoip 插件:

bin/elasticsearch-plugin install ingest-geoip

Elasticsearch安装插件后,需要重启服务。

2、Kibana中添加地图:

为了显示中文,这里我调用了高德的地图,具体配置如下:

kibana.yml

tilemap.url: "http://webrd02.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=7&x={x}&y={y}&z={z}"
#tilemap.url: "https://tiles.elastic.co/v2/default/{z}/{x}/{y}.png?elastic_tile_service_tos=agree&my_app_name=kibana"
tilemap.options.minZoom: ""
tilemap.options.maxZoom: ""
tilemap.options.attribution: "© [Elastic Maps Service](https://www.elastic.co/elastic-maps-service)"

3、创建一个pipeline,定义client_geoip字段:

在kibana的控制台中(Dev Tools->Console)执行以下命令:

PUT _ingest/pipeline/geoip-info
{
"description": "Add geoip info",
"processors": [
{
"geoip": {
"field": "client_ip",
"target_field": "client_geoip",
"properties": ["location"],
"ignore_failure": true
}
}
]
}

4、修改packetbeat配置文件,加入刚才定义的pipeline:

#vim packetbeat.yml

output.elasticsearch:
hosts: ["192.168.1.23:9200"] #指定输出的elasticsearch
pipeline: geoip-info
index: 'packetbeat-nginx' #创建一个索引,针对本次抓去的日志

注意,本次packetbeat若只抓取nginx的日志,请将其他端口注释掉,只保留80。

修改完后,重启packetbeat。

二、Kibana地图显示

1、创建索引

Kibana->Management->index Patterns->Create Index Patterns

注意,创建的索引名称必须以packetbeat-*、filebeat-*、logstash-*等内置字段开头,否则某些配置无效。

这里创建名称为 packetbeat-nginx 的索引(同packetbeat配置文件中index字段一样)

创建完索引后,回到Discover中,选择新创建的 packetbeat-nginx 就可以看到抓取来的nginx日志了。

2、Kibana中创建Visualize:

Visualize->create new visualization->Coordinate Map

2.1、左侧选择新创建的packetbeat-nginx索引;

2.2、Data配置如下:

2.3、Options配置如下:

以上配置完毕后,点击开始按钮,右侧就可以显示客户端IP分布地图了:

  

ELK应用之二:Kibana显示Nginx中来访客户端IP地域分布的更多相关文章

  1. 在ASP.NET Core中获取客户端IP地址

    随着ASP.NET的发展,有不同的方式从请求中访问客户端IP地址.WebForms和MVC Web应用程序只是访问当前HTTP上下文的请求. var ip = HttpContext.Current. ...

  2. python中通过客户端IP拿到所在城市和当地天气信息—附带项目案例

    熟悉老一代QQ的小伙伴可能都知道,很早以前的QQ,鼠标滑到头像的位置,你的位置和IP会在详情页显示,那么这个是如何做到的呢?下面我们就来玩一玩这个东西 首先,需求分析: 1.拿到客户端IP 2.通过I ...

  3. ELK(ElasticSearch+Logstash+Kibana)配置中的一些坑基于7.6版本

    三个组件都是采用Docker镜像安装,过程简单不做赘述,直接使用Docker官方镜像运行容器即可,注意三个组件版本必须一致. 运行容器时最好将三个组件的核心配置文件与主机做映射,方便直接在主机修改不用 ...

  4. 在Nginx中部署基于IP的虚拟主机

    一.虚拟主机概念 虚拟主机是在网络服务器上划分出一定的磁盘空间供用户放置站点.应用组件等,提供必要的站点功能.数据存放和传输功能.所谓虚拟主机,也叫"网站空间", 就是把一台运行在 ...

  5. nginx中获取真实ip(转)

    原文:http://blog.csdn.net/a936676463/article/details/8961504 server { listen       80; server_name  lo ...

  6. nginx中获取真实ip

    nginx反向代理配置时,一般会添加下面的配置: proxy_set_header Host $host;      proxy_set_header X-Real-IP $remote_addr;  ...

  7. Nginx中获取真实ip地址

    location / { proxy_pass http://localhost; proxy_set_header Host $host; proxy_set_header X-Real-IP $r ...

  8. 第十三章·Kibana深入-使用地图统计客户端IP

    地址库 在ELK中,我们可以使用地址库,来对IP进行分析,对日志进行分析,在ELKstack中只有Logstash可以做到,但是出图,是Kibana来出的,所以我们首先需要下载地址库数据文件,然后对L ...

  9. 再论 ASP.NET 中获取客户端IP地址

    说到IP获取无非是我们常见的以下几种方式,但是具体获取的值具体区别在哪?网上不乏相关文章,说的也是很详细,但是真正使用起来,还有很多不太对的地方.IP在不同系统中,应用相当广泛,常见的日志记录.广告分 ...

随机推荐

  1. Linux每天一个命令:cat

    Linux cat命令 命令:cat cat 命令用于连接文件并打印到标准输出设备上. 使用权限 所有使用者 语法格式 cat [-AbeEnstTuv] [--help] [--version] f ...

  2. zabbix3.4 实现sendEmail邮件报警

    zabbix3.4实现sendEmail邮件报警 转发:https://www.cnblogs.com/pythonal/p/7813948.html sendEmail是一个轻量级,命令行的SMTP ...

  3. MatCap冰冻效果Shader

    MatCap方案 使用说明 制作合适的MatCap贴图 这张图决定冰像不像,网上找.Vray渲个球.ASE或者ShaderForge连,甚至直接手绘,总之只要一张长得像下面的图 注意MatCap图只有 ...

  4. 微软职位内部推荐-Sr. SW Engineer for Privacy Id

    微软近期Open的职位: Job posting title: Senior Software Engineer for Privacy Identification Profession: Engi ...

  5. 实训二(cocos2dx 2.x 打包apk)

    利用cocos2dx编程得到的展现形式之一就是最终的apk,中间的过程只有自己走过才能知道,对于没有章法的初学者,那是相当的头疼, 言归正传,2.x到3.x版本引擎变动很大,除去了CC只是很小一方面, ...

  6. git学习心得(1)

    这次是第一次用git这个平台,还非常不熟练,尤其是在上传代码的步骤上,有好几次都出了问题,多次询问了同学才将代码上传到平台上,git是一个分布式版本控制系统,相对于集中式的来说具有很多优点,但是中文资 ...

  7. Spark 实践——音乐推荐和 Audioscrobbler 数据集

    本文基于<Spark 高级数据分析>第3章 用音乐推荐和Audioscrobbler数据 完整代码见 https://github.com/libaoquan95/aasPractice/ ...

  8. week4

    History:Commercialization and Growth course Explosive Growth of the Internet and Web The Year of the ...

  9. CentOS 修改时区的方法

    study from https://blog.csdn.net/skh2015java/article/details/85007624 第一种 tzselect 输入命令直接选择即可 第二种,直接 ...

  10. [转帖] CentOS 添加新的CA证书到认证地方

    Install the ca-certificates package: yum install ca-certificates Enable the dynamic CA configuration ...