首页 > 解决方案 > RDCOMClient 日志文件

问题描述

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

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

谢谢。

标签: rrdcomclient

解决方案


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

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


推荐阅读