X-Git-Url: https://git-public.kairo.at/?p=php-utility-classes.git;a=blobdiff_plain;f=examples%2Frrd%2Frrd-config%2Fhostname.inc.php;h=59f7a773ab6f8278108afd75020faf9b94328170;hp=f2ddd88b52f795797ac49964ec2f273915e2b69e;hb=HEAD;hpb=7b9ebce7d25e4eaa557e8a64f8b1ed15aad1a9bb diff --git a/examples/rrd/rrd-config/hostname.inc.php b/examples/rrd/rrd-config/hostname.inc.php index f2ddd88..59f7a77 100644 --- a/examples/rrd/rrd-config/hostname.inc.php +++ b/examples/rrd/rrd-config/hostname.inc.php @@ -1,4 +1,8 @@ 'rest_other', 'type' => 'GAUG $rrd_info['connect']['fields'][] = array('name' => 'udp', 'type' => 'GAUGE', 'heartbeat' => 600, 'min' => 'U', 'max' => 'U'); $rrd_info['connect']['update'] = 'function { - $sdata = explode("\n", `LANG=C /bin/netstat -n -a`); + $sdata = explode("\n", `LANG=C /usr/sbin/ss -tuan`); $udata = array("listen"=>0,"run_http"=>0,"run_other"=>0,"rest_http"=>0,"rest_other"=>0,"udp"=>0); foreach ($sdata as $sline) { if (substr($sline, 0, 3) == "tcp") { - if (preg_match("/LISTEN\s*$/", $sline)) { $udata["listen"]++; } - elseif (preg_match("/:(80|443)\s+[\d\.:*]+\s+ESTABLISHED\s*/", $sline)) { $udata["run_http"]++; } - elseif (preg_match("/^tcp\s+\d+\s+\d+\s+[\d\.]+:(80|443)/", $sline)) { $udata["rest_http"]++; } - elseif (preg_match("/ESTABLISHED\s*$/", $sline)) { $udata["run_other"]++; } + if (preg_match("/^tcp\s+LISTEN\s+/", $sline)) { $udata["listen"]++; } + elseif (preg_match("/^tcp\s+ESTAB\s+\d+\s+\d+\s+[\da-f\.:]+:(80|443)\s*/", $sline)) { $udata["run_http"]++; } + elseif (preg_match("/^tcp\s+[^\s]+\s+\d+\s+\d+\s+[\da-f\.:]+:(80|443)\s*/", $sline)) { $udata["rest_http"]++; } + elseif (preg_match("/^tcp\s+ESTAB\s+/", $sline)) { $udata["run_other"]++; } else { $udata["rest_other"]++; } } elseif (substr($sline, 0, 3) == "udp") { $udata["udp"]++; }