-import { Entity, PrimaryKey, Property } from '@mikro-orm/core';
+import { Entity, ManyToOne, PrimaryKey, Property } from '@mikro-orm/core'
-import { CircularArray } from '../../../utils/CircularArray';
+import { PerformanceRecord } from './PerformanceRecord.js'
@Entity()
export class PerformanceData {
- // @PrimaryKey()
- // pk!: number;
+ @PrimaryKey()
+ commandName!: string
- // @Property()
- // commandName: string;
+ @Property()
+ requestCount!: number
- // @Property()
- // countRequest: number;
+ @Property()
+ responseCount!: number
- // @Property()
- // countResponse: number;
+ @Property()
+ errorCount!: number
- // @Property()
- // countError: number;
+ @Property()
+ timeMeasurementCount!: number
- // @Property()
- // countTimeMeasurement: number;
+ @Property()
+ measurementTimeSeries!: number[]
- // @Property()
- // timeMeasurementSeries: CircularArray<number>;
+ @Property()
+ currentTimeMeasurement!: number
- // @Property()
- // currentTimeMeasurement: number;
+ @Property()
+ minTimeMeasurement!: number
- // @Property()
- // minTimeMeasurement: number;
+ @Property()
+ maxTimeMeasurement!: number
- // @Property()
- // maxTimeMeasurement: number;
+ @Property()
+ totalTimeMeasurement!: number
- // @Property()
- // totalTimeMeasurement: number;
+ @Property()
+ avgTimeMeasurement!: number
- // @Property()
- // avgTimeMeasurement: number;
+ @Property()
+ medTimeMeasurement!: number
- // @Property()
- // medTimeMeasurement: number;
+ @Property()
+ ninetyFiveThPercentileTimeMeasurement!: number
- // @Property()
- // ninetyFiveThPercentileTimeMeasurement: number;
+ @Property()
+ stdDevTimeMeasurement!: number
- // @Property()
- // stdDevTimeMeasurement: number;
+ @ManyToOne(() => PerformanceRecord)
+ performanceRecord!: PerformanceRecord
}