Frage

Ein Mitglied meines Teams ist eine Rails-Anwendung auf Windows XP zu entwickeln. Wir stellen fest, dass, wenn wir die App laufen, entweder startet es innerhalb NetBeans oder durch eine Konsole öffnen und script/server Aufruf, die Rails-Entwicklung Protokoll nicht durch nicht scrollen. Es gibt nur die WEBrick Startmeldung. Die App ist auf jeden Fall ausgeführt wird, aber wenn wir verschiedene Seiten im Browser schlagen wir sehen keine Log-Ausgabe.

Wenn ich die gleiche App auf meinem OS X-System suchen, Ausgabe Werke Anmeldung als erwartet.

habe ich sicher, dass es in Rails „Entwicklung“ Umgebung ausgeführt wird.

Irgendwelche Ideen, warum die Protokollierung unterdrückt werden würde?

Gibt es Konfigurationsparameter erstellt für die environment.rb-Datei, die es beeinflussen würde?

War es hilfreich?

Lösung

Suchen Sie in dem log/ Verzeichnis - es sollte eine development.log sein. Ich wette, Ihr Ausgang ist.

Wenn es nicht, stellen Sie sicher, dass Verzeichnis beschreibbar ist.

Wie es sehen, während Sie laufen: Wenn Sie git bash installiert haben, oder eine andere Shell wie Cygwin, dann können Sie eine Shell öffnen und tail -f log/development.log tun, die das Protokoll scrollen, wie es Sachen angehängt wird .

Andere Tipps

Die Rails Konfiguration Dokumentation schlägt vor, dass Sie log_level andere auf etwas gesetzt haben als :debug in Ihrer Konfiguration.

Es gibt auch einen alternativen Ort, um die Anfragen zu lesen: das Protokoll / development.log Datei in Ihrer Rails-Anwendung. Wenn dort nichts geschrieben wird, dann muss Ihr Problem in der Konfiguration sein. Auf einem * nix-System würde ich laufen:

$ tail -f log/development.log

Und beobachten Sie die Anfragen laufen durch. Sie sagen mir, dass es eine Windows-Version von tail .

less -R log/development.log

Ich habe gerade angefangen, diese zu verwenden.

Ich verwende log/development.log immer bei den Protokollen zu suchen. tail -f es nur mit Cygwin oder so etwas.

Vielleicht ist Ihre Windows-Umgebung verwendet WEBrick und die OS X-Umgebung ist Mongrel oder andere Webserver verwenden. Ich habe mit einigen Web-Servern die Protokollausgabe (auch) geschrieben direkt in die Schale und mit anderen bemerkt, dass nur in die Protokolldateien geschrieben werden.

Versuchen Sie dies, Entwicklung Protokoll zu bekommen:

tail -f log/development.log

Stellen Sie sicher, dass Sie in dem Anwendungspfad sind.

Netbeans scheint im Konsolenfenster Anzeige des dev Protokolls zu stoppen, wenn die Entwickler Protokoll zu groß wird. Wenigstens war, dass meine Erfahrung.

Ohne für WEBrick in die Quelle zu graben, ich vermute, dass die Menge an Informationen standardmäßig angezeigt ist nicht groß. Sind Sie sicher, dass Sie WEBrick auf OSX und nicht reinrassig?

laufen lassen

In der Tat gibt es einen besonderen Grund für die Fortsetzung WEBrick überhaupt zu benutzen? Vor dem Aufkommen des Phusion Passagiers hatte Mongrel der de facto Front-End-Server der Wahl, und es funktioniert gut unter Windows. Wenn Sie es (gem install mongrel) installieren, dann wird Rails es verwenden standardmäßig aktiviert.

In meiner Entwicklungsumgebung läuft WEBrick (nachdem ich dachte hatte, wie - es ist schon eine lange Zeit) Ich habe sehr kurzen Ausgang: nur eine Aufzeichnung des „GET“ -Anfrage. Die Umstellung auf Mongrel, habe ich die vollen Werke:. Anforderung, Parameter, SQL, Timings etc

Ich verwende Schwanz mit grep

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

Funktioniert wunderbar.

Sie können die Laufzeit-Protokolle mit dem unter Befehl finden Sie unter:

tailf log/development.log

Auch wenn Sie nur erste oder letzte Anzahl der Zeilen wollen aus den Protokollen können Sie nur diejenigen mit folgendem Befehl (erste / letzte 100 Zeilen aus den Protokollen) erhalten:

Zum Beispiel:

Die ersten 100 Zeilen:

head -n 100 log/development.log 

Letzte 100 Zeilen:

tail -n 100 log/development.log

Danke!

Sie können diesen Befehl versuchen

$ tail -f development.log


$ tail -f log/development.log
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top