@esfaenza/admin-module 20.3.19 → 20.3.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.d.ts CHANGED
@@ -1,32 +1,33 @@
1
- import * as i28 from '@angular/router';
2
- import { ActivatedRoute, CanMatchFn } from '@angular/router';
3
- import * as i14 from '@angular/common';
1
+ import * as i32 from '@angular/router';
2
+ import { ActivatedRoute, Router, CanMatchFn } from '@angular/router';
3
+ import * as i18 from '@angular/common';
4
4
  import { Location } from '@angular/common';
5
- import * as i20 from '@esfaenza/localizations';
5
+ import * as i24 from '@esfaenza/localizations';
6
6
  import { LocalizationService } from '@esfaenza/localizations';
7
7
  import { PreferencesService } from '@esfaenza/preferences';
8
- import * as i21 from '@esfaenza/extensions';
8
+ import * as i25 from '@esfaenza/extensions';
9
9
  import { MessageService, ClipboardService, InterComService, UtilityService, DateService, ExportService } from '@esfaenza/extensions';
10
- import * as i22 from '@esfaenza/es-table';
10
+ import * as i26 from '@esfaenza/es-table';
11
11
  import { AppSearch, GenericItem, EsTableOperationDefinition, ItemsSelection } from '@esfaenza/es-table';
12
12
  import * as i0 from '@angular/core';
13
- import { Injector, NgZone, EventEmitter, PipeTransform, InjectionToken } from '@angular/core';
13
+ import { Injector, ElementRef, OnInit, OnChanges, OnDestroy, EventEmitter, NgZone, PipeTransform, InjectionToken } from '@angular/core';
14
14
  import { HTTPService } from '@esfaenza/httpservice';
15
+ import { Observable, ReplaySubject } from 'rxjs';
15
16
  import { KeyValue as KeyValue$1 } from '@esfaenza/core/domain';
16
- import * as i25 from '@esfaenza/es-charts';
17
+ import * as i29 from '@esfaenza/es-charts';
17
18
  import { DateValue, LineChartData, PieChartData, LineSerie, BaseChartComponent } from '@esfaenza/es-charts';
18
- import * as i15 from '@angular/forms';
19
+ import * as i19 from '@angular/forms';
19
20
  import { NgForm } from '@angular/forms';
20
- import * as i16 from 'ngx-bootstrap/modal';
21
+ import * as i20 from 'ngx-bootstrap/modal';
21
22
  import { ModalDirective } from 'ngx-bootstrap/modal';
22
- import { ReplaySubject } from 'rxjs';
23
- import * as i17 from 'ngx-bootstrap/tooltip';
24
- import * as i18 from 'ngx-bootstrap/dropdown';
25
- import * as i19 from '@esfaenza/ngx-contextmenu';
26
- import * as i23 from '@esfaenza/forms-and-validations';
27
- import * as i24 from '@esfaenza/gertrude';
28
- import * as i26 from '@esfaenza/core/components';
29
- import * as i27 from '@esfaenza/core/directives';
23
+ import { SafeHtml, DomSanitizer } from '@angular/platform-browser';
24
+ import * as i21 from 'ngx-bootstrap/tooltip';
25
+ import * as i22 from 'ngx-bootstrap/dropdown';
26
+ import * as i23 from '@esfaenza/ngx-contextmenu';
27
+ import * as i27 from '@esfaenza/forms-and-validations';
28
+ import * as i28 from '@esfaenza/gertrude';
29
+ import * as i30 from '@esfaenza/core/components';
30
+ import * as i31 from '@esfaenza/core/directives';
30
31
 
