Hintergrund: Ich ziehe die Verbindungstabelle einer Firewall, um eine Top-Sprecher/Listener-Liste zu erstellen.telnetlib read_until Puffergröße
In einigen Fällen enthält die Verbindungstabelle 200.000 Einträge. Ich verwende Telnetlib, um die Firewall zu entfernen und die Verbindungstabelle zu greifen. Ich verwende read_until, um die Daten zu erfassen. Wenn die Tabelle jedoch größer als 40.000 Einträge ist, hängt es. Wenn ich es töte, sehe ich folgendes:
Traceback (most recent call last):
File "test2.py", line 152, in ?
main()
File "test2.py", line 120, in main
tmp_text = telnet.read_until(pager_text)
File "/usr/lib/python2.3/telnetlib.py", line 317, in read_until
self.process_rawq()
File "/usr/lib/python2.3/telnetlib.py", line 488, in process_rawq
self.cookedq = self.cookedq + buf[0]
KeyboardInterrupt
Bin ich eine Art Puffer? Was wäre eine bessere Möglichkeit, diese Daten zu erhalten?
Danke.
Danke - Ich werde mit read_some spielen und sehen, ob es hilft. Python 2.3.4 ist der Standard auf unseren Servern und kann leider nicht aktualisiert werden. – BDub