| <!-- |
| ~ Licensed to the Apache Software Foundation (ASF) under one |
| ~ or more contributor license agreements. See the NOTICE file |
| ~ distributed with this work for additional information |
| ~ regarding copyright ownership. The ASF licenses this file |
| ~ to you under the Apache License, Version 2.0 (the |
| ~ "License"); you may not use this file except in compliance |
| ~ with the License. You may obtain a copy of the License at |
| ~ |
| ~ http://www.apache.org/licenses/LICENSE-2.0 |
| ~ |
| ~ Unless required by applicable law or agreed to in writing, |
| ~ software distributed under the License is distributed on an |
| ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| ~ KIND, either express or implied. See the License for the |
| ~ specific language governing permissions and limitations |
| ~ under the License. |
| --> |
| |
| <div id="dialog-box" class="ssn-monitor-dialog"> |
| <header class="dialog-header"> |
| <h4 class="modal-title">SSN Monitor</h4> |
| <button type="button" class="close" (click)="dialogRef.close()">×</button> |
| </header> |
| <div class="dialog-content"> |
| <div class="content-box" *ngIf="data; else empty"> |
| <div class="ssn-info"> |
| <mat-tab-group *ngIf="data?.processorInfo" [dynamicHeight]="true"> |
| <mat-tab label="CPU"> |
| <div class="scrolling-content" id="scrolling"> |
| <mat-list-item class="list-header"> |
| <div class="col">Name</div> |
| <div class="col">{{ data.processorInfo.name }}</div> |
| </mat-list-item> |
| <mat-list-item class="list-header"> |
| <div class="col">Vendor</div> |
| <div class="col">{{ data.processorInfo.vendor }}</div> |
| </mat-list-item> |
| <mat-list-item class="list-header"> |
| <div class="col">Logical Core Count</div> |
| <div class="col">{{ data.processorInfo.logicalCoreCount }}</div> |
| </mat-list-item> |
| <mat-list-item class="list-header"> |
| <div class="col">Physical Core Count</div> |
| <div class="col">{{ data.processorInfo.physicalCoreCount }}</div> |
| </mat-list-item> |
| <mat-list-item class="list-header"> |
| <div class="col">Current System Load</div> |
| <div class="col">{{ data.processorInfo.currentSystemLoad /100 | percent:'1.0-2' }}</div> |
| </mat-list-item> |
| <mat-list-item class="list-header"> |
| <div class="col">System Load Average</div> |
| <div class="col">{{ data.processorInfo.systemLoadAverage /100 | percent:'1.0-2' }}</div> |
| </mat-list-item> |
| <mat-list-item class="list-header"> |
| <div class="col">CPU 64 Bit</div> |
| <div class="col">{{ data.processorInfo.cpu64Bit }}</div> |
| </mat-list-item> |
| </div> |
| </mat-tab> |
| |
| <mat-tab label="Memory"> |
| <div class="scrolling-content" id="scrolling"> |
| <mat-list-item class="list-header"> |
| <div class="col">Available Memory</div> |
| <div class="col">{{ convertSize(data.memoryInfo.availableMemory) }}</div> |
| </mat-list-item> |
| <mat-list-item class="list-header"> |
| <div class="col">Total Memory</div> |
| <div class="col">{{ convertSize(data.memoryInfo.totalMemory) }}</div> |
| </mat-list-item> |
| <mat-list-item class="list-header"> |
| <div class="col">Swap Total</div> |
| <div class="col">{{ convertSize(data.memoryInfo.swapTotal) }}</div> |
| </mat-list-item> |
| <mat-list-item class="list-header"> |
| <div class="col">Swap Used</div> |
| <div class="col">{{ convertSize(data.memoryInfo.swapUsed) }}</div> |
| </mat-list-item> |
| <mat-list-item class="list-header"> |
| <div class="col">Pages Page In</div> |
| <div class="col">{{ convertSize(data.memoryInfo.pagesPageIn) }}</div> |
| </mat-list-item> |
| <mat-list-item class="list-header"> |
| <div class="col">Pages Page Out</div> |
| <div class="col">{{ convertSize(data.memoryInfo.pagesPageOut) }}</div> |
| </mat-list-item> |
| </div> |
| |
| </mat-tab> |
| <mat-tab label="HDD"> |
| <div class="scrolling-content" id="scrolling"> |
| <div *ngFor="let disk of data.disksInfo; let i = index"> |
| <mat-list-item> |
| <div class="col"><strong>Disk {{i +1}}</strong></div> |
| </mat-list-item> |
| <mat-list-item> |
| <div class="col">Used Space</div> |
| <div class="col">{{ convertSize(disk.usedByteSpace) }}</div> |
| </mat-list-item> |
| <mat-list-item> |
| <div class="col">Total Space</div> |
| <div class="col">{{ convertSize(disk.totalByteSpace) }}</div> |
| </mat-list-item> |
| </div> |
| </div> |
| </mat-tab> |
| </mat-tab-group> |
| <div class="text-center"> |
| <button type="button" class="butt" mat-raised-button (click)="dialogRef.close()">Close</button> |
| </div> |
| </div> |
| <div class="info message" *ngIf="isEmpty(data)"> |
| No ssn monitor data available |
| </div> |
| </div> |
| <ng-template #empty> |
| <p class="info message">Monitor data are not available</p> |
| <mat-progress-bar mode="indeterminate"></mat-progress-bar> |
| </ng-template> |
| </div> |
| </div> |