Class CapacityPlanningData
- java.lang.Object
-
- org.epics.archiverappliance.mgmt.archivepv.CapacityPlanningData
-
public class CapacityPlanningData extends Object
Data from various appliances that is used for capacity planning. We assume that policies have been applied for this PV and that typeinfo is available. We gather data from various appliances (engine + ETL + storage) as it applies to this PV. Capacity planning consists of measured data and estimated data. The estimated data is available from the configService as ApplianceAggregateInfo The measured data is available thru this class. As the measured data does not change very often, we cache this locally for a time period as defined by MEASURED_DATA_CACHE_TIME- Author:
- mshankar
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
CapacityPlanningData.CPStaticData
-
Constructor Summary
Constructors Constructor Description CapacityPlanningData(ConfigService configService, ApplianceInfo applianceInfo)
-
Method Summary
Modifier and Type Method Description ApplianceAggregateInfo
getApplianceAggregateDifferenceFromLastFetch(ConfigService configService)
Return the difference between the appliance aggregate info as of "now" and from the time we last fetched the static data.float
getCurrentTotalStorageRate()
float
getEngineWriteThreadUsage(float writePeriod)
ConcurrentHashMap<String,org.epics.archiverappliance.mgmt.archivepv.CapacityPlanningData.ETLMetrics>
getEtlMetrics()
static CapacityPlanningData.CPStaticData
getMetricsForAppliances(ConfigService configService)
float
getPercentageTimeForWriter()
float
getSecondsConsumedByWriter()
String
getStaticDataLastUpdated()
boolean
isAvailable()
void
setAvailable(boolean isAvailable)
void
setPercentageTimeForWriter(float percentageTimeForWriterAfterPVadded)
-
-
-
Constructor Detail
-
CapacityPlanningData
public CapacityPlanningData(ConfigService configService, ApplianceInfo applianceInfo) throws IOException
- Throws:
IOException
-
-
Method Detail
-
getMetricsForAppliances
public static CapacityPlanningData.CPStaticData getMetricsForAppliances(ConfigService configService) throws IOException
- Throws:
IOException
-
getEngineWriteThreadUsage
public float getEngineWriteThreadUsage(float writePeriod)
-
getEtlMetrics
public ConcurrentHashMap<String,org.epics.archiverappliance.mgmt.archivepv.CapacityPlanningData.ETLMetrics> getEtlMetrics()
-
getCurrentTotalStorageRate
public float getCurrentTotalStorageRate()
-
getApplianceAggregateDifferenceFromLastFetch
public ApplianceAggregateInfo getApplianceAggregateDifferenceFromLastFetch(ConfigService configService) throws IOException
Return the difference between the appliance aggregate info as of "now" and from the time we last fetched the static data.- Parameters:
configService
- ConfigService- Returns:
- ApplianceAggregateInfo
- Throws:
IOException
-
-
getPercentageTimeForWriter
public float getPercentageTimeForWriter()
-
setPercentageTimeForWriter
public void setPercentageTimeForWriter(float percentageTimeForWriterAfterPVadded)
-
getSecondsConsumedByWriter
public float getSecondsConsumedByWriter()
-
isAvailable
public boolean isAvailable()
-
setAvailable
public void setAvailable(boolean isAvailable)
-
getStaticDataLastUpdated
public String getStaticDataLastUpdated()
-
-