Forum Discussion
Gregory_Gerard_
Nimbostratus
Mar 07, 2005access_log equivalent for a virtual server
Hi,
We have a VS that chooses a pool from the URI which contains the customer (each customer has their own backend servers but access through a common URL scheme so there's only one SSL certificate involved and it works well for us).
https://www.example.com/cust1/foo/bar/baz
https://www.example.com/cust2/foo/bar/baz
However, since all these are going towards many machines on the backend, I'd like to consolidate my logs at the VS level rather than trying to harvest from N backends (especially if the backend was sick, the request had to be routed to another machine mid-flight because of backend problems, etc.).
Anyone have a performant recipe for this? I'm currently using a log statement at the top of my iRule and putting the data into local3.info. Can this be done better?
I haven't found a logging feature for virtual servers but would love to see a future release have such a thing since F5 can make this part of request processing and faster than Tcl script.
thanks,
greg
2 Replies
- unRuleY_95363Historic F5 AccountNo, currently the log statement is probably your best bet.
We will consider your request for adding a logging capability on the virtual, but since that does have the ability to produce copious amounts of output, we would be very leary of doing that.
We are also contemplating adding the ability to log directly from a rule to another host, bypassing the local host's syslog. This would improve efficiency somewhat as it wouldn't involve extra configuration or an extra hop through the host OS. - Gregory_Gerard_
Nimbostratus
Thanks for the response. Both work for me. Since I'm already using a syslog that dumps to disk, both are the same to me, too.
The advantage to direct disk support would be the common log formats out there and the harvesting tools built up around those formats.
I'd imagine that if you made this part of the core traffic engine, the logging operations would not be synchronous so mostly the issue would be how much memory you could spare to buffer the logging statements until they could be sent to disk or to a networked syslog.
If you made the option at the VS level, I'd ask for the ability to hold off new connections until the log is flushed or slow the connections down so the client can't send new requests as quickly. Things would be fine in a bursty scenario because the buffer might fill but would quickly fall. Sustained throughput would be problem, though. In my use cases, I require absolute logging, even at the expense of not accepting new connections as quickly. Other sites might like to get content traffic through at the expense of logging.
Help guide the future of your DevCentral Community!
What tools do you use to collaborate? (1min - anonymous)Recent Discussions
Related Content
DevCentral Quicklinks
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com
Discover DevCentral Connects