From e7f87b307ff3d203c1138d1417f81ede17c00254 Mon Sep 17 00:00:00 2001 From: Christian Weimann Date: Thu, 4 Jan 2024 10:12:46 +0100 Subject: [PATCH] Set js.lib logger --- equipmentMgr.js | 49 +++++++++++++++++++++++++------------------------ 1 file changed, 25 insertions(+), 24 deletions(-) diff --git a/equipmentMgr.js b/equipmentMgr.js index 1ef66a1..c41e3ba 100644 --- a/equipmentMgr.js +++ b/equipmentMgr.js @@ -1,5 +1,5 @@ -console.loggerName = 'js.equipmentMgr'; -console.log('Load equipmentMgr'); +const log = Java.type('org.slf4j.LoggerFactory').getLogger('js.equipmentMgr'); +log.info('Load equipmentMgr'); const { lib, @@ -27,7 +27,7 @@ class Equipment { throw(`Item ${this.equipmentItem.name} is not an equipment type`); } - console.info(`Initialization of equipment ${this.equipmentItem.name} with type ${this.constructor.name}`); + log.info(`Initialization of equipment ${this.equipmentItem.name} with type ${this.constructor.name}`); // Initialization of properties this.name = this.equipmentItem.name; @@ -61,9 +61,9 @@ class Equipment { let returnValue = defaultValue; if (items[valueItemName] == null) { // Return default value if item is missing - console.warn('Item ' + valueItemName + ' is missing'); + log.warn('Item ' + valueItemName + ' is missing'); } else if (items[valueItemName]['state'] == 'NULL') { // Return default value if item state is null - console.warn('Item ' + valueItemName + ' is unset') + log.warn('Item ' + valueItemName + ' is unset') } else { // Return value from item if (items[valueItemName].quantityState == null && items[valueItemName].numericState == null) { returnValue = items[valueItemName]['state']; @@ -74,7 +74,7 @@ class Equipment { } } - console.debug(`Return value for property ${propertyName} for ${this.name}: ${returnValue}`); + log.debug(`Return value for property ${propertyName} for ${this.name}: ${returnValue}`); return returnValue; } @@ -86,22 +86,22 @@ class Equipment { hasProperty(propertyName) { if (items[this.name + '_' + propertyName] == null) { - console.debug(`Equipment ${this.name} has no property ${propertyName}`) + log.debug(`Equipment ${this.name} has no property ${propertyName}`) return false; } return true; } #notifyLowBat() { - console.warn(`${this.name} has a low battery level.`); + log.warn(`${this.name} has a low battery level.`); } #notifyUnreach() { - console.warn(`${this.name} is offline.`); + log.warn(`${this.name} is offline.`); } gc() { - console.log('Denitialization of equipment ' + this.name); + log.info('Denitialization of equipment ' + this.name); // Cancel all timers this.timers.cancelAll(); @@ -147,7 +147,7 @@ class CCTV extends Equipment { items[this.getPropertyItemName('HomeMode')].sendCommandIfDifferent('OFF'); break; default: - console.log(mode + ' is not a valid mode for HomeMode'); + log.info(mode + ' is not a valid mode for HomeMode'); } } } @@ -158,7 +158,7 @@ class EnergyMeter extends Equipment { if (this.hasProperty('ConsumptionTotal')) { - console.log(`Create rule to trigger calculateConsumption function`); + log.info(`Create rule to trigger calculateConsumption function`); this.consumptionTotalItem = items[this.getPropertyItemName('ConsumptionTotal')]; rules.JSRule({ @@ -168,12 +168,12 @@ class EnergyMeter extends Equipment { execute: (event) => { this.#calculateConsumptionValues(event) }, }); } else { - console.info(`Item ${this.equipmentItem.name} has no consumptionTotal item`) + log.info(`Item ${this.equipmentItem.name} has no consumptionTotal item`) } } #calculateConsumptionValues() { - console.debug('Calculate EnergyMeter consumption values'); + log.debug('Calculate EnergyMeter consumption values'); let startOfHour = time.toZDT().withMinute(0).withSecond(0).withNano(0); let startOfDay = startOfHour.withHour(0); @@ -243,14 +243,14 @@ class Irrigation extends Equipment { try { this.valves[valve.name] = new IrrigationValve(valve); } catch (error) { - console.error(error); + log.error(error); } } } gc() { - console.info('Deinitialization of irrigation valves for ' + this.name); + log.info('Deinitialization of irrigation valves for ' + this.name); // Delete all watchObjects for (let valve of Object.keys(this.valves)) { @@ -262,14 +262,14 @@ class Irrigation extends Equipment { } #irrigationOn() { - console.info(`Irrigation ${this.name} received command on`); + log.info(`Irrigation ${this.name} received command on`); // Fetch valves with AutoMode enabled let autoValves = Object.keys(this.valves).filter(element => { return this.valves[element].getValue('AutoMode', 'OFF') == 'ON'} ); // Skip if no valves with AutoMode enabled are available if (autoValves.length == 0) { - console.info('No valves with AutoMode enabled available'); + log.info('No valves with AutoMode enabled available'); this.stateItem.sendCommandIfDifferent('OFF'); return; } @@ -305,12 +305,12 @@ class Irrigation extends Equipment { // Stop irrigation after the last valve if (nextValve == undefined) { - console.log('No further valves with autoMode enabled available'); + log.info('No further valves with autoMode enabled available'); this.timers.create( 'autoOff', endTime.plusSeconds(5), () => { - console.debug(`Switch irrigation ${this.name} to off`) + log.debug(`Switch irrigation ${this.name} to off`) this.stateItem.sendCommandIfDifferent('OFF'); } ); @@ -319,7 +319,7 @@ class Irrigation extends Equipment { } #irrigationOff() { - console.info(`Irrigation ${this.name} received command off`); + log.info(`Irrigation ${this.name} received command off`); this.timers.cancel('autoOff') @@ -411,7 +411,7 @@ for (let equipmentItem of items.getItems().filter(element => { return (element.s try { eMgr[equipmentItem.name] = eval(`new ${equipmentType}(equipmentItem)`); } catch (error) { - console.warn('Equipment ' + equipmentType + ' is not defined'); + log.warn('Equipment ' + equipmentType + ' is not defined'); eMgr[equipmentItem.name] = new Equipment(equipmentItem); } } @@ -419,11 +419,12 @@ for (let equipmentItem of items.getItems().filter(element => { return (element.s cache.shared.put('eMgr', eMgr); require('@runtime').lifecycleTracker.addDisposeHook(() => { - console.log('Deinitialization of equipmentMgr'); + log.info('Deinitialization of equipmentMgr'); watches.deleteAll(); for (let equipmentItemName of Object.keys(eMgr)) { eMgr[equipmentItemName].gc(); } -}); \ No newline at end of file +}); +