Как изменить строку отображения на Float в Prometheus экспортера SNMP - PullRequest
0 голосов
/ 02 марта 2020

Мы пытались решить эту проблему, но не можем понять, как работает функция переопределения экспортера SNMP,

У нас есть несколько полей в этом MIB, которые являются значениями с плавающей точкой и из-за характер SNMP, они установили его как строку отображения.

enter image description here

результат ручного обхода выглядит следующим образом.

#1.51.92.1 .1.3.6.1.4.1.12356.101.4.9.2.1.6

iso.3.6.1.4.1.12356.101.4.9.2.1.6.1 = STRING: "2.782" 
iso.3.6.1.4.1.12356.101.4.9.2.1.6.2 = STRING: "8.239" 
iso.3.6.1.4.1.12356.101.4.9.2.1.6.3 = STRING: "4.333" 
iso.3.6.1.4.1.12356.101.4.9.2.1.6.4 = STRING: "9.387" 
iso.3.6.1.4.1.12356.101.4.9.2.1.6.5 = STRING: "4.691"

Если вы посмотрите на первую точку, джиттер ссылки отображается как метка, а на второй точке наша метри c всегда равна 1,

enter image description here

это наша попытка установить это значение в переопределении, но я думаю, что очевидно, что мы совсем не уверены, как работает переопределение, ни в какой терминологии.

modules:
  fortigate:
    walk:
    - fgSystem # is higher up the oid tree and includes the fgVWLHealthCheckLinkTable.
    - fgVpnTunTable
    auth:
      community: Pl@sc0n
    lookups:
      - source_indexes: [fgVWLHealthCheckLinkTable]
        lookup: fgVWLHealthCheckLinkJitter
        drop_source_indexes: false  # If true, delete source index labels for this lookup.
                                    # This avoids label clutter when the new index is unique.
    overrides: # Allows for per-module overrides of bits of MIBs
       fgSystem:
         ignore: true # Drops the metric from the output.
         regex_extracts:
           Temp: # A new metric will be created appending this to the metricName to become metricNameTemp.
             - regex: '(.*)' # Regex to extract a value from the returned SNMP walks's value.
               value: '$1' # The result will be parsed as a float64, defaults to $1.
           Status:
             - regex: '.*Example'
               value: '1'
             - regex: '.*'
               value: '0'
         type: DisplayString

Мы хотим отойти от elasti c Искать и использовать Прометей, чтобы собрать эти данные c statisti c.

...