diff options
Diffstat (limited to 'components')
31 files changed, 3306 insertions, 349 deletions
diff --git a/components/datalake-handler/admin/src/src/app/app.module.ts b/components/datalake-handler/admin/src/src/app/app.module.ts index a5393d9a..575e9b78 100644 --- a/components/datalake-handler/admin/src/src/app/app.module.ts +++ b/components/datalake-handler/admin/src/src/app/app.module.ts @@ -61,6 +61,7 @@ import { DatabaseListComponent } from "./database/database-list/database-list.co import { NgxDatatableModule } from "@swimlane/ngx-datatable"; import { CouchbaseComponent } from "./database/database-list/dbs-modal/couchbase/couchbase.component"; import { MongodbComponent } from "./database/database-list/dbs-modal/mongodb/mongodb.component"; +import { HdfsComponent } from "./database/database-list/dbs-modal/hdfs/hdfs.component"; import { DatabaseAddModalComponent } from "./database/database-list/database-add-modal/database-add-modal.component"; import { ElasticsearchComponent } from "./database/database-list/dbs-modal/elasticsearch/elasticsearch.component"; import { DruidComponent } from "./database/database-list/dbs-modal/druid/druid.component"; @@ -94,6 +95,7 @@ import { EditTemplateModalComponent } from './dashboard-setting/template/templat DatabaseListComponent, CouchbaseComponent, MongodbComponent, + HdfsComponent, DatabaseAddModalComponent, ElasticsearchComponent, DruidComponent, @@ -136,6 +138,7 @@ import { EditTemplateModalComponent } from './dashboard-setting/template/templat DruidComponent, ElasticsearchComponent, MongodbComponent, + HdfsComponent, TopicDetailModalComponent, TopicConfigModalComponent, CreateDashboardComponent, diff --git a/components/datalake-handler/admin/src/src/app/database/database-list/database-add-modal/database-add-modal.component.html b/components/datalake-handler/admin/src/src/app/database/database-list/database-add-modal/database-add-modal.component.html index b454f61e..490bf49e 100644 --- a/components/datalake-handler/admin/src/src/app/database/database-list/database-add-modal/database-add-modal.component.html +++ b/components/datalake-handler/admin/src/src/app/database/database-list/database-add-modal/database-add-modal.component.html @@ -41,6 +41,8 @@ limitations under the License. <a class="nav-link" id="v-pills-search-tab" data-toggle="pill" href="#v-pills-search" role="tab" aria-controls="v-pills-search" aria-selected="false">Search Engine</a> + <a class="nav-link" id="v-pills-hadoop-tab" data-toggle="pill" href="#v-pills-hadoop" role="tab" + aria-controls="v-pills-hadoop" aria-selected="false">Hadoop</a> </div> </div> @@ -87,6 +89,14 @@ limitations under the License. aria-selected="true">Elasticsearch</a> </div> </div> + + <!-- Hadoop --> + <div class="tab-pane fade" id="v-pills-hadoop" role="tabpanel" aria-labelledby="v-pills-hadoop-tab"> + <div class="nav flex-column nav-pills" id="menu-tab2" role="tablist" aria-orientation="vertical"> + <a class="nav-link" (click)="this.clickItem('HDFS')" data-toggle="pill" role="tab" + aria-selected="true">HDFS</a> + </div> + </div> </div> <div class="d-flex mt-auto justify-content-end p-3"> @@ -109,147 +119,5 @@ limitations under the License. </div> </div> - <!-- <div class="container-fluid p-0"> - <div class="row m-0 p-0"> - <div class="col-md-4 border-right"></div> - <div class="col-md-8"></div> - </div> - <div class="row m-0 p-0 border border-danger" style="height: 350px;"> - <div class="col-md-4 border-right"> - <div class="nav flex-column nav-pills" id="v-pills-tab" role="tablist" aria-orientation="vertical"> - <a class="nav-link active" id="v-pills-all-tab" data-toggle="pill" href="#v-pills-all" role="tab" - aria-controls="v-pills-all" aria-selected="true">All</a> - </div> - </div> - <div class="col-md-8"> - <div class="tab-content" id="v-pills-tabContent"> - <div class="tab-pane fade show active" id="v-pills-all" role="tabpanel" aria-labelledby="v-pills-all-tab"> - 1111111111111111 - </div> - </div> - </div> - </div> - - <div class="row m-0 p-0 border border-info"> - <div class="col-md-6 p-0"> - - </div> - <div class="col-md-3 p-1"> - <span> - <button type="button" class="btn dl-btn-dark btn-block" (click)="this.passBack()"> - Next - </button> - </span> - </div> - <div class="col-md-3 p-1"> - <span> - <button type="button" class="btn dl-btn-light btn-block" (click)="activeModal.close('Close click')"> - Cancel - </button> - </span> - </div> - </div> - - <div class="d-flex justify-content-center"> - - <div class="p-0 border-right"> - <div class="nav flex-column nav-pills" id="v-pills-tab" role="tablist" aria-orientation="vertical"> - <a class="nav-link active" id="v-pills-all-tab" data-toggle="pill" href="#v-pills-all" role="tab" - aria-controls="v-pills-all" aria-selected="true">All</a> - </div> - </div> - - <div class="p-0"> - <div class="tab-content" id="v-pills-tabContent"> - <div class="tab-pane fade show active" id="v-pills-all" role="tabpanel" aria-labelledby="v-pills-all-tab"> - 1111111111111111 - </div> - </div> - </div> - </div> - - <div class="d-flex"> - <div class="mb-auto"> - <div class="row"> - <div class="col-md-6 p-0"> - - </div> - <div class="col-md-3 p-1"> - <span> - <button type="button" class="btn dl-btn-dark btn-block" (click)="this.passBack()"> - Next - </button> - </span> - </div> - <div class="col-md-3 p-1"> - <span> - <button type="button" class="btn dl-btn-light btn-block" (click)="activeModal.close('Close click')"> - Cancel - </button> - </span> - </div> - </div> - </div> - </div> --> - - - <!-- <div class="row"> - <div class="col-sm-4"> - <div class="nav flex-column nav-pills" id="v-pills-tab" role="tablist" aria-orientation="vertical"> - <a class="nav-link active" id="v-pills-home-tab" data-toggle="pill" href="#v-pills-home" role="tab" - aria-controls="v-pills-home" aria-selected="true">Home</a> - <a class="nav-link" id="v-pills-profile-tab" data-toggle="pill" href="#v-pills-profile" role="tab" - aria-controls="v-pills-profile" aria-selected="false">Profile</a> - <a class="nav-link" id="v-pills-messages-tab" data-toggle="pill" href="#v-pills-messages" role="tab" - aria-controls="v-pills-messages" aria-selected="false">Messages</a> - <a class="nav-link" id="v-pills-settings-tab" data-toggle="pill" href="#v-pills-settings" role="tab" - aria-controls="v-pills-settings" aria-selected="false">Settings</a> - </div> - - </div> - <div class="col-sm-8"> - <div class="tab-content" id="v-pills-tabContent"> - <div class="tab-pane fade show active" id="v-pills-home" role="tabpanel" aria-labelledby="v-pills-home-tab"> - 1111111111111111 - </div> - <div class="tab-pane fade" id="v-pills-profile" role="tabpanel" aria-labelledby="v-pills-profile-tab"> - 2222222222222222222 - </div> - <div class="tab-pane fade" id="v-pills-messages" role="tabpanel" aria-labelledby="v-pills-messages-tab"> - 33333333333333333 - </div> - <div class="tab-pane fade" id="v-pills-settings" role="tabpanel" aria-labelledby="v-pills-settings-tab"> - 4444444444444 - </div> - </div> - </div> - </div> --> - - </div> -</div> - - -<!-- <div class="modal-footer"> - <div class="container"> - <div class="row"> - <div class="col-md-6 p-0"> - - </div> - <div class="col-md-3 p-1"> - <span> - <button type="button" class="btn dl-btn-dark btn-block" (click)="this.passBack()"> - Next - </button> - </span> - </div> - <div class="col-md-3 p-1"> - <span> - <button type="button" class="btn dl-btn-light btn-block" (click)="activeModal.close('Close click')"> - Cancel - </button> - </span> - </div> - </div> - </div> - </div> --> +</div>
\ No newline at end of file diff --git a/components/datalake-handler/admin/src/src/app/database/database-list/database-list.component.html b/components/datalake-handler/admin/src/src/app/database/database-list/database-list.component.html index a675270d..8b71f529 100644 --- a/components/datalake-handler/admin/src/src/app/database/database-list/database-list.component.html +++ b/components/datalake-handler/admin/src/src/app/database/database-list/database-list.component.html @@ -128,6 +128,111 @@ limitations under the License. </svg> </span> </div> + + <!-- HDFS --> + <div class="p-0" *ngIf="db.name == 'HDFS'"> + <span class="pr-1" data-toggle="tooltip" title="HDFS"> + <svg version="1.1" xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="100" height="100" + viewBox="290 -397 2500 1875" style="enable-background:new 290 -397 2500 1875;" xml:space="preserve"> + <style type="text/css"> + .st0 { + fill: #313032; + } + + .st1 { + fill: #FFFFFF; + } + + </style> + <path class="st0" + d="M2149.4,171.3c-85.6,46.1-167.6,92.4-211.3,180C1938,240.2,2049.6,191.3,2149.4,171.3 M1921-47.2 + c-63.6,43.3-108.5,130.8-102.9,216c-20.7-73.8-13.4-143.5,50.2-194.5c10.7-5.2,21.5-10.4,32.2-15.6 C1907.4-43.3,1914.2-45.2,1921-47.2" /> + <path class="st0" d="M2776.4,154c-11.5-72.7-30.6-143.2-57.2-194c-3.2-6.2-8.1-12.5-14.2-18.5c-13.2-13-32.7-25.3-52.8-32.2 + c-21.3-7.3-43.9-8.8-61.7,0.5c-4.6,2.4-9,5.6-12.8,9.5c-11.6,11.7-21.3,26-31.1,40.2c-10.9,15.9-21.8,31.9-34.9,43 + c-15.2,13-34.1,20.8-52,28c-7.5-18.3-16.6-35.9-27.1-52.6c-12.2-19.5-26.2-37.8-41.5-56.1c-11.2-13.5-23.9-25.6-37.9-36.2 + c-13.2-10.1-26.8-18.6-42.5-28.4c-42.3-26.5-78.2-58-114.9-90.2c-16.7-14.6-33.5-29.4-50-43c-87.4-72.1-168.9-107-256.1-112.5 + c-86.6-5.4-178,18.3-286,63.8c-52.1,21.9-90.8,47.8-124.5,79c-32.2,29.8-59.5,64.1-89.6,104.1c-17.5,1.2-33,3.8-48.8,10.2 + c-17.4,7-35,18.3-56,36.8c-14.6,12.9-29,26.1-43,39.7c-12.8,12.5-25.5,25.1-37.8,38.1c-98.3,15.8-178.4,33.2-250.1,61 + c-73.3,28.4-138,67.5-204.4,126.4c-26.1,23.1-50,48.7-71.2,76.4c-20.2,26.5-37.5,54.3-52.6,83.6c-13.3,14.7-26.6,29.5-41,42.5 + c-14,12.6-29,23.3-45.8,29.8l0,0c-9.8,3.8-13.8,6-14.2,5.8c-0.5-0.3-0.8-1.7-1.4-4.4c24.1-23,27.9-56.8,30.1-90.3 + c2.9,3.5,5.7,7.7,8.5,12.2c3.2,4.9,6.4,10,10.4,14.9l16.4,20.6l5.7-25.7c4.8-21.6,8.4-50.3,2.8-75.2c-3.6-16.2-11.1-30.6-24.2-40.8 + c1.2-3.3,2.4-6.3,3.6-9.2c4.1-10.5,8.3-21.3,11.9-31.4l7.1-20.2l-21.1,3.7c-28.1,4.9-88.4,38-130.9,82.1 + c-15.8,16.4-29.3,34.5-38.2,53.5c-9.3,19.8-13.4,40.4-9.8,61.1c3.1,18.1,12.2,35.8,28.6,52.6c3,12.1,5.8,22.6,8.7,32 + c3.4,10.8,7,20.4,11.6,29.8c12.4,25.7,32.1,41.4,54.9,48.7c18.3,5.9,38.6,6.2,58.5,1.8c-4,23.7-6.5,47.6-7.3,71.6 + c-1.3,33.5,0,70.6,3.7,113.6c0.8,9.4,2,19.8,3.6,31.1c1.4,9.6,3,19.1,4.7,28.5c-3.7,10.1-7.5,20.3-11.2,30.4L534,846.9l-38.2,37.8 + c-11.9,11.7-23.8,23.5-35.6,35.3c-1,1-5,4.8-8.6,8.3c-24.1,23.2-28.8,27.8-22,68.5c4.4,26.1,12.9,51.3,25.2,74.7 + c11.8,22.5,27.7,44.4,48,64.8c25.4,25.4,67,57.1,110.6,73.6c24.9,9.5,50.6,14.1,74.7,10.2c-1.2,3.7-2.4,7.4-3.8,11.1 + c-3.8,10.6-8,21-12.7,31.2c-29.6,64.8,0.8,98.6,48,120.2c23.6,10.7,51.6,18,77.7,24.8c5.3,1.4,10.7,2.8,17.4,4.6 + c30.9,8.3,84.2,23.7,132.9,26.7c53.2,3.4,101.1-7.6,114-55.3c5.1-18.9,8-33.4,9.2-47.6c1.1-13.2,0.7-26.5-0.9-42.9 + c15.2-33.6,21.6-43,32.7-59.2c2.2-3.2,4.8-7,5.6-8.2c11.9-17.6,17.5-30.1,19.5-44.2c2-13.6,0.3-27.1-2.2-47.8 + c-0.2-2-0.6-4.8-1.1-8.6c30.6,4,61.4,6.1,92.3,6.3c15.5,0.1,31-0.4,46.4-1.2c-4,2-7.8,4-12.1,6.2l-5.8,3 + c-41.1,21.1-42.8,61.1-29.9,102.2c11.6,37.1,35.4,75,50.4,98c31.4,48.5,61.5,89.5,97.8,111.8c38.1,23.4,81.7,26.1,137.9-4.3 + c28.6-15.5,37.6-31.3,49.8-52.6c3.7-6.5,7.8-13.6,12.4-20.6c11.8-7.8,41.2-32.1,70.1-56c9.8-8.1,19.7-16.2,30.7-25.2 + c7.6,5.6,16.9,9.5,28,12.2c14.5,3.5,31.7,5,52.4,6.5c15.5,1.1,65.9,1.1,98.4,1.1c10.1,0,18.4,0,23.4,0c33.6,0.2,60.8-1.6,81.3-13.2 + c21.9-12.4,34.8-34.3,37.6-73.7c1.2-17.5,1.5-28.3-1-39.3c-2.3-10.3-6.7-19.7-14.3-33.3c-0.5-17-0.9-34-1.4-51 + c-0.5-18-1-36.1-1.4-54.1c-0.6-21.3-2.9-38.6-7.2-55.6c-4.3-16.9-10.4-33.1-18.6-52.6c-5.1-12.3-9.9-24.7-14.4-37.2l-11.8,4.3 + l1.8-0.7l10-3.7v0c-7-19-14-37.4-23.7-57.2c0.6-3.8,1.3-7.9,1.9-12.3l18.7,18.1l27.6,26.6c21.1,20.3,40.3,38.8,63,52.1 + c23.4,13.8,49.7,21.8,83.8,20.2c35.7-1.7,73.9-16.7,105.3-39.9c30.4-22.5,54.8-52.7,65-86.2l8.8-29.1l7.1-23.2 + c50,8.5,103.7,11.2,155.6,5.8c50.1-5.3,98.4-18,140.1-40.3c61.3-32.7,107.3-80.9,140.3-138.1h0c36.9-63.9,57.6-139.3,65.4-216.8 + C2792.8,320.1,2789.3,235.5,2776.4,154L2776.4,154z M2128.1,676.7c-28.8-9.7-48.9-23.9-74.2-39.8c6.9,31.1,10,64,0.8,95 + c-14.6,49.2-38.1,129.8,28.7,144.6c25.4,5.6,37,4.8,72.9-13.7c-29.1,6.6-43.7,5-63.7,1.3c-18.1-3.3-27.7-14.8-32.8-28.4 + c6.3,4.6,16.6,7,34.3,11.3c49.6,12,96.8-11.9,106-46.3c5.4-20.1,4.5-30.6,15.9-58c10.3,3.2,20.8,6.1,31.7,8.7l-18.4,60 + c-15.9,52-78,93.8-132.8,92.9c-50.6-0.9-82.8-32.6-117.7-63.7c-24.1-21.4-47.3-41.9-70.2-62.3c-63-19.9-113.6-43.1-172.1-86.4 + c41.6,48.9,69.9,76,127.9,100.4c-8.4,86.1-38.4,148.9-63.9,231.4c-11.6,37.3-102.7,186.6-128,201.2c-18,10.4-130.9,105.4-152.1,118 + c-15.8,21-29.7,50-53.5,62.6c-72.4,38.3-119-35-158-97c-17.7-28.2-67-109.5-24.1-132.3c40.6-21.5,63.4-36.9,104.8-64.1 + c6.1,11.1,16.5,21.8,23.3,32.9l-4.5-36.4c-2.7-22-2.6-39.8-0.9-61.9c1.7-21.4,3.4-42.8,5.1-64.2c-6.2,21.8-18.7,43.5-24.9,65.3 + c-2.5,8.7-4.6,15.7-5.7,22.3c-93,19-185.3,20.2-278.4,3.6c-5.9-34.4-13.2-70.3-19.2-96.1c-1.8,28.8-0.7,108.5-0.8,153.1 + c-0.1,34.6-1.6,46.4-19.4,75.8c-16.7,27.5-23.7,33.8-47.1,80.3c2,29.3,2,48.7-5.8,76.6c-13,46.3-143.8,10.4-178.2,1 + c-42.5-11.6-130.3-28.9-108.2-85.5c19.4-49.8,31.8-102.4,41.3-172.1c-77.8-112.1-150.2-265.8-164.1-402 + c-10.8-105.7-4.3-170.8,18.6-235.4c36.2-102.5,87-191.2,168.3-262.6c109.8-96.3,212.4-135,373-159.5c-38.6,43.3-76.9,89-118.5,138 + c-42.2,49.6-67.2,99.8-94,154.1c-37,75-36.2,103.5,12.8,169.4c42.3,56.7,65.1,82.3,83.5,137.8c-15.2,31.4-20.8,58-25.9,100.8 + c51.7,56.6,90.2,95.3,140.4,107.3c49.3,11.7,90.4,9.5,134.5-13.1c97.9-50.1,188.5-114.7,299-117.4c51.1-125.6,45.9-230.6,21.4-352.2 + c-16.8-83-23.5-161.6-28.7-246.2c-20.7,87.2-24.6,163.8-9.2,250.6c18.5,104.6,32.9,220.2-18.6,312.2c-99.9,7.6-185.5,68.4-275.5,115 + c-36.2,18.8-73.9,20.6-113.9,9.6c-37.2-10.2-62.3-34.8-102.3-81c-0.6-46.4,9.8-67.8,31.1-109.8c34.2-67.5,72-130.2,113.4-196.6 + c-50.7,61.3-98.8,112.4-138.8,174c-15.3-43.5-37.1-65.6-73.3-114.6c-35.3-47.8-39-68.8-12.6-124.2c26.6-55.6,49.1-104.5,94.3-153.3 + c78.1-84.3,149.6-178.2,235.1-261.3c46.4-45.1,65.2-43.5,126.7-52.9c55.6-8.4,109.9-19.1,166.6-32.2c-54.8,5.1-107.8,7-161.2,8.3 + l-1.7,0c52.5-67.1,83-104.5,168.3-141.5c210-91.2,343.5-101.1,508.5,37.6c42.8,36,80.1,70.8,123.5,101.9 + c-15.7,1.3-29.3,4.2-47.2,11.2c21.8-4.2,47,0,69.6,4.1c6.3,4.1,12.9,8.1,19.6,12.1c30.6,18,48,28,68.7,56.8 + c21.9,30.5,40.1,60.9,56.2,94.5c-10.5-3.8-19.4-6.9-27.2-9.3c-17.8-8.2-38.6-6.9-55.2,3.4l-1.3,0.6c-16.9,8.3-43.2,17.6-60.7,20.5 + c9,3.1,28.8,4.2,38.1,0.5c1.2-0.5,2.5-0.9,3.8-1.2c-4.3,7.4-7,15.6-7.8,24.1c-1.1,11.2,1.1,22.5,6.3,32.6l0,0.1 + c1.6,3.7,3.8,7.2,6.2,9.6c-8,3-16.2,6.3-24.7,10c39.2-6,74.4-7,112.6-2c2.5,12,5.1,24.8,7.4,37.8l-14.2,1.1c-0.4,0-0.8,0.1-1.1,0.1 + c-18.1-14.4-38.2-12-65.7-5.7c-83.7,19.1-64,66-102.5,136.8c40-48.8,37-100,102.1-115.4c15.2-3.6,25.5-8.1,35.8-6.5 + c-18.5,9.3-34.5,24.7-40.8,42.6c-17.9,50.5-6.8,93-26.4,140.2c24.3-42.1,25.8-83.3,47.5-127.6c7.8-15.9,36.8-41.4,54.6-41.8 + l14.6-0.3c4.3,28,6.9,55.9,5.2,79c-3,42.2-14,104.8-20.5,128.7c22-28.3,32.1-88.3,41.7-130.6c10.1-44,7.5-96.7-1.3-144 + c-12.1-64.8,54.6-54.3,93.4-84.8c28.5-22.5,48.1-58.3,74.2-83.7c25.9-25.2,66.7,11.8,76.9,36.4c44.2,106.9,64.3,275.1,52.6,382.8 + c-13.1,120.9-71.5,252.9-178.2,312.5C2423.5,768.5,2263.2,722.2,2128.1,676.7L2128.1,676.7z M1934.9,1213.7 + c-4.4,49.9-21.1,53.2-64.9,52.4c-19.9-0.4-99.2-0.7-119.3-2.4c-28.4-2.5-44.4-5-53.1-11.5c44.6-32.8,120.5-168.1,135.3-214.7 + c15.6-49.2,32.8-92.2,45.5-137.7c5.9,19,10.5,37.9,19,58c14.2,33.7,21.2,54.6,22.2,90.8l3.2,114.6 + C1935.1,1184.7,1937.1,1189.3,1934.9,1213.7L1934.9,1213.7z M591.2,835.8c28.3,98.1,76.7,194.5,130.2,275.5v1.4 + c-3.4,13.9-7.2,27.5-15.4,38.4c-38.3,51.2-135.6-24-163.8-52.7c-30.8-31.5-51.4-68.7-56.3-103.6c-3.6-25.5-0.1-26.1,17.7-44.1 + l71.9-72.8L591.2,835.8L591.2,835.8z M537.1,219c-7.3,15.6-12.4,27.4-15.9,39.6c-15.3,52.7,6.9,99.8-41,138 + c22.5,45.4,21.5,63.5,73.8,42.5c20.2-8.1,36.8-19.4,51.7-32.9c-7.2,18.7-13.8,37.6-19.8,56.7c-1,3.2-2,6.5-3,9.7 + c-37.4,15.9-86.6,26-105.4-13.3c-9.1-19.1-14.3-37.8-21-61.9C394.8,333.5,486.9,249.2,537.1,219L537.1,219z M567.3,286.6 + c-7.6-7.6-13.7-12.8-23.5-11.7c0.8-6.4,1.9-12.7,3.5-18.5c0.8-3,1.6-6,2.5-8.9C562.6,254.9,565.9,268.4,567.3,286.6L567.3,286.6z + M2414.8,48.2c2.3,4.9,4.6,9.9,6.9,14.9c-1.9,1.4-3.6,2.8-5.3,4.3c-3-7.1-7.4-13.5-12.9-18.9C2407.1,48.4,2410.9,48.2,2414.8,48.2 + L2414.8,48.2z M636,337.9L636,337.9L636,337.9L636,337.9z M1109.6,1110.4L1109.6,1110.4L1109.6,1110.4z M1665,1276.2L1665,1276.2 + L1665,1276.2z M1890.6,847.2L1890.6,847.2L1890.6,847.2L1890.6,847.2z M543.4,414.6L543.4,414.6l-0.4-1.1L543.4,414.6L543.4,414.6z + M2710,592.7l0.3,0.2L2710,592.7z M326,399.3c9.8-111,31.4-158.9,110.3-242.5C337.3,226.5,312.7,258.2,326,399.3" /> + <path class="st0" d="M300.5,308.6c10.9-50,21-68.8,51.9-109.8C302.4,233.7,295.9,248,300.5,308.6 M1461.1-387.9 + c-59.3,14.3-70.6,25.2-88.3,83.3C1401.2-347.1,1417.5-360.9,1461.1-387.9" /> + <path class="st0" d="M1554.6-396.3c-117.5,28.8-152.1,49.3-191.1,185.5C1413.1-310.6,1450.7-347.3,1554.6-396.3 M1807.8,100.3 + c12.5-55.5,34.8-109,121-150.4C1814.5-21.5,1793.1,26.5,1807.8,100.3 M2534.8,104.1c67.7-24.1,100.3-78.5,116.5-142.5 + c-26.5,53.6-67.4,98.5-122.9,126c-29.8,14.7-48.8,9.6-82.1,6.4C2480.1,103.8,2501.6,116,2534.8,104.1 M2073.8,158.5 + c-8.7-18.2-24.2-32.3-43.1-39.2c16.6-8.9,32.9-18.2,45.6-29.7c-37.3,17.2-80.6,13-112.6,34.6c-28.2,19-67,79.3-95.6,104.9 + c20.7-8,40.7-22,59.1-36.6c0.2,28.4,16.1,54.3,41.2,67.4c-10.6,13.9-19,29.2-25,45.6c54.5-64.6,133.5-113.3,207.8-134.2 + c-20.8-0.3-45.3,3.6-70.4,11.8C2079.9,174.6,2077.5,166.3,2073.8,158.5 M1995.4,646.4c-2.6,16.7-6.3,37.5-8.9,54.2 + c7.1-18.9,15.6-40.9,23.8-59c8.7-19.1,13.6-20.9,32.2-31c13.1-7.1,37-17,50.1-24.1c-13.5,2.3-37.7,7.2-51.2,9.5 + C2005.3,602.2,2001,610.9,1995.4,646.4 M1378.9,0.9c-41.9,41.4-82.6,183.5-95.6,240.4c20.5-47.2,71.7-179.3,111-212.9 + c10.9-9.3,18.4-15,26.6-19.1c-28.1,47.2-26.1,58.9-16.2,122.2c8.4-64.3,30.6-89.1,67.1-137.1c40-10,77.4-22.1,118.4-38 + c-46.2,5.2-92.4,10-138.7,14.4C1412.7-25.7,1406.4-26.3,1378.9,0.9" /> + <path class="st1" + d="M1949.6,242.8c-7.6-16-0.8-35.2,15.2-42.8c16.1-7.6,35.4-0.8,43,15.3c0.7,1.4,1.3,2.9,1.7,4.5 + c-15.3,11.4-29.3,24.7-41.1,40.2C1960.5,256.8,1953.5,251,1949.6,242.8 M2307.3,104.4c1.3-13.2,12.6-23,25.8-21.7 + c13.3,1.3,23,13.1,21.7,26.3c-0.3,2.7-1,5.4-2.2,7.9c-12.1,2.1-24.2,5.6-36.7,10.2C2310.7,121.8,2306.6,112,2307.3,104.4" /> + </svg> + </span> + </div> </div> <div class="mt-auto"> diff --git a/components/datalake-handler/admin/src/src/app/database/database-list/database-list.component.ts b/components/datalake-handler/admin/src/src/app/database/database-list/database-list.component.ts index d0c3a1cb..13a6274a 100644 --- a/components/datalake-handler/admin/src/src/app/database/database-list/database-list.component.ts +++ b/components/datalake-handler/admin/src/src/app/database/database-list/database-list.component.ts @@ -37,6 +37,7 @@ import { CouchbaseComponent } from "./dbs-modal/couchbase/couchbase.component"; import { DruidComponent } from "./dbs-modal/druid/druid.component"; import { ElasticsearchComponent } from "./dbs-modal/elasticsearch/elasticsearch.component"; import { MongodbComponent } from "./dbs-modal/mongodb/mongodb.component"; +import { HdfsComponent } from "./dbs-modal/hdfs/hdfs.component"; import { AlertComponent } from "src/app/core/alert/alert.component"; // Notify @@ -190,6 +191,13 @@ export class DatabaseListComponent implements OnInit { }); break; } + case "HDFS": { + modalRef = this.modalService.open(HdfsComponent, { + size: "lg", + centered: true + }); + break; + } default: { break; } diff --git a/components/datalake-handler/admin/src/src/app/feeder/feeder.component.ts b/components/datalake-handler/admin/src/src/app/feeder/feeder.component.ts index b3c766d1..f5d05bb7 100644 --- a/components/datalake-handler/admin/src/src/app/feeder/feeder.component.ts +++ b/components/datalake-handler/admin/src/src/app/feeder/feeder.component.ts @@ -52,8 +52,7 @@ export class FeederComponent implements OnInit { this.adminService.setTitle("SIDEBAR.FEDDFER"); this.restApiService.getTopicsFromFeeder().subscribe( res => { - // TODO: -1, because __consumer_offsets - this.topicContent = (res.length - 1).toString(); + this.topicContent = res.length.toString(); setTimeout(() => { this.spinner.hide(); }, 500); diff --git a/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-list.component.html b/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-list.component.html index 8c84e447..1e4ed1cc 100644 --- a/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-list.component.html +++ b/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-list.component.html @@ -343,6 +343,198 @@ limitations under the License. </g> </svg> </span> + + <!-- HDFS enable --> + <span *ngIf="row.sinkdbs.includes('HDFS')" class="pr-1" placement="bottom" ngbTooltip="HDFS" + container="body" tooltipClass="dl-db-icon-hover-enable" [openDelay]="300" [closeDelay]="300"> + <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" + y="0px" width="20" height="20" viewBox="290 -397 2500 1875" + style="enable-background:new 290 -397 2500 1875;" xml:space="preserve"> + <path style="fill:#5DBEBB" d="M2150,170.1c-85.6,46.1-167.6,92.4-211.3,180C1938.6,239,2050.2,190.1,2150,170.1 M1921.6-48.4 + c-63.6,43.3-108.5,130.8-102.9,216c-20.7-73.8-13.4-143.5,50.2-194.5c10.7-5.2,21.5-10.4,32.2-15.6 + C1908-44.5,1914.8-46.4,1921.6-48.4" /> + <path style="fill:#5DBEBB" + d="M2777,152.8c-11.5-72.7-30.6-143.2-57.2-194c-3.2-6.2-8.1-12.5-14.2-18.5c-13.2-13-32.7-25.3-52.8-32.2 + c-21.3-7.3-43.9-8.8-61.7,0.5c-4.6,2.4-9,5.6-12.8,9.5c-11.6,11.7-21.3,26-31.1,40.2c-10.9,15.9-21.8,31.9-34.9,43 + c-15.2,13-34.1,20.8-52,28c-7.5-18.3-16.6-35.9-27.1-52.6c-12.2-19.5-26.2-37.8-41.5-56.1c-11.2-13.5-23.9-25.6-37.9-36.2 + c-13.2-10.1-26.8-18.6-42.5-28.4c-42.3-26.5-78.2-58-114.9-90.2c-16.7-14.6-33.5-29.4-50-43c-87.4-72.1-168.9-107-256.1-112.5 + c-86.6-5.4-178,18.3-286,63.8c-52.1,21.9-90.8,47.8-124.5,79c-32.2,29.8-59.5,64.1-89.6,104.1c-17.5,1.2-33,3.8-48.8,10.2 + c-17.4,7-35,18.3-56,36.8c-14.6,12.9-29,26.1-43,39.7c-12.8,12.5-25.5,25.1-37.8,38.1c-98.3,15.8-178.4,33.2-250.1,61 + c-73.3,28.4-138,67.5-204.4,126.4c-26.1,23.1-50,48.7-71.2,76.4c-20.2,26.5-37.5,54.3-52.6,83.6c-13.3,14.7-26.6,29.5-41,42.5 + c-14,12.6-29,23.3-45.8,29.8l0,0c-9.8,3.8-13.8,6-14.2,5.8c-0.5-0.3-0.8-1.7-1.4-4.4c24.1-23,27.9-56.8,30.1-90.3 + c2.9,3.5,5.7,7.7,8.5,12.2c3.2,4.9,6.4,10,10.4,14.9l16.4,20.6l5.7-25.7c4.8-21.6,8.4-50.3,2.8-75.2c-3.6-16.2-11.1-30.6-24.2-40.8 + c1.2-3.3,2.4-6.3,3.6-9.2c4.1-10.5,8.3-21.3,11.9-31.4l7.1-20.2l-21.1,3.7c-28.1,4.9-88.4,38-130.9,82.1 + c-15.8,16.4-29.3,34.5-38.2,53.5c-9.3,19.8-13.4,40.4-9.8,61.1c3.1,18.1,12.2,35.8,28.6,52.6c3,12.1,5.8,22.6,8.7,32 + c3.4,10.8,7,20.4,11.6,29.8c12.4,25.7,32.1,41.4,54.9,48.7c18.3,5.9,38.6,6.2,58.5,1.8c-4,23.7-6.5,47.6-7.3,71.6 + c-1.3,33.5,0,70.6,3.7,113.6c0.8,9.4,2,19.8,3.6,31.1c1.4,9.6,3,19.1,4.7,28.5c-3.7,10.1-7.5,20.3-11.2,30.4l-17.4,47.2l-38.2,37.8 + c-11.9,11.7-23.8,23.5-35.6,35.3c-1,1-5,4.8-8.6,8.3c-24.1,23.2-28.8,27.8-22,68.5c4.4,26.1,12.9,51.3,25.2,74.7 + c11.8,22.5,27.7,44.4,48,64.8c25.4,25.4,67,57.1,110.6,73.6c24.9,9.5,50.6,14.1,74.7,10.2c-1.2,3.7-2.4,7.4-3.8,11.1 + c-3.8,10.6-8,21-12.7,31.2c-29.6,64.8,0.8,98.6,48,120.2c23.6,10.7,51.6,18,77.7,24.8c5.3,1.4,10.7,2.8,17.4,4.6 + c30.9,8.3,84.2,23.7,132.9,26.7c53.2,3.4,101.1-7.6,114-55.3c5.1-18.9,8-33.4,9.2-47.6c1.1-13.2,0.7-26.5-0.9-42.9 + c15.2-33.6,21.6-43,32.7-59.2c2.2-3.2,4.8-7,5.6-8.2c11.9-17.6,17.5-30.1,19.5-44.2c2-13.6,0.3-27.1-2.2-47.8 + c-0.2-2-0.6-4.8-1.1-8.6c30.6,4,61.4,6.1,92.3,6.3c15.5,0.1,31-0.4,46.4-1.2c-4,2-7.8,4-12.1,6.2l-5.8,3 + c-41.1,21.1-42.8,61.1-29.9,102.2c11.6,37.1,35.4,75,50.4,98c31.4,48.5,61.5,89.5,97.8,111.8c38.1,23.4,81.7,26.1,137.9-4.3 + c28.6-15.5,37.6-31.3,49.8-52.6c3.7-6.5,7.8-13.6,12.4-20.6c11.8-7.8,41.2-32.1,70.1-56c9.8-8.1,19.7-16.2,30.7-25.2 + c7.6,5.6,16.9,9.5,28,12.2c14.5,3.5,31.7,5,52.4,6.5c15.5,1.1,65.9,1.1,98.4,1.1c10.1,0,18.4,0,23.4,0c33.6,0.2,60.8-1.6,81.3-13.2 + c21.9-12.4,34.8-34.3,37.6-73.7c1.2-17.5,1.5-28.3-1-39.3c-2.3-10.3-6.7-19.7-14.3-33.3c-0.5-17-0.9-34-1.4-51 + c-0.5-18-1-36.1-1.4-54.1c-0.6-21.3-2.9-38.6-7.2-55.6c-4.3-16.9-10.4-33.1-18.6-52.6c-5.1-12.3-9.9-24.7-14.4-37.2l-11.8,4.3 + l1.8-0.7l10-3.7l0,0c-7-19-14-37.4-23.7-57.2c0.6-3.8,1.3-7.9,1.9-12.3l18.7,18.1l27.6,26.6c21.1,20.3,40.3,38.8,63,52.1 + c23.4,13.8,49.7,21.8,83.8,20.2c35.7-1.7,73.9-16.7,105.3-39.9c30.4-22.5,54.8-52.7,65-86.2l8.8-29.1l7.1-23.2 + c50,8.5,103.7,11.2,155.6,5.8c50.1-5.3,98.4-18,140.1-40.3c61.3-32.7,107.3-80.9,140.3-138.1l0,0c36.9-63.9,57.6-139.3,65.4-216.8 + C2793.4,318.9,2789.9,234.3,2777,152.8L2777,152.8z M2128.7,675.5c-28.8-9.7-48.9-23.9-74.2-39.8c6.9,31.1,10,64,0.8,95 + c-14.6,49.2-38.1,129.8,28.7,144.6c25.4,5.6,37,4.8,72.9-13.7c-29.1,6.6-43.7,5-63.7,1.3c-18.1-3.3-27.7-14.8-32.8-28.4 + c6.3,4.6,16.6,7,34.3,11.3c49.6,12,96.8-11.9,106-46.3c5.4-20.1,4.5-30.6,15.9-58c10.3,3.2,20.8,6.1,31.7,8.7l-18.4,60 + c-15.9,52-78,93.8-132.8,92.9c-50.6-0.9-82.8-32.6-117.7-63.7c-24.1-21.4-47.3-41.9-70.2-62.3c-63-19.9-113.6-43.1-172.1-86.4 + c41.6,48.9,69.9,76,127.9,100.4c-8.4,86.1-38.4,148.9-63.9,231.4c-11.6,37.3-102.7,186.6-128,201.2c-18,10.4-130.9,105.4-152.1,118 + c-15.8,21-29.7,50-53.5,62.6c-72.4,38.3-119-35-158-97c-17.7-28.2-67-109.5-24.1-132.3c40.6-21.5,63.4-36.9,104.8-64.1 + c6.1,11.1,16.5,21.8,23.3,32.9l-4.5-36.4c-2.7-22-2.6-39.8-0.9-61.9c1.7-21.4,3.4-42.8,5.1-64.2c-6.2,21.8-18.7,43.5-24.9,65.3 + c-2.5,8.7-4.6,15.7-5.7,22.3c-93,19-185.3,20.2-278.4,3.6c-5.9-34.4-13.2-70.3-19.2-96.1c-1.8,28.8-0.7,108.5-0.8,153.1 + c-0.1,34.6-1.6,46.4-19.4,75.8c-16.7,27.5-23.7,33.8-47.1,80.3c2,29.3,2,48.7-5.8,76.6c-13,46.3-143.8,10.4-178.2,1 + c-42.5-11.6-130.3-28.9-108.2-85.5c19.4-49.8,31.8-102.4,41.3-172.1c-77.8-112.1-150.2-265.8-164.1-402 + c-10.8-105.7-4.3-170.8,18.6-235.4c36.2-102.5,87-191.2,168.3-262.6c109.8-96.3,212.4-135,373-159.5c-38.6,43.3-76.9,89-118.5,138 + c-42.2,49.6-67.2,99.8-94,154.1c-37,75-36.2,103.5,12.8,169.4c42.3,56.7,65.1,82.3,83.5,137.8c-15.2,31.4-20.8,58-25.9,100.8 + c51.7,56.6,90.2,95.3,140.4,107.3c49.3,11.7,90.4,9.5,134.5-13.1c97.9-50.1,188.5-114.7,299-117.4c51.1-125.6,45.9-230.6,21.4-352.2 + c-16.8-83-23.5-161.6-28.7-246.2c-20.7,87.2-24.6,163.8-9.2,250.6c18.5,104.6,32.9,220.2-18.6,312.2c-99.9,7.6-185.5,68.4-275.5,115 + c-36.2,18.8-73.9,20.6-113.9,9.6c-37.2-10.2-62.3-34.8-102.3-81c-0.6-46.4,9.8-67.8,31.1-109.8c34.2-67.5,72-130.2,113.4-196.6 + c-50.7,61.3-98.8,112.4-138.8,174C1058,555.1,1036.2,533,1000,484c-35.3-47.8-39-68.8-12.6-124.2c26.6-55.6,49.1-104.5,94.3-153.3 + c78.1-84.3,149.6-178.2,235.1-261.3c46.4-45.1,65.2-43.5,126.7-52.9c55.6-8.4,109.9-19.1,166.6-32.2c-54.8,5.1-107.8,7-161.2,8.3 + h-1.7c52.5-67.1,83-104.5,168.3-141.5c210-91.2,343.5-101.1,508.5,37.6c42.8,36,80.1,70.8,123.5,101.9c-15.7,1.3-29.3,4.2-47.2,11.2 + c21.8-4.2,47,0,69.6,4.1c6.3,4.1,12.9,8.1,19.6,12.1c30.6,18,48,28,68.7,56.8c21.9,30.5,40.1,60.9,56.2,94.5 + c-10.5-3.8-19.4-6.9-27.2-9.3c-17.8-8.2-38.6-6.9-55.2,3.4l-1.3,0.6c-16.9,8.3-43.2,17.6-60.7,20.5c9,3.1,28.8,4.2,38.1,0.5 + c1.2-0.5,2.5-0.9,3.8-1.2c-4.3,7.4-7,15.6-7.8,24.1c-1.1,11.2,1.1,22.5,6.3,32.6v0.1c1.6,3.7,3.8,7.2,6.2,9.6c-8,3-16.2,6.3-24.7,10 + c39.2-6,74.4-7,112.6-2c2.5,12,5.1,24.8,7.4,37.8l-14.2,1.1c-0.4,0-0.8,0.1-1.1,0.1c-18.1-14.4-38.2-12-65.7-5.7 + c-83.7,19.1-64,66-102.5,136.8c40-48.8,37-100,102.1-115.4c15.2-3.6,25.5-8.1,35.8-6.5c-18.5,9.3-34.5,24.7-40.8,42.6 + c-17.9,50.5-6.8,93-26.4,140.2c24.3-42.1,25.8-83.3,47.5-127.6c7.8-15.9,36.8-41.4,54.6-41.8l14.6-0.3c4.3,28,6.9,55.9,5.2,79 + c-3,42.2-14,104.8-20.5,128.7c22-28.3,32.1-88.3,41.7-130.6c10.1-44,7.5-96.7-1.3-144c-12.1-64.8,54.6-54.3,93.4-84.8 + c28.5-22.5,48.1-58.3,74.2-83.7c25.9-25.2,66.7,11.8,76.9,36.4c44.2,106.9,64.3,275.1,52.6,382.8 + c-13.1,120.9-71.5,252.9-178.2,312.5C2424.1,767.3,2263.8,721,2128.7,675.5L2128.7,675.5z M1935.5,1212.5 + c-4.4,49.9-21.1,53.2-64.9,52.4c-19.9-0.4-99.2-0.7-119.3-2.4c-28.4-2.5-44.4-5-53.1-11.5c44.6-32.8,120.5-168.1,135.3-214.7 + c15.6-49.2,32.8-92.2,45.5-137.7c5.9,19,10.5,37.9,19,58c14.2,33.7,21.2,54.6,22.2,90.8l3.2,114.6 + C1935.7,1183.5,1937.7,1188.1,1935.5,1212.5L1935.5,1212.5z M591.8,834.6c28.3,98.1,76.7,194.5,130.2,275.5v1.4 + c-3.4,13.9-7.2,27.5-15.4,38.4c-38.3,51.2-135.6-24-163.8-52.7c-30.8-31.5-51.4-68.7-56.3-103.6c-3.6-25.5-0.1-26.1,17.7-44.1 + l71.9-72.8L591.8,834.6L591.8,834.6z M537.7,217.8c-7.3,15.6-12.4,27.4-15.9,39.6c-15.3,52.7,6.9,99.8-41,138 + c22.5,45.4,21.5,63.5,73.8,42.5c20.2-8.1,36.8-19.4,51.7-32.9c-7.2,18.7-13.8,37.6-19.8,56.7c-1,3.2-2,6.5-3,9.7 + c-37.4,15.9-86.6,26-105.4-13.3c-9.1-19.1-14.3-37.8-21-61.9C395.4,332.3,487.5,248,537.7,217.8L537.7,217.8z M567.9,285.4 + c-7.6-7.6-13.7-12.8-23.5-11.7c0.8-6.4,1.9-12.7,3.5-18.5c0.8-3,1.6-6,2.5-8.9C563.2,253.7,566.5,267.2,567.9,285.4L567.9,285.4z + M2415.4,47c2.3,4.9,4.6,9.9,6.9,14.9c-1.9,1.4-3.6,2.8-5.3,4.3c-3-7.1-7.4-13.5-12.9-18.9C2407.7,47.2,2411.5,47,2415.4,47 + L2415.4,47z M636.6,336.7L636.6,336.7L636.6,336.7L636.6,336.7z M1110.2,1109.2L1110.2,1109.2L1110.2,1109.2z M1665.6,1275 + L1665.6,1275L1665.6,1275z M1891.2,846L1891.2,846L1891.2,846L1891.2,846z M544,413.4L544,413.4l-0.4-1.1L544,413.4L544,413.4z + M2710.6,591.5l0.3,0.2L2710.6,591.5z M326.6,398.1c9.8-111,31.4-158.9,110.3-242.5C337.9,225.3,313.3,257,326.6,398.1" /> + <path style="fill:#5DBEBB" d="M301.1,307.4c10.9-50,21-68.8,51.9-109.8C303,232.5,296.5,246.8,301.1,307.4 M1461.7-389.1 + c-59.3,14.3-70.6,25.2-88.3,83.3C1401.8-348.3,1418.1-362.1,1461.7-389.1" /> + <path style="fill:#5DBEBB" d="M1555.2-397.5c-117.5,28.8-152.1,49.3-191.1,185.5C1413.7-311.8,1451.3-348.5,1555.2-397.5 M1808.4,99.1 + c12.5-55.5,34.8-109,121-150.4C1815.1-22.7,1793.7,25.3,1808.4,99.1 M2535.4,102.9c67.7-24.1,100.3-78.5,116.5-142.5 + c-26.5,53.6-67.4,98.5-122.9,126c-29.8,14.7-48.8,9.6-82.1,6.4C2480.7,102.6,2502.2,114.8,2535.4,102.9 M2074.4,157.3 + c-8.7-18.2-24.2-32.3-43.1-39.2c16.6-8.9,32.9-18.2,45.6-29.7c-37.3,17.2-80.6,13-112.6,34.6c-28.2,19-67,79.3-95.6,104.9 + c20.7-8,40.7-22,59.1-36.6c0.2,28.4,16.1,54.3,41.2,67.4c-10.6,13.9-19,29.2-25,45.6c54.5-64.6,133.5-113.3,207.8-134.2 + c-20.8-0.3-45.3,3.6-70.4,11.8C2080.5,173.4,2078.1,165.1,2074.4,157.3 M1996,645.2c-2.6,16.7-6.3,37.5-8.9,54.2 + c7.1-18.9,15.6-40.9,23.8-59c8.7-19.1,13.6-20.9,32.2-31c13.1-7.1,37-17,50.1-24.1c-13.5,2.3-37.7,7.2-51.2,9.5 + C2005.9,601,2001.6,609.7,1996,645.2 M1379.5-0.3c-41.9,41.4-82.6,183.5-95.6,240.4c20.5-47.2,71.7-179.3,111-212.9 + c10.9-9.3,18.4-15,26.6-19.1c-28.1,47.2-26.1,58.9-16.2,122.2c8.4-64.3,30.6-89.1,67.1-137.1c40-10,77.4-22.1,118.4-38 + c-46.2,5.2-92.4,10-138.7,14.4C1413.3-26.9,1407-27.5,1379.5-0.3" /> + <path style="fill: #FFFFFF" + d="M1950.2,241.6c-7.6-16-0.8-35.2,15.2-42.8c16.1-7.6,35.4-0.8,43,15.3c0.7,1.4,1.3,2.9,1.7,4.5 + c-15.3,11.4-29.3,24.7-41.1,40.2C1961.1,255.6,1954.1,249.8,1950.2,241.6 M2307.9,103.2c1.3-13.2,12.6-23,25.8-21.7 + c13.3,1.3,23,13.1,21.7,26.3c-0.3,2.7-1,5.4-2.2,7.9c-12.1,2.1-24.2,5.6-36.7,10.2C2311.3,120.6,2307.2,110.8,2307.9,103.2" /> + </svg> + + </span> + <!-- HDFS disable --> + <span *ngIf="!row.sinkdbs.includes('HDFS')" class="pr-1" placement="bottom" ngbTooltip="HDFS" + container="body" tooltipClass="dl-db-icon-hover-disable" [openDelay]="300" [closeDelay]="300"> + <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" + y="0px" width="20" height="20" viewBox="290 -397 2500 1875" + style="enable-background:new 290 -397 2500 1875;" xml:space="preserve"> + <path style="fill: #d2d3d5" d="M2150,170.1c-85.6,46.1-167.6,92.4-211.3,180C1938.6,239,2050.2,190.1,2150,170.1 M1921.6-48.4 + c-63.6,43.3-108.5,130.8-102.9,216c-20.7-73.8-13.4-143.5,50.2-194.5c10.7-5.2,21.5-10.4,32.2-15.6 + C1908-44.5,1914.8-46.4,1921.6-48.4" /> + <path style="fill: #d2d3d5" + d="M2777,152.8c-11.5-72.7-30.6-143.2-57.2-194c-3.2-6.2-8.1-12.5-14.2-18.5c-13.2-13-32.7-25.3-52.8-32.2 + c-21.3-7.3-43.9-8.8-61.7,0.5c-4.6,2.4-9,5.6-12.8,9.5c-11.6,11.7-21.3,26-31.1,40.2c-10.9,15.9-21.8,31.9-34.9,43 + c-15.2,13-34.1,20.8-52,28c-7.5-18.3-16.6-35.9-27.1-52.6c-12.2-19.5-26.2-37.8-41.5-56.1c-11.2-13.5-23.9-25.6-37.9-36.2 + c-13.2-10.1-26.8-18.6-42.5-28.4c-42.3-26.5-78.2-58-114.9-90.2c-16.7-14.6-33.5-29.4-50-43c-87.4-72.1-168.9-107-256.1-112.5 + c-86.6-5.4-178,18.3-286,63.8c-52.1,21.9-90.8,47.8-124.5,79c-32.2,29.8-59.5,64.1-89.6,104.1c-17.5,1.2-33,3.8-48.8,10.2 + c-17.4,7-35,18.3-56,36.8c-14.6,12.9-29,26.1-43,39.7c-12.8,12.5-25.5,25.1-37.8,38.1c-98.3,15.8-178.4,33.2-250.1,61 + c-73.3,28.4-138,67.5-204.4,126.4c-26.1,23.1-50,48.7-71.2,76.4c-20.2,26.5-37.5,54.3-52.6,83.6c-13.3,14.7-26.6,29.5-41,42.5 + c-14,12.6-29,23.3-45.8,29.8l0,0c-9.8,3.8-13.8,6-14.2,5.8c-0.5-0.3-0.8-1.7-1.4-4.4c24.1-23,27.9-56.8,30.1-90.3 + c2.9,3.5,5.7,7.7,8.5,12.2c3.2,4.9,6.4,10,10.4,14.9l16.4,20.6l5.7-25.7c4.8-21.6,8.4-50.3,2.8-75.2c-3.6-16.2-11.1-30.6-24.2-40.8 + c1.2-3.3,2.4-6.3,3.6-9.2c4.1-10.5,8.3-21.3,11.9-31.4l7.1-20.2l-21.1,3.7c-28.1,4.9-88.4,38-130.9,82.1 + c-15.8,16.4-29.3,34.5-38.2,53.5c-9.3,19.8-13.4,40.4-9.8,61.1c3.1,18.1,12.2,35.8,28.6,52.6c3,12.1,5.8,22.6,8.7,32 + c3.4,10.8,7,20.4,11.6,29.8c12.4,25.7,32.1,41.4,54.9,48.7c18.3,5.9,38.6,6.2,58.5,1.8c-4,23.7-6.5,47.6-7.3,71.6 + c-1.3,33.5,0,70.6,3.7,113.6c0.8,9.4,2,19.8,3.6,31.1c1.4,9.6,3,19.1,4.7,28.5c-3.7,10.1-7.5,20.3-11.2,30.4l-17.4,47.2l-38.2,37.8 + c-11.9,11.7-23.8,23.5-35.6,35.3c-1,1-5,4.8-8.6,8.3c-24.1,23.2-28.8,27.8-22,68.5c4.4,26.1,12.9,51.3,25.2,74.7 + c11.8,22.5,27.7,44.4,48,64.8c25.4,25.4,67,57.1,110.6,73.6c24.9,9.5,50.6,14.1,74.7,10.2c-1.2,3.7-2.4,7.4-3.8,11.1 + c-3.8,10.6-8,21-12.7,31.2c-29.6,64.8,0.8,98.6,48,120.2c23.6,10.7,51.6,18,77.7,24.8c5.3,1.4,10.7,2.8,17.4,4.6 + c30.9,8.3,84.2,23.7,132.9,26.7c53.2,3.4,101.1-7.6,114-55.3c5.1-18.9,8-33.4,9.2-47.6c1.1-13.2,0.7-26.5-0.9-42.9 + c15.2-33.6,21.6-43,32.7-59.2c2.2-3.2,4.8-7,5.6-8.2c11.9-17.6,17.5-30.1,19.5-44.2c2-13.6,0.3-27.1-2.2-47.8 + c-0.2-2-0.6-4.8-1.1-8.6c30.6,4,61.4,6.1,92.3,6.3c15.5,0.1,31-0.4,46.4-1.2c-4,2-7.8,4-12.1,6.2l-5.8,3 + c-41.1,21.1-42.8,61.1-29.9,102.2c11.6,37.1,35.4,75,50.4,98c31.4,48.5,61.5,89.5,97.8,111.8c38.1,23.4,81.7,26.1,137.9-4.3 + c28.6-15.5,37.6-31.3,49.8-52.6c3.7-6.5,7.8-13.6,12.4-20.6c11.8-7.8,41.2-32.1,70.1-56c9.8-8.1,19.7-16.2,30.7-25.2 + c7.6,5.6,16.9,9.5,28,12.2c14.5,3.5,31.7,5,52.4,6.5c15.5,1.1,65.9,1.1,98.4,1.1c10.1,0,18.4,0,23.4,0c33.6,0.2,60.8-1.6,81.3-13.2 + c21.9-12.4,34.8-34.3,37.6-73.7c1.2-17.5,1.5-28.3-1-39.3c-2.3-10.3-6.7-19.7-14.3-33.3c-0.5-17-0.9-34-1.4-51 + c-0.5-18-1-36.1-1.4-54.1c-0.6-21.3-2.9-38.6-7.2-55.6c-4.3-16.9-10.4-33.1-18.6-52.6c-5.1-12.3-9.9-24.7-14.4-37.2l-11.8,4.3 + l1.8-0.7l10-3.7l0,0c-7-19-14-37.4-23.7-57.2c0.6-3.8,1.3-7.9,1.9-12.3l18.7,18.1l27.6,26.6c21.1,20.3,40.3,38.8,63,52.1 + c23.4,13.8,49.7,21.8,83.8,20.2c35.7-1.7,73.9-16.7,105.3-39.9c30.4-22.5,54.8-52.7,65-86.2l8.8-29.1l7.1-23.2 + c50,8.5,103.7,11.2,155.6,5.8c50.1-5.3,98.4-18,140.1-40.3c61.3-32.7,107.3-80.9,140.3-138.1l0,0c36.9-63.9,57.6-139.3,65.4-216.8 + C2793.4,318.9,2789.9,234.3,2777,152.8L2777,152.8z M2128.7,675.5c-28.8-9.7-48.9-23.9-74.2-39.8c6.9,31.1,10,64,0.8,95 + c-14.6,49.2-38.1,129.8,28.7,144.6c25.4,5.6,37,4.8,72.9-13.7c-29.1,6.6-43.7,5-63.7,1.3c-18.1-3.3-27.7-14.8-32.8-28.4 + c6.3,4.6,16.6,7,34.3,11.3c49.6,12,96.8-11.9,106-46.3c5.4-20.1,4.5-30.6,15.9-58c10.3,3.2,20.8,6.1,31.7,8.7l-18.4,60 + c-15.9,52-78,93.8-132.8,92.9c-50.6-0.9-82.8-32.6-117.7-63.7c-24.1-21.4-47.3-41.9-70.2-62.3c-63-19.9-113.6-43.1-172.1-86.4 + c41.6,48.9,69.9,76,127.9,100.4c-8.4,86.1-38.4,148.9-63.9,231.4c-11.6,37.3-102.7,186.6-128,201.2c-18,10.4-130.9,105.4-152.1,118 + c-15.8,21-29.7,50-53.5,62.6c-72.4,38.3-119-35-158-97c-17.7-28.2-67-109.5-24.1-132.3c40.6-21.5,63.4-36.9,104.8-64.1 + c6.1,11.1,16.5,21.8,23.3,32.9l-4.5-36.4c-2.7-22-2.6-39.8-0.9-61.9c1.7-21.4,3.4-42.8,5.1-64.2c-6.2,21.8-18.7,43.5-24.9,65.3 + c-2.5,8.7-4.6,15.7-5.7,22.3c-93,19-185.3,20.2-278.4,3.6c-5.9-34.4-13.2-70.3-19.2-96.1c-1.8,28.8-0.7,108.5-0.8,153.1 + c-0.1,34.6-1.6,46.4-19.4,75.8c-16.7,27.5-23.7,33.8-47.1,80.3c2,29.3,2,48.7-5.8,76.6c-13,46.3-143.8,10.4-178.2,1 + c-42.5-11.6-130.3-28.9-108.2-85.5c19.4-49.8,31.8-102.4,41.3-172.1c-77.8-112.1-150.2-265.8-164.1-402 + c-10.8-105.7-4.3-170.8,18.6-235.4c36.2-102.5,87-191.2,168.3-262.6c109.8-96.3,212.4-135,373-159.5c-38.6,43.3-76.9,89-118.5,138 + c-42.2,49.6-67.2,99.8-94,154.1c-37,75-36.2,103.5,12.8,169.4c42.3,56.7,65.1,82.3,83.5,137.8c-15.2,31.4-20.8,58-25.9,100.8 + c51.7,56.6,90.2,95.3,140.4,107.3c49.3,11.7,90.4,9.5,134.5-13.1c97.9-50.1,188.5-114.7,299-117.4c51.1-125.6,45.9-230.6,21.4-352.2 + c-16.8-83-23.5-161.6-28.7-246.2c-20.7,87.2-24.6,163.8-9.2,250.6c18.5,104.6,32.9,220.2-18.6,312.2c-99.9,7.6-185.5,68.4-275.5,115 + c-36.2,18.8-73.9,20.6-113.9,9.6c-37.2-10.2-62.3-34.8-102.3-81c-0.6-46.4,9.8-67.8,31.1-109.8c34.2-67.5,72-130.2,113.4-196.6 + c-50.7,61.3-98.8,112.4-138.8,174C1058,555.1,1036.2,533,1000,484c-35.3-47.8-39-68.8-12.6-124.2c26.6-55.6,49.1-104.5,94.3-153.3 + c78.1-84.3,149.6-178.2,235.1-261.3c46.4-45.1,65.2-43.5,126.7-52.9c55.6-8.4,109.9-19.1,166.6-32.2c-54.8,5.1-107.8,7-161.2,8.3 + h-1.7c52.5-67.1,83-104.5,168.3-141.5c210-91.2,343.5-101.1,508.5,37.6c42.8,36,80.1,70.8,123.5,101.9c-15.7,1.3-29.3,4.2-47.2,11.2 + c21.8-4.2,47,0,69.6,4.1c6.3,4.1,12.9,8.1,19.6,12.1c30.6,18,48,28,68.7,56.8c21.9,30.5,40.1,60.9,56.2,94.5 + c-10.5-3.8-19.4-6.9-27.2-9.3c-17.8-8.2-38.6-6.9-55.2,3.4l-1.3,0.6c-16.9,8.3-43.2,17.6-60.7,20.5c9,3.1,28.8,4.2,38.1,0.5 + c1.2-0.5,2.5-0.9,3.8-1.2c-4.3,7.4-7,15.6-7.8,24.1c-1.1,11.2,1.1,22.5,6.3,32.6v0.1c1.6,3.7,3.8,7.2,6.2,9.6c-8,3-16.2,6.3-24.7,10 + c39.2-6,74.4-7,112.6-2c2.5,12,5.1,24.8,7.4,37.8l-14.2,1.1c-0.4,0-0.8,0.1-1.1,0.1c-18.1-14.4-38.2-12-65.7-5.7 + c-83.7,19.1-64,66-102.5,136.8c40-48.8,37-100,102.1-115.4c15.2-3.6,25.5-8.1,35.8-6.5c-18.5,9.3-34.5,24.7-40.8,42.6 + c-17.9,50.5-6.8,93-26.4,140.2c24.3-42.1,25.8-83.3,47.5-127.6c7.8-15.9,36.8-41.4,54.6-41.8l14.6-0.3c4.3,28,6.9,55.9,5.2,79 + c-3,42.2-14,104.8-20.5,128.7c22-28.3,32.1-88.3,41.7-130.6c10.1-44,7.5-96.7-1.3-144c-12.1-64.8,54.6-54.3,93.4-84.8 + c28.5-22.5,48.1-58.3,74.2-83.7c25.9-25.2,66.7,11.8,76.9,36.4c44.2,106.9,64.3,275.1,52.6,382.8 + c-13.1,120.9-71.5,252.9-178.2,312.5C2424.1,767.3,2263.8,721,2128.7,675.5L2128.7,675.5z M1935.5,1212.5 + c-4.4,49.9-21.1,53.2-64.9,52.4c-19.9-0.4-99.2-0.7-119.3-2.4c-28.4-2.5-44.4-5-53.1-11.5c44.6-32.8,120.5-168.1,135.3-214.7 + c15.6-49.2,32.8-92.2,45.5-137.7c5.9,19,10.5,37.9,19,58c14.2,33.7,21.2,54.6,22.2,90.8l3.2,114.6 + C1935.7,1183.5,1937.7,1188.1,1935.5,1212.5L1935.5,1212.5z M591.8,834.6c28.3,98.1,76.7,194.5,130.2,275.5v1.4 + c-3.4,13.9-7.2,27.5-15.4,38.4c-38.3,51.2-135.6-24-163.8-52.7c-30.8-31.5-51.4-68.7-56.3-103.6c-3.6-25.5-0.1-26.1,17.7-44.1 + l71.9-72.8L591.8,834.6L591.8,834.6z M537.7,217.8c-7.3,15.6-12.4,27.4-15.9,39.6c-15.3,52.7,6.9,99.8-41,138 + c22.5,45.4,21.5,63.5,73.8,42.5c20.2-8.1,36.8-19.4,51.7-32.9c-7.2,18.7-13.8,37.6-19.8,56.7c-1,3.2-2,6.5-3,9.7 + c-37.4,15.9-86.6,26-105.4-13.3c-9.1-19.1-14.3-37.8-21-61.9C395.4,332.3,487.5,248,537.7,217.8L537.7,217.8z M567.9,285.4 + c-7.6-7.6-13.7-12.8-23.5-11.7c0.8-6.4,1.9-12.7,3.5-18.5c0.8-3,1.6-6,2.5-8.9C563.2,253.7,566.5,267.2,567.9,285.4L567.9,285.4z + M2415.4,47c2.3,4.9,4.6,9.9,6.9,14.9c-1.9,1.4-3.6,2.8-5.3,4.3c-3-7.1-7.4-13.5-12.9-18.9C2407.7,47.2,2411.5,47,2415.4,47 + L2415.4,47z M636.6,336.7L636.6,336.7L636.6,336.7L636.6,336.7z M1110.2,1109.2L1110.2,1109.2L1110.2,1109.2z M1665.6,1275 + L1665.6,1275L1665.6,1275z M1891.2,846L1891.2,846L1891.2,846L1891.2,846z M544,413.4L544,413.4l-0.4-1.1L544,413.4L544,413.4z + M2710.6,591.5l0.3,0.2L2710.6,591.5z M326.6,398.1c9.8-111,31.4-158.9,110.3-242.5C337.9,225.3,313.3,257,326.6,398.1" /> + <path style="fill: #d2d3d5" d="M301.1,307.4c10.9-50,21-68.8,51.9-109.8C303,232.5,296.5,246.8,301.1,307.4 M1461.7-389.1 + c-59.3,14.3-70.6,25.2-88.3,83.3C1401.8-348.3,1418.1-362.1,1461.7-389.1" /> + <path style="fill: #d2d3d5" d="M1555.2-397.5c-117.5,28.8-152.1,49.3-191.1,185.5C1413.7-311.8,1451.3-348.5,1555.2-397.5 M1808.4,99.1 + c12.5-55.5,34.8-109,121-150.4C1815.1-22.7,1793.7,25.3,1808.4,99.1 M2535.4,102.9c67.7-24.1,100.3-78.5,116.5-142.5 + c-26.5,53.6-67.4,98.5-122.9,126c-29.8,14.7-48.8,9.6-82.1,6.4C2480.7,102.6,2502.2,114.8,2535.4,102.9 M2074.4,157.3 + c-8.7-18.2-24.2-32.3-43.1-39.2c16.6-8.9,32.9-18.2,45.6-29.7c-37.3,17.2-80.6,13-112.6,34.6c-28.2,19-67,79.3-95.6,104.9 + c20.7-8,40.7-22,59.1-36.6c0.2,28.4,16.1,54.3,41.2,67.4c-10.6,13.9-19,29.2-25,45.6c54.5-64.6,133.5-113.3,207.8-134.2 + c-20.8-0.3-45.3,3.6-70.4,11.8C2080.5,173.4,2078.1,165.1,2074.4,157.3 M1996,645.2c-2.6,16.7-6.3,37.5-8.9,54.2 + c7.1-18.9,15.6-40.9,23.8-59c8.7-19.1,13.6-20.9,32.2-31c13.1-7.1,37-17,50.1-24.1c-13.5,2.3-37.7,7.2-51.2,9.5 + C2005.9,601,2001.6,609.7,1996,645.2 M1379.5-0.3c-41.9,41.4-82.6,183.5-95.6,240.4c20.5-47.2,71.7-179.3,111-212.9 + c10.9-9.3,18.4-15,26.6-19.1c-28.1,47.2-26.1,58.9-16.2,122.2c8.4-64.3,30.6-89.1,67.1-137.1c40-10,77.4-22.1,118.4-38 + c-46.2,5.2-92.4,10-138.7,14.4C1413.3-26.9,1407-27.5,1379.5-0.3" /> + <path style="fill: #FFFFFF" + d="M1950.2,241.6c-7.6-16-0.8-35.2,15.2-42.8c16.1-7.6,35.4-0.8,43,15.3c0.7,1.4,1.3,2.9,1.7,4.5 + c-15.3,11.4-29.3,24.7-41.1,40.2C1961.1,255.6,1954.1,249.8,1950.2,241.6 M2307.9,103.2c1.3-13.2,12.6-23,25.8-21.7 + c13.3,1.3,23,13.1,21.7,26.3c-0.3,2.7-1,5.4-2.2,7.9c-12.1,2.1-24.2,5.6-36.7,10.2C2311.3,120.6,2307.2,110.8,2307.9,103.2" /> + </svg> + + </span> + </ng-template> </ngx-datatable-column> diff --git a/components/datalake-handler/admin/src/src/styles.css b/components/datalake-handler/admin/src/src/styles.css index 5087697b..ef3295b3 100644 --- a/components/datalake-handler/admin/src/src/styles.css +++ b/components/datalake-handler/admin/src/src/styles.css @@ -380,6 +380,10 @@ hr { } /* Input: checkbox */ +.input-group-text { + padding: .375rem 16px; +} + .dl-input-chk { font-family: "Open Sans", sans-serif; font-weight: 400; diff --git a/components/datalake-handler/feeder/src/assembly/scripts/init_db.sql b/components/datalake-handler/feeder/src/assembly/scripts/init_db.sql index ad142dcf..4fe9ad3f 100644 --- a/components/datalake-handler/feeder/src/assembly/scripts/init_db.sql +++ b/components/datalake-handler/feeder/src/assembly/scripts/init_db.sql @@ -88,30 +88,30 @@ insert into db (`name`,`host`,`login`) values ('HDFS','dlhdfs','dl'); -- in production, default enabled should be off
insert into `topic`(`name`,`enabled`,`save_raw`,`ttl`,`data_format`) values ('_DL_DEFAULT_',1,0,3650,'JSON');
+insert into `map_db_topic`(`db_name`,`topic_name`) select `name`, '_DL_DEFAULT_' from db;
+
+
insert into `topic`(`name`,correlate_cleared_message,`enabled`, message_id_path,`data_format`) values ('unauthenticated.SEC_FAULT_OUTPUT',1,1,'/event/commonEventHeader/eventName,/event/commonEventHeader/reportingEntityName,/event/faultFields/specificProblem,/event/commonEventHeader/eventId','JSON');
+insert into `map_db_topic`(`db_name`,`topic_name`) select `name`, 'unauthenticated.SEC_FAULT_OUTPUT' from db;
+
insert into `topic`(`name`,`enabled`, aggregate_array_path,flatten_array_path,`data_format`)
values ('unauthenticated.VES_MEASUREMENT_OUTPUT',1,
-'/event/measurementsForVfScalingFields/diskUsageArray,/event/measurementsForVfScalingFields/cpuUsageArray,/event/measurementsForVfScalingFields/vNicPerformanceArray',
+'/event/measurementsForVfScalingFields/memoryUsageArray,/event/measurementsForVfScalingFields/diskUsageArray,/event/measurementsForVfScalingFields/cpuUsageArray,/event/measurementsForVfScalingFields/vNicPerformanceArray',
'/event/measurementsForVfScalingFields/astriMeasurement/astriDPMeasurementArray/astriInterface',
'JSON');
+insert into `map_db_topic`(`db_name`,`topic_name`) select `name`, 'unauthenticated.VES_MEASUREMENT_OUTPUT' from db;
-insert into `map_db_topic`(`db_name`,`topic_name`) values ('Couchbase','_DL_DEFAULT_');
-insert into `map_db_topic`(`db_name`,`topic_name`) values ('Elasticsearch','_DL_DEFAULT_');
-insert into `map_db_topic`(`db_name`,`topic_name`) values ('MongoDB','_DL_DEFAULT_');
-insert into `map_db_topic`(`db_name`,`topic_name`) values ('Druid','_DL_DEFAULT_');
-insert into `map_db_topic`(`db_name`,`topic_name`) values ('HDFS','_DL_DEFAULT_');
-
-insert into `map_db_topic`(`db_name`,`topic_name`) values ('Couchbase','unauthenticated.SEC_FAULT_OUTPUT');
-insert into `map_db_topic`(`db_name`,`topic_name`) values ('Elasticsearch','unauthenticated.SEC_FAULT_OUTPUT');
-insert into `map_db_topic`(`db_name`,`topic_name`) values ('MongoDB','unauthenticated.SEC_FAULT_OUTPUT');
-insert into `map_db_topic`(`db_name`,`topic_name`) values ('Druid','unauthenticated.SEC_FAULT_OUTPUT');
-insert into `map_db_topic`(`db_name`,`topic_name`) values ('HDFS','unauthenticated.SEC_FAULT_OUTPUT');
+insert into `topic`(`name`,`enabled`, flatten_array_path,`data_format`)
+values ('EPC',1,
+'/event/measurementsForVfScalingFields/astriMeasurement/astriDPMeasurementArray/astriInterface',
+'JSON');
+insert into `map_db_topic`(`db_name`,`topic_name`) select `name`, 'EPC' from db;
-insert into `map_db_topic`(`db_name`,`topic_name`) values ('Couchbase','unauthenticated.VES_MEASUREMENT_OUTPUT');
-insert into `map_db_topic`(`db_name`,`topic_name`) values ('Elasticsearch','unauthenticated.VES_MEASUREMENT_OUTPUT');
-insert into `map_db_topic`(`db_name`,`topic_name`) values ('MongoDB','unauthenticated.VES_MEASUREMENT_OUTPUT');
-insert into `map_db_topic`(`db_name`,`topic_name`) values ('Druid','unauthenticated.VES_MEASUREMENT_OUTPUT');
-insert into `map_db_topic`(`db_name`,`topic_name`) values ('HDFS','unauthenticated.VES_MEASUREMENT_OUTPUT');
+insert into `topic`(`name`,`enabled`, aggregate_array_path,`data_format`)
+values ('HW',1,
+'/event/measurementsForVfScalingFields/memoryUsageArray,/event/measurementsForVfScalingFields/diskUsageArray,/event/measurementsForVfScalingFields/cpuUsageArray,/event/measurementsForVfScalingFields/vNicPerformanceArray',
+'JSON');
+insert into `map_db_topic`(`db_name`,`topic_name`) select `name`, 'HW' from db;
insert into portal (`name`,`related_db`, host) values ('Kibana', 'Elasticsearch', 'dl_es');
insert into portal (`name`,`related_db`) values ('Elasticsearch', 'Elasticsearch');
@@ -121,5 +121,5 @@ insert into design_type (`name`,`portal`) values ('Kibana Dashboard', 'Kibana'); insert into design_type (`name`,`portal`) values ('Kibana Search', 'Kibana');
insert into design_type (`name`,`portal`) values ('Kibana Visualization', 'Kibana');
insert into design_type (`name`,`portal`) values ('Elasticsearch Field Mapping Template', 'Elasticsearch');
-insert into design_type (`name`,`portal`) values ('Druid Kafka Indexing Service Supervisor', 'Druid');
+insert into design_type (`name`,`portal`) values ('Druid Kafka Indexing Service Supervisor Spec', 'Druid');
diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/config/ApplicationConfiguration.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/config/ApplicationConfiguration.java index 73067182..2bcd0a39 100644 --- a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/config/ApplicationConfiguration.java +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/config/ApplicationConfiguration.java @@ -70,4 +70,7 @@ public class ApplicationConfiguration { //Version private String datalakeVersion; + + //Kibana + private String KibanaDashboardImportApi; } diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/controller/DesignTypeController.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/controller/DesignTypeController.java new file mode 100755 index 00000000..db789a47 --- /dev/null +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/controller/DesignTypeController.java @@ -0,0 +1,54 @@ +/*
+ * ============LICENSE_START=======================================================
+ * ONAP : DataLake
+ * ================================================================================
+ * Copyright 2019 China Mobile
+ *=================================================================================
+ * Licensed 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.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.datalake.feeder.controller;
+
+import java.util.List;
+
+import org.onap.datalake.feeder.service.DesignTypeService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.MediaType;
+import org.springframework.web.bind.annotation.*;
+
+import io.swagger.annotations.ApiOperation;
+
+/**
+ * This controller manages designType settings
+ *
+ * @author guochunmeng
+ */
+@CrossOrigin(origins = "*")
+@RestController
+@RequestMapping(value = "/designTypes", produces = { MediaType.APPLICATION_JSON_VALUE })
+public class DesignTypeController {
+
+ @Autowired
+ private DesignTypeService designTypeService;
+
+ @GetMapping("")
+ @ResponseBody
+ @ApiOperation(value="List all designTypes names")
+ public List<String> getTemplateTypeName() {
+
+ return designTypeService.listNames();
+
+ }
+
+}
diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/controller/PortalController.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/controller/PortalController.java new file mode 100644 index 00000000..cb3ff344 --- /dev/null +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/controller/PortalController.java @@ -0,0 +1,125 @@ +/* + * ============LICENSE_START======================================================= + * ONAP : DataLake + * ================================================================================ + * Copyright 2019 China Mobile + *================================================================================= + * Licensed 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.datalake.feeder.controller; + +import io.swagger.annotations.ApiOperation; +import org.onap.datalake.feeder.controller.domain.PostReturnBody; +import org.onap.datalake.feeder.domain.Portal; +import org.onap.datalake.feeder.dto.PortalConfig; +import org.onap.datalake.feeder.repository.PortalRepository; +import org.onap.datalake.feeder.service.PortalService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.MediaType; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +/** + * This controller manages Portal settings + * + * + * @author guochunmeng + */ +@CrossOrigin(origins = "*") +@RestController +@RequestMapping(value = "/portals", produces = { MediaType.APPLICATION_JSON_VALUE }) +public class PortalController { + + private final Logger log = LoggerFactory.getLogger(this.getClass()); + + @Autowired + private PortalRepository portalRepository; + + @Autowired + private PortalService portalService; + + @PutMapping("") + @ResponseBody + @ApiOperation("update portal") + public PostReturnBody<PortalConfig> updatePortal(@RequestBody PortalConfig portalConfig, BindingResult result, HttpServletResponse response) throws IOException { + + if (result.hasErrors()) { + sendError(response, 400, "Error binding PortalConfig: "+result.toString()); + return null; + } + + Portal portal = null; + try { + portal = portalRepository.findById(portalConfig.getName()).get(); + if (portalConfig.getEnabled() == false) { + log.info("Disable portal "+portalConfig.getName()); + portal.setPort(null); + portal.setHost(null); + portal.setLogin(null); + portal.setPass(null); + portal.setEnabled(false); + }else { + log.info("Update portal "+portalConfig); + portalService.fillPortalConfiguration(portalConfig, portal); + } + portalRepository.save(portal); + return mkPostReturnBody(200, portal); + } catch (Exception e) { + log.debug("Update or delete portal failed, Portal: "+portalConfig, e.getMessage()); + sendError(response, 400, "Error update or delete portal: "+portal); + return null; + } + } + + + @GetMapping("") + @ResponseBody + @ApiOperation(value = "List all portals") + public List<PortalConfig> getPortals() { + + List<Portal> portalList = null; + List<PortalConfig> portalConfigList = new ArrayList<>(); + portalList = (List<Portal>)portalRepository.findAll(); + if (portalList != null && portalList.size() > 0) { + log.info("PortalList is not null"); + for(Portal portal : portalList) { + portalConfigList.add(portal.getPortalConfig()); + } + } + return portalConfigList; + } + + + private void sendError(HttpServletResponse response, int sc, String msg) throws IOException { + log.info(msg); + response.sendError(sc, msg); + } + + + private PostReturnBody<PortalConfig> mkPostReturnBody(int statusCode, Portal portal) { + PostReturnBody<PortalConfig> retBody = new PostReturnBody<>(); + retBody.setStatusCode(statusCode); + retBody.setReturnBody(portal.getPortalConfig()); + return retBody; + } + +}
\ No newline at end of file diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/controller/PortalDesignController.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/controller/PortalDesignController.java new file mode 100644 index 00000000..7b717268 --- /dev/null +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/controller/PortalDesignController.java @@ -0,0 +1,192 @@ +/* + * ============LICENSE_START======================================================= + * ONAP : DataLake + * ================================================================================ + * Copyright 2019 China Mobile + *================================================================================= + * Licensed 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.datalake.feeder.controller; + +import org.onap.datalake.feeder.controller.domain.PostReturnBody; +import org.onap.datalake.feeder.domain.PortalDesign; +import org.onap.datalake.feeder.dto.PortalDesignConfig; +import org.onap.datalake.feeder.repository.PortalDesignRepository; +import org.onap.datalake.feeder.service.PortalDesignService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.MediaType; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.annotation.*; + +import io.swagger.annotations.ApiOperation; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +import javax.servlet.http.HttpServletResponse; + + +/** + * This controller manages portalDesign settings + * + * @author guochunmeng + */ +@CrossOrigin(origins = "*") +@RestController +@RequestMapping(value = "/portalDesigns", produces = MediaType.APPLICATION_JSON_VALUE) +public class PortalDesignController { + + private final Logger log = LoggerFactory.getLogger(this.getClass()); + + @Autowired + private PortalDesignRepository portalDesignRepository; + + @Autowired + private PortalDesignService portalDesignService; + + @PostMapping("") + @ResponseBody + @ApiOperation(value="Create a portalDesign.") + public PostReturnBody<PortalDesignConfig> createPortalDesign(@RequestBody PortalDesignConfig portalDesignConfig, BindingResult result, HttpServletResponse response) throws IOException { + + if (result.hasErrors()) { + sendError(response, 400, "Error parsing PortalDesignConfig: "+result.toString()); + return null; + } + + PortalDesign portalDesign = null; + try { + portalDesign = portalDesignService.fillPortalDesignConfiguration(portalDesignConfig); + } catch (Exception e) { + log.debug("FillPortalDesignConfiguration failed", e.getMessage()); + sendError(response, 400, "Error FillPortalDesignConfiguration: "+e.getMessage()); + return null; + } + portalDesignRepository.save(portalDesign); + log.info("PortalDesign save successed"); + return mkPostReturnBody(200, portalDesign); + } + + + @PutMapping("{id}") + @ResponseBody + @ApiOperation(value="Update a portalDesign.") + public PostReturnBody<PortalDesignConfig> updatePortalDesign(@RequestBody PortalDesignConfig portalDesignConfig, BindingResult result, @PathVariable Integer id, HttpServletResponse response) throws IOException { + + if (result.hasErrors()) { + sendError(response, 400, "Error parsing PortalDesignConfig: "+result.toString()); + return null; + } + + PortalDesign portalDesign = portalDesignService.getPortalDesign(id); + if (portalDesign != null) { + try { + portalDesignService.fillPortalDesignConfiguration(portalDesignConfig, portalDesign); + } catch (Exception e) { + log.debug("FillPortalDesignConfiguration failed", e.getMessage()); + sendError(response, 400, "Error FillPortalDesignConfiguration: "+e.getMessage()); + return null; + } + portalDesignRepository.save(portalDesign); + log.info("PortalDesign update successed"); + return mkPostReturnBody(200, portalDesign); + } else { + sendError(response, 400, "PortalDesign not found: "+id); + return null; + } + + } + + + @DeleteMapping("/{id}") + @ResponseBody + @ApiOperation(value="delete a portalDesign.") + public void deletePortalDesign(@PathVariable("id") Integer id, HttpServletResponse response) throws IOException{ + + PortalDesign oldPortalDesign= portalDesignService.getPortalDesign(id); + if (oldPortalDesign == null) { + sendError(response, 400, "portalDesign not found "+id); + } else { + portalDesignRepository.delete(oldPortalDesign); + response.setStatus(204); + } + } + + + @GetMapping("") + @ResponseBody + @ApiOperation(value="List all PortalDesigns") + public List<PortalDesignConfig> queryAllPortalDesign(){ + + List<PortalDesign> portalDesignList = null; + List<PortalDesignConfig> portalDesignConfigList = new ArrayList<>(); + portalDesignList = (List<PortalDesign>) portalDesignRepository.findAll(); + if (portalDesignList != null && portalDesignList.size() > 0) { + log.info("PortalDesignList is not null"); + for (PortalDesign portalDesign : portalDesignList) { + portalDesignConfigList.add(portalDesign.getPortalDesignConfig()); + } + } + return portalDesignConfigList; + } + + + @PostMapping("/deploy/{id}") + @ResponseBody + @ApiOperation(value="PortalDesign deploy") + public void deployPortalDesign(@PathVariable Integer id, HttpServletResponse response) throws IOException { + + PortalDesign portalDesign = null; + try { + portalDesign = portalDesignRepository.findById(id).get(); + if (portalDesign.getDesignType() != null && portalDesign.getDesignType().getName().startsWith("Kibana")) { + boolean flag = portalDesignService.deployKibanaImport(portalDesign); + if (flag) { + sendError(response, 400, "DeployPortalDesign failed, id: "+id); + } + } else if (portalDesign.getDesignType() != null && portalDesign.getDesignType().getName().startsWith("Elasticsearch")) { + //TODO Elasticsearch template import + sendError(response, 400, "DeployPortalDesign failed, id: "+id); + } else { + //TODO Druid import + sendError(response, 400, "DeployPortalDesign failed, id: "+id); + } + portalDesign.setSubmitted(true); + portalDesignRepository.save(portalDesign); + response.setStatus(204); + } catch (Exception e) { + log.debug("PortalDesign is null", e.getMessage()); + sendError(response, 400, "PortalDesign not found, id: "+id); + } + + } + + + private PostReturnBody<PortalDesignConfig> mkPostReturnBody(int statusCode, PortalDesign portalDesign) { + PostReturnBody<PortalDesignConfig> retBody = new PostReturnBody<>(); + retBody.setStatusCode(statusCode); + retBody.setReturnBody(portalDesign.getPortalDesignConfig()); + return retBody; + } + + private void sendError(HttpServletResponse response, int sc, String msg) throws IOException { + log.info(msg); + response.sendError(sc, msg); + } + +} diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/controller/TopicController.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/controller/TopicController.java index 88f573a1..2784be33 100644 --- a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/controller/TopicController.java +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/controller/TopicController.java @@ -49,6 +49,7 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.CrossOrigin; import io.swagger.annotations.ApiOperation; @@ -64,6 +65,7 @@ import io.swagger.annotations.ApiOperation; * @contributor Kate Hsuan @ QCT */ +@CrossOrigin(origins = "*") @RestController @RequestMapping(value = "/topics", produces = { MediaType.APPLICATION_JSON_VALUE })//, consumes= {MediaType.APPLICATION_JSON_UTF8_VALUE}) public class TopicController { diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/domain/DesignType.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/domain/DesignType.java new file mode 100644 index 00000000..3e730c14 --- /dev/null +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/domain/DesignType.java @@ -0,0 +1,53 @@ +/* + * ============LICENSE_START======================================================= + * ONAP : DataLake + * ================================================================================ + * Copyright 2019 China Mobile + *================================================================================= + * Licensed 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.datalake.feeder.domain; + + +import com.fasterxml.jackson.annotation.JsonBackReference; +import lombok.Getter; +import lombok.Setter; + +import javax.persistence.*; + +/** + * Domain class representing design_type + * + * @author guochunmeng + */ +@Getter +@Setter +@Entity +@Table(name = "design_type") +public class DesignType { + + @Id + @Column(name = "`name`") + private String name; + + @ManyToOne(fetch=FetchType.EAGER) + @JoinColumn(name="portal") + @JsonBackReference + private Portal portal; + + @Column(name = "`note`") + private String note; + +} diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/domain/Portal.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/domain/Portal.java new file mode 100644 index 00000000..d2214dce --- /dev/null +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/domain/Portal.java @@ -0,0 +1,79 @@ +/* + * ============LICENSE_START======================================================= + * ONAP : DataLake + * ================================================================================ + * Copyright 2019 China Mobile + *================================================================================= + * Licensed 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.datalake.feeder.domain; + +import com.fasterxml.jackson.annotation.JsonBackReference; +import lombok.Getter; +import lombok.Setter; +import org.onap.datalake.feeder.dto.PortalConfig; + +import javax.persistence.*; + +/** + * Domain class representing portal + * + * @author guochunmeng + */ + +@Getter +@Setter +@Entity +@Table(name = "portal") +public class Portal { + + @Id + @Column(name = "`name`") + private String name; + + @Column(name = "`enabled`") + private Boolean enabled; + + @Column(name = "`host`") + private String host; + + @Column(name = "`port`") + private Integer port; + + @Column(name = "`login`") + private String login; + + @Column(name = "`pass`") + private String pass; + + @ManyToOne(fetch=FetchType.EAGER) + @JoinColumn(name = "related_db") + @JsonBackReference + private Db db; + + public PortalConfig getPortalConfig() { + PortalConfig portalConfig = new PortalConfig(); + + portalConfig.setName(getName()); + portalConfig.setLogin(getLogin()); + portalConfig.setPass(getPass()); + portalConfig.setEnabled(getEnabled()); + portalConfig.setHost(getHost()); + portalConfig.setPort(getPort()); + portalConfig.setDb(getDb().getName()); + + return portalConfig; + } +} diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/domain/PortalDesign.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/domain/PortalDesign.java new file mode 100644 index 00000000..5b1be038 --- /dev/null +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/domain/PortalDesign.java @@ -0,0 +1,90 @@ +/* + * ============LICENSE_START======================================================= + * ONAP : DataLake + * ================================================================================ + * Copyright 2019 China Mobile + *================================================================================= + * Licensed 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.datalake.feeder.domain; + +import com.fasterxml.jackson.annotation.JsonBackReference; +import lombok.Getter; +import lombok.Setter; + +import javax.persistence.*; + +import org.onap.datalake.feeder.dto.PortalDesignConfig; + +/** + * Domain class representing portal_design + * + * @author guochunmeng + */ + +@Getter +@Setter +@Entity +@Table(name = "portal_design") +public class PortalDesign { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "`id`") + private Integer id; + + @Column(name = "`name`") + private String name; + + @Column(name = "`submitted`") + private Boolean submitted; + + @Column(name = "`body`") + private String body; + + @Column(name = "`note`") + private String note; + + @ManyToOne(fetch=FetchType.EAGER) + @JoinColumn(name = "topic") + @JsonBackReference + private Topic topic; + + @ManyToOne(fetch=FetchType.EAGER) + @JoinColumn(name = "type") + @JsonBackReference + private DesignType designType; + + public PortalDesignConfig getPortalDesignConfig() { + + PortalDesignConfig portalDesignConfig = new PortalDesignConfig(); + + portalDesignConfig.setId(getId()); + + portalDesignConfig.setBody(getBody()); + + portalDesignConfig.setName(getName()); + + portalDesignConfig.setNote(getNote()); + + portalDesignConfig.setSubmitted(getSubmitted()); + + portalDesignConfig.setTopic(getTopic().getName()); + + portalDesignConfig.setDesignType(getDesignType().getName()); + + return portalDesignConfig; + } +} diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/dto/PortalConfig.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/dto/PortalConfig.java new file mode 100644 index 00000000..76b1ceb7 --- /dev/null +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/dto/PortalConfig.java @@ -0,0 +1,50 @@ +/* + * ============LICENSE_START======================================================= + * ONAP : DataLake + * ================================================================================ + * Copyright 2019 QCT + *================================================================================= + * Licensed 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.datalake.feeder.dto; + +import lombok.Getter; +import lombok.Setter; + +/** + * JSON request body for Portal Config. + * + * @author guochunmeng + * + */ +@Setter +@Getter +public class PortalConfig { + + private String name; + + private Boolean enabled; + + private String host; + + private Integer port; + + private String login; + + private String pass; + + private String db; + +} diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/dto/PortalDesignConfig.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/dto/PortalDesignConfig.java new file mode 100755 index 00000000..a696d3ec --- /dev/null +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/dto/PortalDesignConfig.java @@ -0,0 +1,50 @@ +/* + * ============LICENSE_START======================================================= + * ONAP : DataLake + * ================================================================================ + * Copyright 2019 China Mobile + *================================================================================= + * Licensed 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.datalake.feeder.dto; + +import lombok.Getter; +import lombok.Setter; + +/** + * JSON request body for portalDesign Config. + * + * @author guochunmeng + */ + +@Getter +@Setter +public class PortalDesignConfig { + + private Integer id; + + private String name; + + private Boolean submitted; + + private String body; + + private String note; + + private String topic; + + private String designType; + +} diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/repository/DesignTypeRepository.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/repository/DesignTypeRepository.java new file mode 100755 index 00000000..e7ab48a2 --- /dev/null +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/repository/DesignTypeRepository.java @@ -0,0 +1,35 @@ +/* + * ============LICENSE_START======================================================= + * ONAP : DataLake + * ================================================================================ + * Copyright 2019 China Mobile + *================================================================================= + * Licensed 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.datalake.feeder.repository; + +import org.onap.datalake.feeder.domain.DesignType; +import org.springframework.data.repository.CrudRepository; + +/** + * DesignType Repository + * + * @author guochunmeng + */ + +public interface DesignTypeRepository extends CrudRepository<DesignType, String> { + + +} diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/repository/PortalDesignRepository.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/repository/PortalDesignRepository.java new file mode 100644 index 00000000..181bc115 --- /dev/null +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/repository/PortalDesignRepository.java @@ -0,0 +1,39 @@ +/* + * ============LICENSE_START======================================================= + * ONAP : DataLake + * ================================================================================ + * Copyright 2019 China Mobile + *================================================================================= + * Licensed 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.datalake.feeder.repository; + +import org.onap.datalake.feeder.domain.PortalDesign; +import org.springframework.data.jpa.repository.Query; +import org.springframework.data.repository.CrudRepository; + +import java.util.List; + +/** + * PortalDesign Repository + * + * @author guochunmeng + */ + +public interface PortalDesignRepository extends CrudRepository<PortalDesign, Integer> { + + PortalDesign findByName(String name); + +} diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/repository/PortalRepository.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/repository/PortalRepository.java new file mode 100644 index 00000000..f4ce0ee5 --- /dev/null +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/repository/PortalRepository.java @@ -0,0 +1,42 @@ +/* + * ============LICENSE_START======================================================= + * ONAP : DataLake + * ================================================================================ + * Copyright 2019 China Mobile + *================================================================================= + * Licensed 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.datalake.feeder.repository; + +import org.onap.datalake.feeder.domain.Portal; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.JpaSpecificationExecutor; +import org.springframework.data.jpa.repository.Query; +import org.springframework.data.repository.CrudRepository; +import org.springframework.data.repository.Repository; + +import java.util.List; + +/** + * Portal Repository + * + * @author guochunmeng + */ + +public interface PortalRepository extends CrudRepository<Portal, String> { + + List<Portal> findByEnabled(Boolean enabled); + +} diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/service/DesignTypeService.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/service/DesignTypeService.java new file mode 100755 index 00000000..eafc4bf9 --- /dev/null +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/service/DesignTypeService.java @@ -0,0 +1,56 @@ +/*
+ * ============LICENSE_START=======================================================
+ * ONAP : DataLake
+ * ================================================================================
+ * Copyright 2019 China Mobile
+ *=================================================================================
+ * Licensed 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.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.datalake.feeder.service;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.onap.datalake.feeder.domain.DesignType;
+import org.onap.datalake.feeder.repository.DesignTypeRepository;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * Service for designTypes
+ *
+ * @author guochunmeng
+ */
+@Service
+public class DesignTypeService {
+
+ @Autowired
+ DesignTypeRepository designTypeRepository;
+
+ public List<String> listNames(){
+
+ List<String> names = new ArrayList<>();
+
+ Iterable<DesignType> ret = designTypeRepository.findAll();
+
+ for(DesignType designType:ret) {
+
+ names.add(designType.getName());
+
+ }
+
+ return names;
+ }
+}
diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/service/PortalDesignService.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/service/PortalDesignService.java new file mode 100755 index 00000000..3f1aabd2 --- /dev/null +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/service/PortalDesignService.java @@ -0,0 +1,153 @@ +/*
+ * ============LICENSE_START=======================================================
+ * ONAP : DataLake
+ * ================================================================================
+ * Copyright 2019 China Mobile
+ *=================================================================================
+ * Licensed 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.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.datalake.feeder.service;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+
+import com.google.gson.Gson;
+import org.onap.datalake.feeder.config.ApplicationConfiguration;
+import org.onap.datalake.feeder.domain.DesignType;
+import org.onap.datalake.feeder.domain.Portal;
+import org.onap.datalake.feeder.domain.PortalDesign;
+import org.onap.datalake.feeder.domain.Topic;
+import org.onap.datalake.feeder.dto.PortalDesignConfig;
+import org.onap.datalake.feeder.repository.DesignTypeRepository;
+import org.onap.datalake.feeder.repository.PortalDesignRepository;
+import org.onap.datalake.feeder.util.HttpClientUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * Service for portalDesigns
+ *
+ * @author guochunmeng
+ */
+
+@Service
+public class PortalDesignService {
+
+ @Autowired
+ private PortalDesignRepository portalDesignRepository;
+
+ @Autowired
+ private TopicService topicService;
+
+ @Autowired
+ private DesignTypeRepository designTypeRepository;
+
+ @Autowired
+ private ApplicationConfiguration applicationConfiguration;
+
+ public PortalDesign fillPortalDesignConfiguration(PortalDesignConfig portalDesignConfig) throws Exception
+ {
+ PortalDesign portalDesign = new PortalDesign();
+ fillPortalDesign(portalDesignConfig, portalDesign);
+ return portalDesign;
+ }
+ public void fillPortalDesignConfiguration(PortalDesignConfig portalDesignConfig, PortalDesign portalDesign) throws Exception
+ {
+ fillPortalDesign(portalDesignConfig, portalDesign);
+ }
+
+ private void fillPortalDesign(PortalDesignConfig portalDesignConfig, PortalDesign portalDesign) throws IllegalArgumentException {
+
+ portalDesign.setId(portalDesignConfig.getId());
+
+ portalDesign.setBody(portalDesignConfig.getBody());
+
+ portalDesign.setName(portalDesignConfig.getName());
+
+ portalDesign.setNote(portalDesignConfig.getNote());
+
+ portalDesign.setSubmitted(portalDesignConfig.getSubmitted());
+
+ if (portalDesignConfig.getTopic() != null) {
+ Topic topic = topicService.getTopic(portalDesignConfig.getTopic());
+ if (topic == null) throw new IllegalArgumentException("topic is null");
+ portalDesign.setTopic(topic);
+ }else {
+ throw new IllegalArgumentException("Can not find topic in DB, topic name: "+portalDesignConfig.getTopic());
+ }
+
+ if (portalDesignConfig.getDesignType() != null) {
+ DesignType designType = designTypeRepository.findById(portalDesignConfig.getDesignType()).get();
+ if (designType == null) throw new IllegalArgumentException("designType is null");
+ portalDesign.setDesignType(designType);
+ }else {
+ throw new IllegalArgumentException("Can not find designType in Design_type, designType name "+portalDesignConfig.getDesignType());
+ }
+
+ }
+
+
+ public PortalDesign getPortalDesign(Integer id) {
+
+ Optional<PortalDesign> ret = portalDesignRepository.findById(id);
+ return ret.isPresent() ? ret.get() : null;
+ }
+
+
+ private String kibanaImportUrl(String host, Integer port){
+ return "http://"+host+":"+port+applicationConfiguration.getKibanaDashboardImportApi();
+ }
+
+
+ public boolean deployKibanaImport(PortalDesign portalDesign) {
+ boolean flag = false;
+ String requestBody = portalDesign.getBody();
+ Portal portal = portalDesign.getDesignType().getPortal();
+ String portalHost = portal.getHost();
+ Integer portalPort = portal.getPort();
+ String url = "";
+
+ if (portalHost == null || portalPort == null) {
+ String dbHost = portal.getDb().getHost();
+ Integer dbPort = portal.getDb().getPort();
+ url = kibanaImportUrl(dbHost, dbPort);
+ } else {
+ url = kibanaImportUrl(portalHost, portalPort);
+ }
+
+ //Send httpclient to kibana
+ String kibanaResponse = HttpClientUtil.sendPostToKibana(url, requestBody);
+ Gson gson = new Gson();
+ Map<String, Object> map = new HashMap<>();
+ map = gson.fromJson(kibanaResponse, map.getClass());
+ List objectsList = (List) map.get("objects");
+
+ if (objectsList != null && objectsList.size() > 0) {
+ Map<String, Object> map2 = new HashMap<>();
+ for (int i = 0; i < objectsList.size(); i++){
+ map2 = (Map<String, Object>)objectsList.get(i);
+ for(String key : map2.keySet()){
+ if ("error".equals(key)) {
+ return true;
+ }
+ }
+ }
+ }
+ return flag;
+ }
+
+}
diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/service/PortalService.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/service/PortalService.java new file mode 100644 index 00000000..28efd150 --- /dev/null +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/service/PortalService.java @@ -0,0 +1,79 @@ +/* + * ============LICENSE_START======================================================= + * ONAP : DataLake + * ================================================================================ + * Copyright 2019 China Mobile + *================================================================================= + * Licensed 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.datalake.feeder.service; + + +import org.onap.datalake.feeder.domain.Portal; +import org.onap.datalake.feeder.dto.PortalConfig; +import org.onap.datalake.feeder.repository.PortalRepository; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; + +/** + * Service for portals + * + * @author guochunmeng + * + */ +@Service +public class PortalService { + + @Autowired + private PortalRepository portalRepository; + + public Portal fillPortalConfiguration(PortalConfig portalConfig) + { + Portal portal = new Portal(); + fillPortal(portalConfig, portal); + return portal; + } + public void fillPortalConfiguration(PortalConfig portalConfig, Portal portal) + { + fillPortal(portalConfig, portal); + } + + private void fillPortal(PortalConfig portalConfig, Portal portal) { + + portal.setName(portalConfig.getName()); + portal.setLogin(portalConfig.getLogin()); + portal.setPass(portalConfig.getPass()); + portal.setEnabled(portalConfig.getEnabled()); + portal.setHost(portalConfig.getHost()); + portal.setPort(portalConfig.getPort()); + + } + + + public List<String> listNames(boolean enabled){ + + List<String> names = new ArrayList<>(); + Iterable<Portal> ret = portalRepository.findByEnabled(enabled); + for(Portal portal:ret) { + names.add(portal.getName()); + } + + return names; + } + +} diff --git a/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/util/HttpClientUtil.java b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/util/HttpClientUtil.java new file mode 100644 index 00000000..b02139f3 --- /dev/null +++ b/components/datalake-handler/feeder/src/main/java/org/onap/datalake/feeder/util/HttpClientUtil.java @@ -0,0 +1,64 @@ +/* + * ============LICENSE_START======================================================= + * ONAP : DCAE + * ================================================================================ + * Copyright 2019 China Mobile + *================================================================================= + * Licensed 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. + * ============LICENSE_END========================================================= + */ + +package org.onap.datalake.feeder.util; + +import org.apache.http.HttpEntity; +import org.apache.http.HttpResponse; +import org.apache.http.HttpStatus; +import org.apache.http.client.HttpClient; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.entity.StringEntity; +import org.apache.http.impl.client.DefaultHttpClient; +import org.apache.http.util.EntityUtils; + +/** + * HttpClient + * + * @author guochunmeng + * + */ +public class HttpClientUtil { + + public static String sendPostToKibana(String url, String json){ + HttpClient client = new DefaultHttpClient(); + HttpPost post = new HttpPost(url); + String response = null; + try { + StringEntity s = new StringEntity(json); + s.setContentEncoding("UTF-8"); + s.setContentType("application/json"); + post.setEntity(s); + post.setHeader("kbn-xsrf","true"); + post.setHeader("Accept", "*/*"); + post.setHeader("Connection", "Keep-Alive"); + HttpResponse res = client.execute(post); + if(res.getStatusLine().getStatusCode() == HttpStatus.SC_OK){ + HttpEntity entity = res.getEntity(); + String result = EntityUtils.toString(res.getEntity()); + response = result; + } + } catch (Exception e) { + throw new RuntimeException(e); + } + return response; + } + +} diff --git a/components/datalake-handler/feeder/src/main/resources/application.properties b/components/datalake-handler/feeder/src/main/resources/application.properties index 7bbbac05..faf27583 100644 --- a/components/datalake-handler/feeder/src/main/resources/application.properties +++ b/components/datalake-handler/feeder/src/main/resources/application.properties @@ -57,4 +57,7 @@ logging.level.org.onap.datalake=DEBUG #####################Verison datalakeVersion=0.0.1 + +#####################KibanaDashboardImportApi +KibanaDashboardImportApi=/api/kibana/dashboards/import?exclude=index-pattern diff --git a/components/datalake-handler/feeder/src/main/resources/druid/AAI-EVENT-kafka-supervisor.json b/components/datalake-handler/feeder/src/main/resources/druid/AAI-EVENT-kafka-supervisor.json index a20e5eb3..cf63c45c 100644 --- a/components/datalake-handler/feeder/src/main/resources/druid/AAI-EVENT-kafka-supervisor.json +++ b/components/datalake-handler/feeder/src/main/resources/druid/AAI-EVENT-kafka-supervisor.json @@ -9,191 +9,191 @@ "flattenSpec": { "useFieldDiscovery": false, "fields": [ -{ -"type": "path", -"name": "cambria:partition", -"expr": "$.cambria.partition" -}, -{ -"type": "path", -"name": "event-header:severity", -"expr": "$.event-header.severity" -}, -{ -"type": "path", -"name": "event-header:entity-type", -"expr": "$.event-header.entity-type" -}, -{ -"type": "path", -"name": "event-header:top-entity-type", -"expr": "$.event-header.top-entity-type" -}, -{ -"type": "path", -"name": "event-header:entity-link", -"expr": "$.event-header.entity-link" -}, -{ -"type": "path", -"name": "event-header:event-type", -"expr": "$.event-header.event-type" -}, -{ -"type": "path", -"name": "event-header:domain", -"expr": "$.event-header.domain" -}, -{ -"type": "path", -"name": "event-header:action", -"expr": "$.event-header.action" -}, -{ -"type": "path", -"name": "event-header:sequence-number", -"expr": "$.event-header.sequence-number" -}, -{ -"type": "path", -"name": "event-header:id", -"expr": "$.event-header.id" -}, -{ -"type": "path", -"name": "event-header:source-name", -"expr": "$.event-header.source-name" -}, -{ -"type": "path", -"name": "event-header:version", -"expr": "$.event-header.version" -}, -{ -"type": "path", -"name": "event-header:timestamp", -"expr": "$.event-header.timestamp" -}, -{ -"type": "path", -"name": "entity:thirdparty-sdnc-id", -"expr": "$.entity.thirdparty-sdnc-id" -}, -{ -"type": "path", -"name": "entity:resource-version", -"expr": "$.entity.resource-version" -}, -{ -"type": "path", -"name": "entity:location", -"expr": "$.entity.location" -}, -{ -"type": "path", -"name": "entity:product-name", -"expr": "$.entity.product-name" -}, -{ -"type": "path", -"name": "entity:esr-system-info-list:esr-system-info[0]:esr-system-info-id", -"expr": "$.entity.esr-system-info-list.esr-system-info[0].esr-system-info-id" -}, -{ -"type": "path", -"name": "entity:esr-system-info-list:esr-system-info[0]:system-type", -"expr": "$.entity.esr-system-info-list.esr-system-info[0].system-type" -}, -{ -"type": "path", -"name": "entity:esr-system-info-list:esr-system-info[0]:service-url", -"expr": "$.entity.esr-system-info-list.esr-system-info[0].service-url" -}, -{ -"type": "path", -"name": "entity:esr-system-info-list:esr-system-info[0]:ssl-cacert", -"expr": "$.entity.esr-system-info-list.esr-system-info[0].ssl-cacert" -}, -{ -"type": "path", -"name": "entity:esr-system-info-list:esr-system-info[0]:type", -"expr": "$.entity.esr-system-info-list.esr-system-info[0].type" -}, -{ -"type": "path", -"name": "entity:esr-system-info-list:esr-system-info[0]:ssl-insecure", -"expr": "$.entity.esr-system-info-list.esr-system-info[0].ssl-insecure" -}, -{ -"type": "path", -"name": "entity:esr-system-info-list:esr-system-info[0]:system-status", -"expr": "$.entity.esr-system-info-list.esr-system-info[0].system-status" -}, -{ -"type": "path", -"name": "entity:esr-system-info-list:esr-system-info[0]:version", -"expr": "$.entity.esr-system-info-list.esr-system-info[0].version" -}, -{ -"type": "path", -"name": "entity:esr-system-info-list:esr-system-info[0]:passive", -"expr": "$.entity.esr-system-info-list.esr-system-info[0].passive" -}, -{ -"type": "path", -"name": "entity:esr-system-info-list:esr-system-info[0]:password", -"expr": "$.entity.esr-system-info-list.esr-system-info[0].password" -}, -{ -"type": "path", -"name": "entity:esr-system-info-list:esr-system-info[0]:protocol", -"expr": "$.entity.esr-system-info-list.esr-system-info[0].protocol" -}, -{ -"type": "path", -"name": "entity:esr-system-info-list:esr-system-info[0]:ip-address", -"expr": "$.entity.esr-system-info-list.esr-system-info[0].ip-address" -}, -{ -"type": "path", -"name": "entity:esr-system-info-list:esr-system-info[0]:cloud-domain", -"expr": "$.entity.esr-system-info-list.esr-system-info[0].cloud-domain" -}, -{ -"type": "path", -"name": "entity:esr-system-info-list:esr-system-info[0]:user-name", -"expr": "$.entity.esr-system-info-list.esr-system-info[0].user-name" -}, -{ -"type": "path", -"name": "entity:esr-system-info-list:esr-system-info[0]:system-name", -"expr": "$.entity.esr-system-info-list.esr-system-info[0].system-name" -}, -{ -"type": "path", -"name": "entity:esr-system-info-list:esr-system-info[0]:port", -"expr": "$.entity.esr-system-info-list.esr-system-info[0].port" -}, -{ -"type": "path", -"name": "entity:esr-system-info-list:esr-system-info[0]:vendor", -"expr": "$.entity.esr-system-info-list.esr-system-info[0].vendor" -}, -{ -"type": "path", -"name": "entity:esr-system-info-list:esr-system-info[0]:resource-version", -"expr": "$.entity.esr-system-info-list.esr-system-info[0].resource-version" -}, -{ -"type": "path", -"name": "entity:esr-system-info-list:esr-system-info[0]:remote-path", -"expr": "$.entity.esr-system-info-list.esr-system-info[0].remote-path" -}, -{ -"type": "path", -"name": "entity:esr-system-info-list:esr-system-info[0]:default-tenant", -"expr": "$.entity.esr-system-info-list.esr-system-info[0].default-tenant" -} + { + "type": "path", + "name": "cambria:partition", + "expr": "$.cambria.partition" + }, + { + "type": "path", + "name": "event-header:severity", + "expr": "$.event-header.severity" + }, + { + "type": "path", + "name": "event-header:entity-type", + "expr": "$.event-header.entity-type" + }, + { + "type": "path", + "name": "event-header:top-entity-type", + "expr": "$.event-header.top-entity-type" + }, + { + "type": "path", + "name": "event-header:entity-link", + "expr": "$.event-header.entity-link" + }, + { + "type": "path", + "name": "event-header:event-type", + "expr": "$.event-header.event-type" + }, + { + "type": "path", + "name": "event-header:domain", + "expr": "$.event-header.domain" + }, + { + "type": "path", + "name": "event-header:action", + "expr": "$.event-header.action" + }, + { + "type": "path", + "name": "event-header:sequence-number", + "expr": "$.event-header.sequence-number" + }, + { + "type": "path", + "name": "event-header:id", + "expr": "$.event-header.id" + }, + { + "type": "path", + "name": "event-header:source-name", + "expr": "$.event-header.source-name" + }, + { + "type": "path", + "name": "event-header:version", + "expr": "$.event-header.version" + }, + { + "type": "path", + "name": "event-header:timestamp", + "expr": "$.event-header.timestamp" + }, + { + "type": "path", + "name": "entity:thirdparty-sdnc-id", + "expr": "$.entity.thirdparty-sdnc-id" + }, + { + "type": "path", + "name": "entity:resource-version", + "expr": "$.entity.resource-version" + }, + { + "type": "path", + "name": "entity:location", + "expr": "$.entity.location" + }, + { + "type": "path", + "name": "entity:product-name", + "expr": "$.entity.product-name" + }, + { + "type": "path", + "name": "entity:esr-system-info-list:esr-system-info[0]:esr-system-info-id", + "expr": "$.entity.esr-system-info-list.esr-system-info[0].esr-system-info-id" + }, + { + "type": "path", + "name": "entity:esr-system-info-list:esr-system-info[0]:system-type", + "expr": "$.entity.esr-system-info-list.esr-system-info[0].system-type" + }, + { + "type": "path", + "name": "entity:esr-system-info-list:esr-system-info[0]:service-url", + "expr": "$.entity.esr-system-info-list.esr-system-info[0].service-url" + }, + { + "type": "path", + "name": "entity:esr-system-info-list:esr-system-info[0]:ssl-cacert", + "expr": "$.entity.esr-system-info-list.esr-system-info[0].ssl-cacert" + }, + { + "type": "path", + "name": "entity:esr-system-info-list:esr-system-info[0]:type", + "expr": "$.entity.esr-system-info-list.esr-system-info[0].type" + }, + { + "type": "path", + "name": "entity:esr-system-info-list:esr-system-info[0]:ssl-insecure", + "expr": "$.entity.esr-system-info-list.esr-system-info[0].ssl-insecure" + }, + { + "type": "path", + "name": "entity:esr-system-info-list:esr-system-info[0]:system-status", + "expr": "$.entity.esr-system-info-list.esr-system-info[0].system-status" + }, + { + "type": "path", + "name": "entity:esr-system-info-list:esr-system-info[0]:version", + "expr": "$.entity.esr-system-info-list.esr-system-info[0].version" + }, + { + "type": "path", + "name": "entity:esr-system-info-list:esr-system-info[0]:passive", + "expr": "$.entity.esr-system-info-list.esr-system-info[0].passive" + }, + { + "type": "path", + "name": "entity:esr-system-info-list:esr-system-info[0]:password", + "expr": "$.entity.esr-system-info-list.esr-system-info[0].password" + }, + { + "type": "path", + "name": "entity:esr-system-info-list:esr-system-info[0]:protocol", + "expr": "$.entity.esr-system-info-list.esr-system-info[0].protocol" + }, + { + "type": "path", + "name": "entity:esr-system-info-list:esr-system-info[0]:ip-address", + "expr": "$.entity.esr-system-info-list.esr-system-info[0].ip-address" + }, + { + "type": "path", + "name": "entity:esr-system-info-list:esr-system-info[0]:cloud-domain", + "expr": "$.entity.esr-system-info-list.esr-system-info[0].cloud-domain" + }, + { + "type": "path", + "name": "entity:esr-system-info-list:esr-system-info[0]:user-name", + "expr": "$.entity.esr-system-info-list.esr-system-info[0].user-name" + }, + { + "type": "path", + "name": "entity:esr-system-info-list:esr-system-info[0]:system-name", + "expr": "$.entity.esr-system-info-list.esr-system-info[0].system-name" + }, + { + "type": "path", + "name": "entity:esr-system-info-list:esr-system-info[0]:port", + "expr": "$.entity.esr-system-info-list.esr-system-info[0].port" + }, + { + "type": "path", + "name": "entity:esr-system-info-list:esr-system-info[0]:vendor", + "expr": "$.entity.esr-system-info-list.esr-system-info[0].vendor" + }, + { + "type": "path", + "name": "entity:esr-system-info-list:esr-system-info[0]:resource-version", + "expr": "$.entity.esr-system-info-list.esr-system-info[0].resource-version" + }, + { + "type": "path", + "name": "entity:esr-system-info-list:esr-system-info[0]:remote-path", + "expr": "$.entity.esr-system-info-list.esr-system-info[0].remote-path" + }, + { + "type": "path", + "name": "entity:esr-system-info-list:esr-system-info[0]:default-tenant", + "expr": "$.entity.esr-system-info-list.esr-system-info[0].default-tenant" + } ] }, "timestampSpec": { @@ -203,7 +203,8 @@ "dimensionsSpec": { "dimensions": [], "dimensionsExclusions": [ - "cambria.partition","password" + "cambria.partition", + "password" ] } } diff --git a/components/datalake-handler/feeder/src/main/resources/druid/EPC-kafka-supervisor.json b/components/datalake-handler/feeder/src/main/resources/druid/EPC-kafka-supervisor.json new file mode 100644 index 00000000..c6562a21 --- /dev/null +++ b/components/datalake-handler/feeder/src/main/resources/druid/EPC-kafka-supervisor.json @@ -0,0 +1,247 @@ +{ + "type": "kafka", + "dataSchema": { + "dataSource": "EPC", + "parser": { + "type": "string", + "parseSpec": { + "format": "json", + "flattenSpec": { + "useFieldDiscovery": false, + "fields": [ + { + "type": "path", + "name": "astriDPHost", + "expr": "$.event.measurementsForVfScalingFields.astriMeasurement.astriDPHost" + }, + { + "type": "path", + "name": "port1-astriDPtx_pps", + "expr": "$.event.measurementsForVfScalingFields.astriMeasurement.astriDPMeasurementArray[0].astriDPtx_pps" + }, + { + "type": "path", + "name": "port1-astriDPrx_error_packets", + "expr": "$.event.measurementsForVfScalingFields.astriMeasurement.astriDPMeasurementArray[0].astriDPrx_error_packets" + }, + { + "type": "path", + "name": "port1-astriDPrx_throughput", + "expr": "$.event.measurementsForVfScalingFields.astriMeasurement.astriDPMeasurementArray[0].astriDPrx_throughput" + }, + { + "type": "path", + "name": "port1-astriInterface", + "expr": "$.event.measurementsForVfScalingFields.astriMeasurement.astriDPMeasurementArray[0].astriInterface" + }, + { + "type": "path", + "name": "port1-astriDPtx_throughput", + "expr": "$.event.measurementsForVfScalingFields.astriMeasurement.astriDPMeasurementArray[0].astriDPtx_throughput" + }, + { + "type": "path", + "name": "port1-astriDPrx_pps", + "expr": "$.event.measurementsForVfScalingFields.astriMeasurement.astriDPMeasurementArray[0].astriDPrx_pps" + }, + { + "type": "path", + "name": "port1-astriDPrx_missed_packets", + "expr": "$.event.measurementsForVfScalingFields.astriMeasurement.astriDPMeasurementArray[0].astriDPrx_missed_packets" + }, + { + "type": "path", + "name": "port0-astriDPtx_pps", + "expr": "$.event.measurementsForVfScalingFields.astriMeasurement.astriDPMeasurementArray[1].astriDPtx_pps" + }, + { + "type": "path", + "name": "port0-astriDPrx_error_packets", + "expr": "$.event.measurementsForVfScalingFields.astriMeasurement.astriDPMeasurementArray[1].astriDPrx_error_packets" + }, + { + "type": "path", + "name": "port0-astriDPrx_throughput", + "expr": "$.event.measurementsForVfScalingFields.astriMeasurement.astriDPMeasurementArray[1].astriDPrx_throughput" + }, + { + "type": "path", + "name": "port0-astriInterface", + "expr": "$.event.measurementsForVfScalingFields.astriMeasurement.astriDPMeasurementArray[1].astriInterface" + }, + { + "type": "path", + "name": "port0-astriDPtx_throughput", + "expr": "$.event.measurementsForVfScalingFields.astriMeasurement.astriDPMeasurementArray[1].astriDPtx_throughput" + }, + { + "type": "path", + "name": "port0-astriDPrx_pps", + "expr": "$.event.measurementsForVfScalingFields.astriMeasurement.astriDPMeasurementArray[1].astriDPrx_pps" + }, + { + "type": "path", + "name": "port0-astriDPrx_missed_packets", + "expr": "$.event.measurementsForVfScalingFields.astriMeasurement.astriDPMeasurementArray[1].astriDPrx_missed_packets" + }, + { + "type": "path", + "name": "eventId", + "expr": "$.event.commonEventHeader.eventId" + }, + { + "type": "path", + "name": "reportingEntityId", + "expr": "$.event.commonEventHeader.reportingEntityId" + }, + { + "type": "path", + "name": "lastEpochMicrosec", + "expr": "$.event.commonEventHeader.lastEpochMicrosec" + }, + { + "type": "path", + "name": "reportingEntityName", + "expr": "$.event.commonEventHeader.reportingEntityName" + }, + { + "type": "path", + "name": "sourceId", + "expr": "$.event.commonEventHeader.sourceId" + }, + { + "type": "path", + "name": "eventType", + "expr": "$.event.commonEventHeader.eventType" + }, + { + "type": "path", + "name": "sequence", + "expr": "$.event.commonEventHeader.sequence" + }, + { + "type": "path", + "name": "collectorTimeStamp", + "expr": "$.event.commonEventHeader.internalHeaderFields.collectorTimeStamp" + }, + { + "type": "path", + "name": "priority", + "expr": "$.event.commonEventHeader.priority" + }, + { + "type": "path", + "name": "sourceName", + "expr": "$.event.commonEventHeader.sourceName" + }, + { + "type": "path", + "name": "eventName", + "expr": "$.event.commonEventHeader.eventName" + }, + { + "type": "path", + "name": "startEpochMicrosec", + "expr": "$.event.commonEventHeader.startEpochMicrosec" + } + ] + }, + "timestampSpec": { + "column": "collectorTimeStamp", + "format": "EEE, MM dd yyyy HH:mm:ss z" + }, + "dimensionsSpec": { + "dimensions": [], + "dimensionsExclusions": [] + } + } + }, + "metricsSpec": [ + { + "type": "count", + "name": "count" + }, + { + "type": "longSum", + "name": "port0-astriDPtx_pps", + "fieldName": "port0-astriDPtx_pps" + }, + { + "type": "longSum", + "name": "port0-astriDPrx_error_packets", + "fieldName": "port0-astriDPrx_error_packets" + }, + { + "type": "longSum", + "name": "port0-astriDPrx_throughput", + "fieldName": "port0-astriDPrx_throughput" + }, + { + "type": "longSum", + "name": "port0-astriDPtx_throughput", + "fieldName": "port0-astriDPtx_throughput" + }, + { + "type": "longSum", + "name": "port0-astriDPrx_pps", + "fieldName": "port0-astriDPrx_pps" + }, + { + "type": "longSum", + "name": "port0-astriDPrx_missed_packets", + "fieldName": "port0-astriDPrx_missed_packets" + }, + { + "type": "longSum", + "name": "port1-astriDPtx_pps", + "fieldName": "port1-astriDPtx_pps" + }, + { + "type": "longSum", + "name": "port1-astriDPrx_error_packets", + "fieldName": "port1-astriDPrx_error_packets" + }, + { + "type": "longSum", + "name": "port1-astriDPrx_throughput", + "fieldName": "port1-astriDPrx_throughput" + }, + { + "type": "longSum", + "name": "port1-astriDPtx_throughput", + "fieldName": "port1-astriDPtx_throughput" + }, + { + "type": "longSum", + "name": "port1-astriDPrx_pps", + "fieldName": "port1-astriDPrx_pps" + }, + { + "type": "longSum", + "name": "port1-astriDPrx_missed_packets", + "fieldName": "port1-astriDPrx_missed_packets" + } + ], + "granularitySpec": { + "type": "uniform", + "segmentGranularity": "HOUR", + "queryGranularity": "MINUTE", + "rollup": true + } + }, + "tuningConfig": { + "type": "kafka", + "reportParseExceptions": true + }, + "ioConfig": { + "topic": "EPC", + "replicas": 1, + "startDelay": "PT1S", + "taskDuration": "PT1H", + "completionTimeout": "PT30M", + "consumerProperties": { + "bootstrap.servers": "message-router-kafka:9092" + }, + "useEarliestOffset": true + } +} diff --git a/components/datalake-handler/feeder/src/main/resources/druid/EPC-sample-format.json b/components/datalake-handler/feeder/src/main/resources/druid/EPC-sample-format.json new file mode 100644 index 00000000..2d15837d --- /dev/null +++ b/components/datalake-handler/feeder/src/main/resources/druid/EPC-sample-format.json @@ -0,0 +1,51 @@ +{
+ "event": {
+ "measurementsForVfScalingFields": {
+ "additionalMeasurements": [],
+ "measurementInterval": 10,
+ "astriMeasurement": {
+ "valuesAreSuspect": "true",
+ "astriDPHost": "DP5-10.213.1.143",
+ "astriDPMeasurementArray": [
+ {
+ "astriDPtx_pps": 0,
+ "astriDPrx_error_packets": 0,
+ "astriDPrx_throughput": 16619551392,
+ "astriInterface": "port1",
+ "astriDPtx_throughput": 0,
+ "astriDPrx_pps": 1675357,
+ "astriDPrx_missed_packets": 0
+ },
+ {
+ "astriDPtx_pps": 586325,
+ "astriDPrx_error_packets": 0,
+ "astriDPrx_throughput": 5984991232,
+ "astriInterface": "port0",
+ "astriDPtx_throughput": 309579600,
+ "astriDPrx_pps": 586304,
+ "astriDPrx_missed_packets": 0
+ }
+ ]
+ },
+ "measurementsForVfScalingVersion": 2
+ },
+ "commonEventHeader": {
+ "eventId": "84891",
+ "reportingEntityId": "localhost",
+ "domain": "measurementsForVfScaling",
+ "lastEpochMicrosec": 1558757056,
+ "reportingEntityName": "localhost",
+ "sourceId": "DP5-10.213.1.143",
+ "eventType": "platform",
+ "sequence": 0,
+ "internalHeaderFields": {
+ "collectorTimeStamp": "Sat, 05 25 2019 04:04:16 UTC"
+ },
+ "priority": "Normal",
+ "sourceName": "DP5-10.213.1.143",
+ "eventName": "",
+ "version": 2,
+ "startEpochMicrosec": 1558757046
+ }
+ }
+}
diff --git a/components/datalake-handler/feeder/src/main/resources/druid/HW-aggs-kafka-supervisor.json b/components/datalake-handler/feeder/src/main/resources/druid/HW-aggs-kafka-supervisor.json new file mode 100644 index 00000000..3a3967ec --- /dev/null +++ b/components/datalake-handler/feeder/src/main/resources/druid/HW-aggs-kafka-supervisor.json @@ -0,0 +1,1131 @@ +{ + "type": "kafka", + "dataSchema": { + "dataSource": "HW-aggs", + "parser": { + "type": "string", + "parseSpec": { + "format": "json", + "flattenSpec": { + "useFieldDiscovery": false, + "fields": [ + { + "type": "path", + "name": "memoryUsageArray.memorySlabUnrecl", + "expr": "$.event.measurementsForVfScalingFields.memoryUsageArray_average.memorySlabUnrecl" + }, + { + "type": "path", + "name": "memoryUsageArray.memorySlabRecl", + "expr": "$.event.measurementsForVfScalingFields.memoryUsageArray_average.memorySlabRecl" + }, + { + "type": "path", + "name": "memoryUsageArray.memoryCached", + "expr": "$.event.measurementsForVfScalingFields.memoryUsageArray_average.memoryCached" + }, + { + "type": "path", + "name": "memoryUsageArray.memoryBuffered", + "expr": "$.event.measurementsForVfScalingFields.memoryUsageArray_average.memoryBuffered" + }, + { + "type": "path", + "name": "memoryUsageArray.memoryUsed", + "expr": "$.event.measurementsForVfScalingFields.memoryUsageArray_average.memoryUsed" + }, + { + "type": "path", + "name": "memoryUsageArray.memoryFree", + "expr": "$.event.measurementsForVfScalingFields.memoryUsageArray_average.memoryFree" + }, + { + "type": "path", + "name": "measurementsForVfScalingVersion", + "expr": "$.event.measurementsForVfScalingFields.measurementsForVfScalingVersion" + }, + { + "type": "path", + "name": "cpuUsageArray_count", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_count" + }, + { + "type": "path", + "name": "cpuUsageArray_min.cpuUsageSystem", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_min.cpuUsageSystem" + }, + { + "type": "path", + "name": "cpuUsageArray_min.percentUsage", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_min.percentUsage" + }, + { + "type": "path", + "name": "cpuUsageArray_min.cpuWait", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_min.cpuWait" + }, + { + "type": "path", + "name": "cpuUsageArray_min.cpuIdentifier", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_min.cpuIdentifier" + }, + { + "type": "path", + "name": "cpuUsageArray_min.cpuUsageUser", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_min.cpuUsageUser" + }, + { + "type": "path", + "name": "cpuUsageArray_min.cpuIdle", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_min.cpuIdle" + }, + { + "type": "path", + "name": "vNicPerformanceArray_count", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_count" + }, + { + "type": "path", + "name": "diskUsageArray_average.diskIoTimeLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_average.diskIoTimeLast" + }, + { + "type": "path", + "name": "diskUsageArray_average.diskOctetsWriteLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_average.diskOctetsWriteLast" + }, + { + "type": "path", + "name": "diskUsageArray_average.diskMergedReadLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_average.diskMergedReadLast" + }, + { + "type": "path", + "name": "diskUsageArray_average.diskOpsWriteLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_average.diskOpsWriteLast" + }, + { + "type": "path", + "name": "diskUsageArray_average.diskTimeWriteLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_average.diskTimeWriteLast" + }, + { + "type": "path", + "name": "diskUsageArray_average.diskTimeReadLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_average.diskTimeReadLast" + }, + { + "type": "path", + "name": "diskUsageArray_average.diskOctetsReadLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_average.diskOctetsReadLast" + }, + { + "type": "path", + "name": "diskUsageArray_average.diskOpsReadLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_average.diskOpsReadLast" + }, + { + "type": "path", + "name": "diskUsageArray_average.diskMergedWriteLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_average.diskMergedWriteLast" + }, + { + "type": "path", + "name": "cpuUsageArray_sum.cpuUsageSystem", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_sum.cpuUsageSystem" + }, + { + "type": "path", + "name": "cpuUsageArray_sum.percentUsage", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_sum.percentUsage" + }, + { + "type": "path", + "name": "cpuUsageArray_sum.cpuWait", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_sum.cpuWait" + }, + { + "type": "path", + "name": "cpuUsageArray_sum.cpuIdentifier", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_sum.cpuIdentifier" + }, + { + "type": "path", + "name": "cpuUsageArray_sum.cpuUsageUser", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_sum.cpuUsageUser" + }, + { + "type": "path", + "name": "cpuUsageArray_sum.cpuIdle", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_sum.cpuIdle" + }, + { + "type": "path", + "name": "vNicPerformanceArray_max.receivedOctetsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_max.receivedOctetsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_max.transmittedErrorPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_max.transmittedErrorPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_max.transmittedTotalPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_max.transmittedTotalPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_max.receivedErrorPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_max.receivedErrorPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_max.transmittedOctetsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_max.transmittedOctetsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_max.receivedDiscardedPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_max.receivedDiscardedPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_max.receivedTotalPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_max.receivedTotalPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_max.transmittedDiscardedPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_max.transmittedDiscardedPacketsAccumulated" + }, + { + "type": "path", + "name": "diskUsageArray_count", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_count" + }, + { + "type": "path", + "name": "diskUsageArray_max.diskIoTimeLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_max.diskIoTimeLast" + }, + { + "type": "path", + "name": "diskUsageArray_max.diskOctetsWriteLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_max.diskOctetsWriteLast" + }, + { + "type": "path", + "name": "diskUsageArray_max.diskMergedReadLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_max.diskMergedReadLast" + }, + { + "type": "path", + "name": "diskUsageArray_max.diskOpsWriteLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_max.diskOpsWriteLast" + }, + { + "type": "path", + "name": "diskUsageArray_max.diskTimeWriteLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_max.diskTimeWriteLast" + }, + { + "type": "path", + "name": "diskUsageArray_max.diskTimeReadLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_max.diskTimeReadLast" + }, + { + "type": "path", + "name": "diskUsageArray_max.diskOctetsReadLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_max.diskOctetsReadLast" + }, + { + "type": "path", + "name": "diskUsageArray_max.diskOpsReadLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_max.diskOpsReadLast" + }, + { + "type": "path", + "name": "diskUsageArray_max.diskMergedWriteLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_max.diskMergedWriteLast" + }, + { + "type": "path", + "name": "measurementInterval", + "expr": "$.event.measurementsForVfScalingFields.measurementInterval" + }, + { + "type": "path", + "name": "cpuUsageArray_average.cpuUsageSystem", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_average.cpuUsageSystem" + }, + { + "type": "path", + "name": "cpuUsageArray_average.percentUsage", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_average.percentUsage" + }, + { + "type": "path", + "name": "cpuUsageArray_average.cpuWait", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_average.cpuWait" + }, + { + "type": "path", + "name": "cpuUsageArray_average.cpuIdentifier", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_average.cpuIdentifier" + }, + { + "type": "path", + "name": "cpuUsageArray_average.cpuUsageUser", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_average.cpuUsageUser" + }, + { + "type": "path", + "name": "cpuUsageArray_average.cpuIdle", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_average.cpuIdle" + }, + { + "type": "path", + "name": "vNicPerformanceArray_sum.receivedOctetsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_sum.receivedOctetsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_sum.transmittedErrorPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_sum.transmittedErrorPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_sum.transmittedTotalPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_sum.transmittedTotalPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_sum.receivedErrorPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_sum.receivedErrorPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_sum.transmittedOctetsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_sum.transmittedOctetsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_sum.receivedDiscardedPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_sum.receivedDiscardedPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_sum.receivedTotalPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_sum.receivedTotalPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_sum.transmittedDiscardedPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_sum.transmittedDiscardedPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_average.receivedOctetsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_average.receivedOctetsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_average.transmittedErrorPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_average.transmittedErrorPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_average.transmittedTotalPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_average.transmittedTotalPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_average.receivedErrorPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_average.receivedErrorPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_average.transmittedOctetsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_average.transmittedOctetsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_average.receivedDiscardedPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_average.receivedDiscardedPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_average.receivedTotalPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_average.receivedTotalPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_average.transmittedDiscardedPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_average.transmittedDiscardedPacketsAccumulated" + }, + { + "type": "path", + "name": "diskUsageArray_min.diskIoTimeLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_min.diskIoTimeLast" + }, + { + "type": "path", + "name": "diskUsageArray_min.diskOctetsWriteLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_min.diskOctetsWriteLast" + }, + { + "type": "path", + "name": "diskUsageArray_min.diskMergedReadLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_min.diskMergedReadLast" + }, + { + "type": "path", + "name": "diskUsageArray_min.diskOpsWriteLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_min.diskOpsWriteLast" + }, + { + "type": "path", + "name": "diskUsageArray_min.diskTimeWriteLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_min.diskTimeWriteLast" + }, + { + "type": "path", + "name": "diskUsageArray_min.diskTimeReadLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_min.diskTimeReadLast" + }, + { + "type": "path", + "name": "diskUsageArray_min.diskOctetsReadLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_min.diskOctetsReadLast" + }, + { + "type": "path", + "name": "diskUsageArray_min.diskOpsReadLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_min.diskOpsReadLast" + }, + { + "type": "path", + "name": "diskUsageArray_min.diskMergedWriteLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_min.diskMergedWriteLast" + }, + { + "type": "path", + "name": "vNicPerformanceArray_min.receivedOctetsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_min.receivedOctetsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_min.transmittedErrorPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_min.transmittedErrorPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_min.transmittedTotalPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_min.transmittedTotalPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_min.receivedErrorPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_min.receivedErrorPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_min.transmittedOctetsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_min.transmittedOctetsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_min.receivedDiscardedPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_min.receivedDiscardedPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_min.receivedTotalPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_min.receivedTotalPacketsAccumulated" + }, + { + "type": "path", + "name": "vNicPerformanceArray_min.transmittedDiscardedPacketsAccumulated", + "expr": "$.event.measurementsForVfScalingFields.vNicPerformanceArray_min.transmittedDiscardedPacketsAccumulated" + }, + { + "type": "path", + "name": "cpuUsageArray_max.cpuUsageSystem", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_max.cpuUsageSystem" + }, + { + "type": "path", + "name": "cpuUsageArray_max.percentUsage", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_max.percentUsage" + }, + { + "type": "path", + "name": "cpuUsageArray_max.cpuWait", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_max.cpuWait" + }, + { + "type": "path", + "name": "cpuUsageArray_max.cpuIdentifier", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_max.cpuIdentifier" + }, + { + "type": "path", + "name": "cpuUsageArray_max.cpuUsageUser", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_max.cpuUsageUser" + }, + { + "type": "path", + "name": "cpuUsageArray_max.cpuIdle", + "expr": "$.event.measurementsForVfScalingFields.cpuUsageArray_max.cpuIdle" + }, + { + "type": "path", + "name": "diskUsageArray_sum.diskIoTimeLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_sum.diskIoTimeLast" + }, + { + "type": "path", + "name": "diskUsageArray_sum.diskOctetsWriteLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_sum.diskOctetsWriteLast" + }, + { + "type": "path", + "name": "diskUsageArray_sum.diskMergedReadLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_sum.diskMergedReadLast" + }, + { + "type": "path", + "name": "diskUsageArray_sum.diskOpsWriteLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_sum.diskOpsWriteLast" + }, + { + "type": "path", + "name": "diskUsageArray_sum.diskTimeWriteLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_sum.diskTimeWriteLast" + }, + { + "type": "path", + "name": "diskUsageArray_sum.diskTimeReadLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_sum.diskTimeReadLast" + }, + { + "type": "path", + "name": "diskUsageArray_sum.diskOctetsReadLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_sum.diskOctetsReadLast" + }, + { + "type": "path", + "name": "diskUsageArray_sum.diskOpsReadLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_sum.diskOpsReadLast" + }, + { + "type": "path", + "name": "diskUsageArray_sum.diskMergedWriteLast", + "expr": "$.event.measurementsForVfScalingFields.diskUsageArray_sum.diskMergedWriteLast" + }, + { + "type": "path", + "name": "datalake_ts_", + "expr": "$.datalake_ts_" + }, + { + "type": "path", + "name": "eventId", + "expr": "$.event.commonEventHeader.eventId" + }, + { + "type": "path", + "name": "reportingEntityId", + "expr": "$.event.commonEventHeader.reportingEntityId" + }, + { + "type": "path", + "name": "lastEpochMicrosec", + "expr": "$.event.commonEventHeader.lastEpochMicrosec" + }, + { + "type": "path", + "name": "reportingEntityName", + "expr": "$.event.commonEventHeader.reportingEntityName" + }, + { + "type": "path", + "name": "sourceId", + "expr": "$.event.commonEventHeader.sourceId" + }, + { + "type": "path", + "name": "eventType", + "expr": "$.event.commonEventHeader.eventType" + }, + { + "type": "path", + "name": "sequence", + "expr": "$.event.commonEventHeader.sequence" + }, + { + "type": "path", + "name": "collectorTimeStamp", + "expr": "$.event.commonEventHeader.internalHeaderFields.collectorTimeStamp" + }, + { + "type": "path", + "name": "priority", + "expr": "$.event.commonEventHeader.priority" + }, + { + "type": "path", + "name": "sourceName", + "expr": "$.event.commonEventHeader.sourceName" + }, + { + "type": "path", + "name": "eventName", + "expr": "$.event.commonEventHeader.eventName" + }, + { + "type": "path", + "name": "startEpochMicrosec", + "expr": "$.event.commonEventHeader.startEpochMicrosec" + } + ] + }, + "timestampSpec": { + "column": "collectorTimeStamp", + "format": "EEE, MM dd yyyy HH:mm:ss z" + }, + "dimensionsSpec": { + "dimensions": [], + "dimensionsExclusions": [] + } + } + }, + "metricsSpec": [{ + "type": "doubleSum", + "name": "memoryUsageArray.memorySlabUnrecl", + "fieldName": "memoryUsageArray.memorySlabUnrecl" + }, + { + "type": "doubleSum", + "name": "memoryUsageArray.memorySlabRecl", + "fieldName": "memoryUsageArray.memorySlabRecl" + }, + { + "type": "doubleSum", + "name": "memoryUsageArray.memoryCached", + "fieldName": "memoryUsageArray.memoryCached" + }, + { + "type": "doubleSum", + "name": "memoryUsageArray.memoryBuffered", + "fieldName": "memoryUsageArray.memoryBuffered" + }, + { + "type": "doubleSum", + "name": "memoryUsageArray.memoryUsed", + "fieldName": "memoryUsageArray.memoryUsed" + }, + { + "type": "doubleSum", + "name": "memoryUsageArray.memoryFree", + "fieldName": "memoryUsageArray.memoryFree" + }, + { + "type": "longSum", + "name": "cpuUsageArray_count", + "fieldName": "cpuUsageArray_count" + }, + { + "type": "doubleMin", + "name": "cpuUsageArray_min.cpuUsageSystem", + "fieldName": "cpuUsageArray_min.cpuUsageSystem" + }, + { + "type": "doubleMin", + "name": "cpuUsageArray_min.percentUsage", + "fieldName": "cpuUsageArray_min.percentUsage" + }, + { + "type": "doubleMin", + "name": "cpuUsageArray_min.cpuWait", + "fieldName": "cpuUsageArray_min.cpuWait" + }, + { + "type": "doubleMin", + "name": "cpuUsageArray_min.cpuIdentifier", + "fieldName": "cpuUsageArray_min.cpuIdentifier" + }, + { + "type": "doubleMin", + "name": "cpuUsageArray_min.cpuUsageUser", + "fieldName": "cpuUsageArray_min.cpuUsageUser" + }, + { + "type": "doubleMin", + "name": "cpuUsageArray_min.cpuIdle", + "fieldName": "cpuUsageArray_min.cpuIdle" + }, + { + "type": "longSum", + "name": "vNicPerformanceArray_count", + "fieldName": "vNicPerformanceArray_count" + }, + { + "type": "doubleSum", + "name": "diskUsageArray_average.diskIoTimeLast", + "fieldName": "diskUsageArray_average.diskIoTimeLast" + }, + { + "type": "doubleSum", + "name": "diskUsageArray_average.diskOctetsWriteLast", + "fieldName": "diskUsageArray_average.diskOctetsWriteLast" + }, + { + "type": "doubleSum", + "name": "diskUsageArray_average.diskMergedReadLast", + "fieldName": "diskUsageArray_average.diskMergedReadLast" + }, + { + "type": "doubleSum", + "name": "diskUsageArray_average.diskOpsWriteLast", + "fieldName": "diskUsageArray_average.diskOpsWriteLast" + }, + { + "type": "doubleSum", + "name": "diskUsageArray_average.diskTimeWriteLast", + "fieldName": "diskUsageArray_average.diskTimeWriteLast" + }, + { + "type": "doubleSum", + "name": "diskUsageArray_average.diskTimeReadLast", + "fieldName": "diskUsageArray_average.diskTimeReadLast" + }, + { + "type": "doubleSum", + "name": "diskUsageArray_average.diskOctetsReadLast", + "fieldName": "diskUsageArray_average.diskOctetsReadLast" + }, + { + "type": "doubleSum", + "name": "diskUsageArray_average.diskOpsReadLast", + "fieldName": "diskUsageArray_average.diskOpsReadLast" + }, + { + "type": "doubleSum", + "name": "diskUsageArray_average.diskMergedWriteLast", + "fieldName": "diskUsageArray_average.diskMergedWriteLast" + }, + { + "type": "doubleSum", + "name": "cpuUsageArray_sum.cpuUsageSystem", + "fieldName": "cpuUsageArray_sum.cpuUsageSystem" + }, + { + "type": "doubleSum", + "name": "cpuUsageArray_sum.percentUsage", + "fieldName": "cpuUsageArray_sum.percentUsage" + }, + { + "type": "doubleSum", + "name": "cpuUsageArray_sum.cpuWait", + "fieldName": "cpuUsageArray_sum.cpuWait" + }, + { + "type": "doubleSum", + "name": "cpuUsageArray_sum.cpuIdentifier", + "fieldName": "cpuUsageArray_sum.cpuIdentifier" + }, + { + "type": "doubleSum", + "name": "cpuUsageArray_sum.cpuUsageUser", + "fieldName": "cpuUsageArray_sum.cpuUsageUser" + }, + { + "type": "doubleSum", + "name": "cpuUsageArray_sum.cpuIdle", + "fieldName": "cpuUsageArray_sum.cpuIdle" + }, + { + "type": "doubleMax", + "name": "vNicPerformanceArray_max.receivedOctetsAccumulated", + "fieldName": "vNicPerformanceArray_max.receivedOctetsAccumulated" + }, + { + "type": "doubleMax", + "name": "vNicPerformanceArray_max.transmittedErrorPacketsAccumulated", + "fieldName": "vNicPerformanceArray_max.transmittedErrorPacketsAccumulated" + }, + { + "type": "doubleMax", + "name": "vNicPerformanceArray_max.transmittedTotalPacketsAccumulated", + "fieldName": "vNicPerformanceArray_max.transmittedTotalPacketsAccumulated" + }, + { + "type": "doubleMax", + "name": "vNicPerformanceArray_max.receivedErrorPacketsAccumulated", + "fieldName": "vNicPerformanceArray_max.receivedErrorPacketsAccumulated" + }, + { + "type": "doubleMax", + "name": "vNicPerformanceArray_max.transmittedOctetsAccumulated", + "fieldName": "vNicPerformanceArray_max.transmittedOctetsAccumulated" + }, + { + "type": "doubleMax", + "name": "vNicPerformanceArray_max.receivedDiscardedPacketsAccumulated", + "fieldName": "vNicPerformanceArray_max.receivedDiscardedPacketsAccumulated" + }, + { + "type": "doubleMax", + "name": "vNicPerformanceArray_max.receivedTotalPacketsAccumulated", + "fieldName": "vNicPerformanceArray_max.receivedTotalPacketsAccumulated" + }, + { + "type": "doubleMax", + "name": "vNicPerformanceArray_max.transmittedDiscardedPacketsAccumulated", + "fieldName": "vNicPerformanceArray_max.transmittedDiscardedPacketsAccumulated" + }, + { + "type": "longSum", + "name": "diskUsageArray_count", + "fieldName": "diskUsageArray_count" + }, + { + "type": "doubleMax", + "name": "diskUsageArray_max.diskIoTimeLast", + "fieldName": "diskUsageArray_max.diskIoTimeLast" + }, + { + "type": "doubleMax", + "name": "diskUsageArray_max.diskOctetsWriteLast", + "fieldName": "diskUsageArray_max.diskOctetsWriteLast" + }, + { + "type": "doubleMax", + "name": "diskUsageArray_max.diskMergedReadLast", + "fieldName": "diskUsageArray_max.diskMergedReadLast" + }, + { + "type": "doubleMax", + "name": "diskUsageArray_max.diskOpsWriteLast", + "fieldName": "diskUsageArray_max.diskOpsWriteLast" + }, + { + "type": "doubleMax", + "name": "diskUsageArray_max.diskTimeWriteLast", + "fieldName": "diskUsageArray_max.diskTimeWriteLast" + }, + { + "type": "doubleMax", + "name": "diskUsageArray_max.diskTimeReadLast", + "fieldName": "diskUsageArray_max.diskTimeReadLast" + }, + { + "type": "doubleMax", + "name": "diskUsageArray_max.diskOctetsReadLast", + "fieldName": "diskUsageArray_max.diskOctetsReadLast" + }, + { + "type": "doubleMax", + "name": "diskUsageArray_max.diskOpsReadLast", + "fieldName": "diskUsageArray_max.diskOpsReadLast" + }, + { + "type": "doubleMax", + "name": "diskUsageArray_max.diskMergedWriteLast", + "fieldName": "diskUsageArray_max.diskMergedWriteLast" + }, + { + "type": "doubleSum", + "name": "cpuUsageArray_average.cpuUsageSystem", + "fieldName": "cpuUsageArray_average.cpuUsageSystem" + }, + { + "type": "doubleSum", + "name": "cpuUsageArray_average.percentUsage", + "fieldName": "cpuUsageArray_average.percentUsage" + }, + { + "type": "doubleSum", + "name": "cpuUsageArray_average.cpuWait", + "fieldName": "cpuUsageArray_average.cpuWait" + }, + { + "type": "doubleSum", + "name": "cpuUsageArray_average.cpuIdentifier", + "fieldName": "cpuUsageArray_average.cpuIdentifier" + }, + { + "type": "doubleSum", + "name": "cpuUsageArray_average.cpuUsageUser", + "fieldName": "cpuUsageArray_average.cpuUsageUser" + }, + { + "type": "doubleSum", + "name": "cpuUsageArray_average.cpuIdle", + "fieldName": "cpuUsageArray_average.cpuIdle" + }, + { + "type": "doubleSum", + "name": "vNicPerformanceArray_sum.receivedOctetsAccumulated", + "fieldName": "vNicPerformanceArray_sum.receivedOctetsAccumulated" + }, + { + "type": "doubleSum", + "name": "vNicPerformanceArray_sum.transmittedErrorPacketsAccumulated", + "fieldName": "vNicPerformanceArray_sum.transmittedErrorPacketsAccumulated" + }, + { + "type": "doubleSum", + "name": "vNicPerformanceArray_sum.transmittedTotalPacketsAccumulated", + "fieldName": "vNicPerformanceArray_sum.transmittedTotalPacketsAccumulated" + }, + { + "type": "doubleSum", + "name": "vNicPerformanceArray_sum.receivedErrorPacketsAccumulated", + "fieldName": "vNicPerformanceArray_sum.receivedErrorPacketsAccumulated" + }, + { + "type": "doubleSum", + "name": "vNicPerformanceArray_sum.transmittedOctetsAccumulated", + "fieldName": "vNicPerformanceArray_sum.transmittedOctetsAccumulated" + }, + { + "type": "doubleSum", + "name": "vNicPerformanceArray_sum.receivedDiscardedPacketsAccumulated", + "fieldName": "vNicPerformanceArray_sum.receivedDiscardedPacketsAccumulated" + }, + { + "type": "doubleSum", + "name": "vNicPerformanceArray_sum.receivedTotalPacketsAccumulated", + "fieldName": "vNicPerformanceArray_sum.receivedTotalPacketsAccumulated" + }, + { + "type": "doubleSum", + "name": "vNicPerformanceArray_sum.transmittedDiscardedPacketsAccumulated", + "fieldName": "vNicPerformanceArray_sum.transmittedDiscardedPacketsAccumulated" + }, + { + "type": "doubleSum", + "name": "vNicPerformanceArray_average.receivedOctetsAccumulated", + "fieldName": "vNicPerformanceArray_average.receivedOctetsAccumulated" + }, + { + "type": "doubleSum", + "name": "vNicPerformanceArray_average.transmittedErrorPacketsAccumulated", + "fieldName": "vNicPerformanceArray_average.transmittedErrorPacketsAccumulated" + }, + { + "type": "doubleSum", + "name": "vNicPerformanceArray_average.transmittedTotalPacketsAccumulated", + "fieldName": "vNicPerformanceArray_average.transmittedTotalPacketsAccumulated" + }, + { + "type": "doubleSum", + "name": "vNicPerformanceArray_average.receivedErrorPacketsAccumulated", + "fieldName": "vNicPerformanceArray_average.receivedErrorPacketsAccumulated" + }, + { + "type": "doubleSum", + "name": "vNicPerformanceArray_average.transmittedOctetsAccumulated", + "fieldName": "vNicPerformanceArray_average.transmittedOctetsAccumulated" + }, + { + "type": "doubleSum", + "name": "vNicPerformanceArray_average.receivedDiscardedPacketsAccumulated", + "fieldName": "vNicPerformanceArray_average.receivedDiscardedPacketsAccumulated" + }, + { + "type": "doubleSum", + "name": "vNicPerformanceArray_average.receivedTotalPacketsAccumulated", + "fieldName": "vNicPerformanceArray_average.receivedTotalPacketsAccumulated" + }, + { + "type": "doubleSum", + "name": "vNicPerformanceArray_average.transmittedDiscardedPacketsAccumulated", + "fieldName": "vNicPerformanceArray_average.transmittedDiscardedPacketsAccumulated" + }, + { + "type": "doubleMin", + "name": "diskUsageArray_min.diskIoTimeLast", + "fieldName": "diskUsageArray_min.diskIoTimeLast" + }, + { + "type": "doubleMin", + "name": "diskUsageArray_min.diskOctetsWriteLast", + "fieldName": "diskUsageArray_min.diskOctetsWriteLast" + }, + { + "type": "doubleMin", + "name": "diskUsageArray_min.diskMergedReadLast", + "fieldName": "diskUsageArray_min.diskMergedReadLast" + }, + { + "type": "doubleMin", + "name": "diskUsageArray_min.diskOpsWriteLast", + "fieldName": "diskUsageArray_min.diskOpsWriteLast" + }, + { + "type": "doubleMin", + "name": "diskUsageArray_min.diskTimeWriteLast", + "fieldName": "diskUsageArray_min.diskTimeWriteLast" + }, + { + "type": "doubleMin", + "name": "diskUsageArray_min.diskTimeReadLast", + "fieldName": "diskUsageArray_min.diskTimeReadLast" + }, + { + "type": "doubleMin", + "name": "diskUsageArray_min.diskOctetsReadLast", + "fieldName": "diskUsageArray_min.diskOctetsReadLast" + }, + { + "type": "doubleMin", + "name": "diskUsageArray_min.diskOpsReadLast", + "fieldName": "diskUsageArray_min.diskOpsReadLast" + }, + { + "type": "doubleMin", + "name": "diskUsageArray_min.diskMergedWriteLast", + "fieldName": "diskUsageArray_min.diskMergedWriteLast" + }, + { + "type": "doubleMin", + "name": "vNicPerformanceArray_min.receivedOctetsAccumulated", + "fieldName": "vNicPerformanceArray_min.receivedOctetsAccumulated" + }, + { + "type": "doubleMin", + "name": "vNicPerformanceArray_min.transmittedErrorPacketsAccumulated", + "fieldName": "vNicPerformanceArray_min.transmittedErrorPacketsAccumulated" + }, + { + "type": "doubleMin", + "name": "vNicPerformanceArray_min.transmittedTotalPacketsAccumulated", + "fieldName": "vNicPerformanceArray_min.transmittedTotalPacketsAccumulated" + }, + { + "type": "doubleMin", + "name": "vNicPerformanceArray_min.receivedErrorPacketsAccumulated", + "fieldName": "vNicPerformanceArray_min.receivedErrorPacketsAccumulated" + }, + { + "type": "doubleSum", + "name": "vNicPerformanceArray_min.transmittedOctetsAccumulated", + "fieldName": "vNicPerformanceArray_min.transmittedOctetsAccumulated" + }, + { + "type": "doubleMin", + "name": "vNicPerformanceArray_min.receivedDiscardedPacketsAccumulated", + "fieldName": "vNicPerformanceArray_min.receivedDiscardedPacketsAccumulated" + }, + { + "type": "doubleMin", + "name": "vNicPerformanceArray_min.receivedTotalPacketsAccumulated", + "fieldName": "vNicPerformanceArray_min.receivedTotalPacketsAccumulated" + }, + { + "type": "doubleMin", + "name": "vNicPerformanceArray_min.transmittedDiscardedPacketsAccumulated", + "fieldName": "vNicPerformanceArray_min.transmittedDiscardedPacketsAccumulated" + }, + { + "type": "doubleMax", + "name": "cpuUsageArray_max.cpuUsageSystem", + "fieldName": "cpuUsageArray_max.cpuUsageSystem" + }, + { + "type": "doubleMax", + "name": "cpuUsageArray_max.percentUsage", + "fieldName": "cpuUsageArray_max.percentUsage" + }, + { + "type": "doubleMax", + "name": "cpuUsageArray_max.cpuWait", + "fieldName": "cpuUsageArray_max.cpuWait" + }, + { + "type": "doubleMax", + "name": "cpuUsageArray_max.cpuIdentifier", + "fieldName": "cpuUsageArray_max.cpuIdentifier" + }, + { + "type": "doubleMax", + "name": "cpuUsageArray_max.cpuUsageUser", + "fieldName": "cpuUsageArray_max.cpuUsageUser" + }, + { + "type": "doubleMax", + "name": "cpuUsageArray_max.cpuIdle", + "fieldName": "cpuUsageArray_max.cpuIdle" + }, + { + "type": "doubleSum", + "name": "diskUsageArray_sum.diskIoTimeLast", + "fieldName": "diskUsageArray_sum.diskIoTimeLast" + }, + { + "type": "doubleSum", + "name": "diskUsageArray_sum.diskOctetsWriteLast", + "fieldName": "diskUsageArray_sum.diskOctetsWriteLast" + }, + { + "type": "doubleSum", + "name": "diskUsageArray_sum.diskMergedReadLast", + "fieldName": "diskUsageArray_sum.diskMergedReadLast" + }, + { + "type": "doubleSum", + "name": "diskUsageArray_sum.diskOpsWriteLast", + "fieldName": "diskUsageArray_sum.diskOpsWriteLast" + }, + { + "type": "doubleSum", + "name": "diskUsageArray_sum.diskTimeWriteLast", + "fieldName": "diskUsageArray_sum.diskTimeWriteLast" + }, + { + "type": "doubleSum", + "name": "diskUsageArray_sum.diskTimeReadLast", + "fieldName": "diskUsageArray_sum.diskTimeReadLast" + }, + { + "type": "doubleSum", + "name": "diskUsageArray_sum.diskOctetsReadLast", + "fieldName": "diskUsageArray_sum.diskOctetsReadLast" + }, + { + "type": "doubleSum", + "name": "diskUsageArray_sum.diskOpsReadLast", + "fieldName": "diskUsageArray_sum.diskOpsReadLast" + }, + { + "type": "doubleSum", + "name": "diskUsageArray_sum.diskMergedWriteLast", + "fieldName": "diskUsageArray_sum.diskMergedWriteLast" + }], + "granularitySpec": { + "type": "uniform", + "segmentGranularity": "HOUR", + "queryGranularity": "MINUTE", + "rollup": true + } + }, + "tuningConfig": { + "type": "kafka", + "reportParseExceptions": true + }, + "ioConfig": { + "topic": "HW-aggs", + "replicas": 1, + "startDelay": "PT1S", + "taskDuration": "PT1H", + "completionTimeout": "PT30M", + "consumerProperties": { + "bootstrap.servers": "message-router-kafka:9092" + }, + "useEarliestOffset": true + } +} diff --git a/components/datalake-handler/feeder/src/main/resources/druid/HW-aggs-sample-format.json b/components/datalake-handler/feeder/src/main/resources/druid/HW-aggs-sample-format.json new file mode 100644 index 00000000..638f721d --- /dev/null +++ b/components/datalake-handler/feeder/src/main/resources/druid/HW-aggs-sample-format.json @@ -0,0 +1,179 @@ +{
+ "event": {
+ "commonEventHeader": {
+ "sourceId": "compute-2",
+ "startEpochMicrosec": 1558850006,
+ "eventId": "17252",
+ "reportingEntityId": "localhost",
+ "internalHeaderFields": {
+ "collectorTimeStamp": "Sun, 05 26 2019 05:53:36 UTC"
+ },
+ "eventType": "platform",
+ "priority": "Normal",
+ "version": 2,
+ "reportingEntityName": "localhost",
+ "sequence": 0,
+ "domain": "measurementsForVfScaling",
+ "lastEpochMicrosec": 1558850016,
+ "eventName": "",
+ "sourceName": "compute-2"
+ },
+ "measurementsForVfScalingFields": {
+ "memoryUsageArray_sum": {
+ "memorySlabUnrecl": 634188,
+ "memorySlabRecl": 486928,
+ "memoryCached": 7635224,
+ "memoryBuffered": 2100,
+ "memoryUsed": 4.6876648E7,
+ "memoryFree": 3.47144859648E11
+ },
+ "memoryUsageArray_average": {
+ "memorySlabUnrecl": 634188,
+ "memorySlabRecl": 486928,
+ "memoryCached": 7635224,
+ "memoryBuffered": 2100,
+ "memoryUsed": 4.6876648E7,
+ "memoryFree": 3.47144859648E11
+ },
+ "measurementsForVfScalingVersion": 2,
+ "cpuUsageArray_count": 88,
+ "memoryUsageArray_min": {
+ "memorySlabUnrecl": 634188,
+ "memorySlabRecl": 486928,
+ "memoryCached": 7635224,
+ "memoryBuffered": 2100,
+ "memoryUsed": 4.6876648E7,
+ "memoryFree": 3.47144859648E11
+ },
+ "cpuUsageArray_min": {
+ "cpuUsageSystem": 0,
+ "percentUsage": 0,
+ "cpuWait": 0,
+ "cpuIdentifier": 0,
+ "cpuUsageUser": 0,
+ "cpuIdle": 0
+ },
+ "vNicPerformanceArray_count": 51,
+ "diskUsageArray_average": {
+ "diskIoTimeLast": 6.633306574873333,
+ "diskOctetsWriteLast": 1801687.4324733336,
+ "diskMergedReadLast": 0,
+ "diskOpsWriteLast": 336.9987602213334,
+ "diskTimeWriteLast": 1.4666613132266668,
+ "diskTimeReadLast": 0,
+ "diskOctetsReadLast": 0,
+ "diskOpsReadLast": 0,
+ "diskMergedWriteLast": 15.266605225866664
+ },
+ "cpuUsageArray_sum": {
+ "cpuUsageSystem": 31.499984875965808,
+ "percentUsage": 0,
+ "cpuWait": 0.0999987854677,
+ "cpuIdentifier": 3828,
+ "cpuUsageUser": 464.402795424227,
+ "cpuIdle": 31.499984875965808
+ },
+ "vNicPerformanceArray_max": {
+ "receivedOctetsAccumulated": 7420055.60296,
+ "transmittedErrorPacketsAccumulated": 4.9E-324,
+ "transmittedTotalPacketsAccumulated": 3891.02709722,
+ "receivedErrorPacketsAccumulated": 4.9E-324,
+ "transmittedOctetsAccumulated": 7030576.37061,
+ "receivedDiscardedPacketsAccumulated": 0.200002362849,
+ "receivedTotalPacketsAccumulated": 5127.16747474,
+ "transmittedDiscardedPacketsAccumulated": 0.200000846185
+ },
+ "diskUsageArray_count": 3,
+ "memoryUsageArray_max": {
+ "memorySlabUnrecl": 634188,
+ "memorySlabRecl": 486928,
+ "memoryCached": 7635224,
+ "memoryBuffered": 2100,
+ "memoryUsed": 4.6876648E7,
+ "memoryFree": 3.47144859648E11
+ },
+ "diskUsageArray_max": {
+ "diskIoTimeLast": 9.99995970463,
+ "diskOctetsWriteLast": 2702532.45109,
+ "diskMergedReadLast": 4.9E-324,
+ "diskOpsWriteLast": 506.098328814,
+ "diskTimeWriteLast": 2.19999284748,
+ "diskTimeReadLast": 4.9E-324,
+ "diskOctetsReadLast": 4.9E-324,
+ "diskOpsReadLast": 4.9E-324,
+ "diskMergedWriteLast": 22.8999080073
+ },
+ "measurementInterval": 10,
+ "cpuUsageArray_average": {
+ "cpuUsageSystem": 0.35795437359052057,
+ "percentUsage": 0,
+ "cpuWait": 0.0011363498348602272,
+ "cpuIdentifier": 43.5,
+ "cpuUsageUser": 5.277304493457125,
+ "cpuIdle": 0.35795437359052057
+ },
+ "vNicPerformanceArray_sum": {
+ "receivedOctetsAccumulated": 2.497791331284713E7,
+ "transmittedErrorPacketsAccumulated": 0,
+ "transmittedTotalPacketsAccumulated": 5657.180629766652,
+ "receivedErrorPacketsAccumulated": 0,
+ "transmittedOctetsAccumulated": 2.497472905660059E7,
+ "receivedDiscardedPacketsAccumulated": 0.200002362849,
+ "receivedTotalPacketsAccumulated": 6834.521263097156,
+ "transmittedDiscardedPacketsAccumulated": 0.200000846185
+ },
+ "vNicPerformanceArray_average": {
+ "receivedOctetsAccumulated": 489763.0061342575,
+ "transmittedErrorPacketsAccumulated": 0,
+ "transmittedTotalPacketsAccumulated": 110.92511038758141,
+ "receivedErrorPacketsAccumulated": 0,
+ "transmittedOctetsAccumulated": 489700.56973726646,
+ "receivedDiscardedPacketsAccumulated": 0.003921614957823529,
+ "receivedTotalPacketsAccumulated": 134.01022084504228,
+ "transmittedDiscardedPacketsAccumulated": 0.003921585219313725
+ },
+ "diskUsageArray_min": {
+ "diskIoTimeLast": 0,
+ "diskOctetsWriteLast": 0,
+ "diskMergedReadLast": 0,
+ "diskOpsWriteLast": 0,
+ "diskTimeWriteLast": 0,
+ "diskTimeReadLast": 0,
+ "diskOctetsReadLast": 0,
+ "diskOpsReadLast": 0,
+ "diskMergedWriteLast": 0
+ },
+ "vNicPerformanceArray_min": {
+ "receivedOctetsAccumulated": 0,
+ "transmittedErrorPacketsAccumulated": 0,
+ "transmittedTotalPacketsAccumulated": 0,
+ "receivedErrorPacketsAccumulated": 0,
+ "transmittedOctetsAccumulated": 0,
+ "receivedDiscardedPacketsAccumulated": 0,
+ "receivedTotalPacketsAccumulated": 0,
+ "transmittedDiscardedPacketsAccumulated": 0
+ },
+ "memoryUsageArray_count": 1,
+ "cpuUsageArray_max": {
+ "cpuUsageSystem": 1.90000067932,
+ "percentUsage": 4.9E-324,
+ "cpuWait": 0.0999987854677,
+ "cpuIdentifier": 87,
+ "cpuUsageUser": 98.1005644149,
+ "cpuIdle": 1.90000067932
+ },
+ "diskUsageArray_sum": {
+ "diskIoTimeLast": 19.89991972462,
+ "diskOctetsWriteLast": 5405062.297420001,
+ "diskMergedReadLast": 0,
+ "diskOpsWriteLast": 1010.9962806640001,
+ "diskTimeWriteLast": 4.39998393968,
+ "diskTimeReadLast": 0,
+ "diskOctetsReadLast": 0,
+ "diskOpsReadLast": 0,
+ "diskMergedWriteLast": 45.799815677599995
+ }
+ }
+ },
+ "datalake_ts_": 1560149458487
+}
|