Citrix ADC

虚拟服务器的表达式

SYS.VSERVER("<vserver-name>") 表达式前缀使您能够标识虚拟服务器。您可以使用带有此前缀的以下函数来检索与指定虚拟服务器相关的信息:

  • THROUGHPUT。返回虚拟服务器的吞吐量,单位为 Mbps(每秒兆位)。返回的值是一个无符号的长数字。

    用法: SYS.VSERVER(“vserver”).THROUGHPUT

  • CONNECTIONS。返回虚拟服务器正在管理的连接数。返回的值是一个无符号的长数字。

    用法: SYS.VSERVER(“vserver”).CONNECTIONS

  • STATE。返回虚拟服务器的状态。返回的值为 UP、DOWN 或 OUT_OF_SERVICE。因此,可以将其中一个值作为参数传递给 EQ() 运算符以执行比较,从而生成布尔值 TRUE 或 FALSE。

    用法: SYS.VSERVER(“vserver”).STATE

  • HEALTH。返回指定虚拟服务器处于 UP 状态的服务所占的百分比。返回的值是一个整数。

    用法: SYS.VSERVER(“vserver”).HEALTH

  • RESPTIME。以表示微秒数的整数形式返回响应时间。响应时间是绑定到虚拟服务器的所有服务的平均 TTFB(到第一个字节的时间)。

    用法: SYS.VSERVER(“vserver”).RESPTIME

  • SURGECOUNT。返回虚拟服务器的浪涌队列中的请求数。返回的值是一个整数。

    用法: SYS.VSERVER(“vserver”).SURGECOUNT

示例 1:

如果负载平衡虚拟服务器 LbvServer 上的连接数超过 10000 个,以下重写策略将中止重写处理:

add rewrite policy norewrite_pol sys.vserver("LBvserver").connections.gt(10000) norewrite

示例 2:

以下重写操作会在虚拟服务器 LbvServer 上插入自定义标头 TP,其值为整个:

add rewrite action tp_header insert_http_header TP SYS.VSERVER("LBvserver").THROUGHPUT

示例 3:

以下审核日志消息操作将绑定到虚拟服务器的服务的平均 TTFB 写入 newnslog 日志文件:

add audit messageaction log_vserver_resptime_act INFORMATIONAL "\"NS Response Time to Servers:\" + sys.vserver(\"ssllb\").resptime + \" millisec\"" -logtoNewnslog YES

虚拟服务器的表达式