csle_collector.five_g_du_manager.dao package

Submodules

csle_collector.five_g_du_manager.dao.five_g_du_app_resource_usage_metrics module

class csle_collector.five_g_du_manager.dao.five_g_du_app_resource_usage_metrics.FiveGDUAppResourceUsageMetrics(cpu_usage_percent: float = 0.0, memory_usage_mb: float = 0.0, power_consumption_watts: float = 0.0, ip: Union[None, str] = None, ts: Optional[float] = None)[source]

Bases: JSONSerializable

DTO class containing srsRAN DU Application Resource Usage metrics. Captures system-level performance indicators for the application process.

copy() FiveGDUAppResourceUsageMetrics[source]
Returns

a copy of the object

static from_dict(d: Dict[str, Any]) FiveGDUAppResourceUsageMetrics[source]

Converts a dict representation to an instance. Expects the flat dictionary format produced by to_dict().

Parameters

d – the dict to convert

Returns

the created instance

static from_json_file(json_file_path: str) FiveGDUAppResourceUsageMetrics[source]

Reads a json file and converts it to a DTO

Parameters

json_file_path – the json file path

Returns

the converted DTO

static from_kafka_record(record: str) FiveGDUAppResourceUsageMetrics[source]

Converts the Kafka record string to a DTO

Parameters

record – the kafka record

Returns

the created DTO

static from_ws_dict(d: Dict[str, Any], ip: str) FiveGDUAppResourceUsageMetrics[source]

Converts the raw dictionary from the WebSocket JSON stream to an instance. Handles the nested “app_resource_usage” structure.

Parameters
  • d – the raw dictionary from srsRAN WebSocket

  • ip – the IP of the source DU

Returns

the created instance

num_attributes() int[source]
Returns

The number of attributes of the DTO

static schema() FiveGDUAppResourceUsageMetrics[source]
Returns

get the schema of the DTO

to_dict() Dict[str, Any][source]
Returns

a dict representation of the instance

to_kafka_record(ip: str) str[source]

Converts the DTO into a Kafka record string

Parameters

ip – the IP to add to the record in addition to the metrics

Returns

a comma separated string representing the kafka record

update_with_kafka_record(record: str, ip: str) None[source]

Updates the DTO based on a kafka record

Parameters
  • record – the kafka record

  • ip – the host ip

Returns

None

csle_collector.five_g_du_manager.dao.five_g_du_buffer_pool_metrics module

class csle_collector.five_g_du_manager.dao.five_g_du_buffer_pool_metrics.FiveGDUBufferPoolMetrics(central_cache_size: int = 0, ip: Union[None, str] = None, ts: Optional[float] = None)[source]

Bases: JSONSerializable

DTO class containing srsRAN DU Buffer Pool metrics

copy() FiveGDUBufferPoolMetrics[source]
Returns

a copy of the object

static from_dict(d: Dict[str, Any]) FiveGDUBufferPoolMetrics[source]

Converts a dict representation to an instance. Expects the flat dictionary format produced by to_dict().

Parameters

d – the dict to convert

Returns

the created instance

static from_json_file(json_file_path: str) FiveGDUBufferPoolMetrics[source]

Reads a json file and converts it to a DTO

Parameters

json_file_path – the json file path

Returns

the converted DTO

static from_kafka_record(record: str) FiveGDUBufferPoolMetrics[source]

Converts the Kafka record string to a DTO

Parameters

record – the kafka record

Returns

the created DTO

static from_ws_dict(d: Dict[str, Any], ip: str) FiveGDUBufferPoolMetrics[source]

Converts the raw dictionary from the WebSocket JSON stream to an instance. Handles the nested “buffer_pool” structure.

Parameters
  • d – the raw dictionary from srsRAN WebSocket

  • ip – the IP of the source DU

Returns

the created instance

num_attributes() int[source]
Returns

The number of attributes of the DTO

static schema() FiveGDUBufferPoolMetrics[source]
Returns

get the schema of the DTO

to_dict() Dict[str, Any][source]
Returns

a dict representation of the instance

to_kafka_record(ip: str) str[source]

Converts the DTO into a Kafka record string

Parameters

ip – the IP to add to the record in addition to the metrics

Returns

a comma separated string representing the kafka record

update_with_kafka_record(record: str, ip: str) None[source]

Updates the DTO based on a kafka record

Parameters
  • record – the kafka record

  • ip – the host ip

Returns

None

csle_collector.five_g_du_manager.dao.five_g_du_cell_metrics module

