Class CapacityPlanningData
java.lang.Object
org.epics.archiverappliance.mgmt.archivepv.CapacityPlanningData
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 -
Constructor Summary
ConstructorsConstructorDescriptionCapacityPlanningData(ConfigService configService, ApplianceInfo applianceInfo) -
Method Summary
Modifier and TypeMethodDescriptiongetApplianceAggregateDifferenceFromLastFetch(ConfigService configService) Return the difference between the appliance aggregate info as of "now" and from the time we last fetched the static data.getCachedMetricsForAppliances(ConfigService configService) floatfloatgetEngineWriteThreadUsage(float writePeriod) ConcurrentHashMap<String, org.epics.archiverappliance.mgmt.archivepv.CapacityPlanningData.ETLMetrics> getMetricsForAppliances(ConfigService configService) floatfloatbooleanvoidsetAvailable(boolean isAvailable) voidsetPercentageTimeForWriter(float percentageTimeForWriterAfterPVadded)
-
Constructor Details
-
CapacityPlanningData
public CapacityPlanningData(ConfigService configService, ApplianceInfo applianceInfo) throws IOException - Throws:
IOException
-
-
Method Details
-
getMetricsForAppliances
public static CapacityPlanningData.CPStaticData getMetricsForAppliances(ConfigService configService) throws IOException - Throws:
IOException
-
getCachedMetricsForAppliances
public static CapacityPlanningData.CPStaticData getCachedMetricsForAppliances(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
-