Tomcat id in AccessLogValve and Spread
I'm trying to consolidate the access logs for a whole bunch of Tomcats using Spread (www.spread.org) like I do with Apache. The easiest way to do this seems to be to patch org.apache.catalina.valves.AccessLogValve to use Spread and I've done that trivially. However, now that I am collecting access logs from multiple Tomcats in a single location, I need to be able to tell which Tomcat a log line came from. Since the AccessLogValve comes from inside a Host/ stanza, I can use %v to somewhat figure out where it came from, but I run into problems when I have multiple Tomcats load-balanced by mod_jk serving the same virtual hosts. The easiest way then to tell where it came from seems to be to use the jvmRouteId -- any other, better, more easily obtained, unique identifier I can use? Thanks, Adi -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
RE: Tomcat id in AccessLogValve and Spread
Howdy, I'm trying to consolidate the access logs for a whole bunch of Tomcats using Spread (www.spread.org) like I do with Apache. The easiest way to do this seems to be to patch org.apache.catalina.valves.AccessLogValve to use Spread and I've done that trivially. Perhaps it would be better to subclass AccessLogValve to add this functionality? Then you could contribute your class to the tomcat project and users of the normal AccessLogValve wouldn't need to know anything (or depend on) Spread. somewhat figure out where it came from, but I run into problems when I have multiple Tomcats load-balanced by mod_jk serving the same virtual hosts. The easiest way then to tell where it came from seems to be to use the jvmRouteId any other, better, more easily obtained, unique identifier I can use? The combination of host name and jvmRouteId is decent. Would %A (local IP address) in the access log work for you? I'm assuming your load-balanced servers have different IP addresses even if they share the virtual hosts. Yoav Shapira Millennium ChemInformatics -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: Tomcat id in AccessLogValve and Spread
I would also like to add functionality to the AccessLogValve, and a subclass would be fine for my purposes, but currently, org.apache.catalina.valves.AccessLogValve is declared final, presumably for performance reasons. Is there any chance of changing that? Mike Shapira, Yoav wrote: Howdy, I'm trying to consolidate the access logs for a whole bunch of Tomcats using Spread (www.spread.org) like I do with Apache. The easiest way to do this seems to be to patch org.apache.catalina.valves.AccessLogValve to use Spread and I've done that trivially. Perhaps it would be better to subclass AccessLogValve to add this functionality? Then you could contribute your class to the tomcat project and users of the normal AccessLogValve wouldn't need to know anything (or depend on) Spread. somewhat figure out where it came from, but I run into problems when I have multiple Tomcats load-balanced by mod_jk serving the same virtual hosts. The easiest way then to tell where it came from seems to be to use the jvmRouteId any other, better, more easily obtained, unique identifier I can use? The combination of host name and jvmRouteId is decent. Would %A (local IP address) in the access log work for you? I'm assuming your load-balanced servers have different IP addresses even if they share the virtual hosts. Yoav Shapira Millennium ChemInformatics -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: Tomcat id in AccessLogValve and Spread
You can declare your own custom pattern in AccessLogValve in server.xml. Then you can always hardcode your id into the pattern. -Tim Aditya wrote: I'm trying to consolidate the access logs for a whole bunch of Tomcats using Spread (www.spread.org) like I do with Apache. The easiest way to do this seems to be to patch org.apache.catalina.valves.AccessLogValve to use Spread and I've done that trivially. However, now that I am collecting access logs from multiple Tomcats in a single location, I need to be able to tell which Tomcat a log line came from. Since the AccessLogValve comes from inside a Host/ stanza, I can use %v to somewhat figure out where it came from, but I run into problems when I have multiple Tomcats load-balanced by mod_jk serving the same virtual hosts. The easiest way then to tell where it came from seems to be to use the jvmRouteId -- any other, better, more easily obtained, unique identifier I can use? Thanks, Adi -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]