Kibana 汉化相关配置 i18n 及版本问题

89 篇文章 0 订阅
49 篇文章 0 订阅

最终结论

Kibana从6.7.0开始,可以通过修改kibana.yml中的配置项i18n.locale: "zh-CN",然后重启Kibana完成汉化。
NOTE: 是zh-CN而不是zh_CN

因为从这个版本开始,Kibana使用的node模块中多了如下内容(所以最好确认一下有没有这个语言包):
kibana-6.7.0-linux-x86_64/node_modules/x-pack/plugins/translations/translations/zh-CN.js

i18n.locale这个配置,是从6.5.0就有的。(6.5.0之前的版本中,一直是i18n.defaultLocale这个配置项)

以下是我测试的过程,其中有很错误的观点,可以略过不看。

两个不同的配置项和版本的对应问题测试

  • Search
    经查阅,网上有很多种说法,让我对kibana究竟是从哪个版本开始可以汉化的/有i18n.locale这个配置项的有了疑惑。
    在这里插入图片描述
    在这里插入图片描述我现在假定当kibana配置文件中的i18n.defaultLocale在某个版本更新为i18n.locale之后,就可以通过修改配置的方式汉化UI界面。
    那么下一步就是验证。

  • 下载6.0.0~7.0.0版本的Kibana压缩包
    命令行,断点续传下载 wget -c https://artifacts.elastic.co/downloads/kibana/kibana-6.4.3-linux-x86_64.tar.gz 其中-c为continue的意思,版本号6.4.3的值可以替换。
    推荐-c + 睡觉的时候下载(ES官网下载文件很慢)。

wuyujin@ubuntu18:~/Downloads/kibana_tar$ # 查看下载好的kibana压缩包
wuyujin@ubuntu18:~/Downloads/kibana_tar$ ll
total 2.4G
drwxr-xr-x 2 wuyujin wuyujin 4.0K 4月   2 07:16 ./
drwxr-xr-x 4 wuyujin wuyujin 4.0K 4月   2 07:25 ../
-rwxrwxrwx 1 wuyujin wuyujin  63M 3月  10 23:42 kibana-6.1.0-linux-x86_64.tar.gz*
-rwxrwxrwx 1 wuyujin wuyujin  62M 3月   6 07:43 kibana-6.1.1-linux-x86_64.tar.gz*
-rwxrwxrwx 1 wuyujin wuyujin  80M 5月  15  2018 kibana-6.2.0-linux-x86_64.tar.gz*
-rwxrwxrwx 1 wuyujin wuyujin 196M 6月  13  2018 kibana-6.3.0-linux-x86_64.tar.gz*
-rwxrwxrwx 1 wuyujin wuyujin 180M 8月  23  2018 kibana-6.4.0-linux-x86_64.tar.gz*
-rwxrwxrwx 1 wuyujin wuyujin 180M 9月  18  2018 kibana-6.4.1-linux-x86_64.tar.gz*
-rwxrwxrwx 1 wuyujin wuyujin 180M 10月  2  2018 kibana-6.4.2-linux-x86_64.tar.gz*
-rwxrwxrwx 1 wuyujin wuyujin 225M 11月  6  2018 kibana-6.4.3-linux-x86_64.tar.gz*
-rwxrwxrwx 1 wuyujin wuyujin 197M 11月 14  2018 kibana-6.5.0-linux-x86_64.tar.gz*
-rwxrwxrwx 1 wuyujin wuyujin 173M 1月  29  2019 kibana-6.6.0-linux-x86_64.tar.gz*
-rwxrwxrwx 1 wuyujin wuyujin 173M 2月  19  2019 kibana-6.6.1-linux-x86_64.tar.gz*
-rwxrwxrwx 1 wuyujin wuyujin 173M 3月  12  2019 kibana-6.6.2-linux-x86_64.tar.gz*
-rwxrwxrwx 1 wuyujin wuyujin 178M 3月  26  2019 kibana-6.7.0-linux-x86_64.tar.gz*
-rwxrwxrwx 1 wuyujin wuyujin 178M 5月  20  2019 kibana-6.8.0-linux-x86_64.tar.gz*
-rwxrwxrwx 1 wuyujin wuyujin 160M 4月  10  2019 kibana-7.0.0-linux-x86_64.tar.gz*
  • 创建单独的文件夹,用于存放解压后的文件夹 mkdir ../kibana_dir/
  • 遍历所有kibana的压缩包,解压到准备好的文件夹内
