Forum Discussion

Juha__Ranta_106's avatar
Juha__Ranta_106
Icon for Nimbostratus rankNimbostratus
Apr 04, 2005

iRule documentation!?

Where is the COMPLETE listing of version 9.0 iRule functions?

 

 

I need to know :

 

 

- all the possible iRule functions

 

 

- all possible restrictions

 

(in which events these functions can / cannot be used).

 

 

- magic variables (?if there are any?)

 

(eg. what is the currently selected pool/node)

 

 

------

 

 

eg.

 

 

i) Is there some function that can be used to check if specific

 

node is up?

 

 

I've seen function 'active_members' in some iRule9.x forum posts --

 

is there similar function for checking status of a single node?

 

(node:port) pair?

 

 

ii) I also need functions like [LB::server pool]

 

(i picked this up from some other forum post)

 

 

 

-----

 

 

None of those functions mentioned above are documented here !? why not?

 

 

http://tech.f5.com/home/bigip-next/manuals/bigip9_0/bigip9_0config/ltm_rules.html

 

 

---

 

 

If there is no such documentation please write one ASAP!

 

 

 

  • drteeth_127330's avatar
    drteeth_127330
    Historic F5 Account
    I'm afraid there is no such documentation at this time. We are working to produce a more complete iRules reference. However, several of the commands you have seen described on this forum are undocumented. These are generally commands that developers have implemented and unit tested, but they were added too late to be included in an official release. It is usually our intention to add them to the next release, but sometimes these things fall through the cracks.

     

     

    I will try to answer some of your specific questions.

     

    1) There is currently no way to get the status of a single node or pool member from an iRule. This is a little more difficult than it sounds since there are a lot of things that would make a pool member ineligible for an LB pick. It could be disabled, down, over its connection limit, or have a zero ratio.

     

     

    2) LB::server pool returns the currently selected pool. Other subcommands include name, addr, port, priority, and ratio. They are fairly self explanatory; however, name returns a list that includes the pool, address, and port.

     

     

    Hope this helps...