X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Ftypes%2FStatistics.ts;h=9601a90cb70e2ace501599190aba61f1d834c14a;hb=6c0215d2bf5a098aceed9e9d94d75d50ff2630db;hp=782adae2465611ae5daf649c48ae61937937f250;hpb=268a74bb051fcbbad532fd833f0d8fd2b33b6c64;p=e-mobility-charging-stations-simulator.git diff --git a/src/types/Statistics.ts b/src/types/Statistics.ts index 782adae2..9601a90c 100644 --- a/src/types/Statistics.ts +++ b/src/types/Statistics.ts @@ -1,33 +1,42 @@ -import type { IncomingRequestCommand, RequestCommand } from './ocpp/Requests'; -import type { CircularArray } from '../utils/CircularArray'; -import type { WorkerData } from '../worker'; +import type { CircularBuffer } from 'mnemonist' -export type TimeSeries = { - timestamp: number; - value: number; -}; +import type { WorkerData } from '../worker/index.js' +import type { IncomingRequestCommand, RequestCommand } from './ocpp/Requests.js' -export type StatisticsData = { - countRequest: number; - countResponse: number; - countError: number; - countTimeMeasurement: number; - timeMeasurementSeries: CircularArray; - currentTimeMeasurement: number; - minTimeMeasurement: number; - maxTimeMeasurement: number; - totalTimeMeasurement: number; - avgTimeMeasurement: number; - medTimeMeasurement: number; - ninetyFiveThPercentileTimeMeasurement: number; - stdDevTimeMeasurement: number; -}; +export interface TimestampedData { + timestamp: number + value: number +} -export type Statistics = { - id: string; - name: string; - uri: string; - createdAt: Date; - updatedAt?: Date; - statisticsData: Map>; -} & WorkerData; +export type StatisticsData = Partial<{ + requestCount: number + responseCount: number + errorCount: number + timeMeasurementCount: number + measurementTimeSeries: CircularBuffer | TimestampedData[] + currentTimeMeasurement: number + minTimeMeasurement: number + maxTimeMeasurement: number + totalTimeMeasurement: number + avgTimeMeasurement: number + medTimeMeasurement: number + ninetyFiveThPercentileTimeMeasurement: number + stdDevTimeMeasurement: number +}> + +export interface Statistics extends WorkerData { + id: string + name: string + uri: string + createdAt: Date + updatedAt?: Date + statisticsData: Map +} + +export interface TemplateStatistics { + configured: number + provisioned: number + added: number + started: number + indexes: Set +}