我有一個應用程序在R中記錄了一些信息。我正在使用logging
庫。我的問題是timestamp
沒有毫秒,我並不總是良好的日誌順序。在日誌文件中,R按照正確的順序放置日誌,但我使用logstash
和es
來記錄歷史記錄和進行監視。由於時間戳記我沒有正確的日誌順序,所以我想添加毫秒。在R中打印時間戳毫秒不起作用
我試過使用strptime
和%OS(n)
,但它似乎不起作用。如果我添加了%OS
,我得到NA
即使是簡單的事情:
strptime(Sys.time(), "%H:%M:%OS")
我已經看到有更多的帖子是這樣,但沒有答案,所以我在這裏張貼了這一點。我不得不說,我在Linux Ubuntu 14.04下使用R 3.2.0。如何解決它?如何在timestamp
有毫秒?
OK,使用strftime
後,我收到毫秒,但似乎他們總是爲0
我有一個日誌格式化器:
logFormatter <- function(record) {
sprintf('Application(%s) %s [%s] [] %s - %s', format(as.hexmode(Sys.getpid()), width = 8), record$levelname, strftime(record$timestamp, "%Y-%m-%dT%H:%M:%OS3"), record$logger, record$msg)
}
我已經添加了記錄:
addHandler(writeToFile, logger = "MyLogger", file = "/var/log/Application/logs.log", level = 'INFO', formatter = logFormatter)
我日誌是這樣的:
loginfo("some info X", logger = MyLogger)
但輸出似乎在第二的開頭總是:
Application(000018f3) INFO [2015-09-21T11:45:56.000] [] some info 1
Application(000018f3) INFO [2015-09-21T11:45:58.000] [] some info 2
Application(000018f3) INFO [2015-09-21T11:45:58.000] [] some info 3
Application(000018f3) INFO [2015-09-21T11:45:58.000] [] some info 4
Application(000018f3) INFO [2015-09-21T11:45:59.000] [] some info 5
謝謝,就是這樣! – sop
er ... nope,我的問題似乎是'記錄$ timestamp',它總是'HH:MM:SS.000'我該如何解決它? – sop
你可以寫一個'record $ timestamp'的例子嗎? – Nikos