feat(core): Workflow Execution Statistics (#4200)

Add recording and reporting of workflow execution statistics
This commit is contained in:
freya
2022-12-06 14:55:40 +00:00
committed by GitHub
parent b71295e4de
commit 1722c6b0c5
28 changed files with 908 additions and 66 deletions

View File

@@ -0,0 +1,32 @@
import { Column, Entity, RelationId, ManyToOne, PrimaryColumn } from 'typeorm';
import { datetimeColumnType } from './AbstractEntity';
import { WorkflowEntity } from './WorkflowEntity';
export enum StatisticsNames {
productionSuccess = 'production_success',
productionError = 'production_error',
manualSuccess = 'manual_success',
manualError = 'manual_error',
}
@Entity()
export class WorkflowStatistics {
@Column()
count: number;
@Column(datetimeColumnType)
latestEvent: Date;
@PrimaryColumn({ length: 128 })
name: StatisticsNames;
@ManyToOne(() => WorkflowEntity, (workflow) => workflow.shared, {
primary: true,
onDelete: 'CASCADE',
})
workflow: WorkflowEntity;
@RelationId((workflowStatistics: WorkflowStatistics) => workflowStatistics.workflow)
@PrimaryColumn()
workflowId: number;
}