db.currentOp(true).inprog.forEach(function(d){if(d.client)print(d.client, d.connectionId)})

Wynik:

127.0.0.1:64629 383
127.0.0.1:56878 363

Użyłem tego polecenia, aby uzyskać adres IP klienta w skorupce. Czy jest jakiś sposób, aby go zdobyć w Pythonie?

0
Rohit Prabu 27 październik 2020, 09:42

1 odpowiedź

Najlepsza odpowiedź

Ręczna strona dla db.currentOp mówi

DB.Currentop Okłada aktualny program dowodzenia bazy danych.

Więc kiedy już to wiemy, możemy użyć db.command() w Pymonto i powierz swoje JavaScript w następujący sposób:

from pymongo import MongoClient

db = MongoClient()['admin']
command_result = db.command({'currentOp': 1})
inprogs = command_result.get('inprog')

for inprog in inprogs:
    if 'client' in inprog:
        print(inprog.get('client'), inprog.get('connectionId'))

Daje (np.):

172.17.0.1:39734 15
0
Belly Buster 27 październik 2020, 21:18