博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
zabbix修改之中文主机名
阅读量:6825 次
发布时间:2019-06-26

本文共 901 字,大约阅读时间需要 3 分钟。

让zabbix主机名支持中文,如下图:

让触发器表达式也支持中文:

实现步骤:

假如zabbix web目录位置在/var/www/zabbix,定义zabbix目录

ZABBIX_PATH=/var/www/zabbix

一、

在$ZABBIX_PATH/include/defines.inc.php文件中修改943行(zabbix-2.2.3),加入中文字符支持,原始正则:

1
define(
'ZBX_PREG_INTERNAL_NAMES'
'([0-9a-zA-Z_\. \-]+)'
);

修改为:

1
2
// \x80-\xff:匹配用GBK (GB2312/GB18030)编码的所有汉字和标点符号
define(
'ZBX_PREG_INTERNAL_NAMES'
'([0-9a-zA-Z_\. \-\x{80}-\x{ff}]+)'
);
/* !!! Don't forget sync code with C !!! */

修改后,主机名和监控项名都可以输入中文了。

二、

在$ZABBIX_PATH/include/classes/parsers/CTriggerExpression.php文件中修改808行(zabbix-2.2.3),使触发器表达式支持中文:

1
2
3
4
5
6
7
8
9
        
private 
function 
isHostChar(
$c
) {
                
$cc
=ord(
$c
);
                
if 
((
$c 
>= 
'a' 
&& 
$c 
<= 
'z'
) || (
$c 
>= 
'A' 
&& 
$c 
<= 
'Z'
) || (
$c 
>= 
'0' 
&& 
$c 
<= 
'9'
)
                                
|| 
$c 
== 
'.' 
|| 
$c 
== 
' ' 
|| 
$c 
== 
'_' 
|| 
$c 
== 
'-' 
|| 
$cc 
> 127) {
                        
return 
true;
                
}
 
                
return 
false;
        
}

原文链接:

本文在原作者的基础上做了补充。

本文转自 张斌_青岛 51CTO博客,原文链接:http://blog.51cto.com/qicheng0211/1434451

转载地址:http://tdgzl.baihongyu.com/

你可能感兴趣的文章
聊聊springcloud的serviceRegistryEndpoint
查看>>
蓝鸥零基础学习HTML5第九讲 兼容性七
查看>>
跨交换机实现VLAN
查看>>
XML - JAXP技术 - DOM解析
查看>>
数据操作与查询语句
查看>>
selenium webdriver (11) -- 截图
查看>>
sublime插件安装
查看>>
网络配置多会话实验
查看>>
如何挑选适合自己的HTML5视频课程
查看>>
windows提权
查看>>
苹果Siri再新增服务内容 航班查询、餐点外送和血糖监控
查看>>
学习笔记
查看>>
远程协助,TeamViewer之外的另一种选择
查看>>
Centos 6.5 部署 LNMP
查看>>
网安天目
查看>>
rsync远程同步及rsync+inotify实时同步
查看>>
Redis分布式锁的正确实现方式(Java版)
查看>>
Linux20180427
查看>>
linux系统配置及服务管理第一章系统部署
查看>>
SQL语句优化:show参数
查看>>