RDCOMClient 日志文件

RDCOMClient log file

我使用 RDCOMClient 与供应商软件交互已有一段时间了。在大多数情况下,它运行良好。然而,最近,我需要循环执行许多操作(数百个)。我 运行 遇到了 RDCOM.err 文件变得非常大(很容易达到 GB)的问题。该文件放在 C: 中,没有明显的选项可以更改它。有什么方法可以抑制此输出或指定文件的另一个位置?我不需要文件中的任何输出,因此最好将其抑制。

编辑:我试图将 file.remove 添加到我的脚本中,但 R 已锁定文件。释放锁的唯一方法是重新启动 R。

谢谢。

我找到了解决此问题的方法。我创建了文件 C:\RDCOM.err 和 C:\RDCOM_server.err 并将它们都标记为只读。我不确定是否有更好的方法来完成此操作,但目前我 运行 没有记录。

我建议将权限设置为只读。
一种稍微更优雅的方法是在 src/RUtils.h 中的包中编辑一行 C 代码 \#define errorLog(a,...) fprintf(getErrorFILE(), a, ##__VA_ARGS__); fflush(getErrorFILE()); \#define errorLog(a, ...) {}

但是,我已经对 github 上的包进行了一些简单的更新,添加了一个 writeErrors() 函数,可以用来切换是否写入错误。所以这允许它动态地打开和关闭。 所以 library(RDCOMClient) writeErrors(FALSE) 将关闭错误记录到文件。