Skip to content
resource-alarm.component.html 6.24 KiB
Newer Older
wangqinghua's avatar
wangqinghua committed
<!--资源告警统计-->
wangqinghua's avatar
wangqinghua committed
<div nz-row class="breadcrumbs">
    <div nz-col nzSpan="16">
        <nz-breadcrumb class="padding-8-0">
            <nz-breadcrumb-item>
                首页
            </nz-breadcrumb-item>
            <nz-breadcrumb-item>
                <a>统计分析</a>
            </nz-breadcrumb-item>
            <nz-breadcrumb-item>
                告警统计
            </nz-breadcrumb-item>
        </nz-breadcrumb>
    </div>
    <div nz-col nzSpan="8" class="text-right">
wangqinghua's avatar
wangqinghua committed
        <button (click)="ngOnInit()" nz-button nzType="primary"><i class="anticon anticon-sync"></i></button>
wangqinghua's avatar
wangqinghua committed
        <smart-full-screen></smart-full-screen>
wangqinghua's avatar
wangqinghua committed
    </div>
</div>
wangqinghua's avatar
wangqinghua committed
<div nz-row [nzGutter]="4" class="search-form" >
wangqinghua's avatar
wangqinghua committed
    <div nz-col nzSpan="4">
wangqinghua's avatar
wangqinghua committed
        <nz-select style="width: 100%;" nzPlaceHolder="所有分组" nzShowSearch [(ngModel)]="obj.groupid">
wangqinghua's avatar
wangqinghua committed
            <ng-container *ngFor="let item of groupList">
wangqinghua's avatar
wangqinghua committed
                <nz-option [nzLabel]="item.name" [nzValue]="item.groupid"></nz-option>
wangqinghua's avatar
wangqinghua committed
            </ng-container>
        </nz-select>
    </div>
wangqinghua's avatar
wangqinghua committed
    <div nz-col nzSpan="3" >
wangqinghua's avatar
wangqinghua committed
        <nz-select nzAllowClear style="width: 100%;" nzPlaceHolder="所有告警" [(ngModel)]="obj.priorityName">
wangqinghua's avatar
wangqinghua committed
            <nz-option nzLabel="告警" nzValue="告警"></nz-option>
            <nz-option nzLabel="严重" nzValue="严重"></nz-option>
        </nz-select>
    </div>
    <div nz-col nzSpan="7">
wangqinghua's avatar
wangqinghua committed
        <nz-radio-group style="width: 100%;" [(ngModel)]="timeType" (ngModelChange)="changeType()">
wangqinghua's avatar
wangqinghua committed
            <label nz-radio-button nzValue="1">今天</label>
            <label nz-radio-button nzValue="2">昨天</label>
            <label nz-radio-button nzValue="3">三天</label>
            <label nz-radio-button nzValue="4">一周</label>
            <label nz-radio-button nzValue="5">自定义</label>
        </nz-radio-group>
    </div>
wangqinghua's avatar
wangqinghua committed
    <div nz-col nzSpan="8">
        <ng-container  *ngIf="timeType == '5'">
            <nz-date-picker
wangqinghua's avatar
wangqinghua committed
                    nzFormat="yyyy-MM-dd"
wangqinghua's avatar
wangqinghua committed
                    [(ngModel)]="startTime"
                    nzPlaceHolder="开始时间"
            ></nz-date-picker>
            <nz-date-picker
wangqinghua's avatar
wangqinghua committed
                    nzFormat="yyyy-MM-dd"
wangqinghua's avatar
wangqinghua committed
                    [(ngModel)]="endTime"
                    nzPlaceHolder="结束时间"
            ></nz-date-picker>
        </ng-container>
wangqinghua's avatar
wangqinghua committed
    </div>
wangqinghua's avatar
wangqinghua committed
    <div nz-col nzSpan="2" class="search-input text-right">
        <button (click)="search()" nz-button nzType="default"><i class="anticon anticon-search" style="color: #6097b7"></i>搜索</button>
    </div>
wangqinghua's avatar
wangqinghua committed
</div>
wangqinghua's avatar
wangqinghua committed
<nz-spin [nzSpinning]="isLoading">
    <div nz-row nzGutter="4">
        <div nz-col nzSpan="12" style="height: 400px">
            <ng-container *ngIf="data.left">
wangqinghua's avatar
wangqinghua committed
                <div class="img-noData">
                    <div class="noData" title="暂无数据"></div>
                </div>
wangqinghua's avatar
wangqinghua committed
            </ng-container>
            <ng-container *ngIf="!data.left">
                <div echarts [options]="chartTopOption" style="height: 400px;width: 100%"></div>
            </ng-container>
        </div>
        <div nz-col nzSpan="12" style="height: 400px">
            <ng-container *ngIf="data.right">
wangqinghua's avatar
wangqinghua committed
                <div class="img-noData">
                    <div class="noData" title="暂无数据"></div>
                </div>
