Python скрипт для запроса данных за последние 1 час - PullRequest
0 голосов
/ 06 марта 2020

Используя приведенный ниже скрипт, я пытаюсь получить документы, добавленные за последний час для нескольких коллекций; но это дает мне нулевое значение.

Может кто-нибудь взглянуть на приведенный ниже код и помочь мне исправить его?

import pymongo
import sys
from datetime import datetime
from datetime import timedelta
from pymongo import MongoClient
# establish connectivity to Mongodb via ssl using pymongo module
#args = sys.argv

host = 'mongo-db-prd'
uname = 'superuser'
passwrd = 'Hayyo'
#print (args)
port = "27017"
print(uname)
print(passwrd)
uri = 'mongodb://' + uname + ":" + passwrd + "@" + host + ":" + port + '/?authSource=admin'

client = MongoClient(uri, ssl=True, ssl_ca_certs='./files/rds-combined-ca-bundle.pem')
# This will create hl7feeds docdb
print("connected client")
db = client.feeds  # This command will create a DB
print(client.list_database_names()) # This command will print list of DBs
print(client.list_database_names()) # This command will print list of DBs
mycol = db[ "feeds_100"]  # This command will create a collection in DB
docins=mycol.insert_one({"name" : "test"})  # This will insert a document in collection
dblist = client.list_database_names()
print(client.list_database_names())

# Lets create collections on docdb for all tenants
tlist1 = ["feeds_104","feeds_105","feeds_106"]

for each_val in tlist1:
   print (each_val)
   countvalue = db.getCollection('each_val').find({"row_created_date":{"$gt":datetime.utcnow() - timedelta(hours=1)}}).count();
   print (countvalue)

1 Ответ

0 голосов
/ 10 марта 2020

В приведенном выше запросе с использованием метода db [collection-name] я могу получить результаты

...