Gevent -Überwachung: Drucken von Stacktrace auf blockierten GrünlingenPython

Python-Programme
Anonymous
 Gevent -Überwachung: Drucken von Stacktrace auf blockierten Grünlingen

Post by Anonymous »

Ich versuche, den Überwachungs -Thread in Gevent einzurichten, um einen blockierten Sellerie -Arbeiter zu erkennen und den Stacktrace des blockierten Arbeiters zu drucken. Wir richten den Überwachungsthread wie folgt ein: < /p>

Code: Select all

def show_thread_info(hub):
frames = sys._current_frames()
for thread_id, frame in frames.items():
# our company's logger
log.info(
extra={"stack": traceback.extract_stack(frame)},
)

def setup_monitoring():
hub = get_hub()
hub.periodic_monitoring_thread.add_monitoring_function(show_thread_info, 3)

@worker_ready.connect
def on_worker_ready(**kwargs):
setup_monitoring()
druckt es oben ständig eine Stapelverfolgung. Wie kann ich sie so einrichten, dass diese Stapelspur nur gedruckt wird, wenn ein blockierter Arbeiter erkannt wird? dass dieser Rückruf eingerichtet werden sollte, bevor der Überwachungsthread eingerichtet ist. Das Einstellen von greenlet.setTrace mit meiner Stapelverfolgung führt jedoch auch dazu, dass die Dinge ständig gedruckt werden.>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post