summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--prometheus_tp_link_exporter/__main__.py24
1 files changed, 16 insertions, 8 deletions
diff --git a/prometheus_tp_link_exporter/__main__.py b/prometheus_tp_link_exporter/__main__.py
index 27472d0..049578b 100644
--- a/prometheus_tp_link_exporter/__main__.py
+++ b/prometheus_tp_link_exporter/__main__.py
@@ -33,10 +33,14 @@ node_network_receive_bytes_total = Counter(
def process_node_network_receive_bytes_total():
"""Process request."""
for device in ifconfig_devices():
- node_network_receive_bytes_total.labels(device=device["name"]).inc(
- device["rx_bytes"]
- - node_network_receive_bytes_total._metrics[(device["name"],)]._value._value
- )
+ if (device["name"],) in node_network_receive_bytes_total._metrics:
+ previos_value = node_network_receive_bytes_total._metrics[(device["name"],)]._value._value
+ if previos_value < device["rx_bytes"]:
+ node_network_receive_bytes_total.labels(device=device["name"]).inc(
+ device["rx_bytes"] - previos_value
+ )
+ else:
+ node_network_receive_bytes_total.labels(device=device["name"]).inc(device["rx_bytes"])
node_network_transmit_bytes_total = Counter(
@@ -49,12 +53,16 @@ node_network_transmit_bytes_total = Counter(
def process_node_network_transmit_bytes_total():
"""Process request."""
for device in ifconfig_devices():
- node_network_transmit_bytes_total.labels(device=device["name"]).inc(
- device["tx_bytes"]
- - node_network_transmit_bytes_total._metrics[
+ if (device["name"],) in node_network_transmit_bytes_total._metrics:
+ previos_value = node_network_transmit_bytes_total._metrics[
(device["name"],)
]._value._value
- )
+ if previos_value < device["tx_bytes"]:
+ node_network_transmit_bytes_total.labels(device=device["name"]).inc(
+ device["tx_bytes"] - previos_value
+ )
+ else:
+ node_network_transmit_bytes_total.labels(device=device["name"]).inc(device["tx_bytes"])
def main():