Ich habe eine Elixier/OTP-Anwendung in Produktion, die mit mix phoenix.server
gestartet wurde. Es hat mehrere Prozesse, die den Zustand halten. Einer davon ist ein Stash, implementiert als Agent, der momentan einen Status hat, den ich manuell ändern möchte, ohne die gesamte Anwendung zu stoppen. Sobald ich in einer iex Sitzung in der Anwendung bin, wird es trivial sein, aber ich weiß nicht, ob eine solche Option sogar in Elixier möglich ist?Anhängen einer iex-Sitzung an laufendes Elixier/OTP-Prozess
Antwort
Das hängt davon ab, wie Sie Ihre OTP-Anwendung gestartet haben. Um sich mit dem Knoten zu verbinden, muss er entweder mit --name
oder --sname
Flag gestartet werden. Sie können mit node()
$ iex
Erlang/OTP 18 [erts-7.2.1] [source] [64-bit] [smp:4:4] [async-threads:10] [kernel-poll:false]
Interactive Elixir (1.3.0) - press Ctrl+C to exit (type h() ENTER for help)
iex(1)> node()
:[email protected]
Der Knotenname der Name des aktuell laufenden Sitzung prüfen ein Atom ist, wo der erste Teil Name aktuellen Knoten ist und der zweite Teil ist Gastgeber. Der Host wird für das Routing verwendet. Daher ist es schwierig, eine Verbindung zu einem Knoten herzustellen, der unter nohost
implementiert ist. Wenn Sie iex
mit kurzem Namen starten (--sname
), wird Ihr Hostname automatisch erkannt.
$ iex --sname foo --cookie ciastko
(...)
iex([email protected])1> node
:"[email protected]"
Auf einer anderen Konsole laufen iex
mit anderen Namen und dem gleichen Cookie und versuchen Node.connect(:"[email protected]")
. Sie sollten sich verbinden.
Sie haben wahrscheinlich Ihre Phönix-Anwendung damit nicht gestartet und können jetzt keine Verbindung herstellen. Um Phoenix beim nächsten Mal mit dieser Möglichkeit zu starten, müssen Sie Folgendes ausführen:
elixir --sname some_name --cookie ciastko -S mix phoenix.server
- 1. Funktionen an einer Instanz eines Elements anhängen
- 2. Datenrahmen an den Anfang einer Liste anhängen
- 3. Anhängen an die Zeilen einer Tabelle
- 4. Quellcode an Jprofiler anhängen
- 5. Unterverzeichnis an Hauptwörterbuch anhängen
- 6. Anhängen an MemoryMappedFile?
- 7. Datei an Outlook anhängen
- 8. Anhängen an einen ObjectOutputStream
- 9. Entitäten an Datenkontexte anhängen
- 10. GIF an TWTRComposer anhängen?
- 11. Dreiecke an div anhängen
- 12. Anhängen an CMAKE_C_FLAGS
- 13. Text an Klassennamen anhängen
- 14. Quelle an VisualVM anhängen?
- 15. Elemente an Seite anhängen
- 16. C an char anhängen *
- 17. TextView an RecyclerView anhängen
- 18. an ORC-Datei anhängen
- 19. anhängen an Funktion lua
- 20. An CloudBlockBlob-Stream anhängen
- 21. Bild an Gmail anhängen
- 22. NSIntefulData an NSIntefulData anhängen
- 23. An Zeichenfolgenvariable anhängen
- 24. An die globale Liste anhängen
- 25. Zeilen an einen Datenrahmen anhängen
- 26. Anhängen an Puffer in C++
- 27. Ziffer an die Aufteilungsliste anhängen
- 28. Textdateidatei an Protokolldatei anhängen, .bat
- 29. An NSTextView anhängen und scrollen
- 30. Daten an Protokolldatei anhängen, .bat