Forum Discussion

Rabbit23_116296's avatar
Rabbit23_116296
Icon for Nimbostratus rankNimbostratus
Jan 19, 2016

pulling existing APM session information via iRule

Is there any way to interrogate or lookup the APM session table in an iRule?

 

I'd like to do something within a non-APM or dummy APM enabled virtual which is a simple lookup to see if there is an allowed session already for that IP. If so, then I can direct traffic to a pool. If not, I can drop the connection on the transport layer.

 

1 Reply

  • Have you looked at using ACCESS::session? Given a session id, you can look up session existence or session variables.

     

    Given a session id (I think the full session id (MRHSession cookie value), not just the last 8 (LastMRH_Session cookie value)), you can perform a lookup.

     

    In order to do this, you would need the session ID and a VIP that has an access policy associated (so a dummy access policy could probably be used. Then you could use ACCESS::disable to disable APM on the VIP if you wanted to send the request somewhere without worrying about the APM. In my usage, if you don't have a cookie that contains the session id, then passing through a query parameter or header would be and ideal choice (IMHO).

     

    Sorry I don't have an example iRule to share, but I hope this make get you pointed in the right direction.