如何在远程 shell 上接收 stdio 和 error_logger 消息

发布于 2024-08-27 04:57:48 字数 133 浏览 4 评论 0原文

在花了很长时间让 rb 在远程 shell 上工作后,我想在远程 shell 上获取 stdio /错误记录器消息,我已经研究了更改 group_leader ,但似乎需要更改所有正在运行的进程的 group_leader ,我的实验发现它非常不稳定。

After spending a good while getting rb to work on a remote shell, I would like to get stdio / error logger messages on a remote shell, I have dug around changing group_leaders but it would seem to require changing the group_leader of all the running process, and my experiments have found that to be pretty unstable.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

も让我眼熟你 2024-09-03 04:57:48

最直接的方法是不要弄乱 erlang io 子系统,而是使用标准 ERTS 工具。
1 使用 stdin/stdout 包装器/记录器启动模拟器:

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

2 然后执行以下操作:

ssh localhost -tt to_erl /tmp/
  1. 使模拟器以附加到 stdin 的管道启动,并将 stdout 放入 /tmp 并将 stdin 和 stdout 的循环日志文件以及放入 /some/log/dir 的节点活动标记。 shell 活动的快速而肮脏的审核日志:)
  2. 连接到标准输入和标准输出管道。 “ssh -tt”的好处是在 shell 中完成工作。

有关更多提示,请参阅“$ERL_TOP/erts*/bin/start”以及“run_erl”和“to_erl”的手册页:
http://www.erlang.org/doc/man/run_erl.html

The most straightforward way would be to not to mess with erlang io subsystem, but to use standard ERTS tools.
1 Start emulator with stdin/stdout wrapper/logger:

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

2 Then do:

ssh localhost -tt to_erl /tmp/
  1. makes emulator to start with pipes attached to stdin and stdout placed into /tmp and circular log files of stdin and stdout plus node liveness marks placed into /some/log/dir. Quick and dirty audit log for shell activity :)
  2. connects to stdin and stdout pipes. Benefit of "ssh -tt" is working completion in shell.

For more hints see "$ERL_TOP/erts*/bin/start" and man page for 'run_erl' and 'to_erl':
http://www.erlang.org/doc/man/run_erl.html

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文