使用Docker快速部署ELK分析Nginx日志实践(二)

本文涉及的产品
应用实时监控服务ARMS - 应用监控,每月50GB免费额度
日志服务 SLS,月写入数据量 50GB 1个月
简介:

Kibana汉化使用中文界面实践

一、背景

笔者在上一篇文章使用Docker快速部署ELK分析Nginx日志实践当中有提到如何快速搭建ELK分析Nginx日志,但是这只是第一步,后面还有很多仪表盘需要配置,而对于大部分人来说,英文并不是那么好,但Kibana都是英文界面,这就阻碍了笔者熟悉Kibana的一些操作;

所以笔者思考能不能将其汉化,在搜索引擎中找到了一些文章,发现汉化相对来说成本还算比较低,因此进行了一番实践,整个操作流程即便是将前人的汉化包拿过来使用,但使用的过程汉化包的作者并没有过多的讲解,本文主要是讲解如何使用汉化包以及操作过程的记录。

笔者上一篇文章使用Docker快速部署ELK分析Nginx日志实践URL地址:https://segmentfault.com/a/1190000016144694

二、操作概述

  1. 汉化包下载
  2. 运行环境安装
  3. 汉化效果演示

三、汉化包下载

笔者所使用的汉化包项目名称为Kibana_Hanization,在Github上进行了开源,URL地址如下

https://github.com/anbai-inc/Kibana_Hanization

在上一篇文章当中笔者已经将/Users/song/dockerFile/挂载在容器的/data当中,因此可以直接在宿主机中通过git拉取汉化包,然后去容器里面运行它,参考命令如下

cd /Users/song/dockerFile/ && git clone https://github.com/anbai-inc/Kibana_Hanization.git

四、运行环境安装

安装汉化包,需要完成三个步骤,首先需要有执行汉化包里面工具的Python2.7环境,然后需要找到Kibana的安装目录,最后才能执行安装,具体操作如下

4.1 安装Python2.7

笔者直接运行汉化包的时候发现此汉化工具依赖于Python2.7,而ELK中默认安装的是Python3,因此笔者需要先安装Python2.7的运行环境,操作如下

首先需要拉取Python仓库地址

apt update

然后执行安装,参考命令如下

apt install python2.7

4.2 查找安装位置

安装好Python的运行环境之后,笔者还需要找到kibana的安装位置,参考命令如下所示

find / -iname kibana

命令执行后返回的结果

/opt/logstash/x-pack/modules/azure/configuration/kibana
/opt/logstash/x-pack/modules/arcsight/configuration/kibana
/opt/logstash/modules/netflow/configuration/kibana
/opt/logstash/modules/fb_apache/configuration/kibana
/opt/kibana
/opt/kibana/src/core_plugins/kibana
/opt/kibana/node_modules/x-pack/plugins/ml/server/models/data_recognizer/modules/apache2/kibana
/opt/kibana/node_modules/x-pack/plugins/ml/server/models/data_recognizer/modules/nginx/kibana
/opt/kibana/node_modules/x-pack/plugins/monitoring/server/lib/kibana
/opt/kibana/node_modules/x-pack/plugins/monitoring/server/lib/metrics/kibana
/opt/kibana/node_modules/x-pack/plugins/monitoring/server/routes/api/v1/kibana
/opt/kibana/node_modules/x-pack/plugins/monitoring/public/views/kibana
/opt/kibana/node_modules/x-pack/plugins/monitoring/public/components/kibana
/opt/kibana/node_modules/x-pack/plugins/monitoring/public/directives/kibana
/opt/kibana/node_modules/@kbn/pm/src/utils/__fixtures__/kibana
/opt/kibana/bin/kibana
/etc/logrotate.d/kibana
/etc/init.d/kibana

根据返回结果和以往的经验,大致猜测出安装位置在/opt/kibana下,在得到安装目录之后,现在笔者需要进入此前在宿主机通过git下载的汉化包目录,因为运行elk容器的时候已经将宿主机目录挂载进去,因此容器中可以进入,参考吗命令如下

cd /data/Kibana_Hanization

4.2 汉化包安装

执行汉化命令

python2.7 main.py /opt/kibana/

返回结果

