erlang-call-stack

muss ich einige debug-Modul in ein fremdes system,
Modul public function foo() - wie kann ich wissen, den Ort (Modul-und Funktionsnamen)
aus dem foo() angegebene Modul wurde genannt? Ich meine Stapel von anrufen.

PS: ich kann nicht-stop-system, alle Arbeit, die ich tun kann, durch neu laden mit diesem Modul (aber mit som debug-info)

-module(given).
-export(foo/0).

foo() ->
   %% here is my debug - and i need here(!) known about unknown_module:unknown_foo!
   ok.

---
-module(unknown_module).
..

unknown_foo() ->
   given:foo().  %% see above
  • Ich hav ändern mein Beispiel, kommentieren Sie bitte
  • Bitte beachten Sie, dass in einem Fall wie deinem Beispiel oben, den Aufruf gegeben:foo() ist eine tail-call - das bedeutet, es wird keine Spur Links von ihm auf dem Stapel (per definition). Wenn Sie brauchen, um diese Art zu Debuggen, sollten Sie lernen, über die Verfolgung in Erlang.
InformationsquelleAutor vinnitu | 2010-02-12
Schreibe einen Kommentar