|
4 | 4 | * Apache-2.0 |
5 | 5 | */ |
6 | 6 |
|
7 | | -var debug = false; |
| 7 | + |
| 8 | +const white = "\x1b[37m"; |
| 9 | +const Dim = "\x1b[2m"; |
| 10 | +const Reset = "\x1b[0m"; |
| 11 | +const Green = "\x1b[32m"; |
| 12 | +const Red = "\x1b[31m"; |
| 13 | +const Cyan = "\x1b[36m"; |
| 14 | +const Yellow = "\x1b[33m" |
| 15 | + |
| 16 | + |
| 17 | +const lvl_permanent = -1; |
| 18 | +const lvl_off = 0; |
| 19 | +const lvl_error = 1; |
| 20 | +const lvl_warning = 2; |
| 21 | +const lvl_info = 3; |
| 22 | +const lvl_debug = 4; |
| 23 | + |
| 24 | + |
| 25 | +var defaultLevel = 0; |
| 26 | +activeLevel = 0; |
| 27 | + |
| 28 | +const prefix ="<WMIOCLI>"; |
| 29 | + |
8 | 30 | function enableDebug(){ |
9 | | - debug = true; |
10 | | - } |
| 31 | + // console.log(Yellow + "ENABLED DEBUG" + Reset ); |
| 32 | + setLogLevel(lvl_debug); |
| 33 | +} |
| 34 | + |
| 35 | +function setLogLevel(inLevel){ |
| 36 | + |
| 37 | + activeLevel = inLevel; |
| 38 | + // console.log(Yellow + "SETTING ACTIVE LEVEL TO: " + inLevel ); |
| 39 | + // console.log(Yellow + "SETTING: " + activeLevel ); |
| 40 | +} |
11 | 41 |
|
12 | | -function message(inMessage) |
| 42 | +function message(inMessage,level) |
13 | 43 | { |
14 | | - if(debug==true){ |
15 | | - console.log("<WMIOCLI>." + inMessage); |
| 44 | + |
| 45 | + // console.log(Green + "DEBUG Level:" + level + Reset ); |
| 46 | + var message = inMessage; |
| 47 | + if(level==undefined)level = 4; |
| 48 | + if(level==lvl_permanent)console.log(message); |
| 49 | + else |
| 50 | + { |
| 51 | + // console.log(Green + "Using Level:" + level + Reset ); |
| 52 | + // console.log(Green + "Defau Level:" + defaultLevel + Reset ); |
| 53 | + |
| 54 | + |
| 55 | + if(level>activeLevel)return; |
| 56 | + switch (level) |
| 57 | + { |
| 58 | + case lvl_off: |
| 59 | + //Nothing to do |
| 60 | + break; |
| 61 | + |
| 62 | + case lvl_debug: |
| 63 | + message = Dim + "DEBUG:" + prefix +":"+ inMessage + Reset; |
| 64 | + console.log(message); |
| 65 | + break; |
| 66 | + |
| 67 | + case lvl_info: |
| 68 | + message = white + "INFO:" + prefix +":"+ inMessage + Reset; |
| 69 | + console.log(message); |
| 70 | + break; |
| 71 | + |
| 72 | + case lvl_warning: |
| 73 | + message = Yellow + "WARN:" + prefix +":"+ inMessage + Reset; |
| 74 | + console.log(message); |
| 75 | + break; |
| 76 | + |
| 77 | + case lvl_error: |
| 78 | + message = Red + "ERROR:" + prefix + inMessage + Reset; |
| 79 | + console.log(message); |
| 80 | + break; |
| 81 | + } |
| 82 | + |
16 | 83 | } |
| 84 | + |
| 85 | + |
| 86 | + |
| 87 | + |
17 | 88 | } |
18 | 89 |
|
19 | | -module.exports = { enableDebug, message }; |
| 90 | + |
| 91 | +module.exports = { enableDebug, message, setLogLevel }; |
0 commit comments