Je configure un travail cron pour collecter les résultats du profileur de base de données MongoDB. Je souhaite collecter les résultats dans un délai de 24 heures. Je prévois d'exécuter la commande mongo avec javascript.
La question est, dans Mongo Shell, comment puis-je écrire une requête pour trouver une plage de dates d'il y a 24 heures? Tel que:
db.system.profile.find({
"timestamp" : {
$lte : <current date & time>,
$gt : <date & time 24 hrs ago>
}
})
Réponse trouvée ici: https://stackoverflow.com/questions/1296358/subtract-days-from-a-date-in-javascript
db.system.profile.find({
"timestamp" : {
$lt: new Date(),
$gte: new Date(new Date().setDate(new Date().getDate()-1))
}
})
db.system.profile.find({
"timestamp" :
{
$gte: new Date(new Date().setHours(00,00,00)) ,
$lt : new Date(new Date().setHours(23,59,59))
}
})
db.collection.find(
{$and:
[
{ "status.code":"DELIVERY_PENDING"},
{"status.createdDtm": {$lte: new Date().getTime()-(1*60*60*1000) }}
]
}
)