Fortinet white logo
Fortinet white logo

Script Reference Guide

persist_get_current_assigned_server

HTTP:persist(get_current_assigned_server)

Gets the real server currently assigned to this session.

Syntax

HTTP:persist(t);

Arguments

Name Description

t

A table specifies the operation.

Events

Applicable in the following events:

  • POST_PERSIST

  • HTTP_REQUEST (supported since version 7.2.x)

Example

when PERSISTENCE{
        cip = HTTP:client_addr()
    hash_str_cip = sha512_hex(cip)
   
    t={}
    t["operation"] = "save_tbl"
    t["hash_value"] = hash_str_cip
    t["srv_name"] = "pool1-3"
    ret = HTTP:persist(t)
    if ret then
	    debug("hash save table success\n");
	else
	    debug("save table failed\n");
	end
 
    t={}
    t["hash_value"]=hash_str_cip
    ret = HTTP:lookup_tbl(t)
    if ret then 
        debug("hash LOOKUP success\n")
    else
        debug("hash lookup failed\n")
    end
}
when POST_PERSIST{
debug("-----event POST_PERSIST-----\n")

    debug("-----get current assigned server-----\n")
    t={}
    t["operation"]="get_current_assigned_server"
    ret=HTTP:persist(t)
    debug("current assigned server: %s\n",ret)
}
Output:
	Return the real server name which is assigned to current session or False if no server is assigned right now 

Supported Version

FortiADC version 5.4.x and later. In 7.2.x, function extended to HTTP_REQUEST events.

persist_get_current_assigned_server

HTTP:persist(get_current_assigned_server)

Gets the real server currently assigned to this session.

Syntax

HTTP:persist(t);

Arguments

Name Description

t

A table specifies the operation.

Events

Applicable in the following events:

  • POST_PERSIST

  • HTTP_REQUEST (supported since version 7.2.x)

Example

when PERSISTENCE{
        cip = HTTP:client_addr()
    hash_str_cip = sha512_hex(cip)
   
    t={}
    t["operation"] = "save_tbl"
    t["hash_value"] = hash_str_cip
    t["srv_name"] = "pool1-3"
    ret = HTTP:persist(t)
    if ret then
	    debug("hash save table success\n");
	else
	    debug("save table failed\n");
	end
 
    t={}
    t["hash_value"]=hash_str_cip
    ret = HTTP:lookup_tbl(t)
    if ret then 
        debug("hash LOOKUP success\n")
    else
        debug("hash lookup failed\n")
    end
}
when POST_PERSIST{
debug("-----event POST_PERSIST-----\n")

    debug("-----get current assigned server-----\n")
    t={}
    t["operation"]="get_current_assigned_server"
    ret=HTTP:persist(t)
    debug("current assigned server: %s\n",ret)
}
Output:
	Return the real server name which is assigned to current session or False if no server is assigned right now 

Supported Version

FortiADC version 5.4.x and later. In 7.2.x, function extended to HTTP_REQUEST events.