for file in `ls`
do
  tar -zxf $file -C ../kibana_dir/
done
  • 进入解压后的目录,遍历各个目录,使用grep查看各个版本的配置
    cd ../kibana_dir/
for file in `ls`
do
  echo -n "$file  "
  grep "i18n" ./$file/config/kibana.yml
done

执行流程:

wuyujin@ubuntu18:~/Downloads/kibana_tar$ cd ../kibana_dir/
wuyujin@ubuntu18:~/Downloads/kibana_dir$ for file in `ls`
> do
>   echo -n "$file  "
>   grep "i18n" ./$file/config/kibana.yml
> done
kibana-6.1.0-linux-x86_64  #i18n.defaultLocale: "en"
kibana-6.1.1-linux-x86_64  #i18n.defaultLocale: "en"
kibana-6.2.0-linux-x86_64  #i18n.defaultLocale: "en"
kibana-6.3.0-linux-x86_64  #i18n.defaultLocale: "en"
kibana-6.4.0-linux-x86_64  #i18n.defaultLocale: "en"
kibana-6.4.1-linux-x86_64  #i18n.defaultLocale: "en"
kibana-6.4.2-linux-x86_64  #i18n.defaultLocale: "en"
kibana-6.4.3-linux-x86_64  #i18n.defaultLocale: "en"
kibana-6.5.0-linux-x86_64  #i18n.locale: "en"
kibana-6.6.0-linux-x86_64  #i18n.locale: "en"
kibana-6.6.1-linux-x86_64  #i18n.locale: "en"
kibana-6.6.2-linux-x86_64  #i18n.locale: "en"
kibana-6.7.0-linux-x86_64  #i18n.locale: "en"
kibana-6.8.0-linux-x86_64  #i18n.locale: "en"
kibana-7.0.0-linux-x86_64  #i18n.locale: "en"
wuyujin@ubuntu18:~/Downloads/kibana_dir$ 

可见:kibana是从6.4.3之后,从6.5.0版本开始,更新了i18n的相关配置项

  • Shell运行截图
    在这里插入图片描述

在这里插入图片描述可以看到,从6.5.0版本开始,kibana的i18n配置项有了更新。

Others

  • EK版本匹配
    要启动某个版本的Kibana,必须保证他能找到对应版本的ElasticSearch。否则Kibana报错。

  • 两种配置项的注释
    我知道i18n的配置在配置文件末尾,所以直接tail

wuyujin@ubuntu18:~/Downloads/kibana_dir$ tail kibana-6.1.0-linux-x86_64/config/kibana.yml 
# and all requests.
#logging.verbose: false

# Set the interval in milliseconds to sample system and process performance
# metrics. Minimum is 100ms. Defaults to 5000.
#ops.interval: 5000

# The default locale. This locale can be used in certain circumstances to substitute any missing
# translations.
#i18n.defaultLocale: "en"
wuyujin@ubuntu18:~/Downloads/kibana_dir$ tail kibana-6.5.0-linux-x86_64/config/kibana.yml 
# Set the value of this setting to true to log all events, including system usage information
# and all requests.
#logging.verbose: false

# Set the interval in milliseconds to sample system and process performance
# metrics. Minimum is 100ms. Defaults to 5000.
#ops.interval: 5000

# Specifies locale to be used for all localizable strings, dates and number formats.
#i18n.locale: "en"
wuyujin@ubuntu18:~/Downloads/kibana_dir$ 
  • Links

https://www.elastic.co/guide/en/kibana/current/i18n-settings-kb.html
https://github.com/elastic/kibana/tree/master/packages/kbn-i18n#localization-files

Error

6.5.0待验证。验证后马上更新。

Fix

5.7.0之后,Kibana自带汉化。

