Как получить stdio, и error_logger обменивается сообщениями на удаленной оболочке

После расходов долгое время, заставляя rb работать над удаленной оболочкой, я хотел бы получить stdio / сообщения программы регистрации ошибок на удаленной оболочке, я вырыл вокруг изменения group_leaders, но это, казалось бы, потребовало бы изменения group_leader всего рабочего процесса, и мои эксперименты нашли, что это довольно нестабильно.

5
задан Dale Harvey 27 March 2010 в 22:19
поделиться

1 ответ

Самый простой способ - не связываться с подсистемой erlang io, а использовать стандартные инструменты ERTS. 1 Запустите эмулятор с помощью stdin / stdout wrapper / logger:

run_erl -daemon /tmp/ /some/log/dir erl

2 Затем выполните:

ssh localhost -tt to_erl /tmp/
  1. заставляет эмулятор запускаться с конвейерами, прикрепленными к stdin и stdout, помещенными в / tmp и циклическими файлами журналов stdin и stdout плюс метки жизнеспособности узлов, помещенные в / some / log / dir. Быстрый и грязный журнал аудита активности оболочки :)
  2. подключается к каналам stdin и stdout. Преимущество "ssh -tt" - это завершение работы в оболочке.

Дополнительные подсказки см. В «$ ERL_TOP / erts * / bin / start» и на странице руководства для «run_erl» и «to_erl»: http://www.erlang.org/doc/ man / run_erl.html

5
ответ дан 14 December 2019 в 19:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: