X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Ftypes%2FStatistics.ts;h=9601a90cb70e2ace501599190aba61f1d834c14a;hb=6c0215d2bf5a098aceed9e9d94d75d50ff2630db;hp=0ee58f750e2809c7d8e1d81cc119b0f237cb67ed;hpb=c27c3eeea356b0692bef2327bb59aa99f9cbad8d;p=e-mobility-charging-stations-simulator.git diff --git a/src/types/Statistics.ts b/src/types/Statistics.ts index 0ee58f75..9601a90c 100644 --- a/src/types/Statistics.ts +++ b/src/types/Statistics.ts @@ -1,25 +1,42 @@ -import { CircularArray } from '../utils/CircularArray'; +import type { CircularBuffer } from 'mnemonist' -export interface 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; +import type { WorkerData } from '../worker/index.js' +import type { IncomingRequestCommand, RequestCommand } from './ocpp/Requests.js' + +export interface TimestampedData { + timestamp: number + value: number +} + +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 default interface Statistics { - id: string; - URI: string; - createdAt: Date; - lastUpdatedAt?: Date; - statisticsData: Record; +export interface TemplateStatistics { + configured: number + provisioned: number + added: number + started: number + indexes: Set }