2013-07-31 13 views
33

Poszłam za tą stroną, aby zobaczyć zapytania mongoDB. W rezultacie mogłem zobaczyć dziennik Moped.
Ale nie widzę surowych zapytań mongoDB.
How can I display MongoDB queries in the rails console/serverJak mogę zobaczyć surowe zapytania mongoDB z Mongoidem

Podobał mi się poniższy.

# in [rails root]/config/environments/development.rb  
Mongoid.logger.level = Logger::DEBUG 
Moped.logger.level = Logger::DEBUG 
Mongoid.logger = Logger.new("#{Rails.root}/log/mongoid_development.log") 
Moped.logger = Logger.new("#{Rails.root}/log/moped_development.log") 

# in [rails root]/log/mongoid_development.log 
# show nothing. 

# in [rails root]/log/moped_development.log 
MOPED: [ip address]:27017 QUERY  database=[database name] collection=[collection name] selector={"$query"=>{"screen_name"=>"ts_3156"}, "$orderby"=>{:_id=>1}} flags=[:slave_ok] limit=-1 skip=0 batch_size=nil fields=nil (54.6286ms) 

Jak widzę surowe zapytań MongoDB z Mongoid?
Chcę zobaczyć, jak poniżej.

db.[collection name].find({ $query: {"screen_name"=>"ts_3156"}, $orderby: {:_id=>1} }) 

Widzę surowe zapytania mongoDB w /var/log/mongo/mongo.log.
Ale chcę zobaczyć nieprzetworzone zapytania w dzienniku ORM (Mongoid).

+1

2 lata później i nadal nie ma przyzwoitej odpowiedzi? – Donato

+0

Do góry! jest to bardzo pomocne w celu zapoznania się z CRUD w mongodb. – Charlie

+0

Dla tych, którzy chcą zalogować motorower do konsoli: 'Moped.logger = Logger.new ($ stdout)' – dsims

Odpowiedz

0

Aby uruchomić komendy zapytań z Mongoidem, uruchom mongo z katalogu projektu, aby wpisać swoje zapytania. Przykłady takie jak show collections, db.users.find, jeśli istnieje tabela użytkowników.

3

Myślę, że dostałem odpowiedź. To jest następna odpowiedź dla dsims, a także z tego, co widziałem w dokumentacji dotyczącej logowania.

Mam plik zainicjowana (config/inicjalizatory/mongoid.rb) i tam mam:

Mongoid.logger = Logger.new($stdout) 
Mongo::Logger.logger = Logger.new($stdout) 

To zrzuca się info Mongo konsoli. Prawdopodobnie chcesz to zmienić w środowisku produkcyjnym. Ale rozwijając się, lubię być w stanie zobaczyć, co robi DB. Zwłaszcza, że ​​jestem nowy w MongoDb.

Powiązane problemy