Refactored federation stats. Added provider hypervisor chart.
This commit is contained in:
parent
4d6e592204
commit
fbf6e50b49
4 changed files with 88 additions and 7 deletions
|
@ -275,6 +275,21 @@ public class Service extends PathPropertyList
|
|||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the host provider hypervisor.
|
||||
*
|
||||
* @return the host provider hypervisor
|
||||
*/
|
||||
public String getHostProviderHypervisor()
|
||||
{
|
||||
String result;
|
||||
|
||||
result = get("host.provider.hypervisor");
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the host provider type.
|
||||
*
|
||||
|
|
|
@ -245,6 +245,69 @@ public class ChartHtmlizer
|
|||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Htmlize host provider hypervisor chart.
|
||||
*
|
||||
* @param services
|
||||
* the services
|
||||
* @return the string
|
||||
* @throws StatoolInfosException
|
||||
* the statool infos exception
|
||||
*/
|
||||
public static String htmlizeHostProviderHypervisorChart(final Services services) throws StatoolInfosException
|
||||
{
|
||||
String result;
|
||||
|
||||
ChartColors colors = ChartColor.valueList();
|
||||
colors.remove(ChartColor.BLUE);
|
||||
|
||||
StringCounters counters = new StringCounters();
|
||||
long unknowns = 0;
|
||||
for (Service service : services)
|
||||
{
|
||||
String hypervisor = service.getHostProviderHypervisor();
|
||||
if (StringUtils.isBlank(hypervisor))
|
||||
{
|
||||
unknowns += 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
counters.inc(StringUtils.capitalize(hypervisor.toLowerCase()));
|
||||
}
|
||||
}
|
||||
|
||||
StringCounterList list = counters.toList().sortByCounter().reverse();
|
||||
|
||||
PieChart pie = new PieChart("Distributions des hyperviseurs");
|
||||
pie.setLegendPosition(Position.RIGHT);
|
||||
|
||||
int index = 0;
|
||||
while ((index < list.size() && (index < 7)))
|
||||
{
|
||||
ChartColor color = colors.get(index);
|
||||
StringCounter counter = list.get(index);
|
||||
pie.add(counter.getString(), counter.getCounter(), color);
|
||||
|
||||
index += 1;
|
||||
}
|
||||
|
||||
int others = 0;
|
||||
while (index < list.size())
|
||||
{
|
||||
StringCounter counter = list.get(index);
|
||||
others += counter.getCounter();
|
||||
|
||||
index += 1;
|
||||
}
|
||||
pie.add("Autres", others, ChartColor.GREY);
|
||||
pie.add("Inconnus", unknowns, ChartColor.BLUE);
|
||||
|
||||
result = DoughnutChartView.build(pie);
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Htmlize host provider type chart.
|
||||
*
|
||||
|
|
|
@ -74,12 +74,15 @@ public class FederationStatsPage
|
|||
data.setContent("organizationCountChart", ChartHtmlizer.htmlizeOrganizationCountChart(federation));
|
||||
data.setContent("organizationInOutChart", ChartHtmlizer.htmlizeOrganizationInOutChart(federation));
|
||||
|
||||
data.setContent("hostServerDistributionChart", ChartHtmlizer.htmlizeHostServerDistributionChart(services));
|
||||
data.setContent("serviceCountYearChart", ChartHtmlizer.htmlizeServiceCountYearChart(federation));
|
||||
data.setContent("hostServerTypeChart", ChartHtmlizer.htmlizeHostServerTypeChart(services));
|
||||
data.setContent("hostProviderTypeChart", ChartHtmlizer.htmlizeHostProviderTypeChart(services));
|
||||
data.setContent("serviceCountryChart", ChartHtmlizer.htmlizeServiceCountryChart(services));
|
||||
|
||||
data.setContent("hostNameChart", ChartHtmlizer.htmlizeHostNamePieChart(services));
|
||||
data.setContent("hostProviderHypervisorChart", ChartHtmlizer.htmlizeHostProviderHypervisorChart(services));
|
||||
|
||||
data.setContent("hostServerDistributionChart", ChartHtmlizer.htmlizeHostServerDistributionChart(services));
|
||||
data.setContent("serviceInstallTypeChart", ChartHtmlizer.htmlizeServiceInstallTypeChart(services));
|
||||
|
||||
{
|
||||
|
@ -92,7 +95,6 @@ public class FederationStatsPage
|
|||
data.setContent("registrationClientTypeChart", ChartHtmlizer.htmlizeRegistrationClientPieChart(stats));
|
||||
}
|
||||
|
||||
data.setContent("serviceCountYearChart", ChartHtmlizer.htmlizeServiceCountYearChart(federation));
|
||||
data.setContent("serviceDateStatusChart", ChartHtmlizer.htmlizeServiceDateStatusChart(services));
|
||||
|
||||
data.setContent("softwareDistributionChart", ChartHtmlizer.htmlizeSoftwareDistributionChart());
|
||||
|
|
|
@ -23,14 +23,18 @@
|
|||
<div id="organizationInOutChart" class="chartborder" style="width: 250px; height: 200px; display: inline-block;"/>
|
||||
</div>
|
||||
<div>
|
||||
<div id="hostServerDistributionChart" class="chartborder" style="width: 250px; height: 200px; display: inline-block;"/>
|
||||
<div id="serviceCountYearChart" class="chartborder" style="width: 250px; height: 200px; display: inline-block;"/>
|
||||
<div id="hostServerTypeChart" class="chartborder" style="width: 250px; height: 200px; display: inline-block;"/>
|
||||
<div id="hostProviderTypeChart" class="chartborder" style="width: 250px; height: 200px; display: inline-block;"/>
|
||||
<div id="serviceCountryChart" class="chartborder" style="width: 250px; height: 200px; display: inline-block;"/>
|
||||
</div>
|
||||
<div>
|
||||
<div id="hostNameChart" class="chartborder" style="width: 500px; height: 250px; display: inline-block;"/>
|
||||
<div id="serviceInstallTypeChart" class="chartborder" style="width: 500px; height: 250px; display: inline-block; vertical-align: top;"/>
|
||||
<div id="hostProviderHypervisorChart" class="chartborder" style="width: 500px; height: 250px; display: inline-block;"/>
|
||||
</div>
|
||||
<div>
|
||||
<div id="hostServerDistributionChart" class="chartborder" style="width: 500px; height: 250px; display: inline-block;"/>
|
||||
<div id="serviceInstallTypeChart" class="chartborder" style="width: 500px; height: 250px; display: inline-block;"/>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div id="registrationTypeChart" class="column chartborder" style="width: 250px; height: 200px; display: inline-block;"/>
|
||||
|
@ -44,10 +48,7 @@
|
|||
<div id="registrationClientTypeChart" class="chartborder" style="width: 122px; height: 97px; display: inline-block;"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div id="serviceDateStatusChart" class="chartborder" style="width: 250px; height: 200px; display: inline-block;"/>
|
||||
<div id="serviceCountYearChart" class="chartborder" style="width: 250px; height: 200px; display: inline-block;"/>
|
||||
</div>
|
||||
<div>
|
||||
<div id="categoryDistributionPieChart" class="chartborder" style="width: 500px; height: 300px; display: inline-block;"/>
|
||||
|
|
Loading…
Reference in a new issue