【问题标题】:What would be the most efficient way to log a raspberry pi's data over ssh?通过 ssh 记录树莓派数据的最有效方法是什么?
【发布时间】:2018-06-12 07:38:32
【问题描述】:

我目前在树莓派上有一个 python 脚本,它在运行时在同一目录中创建一个日志文件,其中包含我想在笔记本电脑上实时查看的重要数据(我可以通过 ssh 进入 pi) .

显然我可以在使用文本编辑器 ssh 时在笔记本电脑上查看日志文件,但这不是实时数据流。

不幸的是,虽然我有相当多的 python 经验,但我对网络的东西知之甚少,除了我可以将文件 scp/rsync 到我的计算机上,但当然,这并不能让我实时查看我的日志文件。

【问题讨论】:

标签: logging ssh raspberry-pi file-transfer


【解决方案1】:

脑海中浮现出两个想法……

Unix syslog 工具允许分布​​式/远程日志记录。您可能会找到一个 Python 模块,或者您可以创建一个套接字并将消息发送到笔记本电脑上的syslogd。您甚至可以在紧要关头使用netcat 发送消息。 Related article

您可以在笔记本电脑上设置 Redis,并使用 Python Redis 模块将带时间标签的消息发送到队列或排序哈希,然后编写一个小脚本在笔记本电脑上的队列中等待。还可以为消息指定“生存时间” 或到期时间,这样内存需求就不会太高。 Related article


更简单的选择可能是将日志写入 Raspberry Pi 上的文件,然后根据笔记本电脑的操作系统,通过 NFS 或 Samba 与笔记本电脑共享该目录。然后您可以使用tailfollow (-f) 选项来查看最后几行的持续更新:

tail -f output.log

【讨论】:

    【解决方案2】:

    tail 常用于此,tail -f yourlogfile.log 将显示文件的最新十行并在文件更改时更新。

    【讨论】:

    【解决方案3】:

    网猫。

    在本地电脑上

    nc -l 2000
    

    远程

    tail -f filename | nc hostip 2000
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-03-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-12
      相关资源
      最近更新 更多