文件[/opt/kibana/optimize/bundles/kibana.bundle.js]已翻译。
文件[/opt/kibana/optimize/bundles/commons.bundle.js]已翻译。
文件[/opt/kibana/optimize/bundles/login.bundle.js]已翻译。
文件[/opt/kibana/optimize/bundles/ml.bundle.js]已翻译。
文件[/opt/kibana/optimize/bundles/monitoring.bundle.js]已翻译。
文件[/opt/kibana/optimize/bundles/timelion.bundle.js]已翻译。
文件[/opt/kibana/optimize/bundles/vendors.bundle.js]已翻译。
文件[/opt/kibana/optimize/bundles/apm.bundle.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/ui_setting_defaults.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/index.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/translations/en.json]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/server/tutorials/docker_metrics/index.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/server/tutorials/netflow/elastic_cloud.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/server/tutorials/netflow/on_prem_elastic_cloud.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/server/tutorials/netflow/on_prem.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/server/tutorials/netflow/common_instructions.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/server/tutorials/kubernetes_metrics/index.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/server/tutorials/apache_metrics/index.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/server/tutorials/redis_metrics/index.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/server/tutorials/apm/apm_server_instructions.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/server/tutorials/apm/apm_client_instructions.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/server/tutorials/nginx_metrics/index.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/server/tutorials/system_metrics/index.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/server/tutorials/system_logs/index.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/server/tutorials/apache_logs/index.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/server/tutorials/nginx_logs/index.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/server/tutorials/redis_logs/index.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/server/tutorials/mysql_metrics/index.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/server/tutorials/mysql_logs/index.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/common/tutorials/filebeat_instructions.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/common/tutorials/metricbeat_instructions.js]已翻译。
文件[/opt/kibana/src/core_plugins/kibana/public/dashboard/index.js]已翻译。
文件[/opt/kibana/src/core_plugins/timelion/index.js]已翻译。
文件[/opt/kibana/src/core_plugins/kbn_vislib_vis_types/public/line.js]已翻译。
文件[/opt/kibana/src/core_plugins/kbn_vislib_vis_types/public/area.js]已翻译。
文件[/opt/kibana/src/core_plugins/kbn_vislib_vis_types/public/heatmap.js]已翻译。
文件[/opt/kibana/src/core_plugins/kbn_vislib_vis_types/public/horizontal_bar.js]已翻译。
文件[/opt/kibana/src/core_plugins/kbn_vislib_vis_types/public/histogram.js]已翻译。
文件[/opt/kibana/src/ui/public/chrome/directives/global_nav/global_nav.js]已翻译。

恭喜,Kibana汉化完成!

笔者执行这条命令时间大约在10秒钟左右。

五、汉化效果演示

经过上一步操作,已经完成了汉化包的安装,现在笔者进入Kibana的主页来验证汉化的效果,Kibana主页的URL地址如下

http://localhost:5601/app/kibana#/home?_g=()

但在实际汉化后发现并没有完全汉化,笔者所使用的ELK版本为6.4.0,效果如下图所示

image

而汉化包中介绍的汉化效果效果却如下图所示

image

笔者猜测可能是自己使用的ELK版本比较新,而汉化包还没用跟上节奏所导致,不过效果已经很棒了;笔者接着又打开了几个页面,发现汉化效果大都在80%左右,视图创建URL地址如下

http://localhost:5601/app/kibana#/visualize/new?_g=()

在浏览器中打开视图创建页面后,展现汉化如下图所示

image


作者:汤青松

微信:songboy8888

日期:2018-08-31

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
3天前
|
消息中间件 Kafka 开发工具
rsyslog+ELK收集Cisco日志
rsyslog+ELK收集Cisco日志
|
8天前
|
应用服务中间件 Linux nginx
在Linux中,如何统计ip访问情况?分析 nginx 访问日志?如何找出访问页面数量在前十位的ip?
在Linux中,如何统计ip访问情况?分析 nginx 访问日志?如何找出访问页面数量在前十位的ip?
|
11天前
|
存储 Kubernetes 监控
在Docker中,很多应用容器都是默认后台运行的,怎么查看它们的输出和日志信息?
在Docker中,很多应用容器都是默认后台运行的,怎么查看它们的输出和日志信息?
|
2天前
|
存储 消息中间件 监控
Java日志详解:日志级别,优先级、配置文件、常见日志管理系统ELK、日志收集分析
Java日志详解:日志级别,优先级、配置文件、常见日志管理系统、日志收集分析。日志级别从小到大的关系(优先级从低到高): ALL < TRACE < DEBUG < INFO < WARN < ERROR < FATAL < OFF 低级别的会输出高级别的信息,高级别的不会输出低级别的信息
|
10天前
|
存储 数据可视化 Linux
在Linux中,如何使用ELK进行日志管理和分析?
在Linux中,如何使用ELK进行日志管理和分析?
|
15天前
|
数据可视化 Java API
如何在项目中快速引入Logback日志并搭配ELK使用
如何在项目中快速引入Logback日志并搭配ELK使用
|
应用服务中间件 Linux nginx
|
13天前
|
应用服务中间件 nginx Docker
本地通过域名访问虚拟机上nginx的服务、搭建域名访问环境一(反向代理配置)
这篇文章介绍了如何通过域名在本地访问虚拟机上的nginx服务,包括创建nginx容器、修改配置文件、修改本地host文件以及进行访问测试的详细步骤。文章提供了具体的Docker命令来创建并配置nginx容器,展示了配置文件的修改示例,说明了如何在本地系统的hosts文件中添加虚拟机IP和自定义域名,以及如何通过浏览器进行测试访问。
本地通过域名访问虚拟机上nginx的服务、搭建域名访问环境一(反向代理配置)
下一篇
云函数