2016-05-02 5 views
0

Ich habe eine MongoDB-Datenbank und verwende MongoChef, um Skripte dafür zu schreiben. Ich habe ein Skript, das Daten aus einer Sammlung einliest und die Datensätze in eine andere Sammlung einfügt. Das Skript läuft gut, aber ich bekomme keine Rückmeldung darüber, was passiert ist. Gibt es eine Möglichkeit, eine Bestätigung dafür zu erhalten, dass das Skript beendet wurde (dh alle Datensätze wurden eingefügt)? Gibt es eine Möglichkeit, eine Ausgabe zu erhalten, wie viele Datensätze (in diesem Fall) eingefügt wurden? (Ich weiß, dass ich eine andere Anweisung schreiben könnte, um Datensätze zu zählen, aber ich möchte wissen, wie viele Datensätze tatsächlich von der insert-Anweisung eingefügt wurden). Was ich gerne sehen möchte, ist etwas wie "Skript erfolgreich. 1200 Datensätze in die Sammlung Eigenschaften eingefügt." Kann mir jemand zeigen, wie man diese Ausgabe für MongoChef einschaltet? Vielen Dank.Wie bekomme ich eine Rückmeldung darüber, ob eine MongoDB-Abfrage erfolgreich war und wie viele Zeilen geändert wurden?

Unten ist ein Bild von meinem Skript. Dies ist, nachdem es ausgeführt wurde. Beachten Sie, dass in den Ergebnisregisterkarten nichts enthalten ist. Es gibt keine Hinweise darauf, dass die Abfragen ausgeführt wurden, dass sie erfolgreich ausgeführt wurden oder wie viele Datensätze aktualisiert wurden.

enter image description here

Antwort

0

Sie können für WriteConcerns die MongoDB Dokumentation durchgehen und sehen, welche Informationen entsprechen Ihre MongoDB-Version. Zuvor wurde die getLastError verwendet, um Fehlerinformationen über die zuletzt ausgeführte CRUD-Anweisung zu erhalten. getLastError kann Ihnen Informationen geben, wenn nach der Ausführung einer CRUD-Operation ein Fehler aufgetreten ist.

Sie können auch die WriteResult verwenden, die Rückkehr von insert, update, remove und save Betrieb die Anzahl des aktualisierten Dokuments zu erhalten. Es enthält auch Eigenschaften wie writeError, um die für diese Operation spezifischen Informationen zu erhalten.

Probe (psuedo nicht spezifisch für MongoChef) -

var wr = db.properties.insert(doc); 

println("Updated %d collections of type %s", wr.getN(), type); 
+0

Danke, lief ich über Write, als ich früher war auf der Suche, aber nicht wissen, wie/wo es zu benutzen. Können Sie mir ein Beispiel dafür geben, wie ich es mit dem Rest meines Skripts verwenden würde? – boilers222

Verwandte Themen