Forum Discussion

iamsajjad's avatar
iamsajjad
Icon for Cirrus rankCirrus
Jun 27, 2025
Solved

How can I log remaining timeout of session persistence if persistence record is found

As always being challenged F5 is not working as expected and I'm attemp to prove IT'S NOT f5. Customer has asked to setup source address persistence with 60 minutes timeout value. But, saying their session being booted before timeout and F5 is load balancing to different pool member as session sticky is not working. I don't want to run tcpdump for long time. I don't see any documenation on how to log timeout if a persistence record is found. I put together an irule but not showing the timeout.

 

when CLIENT_ACCEPTED {
  if { [persist lookup source_addr [IP::client_addr]] ne "" } {
        # Get the persistence timeout value (in seconds)
        set timeout [lindex [persist lookup source_addr [IP::client_addr]] 1]
        
        log local0. "LB INFO - Client: [IP::remote_addr], Pool: [LB::server], Persist: [persist lookup source_addr [IP::client_addr]] with timeout: $timeout"
    } else {
        log local0. "LB INFO - Client: [IP::remote_addr], Pool: [LB::server], Persist: xxx [persist lookup source_addr [IP::client_addr]]"    
    }
}

 

Seems this line of code is not doing what it claims would do (blame ChatGPT if does not seem right) ;-)

        set timeout [lindex [persist lookup source_addr [IP::client_addr]] 1]

 

Any direction will be appreciated.

  • Hi iamsajjad​ 

    There is no supported way to log the remaining timeout of a persistence record in F5 BIG-IP. The persist lookup command does not return this information. You can only log the presence of a record and its value.

2 Replies

  • f51's avatar
    f51
    Icon for Cumulonimbus rankCumulonimbus

    Hi iamsajjad​ 

    There is no supported way to log the remaining timeout of a persistence record in F5 BIG-IP. The persist lookup command does not return this information. You can only log the presence of a record and its value.