Advertisement
Guest User

..includes/polling/os/panos.inc.php

a guest
Nov 15th, 2019
151
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.76 KB | None | 0 0
  1. <?php
  2.  
  3. use LibreNMS\RRD\RrdDefinition;
  4.  
  5.  
  6. // changed by joovoo
  7. $oids = snmp_get_multi($device, ['panChassisType.0', 'panSysSwVersion.0', 'panSysSerialNumber.0', 'panSessionActive.0', 'panSessionActiveTcp.0', 'panSessionActiveUdp.0', 'panSessionActiveICMP.0', 'panSessionActiveSslProxy.0', 'panSessionSslProxyUtilization.0', 'panGPGWUtilizationActiveTunnels.0','panVsysActiveSessions.0' ], '-OQUs', 'PAN-COMMON-MIB');
  8.  
  9.  
  10. $hardware = $oids[0]['panChassisType'];
  11. $version  = $oids[0]['panSysSwVersion'];
  12. $serial   = $oids[0]['panSysSerialNumber'];
  13. $sessions = $oids[0]['panSessionActive'];
  14. $sessions_tcp = $oids[0]['panSessionActiveTcp'];
  15. $sessions_udp = $oids[0]['panSessionActiveUdp'];
  16. $sessions_icmp = $oids[0]['panSessionActiveICMP'];
  17. $sessions_ssl = $oids[0]['panSessionActiveSslProxy'];
  18. $sessions_sslutil = $oids[0]['panSessionSslProxyUtilization'];
  19. $activetunnels = $oids[0]['panGPGWUtilizationActiveTunnels'];
  20. $vsysactivesessions = $oids [0]['panVsysActiveSessions'];
  21.  
  22.  
  23. if (is_numeric($sessions)) {
  24.     $rrd_def = RrdDefinition::make()->addDataset('sessions', 'GAUGE', 0, 3000000);
  25.  
  26.     $fields = array(
  27.         'sessions' => $sessions,
  28.     );
  29.  
  30.     $tags = compact('rrd_def');
  31.     data_update($device, 'panos-sessions', $tags, $fields);
  32.  
  33.     $graphs['panos_sessions'] = true;
  34. }
  35.  
  36. if (is_numeric($sessions_tcp)) {
  37.     $rrd_def = RrdDefinition::make()->addDataset('sessions_tcp', 'GAUGE', 0, 3000000);
  38.  
  39.     $fields = array(
  40.         'sessions_tcp' => $sessions_tcp,
  41.     );
  42.  
  43.     $tags = compact('rrd_def');
  44.     data_update($device, 'panos-sessions-tcp', $tags, $fields);
  45.  
  46.     $graphs['panos_sessions_tcp'] = true;
  47. }
  48.  
  49. if (is_numeric($sessions_udp)) {
  50.     $rrd_def = RrdDefinition::make()->addDataset('sessions_udp', 'GAUGE', 0, 3000000);
  51.  
  52.     $fields = array(
  53.         'sessions_udp' => $sessions_udp,
  54.     );
  55.  
  56.     $tags = compact('rrd_def');
  57.     data_update($device, 'panos-sessions-udp', $tags, $fields);
  58.  
  59.     $graphs['panos_sessions_udp'] = true;
  60. }
  61.  
  62. if (is_numeric($sessions_icmp)) {
  63.     $rrd_def = RrdDefinition::make()->addDataset('sessions_icmp', 'GAUGE', 0, 3000000);
  64.  
  65.     $fields = array(
  66.         'sessions_icmp' => $sessions_icmp,
  67.     );
  68.  
  69.     $tags = compact('rrd_def');
  70.     data_update($device, 'panos-sessions-icmp', $tags, $fields);
  71.  
  72.     $graphs['panos_sessions_icmp'] = true;
  73. }
  74.  
  75. if (is_numeric($sessions_ssl)) {
  76.     $rrd_def = RrdDefinition::make()->addDataset('sessions_ssl', 'GAUGE', 0, 3000000);
  77.  
  78.     $fields = array(
  79.         'sessions_ssl' => $sessions_ssl,
  80.     );
  81.  
  82.     $tags = compact('rrd_def');
  83.     data_update($device, 'panos-sessions-ssl', $tags, $fields);
  84.  
  85.     $graphs['panos_sessions_ssl'] = true;
  86. }
  87.  
  88. if (is_numeric($sessions_sslutil)) {
  89.     $rrd_def = RrdDefinition::make()->addDataset('sessions_sslutil', 'GAUGE', 0, 3000000);
  90.  
  91.     $fields = array(
  92.         'sessions_sslutil' => $sessions_sslutil,
  93.     );
  94.  
  95.     $tags = compact('rrd_def');
  96.     data_update($device, 'panos-sessions-sslutil', $tags, $fields);
  97.  
  98.     $graphs['panos_sessions_sslutil'] = true;
  99. }
  100.  
  101. if (is_numeric($activetunnels)) {
  102.     $rrd_def = RrdDefinition::make()->addDataset('activetunnels', 'GAUGE', 0, 3000000);
  103.  
  104.     $fields = array(
  105.         'activetunnels' => $activetunnels,
  106.     );
  107.  
  108.     $tags = compact('rrd_def');
  109.     data_update($device, 'panos-activetunnels', $tags, $fields);
  110.  
  111.     $graphs['panos_activetunnels'] = true;
  112. }
  113.  
  114.  
  115. // added by joovoo
  116. if (is_numeric($panVsysActiveSessions)) {
  117.     $rrd_def = RrdDefinition::make()->addDataset('panVsysActiveSessions', 'GAUGE', 0, 3000000);
  118.  
  119.     $fields = array(
  120.         'panVsysActiveSessions' => $panVsysActiveSessions,
  121.     );
  122.  
  123.     $tags = compact('rrd_def');
  124.     data_update($device, 'panos-panVsysActiveSessions', $tags, $fields);
  125.  
  126.     $graphs['panos_panVsysActiveSessions'] = true;
  127. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement