code: def check_sensors():
      
  
      all_sensors = walk_data(sess, oid_description, helper)[0]
      all_status = walk_data(sess, oid_status, helper)[0]
  
      # here we zip all index and descriptions to have a list like
      # [('Fan Sensor', '2'), ('Power Supply Sensor', '4')]
      # we are doomed if the lists do not have the same length ...  but that should never happen ... hopefully
      zipped = zip(all_sensors, all_status)
  
      for sensor in zipped:
          description = sensor[0]
          status = sensor[1]
          # translate the value to human readable
          try:
              status_string = senor_status_table[status]
          except KeyError:
              # if we receive an invalid value, we don't want to crash... 
              helper.exit(summary="received an undefined value from device: " + status, exit_code=unknown, perfdata='')
  
          # for each sensor the summary is added like: Fan Sensor: good
          helper.add_summary("%s: %s" % (description, status_string))
  
          # set the status
          if status == "2":
              helper.status(critical)
          if status == "3":
              helper.status(warning)
docs: collect and check all available sensors