class csle_collector.five_g_du_manager.dao.five_g_du_cell_metrics.FiveGDUCellMetrics(pci: int = 0, average_latency: float = 0.0, max_latency: float = 0.0, pucch_tot_rb_usage_avg: float = 0.0, active_ues: int = 0, dl_brate: float = 0.0, ul_brate: float = 0.0, dl_mcs: float = 0.0, ul_mcs: float = 0.0, pusch_snr_db: float = 0.0, pucch_snr_db: float = 0.0, cqi: float = 0.0, dl_bler: float = 0.0, ul_bler: float = 0.0, ip: Union[None, str] = None, ts: Optional[float] = None)[source]

Bases: JSONSerializable

DTO class containing srsRAN DU Cell metrics

copy() FiveGDUCellMetrics[source]
Returns

a copy of the object

static from_dict(d: Dict[str, Any]) FiveGDUCellMetrics[source]

Converts a dict representation to an instance. Expects the flat dictionary format produced by to_dict().

Parameters

d – the dict to convert

Returns

the created instance

static from_json_file(json_file_path: str) FiveGDUCellMetrics[source]

Reads a json file and converts it to a DTO

Parameters

json_file_path – the json file path

Returns

the converted DTO

static from_kafka_record(record: str) FiveGDUCellMetrics[source]

Converts the Kafka record string to a DTO

Parameters

record – the kafka record

Returns

the created DTO

static from_ws_dict(d: Dict[str, Any], ip: str) FiveGDUCellMetrics[source]

Converts the raw dictionary from the WebSocket JSON stream to an instance. Handles the nested “cells” list and aggregates UE metrics.

Parameters
  • d – the raw dictionary from srsRAN WebSocket

  • ip – the IP of the source DU

Returns

the created instance

num_attributes() int[source]
Returns

The number of attributes of the DTO

static schema() FiveGDUCellMetrics[source]
Returns

get the schema of the DTO

to_dict() Dict[str, Any][source]
Returns

a dict representation of the instance

to_kafka_record(ip: str) str[source]

Converts the DTO into a Kafka record string

Parameters

ip – the IP to add to the record in addition to the metrics

Returns

a comma separated string representing the kafka record

update_with_kafka_record(record: str, ip: str) None[source]

Updates the DTO based on a kafka record

Parameters
  • record – the kafka record

  • ip – the host ip

Returns

None

csle_collector.five_g_du_manager.dao.five_g_du_low_metrics module

class csle_collector.five_g_du_manager.dao.five_g_du_low_metrics.FiveGDULowMetrics(dl_avg_latency_us: float = 0.0, dl_cpu_usage_percent: float = 0.0, dl_max_latency_us: float = 0.0, dl_fec_tput_mbps: float = 0.0, ul_avg_latency_us: float = 0.0, ul_cpu_usage_percent: float = 0.0, ul_max_latency_us: float = 0.0, ul_sinr_db: float = 0.0, ul_ch_est_latency_us: float = 0.0, ul_ldpc_dec_latency_us: float = 0.0, ul_fec_tput_mbps: float = 0.0, ip: Union[None, str] = None, ts: Optional[float] = None)[source]

Bases: JSONSerializable

DTO class containing srsRAN DU Low-PHY metrics. Captures Downlink (DL) and Uplink (UL) performance at the physical layer.

copy() FiveGDULowMetrics[source]
Returns

a copy of the object

static from_dict(d: Dict[str, Any]) FiveGDULowMetrics[source]

Converts a dict representation to an instance. Expects the flat dictionary format produced by to_dict().

Parameters

d – the dict to convert

Returns

the created instance

static from_json_file(json_file_path: str) FiveGDULowMetrics[source]

Reads a json file and converts it to a DTO

Parameters

json_file_path – the json file path

Returns

the converted DTO

static from_kafka_record(record: str) FiveGDULowMetrics[source]

Converts the Kafka record string to a DTO

Parameters

record – the kafka record

Returns

the created DTO

static from_ws_dict(d: Dict[str, Any], ip: str) FiveGDULowMetrics[source]

Converts the raw dictionary from the WebSocket JSON stream to an instance. Handles the nested “du_low” structure.

Parameters
  • d – the raw dictionary from srsRAN WebSocket

  • ip – the IP of the source DU

Returns

the created instance

num_attributes() int[source]
Returns

The number of attributes of the DTO

static schema() FiveGDULowMetrics[source]
Returns

get the schema of the DTO

to_dict() Dict[str, Any][source]
Returns

a dict representation of the instance

to_kafka_record(ip: str) str[source]

Converts the DTO into a Kafka record string

Parameters

ip – the IP to add to the record in addition to the metrics

Returns

a comma separated string representing the kafka record

update_with_kafka_record(record: str, ip: str) None[source]

Updates the DTO based on a kafka record