31
32
  declare class Audit {
32
33
  timestamp: Date;
@@ -235,6 +236,7 @@ declare class TopActivityV2Table {
235
236
  from: string;
236
237
  to: string;
237
238
  activity: number;
239
+ estimated: boolean;
238
240
  items: TopActivityV2TableItem[];
239
241
  }
240
242
  declare class TopActivityV2Response {
@@ -242,6 +244,7 @@ declare class TopActivityV2Response {
242
244
  to: string;
243
245
  dimension: TopActivityDimension;
244
246
  dataSource: TopActivityDataSource;
247
+ estimated: boolean;
245
248
  bucketSeconds: number;
246
249
  times: string[];
247
250
  components: TopActivityV2Component[];
@@ -365,6 +368,266 @@ declare class ProfilerDataNodesView extends AppSearch<ProfilerDataNode> {
365
368
  filterglobal: boolean;
366
369
  }
367
370
 
371
+ declare enum ProfilerOrderBy {
372
+ Time = 0,
373
+ TimeLessChildren = 1,
374
+ Calls = 2,
375
+ AvgTime = 3,
376
+ PeakTime = 4,
377
+ SnapDeltaTime = 5,
378
+ SnapDeltaTimeLessChildren = 6,
379
+ SnapDeltaCalls = 7,
380
+ ActiveThreads = 8
381
+ }
382
+ declare class ProfilerV2Request {
383
+ realTime?: boolean;
384
+ global?: boolean;
385
+ instanceId?: string;
386
+ snapFrom?: string;
387
+ snapTo?: string;
388
+ }
389
+ declare class ProfilerV2TreeRequest extends ProfilerV2Request {
390
+ rootNodeId?: string;
391
+ maxDepth?: number;
392
+ maxChildren?: number;
393
+ minPercentage?: number;
394
+ orderBy?: ProfilerOrderBy;
395
+ search?: string;
396
+ }
397
+ declare class ProfilerV2NodeRequest extends ProfilerV2Request {
398
+ nodeId: string;
399
+ }
400
+ declare class ProfilerV2FlatRequest extends ProfilerV2Request {
401
+ orderBy?: ProfilerOrderBy;
402
+ top?: number;
403
+ search?: string;
404
+ eventType?: string;
405
+ includeIdle?: boolean;
406
+ }
407
+
408
+ declare class ProfilerV2PathItem {
409
+ nodeId: string;
410
+ nodeName: string;
411
+ eventTypeName: string;
412
+ waitClassName: string;
413
+ }
414
+ declare class ProfilerV2Node {
415
+ nodeId: string;
416
+ parentNodeId: string;
417
+ nodeName: string;
418
+ eventTypeName: string;
419
+ waitClassName: string;
420
+ numInstances: number;
421
+ children: ProfilerV2Node[];
422
+ calls: number;
423
+ time: number;
424
+ timeLessChildren: number;
425
+ avgTime: number;
426
+ peakTime: number;
427
+ minTime: number;
428
+ percentage: number;
429
+ parentPercentage: number;
430
+ snapDeltaCalls: number;
431
+ snapDeltaTime: number;
432
+ snapDeltaTimeLessChildren: number;
433
+ snapDeltaAvgTime: number;
434
+ snapPeakTime: number;
435
+ snapMinTime: number;
436
+ snapPercentage: number;
437
+ snapParentPercentage: number;
438
+ level: number;
439
+ numChildren: number;
440
+ omittedChildren: number;
441
+ omittedCalls: number;
442
+ omittedTime: number;
443
+ omittedSnapDeltaTime: number;
444
+ searchMatch: boolean;
445
+ activeThreads: number;
446
+ activeMaxTime: number;
447
+ lastExitTime: string;
448
+ }
449
+ declare class ProfilerV2Tree {
450
+ snapFrom: string;
451
+ snapTo: string;
452
+ idleNode: ProfilerV2Node;
453
+ rootPath: ProfilerV2PathItem[];
454
+ numNodes: number;
455
+ numReturnedNodes: number;
456
+ truncated: boolean;
457
+ }
458
+ declare class ProfilerV2ActiveSession {
459
+ timestamp: string;
460
+ activity: number;
461
+ }
462
+ declare class ProfilerV2InstanceStats {
463
+ instanceId: string;
464
+ executions: number;
465
+ elapsedTime: number;
466
+ elapsedTimeLessChildren: number;
467
+ activeThreads: number;
468
+ }
469
+ declare class ProfilerV2NodeStats {
470
+ nodeId: string;
471
+ nodeName: string;
472
+ eventTypeName: string;
473
+ waitClassName: string;
474
+ parentNodeId: string;
475
+ fullWaitStack: ProfilerV2PathItem[];
476
+ numChildren: number;
477
+ numDescendants: number;
478
+ foundInInstanceIds: string[];
479
+ instances: ProfilerV2InstanceStats[];
480
+ executions: number;
481
+ elapsedTime: number;
482
+ elapsedTimeLessChildren: number;
483
+ avgTime: number;
484
+ peakTime: number;
485
+ minTime: number;
486
+ snapDeltaExecutions: number;
487
+ snapDeltaElapsedTime: number;
488
+ snapDeltaElapsedTimeLessChildren: number;
489
+ activeThreads: number;
490
+ activeMaxTime: number;
491
+ lastExitTime: string;
492
+ cpuPerc: number;
493
+ dbPerc: number;
494
+ waitPerc: number;
495
+ scriptPerc: number;
496
+ networkPerc: number;
497
+ ioPerc: number;
498
+ sleepPerc: number;
499
+ throttlePerc: number;
500
+ idlePerc: number;
501
+ activeSessions: ProfilerV2ActiveSession[];
502
+ snapFrom: string;
503
+ snapTo: string;
504
+ }
505
+ declare class ProfilerV2FlatItem {
506
+ nodeName: string;
507
+ eventTypeName: string;
508
+ waitClassName: string;
509
+ numPaths: number;
510
+ nodeIds: string[];
511
+ calls: number;
512
+ time: number;
513
+ timeLessChildren: number;
514
+ avgTime: number;
515
+ peakTime: number;
516
+ minTime: number;
517
+ percentage: number;
518
+ snapPercentage: number;
519
+ snapDeltaCalls: number;
520
+ snapDeltaTime: number;
521
+ snapDeltaTimeLessChildren: number;
522
+ activeThreads: number;
523
+ }
524
+ declare class ProfilerV2Flat {
525
+ snapFrom: string;
526
+ snapTo: string;
527
+ numItems: number;
528
+ items: ProfilerV2FlatItem[];
529
+ }
530
+
531
+ declare class WorkloadReportV2Request {
532
+ snapFrom?: number;
533
+ snapTo?: number;
534
+ instanceIds?: string[];
535
+ global?: boolean;
536
+ }
537
+ declare class WorkloadSnapshotsRequest {
538
+ from?: string;
539
+ to?: string;
540
+ instanceIds?: string[];
541
+ }
542
+ declare class WorkloadSnapshotInstance {
543
+ snapId: number;
544
+ instanceId: string;
545
+ startupTime: string;
546
+ beginIntervalTime: string;
547
+ endIntervalTime: string;
548
+ flushElapsed: number;
549
+ manual: boolean;
550
+ }
551
+ declare class WorkloadSnapshot {
552
+ snapId: number;
553
+ beginIntervalTime: string;
554
+ endIntervalTime: string;
555
+ manual: boolean;
556
+ restart: boolean;
557
+ instances: WorkloadSnapshotInstance[];
558
+ }
559
+ declare class WorkloadSnapshotList {
560
+ historyAvailable: boolean;
561
+ snapshots: WorkloadSnapshot[];
562
+ }
563
+
564
+ declare enum MetricV2Type {
565
+ Counter = 0,
566
+ Gauge = 1,
567
+ Histogram = 2,
568
+ Timer = 3,
569
+ Meter = 4
570
+ }
571
+ declare class MetricsV2CatalogRequest {
572
+ global?: boolean;
573
+ instanceIds?: string[];
574
+ }
575
+ declare class MetricsV2Request extends MetricsV2CatalogRequest {
576
+ metricNames?: string[];
577
+ realTime?: boolean;
578
+ snapFrom?: string;
579
+ snapTo?: string;
580
+ snapIdFrom?: number;
581
+ snapIdTo?: number;
582
+ }
583
+ declare class MetricsV2Info {
584
+ name: string;
585
+ metricType: MetricV2Type;
586
+ unit: string;
587
+ rateUnit: string;
588
+ durationUnit: string;
589
+ instances: string[];
590
+ }
591
+ declare class MetricsV2Sample {
592
+ instanceId: string;
593
+ sampleTime: string;
594
+ snapId: number;
595
+ name: string;
596
+ metricType: MetricV2Type;
597
+ unit: string;
598
+ rateUnit: string;
599
+ durationUnit: string;
600
+ value: number;
601
+ count: number;
602
+ percent: number;
603
+ meanRate: number;
604
+ oneMinuteRate: number;
605
+ fiveMinuteRate: number;
606
+ fifteenMinuteRate: number;
607
+ mean: number;
608
+ stdDev: number;
609
+ median: number;
610
+ min: number;
611
+ max: number;
612
+ lastValue: number;
613
+ percentile75: number;
614
+ percentile95: number;
615
+ percentile98: number;
616
+ percentile99: number;
617
+ percentile999: number;
618
+ minUserValue: string;
619
+ maxUserValue: string;
620
+ lastUserValue: string;
621
+ sampleSize: number;
622
+ activeSessions: number;
623
+ totalTime: number;
624
+ intervalSeconds: number;
625
+ deltaCount: number;
626
+ ratePerSecond: number;
627
+ deltaTotalTime: number;
628
+ intervalMean: number;
629
+ }
630
+
368
631
  declare class MetricChart extends LineChartData {
369
632
  xtitle: string;
370
633
  ytitle: string;
@@ -445,11 +708,22 @@ declare class AdminModuleBaseService {
445
708
  getServerLogs(be: string, from: string, to: string, instance: string, target: string): Promise<string>;
446
709
  getTopActivities(be: string, sv: TopActivitiesDataView): Promise<TopActivitiesDataView>;
447
710
  getTopActivitiesV2(be: string, req: TopActivityV2Request): Promise<TopActivityV2Response>;
711
+ getProfilerTreeV2(be: string, req: ProfilerV2TreeRequest): Promise<ProfilerV2Tree>;
712
+ getProfilerNodeV2(be: string, req: ProfilerV2NodeRequest): Promise<ProfilerV2NodeStats>;
713
+ getProfilerFlatV2(be: string, req: ProfilerV2FlatRequest): Promise<ProfilerV2Flat>;
714
+ private v2;
715
+ private v2Call;
716
+ getInstanceId(be: string): Promise<string>;
717
+ errorText(err: any): string;
448
718
  getInfos(be: string): Promise<DirectorInfos>;
449
719
  getNodeStats(be: string, nodeId: string, global?: boolean): Promise<NodeStats>;
450
720
  getSessionStats(be: string, sid: string, serial: string, instance: string): Promise<SessionStats>;
451
721
  getProfilerDataNodes(be: string, sv: ProfilerDataNodesView): Promise<ProfilerDataNodesView>;
452
722
  downloadWorkloadReport(be: string, from: string, to: string, global?: boolean): void;
723
+ getWorkloadReportV2(be: string, req: WorkloadReportV2Request): Observable<string>;
724
+ getMetricsCatalogV2(be: string, req: MetricsV2CatalogRequest): Promise<MetricsV2Info[]>;
725
+ getMetricsV2(be: string, req: MetricsV2Request): Promise<MetricsV2Sample[]>;
726
+ getWorkloadSnapshots(be: string, req: WorkloadSnapshotsRequest): Promise<WorkloadSnapshotList>;
453
727
  getMetrics(be: string, sv: MetricsView): Promise<MetricsView>;
454
728
  getMetricsList(be: string, from: string, to: string): Promise<Metric[]>;
455
729
  getServerLocks(be: string, sv: LocksView): Promise<LocksView>;
@@ -550,12 +824,14 @@ declare class AdmProfilerComponent {
550
824
  private intercom;
551
825
  private route;
552
826
  private adms;
827
+ private router;
553
828
  private mod;
829
+ workloadV2: boolean;
554
830
  searchView: ProfilerDataNodesView;
555
831
  storageSub: any;
556
832
  NodeDetails: NodeStats;
557
833
  private be;
558
- constructor(lc: LocalizationService, localStorage: PreferencesService, location: Location, intercom: InterComService, route: ActivatedRoute, adms: AdminModuleBaseService, mod: string);
834
+ constructor(lc: LocalizationService, localStorage: PreferencesService, location: Location, intercom: InterComService, route: ActivatedRoute, adms: AdminModuleBaseService, router: Router, mod: string, workloadV2: boolean);
559
835
  ngOnInit(): void;
560
836
  Init(ignoreStore: any): void;
561
837
  doInit(ignoreStorage: any): Promise<void>;
@@ -566,10 +842,619 @@ declare class AdmProfilerComponent {
566
842
  POSTGetItems(data: ProfilerDataNodesView): Promise<void>;
567
843
  prepareExport(dataCallBack: any): Promise<void>;
568
844
  loadNodeDetails(nodeId: string): void;
569
- static ɵfac: i0.ɵɵFactoryDeclaration<AdmProfilerComponent, never>;
845
+ static ɵfac: i0.ɵɵFactoryDeclaration<AdmProfilerComponent, [null, null, null, null, null, null, null, null, { optional: true; }]>;
570
846
  static ɵcmp: i0.ɵɵComponentDeclaration<AdmProfilerComponent, "adm_profiler", never, {}, {}, never, never, false, never>;
571
847
  }
572
848
 
849
+ declare class ProfilerV2Row {
850
+ kind: "node" | "loading" | "omitted";
851
+ node: ProfilerV2Node;
852
+ depth: number;
853
+ key: string;
854
+ }
855
+ declare class ProfilerV2TypePart {
856
+ type: string;
857
+ label: string;
858
+ color: string;
859
+ percentage: number;
860
+ }
861
+ declare class ProfilerV2Chart {
862
+ area: string;
863
+ line: string;
864
+ color: string;
865
+ max: number;
866
+ lastX: number;
867
+ lastY: number;
868
+ start: string;
869
+ middle: string;
870
+ end: string;
871
+ average: number;
872
+ peak: number;
873
+ points: number;
874
+ interval: number;
875
+ group: number;
876
+ }
877
+ declare class AdmProfilerV2Component {
878
+ dateExts: DateService;
879
+ lc: LocalizationService;
880
+ private localStorage;
881
+ private intercom;
882
+ private route;
883
+ private router;
884
+ private location;
885
+ private adms;
886
+ private mod;
887
+ workloadV2: boolean;
888
+ readonly EventTypes: string[];
889
+ live: boolean;
890
+ instance: string;
891
+ filterfrom: string;
892
+ filterto: string;
893
+ snapValues: boolean;
894
+ view: "tree" | "flat";
895
+ orderBy: string;
896
+ maxChildren: string;
897
+ minPercentage: string;
898
+ searchText: string;
899
+ activeSearch: string;
900
+ tree: ProfilerV2Tree;
901
+ rows: ProfilerV2Row[];
902
+ treeLoading: boolean;
903
+ treeError: string;
904
+ treeNotice: string;
905
+ matchCount: number;
906
+ flatSearch: string;
907
+ flatType: string;
908
+ flatOrderBy: string;
909
+ flatTop: string;
910
+ flatIncludeIdle: boolean;
911
+ flat: ProfilerV2Flat;
912
+ flatLoading: boolean;
913
+ flatError: string;
914
+ openFlat: Set<string>;
915
+ selectedId: string;
916
+ detail: ProfilerV2NodeStats;
917
+ detailLoading: boolean;
918
+ detailMissing: boolean;
919
+ detailError: string;
920
+ typeParts: ProfilerV2TypePart[];
921
+ chart: ProfilerV2Chart;
922
+ copied: boolean;
923
+ Instances: KeyValue[];
924
+ TreeOrders: KeyValue[];
925
+ FlatOrders: KeyValue[];
926
+ TreeOrderOptions: KeyValue[];
927
+ FlatOrderOptions: KeyValue[];
928
+ ChildrenOptions: KeyValue[];
929
+ ThresholdOptions: KeyValue[];
930
+ FlatTypes: KeyValue[];
931
+ FlatRows: KeyValue[];
932
+ private be;
933
+ private instanceId;
934
+ private instanceIds;
935
+ private rootId;
936
+ private nodes;
937
+ private parents;
938
+ private expanded;
939
+ private expandedBeforeSearch;
940
+ private loaded;
941
+ private loadingChildren;
942
+ private treeGeneration;
943
+ private flatGeneration;
944
+ private detailGeneration;
945
+ private searchTimer;
946
+ private flatSearchTimer;
947
+ private datesTimer;
948
+ private detailTimer;
949
+ constructor(dateExts: DateService, lc: LocalizationService, localStorage: PreferencesService, intercom: InterComService, route: ActivatedRoute, router: Router, location: Location, adms: AdminModuleBaseService, mod: string, workloadV2: boolean);
950
+ ngOnInit(): Promise<void>;
951
+ ngOnDestroy(): void;
952
+ setLive(live: boolean): void;
953
+ setInstance(id: string): void;
954
+ datesChanged(): void;
955
+ setSnapValues(on: boolean): void;
956
+ setView(view: "tree" | "flat"): void;
957
+ reloadAll(): void;
958
+ private reloadView;
959
+ downloadWorkloadReport(): void;
960
+ get instanceLabel(): string;
961
+ get loading(): boolean;
962
+ get current(): {
963
+ snapFrom: string;
964
+ snapTo: string;
965
+ };
966
+ private baseRequest;
967
+ setOrderBy(id: string): void;
968
+ setMaxChildren(id: string): void;
969
+ setMinPercentage(id: string): void;
970
+ searchChanged(): void;
971
+ clearSearch(): void;
972
+ setRoot(id: string): void;
973
+ private get rootPathIdle();
974
+ loadTree(keepExpanded: boolean): Promise<void>;
975
+ private ingest;
976
+ private reopen;
977
+ hasChildren(node: ProfilerV2Node): boolean;
978
+ isExpanded(node: ProfilerV2Node): boolean;
979
+ private needsChildren;
980
+ toggle(node: ProfilerV2Node, event?: Event): void;
981
+ showAll(node: ProfilerV2Node, event: Event): void;
982
+ private loadChildren;
983
+ private buildRows;
984
+ private addRows;
985
+ rowClicked(node: ProfilerV2Node): void;
986
+ treeKeydown(event: KeyboardEvent): void;
987
+ isIdle(type: string, waitClass: string): boolean;
988
+ isLongRunning(type: string, waitClass: string, activeMaxTime: number): boolean;
989
+ nameParts(name: string, search: string): {
990
+ text: string;
991
+ hit: boolean;
992
+ }[];
993
+ get snapMode(): boolean;
994
+ calls(node: ProfilerV2Node): number;
995
+ time(node: ProfilerV2Node): number;
996
+ self(node: ProfilerV2Node): number;
997
+ avg(node: ProfilerV2Node): number;
998
+ peak(node: ProfilerV2Node): number;
999
+ parentPerc(node: ProfilerV2Node): number;
1000
+ firstLevelPerc(node: ProfilerV2Node): number;
1001
+ omittedTime(node: ProfilerV2Node): number;
1002
+ flatCalls(item: ProfilerV2FlatItem): number;
1003
+ flatSelf(item: ProfilerV2FlatItem): number;
1004
+ flatPerc(item: ProfilerV2FlatItem): number;
1005
+ flatTime(item: ProfilerV2FlatItem): number;
1006
+ flatAvg(item: ProfilerV2FlatItem): number;
1007
+ flatChanged(): void;
1008
+ setFlatTop(id: string): void;
1009
+ flatSearchChanged(): void;
1010
+ loadFlat(): Promise<void>;
1011
+ flatKey(item: ProfilerV2FlatItem): string;
1012
+ toggleFlat(item: ProfilerV2FlatItem): void;
1013
+ openInTree(nodeId: string, event: Event): void;
1014
+ showDetail(nodeId: string, event: Event): void;
1015
+ select(nodeId: string, delayed?: boolean): void;
1016
+ loadDetail(nodeId: string): Promise<void>;
1017
+ get detailStale(): boolean;
1018
+ copyId(element: HTMLElement): Promise<void>;
1019
+ private buildTypeParts;
1020
+ private buildChart;
1021
+ private niceMax;
1022
+ typeColor(type: string, waitClass: string): string;
1023
+ typeLabel(type: string, waitClass: string): string;
1024
+ axisValue(value: number): string;
1025
+ duration(seconds: number): string;
1026
+ parseUtc(value: string): Date;
1027
+ hhmm(value: Date | string): string;
1028
+ ddmmhhmm(value: string): string;
1029
+ minutesAgo(value: string): number;
1030
+ relative(value: string): string;
1031
+ private errorMessage;
1032
+ private buildSources;
1033
+ private updateOrderOptions;
1034
+ private loadInstances;
1035
+ private buildInstances;
1036
+ private updateUrl;
1037
+ private applySettings;
1038
+ private saveSettings;
1039
+ private toDate;
1040
+ private fmt;
1041
+ private floorHour;
1042
+ static ɵfac: i0.ɵɵFactoryDeclaration<AdmProfilerV2Component, [null, null, null, null, null, null, null, null, null, { optional: true; }]>;
1043
+ static ɵcmp: i0.ɵɵComponentDeclaration<AdmProfilerV2Component, "profiler_v2", never, {}, {}, never, never, false, never>;
1044
+ }
1045
+
1046
+ declare class WorkloadV2Report {
1047
+ html: string;
1048
+ doc: SafeHtml;
1049
+ live: boolean;
1050
+ instances: string[];
1051
+ snapFrom: number;
1052
+ snapTo: number;
1053
+ windowFrom: Date;
1054
+ windowTo: Date;
1055
+ generatedAt: Date;
1056
+ size: number;
1057
+ sections: KeyValue[];
1058
+ }
1059
+ declare class AdmWorkloadV2Component {
1060
+ lc: LocalizationService;
1061
+ private localStorage;
1062
+ private intercom;
1063
+ private route;
1064
+ private sanitizer;
1065
+ private adms;
1066
+ reportFrame: ElementRef<HTMLIFrameElement>;
1067
+ live: boolean;
1068
+ instances: string[];
1069
+ period: string;
1070
+ snapshots: WorkloadSnapshot[];
1071
+ historyAvailable: boolean;
1072
+ snapshotsLoading: boolean;
1073
+ snapshotsLoaded: boolean;
1074
+ snapshotsError: string;
1075
+ selFrom: number;
1076
+ selTo: number;
1077
+ warnings: string[];
1078
+ generating: boolean;
1079
+ reportError: string;
1080
+ report: WorkloadV2Report;
1081
+ section: string;
1082
+ Instances: KeyValue[];
1083
+ Periods: KeyValue[];
1084
+ private be;
1085
+ private reportSub;
1086
+ private snapshotsGeneration;
1087
+ constructor(lc: LocalizationService, localStorage: PreferencesService, intercom: InterComService, route: ActivatedRoute, sanitizer: DomSanitizer, adms: AdminModuleBaseService);
1088
+ ngOnInit(): Promise<void>;
1089
+ ngOnDestroy(): void;
1090
+ get clusterLabel(): string;
1091
+ setLive(live: boolean): void;
1092
+ instancesChanged(ids: string[]): void;
1093
+ setPeriod(id: string): void;
1094
+ get canGenerate(): boolean;
1095
+ loadSnapshots(): Promise<void>;
1096
+ pick(snapshot: WorkloadSnapshot): void;
1097
+ clearSelection(): void;
1098
+ inRange(snapshot: WorkloadSnapshot): boolean;
1099
+ isEdge(snapshot: WorkloadSnapshot): boolean;
1100
+ get selectionWindow(): {
1101
+ from: Date;
1102
+ to: Date;
1103
+ };
1104
+ instancesTitle(snapshot: WorkloadSnapshot): string;
1105
+ private updateWarnings;
1106
+ private restartedInstances;
1107
+ generateOrCancel(): void;
1108
+ private generate;
1109
+ cancel(): void;
1110
+ private showReport;
1111
+ goToSection(anchor: string): void;
1112
+ download(): void;
1113
+ openInTab(): void;
1114
+ private reportBlob;
1115
+ private fileName;
1116
+ private utcStamp;
1117
+ parseUtc(value: string): Date;
1118
+ local(value: Date | string): string;
1119
+ hhmm(date: Date): string;
1120
+ get zone(): string;
1121
+ span(from: Date | string, to: Date | string): string;
1122
+ kilobytes(size: number): string;
1123
+ scopeLabel(instances: string[]): string;
1124
+ private saveSettings;
1125
+ static ɵfac: i0.ɵɵFactoryDeclaration<AdmWorkloadV2Component, never>;
1126
+ static ɵcmp: i0.ɵɵComponentDeclaration<AdmWorkloadV2Component, "workload_v2", never, {}, {}, never, never, false, never>;
1127
+ }
1128
+
1129
+ declare class Mv2Point {
1130
+ t: number;
1131
+ v: number;
1132
+ v2?: number;
1133
+ gap?: boolean;
1134
+ }
1135
+ declare class Mv2Series {
1136
+ key: string;
1137
+ label: string;
1138
+ color: string;
1139
+ kind: "line" | "step" | "bars" | "dots" | "band";
1140
+ points: Mv2Point[];
1141
+ dash?: string;
1142
+ opacity?: number;
1143
+ tooltip?: boolean;
1144
+ }
1145
+ declare class Mv2Mark {
1146
+ t: number;
1147
+ label: string;
1148
+ kind: "restart" | "snapshot";
1149
+ }
1150
+ declare class Mv2Path {
1151
+ key: string;
1152
+ d: string;
1153
+ color: string;
1154
+ fill: boolean;
1155
+ dash: string;
1156
+ opacity: number;
1157
+ }
1158
+ declare class Mv2Rect {
1159
+ key: string;
1160
+ x: number;
1161
+ y: number;
1162
+ w: number;
1163
+ h: number;
1164
+ color: string;
1165
+ }
1166
+ declare class Mv2Dot {
1167
+ key: string;
1168
+ x: number;
1169
+ y: number;
1170
+ color: string;
1171
+ }
1172
+ declare class Mv2Tick {
1173
+ key: string;
1174
+ pos: number;
1175
+ label: string;
1176
+ }
1177
+ declare class Mv2MarkTick {
1178
+ key: string;
1179
+ pos: number;
1180
+ label: string;
1181
+ kind: string;
1182
+ }
1183
+ declare class Mv2TipRow {
1184
+ color: string;
1185
+ label: string;
1186
+ value: string;
1187
+ }
1188
+ declare class MetricsV2ChartComponent implements OnInit, OnChanges, OnDestroy {
1189
+ private host;
1190
+ private zone;
1191
+ series: Mv2Series[];
1192
+ from: number;
1193
+ to: number;
1194
+ height: number;
1195
+ unit: string;
1196
+ marks: Mv2Mark[];
1197
+ cursor: number;
1198
+ format: (value: number) => string;
1199
+ cursorChange: EventEmitter<number>;
1200
+ zoom: EventEmitter<{
1201
+ from: number;
1202
+ to: number;
1203
+ }>;
1204
+ width: number;
1205
+ readonly left = 56;
1206
+ readonly right = 10;
1207
+ readonly top = 8;
1208
+ readonly bottom = 20;
1209
+ paths: Mv2Path[];
1210
+ rects: Mv2Rect[];
1211
+ dots: Mv2Dot[];
1212
+ yTicks: Mv2Tick[];
1213
+ xTicks: Mv2Tick[];
1214
+ markTicks: Mv2MarkTick[];
1215
+ hovered: boolean;
1216
+ cursorX: number;
1217
+ tipTime: string;
1218
+ tipRows: Mv2TipRow[];
1219
+ dragFrom: number;
1220
+ dragTo: number;
1221
+ private yMin;
1222
+ private yMax;
1223
+ private observer;
1224
+ constructor(host: ElementRef<HTMLElement>, zone: NgZone);
1225
+ ngOnInit(): void;
1226
+ ngOnDestroy(): void;
1227
+ ngOnChanges(changes: any): void;
1228
+ min(a: number, b: number): number;
1229
+ abs(a: number): number;
1230
+ private get plotWidth();
1231
+ private x;
1232
+ private y;
1233
+ private timeAt;
1234
+ private layout;
1235
+ private linePath;
1236
+ private bandPath;
1237
+ private niceStep;
1238
+ private updateCursor;
1239
+ private nearest;
1240
+ private plotX;
1241
+ move(event: MouseEvent): void;
1242
+ leave(): void;
1243
+ down(event: MouseEvent): void;
1244
+ up(event: MouseEvent): void;
1245
+ static ɵfac: i0.ɵɵFactoryDeclaration<MetricsV2ChartComponent, never>;
1246
+ static ɵcmp: i0.ɵɵComponentDeclaration<MetricsV2ChartComponent, "mv2-chart", never, { "series": { "alias": "series"; "required": false; }; "from": { "alias": "from"; "required": false; }; "to": { "alias": "to"; "required": false; }; "height": { "alias": "height"; "required": false; }; "unit": { "alias": "unit"; "required": false; }; "marks": { "alias": "marks"; "required": false; }; "cursor": { "alias": "cursor"; "required": false; }; "format": { "alias": "format"; "required": false; }; }, { "cursorChange": "cursorChange"; "zoom": "zoom"; }, never, never, false, never>;
1247
+ }
1248
+
1249
+ type Source = "live" | "period" | "snap";
1250
+ declare class Mv2CatalogEntry {
1251
+ info: MetricsV2Info;
1252
+ items: MetricsV2Info[];
1253
+ open: boolean;
1254
+ }
1255
+ declare class Mv2CatalogGroup {
1256
+ type: MetricV2Type;
1257
+ label: string;
1258
+ entries: Mv2CatalogEntry[];
1259
+ count: number;
1260
+ }
1261
+ declare class Mv2Chart {
1262
+ key: string;
1263
+ series: Mv2Series[];
1264
+ unit: string;
1265
+ height: number;
1266
+ }
1267
+ declare class Mv2Panel {
1268
+ info: MetricsV2Info;
1269
+ alts: KeyValue[];
1270
+ alt: string;
1271
+ charts: Mv2Chart[];
1272
+ empty: boolean;
1273
+ }
1274
+ declare class Mv2TileRow {
1275
+ instance: string;
1276
+ color: string;
1277
+ value: string;
1278
+ extra: string;
1279
+ }
1280
+ declare class Mv2Tile {
1281
+ info: MetricsV2Info;
1282
+ rows: Mv2TileRow[];
1283
+ sparks: {
1284
+ d: string;
1285
+ color: string;
1286
+ }[];
1287
+ time: string;
1288
+ }
1289
+ declare class Mv2Column {
1290
+ key: string;
1291
+ label: string;
1292
+ num: boolean;
1293
+ }
1294
+ declare class Mv2TableSection {
1295
+ info: MetricsV2Info;
1296
+ columns: Mv2Column[];
1297
+ rows: {
1298
+ [key: string]: any;
1299
+ }[];
1300
+ total: number;
1301
+ sortKey: string;
1302
+ sortDesc: boolean;
1303
+ }
1304
+ declare class AdmMetricsV2Component {
1305
+ dateExts: DateService;
1306
+ lc: LocalizationService;
1307
+ private localStorage;
1308
+ private intercom;
1309
+ private route;
1310
+ private adms;
1311
+ readonly Max = 12;
1312
+ readonly Type: typeof MetricV2Type;
1313
+ source: Source;
1314
+ liveMinutes: string;
1315
+ filterfrom: string;
1316
+ filterto: string;
1317
+ snapFromId: string;
1318
+ snapToId: string;
1319
+ instances: string[];
1320
+ view: string;
1321
+ paused: boolean;
1322
+ lastUpdate: Date;
1323
+ catalog: MetricsV2Info[];
1324
+ groups: Mv2CatalogGroup[];
1325
+ search: string;
1326
+ selected: string[];
1327
+ catalogLoading: boolean;
1328
+ catalogError: string;
1329
+ snapshots: WorkloadSnapshot[];
1330
+ historyAvailable: boolean;
1331
+ snapshotsLoaded: boolean;
1332
+ SnapshotOptions: KeyValue[];
1333
+ warnings: string[];
1334
+ dataLoading: boolean;
1335
+ dataError: string;
1336
+ panels: Mv2Panel[];
1337
+ tiles: Mv2Tile[];
1338
+ tables: Mv2TableSection[];
1339
+ marks: Mv2Mark[];
1340
+ legend: {
1341
+ instance: string;
1342
+ color: string;
1343
+ hidden: boolean;
1344
+ }[];
1345
+ domainFrom: number;
1346
+ domainTo: number;
1347
+ viewFrom: number;
1348
+ viewTo: number;
1349
+ cursor: number;
1350
+ Sources: KeyValue[];
1351
+ LiveWindows: KeyValue[];
1352
+ Views: KeyValue[];
1353
+ Instances: KeyValue[];
1354
+ readonly Presets: string[];
1355
+ private be;
1356
+ private data;
1357
+ private seen;
1358
+ private hidden;
1359
+ private alts;
1360
+ private dataGeneration;
1361
+ private catalogGeneration;
1362
+ private refreshTimer;
1363
+ private selectionTimer;
1364
+ private datesTimer;
1365
+ private readonly visibilityHandler;
1366
+ readonly format: (value: number) => string;
1367
+ constructor(dateExts: DateService, lc: LocalizationService, localStorage: PreferencesService, intercom: InterComService, route: ActivatedRoute, adms: AdminModuleBaseService);
1368
+ ngOnInit(): Promise<void>;
1369
+ ngOnDestroy(): void;
1370
+ get clusterLabel(): string;
1371
+ get zone(): string;
1372
+ setSource(id: string): void;
1373
+ setLiveMinutes(id: string): void;
1374
+ datesChanged(): void;
1375
+ snapshotsChanged(): void;
1376
+ instancesChanged(ids: string[]): Promise<void>;
1377
+ setView(id: string): void;
1378
+ togglePause(): void;
1379
+ private loadCatalog;
1380
+ buildGroups(): void;
1381
+ isSelected(name: string): boolean;
1382
+ canSelect(name: string): boolean;
1383
+ toggleMetric(name: string): void;
1384
+ addItems(entry: Mv2CatalogEntry): void;
1385
+ clearSelection(): void;
1386
+ applyPreset(name: string): void;
1387
+ removeMetric(name: string): void;
1388
+ private selectionChanged;
1389
+ catalogUnit(info: MetricsV2Info): string;
1390
+ addItemsLabel(entry: Mv2CatalogEntry): string;
1391
+ emptyLabel(name: string): string;
1392
+ instancesLabel(info: MetricsV2Info): string;
1393
+ private loadSnapshots;
1394
+ private defaultSnapshots;
1395
+ get snapshotWindow(): {
1396
+ from: Date;
1397
+ to: Date;
1398
+ };
1399
+ private updateWarnings;
1400
+ private request;
1401
+ loadData(): Promise<void>;
1402
+ private refresh;
1403
+ private merge;
1404
+ private setDomain;
1405
+ get chartFrom(): number;
1406
+ get chartTo(): number;
1407
+ zoomTo(range: {
1408
+ from: number;
1409
+ to: number;
1410
+ }): void;
1411
+ resetZoom(): void;
1412
+ toggleInstance(instance: string): void;
1413
+ setAlt(panel: Mv2Panel, alt: string): void;
1414
+ info(name: string): MetricsV2Info;
1415
+ color(instance: string): string;
1416
+ private rebuild;
1417
+ private visibleSeries;
1418
+ private buildMarks;
1419
+ private points;
1420
+ private main;
1421
+ mainUnit(info: MetricsV2Info): string;
1422
+ private buildPanel;
1423
+ private itemsOf;
1424
+ private buildCharts;
1425
+ private percentileBand;
1426
+ private bucketed;
1427
+ private stacked;
1428
+ private itemLines;
1429
+ private buildTile;
1430
+ private buildTable;
1431
+ sortBy(section: Mv2TableSection, column: Mv2Column): void;
1432
+ private sortRows;
1433
+ shownRows(section: Mv2TableSection): {
1434
+ [key: string]: any;
1435
+ }[];
1436
+ cell(row: {
1437
+ [key: string]: any;
1438
+ }, column: Mv2Column): string;
1439
+ exportCsv(section: Mv2TableSection): void;
1440
+ private visibilityChanged;
1441
+ private errorMessage;
1442
+ number(value: number): string;
1443
+ durationLabel(unit: string): string;
1444
+ rateLabel(unit: string): string;
1445
+ parseUtc(value: string): Date;
1446
+ private time;
1447
+ private isoUtc;
1448
+ local(value: Date | string): string;
1449
+ hhmmss(date: Date): string;
1450
+ private setLastDay;
1451
+ private toDate;
1452
+ private fmt;
1453
+ private saveSettings;
1454
+ static ɵfac: i0.ɵɵFactoryDeclaration<AdmMetricsV2Component, never>;
1455
+ static ɵcmp: i0.ɵɵComponentDeclaration<AdmMetricsV2Component, "metrics_v2", never, {}, {}, never, never, false, never>;
1456
+ }
1457
+
573
1458
  declare class AdmTopActivitiesComponent {
574
1459
  dateExts: DateService;
575
1460
  lc: LocalizationService;
@@ -716,6 +1601,7 @@ declare class AdmTopActivityV2Component {
716
1601
  setLimit(id: string): void;
717
1602
  setRefresh(id: string): void;
718
1603
  search(): Promise<void>;
1604
+ private showError;
719
1605
  private buildRequest;
720
1606
  private applyResult;
721
1607
  onChartLoaded(chart: BaseChartComponent<any>): void;
@@ -963,7 +1849,16 @@ declare class FormatTimePipe implements PipeTransform {
963
1849
  static ɵpipe: i0.ɵɵPipeDeclaration<FormatTimePipe, "format_time", true>;
964
1850
  }
965
1851
 
1852
+ declare class ProfilerFormatPipe implements PipeTransform {
1853
+ transform(value: number, kind: "dur" | "int" | "pct"): string;
1854
+ static ɵfac: i0.ɵɵFactoryDeclaration<ProfilerFormatPipe, never>;
1855
+ static ɵpipe: i0.ɵɵPipeDeclaration<ProfilerFormatPipe, "pv2fmt", true>;
1856
+ }
1857
+
966
1858
  declare const topActivityV2Enabled: CanMatchFn;
1859
+ declare const profilerV2Enabled: CanMatchFn;
1860
+ declare const workloadReportV2Enabled: CanMatchFn;
1861
+ declare const metricsV2Enabled: CanMatchFn;
967
1862
  declare const routeConfig: {
968
1863
  path: string;
969
1864
  children: ({
@@ -974,6 +1869,14 @@ declare const routeConfig: {
974
1869
  internalNavigation: boolean;
975
1870
  };
976
1871
  canMatch?: undefined;
1872
+ } | {
1873
+ path: string;
1874
+ component: typeof AdmProfilerV2Component;
1875
+ canMatch: CanMatchFn[];
1876
+ data: {
1877
+ title: string;
1878
+ internalNavigation: boolean;
1879
+ };
977
1880
  } | {
978
1881
  path: string;
979
1882
  component: typeof AdmProfilerComponent;
@@ -982,6 +1885,14 @@ declare const routeConfig: {
982
1885
  internalNavigation: boolean;
983
1886
  };
984
1887
  canMatch?: undefined;
1888
+ } | {
1889
+ path: string;
1890
+ component: typeof AdmWorkloadV2Component;
1891
+ canMatch: CanMatchFn[];
1892
+ data: {
1893
+ title: string;
1894
+ internalNavigation: boolean;
1895
+ };
985
1896
  } | {
986
1897
  path: string;
987
1898
  component: typeof AdmTopActivityV2Component;
@@ -998,6 +1909,14 @@ declare const routeConfig: {
998
1909
  internalNavigation: boolean;
999
1910
  };
1000
1911
  canMatch?: undefined;
1912
+ } | {
1913
+ path: string;
1914
+ component: typeof AdmMetricsV2Component;
1915
+ canMatch: CanMatchFn[];
1916
+ data: {
1917
+ title: string;
1918
+ internalNavigation: boolean;
1919
+ };
1001
1920
  } | {
1002
1921
  path: string;
1003
1922
  component: typeof AdmMetricsComponent;
@@ -1060,13 +1979,16 @@ declare class AdmModule {
1060
1979
  private commService;
1061
1980
  constructor(commService: AdminModuleCommService);
1062
1981
  static ɵfac: i0.ɵɵFactoryDeclaration<AdmModule, never>;
1063
- static ɵmod: i0.ɵɵNgModuleDeclaration<AdmModule, [typeof AdmWrkComponent, typeof AdmProfilerComponent, typeof AdmTopActivitiesComponent, typeof AdmTopActivityV2Component, typeof SessionDetailComponent, typeof AdmDynamicViewsComponent, typeof AdmLogsComponent, typeof AdmAuditsComponent, typeof AdmEnqComponent, typeof AdmMetricsComponent, typeof NodeDetailComponent, typeof MtdQueryComponent, typeof AdmSystemParametersComponent], [typeof i14.CommonModule, typeof i15.FormsModule, typeof i16.ModalModule, typeof i17.TooltipModule, typeof i18.BsDropdownModule, typeof i19.ContextMenuModule, typeof i20.LocalizationModule, typeof i21.ExtensionsModule, typeof i22.EsTableModule, typeof i23.FormsAndValidationsModule, typeof i24.EsGertrudeModule, typeof i25.EsChartsModule, typeof i26.ComponentsModule, typeof i27.DirectivesModule, typeof i28.RouterModule, typeof FormatTimePipe], never>;
1982
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AdmModule, [typeof AdmWrkComponent, typeof AdmProfilerComponent, typeof AdmProfilerV2Component, typeof AdmWorkloadV2Component, typeof AdmMetricsV2Component, typeof MetricsV2ChartComponent, typeof AdmTopActivitiesComponent, typeof AdmTopActivityV2Component, typeof SessionDetailComponent, typeof AdmDynamicViewsComponent, typeof AdmLogsComponent, typeof AdmAuditsComponent, typeof AdmEnqComponent, typeof AdmMetricsComponent, typeof NodeDetailComponent, typeof MtdQueryComponent, typeof AdmSystemParametersComponent], [typeof i18.CommonModule, typeof i19.FormsModule, typeof i20.ModalModule, typeof i21.TooltipModule, typeof i22.BsDropdownModule, typeof i23.ContextMenuModule, typeof i24.LocalizationModule, typeof i25.ExtensionsModule, typeof i26.EsTableModule, typeof i27.FormsAndValidationsModule, typeof i28.EsGertrudeModule, typeof i29.EsChartsModule, typeof i30.ComponentsModule, typeof i31.DirectivesModule, typeof i32.RouterModule, typeof FormatTimePipe, typeof ProfilerFormatPipe], never>;
1064
1983
  static ɵinj: i0.ɵɵInjectorDeclaration<AdmModule>;
1065
1984
  }
1066
1985
 
1067
1986
  declare const ADM_MODULE_PATH: InjectionToken<string>;
1068
1987
  declare const ADM_CONVERSATIONS: InjectionToken<boolean>;
1069
1988
  declare const ADM_TOPACT_V2: InjectionToken<boolean>;
1989
+ declare const ADM_PROFILER_V2: InjectionToken<boolean>;
1990
+ declare const ADM_WORKLOAD_V2: InjectionToken<boolean>;
1991
+ declare const ADM_METRICS_V2: InjectionToken<boolean>;
1070
1992
 
1071
1993
  /** Chiave di questo modulo, da utilizzare per i messaggi */
1072
1994
  declare const MK_ADM = "EsAdminModule";
@@ -1075,4 +1997,4 @@ declare enum AdmMessageTypes {
1075
1997
  Message = 0
1076
1998
  }
1077
1999
 
1078
- export { ADM_CONVERSATIONS, ADM_MODULE_PATH, ADM_TOPACT_V2, AdmMessageTypes, AdmModule, MK_ADM, routeConfig, topActivityV2Enabled };
2000
+ export { ADM_CONVERSATIONS, ADM_METRICS_V2, ADM_MODULE_PATH, ADM_PROFILER_V2, ADM_TOPACT_V2, ADM_WORKLOAD_V2, AdmMessageTypes, AdmModule, MK_ADM, metricsV2Enabled, profilerV2Enabled, routeConfig, topActivityV2Enabled, workloadReportV2Enabled };