from pymongo import MongoClient # Konstanten für Schwellwerte WARNUNGSGROESSE_GB = 0.5 KRITISCHGROESSE_GB = 1.0 # Verbindung zur MongoDB herstellen client = MongoClient('mongodb://localhost:27017/') # Alle Datenbanknamen abrufen db_names = client.list_database_names() # Durch jede Datenbank iterieren und die Statistiken abrufen for db_name in db_names: db = client[db_name] stats = db.command('dbstats') # Größe in Gigabytes umrechnen groesse_gb = stats['dataSize'] / (1024**3) # Prüfe die Größe gegen Schwellwerte und gebe entsprechenden Status aus if groesse_gb > KRITISCHGROESSE_GB: status = 2 # Kritisch status_message = "CRITICAL" elif groesse_gb > WARNUNGSGROESSE_GB: status = 1 # Warnung status_message = "WARNING" else: status = 0 # OK status_message = "OK" print(f"{status} MongoDB_{db_name}_Groesse - {status_message} - Groesse: {groesse_gb:.2f} GB") # MongoDB-Verbindung schließen client.close()