特定のFlaskアプリ(追加のパッケージが追加されているもの)が送信する可能性のあるすべてのシグナルのリストを取得することは可能ですか?(つまり、サブスクライブできますか?)
または、Flaskアプリ/ Flaskフレームワークは、シグナルが送信されるまでわかりませんか?
すべてのパッケージがインポート時にシグナルを作成すると仮定すると(そして、関心のあるすべてのパッケージをインポートしたと仮定すると)、blinker.signalを介して作成されたすべての名前付きシグナルを反復処理することでイントロスペクトできるはずです。 blinker.signal
はのサブクラスでweakref.WeakValueDictionary
あるため、これを呼び出すだけkeys
で、シグナルのすべての名前を取得できます。
from blinker import signal
# import everything else here
print sorted(signal.keys())
詳細については、を参照blinker.base
してください。