gpt4 book ai didi

r - 脚本的日志名称 - futile.logger R

转载 作者:行者123 更新时间:2023-12-02 02:50:17 26 4
gpt4 key购买 nike

我正在使用包 futile.logger将日志消息写入文件 log.txt .
由于我的项目由 6 个脚本和 20-22 个函数组成,我希望记录一条消息,其中包含脚本名称和函数名称。
我创建了一个 Logging应该调用以记录消息的函数:

Logging<-function(level,message)
{
#' Logs event to a Log/log.txt files
#'
#' @param level: String, Message level: info,error,debug (NO CAPS LOCK)
#' @param message: String, Message you want to Log
#'
#' @return write the file with the message specified by the user.

flog.appender(appender.file(file.path(getwd(),'Log/logs.txt')))
eval(parse(text=sprintf("flog.%s('%s')",level,message)))
}

让我们假设一个名为 foo.R 的文件带功能 fun_1 :
    fun_1 <- function(input){
#doing some stuff
Logging("info","some log message")
}

其日志类似于:
INFO [date hours] some log message

我想要一条消息,其中还包含 Logging 的脚本名称。 Logging 被调用的函数和函数名函数被调用,即
 INFO foo fun_1 [date hours] some log message

谢谢

最佳答案

这有点晚了,但现在 futile.logger提供了这样的功能。

也就是说,你可以试试

fun_1 <- function() {

# doing some stuff
flog.info("some log message")}

然后在你的主文件中
require(futile.logger)
# create output layout based on documentation and your needs
layout <- layout.format('[~l] [~f] [~t] ~m')
# set the created output
flog.layout(layout)

flog.threshold(DEBUG)
fun_1()
flog.appender(appender.file("log_example.log")))

log_example.log它存储在项目的 wd 中,您可以检查您的输出

关于r - 脚本的日志名称 - futile.logger R,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52518536/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com