1. 26 Jul, 2016 1 commit
    • Adam Wujek's avatar
      serspace/host_tools: add snmp_graph.sh · 72a0f118
      Adam Wujek authored
      Add a script to gather data via SNMP in the given interval, store it a file
      and draw a graph.
      
      Example use:
      ./snmp_graph.sh -f oids_temp_ip.txt --ip 192.168.1.10
      ./snmp_graph.sh -f oids_temp.txt --ip 192.168.1.12 --mibs-path "/var/lib/mibs/ietf:../snmpd" --mibs-load WR-SWITCH-MIB"
      Signed-off-by: Adam Wujek's avatarAdam Wujek <adam.wujek@cern.ch>
      72a0f118
  2. 20 Jul, 2016 8 commits
  3. 19 Jul, 2016 15 commits
    • Adam Wujek's avatar
      userspace/snmpd: fix handling of 64bit objects · f9332f2d
      Adam Wujek authored
      snmp_set_var_typed_value function does not epxect counter64 values as a
      uint64_t, but as a struct counter64. Their binary representation differs by
      order of 32bit words. By this it was wrongly seen as a endianess problem.
      Since some status objects use 64bit values for calculations it is more
      convenient to use uint64_t in our structures, then convert to struct counter64
      just before passing data to the SNMP engine.
      Signed-off-by: Adam Wujek's avatarAdam Wujek <adam.wujek@cern.ch>
      f9332f2d
    • Adam Wujek's avatar
    • Adam Wujek's avatar
      userspace/snmpd: fix update of wrsNetworkingStatusGroup · 6c42c982
      Adam Wujek authored
      There was a special case when there was no update of pstats, but status was
      recalculated. Since counters were not updated then deltas of counters were
      within limits. It could happen that counters are growing, but statuses are
      returning "ok".
      
      For example problem was in the case, when object wrsPstatsHCRXDropRTUFull.1 was
      increasing at every read:
      $ snmpget WR-SWITCH-MIB::wrsPortStatusSfpError.1 # this triggers a read of
      status ports
      $ sleep 2
      WR-SWITCH-MIB::wrsPortStatusSfpError.1 = INTEGER: sfpOk(1)
      $ snmpget WR-SWITCH-MIB::wrsRTUStatus.0 # triggers only read of pstats, values
      of status ports are cached (only 2 seconds elapsed)
      WR-SWITCH-MIB::wrsRTUStatus.0 = INTEGER: error(2)
      $ sleep 4
      $ snmpget WR-SWITCH-MIB::wrsRTUStatus.0 # pstats value are cached, but deltas
      are re-calculated and are equal to 0. This sould report error as well.
      WR-SWITCH-MIB::wrsRTUStatus.0 = INTEGER: ok(1)
      After the code is fixed the last one returns error(2)
      Signed-off-by: Adam Wujek's avatarAdam Wujek <adam.wujek@cern.ch>
      6c42c982
    • Grzegorz Daniluk's avatar
    • Adam Wujek's avatar
      userspace/snmpd: add verbosity to the wrsTimingStatusGroup · 2dce12fe
      Adam Wujek authored
      There are some side effects of this commit:
      --
      Signed-off-by: Adam Wujek's avatarAdam Wujek <adam.wujek@cern.ch>
      2dce12fe
    • Adam Wujek's avatar
      b6e1db3a
    • Adam Wujek's avatar
      userspace/snmpd: add verbosity to the wrsPortStatusTable · c91fb30d
      Adam Wujek authored
      There are some side effects of this commit:
      --use WRS_PORT_STATUS_SFP_IN_DB_* and WRS_PORT_STATUS_SFP_GBE_* instead of
        numbers
      Signed-off-by: Adam Wujek's avatarAdam Wujek <adam.wujek@cern.ch>
      c91fb30d
    • Adam Wujek's avatar
      userspace/snmpd: add verbosity to the wrsNetworkingStatusGroup · d3a86278
      Adam Wujek authored
      There are some side effects of this commit:
      --add macro SLOG_IF_COMP_WNSG
      --fields in the struct wrsNetworkingStatus_config are changed from int to float
        to avoid warning about a wrong parameter for macro SLOG_IF_COMP_WNSG (printf)
      Signed-off-by: Adam Wujek's avatarAdam Wujek <adam.wujek@cern.ch>
      d3a86278
    • Adam Wujek's avatar
      userspace/snmpd: add verbosity to the wrsOSStatusGroup · 6b20626b
      Adam Wujek authored
      There are some side effects of this commit:
      --print error/warning/warning_na for every partition that causes a problem;
        before error was reported only only for first parition causin a problem
      --print warning when at least one temperature threshold is not set;
        before when all were not set
      --report WRS_TEMPERATURE_WARNING_TOO_HIGH, even one of the threshold is not set
      Signed-off-by: Adam Wujek's avatarAdam Wujek <adam.wujek@cern.ch>
      6b20626b
    • Adam Wujek's avatar
      b344d3c9
    • Adam Wujek's avatar
      userspace/snmpd: rename fields in structures · 5ff8e63d
      Adam Wujek authored
      Rename fields in structures to correspond to the MIB names.
      Signed-off-by: Adam Wujek's avatarAdam Wujek <adam.wujek@cern.ch>
      5ff8e63d
    • Adam Wujek's avatar
      userspace/snmpd: (no tech change) rename fields in the wrsPtpDataTable_s · 2391521e
      Adam Wujek authored
      Rename fields in the struct wrsSpllVersionGroup_s to reflect SNMP objects'
      names.
      
      index -> wrsPtpDataIndex
      port_name -> wrsPtpPortName
      gm_id -> wrsPtpGrandmasterID
      my_id -> wrsPtpOwnID
      ppsi_mode -> wrsPtpMode
      servo_state_name -> wrsPtpServoState
      servo_state -> wrsPtpServoStateN
      tracking_enabled -> wrsPtpPhaseTracking
      sync_source -> wrsPtpSyncSource
      clock_offset -> wrsPtpClockOffsetPs
      clock_offsetHR -> wrsPtpClockOffsetPsHR
      skew -> wrsPtpSkew
      rtt -> wrsPtpRTT
      llength -> wrsPtpLinkLength
      servo_updates -> wrsPtpServoUpdates
      delta_tx_m -> wrsPtpDeltaTxM
      delta_rx_m -> wrsPtpDeltaRxM
      delta_tx_s -> wrsPtpDeltaTxS
      delta_rx_s -> wrsPtpDeltaRxS
      n_err_state -> wrsPtpServoStateErrCnt
      n_err_offset -> wrsPtpClockOffsetErrCnt
      n_err_delta_rtt -> wrsPtpRTTErrCnt
      update_time -> wrsPtpServoUpdateTime
      Signed-off-by: Adam Wujek's avatarAdam Wujek <adam.wujek@cern.ch>
      2391521e
    • Adam Wujek's avatar
      userspace/snmpd: (no tech change) rename fields in the wrsPstatsHCTable_s · 7c31fb5f
      Adam Wujek authored
      Rename fields in the struct wrsPstatsHCTable_s to reflect SNMP objects'
      names (add "wrsPstatsHC" prefix).
      
      As a side effect do the same with struct ns_pstats.
      
      --Changes in wrsPstatsHCTable_s:
      index -> wrsPstatsHCIndex
      port_name[12] -> WrsPstatsHCPortName[12]
      TXUnderrun -> wrsPstatsHCTXUnderrun
      RXOverrun -> wrsPstatsHCRXOverrun
      RXInvalidCode -> wrsPstatsHCRXInvalidCode
      RXSyncLost -> wrsPstatsHCRXSyncLost
      RXPauseFrames -> wrsPstatsHCRXPauseFrames
      RXPfilterDropped -> wrsPstatsHCRXPfilterDropped
      RXPCSErrors -> wrsPstatsHCRXPCSErrors
      RXGiantFrames -> wrsPstatsHCRXGiantFrames
      RXRuntFrames -> wrsPstatsHCRXRuntFrames
      RXCRCErrors -> wrsPstatsHCRXCRCErrors
      RXPclass0 -> wrsPstatsHCRXPclass0
      RXPclass1 -> wrsPstatsHCRXPclass1
      RXPclass2 -> wrsPstatsHCRXPclass2
      RXPclass3 -> wrsPstatsHCRXPclass3
      RXPclass4 -> wrsPstatsHCRXPclass4
      RXPclass5 -> wrsPstatsHCRXPclass5
      RXPclass6 -> wrsPstatsHCRXPclass6
      RXPclass7 -> wrsPstatsHCRXPclass7
      TXFrames -> wrsPstatsHCTXFrames
      RXFrames -> wrsPstatsHCRXFrames
      RXDropRTUFull -> wrsPstatsHCRXDropRTUFull
      RXPrio0 -> wrsPstatsHCRXPrio0
      RXPrio1 -> wrsPstatsHCRXPrio1
      RXPrio2 -> wrsPstatsHCRXPrio2
      RXPrio3 -> wrsPstatsHCRXPrio3
      RXPrio4 -> wrsPstatsHCRXPrio4
      RXPrio5 -> wrsPstatsHCRXPrio5
      RXPrio6 -> wrsPstatsHCRXPrio6
      RXPrio7 -> wrsPstatsHCRXPrio7
      RTUValid -> wrsPstatsHCRTUValid
      RTUResponses -> wrsPstatsHCRTUResponses
      RTUDropped -> wrsPstatsHCRTUDropped
      FastMatchPriority -> wrsPstatsHCFastMatchPriority
      FastMatchFastForward -> wrsPstatsHCFastMatchFastForward
      FastMatchNonForward -> wrsPstatsHCFastMatchNonForward
      FastMatchRespValid -> wrsPstatsHCFastMatchRespValid
      FullMatchRespValid -> wrsPstatsHCFullMatchRespValid
      Forwarded -> wrsPstatsHCForwarded
      TRURespValid -> wrsPstatsHCTRURespValid
      
      --changes in ns_pstats:
      TXUnderrun -> wrsPstatsHCTXUnderrun
      RXOverrun -> wrsPstatsHCRXOverrun
      RXInvalidCode -> wrsPstatsHCRXInvalidCode
      RXSyncLost -> wrsPstatsHCRXSyncLost
      RXPfilterDropped -> wrsPstatsHCRXPfilterDropped
      RXPCSErrors -> wrsPstatsHCRXPCSErrors
      RXCRCErrors -> wrsPstatsHCRXCRCErrors
      RXFrames -> wrsPstatsHCRXFrames
      RXPrio0 -> wrsPstatsHCRXPrio0
      RXPrio1 -> wrsPstatsHCRXPrio1
      RXPrio2 -> wrsPstatsHCRXPrio2
      RXPrio3 -> wrsPstatsHCRXPrio3
      RXPrio4 -> wrsPstatsHCRXPrio4
      RXPrio5 -> wrsPstatsHCRXPrio5
      RXPrio6 -> wrsPstatsHCRXPrio6
      RXPrio7 -> wrsPstatsHCRXPrio7
      FastMatchPriority -> wrsPstatsHCFastMatchPriority
      RXDropRTUFull -> wrsPstatsHCRXDropRTUFull
      Signed-off-by: Adam Wujek's avatarAdam Wujek <adam.wujek@cern.ch>
      7c31fb5f
    • Adam Wujek's avatar
      userspace/snmpd: (no tech change) rename fields in the wrsSpllVersionGroup_s · e47a26d9
      Adam Wujek authored
      Rename fields in the struct wrsSpllVersionGroup_s to reflect SNMP objects'
      names.
      
      commit_id -> wrsSpllVersion
      build_date -> wrsSpllBuildDate
      build_by -> wrsSpllBuildBy
      Signed-off-by: Adam Wujek's avatarAdam Wujek <adam.wujek@cern.ch>
      e47a26d9
    • Adam Wujek's avatar
      userspace/snmpd: (no tech change) rename fields in the wrsTemperature_s · 3f93266e
      Adam Wujek authored
      Rename fields in the struct wrsTemperature_s to reflect SNMP objects'
      names.
      
      temp_fpga -> wrsTempFPGA
      temp_pll -> wrsTempPLL
      temp_psl -> wrsTempPSL
      temp_psr -> wrsTempPSR
      temp_fpga_thold -> wrsTempThresholdFPGA
      temp_pll_thold -> wrsTempThresholdPLL
      temp_psl_thold -> wrsTempThresholdPSL
      temp_psr_thold -> wrsTempThresholdPSR
      Signed-off-by: Adam Wujek's avatarAdam Wujek <adam.wujek@cern.ch>
      3f93266e
  4. 13 Jul, 2016 2 commits
    • Adam Wujek's avatar
      rootfs: don't overwrite dot-config_status in apply_dot-config · 8340388b
      Adam Wujek authored
      /etc/init.d/dot-config can save information e.g. that it failed to get
      dot-config form the given URL. However, apply_dot-config called from
      /etc/init.d/dot-config overwrites this information by the result of checking
      the dot-config. The checking of the dot-config has to be done also in
      apply_dot-config, because the webinterface writes down changed dot-config and
      executes only apply_dot-config.
      Signed-off-by: Adam Wujek's avatarAdam Wujek <adam.wujek@cern.ch>
      8340388b
    • Adam Wujek's avatar
      userspace/snmpd: (no tech change) rename fields in the wrsPortStatusTable_s · a7c0497b
      Adam Wujek authored
      Rename fields in the struct wrsPortStatusTable_s to reflect SNMP objects'
      names.
      
      link_up -> wrsPortStatusLink
      port_mode -> wrsPortStatusConfiguredMode
      port_locked -> wrsPortStatusLocked
      sfp_vn[16] -> wrsPortStatusSfpVN[16]
      sfp_pn[16] -> wrsPortStatusSfpPN[16]
      sfp_vs[16] -> wrsPortStatusSfpVS[16]
      sfp_in_db -> wrsPortStatusSfpInDB
      sfp_GbE -> wrsPortStatusSfpGbE
      sfp_error -> wrsPortStatusSfpError
      ptp_tx_count -> wrsPortStatusPtpTxFrames
      ptp_rx_count -> wrsPortStatusPtpRxFrames
      Signed-off-by: Adam Wujek's avatarAdam Wujek <adam.wujek@cern.ch>
      a7c0497b
  5. 07 Jul, 2016 14 commits