My_Logger_Util

Basic Logger Util for my UserScripts

当前为 2020-06-01 提交的版本,查看 最新版本

此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.cn-greasyfork.org/scripts/404462/811166/My_Logger_Util.js

  1. // ==UserScript==
  2. // @name My_Logger_Util
  3. // @namespace http://tampermonkey.net/
  4. // @version 1.0
  5. // @description Basic Logger Util for my UserScripts
  6. // @author Dylan Banta
  7. // @grant none
  8. // ==/UserScript==
  9.  
  10. /*
  11. add log function to userscript
  12. forceOn overload will not throw err if null
  13. if forceOn == true log will still appear
  14. function log(logs, forceOn){
  15. var debug = true;
  16. logger(logs, debug, forceOn);
  17. }
  18. */
  19.  
  20. //returns a 12 hour clock timestamp
  21. //MM/DD/YYYY HH:MM:SS AM/PM
  22. function timestamp() {
  23. var cd = new Date(); //current date
  24. var month = (cd.getMonth() + 1);
  25. var year = cd.getFullYear();
  26. var date = cd.getDate();
  27. var hours = cd.getHours();
  28. var min = cd.getMinutes();
  29. var sec = cd.getSeconds();
  30. var amBool = "AM";
  31.  
  32. if (hours == 0) {
  33. hours = 12; //0 is 12 am
  34. } else if (hours > 12) { //24 hour clock to 12 hour
  35. hours = hours - 12;
  36. amBool = "PM";
  37. }
  38.  
  39. if (min <= 9) {
  40. min = "0" + min;
  41. }
  42.  
  43. if (sec <= 9) {
  44. sec = "0" + sec;
  45. }
  46.  
  47. var stamp = month + "/"
  48. + date + "/"
  49. + year + " "
  50. + hours + ":"
  51. + min + ":"
  52. + sec + " "
  53. + amBool;
  54.  
  55. return stamp;
  56. }
  57.  
  58. //Custom console log, will output caller function and a timestamp in addition to each log
  59. //forceOn overload is not required, if passed true the logger will output even if debug is false
  60. function logger(logs, debug, forceOn) {
  61.  
  62. if (debug && forceOn != false || forceOn) { //if debug or forceOn are true
  63. var call = logger.caller.name; //get caller function
  64. var ts = timestamp(); //get a timestamp
  65.  
  66. //Log caller function, timestamp, and log logs
  67. console.log(
  68. "Log | " + logs
  69. + "\n Caller Function | " + call
  70. + "\n Timestamp | " + ts);
  71. }
  72. }