Hi Andy
I've just had a chance to read the documentation you put in place, I think it is very impressive. Just CC-ing to the dev list, as
this feature is still being developed, given that CXF 2.2.6 will only be released early next year.
I have just few comments. They're more about some additional configs/etc
- At the moment the log events are embedded inside feeds, which is fine, especially when the batch size is greater than one...I feel
it would make sense to let users choose that a single Atom entry (not wrapped by a feed) should be pushed if a batch size is equal
to 1.
Perhaps it can done by default (batch size1 -> entry, >=1 -> feed of entries) but let users to enable/disable this entry-only
delivery.
For ex, the remote URI can point to some other feed (collection) which the client exposes to its own consumers, so it might be
useful to let them simply point to a feed URI and CXF will just POST individual entries to it, it will be just a normal AtomPub
collection update.
And if users have chosen to push, say, only fatal log events, then sending an entry per log event would not put much stress on the
CXF...
- Atom specific : users should be able to choose how a log record is embedded inside a given entry. I like the idea of putting it
into atom:entry:/atom:content of type application/xml, however some users may prefer the Atom extenstions, so it will be an
atom:entry/log:logRecord...The latter option might work well for json given that Abdera supports JSON, not sure though...but also
let add an html content to the entry/content, in addition to the xml content added directly to the entry element.
- It would be nice to let users easily inject customized WebClients (ex, preferring JSON or set with some additional headers, etc)
from Spring, but it may actually be quite easy to do, they'll have to reconfigure a WebDeliverer bean and possibly list a default
retrier bean ?
- I like the idea of letting users to select multiple loggers(packages)/levels...It should cover most of cases. Perhaps, going
forward, we may let them choose not only by level but also by level and category, category only, etc...
- At the moment, the delivery will stop if a single delivery fails, unless a retry strategy is configured. I think it is reasonable.
But I'm thinking of having a property such as a 'send and forget' one, but we can enable it once WebClient start supporting one
ways.
That is mostly it,
thanks, Sergey
Recent builds started to expose initial effort of JAXRS extension in area of
logging -- ability to handle log events, pack as ATOM Feeds and push to the
client. Documentation is available here:
http://cwiki.apache.org/CXF20DOC/jax-rs.html#JAX-RS-ATOMpushstylelogging. I
would like to validate future steps with community so feel free to share
your comments here.
cheers, andy.
--
View this message in context:
http://old.nabble.com/-New-feature--Logging-in-ATOM-Feeds-and-pushing-to-client-tp26452485p26452485.html
Sent from the cxf-user mailing list archive at Nabble.com.