Forum Discussion
I always use the HSL::open per iRule. And always have. It's more of a handle than a real opening of a connection. The HSL system will open real connections as necessary and they're pooled so multiple HSL::open handles will utilise fewer connections to the logging servers.
There's a couple of gotchas around that of course.
- There's no guarantee of order of delivery with the messages.
- There's no guarantee two messages send consecutively will actually got across the same pooled 'connection'. WHich means if you have multiple poolmembers in the HSL pool, sending two messages might arrive out of order and on different servers.
- There's no way to limit the number of connections used to a poolmember.
Most issues only crop up on very high rates. I did some work on a POC a few years ago for DB and using 10.2 we ran into most of these features. They're more annoying than anything else, but your logging and reporting infrastructure just needs to be designed around it.
Of course there's now SIDEBAND connections as well. But you've got to be at 11.something for those. And they're not as lightweight and scalable as HSL.
FWIW I use only HSL logging nowadays. Leaves /var/log/ltm available for what it was originally (i.e. logs of members/pools etc up/down etc).
H