Forum Discussion
4 Replies
- What_Lies_Bene1Cirrostratus
That isn't possible until v11.4 and the introduction of stored procedures I'm afraid. Can you not merge all the rules?
- Cindy_Berry_103Nimbostratus
Okay...thank you for the quick response. I thought that might be the case. Unfortunately, it would be very challenging for me to group the rules together as there are quite a few of them and some are relatively complex. It will be easier for me to just create additional virtual servers in this case.
- What_Lies_Bene1CirrostratusYou're welcome. OK, understood.
- Kevin_StewartEmployee
Understand that multiple iRules assigned to a VIP will essentially "compile together", meaning that the contents of the HTTP_REQUEST event in one iRule will merge with the contents of the HTTP_REQUEST in the other event. This can of course cause problems, so the event priority command can be used to force the event logic to different positions in the merged content. If you simply need to call different iRules based on some condition, you could do VIP targeting and point the traffic flow in the direction of an internal VIP (and its iRule) that then load balances to your application. It isn't a function call in the strictest sense that it returns to where it was called and allows the original rule to continue processing. For that you need sideband calls, procs, or potentially an HTTP::retry mechanism. This method will divert all traffic flow to the internal VIP, which would then process all events south of the event that sent it there.