Pregunta

Un miembro de mi equipo está desarrollando una aplicación Rails en Windows XP. Estamos descubriendo que cuando ejecutamos la aplicación, ya sea lanzándola dentro de NetBeans o abriendo una consola y llamando a script / server , el registro de desarrollo de Rails no se desplaza. Solo existe el mensaje de inicio de Webrick. La aplicación definitivamente se está ejecutando, pero cuando llegamos a varias páginas en el navegador no vemos ningún resultado de registro.

Cuando miro la aplicación idéntica en mi sistema OS X, la salida de registro funciona como se esperaba.

Me aseguré de que se esté ejecutando en Rails " desarrollo " medio ambiente.

¿Alguna idea de por qué se suprimiría el registro?

¿Hay parámetros de configuración para el archivo environment.rb que lo afectarían?

¿Fue útil?

Solución

Busque en el directorio log / ; debe haber un development.log . Apuesto a que tu salida está ahí.

Si no es así, asegúrese de que el directorio se pueda escribir.

Para ver cómo se está ejecutando: si tiene instalado git bash o algún otro shell como cygwin, puede abrir un shell y hacer tail -f log / development.log que desplazará el registro a medida que se le agreguen cosas.

Otros consejos

La Configuración de Rails la documentación sugiere que puede tener log_level establece algo diferente a : debug en tu configuración.

También hay un lugar alternativo para ver las solicitudes: el archivo log / development.log en su aplicación Rails. Si no hay nada escrito allí, entonces su problema debe estar en la configuración. En un sistema * nix, ejecutaría:

$ tail -f log/development.log

Y mira las solicitudes que se ejecutan. Me dicen que hay una versión de Windows de tail .

less -R log/development.log

Acabo de empezar a usar esto.

Siempre uso log / development.log para mirar los registros. Simplemente tail -f con cygwin o algo así.

Tal vez su entorno Windows esté utilizando WEBrick y el entorno OS X esté utilizando Mongrel u otro servidor web. Me he dado cuenta de que con algunos servidores web la salida de registro se escribe (también) directamente en el shell y con otros se escribe solo en los archivos de registro.

Pruebe esto para obtener el registro de desarrollo:

tail -f log/development.log

Asegúrese de estar en la ruta de la aplicación.

Netbeans parece dejar de mostrar el registro de desarrollo en la ventana de la consola cuando el registro de desarrollo se hace demasiado grande. Al menos esa fue mi experiencia.

Sin profundizar en la fuente de Webrick, sospecho que la cantidad de información que se muestra no es grande por defecto. ¿Estás seguro de que estás ejecutando Webrick en OSX y no Mongrel?

De hecho, ¿hay alguna razón particular para seguir usando Webrick? Antes de la llegada de Phusion Passenger, Mongrel se había convertido en el servidor front-end de facto elegido, y funciona bien en Windows. Si lo instala ( gem install mongrel ), Rails lo usará por defecto.

En mi entorno de desarrollo, ejecutando Webrick (después de haber descubierto cómo, ha pasado mucho tiempo) obtuve un resultado muy breve: solo un registro de "GET" solicitud. Cambiando a Mongrel, obtuve los trabajos completos: solicitud, parámetros, SQL, tiempos, etc.

Uso cola con grep

tail -f log/development.log | grep Started -A 1

Funciona maravillosamente.

Puede ver los registros de tiempo de ejecución con el siguiente comando:

tailf log/development.log

Además, si solo desea la primera o la última cantidad de líneas de los registros, puede obtenerlas con el siguiente comando (primeras / últimas 100 líneas de los registros):

Por ejemplo:

Primeras 100 líneas:

head -n 100 log/development.log 

Últimas 100 líneas:

tail -n 100 log/development.log

¡Gracias!

Puedes probar este comando

$ tail -f development.log


$ tail -f log/development.log
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top