wangqinghua's avatar
wangqinghua committed
            </ng-container>
            <ng-container *ngIf="!data.right">
                <div echarts [options]="charTrendOption" style="height: 400px;width: 100%"></div>
            </ng-container>
        </div>
wangqinghua's avatar
wangqinghua committed
    </div>
wangqinghua's avatar
wangqinghua committed
</nz-spin>
wangqinghua's avatar
wangqinghua committed
<div nz-row  nzGutter="4" style="margin: 20px 0">
wangqinghua's avatar
wangqinghua committed
    <div nz-col  nzSpan="20">
        <h3>常见问题TOP10</h3>
wangqinghua's avatar
wangqinghua committed
    </div>
wangqinghua's avatar
wangqinghua committed
    <div nz-col nzSpan="4" class="text-right">
        <button [nzLoading]="isDownload1" (click)="downLoadCommon()" nz-button nzType="default"><i class="anticon anticon-download"></i>下载</button>
wangqinghua's avatar
wangqinghua committed
    </div>
</div>
wangqinghua's avatar
wangqinghua committed
<nz-table #nzTable [nzData]="commonList">
wangqinghua's avatar
wangqinghua committed
    <thead>
    <tr>
        <th nzWidth="20%">资源名称</th>
        <th>所在分组</th>
        <th>告警名称</th>
        <th>严重性</th>
        <th>时间段内发生次数</th>
    </tr>
    </thead>
    <tbody>
wangqinghua's avatar
wangqinghua committed
    <ng-container *ngFor="let item of commonList">
        <tr>
            <td>{{item.hostname}}</td>
            <td>{{item.groupname}}</td>
            <td>{{item.description}}</td>
wangqinghua's avatar
wangqinghua committed
            <td>{{item.priorityName}}</td>
wangqinghua's avatar
wangqinghua committed
            <td>{{item.count}}</td>
wangqinghua's avatar
wangqinghua committed
        </tr>
    </ng-container>
    </tbody>
</nz-table>
wangqinghua's avatar
wangqinghua committed
<div nz-row  nzGutter="4" style="margin: 20px 0">
wangqinghua's avatar
wangqinghua committed
    <div nz-col  nzSpan="20">
        <h3>统计报告</h3>
wangqinghua's avatar
wangqinghua committed
    </div>
wangqinghua's avatar
wangqinghua committed
    <div nz-col nzSpan="4" class="text-right">
        <button [nzLoading]="isDownload2" (click)="downLoadReport()" nz-button nzType="default"><i class="anticon anticon-download"></i>下载</button>
wangqinghua's avatar
wangqinghua committed
    </div>
</div>
wangqinghua's avatar
wangqinghua committed
<nz-table #nzTable1 [nzData]="reportList" [nzFrontPagination]="false" [nzTotal]="totalNum" [nzPageIndex]="pageNum" [nzPageSize]="pageCount" (nzPageIndexChange)="change($event)">
wangqinghua's avatar
wangqinghua committed
    <thead>
    <tr>
        <th nzWidth="20%">时间</th>
        <th>异常总数</th>
        <th>告警次数</th>
        <th>严重告警次数</th>
    </tr>
    </thead>
    <tbody>
wangqinghua's avatar
wangqinghua committed
    <ng-container *ngFor="let data of reportList">
        <tr >
            <td>{{data.dateTime}}</td>
            <td>{{data.countNumber}}</td>
            <td>
wangqinghua's avatar
wangqinghua committed
                <span class="cursor main-color" (click)="showWarnModal(data)">{{data.waring}}</span>
wangqinghua's avatar
wangqinghua committed
            </td>
            <td>
wangqinghua's avatar
wangqinghua committed
                <span class="cursor main-color" (click)="showErrorModal(data)"> {{data.error}}</span>
wangqinghua's avatar
wangqinghua committed
        </tr>
    </ng-container>
    </tbody>
</nz-table>
wangqinghua's avatar
wangqinghua committed
<nz-modal [(nzVisible)]="isVisiable" nzWidth="780" [nzTitle]="title" [nzFooter]="null" (nzOnCancel)="handleCancel()">
wangqinghua's avatar
wangqinghua committed
    <nz-table #nzTable [nzData]="modalList" [nzFrontPagination]="true">
wangqinghua's avatar
wangqinghua committed
        <thead>
        <tr>
            <th nzShowSort>告警名称</th>
            <th>告警时间</th>
            <th>告警设备</th>
        </tr>
        </thead>
        <tbody>
wangqinghua's avatar
wangqinghua committed
        <tr *ngFor="let data of nzTable.data">
wangqinghua's avatar
wangqinghua committed
            <td>{{data.description}}</td>
wangqinghua's avatar
wangqinghua committed
            <td>{{data.lastchangeDate}}</td>
            <td>
                <span style="margin-right: 5px;" *ngFor="let item of data.hosts">{{item.name}}</span>
            </td>
wangqinghua's avatar
wangqinghua committed
        </tr>
        </tbody>
    </nz-table>
</nz-modal>
wangqinghua's avatar
wangqinghua committed