From ca63796db59d32adcafe887ab893fd4b60f184bb Mon Sep 17 00:00:00 2001 From: Jed Reynolds Date: Mon, 13 Sep 2021 15:38:14 -0700 Subject: [PATCH] lf_json_autogen.py: adds column name help for many columns Signed-off-by: Jed Reynolds --- py-json/LANforge/lf_json_autogen.py | 364 ++++++++++++++++------------ 1 file changed, 215 insertions(+), 149 deletions(-) diff --git a/py-json/LANforge/lf_json_autogen.py b/py-json/LANforge/lf_json_autogen.py index f8171e0d..8fe6f96f 100644 --- a/py-json/LANforge/lf_json_autogen.py +++ b/py-json/LANforge/lf_json_autogen.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 """----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- - Generated by LANforge JsonApiPythonGenerator, Fri Sep 10 16:52:09 PDT 2021 + Generated by LANforge JsonApiPythonGenerator, Mon Sep 13 15:28:41 PDT 2021 - - WORK IN PROGRESS - - The API this library provides is actively being changed. This file expects to live in py-json/LANforge directory. @@ -1454,31 +1454,39 @@ class LFJsonGet(LFCliBase): The record returned will have these members: { - 'bps-rx-3s': # - - 'bps-tx-3s': # - - 'cli-port': # - - 'cpu': # - - 'ctrl-ip': # - - 'ctrl-port': # - - 'eid': # - - 'entity id': # - - 'free mem': # - - 'free swap': # - - 'gps': # - - 'hostname': # - - 'hw version': # - - 'load': # - - 'max if-up': # - - 'max staged': # - - 'mem': # - - 'phantom': # - - 'ports': # - - 'rx bytes': # - - 'shelf': # - - 'sta up': # - - 'sw version': # - - 'swap': # - - 'tx bytes': # - + 'bps-rx-3s': # Rate in bits-per-second that the manager issending management data to + # the resource, averaged over the last 3 seconds.This is TCP payload data, + # and does not count the IP and Ethernet overhead. + 'bps-tx-3s': # Rate in bits-per-second that the manager isreceiving management data + # from the resource, averaged over the last 3 seconds.This is TCP payload + # data, and does not count the IP and Ethernet overhead. + 'cli-port': # Text (telnet) interface IP Port. + 'cpu': # CPU information for the machine. + 'ctrl-ip': # IP Address of the Control Interface. + 'ctrl-port': # Binary interface IP Port. + 'eid': # Resource EID (Shelf.Resource). + 'entity id': # Entity ID + 'free mem': # Free Memory (Kbytes) in the machine. If this is too low, performance + # will be degraded. + 'free swap': # Free Swap (Kbytes) in the machine. If this is too low, performance will + # be degraded. + 'gps': # GPS Info for this machine, if GPS is attached. + 'hostname': # The name for this resource, as reported by the resource. + 'hw version': # Hardware version on the machine. + 'load': # Unix process load.. + 'max if-up': # Max number of interface-config scripts try to run at once. + 'max staged': # Max number of interfaces the system will try to bringup at once. + 'mem': # Total memory (Kbytes) on the machine. + 'phantom': # Is the resource PHANTOM (undiscovered) or not. + 'ports': # All real and phantom ports on this machine. + 'rx bytes': # Total management TCP payload bytes received from the manager process by + # this resource. + 'shelf': # Number of shelf that this resource belongs to. + 'sta up': # Max number of stations to bring up per radio per 0.25s tick. + 'sw version': # LANforge Software version running on the machine. + 'swap': # Total swap space (Kbytes) on the machine. + 'tx bytes': # Total management TCP payload bytes sent from this resource to the + # manager process. } ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- -----""" @@ -1590,22 +1598,28 @@ class LFJsonGet(LFCliBase): The record returned will have these members: { - 'ap': # - - 'auth-for': # - - 'capabilities': # - - 'entity id': # - - 'idle': # - - 'roam-duration': # - - 'rx bytes': # - - 'rx pkts': # - - 'rx rate': # - - 'signal': # - - 'station bssid': # - - 'tx bytes': # - - 'tx pkts': # - - 'tx rate': # - - 'tx retries': # - - 'tx-failed': # - + 'ap': # The Port that owns this station. + 'auth-for': # Duration in seconds this station has been authenticated. + 'capabilities': # Station's negotiated capabilities. + 'entity id': # Entity ID + 'idle': # Miliseconds since this station last received a frame from the peer. + 'roam-duration': # The difference between the authenticate-time on the new APand the last + # frame received on old AP, in milliseconds.It is not always possible to + # compute this accurately,especially if traffic is not flowing during the + # roam. + 'rx bytes': # RX Byte counter for this station. + 'rx pkts': # RX Packets counter for this station. + 'rx rate': # Station last received encoding rate. + 'signal': # Station signal quality. + 'station bssid': # Station's MAC address (BSSID). + 'tx bytes': # TX Byte counter for this station. + 'tx pkts': # TX Packets counter for this station. + 'tx rate': # Station transmit encoding rate. + 'tx retries': # TX Retries counter for this station.This counts retries at the driver + # level.Retries made by the WiFi hardware and/or firmware is not counted. + 'tx-failed': # TX Failed counter for this station.This counts TX failures at the driver + # level.The hardware and/or firmware may have made several failed attempts + # that are not included in this counter. } ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- -----""" @@ -1715,11 +1729,11 @@ class LFJsonGet(LFCliBase): The record returned will have these members: { - 'cross connects': # - - 'entity id': # - - 'name': # - - 'run': # - - 'script': # - + 'cross connects': # List of Test Manager's Cross-Connects. + 'entity id': # Entity ID + 'name': # Test Group's Name. + 'run': # Is Test Group running or not. + 'script': # Endpoint script state. } ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- -----""" @@ -1847,23 +1861,40 @@ class LFJsonGet(LFCliBase): The record returned will have these members: { - 'bps rx a': # - - 'bps rx b': # - - 'delay a ← b': # - - 'delay a → b': # - - 'eid': # - - 'endpoints (a ↔ b)': # - - 'entity id': # - - 'jitter a ← b': # - - 'jitter a → b': # - - 'name': # - - 'pkt tx a ← b': # - - 'pkt tx a → b': # - - 'rpt timer': # - - 'rx drop % a': # - - 'rx drop % b': # - - 'state': # - - 'type': # - + 'bps rx a': # Endpoint B's real transmit rate (bps).Measured at the CX Type layer. + 'bps rx b': # Endpoint A's real transmit rate (bps).Measured at the CX Type layer. + 'delay a ← b': # Average Latency in milliseconds for traffic from Endpoint B to Endpoint + # A + 'delay a → b': # Average Latency in milliseconds for traffic from Endpoint A to Endpoint + # B + 'eid': # Entity ID + 'endpoints (a ↔ b)': # Endpoints that make up this Cross Connect. + 'entity id': # Entity ID + 'jitter a ← b': # Average Jitter in milliseconds for traffic from Endpoint B to Endpoint A + 'jitter a → b': # Average Jitter in milliseconds for traffic from Endpoint A to Endpoint B + 'name': # Cross Connect's Name. + 'pkt tx a ← b': # Endpoint B's Packets Transmitted. + 'pkt tx a → b': # Endpoint A's Packets Transmitted. + 'rpt timer': # Cross Connect's Report Timer (milliseconds).This is how often the GUI + # will ask for updates from the LANforge processes.If the GUI is sluggish, + # increasing the report timers may help. + 'rx drop % a': # Endpoint A percentage packet loss.Calculated using the number of PDUs + # Endpoint B sent minus the number Endpoint A received.This number is not + # 100% correct as long as packets are in flight.After a Quiesce of the + # test, the number should be perfectly accurate. + 'rx drop % b': # Endpoint B percentage packet loss.Calculated using the number of PDUs + # Endpoint A sent minus the number Endpoint B received.This number is not + # 100% correct as long as packets are in flight.After a Quiesce of the + # test, the number should be perfectly accurate. + 'state': # Current State of the connection.UninitializedHas not yet been + # started/stopped.InitializingBeing set up.StartingStarting the + # test.RunningTest is actively running.StoppedTest has been + # stopped.QuiesceTest will gracefully stop soon.HW-BYPASSTest is in + # hardware-bypass mode (WanLinks only)FTM_WAITTest wants to run, but is + # phantom, probably due to non-existent interface or resource.WAITINGWill + # restart as soon as resources are available.PHANTOMTest is stopped, and + # is phantom, probably due to non-existent interface or resource. + 'type': # Cross-Connect type. } ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- -----""" @@ -1923,43 +1954,50 @@ class LFJsonGet(LFCliBase): The record returned will have these members: { - 'calls answered': # - - 'calls attempted': # - - 'calls completed': # - - 'calls failed': # - - 'cf 404': # - - 'cf 408': # - - 'cf busy': # - - 'cf canceled': # - - 'delay': # - - 'destination addr': # - - 'dropped': # - - 'dup pkts': # - - 'eid': # - - 'elapsed': # - - 'entity id': # - - 'jb cur': # - - 'jb over': # - - 'jb silence': # - - 'jb under': # - - 'jitter': # - - 'mng': # - - 'name': # - - 'ooo pkts': # - - 'pesq': # - - 'pesq bklg': # - - 'pesq#': # - - 'reg state': # - - 'rst': # - - 'rtp rtt': # - - 'run': # - - 'rx bytes': # - - 'rx pkts': # - - 'source addr': # - - 'state': # - - 'tx bytes': # - - 'tx pkts': # - - 'vad pkts': # - + 'calls answered': # Number of calls that where the remote answered + 'calls attempted': # Number of calls that have been attempted + 'calls completed': # Number of calls that have been successfully completed + 'calls failed': # Number of calls that did not succeed for any reason. + 'cf 404': # Number of calls failed for '404': callee not found. + 'cf 408': # Number of calls failed for '408': callee did not answer. + 'cf busy': # Number of calls failed because callee is busy. + 'cf canceled': # Number of calls failed because they were canceled. + 'delay': # Average latency in milliseconds for packets received by this endpoint. + 'destination addr': # Destination Address (MAC, ip/port, VoIP destination). + 'dropped': # Total dropped packets, as identified by gaps in RTP sequence numbers + # (pre jitter buffer). + 'dup pkts': # Total duplicate packets, as identified by RTP sequence numbers (pre + # jitter buffer). + 'eid': # Entity ID + 'elapsed': # Amount of time (seconds) this endpoint has been running (or ran.) + 'entity id': # Entity ID + 'jb cur': # Current number of packets in the jitter buffer waiting to be played / + # Jitter Buffer Size. + 'jb over': # Total times the jitter buffer was given more packets than it could hold. + 'jb silence': # Silence is played when there is no valid voice packet, due to drop, or + # reorder/jitter/latency out of range of the jitter buffer. + 'jb under': # Total times the reader asked for a packet to play but the jitter buffer + # was empty. + 'jitter': # Average interpacket variation, calculated per RFC 1889 A.8. + 'mng': # Is the Endpoint managed or not? + 'name': # Endpoint's Name. + 'ooo pkts': # Total out-of-order packets, as identified by RTP sequence numbers (pre + # jitter buffer). + 'pesq': # PESQ Report score for the PESQ report number (PESQ#). + 'pesq bklg': # PESQ server call processing backlog. + 'pesq#': # The pesq-report-number to which the PESQ value cooresponds. + 'reg state': # Current State of the Endpoint. + 'rst': # How many times has the endpoint been restarted due to abnormal + # termination. + 'rtp rtt': # Round trip latency as reported by RTCP + 'run': # Is the Endpoint is Running or not. + 'rx bytes': # Total received bytes count. + 'rx pkts': # Total received packet count. + 'source addr': # Source Address (MAC, ip/port, VoIP source). + 'state': # Phone registration state + 'tx bytes': # Total transmitted bytes count. + 'tx pkts': # Total transmitted packet count. + 'vad pkts': # Total VAD (Silence Suppression) packets suppressed before transmit. } ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- -----""" @@ -2035,13 +2073,13 @@ class LFJsonGet(LFCliBase): 'damping max suppress': # - 'damping reuse': # - 'damping suppress': # - - 'entity id': # - + 'entity id': # Entity ID 'height': # - 'ipv6 radv': # - 'is bgp reflector': # - 'local as': # - 'multicast routing': # - - 'name': # - + 'name': # Name 'netsmith-state': # - 'notes': # - 'pad': # - @@ -2201,17 +2239,26 @@ class LFJsonGet(LFCliBase): The record returned will have these members: { - 'bps rx a': # - - 'bps rx b': # - - 'eid': # - - 'endpoints (a ↔ b)': # - - 'entity id': # - - 'k-m': # - - 'name': # - - 'pkt tx a ← b': # - - 'pkt tx a → b': # - - 'rpt timer': # - - 'state': # - + 'bps rx a': # Endpoint B's Max transmit rate (bps). + 'bps rx b': # Endpoint A's Max transmit rate (bps). + 'eid': # Entity ID + 'endpoints (a ↔ b)': # Endpoints that make up this WanLink. + 'entity id': # Entity ID + 'k-m': # Whether the WanLink is Kernel-Mode or not. + 'name': # WanLink's Name. + 'pkt tx a ← b': # Packets received on endpoint B and transmitted out endpoint A. + 'pkt tx a → b': # Packets received on endpoint A and transmitted out endpoint B. + 'rpt timer': # Cross Connect's Report Timer (milliseconds).This is how often the GUI + # will ask for updates from the LANforge processes.If the GUI is sluggish, + # increasing the report timers may help. + 'state': # Current State of the connection.UninitializedHas not yet been + # started/stopped.InitializingBeing set up.StartingStarting the + # test.RunningTest is actively running.StoppedTest has been + # stopped.QuiesceTest will gracefully stop soon.HW-BYPASSTest is in + # hardware-bypass mode (WanLinks only)FTM_WAITTest wants to run, but is + # phantom, probably due to non-existent interface or resource.WAITINGWill + # restart as soon as resources are available.PHANTOMTest is stopped, and + # is phantom, probably due to non-existent interface or resource. } ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- -----""" @@ -2271,41 +2318,60 @@ class LFJsonGet(LFCliBase): The record returned will have these members: { - 'buffer': # - - 'corrupt 1': # - - 'corrupt 2': # - - 'corrupt 3': # - - 'corrupt 4': # - - 'corrupt 5': # - - 'corrupt 6': # - - 'delay': # - - 'dropfreq %': # - - 'dropped': # - - 'dup pkts': # - - 'dupfreq %': # - - 'eid': # - - 'elapsed': # - - 'extrabuf': # - - 'failed-late': # - - 'jitfreq %': # - - 'max rate': # - - 'maxjitter': # - - 'maxlate': # - - 'name': # - - 'ooo pkts': # - - 'qdisc': # - - 'reordfrq %': # - - 'run': # - - 'rx bytes': # - - 'rx pkts': # - - 'script': # - - 'serdelay': # - - 'tx bytes': # - - 'tx drop %': # - - 'tx pkts': # - - 'tx rate': # - - 'tx-failed': # - - 'wps': # - + 'buffer': # Maximum size of receive buffer, in bytes.This is the sum of the amount + # needed for the transit buffers (delay * bandwidth)plus the WanLink + # "Backlog Buffer:" queue size which handles bursts. + 'corrupt 1': # Counters for how many times this corruption has been applied. + 'corrupt 2': # Counters for how many times this corruption has been applied. + 'corrupt 3': # Counters for how many times this corruption has been applied. + 'corrupt 4': # Counters for how many times this corruption has been applied. + 'corrupt 5': # Counters for how many times this corruption has been applied. + 'corrupt 6': # Counters for how many times this corruption has been applied. + 'delay': # Base induced latency on received packets, in microseconds. + 'dropfreq %': # Frequency out of 1,000,000 to drop a received packet.Select a preset + # value or enter your own. + 'dropped': # Total dropped packets on receive.This does not include the tx-failed + # counters. + 'dup pkts': # Total duplicate packets generated. + 'dupfreq %': # Frequency out of 1,000,000 to duplicate a received packet.Select a + # preset value or enter your own. + 'eid': # Entity ID + 'elapsed': # Amount of time (seconds) this endpoint has been running (or ran.) + 'extrabuf': # Size of "Backlog Buffer:" setting in WanLink configuration in bytes. + 'failed-late': # Total amount of received packets that could not be transmitted out the + # peer becausethe emulator was overloaded and could not transmit within + # the specified 'lateness' + 'jitfreq %': # Frequency out of 1,000,000 that packets should have jitter applied to + # them.Select a preset value or enter your own. + 'max rate': # Max transmit rate (bps) for this Endpoint. + 'maxjitter': # Maximum additional delay, in microseconds. See Jitter-Frequency as + # well. + 'maxlate': # The maximum lateness in milliseconds allowed before packets will be + # dropped on transmit.If lateness is configured to be automatic, this + # variable will change based onconfigured bandwidth and backlog buffer, + # but will not go below 10ms. + 'name': # Endpoint's Name. + 'ooo pkts': # Total out of order packets generated. + 'qdisc': # Queueing discipline (FIFO, WRR, etc). + 'reordfrq %': # Frequency out of 1,000,000 to re-order a received packet.Select a preset + # value or enter your own. + 'run': # Is the Endpoint is Running or not. + 'rx bytes': # Total received bytes count. + 'rx pkts': # Total received packet count. + 'script': # Endpoint script state. + 'serdelay': # Additional serialization delay for a 1514 byte packet at the configured + # speed (microseconds). + 'tx bytes': # Total transmitted bytes count. + 'tx drop %': # Packet drop percentage over the last 1 minute. + 'tx pkts': # Packets received on the peer interface and transmitted out this + # endpoint's interface. + 'tx rate': # The average speed over the last 30 seconds at which we are + # transmittingout the peer interface.This can be thought of as the actual + # transfer rate for packets entering the interfaceassociated with this + # Endpoint. + 'tx-failed': # Total amount of received packets that could not be transmitted out the + # peer.This includes any tx-failed-late packets. + 'wps': # Enable/Disable showing of WanPaths for individual endpoints. } ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- -----"""