in docker/services/mocked_data_service.py [0:0]
def generate_split_load_metrics(self, config, metric_file_path):
period_days = config.get(TAG_PERIOD_DAYS)
length = POINTS_IN_DAY * period_days
instance_id_series, instance_type_series, timestamp_series, \
shape_series, shape_size_koef_series = self.generate_common_columns(
metric_file_path=metric_file_path, length=length
)
deviation = config.get(TAG_STD)
cpu_avg = config.get(TAG_CPU)
memory_avg = config.get(TAG_MEMORY)
avg_iops_avg = config.get(TAG_AVG_DISK_IOPS)
max_iops_avg = config.get(TAG_MAX_DISK_IOPS)
net_output_avg = config.get(TAG_NET_OUTPUT_LOAD)
probability = config.get(TAG_PROBABILITY)
cpu_load_series = generate_split_series(
distribution='normal',
avg_loads=cpu_avg,
probabilities=probability,
scale=deviation,
size=length
)
memory_load_series = generate_split_series(
distribution='normal',
avg_loads=memory_avg,
probabilities=probability,
scale=deviation,
size=length
)
net_output_load_series = generate_constant_metric_series(
distribution='normal',
loc=net_output_avg,
scale=deviation,
size=length
)
avg_iops_series = generate_constant_metric_series(
distribution='normal',
loc=avg_iops_avg,
scale=deviation,
size=length
)
max_iops_series = generate_constant_metric_series(
distribution='normal',
loc=max_iops_avg,
scale=deviation,
size=length
)
df_data = {
'instance_id': instance_id_series,
'instance_type': instance_type_series,
'shape': shape_series,
'shape_size_koef': shape_size_koef_series,
'timestamp': timestamp_series,
'cpu_load': cpu_load_series,
'memory_load': memory_load_series,
'net_output_load': net_output_load_series,
'avg_disk_iops': avg_iops_series,
'max_disk_iops': max_iops_series,
}
df = pd.DataFrame(df_data)
df.to_csv(metric_file_path, sep=',', index=False)