Advertisement
Pastebin_Paster

Computercraft Logging API

May 14th, 2025 (edited)
289
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.01 KB | None | 0 0
  1. --Variables
  2. logFile = "logFile.lua"
  3. logShowProgram = false
  4. logShowClearedMessage = true
  5.  
  6. logTimestampFormat = "[%s]"
  7. logDateTimeFormat = "%F %R"
  8. logProgramFormat = "[%s]"
  9. logClearedMessage = "--LOG CLEARED--"
  10. currentRunningProgram = nil
  11.  
  12. --Functions
  13. function filePath(path) logFile = tostring(path) end
  14. function setShowProgram(var) logShowProgram = var end
  15. function setShowClearedMessage(setVar) logShowClearedMessage = setVar end
  16. function setCurrentProgram(setvar) currentRunningProgram = setvar end
  17. function setClearedMessage(message) logClearedMessage = tostring(message) end
  18. function setProgramFormat(pFormat) logProgramFormat = pFormat end
  19. function setTimestampFormat(tFormat) logTimestampFormat = tFormat end
  20. function setDateTimeFormat(dFormat) logDateTimeFormat = dFormat end
  21.  
  22. function reset()
  23.     logFile = "logFile.lua"
  24.     logShowProgram = false
  25.     logShowClearedMessage = true
  26.  
  27.     logTimestampFormat = "[%s]"
  28.     logDateTimeFormat = "%F %R"
  29.     logProgramFormat = "[%s]"
  30.     logClearedMessage = "--LOG CLEARED--"
  31.     currentRunningProgram = nil
  32. end
  33.  
  34. function output(statement)
  35.     timeString = string.format(logTimestampFormat, os.date(logDateTimeFormat))
  36.     programString = string.format(logProgramFormat, currentRunningProgram)
  37.  
  38.     file = fs.open(logFile, "a")
  39.     if logShowProgram == true then
  40.         file.write(timeString..programString..": "..tostring(statement).."\n")
  41.     else
  42.         file.write(timeString..": "..tostring(statement).."\n")
  43.     end
  44.     file.close()
  45. end
  46.  
  47. function clear()
  48.     timeString = string.format(logTimestampFormat, os.date(logDateTimeFormat))
  49.     programString = string.format(logProgramFormat, currentRunningProgram)
  50.  
  51.     file = fs.open(logFile, "w")
  52.     if logShowProgram == true and logShowClearedMessage == true then
  53.         file.write(timeString..programString..": "..tostring(logClearedMessage).."\n")
  54.     elseif logShowClearedMessage == true then
  55.         file.write(timeString..": "..tostring(logClearedMessage).."\n")
  56.     end
  57.     file.close()
  58. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement