repositories
/
e-mobility-charging-stations-simulator.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
refactor: rename a template key to a more sensible name
[e-mobility-charging-stations-simulator.git]
/
src
/
performance
/
PerformanceStatistics.ts
diff --git
a/src/performance/PerformanceStatistics.ts
b/src/performance/PerformanceStatistics.ts
index 3ec065877281374cbab7dbe9e72aa744f0769587..b2333fded5f80ce1eba0c2638b08cb8ed8908ae2 100644
(file)
--- a/
src/performance/PerformanceStatistics.ts
+++ b/
src/performance/PerformanceStatistics.ts
@@
-1,8
+1,8
@@
// Partial Copyright Jerome Benoit. 2021-2023. All Rights Reserved.
// Partial Copyright Jerome Benoit. 2021-2023. All Rights Reserved.
+import { type PerformanceEntry, PerformanceObserver, performance } from 'node:perf_hooks';
import type { URL } from 'node:url';
import type { URL } from 'node:url';
-import { PerformanceEntry, PerformanceObserver, performance } from 'perf_hooks';
-import { parentPort } from 'worker_threads';
+import { parentPort } from 'node:worker_threads';
import { MessageChannelUtils } from '../charging-station';
import {
import { MessageChannelUtils } from '../charging-station';
import {
@@
-74,10
+74,10
@@
export class PerformanceStatistics {
) {
this.statistics.statisticsData.get(command).countRequest++;
} else {
) {
this.statistics.statisticsData.get(command).countRequest++;
} else {
- this.statistics.statisticsData.set(
-
command
,
- Object.assign({ countRequest: 1 }, this.statistics.statisticsData.get(command))
- );
+ this.statistics.statisticsData.set(
command, {
+
...this.statistics.statisticsData.get(command)
,
+ countRequest: 1,
+
}
);
}
break;
case MessageType.CALL_RESULT_MESSAGE:
}
break;
case MessageType.CALL_RESULT_MESSAGE:
@@
-87,10
+87,10
@@
export class PerformanceStatistics {
) {
this.statistics.statisticsData.get(command).countResponse++;
} else {
) {
this.statistics.statisticsData.get(command).countResponse++;
} else {
- this.statistics.statisticsData.set(
-
command
,
- Object.assign({ countResponse: 1 }, this.statistics.statisticsData.get(command))
- );
+ this.statistics.statisticsData.set(
command, {
+
...this.statistics.statisticsData.get(command)
,
+ countResponse: 1,
+
}
);
}
break;
case MessageType.CALL_ERROR_MESSAGE:
}
break;
case MessageType.CALL_ERROR_MESSAGE:
@@
-100,10
+100,10
@@
export class PerformanceStatistics {
) {
this.statistics.statisticsData.get(command).countError++;
} else {
) {
this.statistics.statisticsData.get(command).countError++;
} else {
- this.statistics.statisticsData.set(
-
command
,
- Object.assign({ countError: 1 }, this.statistics.statisticsData.get(command))
- );
+ this.statistics.statisticsData.set(
command, {
+
...this.statistics.statisticsData.get(command)
,
+ countError: 1,
+
}
);
}
break;
default:
}
break;
default:
@@
-125,9
+125,7
@@
export class PerformanceStatistics {
}
public stop(): void {
}
public stop(): void {
- if (this.displayInterval) {
- clearInterval(this.displayInterval);
- }
+ this.stopLogStatisticsInterval();
performance.clearMarks();
performance.clearMeasures();
this.performanceObserver?.disconnect();
performance.clearMarks();
performance.clearMeasures();
this.performanceObserver?.disconnect();
@@
-158,22
+156,34
@@
export class PerformanceStatistics {
}
private startLogStatisticsInterval(): void {
}
private startLogStatisticsInterval(): void {
- if (Configuration.getLogStatisticsInterval() > 0) {
+ const logStatisticsInterval = Configuration.getLogStatisticsInterval();
+ if (logStatisticsInterval > 0 && !this.displayInterval) {
this.displayInterval = setInterval(() => {
this.logStatistics();
this.displayInterval = setInterval(() => {
this.logStatistics();
- }, Configuration.getLogStatisticsInterval() * 1000);
+ }, logStatisticsInterval * 1000);
+ logger.info(
+ `${this.logPrefix()} logged every ${Utils.formatDurationSeconds(logStatisticsInterval)}`
+ );
+ } else if (this.displayInterval) {
logger.info(
logger.info(
- `${this.logPrefix()} logged every ${Utils.formatDurationSeconds(
- Configuration.getLogStatisticsInterval()
+ `${this.logPrefix()}
already
logged every ${Utils.formatDurationSeconds(
+ logStatisticsInterval
)}`
);
} else {
logger.info(
)}`
);
} else {
logger.info(
- `${this.logPrefix()} log interval is set to ${
Configuration.getLogStatisticsInterval()
?.toString()}. Not logging statistics`
+ `${this.logPrefix()} log interval is set to ${
logStatisticsInterval
?.toString()}. Not logging statistics`
);
}
}
);
}
}
+ private stopLogStatisticsInterval(): void {
+ if (this.displayInterval) {
+ clearInterval(this.displayInterval);
+ delete this.displayInterval;
+ }
+ }
+
private median(dataSet: number[]): number {
if (Array.isArray(dataSet) === true && dataSet.length === 1) {
return dataSet[0];
private median(dataSet: number[]): number {
if (Array.isArray(dataSet) === true && dataSet.length === 1) {
return dataSet[0];