Parameters
  • record – the kafka record

  • ip – the host ip

Returns

None

csle_collector.five_g_du_manager.dao.five_g_du_metrics module

class csle_collector.five_g_du_manager.dao.five_g_du_metrics.FiveGDUMetrics(pci: int = 0, average_latency_us: float = 0.0, cpu_usage_percent: float = 0.0, max_latency_us: float = 0.0, min_latency_us: float = 0.0, ip: Union[None, str] = None, ts: Optional[float] = None)[source]

Bases: JSONSerializable

DTO class containing srsRAN DU High-MAC metrics

copy() FiveGDUMetrics[source]
Returns

a copy of the object

static from_dict(d: Dict[str, Any]) FiveGDUMetrics[source]

Converts a dict representation to an instance. Expects the flat dictionary format produced by to_dict().

Parameters

d – the dict to convert

Returns

the created instance

static from_json_file(json_file_path: str) FiveGDUMetrics[source]

Reads a json file and converts it to a DTO

Parameters

json_file_path – the json file path

Returns

the converted DTO

static from_kafka_record(record: str) FiveGDUMetrics[source]

Converts the Kafka record string to a DTO

Parameters

record – the kafka record

Returns

the created DTO

static from_ws_dict(d: Dict[str, Any], ip: str) FiveGDUMetrics[source]

Converts the raw dictionary from the WebSocket JSON stream to an instance.

Parameters
  • d – the raw dictionary from srsRAN WebSocket

  • ip – the IP of the source DU

Returns

the created instance

num_attributes() int[source]
Returns

The number of attributes of the DTO

static schema() FiveGDUMetrics[source]
Returns

get the schema of the DTO

to_dict() Dict[str, Any][source]
Returns

a dict representation of the instance

to_kafka_record(ip: str) str[source]

Converts the DTO into a Kafka record string

Parameters

ip – the IP to add to the record in addition to the metrics

Returns

a comma separated string representing the kafka record

update_with_kafka_record(record: str, ip: str) None[source]

Updates the DTO based on a kafka record

Parameters
  • record – the kafka record

  • ip – the host ip

Returns

None

csle_collector.five_g_du_manager.dao.five_g_du_rlc_metrics module

class csle_collector.five_g_du_manager.dao.five_g_du_rlc_metrics.FiveGDURLCMetrics(ue_id: int = 0, drb_id: int = 0, rx_num_pdus: int = 0, rx_num_bytes: int = 0, rx_num_lost_pdus: int = 0, rx_num_malformed_pdus: int = 0, tx_num_sdus: int = 0, tx_num_bytes: int = 0, tx_num_dropped_sdus: int = 0, tx_num_discarded_sdus: int = 0, tx_max_pdu_latency_ns: int = 0, tx_sum_pdu_latency_ns: int = 0, tx_sum_sdu_latency_us: int = 0, ip: Union[None, str] = None, ts: Optional[float] = None)[source]

Bases: JSONSerializable

DTO class containing srsRAN DU RLC layer metrics

copy() FiveGDURLCMetrics[source]
Returns

a copy of the object

static from_dict(d: Dict[str, Any]) FiveGDURLCMetrics[source]

Converts a dict representation to an instance. Expects the flat dictionary format produced by to_dict().

Parameters

d – the dict to convert

Returns

the created instance

static from_json_file(json_file_path: str) FiveGDURLCMetrics[source]

Reads a json file and converts it to a DTO

Parameters

json_file_path – the json file path

Returns

the converted DTO

static from_kafka_record(record: str) FiveGDURLCMetrics[source]

Converts the Kafka record string to a DTO

Parameters

record – the kafka record

Returns

the created DTO

static from_ws_dict(d: Dict[str, Any], ip: str) FiveGDURLCMetrics[source]

Converts the raw dictionary from the WebSocket JSON stream to an instance. Handles the nested “rlc_metrics” -> “rx”/”tx” structure.

Parameters
  • d – the raw dictionary from srsRAN WebSocket

  • ip – the IP of the source DU

Returns

the created instance

num_attributes() int[source]
Returns

The number of attributes of the DTO

static schema() FiveGDURLCMetrics[source]
Returns

get the schema of the DTO

to_dict() Dict[str, Any][source]
Returns

a dict representation of the instance

to_kafka_record(ip: str) str[source]

Converts the DTO into a Kafka record string

Parameters

ip – the IP to add to the record in addition to the metrics

Returns

a comma separated string representing the kafka record

update_with_kafka_record(record: str, ip: str) None[source]

Updates the DTO based on a kafka record

Parameters
  • record – the kafka record

  • ip – the host ip

Returns

None

Module contents