I understand.  I think simply logging the class names of the 
resources/providers as INFO should be sufficient.  The other details raw 
type/data map (not even sure what that is) should probably be logged at DEBUG.

--jason


On Sep 17, 2010, at 1:19 PM, Bryant Luk wrote:

> While I think the formatting should be changed and some of it should
> be removed, I think we should log the user resources and providers
> that are registered.  Some users have had trouble because they forget
> to register their resources so they get 404s or try using a
> MessageBodyWriter that isn't registered.
> 
> On Fri, Sep 17, 2010 at 3:11 PM, Jason Dillon <[email protected]> wrote:
>> Why is this marked explicitly as INFO?
>> 
>> <snip>
>>        // always produce INFO output after completing application processing:
>>        logger.info(Messages.getMessage("applicationProcessed", 
>> application.getClass().getName())); //$NON-NLS-1$
>>        List<ResourceRecord> resourceRecords = resourceRegistry.getRecords();
>>        StringBuffer sb = new StringBuffer();
>>        for (ResourceRecord record : resourceRecords) {
>>            sb.append("\n  " + record.toString()); //$NON-NLS-1$
>>        }
>>        logger.info(Messages.getMessage("registeredResources", (sb.length() > 
>> 0) ? sb.toString() : "{}")); //$NON-NLS-1$ $NON-NLS-2$
>>        logger.info(providersRegistry.getLogFormattedProvidersList(true));
>>        // done with INFO
>> </snip>
>> 
>> The resulting logs look much more like DEBUG information.
>> 
>> --jason
>> 
>> 
>> On Sep 15, 2010, at 2:25 PM, Jason Dillon wrote:
>> 
>>> :-(
>>> 
>>> --jason
>>> 
>>> <snip>
>>> jvm 1    | INFO  [Initializing plugin benson-servlets-plugin] 
>>> o.a.w.s.i.a.ApplicationProcessor - The following application has been 
>>> processed: com.sonatype.benson.rest.server.internal.wink.ApplicationImpl
>>> jvm 1    | INFO  [Initializing plugin benson-servlets-plugin] 
>>> o.a.w.s.i.a.ApplicationProcessor - Registered resources: {}
>>> jvm 1    | INFO  [Initializing plugin benson-servlets-plugin] 
>>> o.a.w.s.i.a.ApplicationProcessor - The following user-defined JAX-RS 
>>> providers are registered:
>>> jvm 1    | RawType: interface javax.ws.rs.ext.ContextResolver
>>> jvm 1    | Data Map: {empty}
>>> jvm 1    | RawType: interface javax.ws.rs.ext.MessageBodyReader
>>> jvm 1    | Data Map: {empty}
>>> jvm 1    | RawType: interface javax.ws.rs.ext.MessageBodyWriter
>>> jvm 1    | Data Map: {empty}
>>> jvm 1    | INFO  [Initializing plugin benson-servlets-plugin] 
>>> o.a.w.s.i.a.ApplicationProcessor - The following application has been 
>>> processed: org.apache.wink.server.utils.RegistrationUtils$InnerApplication
>>> jvm 1    | INFO  [Initializing plugin benson-servlets-plugin] 
>>> o.a.w.s.i.a.ApplicationProcessor - Registered resources: {}
>>> jvm 1    | INFO  [Initializing plugin benson-servlets-plugin] 
>>> o.a.w.s.i.a.ApplicationProcessor - The following user-defined JAX-RS 
>>> providers are registered:
>>> jvm 1    | RawType: interface javax.ws.rs.ext.ContextResolver
>>> jvm 1    | Data Map: {empty}
>>> jvm 1    | RawType: interface javax.ws.rs.ext.MessageBodyReader
>>> jvm 1    | Data Map: {empty}
>>> jvm 1    | RawType: interface javax.ws.rs.ext.MessageBodyWriter
>>> jvm 1    | Data Map: {empty}
>>> jvm 1    | INFO  [Initializing plugin benson-servlets-plugin] 
>>> o.a.w.s.i.a.ApplicationProcessor - The following application has been 
>>> processed: org.apache.wink.server.utils.RegistrationUtils$InnerApplication
>>> jvm 1    | INFO  [Initializing plugin benson-servlets-plugin] 
>>> o.a.w.s.i.a.ApplicationProcessor - Registered resources:
>>> jvm 1    |   Path: ; ClassMetadata: Class: 
>>> org.apache.wink.server.internal.resources.HtmlServiceDocumentResource
>>> jvm 1    | INFO  [Initializing plugin benson-servlets-plugin] 
>>> o.a.w.s.i.a.ApplicationProcessor - The following user-defined JAX-RS 
>>> providers are registered:
>>> jvm 1    | RawType: interface javax.ws.rs.ext.ContextResolver
>>> jvm 1    | Data Map: {empty}
>>> jvm 1    | RawType: interface javax.ws.rs.ext.MessageBodyReader
>>> jvm 1    | Data Map: {empty}
>>> jvm 1    | RawType: interface javax.ws.rs.ext.MessageBodyWriter
>>> jvm 1    | Data Map: {empty}
>>> jvm 1    | INFO  [Initializing plugin benson-servlets-plugin] 
>>> o.a.w.s.i.a.ApplicationProcessor - The following application has been 
>>> processed: 
>>> com.sonatype.benson.rest.plugin.wink.WinkProvider$ProviderApplication
>>> jvm 1    | INFO  [Initializing plugin benson-servlets-plugin] 
>>> o.a.w.s.i.a.ApplicationProcessor - Registered resources:
>>> jvm 1    |   Path: jobs/{jobName}/{buildNumber:\d*}; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.build.BuildResource
>>> jvm 1    |   Path: admin; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.admin.AdminResource
>>> jvm 1    |   Path: users; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.user.UserResource
>>> jvm 1    |   Path: queue; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.queue.QueueResource
>>> jvm 1    |   Path: nodes; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.node.NodeResource
>>> jvm 1    |   Path: jobs; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.job.JobsResource
>>> jvm 1    |   Path: job; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.job.JobResource
>>> jvm 1    |   Path: ; ClassMetadata: Class: 
>>> org.apache.wink.server.internal.resources.HtmlServiceDocumentResource
>>> jvm 1    | INFO  [Initializing plugin benson-servlets-plugin] 
>>> o.a.w.s.i.a.ApplicationProcessor - The following user-defined JAX-RS 
>>> providers are registered:
>>> jvm 1    | RawType: interface javax.ws.rs.ext.ContextResolver
>>> jvm 1    | Data Map: {empty}
>>> jvm 1    | RawType: interface javax.ws.rs.ext.MessageBodyReader
>>> jvm 1    | Data Map: {empty}
>>> jvm 1    | RawType: interface javax.ws.rs.ext.MessageBodyWriter
>>> jvm 1    | Data Map: {empty}
>>> jvm 1    | INFO  [Initializing plugin benson-servlets-plugin] 
>>> o.a.w.s.i.a.ApplicationProcessor - The following application has been 
>>> processed: 
>>> com.sonatype.benson.rest.plugin.wink.WinkProvider$ProviderApplication
>>> jvm 1    | INFO  [Initializing plugin benson-servlets-plugin] 
>>> o.a.w.s.i.a.ApplicationProcessor - Registered resources:
>>> jvm 1    |   Path: handshake; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.internal.HandshakeResource
>>> jvm 1    |   Path: jobs/{jobName}/{buildNumber:\d*}; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.build.BuildResource
>>> jvm 1    |   Path: status; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.status.StatusResource
>>> jvm 1    |   Path: admin; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.admin.AdminResource
>>> jvm 1    |   Path: users; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.user.UserResource
>>> jvm 1    |   Path: queue; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.queue.QueueResource
>>> jvm 1    |   Path: nodes; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.node.NodeResource
>>> jvm 1    |   Path: fault; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.fault.FaultResource
>>> jvm 1    |   Path: jobs; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.job.JobsResource
>>> jvm 1    |   Path: job; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.job.JobResource
>>> jvm 1    |   Path: ; ClassMetadata: Class: 
>>> org.apache.wink.server.internal.resources.HtmlServiceDocumentResource
>>> jvm 1    | INFO  [Initializing plugin benson-servlets-plugin] 
>>> o.a.w.s.i.a.ApplicationProcessor - The following user-defined JAX-RS 
>>> providers are registered:
>>> jvm 1    | RawType: interface javax.ws.rs.ext.ContextResolver
>>> jvm 1    | Data Map: {empty}
>>> jvm 1    | RawType: interface javax.ws.rs.ext.MessageBodyReader
>>> jvm 1    | Data Map: {empty}
>>> jvm 1    | RawType: interface javax.ws.rs.ext.MessageBodyWriter
>>> jvm 1    | Data Map: {empty}
>>> jvm 1    | INFO  [Initializing plugin benson-servlets-plugin] 
>>> o.a.w.s.i.a.ApplicationProcessor - The following application has been 
>>> processed: 
>>> com.sonatype.benson.rest.plugin.wink.WinkProvider$ProviderApplication
>>> jvm 1    | INFO  [Initializing plugin benson-servlets-plugin] 
>>> o.a.w.s.i.a.ApplicationProcessor - Registered resources:
>>> jvm 1    |   Path: handshake; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.internal.HandshakeResource
>>> jvm 1    |   Path: jobs/{jobName}/{buildNumber:\d*}; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.build.BuildResource
>>> jvm 1    |   Path: status; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.status.StatusResource
>>> jvm 1    |   Path: admin; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.admin.AdminResource
>>> jvm 1    |   Path: users; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.user.UserResource
>>> jvm 1    |   Path: queue; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.queue.QueueResource
>>> jvm 1    |   Path: nodes; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.node.NodeResource
>>> jvm 1    |   Path: fault; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.fault.FaultResource
>>> jvm 1    |   Path: jobs; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.job.JobsResource
>>> jvm 1    |   Path: job; ClassMetadata: Class: 
>>> com.sonatype.benson.rest.api.job.JobResource
>>> jvm 1    |   Path: ; ClassMetadata: Class: 
>>> org.apache.wink.server.internal.resources.HtmlServiceDocumentResource
>>> jvm 1    | INFO  [Initializing plugin benson-servlets-plugin] 
>>> o.a.w.s.i.a.ApplicationProcessor - The following user-defined JAX-RS 
>>> providers are registered:
>>> jvm 1    | RawType: interface javax.ws.rs.ext.ContextResolver
>>> jvm 1    | Data Map: {empty}
>>> jvm 1    | RawType: interface javax.ws.rs.ext.MessageBodyReader
>>> jvm 1    | Data Map:
>>> jvm 1    | MediaType key = multipart/*
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    | }
>>> jvm 1    | MediaType key = text/csv
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    | }
>>> jvm 1    | MediaType key = application/x-www-form-urlencoded
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    | }
>>> jvm 1    | MediaType key = application/atom+xml
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    | }
>>> jvm 1    | MediaType key = text/json
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    |   class org.codehaus.jackson.jaxrs.JacksonJaxbJsonProvider
>>> jvm 1    | }
>>> jvm 1    | MediaType key = application/xml
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    | }
>>> jvm 1    | MediaType key = application/javascript
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    | }
>>> jvm 1    | MediaType key = application/octet-stream
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    | }
>>> jvm 1    | MediaType key = */*
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    | }
>>> jvm 1    | MediaType key = application/json
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    |   class org.codehaus.jackson.jaxrs.JacksonJaxbJsonProvider
>>> jvm 1    | }
>>> jvm 1    | MediaType key = text/xml
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    | }
>>> jvm 1    |
>>> jvm 1    | RawType: interface javax.ws.rs.ext.MessageBodyWriter
>>> jvm 1    | Data Map:
>>> jvm 1    | MediaType key = multipart/*
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    | }
>>> jvm 1    | MediaType key = text/html
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    | }
>>> jvm 1    | MediaType key = text/csv
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    | }
>>> jvm 1    | MediaType key = application/x-www-form-urlencoded
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    | }
>>> jvm 1    | MediaType key = application/atom+xml
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    | }
>>> jvm 1    | MediaType key = application/atomcat+xml
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    | }
>>> jvm 1    | MediaType key = application/xml
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    | }
>>> jvm 1    | MediaType key = application/octet-stream
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    | }
>>> jvm 1    | MediaType key = text/xml
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    | }
>>> jvm 1    | MediaType key = text/json
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    |   class org.codehaus.jackson.jaxrs.JacksonJaxbJsonProvider
>>> jvm 1    | }
>>> jvm 1    | MediaType key = application/javascript
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    | }
>>> jvm 1    | MediaType key = */*
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    | }
>>> jvm 1    | MediaType key = application/json
>>> jvm 1    | ObjectFactory Set value = {
>>> jvm 1    |   class org.codehaus.jackson.jaxrs.JacksonJaxbJsonProvider
>>> jvm 1    | }
>>> </snip>
>> 
>> 

Reply via email to