9 string 函数

此处支持的所有功能函数列表包括:

函数列表中未包含其他信息。点击某个函数可查看其完整详细信息。

函数 描述
ascii 值中最左侧字符的 ASCII 码。
bitlength 值的长度(以位为单位)。
bytelength 值的字节长度。
char 将值解释为ASCII码并返回对应的字符。
concat 引用的 监控项值 或常量值连接后产生的 string。
insert 在指定位置开始,将指定字符或空格插入到字符 string 中的 string。
jsonpath 返回 JSONPath 结果。
left 返回值的最左侧字符。
length 值的字符长度。
ltrim 从 string 的开头移除指定字符。
mid 返回从由“start”指定的字符位置开始的N个字符的子字符串。
repeat 重复一个 string。
replace 查找值中的模式并替换为替换内容。
right 返回值的最右边字符。
rtrim 从 string 的末尾移除指定字符。
trim 从 string 的开头和结尾删除指定字符。
xmlxpath 返回 XML XPath 结果。

函数详情

有关函数参数的一些通用说明:

  • 函数参数之间用逗号分隔
  • 参数可以接受表达式
  • string 参数必须用双引号括起;否则可能会被 get 误解
  • 可选函数参数(或参数部分)用 < > 标记表示
ascii(value)

该值最左侧字符的ASCII码。
支持的值类型:string文本日志

参数:

  • value - 要检查的值

例如,类似 'Abc' 的值将返回 '65'(即 'A' 的ASCII码)。

示例:

ascii(last(/主机/key))
bitlength(value)

值的位长度。
支持的值类型:string文本日志integer

参数:

  • value - 要检查的值

示例:

bitlength(last(/主机/key))
bytelength(value)

值的字节长度。
支持的值类型:string文本日志integer

参数:

  • value - 要检查的值

示例:

bytelength(last(/主机/key))
char(value)

将值解释为ASCII码并返回对应的字符。
支持的值类型:integer

参数:

  • value - 要检查的值

该值必须在 0-255 范围内。例如,类似 '65' 的值(被解释为ASCII码)将返回 'A'。

示例:

char(last(/主机/key))
concat(<value1>,<value2>,...)

引用的 监控项值 或常量值拼接后产生的 string。
支持的值类型:string文本日志floatinteger

参数:

  • valueX - 由历史函数返回的值或一个常量值(string、integer 或 float 数字)。必须包含至少两个参数。

例如,将类似“Zab”的值与“bix”(常量 string)连接起来将返回“Zabbix”。

示例:

concat(last(/主机/key),"bix")
       拼接("1 最小值: ",last(/主机/system.cpu.load[all,avg1]),", 15 最小值: ",last(/主机/system.cpu.load[all,avg15]))
insert(value,start,length,replacement)

将指定的字符或空格插入到 string 中的指定位置开始的字符 string 中。
支持的值类型:string文本日志

参数:

  • value - 要检查的值;
  • 开始 - 起始位置;
  • length - 要替换的位置;
  • 替换 - 替换 string

例如,如果将“bb”(起始位置 3,需替换的位置数 2)替换为“b”,则类似“Zabbbix”的值将被替换为“Zabbix”。

示例:

insert(last(/主机/key),3,2,"b")
jsonpath(value,path,<default>)

返回 JSONPath 结果。
支持的值类型:string文本日志

参数:

  • value - 要检查的值;
  • path - 路径(必须用引号括起);
  • default - 可选的备用值,如果 JSONPath query 未返回数据。注意,其他错误将导致失败(例如,“不支持的构造”)。

示例:

jsonpath(last(/主机/proc.get[zabbix_agentd,,,summary]),"$..size")
left(value,count)

返回值中最左侧的字符。
支持的值类型:string, 文本, 日志

参数:

  • value - 要检查的值;
  • count - 要返回的字符数量。

例如,通过指定 3 个最左侧字符,可以从 "Zabbix" 中返回 "Zab"。另请参见 right()

示例:

left(last(/主机/key),3) # 返回三个最左侧字符
length(value)

值的字符长度。
支持的值类型:string文本日志

参数:

  • value - 要检查的值。

示例:

length(last(/主机/key)) #最新值的长度
       length(last(/主机/key,#3)) #第三新值的长度
       length(last(/主机/key,#1:now-1d)) #一天前的最新值的长度
ltrim(value,<chars>)

从string的开头移除指定字符。
支持的值类型:string文本日志

参数:

  • value - 要检查的值;
  • chars(可选)- 指定要移除的字符。

默认情况下会移除开头的空白字符(如果没有指定可选字符)。另请参见:rtrim()trim()

示例:

ltrim(last(/主机/key)) #移除string开头的空白字符
       ltrim(last(/主机/key),"Z") #移除string开头的所有'Z'
       ltrim(last(/主机/key)," Z") #移除string开头的所有空格和'Z'
mid(value,start,length)

从由“start”指定的字符位置开始返回N个字符的子字符串。
支持的值类型:string文本日志

参数:

  • value - 要检查的值;
  • start - 子字符串的起始位置;
  • length - 子字符串要返回的位置数。

例如,如果起始位置是 2,要返回的位置数是 4,则可以从类似“Zabbix”的值中返回“abbi”。

示例:

mid(last(/主机/key),2,4)="abbi"
repeat(value,count)

重复一个 string。
支持的值类型:string文本日志

参数:

  • value - 要检查的值;
  • count - 重复的次数。

示例:

repeat(last(/主机/key),2) #将值重复两次
replace(value,pattern,replacement)

在值中查找模式并替换为替换值。所有匹配的模式都将被替换。
支持的值类型:string文本日志

参数:

  • value - 要检查的值;
  • pattern - 要查找的模式;
  • replacement - 用于替换模式的 string。

示例:

replace(last(/主机/key),"ibb","abb") #将所有 'ibb' 替换为 'abb'

返回值的最右边字符。
支持的值类型:string文本日志

参数:

  • value - 要检查的值;
  • count - 要返回的字符数。

例如,通过指定 3 个最右边字符,可以从 "Zabbix" 中返回 "bix"。另请参见 left()

示例:

right(last(/主机/key),3) #返回三个最右边字符
rtrim(value,<chars>)

从string的末尾移除指定字符。
支持的值类型:string文本日志

参数:

  • value - 要检查的值;
  • chars(可选) - 指定要移除的字符。

默认情况下会移除末尾的空白字符(如果没有指定可选字符)。另请参见:ltrim()trim()

示例:

rtrim(last(/主机/key)) #移除string末尾的空白字符
       rtrim(last(/主机/key),"x") #移除string末尾的所有'x'
       rtrim(last(/主机/key),"x ") #移除string末尾的所有'x'和空格
trim(value,<chars>)

从string的开头和结尾移除指定字符。
支持的值类型:string文本日志

参数:

  • value - 要检查的值;
  • chars(可选) - 指定要移除的字符。

默认情况下会移除两侧的空白字符(如果没有指定可选字符)。另请参见:ltrim()rtrim()

示例:

trim(last(/主机/key)) #移除string开头和结尾的空白字符
       trim(last(/主机/key),"_") #移除string开头和结尾的'_'字符

{HEADER_66213135}

返回 XML XPath 结果。
支持的值类型:string文本日志

参数:

  • value - 要检查的值;
  • path - 路径(必须用引号括起);
  • default - 如果 XML XPath query 返回空节点集时的可选备用值。若结果为空但不是节点集(例如空的 string),则不会返回该值。其他错误情况下将返回失败(例如“表达式无效”)。

示例:

xmlxpath(last(/主机/xml_result),"/response/error/status")

请参见 all supported functions