Rsyslog imfile 相当于 Android 非 root 吗?

Rsyslog imfile 相当于 Android 非 root 吗?

我使用的是 Android 13,并使用一个应用程序(不是我的应用程序)来生成包含数万行的 csv 日志文件。我试图以最简单、最高效的方式将这些日志条目发送到我的中央日志服务器。

我当前的解决方案是 termux 中的 bash 脚本,它逐行读取 csv 文件,并将该行通过管道传输到 netcat,netcat 将具有指定源端口的条目发送到日志服务器。

问题是 netcat 非常慢,每秒运行大约 10 个数据包(如 RFC 5426 中,每个数据包一条日志消息)。这意味着 10,000 行可能需要 15 分钟以上才能通过网络发送一个日志文件。我已经在类似的网络条件下测试了 rsyslog 的限制,它每秒可以处理 5,000 到 15,000 个数据包(日志文件有数十万行)。

显然,这不是最优方案。我的另一个想法是使用网络共享并将整个 csv 日志文件放入日志服务器可以访问的文件夹中。然后让日志服务器有一个脚本来使用 rsyslog 处理该文件。这性能更高,但设置更复杂,并且依赖于额外的设备、脚本,并在我的网络中创建相当不必要的通信通道。

对于非 root android 将日志文件发送到远程系统日志服务器的最佳(简单且高性能)解决方案是什么?

相关内容