2010-10-30 7 views
28

No puedo encontrar los resultados de mis llamadas de registro. mensajes Para conectarse He intentado tanto:Google App Engine: no se pueden encontrar mis mensajes de registro

System.out.println("some message"); 

y

Logger logger = Logger.getLogger("MyLogger"); // Logger is java.util.logging.Logger 

// ... 

logger.info("some message"); 

he desplegado mi aplicación y después de algunas pruebas que decidió retirar algunos mensajes de registro. Pero no hubo mensajes. He cambiado mínimo nivel de gravedad a "información" en defecto "error", y sólo los mensajes que he visto eran mensajes de servicio como esto:

http://dl.dropbox.com/u/1678938/logs.png

También estaría agradecido si alguien muestra un pequeño fragmento con el registro de algunos datos (si funcionan): sospecho que mi problema puede ser uno de esos problemas estúpidos cuando una coma ubicada incorrectamente puede ser la causa de la situación.

+0

¿Hizo clic en los signos + junto a esos mensajes de registro para expandirlos? Tal como se muestra, es imposible saber si las cosas que ha registrado están realmente en el registro. – geoffspear

+0

sí, hice clic en + 'es - no había nada similar con la información, inicié sesión en mi aplicación. Solo cadenas "ficticias" que describen algunas solicitudes a la aplicación – Alexander

+1

¿Está mirando los registros de la versión correcta de su aplicación? Es posible que haya implementado la versión X, pero está mirando los registros de la versión Y. –

Respuesta

12

El problema se ha reducido a una forma más concreta: App Engine "come" mensajes de información, pero muestra otros, como mensajes de error y advertencia.

Tras esta llamada, finalmente, He visto mis mensajes de información:

log.setLevel(Level.INFO); 

embargo todavía no está claro - ¿por qué no se estaban mostrando info-mensajes. manual Estados de Google:

Todo el servlet escribe en la secuencia de salida estándar (System.out) y flujo de error estándar (System.err) es capturado por App Engine y registró en los registros de la aplicación. Las líneas escritas en la secuencia de salida estándar son registradas en el nivel "INFO", y las líneas escritas en la secuencia de error estándar se registran en el nivel "ADVERTENCIA".

+0

Voy a intentar esto si realmente funciona. –

+5

Excepto esta decisión, encontré una forma más: intentar editar el archivo WEB-INF/logging.properties. Tiene solo una cadena: debe cambiar el nivel de ADVERTENCIA a INFO (o algo más) – Alexander

27

¿Podría ser que su logging.properties establezca el valor predeterminado en WARNING?

nuestra tiene esto en nuestra war/WEB-INF/logging.properties archivo:

# Set the default logging level for all loggers to WARNING 
.level = WARNING 

# Default level for subpackages of 'server' will be INFO 
com.company.whatever.server.level=INFO 
+1

Muchas gracias. Me quedé atrapado en una hora porque esa cosa estúpida ... – KimKha

8

tenía exactamente el mismo problema y después de cambiar el valor en logging.properties de

.level = ADVERTENCIA

a

.level = INFO

The pr Oblem fue definitivamente reparado. Google necesita actualizar su documentación y/o cambiar el valor de la configuración predeterminada para que no se traguen los mensajes de registro de "INFO".

+0

Estoy de acuerdo con el sentimiento del documento de Google. Y, para elaborar, las diferentes piezas dependientes deben documentarse junto con todo el código de muestra, la configuración, etc. – mobibob

+0

Esto funciona, pero ¿POR QUÉ funciona? – Micro

0

que utiliza para establecer LEVEL a SEVERE para probar

logger.log(Level.SEVERE, "test message"); 

No necesita cambiar cualquier valor en el registro.propiedades