wuyujin@ubuntu18:~/Downloads/kibana_dir$ ll
total 68K
drwxr-xr-x 17 wuyujin wuyujin 4.0K 4月   2 07:30 ./
drwxr-xr-x  5 wuyujin wuyujin 4.0K 4月   2 08:18 ../
drwxr-xr-x 12 wuyujin wuyujin 4.0K 12月 12  2017 kibana-6.1.0-linux-x86_64/
drwxr-xr-x 12 wuyujin wuyujin 4.0K 12月 18  2017 kibana-6.1.1-linux-x86_64/
drwxr-xr-x 12 wuyujin wuyujin 4.0K 2月   2  2018 kibana-6.2.0-linux-x86_64/
drwxr-xr-x 11 wuyujin wuyujin 4.0K 6月  12  2018 kibana-6.3.0-linux-x86_64/
drwxr-xr-x 11 wuyujin wuyujin 4.0K 8月  18  2018 kibana-6.4.0-linux-x86_64/
drwxr-xr-x 11 wuyujin wuyujin 4.0K 9月  14  2018 kibana-6.4.1-linux-x86_64/
drwxr-xr-x 11 wuyujin wuyujin 4.0K 9月  26  2018 kibana-6.4.2-linux-x86_64/
drwxr-xr-x 11 wuyujin wuyujin 4.0K 10月 31  2018 kibana-6.4.3-linux-x86_64/
drwxr-xr-x 11 wuyujin wuyujin 4.0K 11月 10  2018 kibana-6.5.0-linux-x86_64/
drwxr-xr-x 13 wuyujin wuyujin 4.0K 4月   2 07:28 kibana-6.6.0-linux-x86_64/
drwxr-xr-x 13 wuyujin wuyujin 4.0K 4月   2 07:29 kibana-6.6.1-linux-x86_64/
drwxr-xr-x 13 wuyujin wuyujin 4.0K 4月   2 07:29 kibana-6.6.2-linux-x86_64/
drwxr-xr-x 13 wuyujin wuyujin 4.0K 4月   2 07:29 kibana-6.7.0-linux-x86_64/
drwxr-xr-x 13 wuyujin wuyujin 4.0K 4月   2 07:30 kibana-6.8.0-linux-x86_64/
drwxr-xr-x 13 wuyujin wuyujin 4.0K 4月   2 07:30 kibana-7.0.0-linux-x86_64/
wuyujin@ubuntu18:~/Downloads/kibana_dir$ tree kibana-6.7.0-linux-x86_64/node_modules/x-pack/plugins/translations/ -h
kibana-6.7.0-linux-x86_64/node_modules/x-pack/plugins/translations/
├── [ 532]  index.js
└── [4.0K]  translations
    └── [791K]  zh-CN.json

1 directory, 2 files
wuyujin@ubuntu18:~/Downloads/kibana_dir$ tree kibana-6.6.2-linux-x86_64/node_modules/x-pack/plugins/translations/ -h
kibana-6.6.2-linux-x86_64/node_modules/x-pack/plugins/translations/ [error opening dir]

0 directories, 0 files
wuyujin@ubuntu18:~/Downloads/kibana_dir$ ll  kibana-6.6.2-linux-x86_64/node_modules/x-pack/plugins/translations/
ls: cannot access 'kibana-6.6.2-linux-x86_64/node_modules/x-pack/plugins/translations/': No such file or directory
wuyujin@ubuntu18:~/Downloads/kibana_dir$ 
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python中的i18n(国际化)是一种将应用程序适应不同的语言和文化的技术。下面是使用Python i18n的基本步骤: 1. 安装gettext库:在终端中运行命令 `pip install gettext`。 2. 创建一个messages.pot文件:这是一个模板文件,包含应用程序中所有可翻译的字符串。在终端中运行以下命令: ``` xgettext -d messages -o messages.pot your_file.py ``` 其中,`messages`是域的名称,`-o`参数指定输出文件名,`your_file.py`是要翻译的Python文件的名称。 3. 创建语言文件:根据需要创建语言文件。语言文件的名称应该与目标语言相同,并以`.po`为扩展名。例如,对于西班牙语,文件名为`es.po`。 4. 编辑语言文件:使用文本编辑器打开语言文件,并根据需要翻译每个字符串。在文件中,每个翻译字符串都包含在msgid和msgstr标记中。例如: ``` #: your_file.py:10 msgid "Hello, World!" msgstr "¡Hola, mundo!" ``` 5. 生成翻译文件:在终端中运行以下命令,将`.po`文件转换为`.mo`文件: ``` msgfmt -o es.mo es.po ``` 其中,`es.po`是语言文件的名称,`es.mo`是生成的翻译文件的名称。 6. 在Python代码中使用翻译:在Python代码中使用gettext库来加载翻译,并将其应用于需要翻译的字符串。例如: ``` import gettext # 加载翻译 translation = gettext.translation('messages', localedir='locales', languages=['es']) translation.install() # 使用翻译 print(_("Hello, World!")) ``` 其中,`messages`是域的名称,`locales`是包含翻译文件的目录,`es`是目标语言的代码。`_()`函数是gettext库提供的函数,用于翻译字符串。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值