Forum Discussion

Chris_14171's avatar
Chris_14171
Icon for Nimbostratus rankNimbostratus
Sep 13, 2011

REQUEST event in iRule is not always running with LB_SELECTED

I am debugging an issue with the correct Pool not always being selected and after putting in debug I am finding that the iRule to select the pool does not always get run. I have the following statement in a iRule that is at the very top of the Virtual server iRule list

 

 

when LB_SELECTED {

 

log local0. "[IP::client_addr]:[LB::server addr]:LB_SELECTED:[HTTP::uri]"

 

}

 

 

And in the same iRule I have the following which does not always run, I see many requests where the LB_SELECTED event is in the log but for the same client, same request, the REQUEST event is not running. Any ideas?

 

 

when HTTP_REQUEST {

 

log local0. "[IP::client_addr]:[LB::server addr]:REQUEST:[HTTP::uri]"

 

}

 

 

when HTTP_REQUEST {

 

log local0. "[IP::client_addr]:[LB::server addr]:REQUEST:[HTTP::uri]"

 

set debuguri [HTTP::uri]

 

if {$debuguri contains "bv/1800"} {

 

} else {

 

log local0. "[IP::client_addr]:[LB::server addr]:[HTTP::uri]"

 

}

 

}

 

 

 

 

 

 

 

 

 

 

2 Replies

  • is this relevant? or not?

     

     

    sol9800: Using an iRule to load balance HTTP requests to multiple pools

     

    http://support.f5.com/kb/en-us/solutions/public/9000/800/sol9800.html
  • I am using a OneConnect Profile with the Server and I do not have a default pool assigned to the virtual server. In my pool select iRule I have a default option in every case so I am always selecting a pool. The strange thing is I always see the LB_Selected event fire even when the HTTP_REQUEST event did not fire and you would think that would have to always fire?