MCPcopy Create free account
hub / github.com/FDio/vpp / decode_data_set

Method decode_data_set

test/ipfix.py:537–557  ·  view source on GitHub ↗

Decode IPFIX data :param data_set: IPFIX data set :returns: List of decoded data records.

(self, data_set)

Source from the content-addressed store, hash-verified

535 self._templates.append({"id": templateID, "fields": fields, "rec_len": rec_len})
536
537 def decode_data_set(self, data_set):
538 """
539 Decode IPFIX data
540
541 :param data_set: IPFIX data set
542 :returns: List of decoded data records.
543 """
544 data = []
545 for template in self._templates:
546 if template["id"] == data_set.setID:
547 offset = 0
548 d = data_set[Data].data
549 for i in range(len(d) // template["rec_len"]):
550 record = {}
551 for field in template["fields"]:
552 f = d[offset : offset + field["len"]]
553 offset += field["len"]
554 record.update({field["name"]: f})
555 data.append(record)
556 break
557 return data

Callers 10

test_cflow_packetMethod · 0.95
test_ipfix_bib_sesMethod · 0.95
test_ipfix_nat44_sessMethod · 0.95
verify_cflow_dataMethod · 0.80

Calls 2

appendMethod · 0.80
updateMethod · 0.45

Tested by 10

test_cflow_packetMethod · 0.76
test_ipfix_bib_sesMethod · 0.76
test_ipfix_nat44_sessMethod · 0.76
verify_cflow_dataMethod · 0.64