[logback-dev] What is the most efficient way - preferrably platform agnostic - to submit events from "the outside"?

Joern Huxhorn jhuxhorn at googlemail.com
Tue Mar 3 10:05:40 CET 2009


Hi Ralph,

Ralph Goers wrote:
> I'm simply trying to understand what problem you are solving. I also
> think your assumption regarding the socket approach being the fastest
> is correct only under the simplest of circumstances. Finally, while
> the SocketAppender definitely clears up the client side, I haven't
> seen any discussion about what it is connecting to except that it is a
> Logback running remotely.
A remotely running Logback was just one of Thorbjoerns ideas. The main
point of *this* thread - at least as I understood ;) - is to find the
"best" solution to encode and decode Logback events.

And "best" is defined as "the most efficient way - preferably platform
agnostic".
> Frankly, that is the part I find most important and why I'm making any
> kind of issue out of this. If you are simply looking to improve the
> existing SocketAppender without providing the other end of the
> connection, then I apologize and you can ignore everything I've said.
I, for one, will implement both sides in Lilith (the SocketReceiver) and
the related multiplex appenders. I'll also try to implement anything
that is done in Logback
I'm quite interested in this topic because I'll also use the best
solution as my native file format. It looks like it will be protobuf but
I haven't finished the serializer/deserializer, yet. The generated API
is very nice, btw.
> Let's assume you use a SocketAppender and connect to something
> listening for some kind of serialized LogEvent. What if the client
> wants to dictate to the server whether it should get control back
> immediately after the event is received or wait until the event is
> procesed?
I think that isn't the task of the client (the logged application) at
all. Logging should simply log, everything else is, more or less, view
or usage of the event and should be handled on the receiver side.
> What if I want to communicate the locale or timezone of the client to
> the server?
I've lost you there. You want to communicate the locale or timezone of
the client (the logged application) to the server (the receiver of the
events)? I know, it's just an example, but I want to make sure I
understood it correctly.
> I'm pulling this off the top of my head but hopefully you get the idea
> that by specifying the service interface that you get more flexibility
> for enhancement down the road.
There *is* no service interface. Any type of service in addition to
simply receiving events would create an delay.

Joern.


More information about the logback-dev mailing list