Advertisement
DanchiZZ

logger API 0.2

Jan 3rd, 2013
194
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. -- enum of logging levels
  2. local levels = { trace = 1, debug = 2, info = 3, error = 4, fatal = 5 }
  3.  
  4. -- initialization
  5. -- change modem's side
  6. rednet.open("right")
  7.  
  8. -- targets for logging
  9. -- you can add some things like os.time or label
  10. local function output(logLevel, message)
  11.   if logLevel >= levels.debug then
  12.     print(message)
  13.   end
  14.  
  15.   if logLevel >= levels.info then
  16.     rednet.broadcast(message)
  17.     -- rednet.send(id, message)
  18.   end
  19.  
  20.   if logLevel >= levels.trace then
  21.     -- writing to file
  22.   end
  23. end
  24.  
  25. -- output message rules
  26. function fatal(message)
  27.   output(levels.fatal, "FATAL "..message)
  28. end
  29.  
  30. function error(message)
  31.   output(levels.error, "ERROR "..message)
  32. end
  33.  
  34. function info(message)
  35.   output(levels.info, "INFO "..message)
  36. end
  37.  
  38. function debug(message)
  39.   output(levels.debug, "DEBUG "..message)
  40. end
  41.  
  42. function trace(message)
  43.   output(levels.trace, "TRACE "..message)
  44. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement