From 5d0266edd0cbfd95f9cf4fd048ccf4791c4a84f1 Mon Sep 17 00:00:00 2001 From: mbensass Date: Sat, 8 May 2021 13:41:54 +0200 Subject: [PATCH] feature/add-metric-request --- src/app/pages/cluster/cluster.component.ts | 22 ----------- .../namespace/create/namespace.component.ts | 2 +- .../functions/details/details.component.ts | 2 +- .../functions/metrics/metrics.component.ts | 37 ++++++++++--------- .../functions/metrics/metrics.template.html | 14 +++---- 5 files changed, 29 insertions(+), 48 deletions(-) diff --git a/src/app/pages/cluster/cluster.component.ts b/src/app/pages/cluster/cluster.component.ts index 213eede..19c1709 100644 --- a/src/app/pages/cluster/cluster.component.ts +++ b/src/app/pages/cluster/cluster.component.ts @@ -91,26 +91,4 @@ export class ClusterComponent extends ComponentBase implements OnInit, OnDestroy this.subscriptions.push(deleteClusterById); } - uninstallCuster(id: any) { - this.isDeleting = true; - this.idToDelete = id; - const deleteClusterById = this.clusterService.uninstallClusterById(id).pipe( - tap(() => { - this.clusters.forEach((cluster: Cluster) => { - if (cluster.id === id) { - cluster.status = Object.assign(cluster.status, { - status: 'Removing' - }); - } - }); - }), - delay(1000 * 10), - mergeMap((deleteResult: any) => { - return this.clusterService.getClusters(); - })).subscribe((clusters: Cluster[]) => { - this.clusters = clusters; - this.receives(); - }); - this.subscriptions.push(deleteClusterById); - } } diff --git a/src/app/pages/namespace/create/namespace.component.ts b/src/app/pages/namespace/create/namespace.component.ts index 6dcf0ed..ccbe0f3 100644 --- a/src/app/pages/namespace/create/namespace.component.ts +++ b/src/app/pages/namespace/create/namespace.component.ts @@ -28,7 +28,7 @@ export class NamespaceCreateComponent extends ComponentBase implements OnInit, O ngOnInit() { this.receiving(); const getClusters = this.clusterService.getClusters().subscribe((clusters$: Cluster[]) => { - this.clusters = clusters$.map((c: Cluster) => { + this.clusters = clusters$.filter((c:Cluster)=>c.status.status === 'Active').map((c: Cluster) => { return { id: c.id, text: c.name, diff --git a/src/app/pages/namespace/functions/details/details.component.ts b/src/app/pages/namespace/functions/details/details.component.ts index 90f3790..0026b7e 100644 --- a/src/app/pages/namespace/functions/details/details.component.ts +++ b/src/app/pages/namespace/functions/details/details.component.ts @@ -26,7 +26,7 @@ export class DetailsComponent extends ComponentBase implements OnInit, OnDestroy replicas: ReplicasStatus[]; isError: boolean = false; events: Events[] = []; - private interval$ = timer(0, 1000 * 10); + private interval$ = timer(0, 1000 * 30);//1000 * 10 constructor(protected functionService: FunctionService, private metricsService: MetricsService) { diff --git a/src/app/pages/namespace/functions/metrics/metrics.component.ts b/src/app/pages/namespace/functions/metrics/metrics.component.ts index 62b4c85..a808db5 100644 --- a/src/app/pages/namespace/functions/metrics/metrics.component.ts +++ b/src/app/pages/namespace/functions/metrics/metrics.component.ts @@ -16,8 +16,8 @@ export class MetricsComponent extends ComponentBase implements OnInit, OnDestroy @Input('namespace') namespace: string; @Input('functions') functions: Functions; - metrics: { memoryUsage?, memoryRequests?, memoryLimits?, networkTransit?, networkReceive?, cpuUsage?, fsUsage? ,cpuLimits?} = {}; - private interval$ = timer(0, 1000 * 10); + metrics: { memoryUsage?, memoryRequests?, memoryLimits?, countSentSuccess?, countSentFailure?,requestTime?, cpuUsage?, fsUsage? ,cpuLimits?} = {}; + private interval$ = timer(0, 1000 * 30);//TODO 1000 * 10 constructor(private functionService: FunctionService, private metricsService: MetricsService) { @@ -36,20 +36,14 @@ export class MetricsComponent extends ComponentBase implements OnInit, OnDestroy return this.metricsService.formateMemory(value); } - get networkReceive() { - const value = this.metrics.networkReceive; - return this.metricsService.formateMemory(value); + get countSentSuccess() { + return this.metrics.countSentSuccess || 0; } - get networkTransit() { - const value = this.metrics.networkTransit; - return this.metricsService.formateMemory(value); + get countSentFailure() { + return this.metrics.countSentFailure || 0; } - get fsUsage() { - const value = this.metrics.fsUsage; - return this.metricsService.formateMemory(value); - } get cpuUsage() { const value = this.metrics.cpuUsage; @@ -66,17 +60,15 @@ export class MetricsComponent extends ComponentBase implements OnInit, OnDestroy return ((this.metrics.memoryUsage * 100) / this.metrics.memoryRequests); } - get networkProgressbar() { - return ((this.metrics.networkReceive * 100) / 10000); + get requestTime() { + return this.metrics.requestTime || 0; } get cpuUsageProgressbar() { return ((this.metrics.cpuUsage * 100) / 10000); } - get fsUsageProgressbar() { - return ((this.metrics.fsUsage * 100) / 10000000000); - } + getProgressbarTye(progressbar: number) { @@ -90,6 +82,17 @@ export class MetricsComponent extends ComponentBase implements OnInit, OnDestroy return 'danger'; } } + getProgressbarRequestTime(progressbar: number) { + if (progressbar < 100) { + return 'primary'; + } + if (progressbar >= 100 && progressbar < 400) { + return 'warning'; + } + if (progressbar >= 400) { + return 'danger'; + } + } ngOnInit(): void { this.subscriptions.push(this.receivingMetrics()); diff --git a/src/app/pages/namespace/functions/metrics/metrics.template.html b/src/app/pages/namespace/functions/metrics/metrics.template.html index 0bff634..1bebe67 100644 --- a/src/app/pages/namespace/functions/metrics/metrics.template.html +++ b/src/app/pages/namespace/functions/metrics/metrics.template.html @@ -7,7 +7,7 @@ {{cpuUsage}} / {{cpuLimits}}
- +
Mem @@ -17,18 +17,18 @@
- Network - {{networkReceive}}   {{networkTransit}} + Request Count + {{countSentSuccess}} {{countSentFailure}}
- +
- Filesystem - {{fsUsage}}   + Request Time + {{requestTime}} ms
- +