From 071bdba509a3ffdc627fdd0341003d8136661291 Mon Sep 17 00:00:00 2001 From: Ad Schellevis Date: Tue, 3 May 2016 13:01:01 +0200 Subject: [PATCH] (dashboard, widget api) add collector for interface data --- src/www/widgets/api/plugins/interfaces.inc | 59 ++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 src/www/widgets/api/plugins/interfaces.inc diff --git a/src/www/widgets/api/plugins/interfaces.inc b/src/www/widgets/api/plugins/interfaces.inc new file mode 100644 index 000000000..3ca1b6e2d --- /dev/null +++ b/src/www/widgets/api/plugins/interfaces.inc @@ -0,0 +1,59 @@ + $ifname) { + $ifinfo = get_interface_info($ifdescr); + $interfaceItem = array(); + $interfaceItem['inpkts'] = $ifinfo['inpkts']; + $interfaceItem['outpkts'] = $ifinfo['outpkts']; + $interfaceItem['inbytes'] = $ifinfo['inbytes']; + $interfaceItem['outbytes'] = $ifinfo['outbytes']; + $interfaceItem['inbytes_frmt'] = format_bytes($ifinfo['inbytes']); + $interfaceItem['outbytes_frmt'] = format_bytes($ifinfo['outbytes']); + + $interfaceItem['name'] = $ifname; + if ($ifinfo['status'] == "up" || $ifinfo['status'] == "associated") { + $interfaceItem['status'] = "up"; + } elseif ($ifinfo['status'] == "no carrier") { + $interfaceItem['status'] = "down"; + } elseif ($ifinfo['status'] == "down") { + $interfaceItem['status'] = "block"; + } else { + $interfaceItem['status'] = ""; + } + $interfaceItem['ipaddr'] = empty($ifinfo['ipaddr']) ? "" : $ifinfo['ipaddr']; + $interfaceItem['media'] = empty($ifinfo['media']) ? "" : $ifinfo['media']; + $result[] = $interfaceItem; + } + return $result; +}