Fix webui
This commit is contained in:
parent
67847c3117
commit
b72937e8fb
28 changed files with 696 additions and 610 deletions
|
@ -1,12 +1,13 @@
|
|||
import { Component, OnInit, OnDestroy } from '@angular/core';
|
||||
import { ApiService } from '../../services/api.service';
|
||||
import { Component, OnDestroy, OnInit } from '@angular/core';
|
||||
import { distanceInWordsStrict, format, subSeconds } from 'date-fns';
|
||||
import * as _ from 'lodash';
|
||||
import 'rxjs/add/observable/timer';
|
||||
import 'rxjs/add/operator/map';
|
||||
import 'rxjs/add/operator/mergeMap';
|
||||
import 'rxjs/add/operator/timeInterval';
|
||||
import { Observable } from 'rxjs/Observable';
|
||||
import { Subscription } from 'rxjs/Subscription';
|
||||
import 'rxjs/add/observable/timer';
|
||||
import 'rxjs/add/operator/timeInterval';
|
||||
import 'rxjs/add/operator/mergeMap';
|
||||
import 'rxjs/add/operator/map';
|
||||
import { format, distanceInWordsStrict, subSeconds } from 'date-fns';
|
||||
import { ApiService } from '../../services/api.service';
|
||||
|
||||
@Component({
|
||||
selector: 'app-health',
|
||||
|
@ -15,11 +16,14 @@ import { format, distanceInWordsStrict, subSeconds } from 'date-fns';
|
|||
export class HealthComponent implements OnInit, OnDestroy {
|
||||
sub: Subscription;
|
||||
recentErrors: any;
|
||||
previousRecentErrors: any;
|
||||
pid: number;
|
||||
uptime: string;
|
||||
uptimeSince: string;
|
||||
averageResponseTime: string;
|
||||
exactAverageResponseTime: string;
|
||||
totalResponseTime: string;
|
||||
exactTotalResponseTime: string;
|
||||
codeCount: number;
|
||||
totalCodeCount: number;
|
||||
chartValue: any;
|
||||
|
@ -33,16 +37,22 @@ export class HealthComponent implements OnInit, OnDestroy {
|
|||
.mergeMap(() => this.apiService.fetchHealthStatus())
|
||||
.subscribe(data => {
|
||||
if (data) {
|
||||
this.recentErrors = data.recent_errors;
|
||||
this.chartValue = { count: data.average_response_time_sec, date: data.time };
|
||||
if (!_.isEqual(this.previousRecentErrors, data.recent_errors)) {
|
||||
this.previousRecentErrors = _.cloneDeep(data.recent_errors);
|
||||
this.recentErrors = data.recent_errors;
|
||||
}
|
||||
|
||||
this.chartValue = {count: data.average_response_time_sec, date: data.time};
|
||||
this.statusCodeValue = Object.keys(data.total_status_code_count)
|
||||
.map(key => ({ code: key, count: data.total_status_code_count[key] }));
|
||||
.map(key => ({code: key, count: data.total_status_code_count[key]}));
|
||||
|
||||
this.pid = data.pid;
|
||||
this.uptime = distanceInWordsStrict(subSeconds(new Date(), data.uptime_sec), new Date());
|
||||
this.uptimeSince = format(subSeconds(new Date(), data.uptime_sec), 'MM/DD/YYYY HH:mm:ss');
|
||||
this.totalResponseTime = data.total_response_time;
|
||||
this.averageResponseTime = data.average_response_time;
|
||||
this.uptimeSince = format(subSeconds(new Date(), data.uptime_sec), 'YYYY-MM-DD HH:mm:ss Z');
|
||||
this.totalResponseTime = distanceInWordsStrict(subSeconds(new Date(), data.total_response_time_sec), new Date());
|
||||
this.exactTotalResponseTime = data.total_response_time;
|
||||
this.averageResponseTime = Math.floor(data.average_response_time_sec * 1000) + ' ms';
|
||||
this.exactAverageResponseTime = data.average_response_time;
|
||||
this.codeCount = data.count;
|
||||
this.totalCodeCount = data.total_count;
|
||||
}
|
||||
|
@ -54,4 +64,8 @@ export class HealthComponent implements OnInit, OnDestroy {
|
|||
this.sub.unsubscribe();
|
||||
}
|
||||
}
|
||||
|
||||
trackRecentErrors(index, item): string {
|
||||
return item.status_code + item.method + item.host + item.path + item.time;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue