Skip to content

Commit

Permalink
fix: EZSP: change logging levels (#1013)
Browse files Browse the repository at this point in the history
  • Loading branch information
kirovilya authored Apr 8, 2024
1 parent 443bee1 commit 66a4b33
Show file tree
Hide file tree
Showing 4 changed files with 78 additions and 78 deletions.
74 changes: 37 additions & 37 deletions src/adapter/ezsp/driver/driver.ts
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ import {ParamsDesc} from './commands';
import {EZSPAdapterBackup} from '../adapter/backup';
import {logger} from '../../../utils/logger';

const NS = 'zh:ezsp:driver';
const NS = 'zh:ezsp:driv';

interface AddEndpointParameters {
endpoint?: number,
Expand Down Expand Up @@ -110,42 +110,42 @@ export class Driver extends EventEmitter {
* @returns
*/
public async reset(): Promise<void> {
logger.info(`Reset connection.`, NS);
logger.debug(`Reset connection.`, NS);

try {
// don't emit 'close' on stop since we don't want this to bubble back up as 'disconnected' to the controller.
await this.stop(false);
} catch (err) {
logger.error(`Stop error ${err.stack}`, NS);
logger.debug(`Stop error ${err.stack}`, NS);
}
try {
await Wait(1000);
logger.info(`Startup again.`, NS);
logger.debug(`Startup again.`, NS);
await this.startup();
} catch (err) {
logger.error(`Reset error ${err.stack}`, NS);
logger.debug(`Reset error ${err.stack}`, NS);

try {
// here we let emit
await this.stop();
} catch (stopErr) {
logger.error(`Failed to stop after failed reset ${stopErr.stack}`, NS);
logger.debug(`Failed to stop after failed reset ${stopErr.stack}`, NS);
}
}
}

private async onEzspReset(): Promise<void> {
logger.info('onEzspReset()', NS);
logger.debug('onEzspReset()', NS);
await this.reset();
}

private onEzspClose(): void {
logger.info('onEzspClose()', NS);
logger.debug('onEzspClose()', NS);
this.emit('close');
}

public async stop(emitClose: boolean = true): Promise<void> {
logger.info('Stopping driver', NS);
logger.debug('Stopping driver', NS);

if (this.ezsp) {
return this.ezsp.close(emitClose);
Expand All @@ -162,7 +162,7 @@ export class Driver extends EventEmitter {
try {
await this.ezsp.connect(this.serialOpt);
} catch (error) {
logger.error(`EZSP could not connect: ${error.cause ?? error}`, NS);
logger.debug(`EZSP could not connect: ${error.cause ?? error}`, NS);

throw error;
}
Expand Down Expand Up @@ -204,7 +204,7 @@ export class Driver extends EventEmitter {
[special, verInfo] = uint8_t.deserialize(uint8_t, verInfo);
/* eslint-enable prefer-const */
const vers = `${major}.${minor}.${patch}.${special} build ${build}`;
logger.info(`EmberZNet version: ${vers}`, NS);
logger.debug(`EmberZNet version: ${vers}`, NS);
this.version = {
product: this.ezsp.ezspV,
majorrel: `${major}`,
Expand All @@ -219,7 +219,7 @@ export class Driver extends EventEmitter {

const res = await this.ezsp.execCommand('networkState');

logger.info(`Network state ${res.status}`, NS);
logger.debug(`Network state ${res.status}`, NS);

if (res.status == EmberNetworkStatus.JOINED_NETWORK) {
logger.info(`Leaving current network and forming new network`, NS);
Expand All @@ -245,7 +245,7 @@ export class Driver extends EventEmitter {
}

const state = (await this.ezsp.execCommand('networkState')).status;
logger.info(`Network state ${state}`, NS);
logger.debug(`Network state ${state}`, NS);

const netParams = await this.ezsp.execCommand('getNetworkParameters');

Expand All @@ -254,19 +254,19 @@ export class Driver extends EventEmitter {
}

this.networkParams = netParams.parameters;
logger.info(`Node type: ${netParams.nodeType}, Network parameters: ${this.networkParams}`, NS);
logger.debug(`Node type: ${netParams.nodeType}, Network parameters: ${this.networkParams}`, NS);

const nwk = (await this.ezsp.execCommand('getNodeId')).nodeId;
const ieee = (await this.ezsp.execCommand('getEui64')).eui64;
this.ieee = new EmberEUI64(ieee);
logger.info('Network ready', NS);
logger.debug('Network ready', NS);
this.ezsp.on('frame', this.handleFrame.bind(this));
this.handleNodeJoined(nwk, this.ieee);
logger.info(`EZSP nwk=${nwk}, IEEE=0x${this.ieee}`, NS);
logger.debug(`EZSP nwk=${nwk}, IEEE=0x${this.ieee}`, NS);
const linkResult = await this.getKey(EmberKeyType.TRUST_CENTER_LINK_KEY);
logger.info(`TRUST_CENTER_LINK_KEY: ${JSON.stringify(linkResult)}`, NS);
logger.debug(`TRUST_CENTER_LINK_KEY: ${JSON.stringify(linkResult)}`, NS);
const netResult = await this.getKey(EmberKeyType.CURRENT_NETWORK_KEY);
logger.info(`CURRENT_NETWORK_KEY: ${JSON.stringify(netResult)}`, NS);
logger.debug(`CURRENT_NETWORK_KEY: ${JSON.stringify(netResult)}`, NS);

await Wait(1000);
await this.ezsp.execCommand('setManufacturerCode', {code: DEFAULT_MFG_ID});
Expand All @@ -284,7 +284,7 @@ export class Driver extends EventEmitter {
valid = valid && (await this.ezsp.networkInit());
const netParams = await this.ezsp.execCommand('getNetworkParameters');
const networkParams = netParams.parameters;
logger.info(`Current Node type: ${netParams.nodeType}, Network parameters: ${networkParams}`, NS);
logger.debug(`Current Node type: ${netParams.nodeType}, Network parameters: ${networkParams}`, NS);
valid = valid && (netParams.status == EmberStatus.SUCCESS);
valid = valid && (netParams.nodeType == EmberNodeType.COORDINATOR);
valid = valid && (options.panID == networkParams.panId);
Expand Down Expand Up @@ -401,7 +401,7 @@ export class Driver extends EventEmitter {
}
case (frameName === 'macFilterMatchMessageHandler'): {
const [rawFrame, data] = EmberIeeeRawFrame.deserialize(EmberIeeeRawFrame, frame.message);
logger.info(`macFilterMatchMessageHandler frame message: ${rawFrame}`, NS);
logger.debug(`macFilterMatchMessageHandler frame message: ${rawFrame}`, NS);
this.emit('incomingMessage', {
messageType: null,
apsFrame: rawFrame,
Expand All @@ -416,7 +416,7 @@ export class Driver extends EventEmitter {
break;
}
case (frameName === 'stackStatusHandler'): {
logger.info(`stackStatusHandler: ${EmberStatus.valueToName(EmberStatus, frame.status)}`, NS);
logger.debug(`stackStatusHandler: ${EmberStatus.valueToName(EmberStatus, frame.status)}`, NS);
break;
}
// case (frameName === 'childJoinHandler'): {
Expand All @@ -441,14 +441,14 @@ export class Driver extends EventEmitter {
// <=== Application frame 155 (zigbeeKeyEstablishmentHandler) received: 2ebd08feff9ffd9006 +2ms
// <=== Application frame 155 (zigbeeKeyEstablishmentHandler) parsed: 144,253,159,255,254,8,189,46,6 +2ms
// Unhandled frame zigbeeKeyEstablishmentHandler
logger.info(`Unhandled frame ${frameName}`, NS);
logger.debug(`Unhandled frame ${frameName}`, NS);
}
}

private handleRouteRecord(nwk: number, ieee: EmberEUI64 | number[], lqi: number, rssi: number,
relays: number): void {
// todo
logger.info(
logger.debug(
`handleRouteRecord: nwk=${nwk}, ieee=${ieee.toString()}, lqi=${lqi}, rssi=${rssi}, relays=${relays}`,
NS,
);
Expand All @@ -462,7 +462,7 @@ export class Driver extends EventEmitter {

private handleRouteError(status: EmberStatus, nwk: number): void {
// todo
logger.info(`handleRouteError: nwk=${nwk}, status=${status}`, NS);
logger.debug(`handleRouteError: nwk=${nwk}, status=${status}`, NS);
//this.waitress.reject({address: nwk, payload: null, frame: null}, 'Route error');
// const ieee = await this.networkIdToEUI64(nwk);
// this.eui64ToRelays.set(ieee.toString(), null);
Expand All @@ -479,7 +479,7 @@ export class Driver extends EventEmitter {
// "target":50564
// }
// https://docs.silabs.com/d/zigbee-stack-api/7.4.0/message#ember-incoming-network-status-handler
logger.info(`handleNetworkStatus: nwk=${nwk}, errorCode=${errorCode}`, NS);
logger.debug(`handleNetworkStatus: nwk=${nwk}, errorCode=${errorCode}`, NS);
}

private handleNodeLeft(nwk: number, ieee: EmberEUI64 | number[]): void {
Expand All @@ -506,7 +506,7 @@ export class Driver extends EventEmitter {
for(const rec of IEEE_PREFIX_MFG_ID) {
if ((Buffer.from((ieee as EmberEUI64).value)).indexOf(Buffer.from(rec.prefix)) == 0) {
// set ManufacturerCode
logger.info(`handleNodeJoined: change ManufacturerCode for ieee ${ieee} to ${rec.mfgId}`, NS);
logger.debug(`handleNodeJoined: change ManufacturerCode for ieee ${ieee} to ${rec.mfgId}`, NS);
// eslint-disable-next-line @typescript-eslint/no-floating-promises
this.resetMfgId(rec.mfgId);
break;
Expand Down Expand Up @@ -572,15 +572,15 @@ export class Driver extends EventEmitter {
if ([EmberStatus.MAX_MESSAGE_LIMIT_REACHED, EmberStatus.NO_BUFFERS, EmberStatus.NETWORK_BUSY]
.includes(sendResult.status)) {
// need to repeat after pause
logger.info(`Request send status ${sendResult.status}. Attempt to repeat the request`, NS);
logger.error(`Request send status ${sendResult.status}. Attempt to repeat the request`, NS);

await Wait(delay);
} else {
result = (sendResult.status == EmberStatus.SUCCESS);
break;
}
} catch (e) {
logger.error(`Request error ${e}: ${e.stack}`, NS);
logger.debug(`Request error ${e}: ${e.stack}`, NS);
break;
}
}
Expand All @@ -606,7 +606,7 @@ export class Driver extends EventEmitter {
await this.ezsp.execCommand('sendRawMessage', {message: msgData});
return true;
} catch (e) {
logger.error(`Request error ${e}: ${e.stack}`, NS);
logger.debug(`Request error ${e}: ${e.stack}`, NS);
return false;
}
}
Expand All @@ -618,7 +618,7 @@ export class Driver extends EventEmitter {
await this.ezsp.execCommand('sendRawMessage', {message: msgData});
return true;
} catch (e) {
logger.error(`Request error ${e}: ${e.stack}`, NS);
logger.debug(`Request error ${e}: ${e.stack}`, NS);
return false;
}
}
Expand Down Expand Up @@ -674,7 +674,7 @@ export class Driver extends EventEmitter {
const requestName = EmberZDOCmd.valueName(EmberZDOCmd, requestCmd);
const responseName = EmberZDOCmd.valueName(EmberZDOCmd, responseCmd);

logger.info(`ZDO ${requestName} params: ${JSON.stringify(params)}`, NS);
logger.debug(`ZDO ${requestName} params: ${JSON.stringify(params)}`, NS);

const frame = this.makeApsFrame(requestCmd as number, false);
const payload = this.makeZDOframe(requestCmd as number, {transId: frame.sequence, ...params});
Expand All @@ -689,16 +689,16 @@ export class Driver extends EventEmitter {

const response = await waiter.start().promise;

logger.info(`${responseName} frame: ${JSON.stringify(response.payload)}`, NS);
logger.debug(`${responseName} frame: ${JSON.stringify(response.payload)}`, NS);

const result = new EZSPZDOResponseFrameData(responseCmd as number, response.payload);

logger.info(`${responseName} parsed: ${JSON.stringify(result)}`, NS);
logger.debug(`${responseName} parsed: ${JSON.stringify(result)}`, NS);

return result;
} catch (e) {
this.waitress.remove(waiter.ID);
logger.error(`zdoRequest error: ${e} ${e.stack}`, NS);
logger.debug(`zdoRequest error: ${e} ${e.stack}`, NS);

throw e;
}
Expand Down Expand Up @@ -768,7 +768,7 @@ export class Driver extends EventEmitter {
inputClusterList: inputClusters,
outputClusterList: outputClusters,
});
logger.info(`Ezsp adding endpoint: ${JSON.stringify(res)}`, NS);
logger.debug(`Ezsp adding endpoint: ${JSON.stringify(res)}`, NS);
}

public waitFor(address: number, clusterId: number, sequence: number, timeout = 10000)
Expand Down Expand Up @@ -927,8 +927,8 @@ export class Driver extends EventEmitter {
//valid = valid && (await this.ezsp.networkInit());
const netParams = await this.ezsp.execCommand('getNetworkParameters');
const networkParams = netParams.parameters;
logger.info(`Current Node type: ${netParams.nodeType}, Network parameters: ${networkParams}`, NS);
logger.info(`Backuped network parameters: ${backup.networkOptions}`, NS);
logger.debug(`Current Node type: ${netParams.nodeType}, Network parameters: ${networkParams}`, NS);
logger.debug(`Backuped network parameters: ${backup.networkOptions}`, NS);
const networkKey = await this.getKey(EmberKeyType.CURRENT_NETWORK_KEY);
let netKey: Buffer = null;
if (this.ezsp.ezspV < 13) {
Expand Down
Loading

0 comments on commit 66a4b33

Please sign in to comment.