036 cache, capacity
This commit is contained in:
+1
-1
@@ -76,7 +76,7 @@
|
|||||||
<!--- global settings --->
|
<!--- global settings --->
|
||||||
|
|
||||||
<cfset request.RECORDS_PER_PAGE=500/>
|
<cfset request.RECORDS_PER_PAGE=500/>
|
||||||
<cfset request.APP_VERSION="0.00.035"/>
|
<cfset request.APP_VERSION="0.00.036"/>
|
||||||
<cfset request.STAND=getStand()/>
|
<cfset request.STAND=getStand()/>
|
||||||
|
|
||||||
<cflock scope="application" type="readonly" timeout=3>
|
<cflock scope="application" type="readonly" timeout=3>
|
||||||
|
|||||||
@@ -0,0 +1,184 @@
|
|||||||
|
<cfsilent>
|
||||||
|
<cfimport prefix="m" taglib="lib"/>
|
||||||
|
<cfimport prefix="c" taglib="lib/controls"/>
|
||||||
|
<cfimport prefix="d" taglib="lib/data"/>
|
||||||
|
<cfimport prefix="layout" taglib="layout"/>
|
||||||
|
</cfsilent>
|
||||||
|
|
||||||
|
<m:prepare_ls entity="crm2cloud" settingsKey="crm2cloud" accessObject="" pageInfoOut="pageInfo" trackOut="tr"/>
|
||||||
|
|
||||||
|
<cfquery name="qRead">
|
||||||
|
with
|
||||||
|
capacity as (
|
||||||
|
select "Cluster" as cluster, count(*) as hosts, sum(cores) as cores, round(sum(ghz)) as ghz, round(sum(ram)) as ram
|
||||||
|
from (
|
||||||
|
select "Cluster", "Host"
|
||||||
|
, avg("Host_CPU_Cores") as cores, avg("Host_CPU_Cores"*"Host_CPU_Speed") as ghz, avg("Host_RAM"*.85) as ram
|
||||||
|
from vmreports.compute
|
||||||
|
where ts=(select max(ts) from vmreports.compute)
|
||||||
|
group by "Cluster","Host"
|
||||||
|
order by "Cluster","Host"
|
||||||
|
) host
|
||||||
|
group by "Cluster"),
|
||||||
|
|
||||||
|
usage as (
|
||||||
|
select "Cluster" as cluster
|
||||||
|
, sum("VM_vCPU_count") as vm_cores
|
||||||
|
, round(sum("VM_vCPU_count"*"VDC_CPU_Speed")) as vm_ghz
|
||||||
|
, round(sum("VM_CPU_Reserv_GHz")) as vm_ghz_reserved
|
||||||
|
, round(sum("VM_vCPU_count"*"VDC_CPU_Speed"*"VM_CPU_Reserv_perc"/100)) as vm_ghz_reserved_c
|
||||||
|
, round(sum("VM_vCPU_count"*"VDC_CPU_Speed"*(case when "VM_CPU_Reserv_perc" IS null then 20 when "VM_CPU_Reserv_perc"<=20 then 20 else "VM_CPU_Reserv_perc" end)/100)) as vm_ghz_promised
|
||||||
|
-- promised - зарезервированные ГГц, если включить минимальное согласованное резервирование
|
||||||
|
, round(sum("VM_RAM_Allocated")) as vm_ram_alloc
|
||||||
|
, round(sum("VM_RAM_Used")) as vm_ram_used
|
||||||
|
from vmreports.compute
|
||||||
|
where ts=(select max(ts) from vmreports.compute)
|
||||||
|
group by "Cluster"),
|
||||||
|
|
||||||
|
cluster_stat as (
|
||||||
|
SELECT
|
||||||
|
h."Cluster" as cluster
|
||||||
|
,h."Cluster_v2" as cluster_v2
|
||||||
|
,m.models
|
||||||
|
,COUNT(*) as hosts_total
|
||||||
|
,sum(CASE WHEN "Maintenance"='inMaintenance' THEN 1 ELSE 0 END) as hosts_in_maintenance
|
||||||
|
,sum(CASE WHEN "Maintenance"='notInMaintenance' THEN 1 ELSE 0 END) as hosts_in_service
|
||||||
|
,sum("CPU_Cores"*"CPU_Sockets") as cores
|
||||||
|
,sum(CASE WHEN "Maintenance"='notInMaintenance' THEN "CPU_Cores"*"CPU_Sockets" ELSE 0 END) as cores_in_service
|
||||||
|
,round(sum(CASE WHEN "Maintenance"='notInMaintenance' THEN "CPU_Cores"*"CPU_Sockets"*"CPU_Speed" ELSE 0 END)::numeric,1) as ghz_in_service
|
||||||
|
,round(avg(CASE WHEN "Maintenance"='notInMaintenance' THEN "CPU_Speed" ELSE 0 END)::numeric,1) as ghz
|
||||||
|
,CASE WHEN sum("CPU_Cores"*"CPU_Sockets") > 0 THEN round((sum("CPU_Used_AVG"*"CPU_Cores"*"CPU_Sockets")/sum("CPU_Cores"*"CPU_Sockets"))::numeric,0) ELSE NULL END as cpu_usage_perc
|
||||||
|
FROM vmreports.host h
|
||||||
|
LEFT OUTER JOIN (
|
||||||
|
SELECT hi."Cluster", STRING_AGG(DISTINCT hi."Model" || ' [' || (hi.cnt::text) || '] ',', ') as models
|
||||||
|
FROM (
|
||||||
|
SELECT hii."Cluster", hii."Model", count(hii."Model") as cnt
|
||||||
|
FROM vmreports.host hii
|
||||||
|
WHERE hii.ts=(SELECT max(ts) FROM vmreports.host)
|
||||||
|
GROUP BY hii."Cluster", hii."Model"
|
||||||
|
) hi GROUP BY hi."Cluster"
|
||||||
|
) m ON (h."Cluster"=m."Cluster")
|
||||||
|
WHERE ts=(SELECT max(ts) FROM vmreports.host)
|
||||||
|
GROUP BY h."Cluster", h."Cluster_v2", m.models
|
||||||
|
ORDER BY h."Cluster"
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
select
|
||||||
|
<d:field_set titleMapOut="titleMap" lengthOut="fieldCount">
|
||||||
|
<d:field title="cluster v1">h.cluster as cluster_v1</d:field>
|
||||||
|
<d:field title="cluster v2">h.cluster_v2</d:field>
|
||||||
|
<d:field title="models">h.models</d:field>
|
||||||
|
<d:field title="hosts total">h.hosts_total</d:field>
|
||||||
|
<d:field title="hosts in maintenance">h.hosts_in_maintenance</d:field>
|
||||||
|
<d:field title="hosts in service">h.hosts_in_service</d:field>
|
||||||
|
<d:field title="Cores Total">h.cores</d:field>
|
||||||
|
<d:field title="cores in service">h.cores_in_service</d:field>
|
||||||
|
<d:field title="ghz in service">h.ghz_in_service</d:field>
|
||||||
|
<d:field title="ghz total">h.ghz</d:field>
|
||||||
|
<d:field title="cpu usage %">h.cpu_usage_perc</d:field>
|
||||||
|
<d:field title="hosts по ВМ">c.hosts</d:field>
|
||||||
|
<d:field title="Cores Capacity">c.cores as Cores_Capacity</d:field>
|
||||||
|
<d:field title="GHz Capacity">c.ghz as GHz_Capacity</d:field>
|
||||||
|
<d:field title="vm ghz reserved">u.vm_ghz_reserved</d:field>
|
||||||
|
<d:field title="vm ghz обещанные">u.vm_ghz_promised</d:field>
|
||||||
|
<d:field title="GHz provision rate">round((u.vm_ghz_promised/c.ghz)::numeric,2) as GHz_provision_rate</d:field>
|
||||||
|
<d:field title="RAM Capacity">c.ram as RAM_Capacity</d:field>
|
||||||
|
<d:field title="vm ram alloc">u.vm_ram_alloc</d:field>
|
||||||
|
<d:field title="vm ram used">u.vm_ram_used</d:field>
|
||||||
|
<d:field title="GB provision rate">round((u.vm_ram_alloc/c.ram)::numeric,2) as GB_provision_rate</d:field>
|
||||||
|
</d:field_set>
|
||||||
|
from cluster_stat h
|
||||||
|
left outer join usage u on (h.cluster=u.cluster)
|
||||||
|
left outer join capacity c on (h.cluster=c.cluster)
|
||||||
|
<!--- where 1=1 <m:filter_build filter=#pageInfo.settings.filter#/>--->
|
||||||
|
order by <m:order_build sortArray=#pageInfo.settings.sort.sortArray# fieldCount=#fieldCount#/>
|
||||||
|
</cfquery>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<cfif isDefined("output_xls")>
|
||||||
|
<layout:xml qRead=#qRead# titleMap=#titleMap# filename="#pageInfo.entity#.xml"/>
|
||||||
|
<cfabort/>
|
||||||
|
</cfif><cfif isDefined("output_json")>
|
||||||
|
<layout:json qRead=#qRead# titleMap=#titleMap# filename="#pageInfo.entity#.json"/>
|
||||||
|
<cfabort/>
|
||||||
|
</cfif><!---
|
||||||
|
---><layout:page section="header" pageInfo=#pageInfo#>
|
||||||
|
|
||||||
|
<layout:attribute name="title">
|
||||||
|
<cfoutput><b>Сверка CRM - Cloud</b></cfoutput>
|
||||||
|
</layout:attribute>
|
||||||
|
|
||||||
|
</layout:page>
|
||||||
|
<!--- <cfdump var=#qRead#/> --->
|
||||||
|
|
||||||
|
|
||||||
|
<layout:grid_summary
|
||||||
|
recordCount=#qRead.recordCount#
|
||||||
|
footerOut="gridFooter"
|
||||||
|
excelLink="Yes"
|
||||||
|
jsonLink="Yes"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<table class="worktable">
|
||||||
|
<thead>
|
||||||
|
<layout:grid_head titleMap=#titleMap# sortArray=#pageInfo.settings.sort.sortArray#>
|
||||||
|
<th width="10%"><layout:column_head name="cluster_v1"/></th>
|
||||||
|
<th width="10%"><layout:column_head name="cluster_v2"/></th>
|
||||||
|
<th width="20%"><layout:column_head name="models"/></th>
|
||||||
|
<th width="3%"><layout:column_head name="hosts_total"/></th>
|
||||||
|
<th width="3%"><layout:column_head name="hosts_in_maintenance"/></th>
|
||||||
|
<th width="3%"><layout:column_head name="hosts_in_service"/></th>
|
||||||
|
<th width="3%"><layout:column_head name="cores_in_service"/></th>
|
||||||
|
<th width="3%"><layout:column_head name="ghz_in_service"/></th>
|
||||||
|
<th width="3%"><layout:column_head name="ghz"/></th>
|
||||||
|
<th width="3%"><layout:column_head name="cpu_usage_perc"/></th>
|
||||||
|
<th width="1%"></th>
|
||||||
|
<th width="3%"><layout:column_head name="hosts"/></th>
|
||||||
|
<th width="3%"><layout:column_head name="Cores_Capacity"/></th>
|
||||||
|
<th width="3%"><layout:column_head name="GHz_Capacity"/></th>
|
||||||
|
<th width="3%"><layout:column_head name="vm_ghz_reserved"/></th>
|
||||||
|
<th width="3%"><layout:column_head name="vm_ghz_promised"/></th>
|
||||||
|
<th width="3%"><layout:column_head name="GHz_provision_rate"/></th>
|
||||||
|
<th width="3%"><layout:column_head name="RAM_Capacity"/></th>
|
||||||
|
<th width="3%"><layout:column_head name="vm_ram_alloc"/></th>
|
||||||
|
<th width="3%"><layout:column_head name="vm_ram_used"/></th>
|
||||||
|
<th width="3%"><layout:column_head name="GB_provision_rate"/></th>
|
||||||
|
</layout:grid_head>
|
||||||
|
</thead>
|
||||||
|
|
||||||
|
<cfoutput query="qRead">
|
||||||
|
<tr>
|
||||||
|
<td>#cluster_v1#</td>
|
||||||
|
<td>#cluster_v2#</td>
|
||||||
|
<td>#models#</td>
|
||||||
|
<td class="r">#hosts_total#</td>
|
||||||
|
<td class="r">#hosts_in_maintenance#</td>
|
||||||
|
<td class="r">#hosts_in_service#</td>
|
||||||
|
<td class="r">#cores_in_service#</td>
|
||||||
|
<td class="r">#ghz_in_service#</td>
|
||||||
|
<td class="r">#ghz#</td>
|
||||||
|
<td class="r">#cpu_usage_perc#</td>
|
||||||
|
<td></td>
|
||||||
|
<td class="r">#hosts#</td>
|
||||||
|
<td class="r">#Cores_Capacity#</td>
|
||||||
|
<td class="r">#GHz_Capacity#</td>
|
||||||
|
<td class="r">#vm_ghz_reserved#</td>
|
||||||
|
<td class="r">#vm_ghz_promised#</td>
|
||||||
|
<td class="r">#GHz_provision_rate#</td>
|
||||||
|
<td class="r">#RAM_Capacity#</td>
|
||||||
|
<td class="r">#vm_ram_alloc#</td>
|
||||||
|
<td class="r">#vm_ram_used#</td>
|
||||||
|
<td class="r">#GB_provision_rate#</td>
|
||||||
|
</tr>
|
||||||
|
</cfoutput>
|
||||||
|
|
||||||
|
</table>
|
||||||
|
<!--- <cfdump var=#qCharge#/> --->
|
||||||
|
|
||||||
|
|
||||||
|
<layout:page section="footer"/>
|
||||||
|
|
||||||
+4
-4
@@ -8,7 +8,7 @@
|
|||||||
<m:prepare_ls entity="crm2cloud" settingsKey="crm2cloud" accessObject="" pageInfoOut="pageInfo" trackOut="tr"/>
|
<m:prepare_ls entity="crm2cloud" settingsKey="crm2cloud" accessObject="" pageInfoOut="pageInfo" trackOut="tr"/>
|
||||||
|
|
||||||
<!--- *** нуждается в оптимизации, чтобы фильтр по контрагенту ускорял селект --->
|
<!--- *** нуждается в оптимизации, чтобы фильтр по контрагенту ускорял селект --->
|
||||||
<cfquery name="qRead">
|
<cfquery name="qRead" cachedWithin=#createTimeSpan(0, 0, 25, 0)#>
|
||||||
WITH
|
WITH
|
||||||
status(status, status_id, probability_pc) as (VALUES
|
status(status, status_id, probability_pc) as (VALUES
|
||||||
('Закрыта неуспешно',7,0),('Закрыта успешно',6,100),('Договор подписан',5,100),('Договор на подписании',15,90),('Договор на согласовании',12,70),
|
('Закрыта неуспешно',7,0),('Закрыта успешно',6,100),('Договор подписан',5,100),('Договор на подписании',15,90),('Договор на согласовании',12,70),
|
||||||
@@ -81,7 +81,7 @@ z.id_klienta as WZ, z.__name as client, z.__id as company_uid, round(sum(c.cnt*o
|
|||||||
FROM stair o
|
FROM stair o
|
||||||
JOIN elma.companies z on (o._companies=z.__id)
|
JOIN elma.companies z on (o._companies=z.__id)
|
||||||
LEFT OUTER JOIN component c on (c.__id = ANY (o.params))
|
LEFT OUTER JOIN component c on (c.__id = ANY (o.params))
|
||||||
WHERE c.code LIKE 'iaas.ngc.%.ram-_' AND c.cnt <> 0 AND o.cnt <> 0
|
WHERE c.code SIMILAR TO 'iaas.(ngc|dcp).%.ram-_' AND c.cnt <> 0 AND o.cnt <> 0
|
||||||
GROUP BY z.id_klienta, z.__id, z.__name
|
GROUP BY z.id_klienta, z.__id, z.__name
|
||||||
),
|
),
|
||||||
sold_cpu as (SELECT
|
sold_cpu as (SELECT
|
||||||
@@ -91,7 +91,7 @@ z.id_klienta as WZ, z.__name as client, z.__id as company_uid, round(sum(c.cnt*o
|
|||||||
FROM stair o
|
FROM stair o
|
||||||
JOIN elma.companies z on (o._companies=z.__id)
|
JOIN elma.companies z on (o._companies=z.__id)
|
||||||
LEFT OUTER JOIN component c on (c.__id = ANY (o.params))
|
LEFT OUTER JOIN component c on (c.__id = ANY (o.params))
|
||||||
WHERE c.code LIKE 'iaas.ngc.%.vcpu%-_' AND c.cnt <> 0 AND o.cnt <> 0
|
WHERE c.code SIMILAR TO 'iaas.(ngc|dcp).%.vcpu%-_' AND c.cnt <> 0 AND o.cnt <> 0
|
||||||
GROUP BY z.id_klienta, z.__id, z.__name
|
GROUP BY z.id_klienta, z.__id, z.__name
|
||||||
),
|
),
|
||||||
sold_disk as (SELECT
|
sold_disk as (SELECT
|
||||||
@@ -101,7 +101,7 @@ z.id_klienta as WZ, z.__name as client, z.__id as company_uid, round(sum(c.cnt*o
|
|||||||
FROM stair o
|
FROM stair o
|
||||||
JOIN elma.companies z on (o._companies=z.__id)
|
JOIN elma.companies z on (o._companies=z.__id)
|
||||||
LEFT OUTER JOIN component c on (c.__id = ANY (o.params))
|
LEFT OUTER JOIN component c on (c.__id = ANY (o.params))
|
||||||
WHERE c.code SIMILAR TO 'iaas.ngc.%.(ssd|fstssd|sata)-_' AND c.cnt <> 0 AND o.cnt <> 0
|
WHERE c.code SIMILAR TO 'iaas.(ngc|dcp).%.(ssd|fstssd|sata)-_' AND c.cnt <> 0 AND o.cnt <> 0
|
||||||
GROUP BY z.id_klienta, z.__id, z.__name
|
GROUP BY z.id_klienta, z.__id, z.__name
|
||||||
),
|
),
|
||||||
deal_stat as (
|
deal_stat as (
|
||||||
|
|||||||
@@ -0,0 +1,64 @@
|
|||||||
|
with
|
||||||
|
capacity as (
|
||||||
|
select "Cluster" as cluster, count(*) as hosts, sum(cores) as cores, round(sum(ghz)) as ghz, round(sum(ram)) as ram
|
||||||
|
from (
|
||||||
|
select "Cluster", "Host"
|
||||||
|
, avg("Host_CPU_Cores") as cores, avg("Host_CPU_Cores"*"Host_CPU_Speed") as ghz, avg("Host_RAM"*.85) as ram
|
||||||
|
from vmreports.compute
|
||||||
|
where ts=(select max(ts) from vmreports.compute)
|
||||||
|
group by "Cluster","Host"
|
||||||
|
order by "Cluster","Host"
|
||||||
|
) host
|
||||||
|
group by "Cluster"),
|
||||||
|
|
||||||
|
usage as (
|
||||||
|
select "Cluster" as cluster
|
||||||
|
, sum("VM_vCPU_count") as vm_cores
|
||||||
|
, round(sum("VM_vCPU_count"*"VDC_CPU_Speed")) as vm_ghz
|
||||||
|
, round(sum("VM_CPU_Reserv_GHz")) as vm_ghz_reserved
|
||||||
|
, round(sum("VM_vCPU_count"*"VDC_CPU_Speed"*"VM_CPU_Reserv_perc"/100)) as vm_ghz_reserved_c
|
||||||
|
, round(sum("VM_vCPU_count"*"VDC_CPU_Speed"*(case when "VM_CPU_Reserv_perc" IS null then 20 when "VM_CPU_Reserv_perc"<=20 then 20 else "VM_CPU_Reserv_perc" end)/100)) as vm_ghz_promised
|
||||||
|
-- promised - зарезервированные ГГц, если включить минимальное согласованное резервирование
|
||||||
|
, round(sum("VM_RAM_Allocated")) as vm_ram_alloc
|
||||||
|
, round(sum("VM_RAM_Used")) as vm_ram_used
|
||||||
|
from vmreports.compute
|
||||||
|
where ts=(select max(ts) from vmreports.compute)
|
||||||
|
group by "Cluster"),
|
||||||
|
|
||||||
|
cluster_stat as (
|
||||||
|
SELECT
|
||||||
|
h."Cluster" as cluster
|
||||||
|
,h."Cluster_v2" as cluster_v2
|
||||||
|
,m.models
|
||||||
|
,COUNT(*) as hosts_total
|
||||||
|
,sum(CASE WHEN "Maintenance"='inMaintenance' THEN 1 ELSE 0 END) as hosts_in_maintenance
|
||||||
|
,sum(CASE WHEN "Maintenance"='notInMaintenance' THEN 1 ELSE 0 END) as hosts_in_service
|
||||||
|
,sum("CPU_Cores"*"CPU_Sockets") as cores
|
||||||
|
,sum(CASE WHEN "Maintenance"='notInMaintenance' THEN "CPU_Cores"*"CPU_Sockets" ELSE 0 END) as cores_in_service
|
||||||
|
,round(sum(CASE WHEN "Maintenance"='notInMaintenance' THEN "CPU_Cores"*"CPU_Sockets"*"CPU_Speed" ELSE 0 END)::numeric,1) as ghz_in_service
|
||||||
|
,round(avg(CASE WHEN "Maintenance"='notInMaintenance' THEN "CPU_Speed" ELSE 0 END)::numeric,1) as ghz
|
||||||
|
,CASE WHEN sum("CPU_Cores"*"CPU_Sockets") > 0 THEN round((sum("CPU_Used_AVG"*"CPU_Cores"*"CPU_Sockets")/sum("CPU_Cores"*"CPU_Sockets"))::numeric,0) ELSE NULL END as cpu_usage_perc
|
||||||
|
FROM vmreports.host h
|
||||||
|
LEFT OUTER JOIN (
|
||||||
|
SELECT hi."Cluster", STRING_AGG(DISTINCT hi."Model" || ' [' || (hi.cnt::text) || '] ',', ') as models
|
||||||
|
FROM (
|
||||||
|
SELECT hii."Cluster", hii."Model", count(hii."Model") as cnt
|
||||||
|
FROM vmreports.host hii
|
||||||
|
WHERE hii.ts=(SELECT max(ts) FROM vmreports.host)
|
||||||
|
GROUP BY hii."Cluster", hii."Model"
|
||||||
|
) hi GROUP BY hi."Cluster"
|
||||||
|
) m ON (h."Cluster"=m."Cluster")
|
||||||
|
WHERE ts=(SELECT max(ts) FROM vmreports.host)
|
||||||
|
GROUP BY h."Cluster", h."Cluster_v2", m.models
|
||||||
|
ORDER BY h."Cluster"
|
||||||
|
)
|
||||||
|
|
||||||
|
select h.cluster
|
||||||
|
,h.cluster_v2
|
||||||
|
,h.models
|
||||||
|
,c.hosts, c.cores as Cores_Capacity
|
||||||
|
, c.ghz as GHz_Capacity, u.vm_ghz_reserved, u.vm_ghz_promised, round((u.vm_ghz_promised/c.ghz)::numeric,2) as GHz_provision_rate
|
||||||
|
, c.ram as RAM_Capacity, u.vm_ram_alloc, u.vm_ram_used, round((u.vm_ram_alloc/c.ram)::numeric,2) as GB_provision_rate
|
||||||
|
from cluster_stat h
|
||||||
|
left outer join usage u on (h.cluster=u.cluster)
|
||||||
|
left outer join capacity c on (h.cluster=c.cluster)
|
||||||
@@ -0,0 +1,68 @@
|
|||||||
|
drop table if exists vmreports.host;
|
||||||
|
create table vmreports.host(
|
||||||
|
"Name" varchar(255) NULL,
|
||||||
|
"Model" varchar(255) NULL,
|
||||||
|
"Cluster" varchar(255) NULL,
|
||||||
|
"Cluster_v2" varchar(255) NULL,
|
||||||
|
"Maintenance" varchar(255) NULL,
|
||||||
|
|
||||||
|
"CPU_Cores" float NULL,
|
||||||
|
"CPU_Sockets" float NULL,
|
||||||
|
"CPU_Speed" float NULL,
|
||||||
|
"RAM_Total" float NULL,
|
||||||
|
"RAM_Used" float NULL,
|
||||||
|
"CPU_Used" float NULL,
|
||||||
|
"CPU_Used_AVG" float NULL,
|
||||||
|
"CPU_Contention_95" float NULL,
|
||||||
|
"Object_UUID" uuid NOT NULL,
|
||||||
|
ts timestamptz NOT NULL
|
||||||
|
,CONSTRAINT PK_host PRIMARY KEY (ts, "Object_UUID")
|
||||||
|
);
|
||||||
|
grant all on vmreports.host to nifi;
|
||||||
|
--alter table vmreports.host ADD "Cluster_v2" varchar(255) NULL;
|
||||||
|
/*
|
||||||
|
{
|
||||||
|
"type": "record",
|
||||||
|
"name": "vmreports.host",
|
||||||
|
"namespace": "org.apache.nifi",
|
||||||
|
"fields": [
|
||||||
|
{"name":"Object_UUID", "type":{"type": "string", "logicalType": "uuid"}},
|
||||||
|
{"name":"ts","type":{"type": "long", "logicalType": "local-timestamp-millis"}},
|
||||||
|
{"name":"Name", "type":["string" ,"null"]},
|
||||||
|
{"name":"Model", "type":["string" ,"null"]},
|
||||||
|
{"name":"Cluster", "type":["string" ,"null"]},
|
||||||
|
{"name":"Cluster_v2", "type":["string" ,"null"]},
|
||||||
|
{"name":"Maintenance", "type":["string" ,"null"]},
|
||||||
|
|
||||||
|
{"name":"CPU_Cores", "type":["float" ,"null"]},
|
||||||
|
{"name":"CPU_Sockets", "type":["float" ,"null"]},
|
||||||
|
{"name":"CPU_Speed", "type":["float" ,"null"]},
|
||||||
|
{"name":"RAM_Total", "type":["float" ,"null"]},
|
||||||
|
{"name":"RAM_Used", "type":["float" ,"null"]},
|
||||||
|
{"name":"CPU_Used", "type":["float" ,"null"]},
|
||||||
|
{"name":"CPU_Used_AVG", "type":["float" ,"null"]},
|
||||||
|
{"name":"CPU_Contention_95", "type":["float" ,"null"]}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
{
|
||||||
|
"*": {
|
||||||
|
"objId":"[&1].Name",
|
||||||
|
"1":"[&1].Model",
|
||||||
|
"2":"[&1].Cluster",
|
||||||
|
"3":"[&1].Cluster_v2",
|
||||||
|
"4":"[&1].Maintenance",
|
||||||
|
"5":"[&1].CPU_Cores",
|
||||||
|
"6":"[&1].CPU_Sockets",
|
||||||
|
"7":"[&1].CPU_Speed",
|
||||||
|
"8":"[&1].RAM_Total",
|
||||||
|
"9":"[&1].RAM_Used",
|
||||||
|
"10":"[&1].CPU_Used",
|
||||||
|
"11":"[&1].CPU_Used_AVG",
|
||||||
|
"12":"[&1].CPU_Contention_95",
|
||||||
|
"objUUID":"[&1].Object_UUID"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
*/
|
||||||
@@ -25,6 +25,7 @@
|
|||||||
<c:menu_item acl="" page="specification_item_ls.cfm" label="Экземпляры услуг"/>--->
|
<c:menu_item acl="" page="specification_item_ls.cfm" label="Экземпляры услуг"/>--->
|
||||||
<li class="menu-title">Отчеты</li>
|
<li class="menu-title">Отчеты</li>
|
||||||
<c:menu_item acl="" page="crm2cloud.cfm" label="CRM - Cloud"/>
|
<c:menu_item acl="" page="crm2cloud.cfm" label="CRM - Cloud"/>
|
||||||
|
<c:menu_item acl="" page="cloud_capacity.cfm" label="Cloud Capacity"/>
|
||||||
<c:menu_item acl="" page="payg.cfm" label="PAYG"/>
|
<c:menu_item acl="" page="payg.cfm" label="PAYG"/>
|
||||||
<!--- <c:menu_item acl="" page="detail_daily_rpt.cfm" label="Детализация по дням"/>
|
<!--- <c:menu_item acl="" page="detail_daily_rpt.cfm" label="Детализация по дням"/>
|
||||||
<c:menu_item acl="" page="income_daily_rpt.cfm" label="Выручка по дням"/>
|
<c:menu_item acl="" page="income_daily_rpt.cfm" label="Выручка по дням"/>
|
||||||
|
|||||||
Reference in New Issue
Block a user