I think i have solved the problem.
Here is my config for snmp_exporter:

tuz_2003:
  get:
  - 1.3.6.1.4.1.32108.1.9.2.2.0
  - 1.3.6.1.4.1.32108.1.9.2.3.0
  - 1.3.6.1.4.1.32108.1.9.2.4.0
  - 1.3.6.1.4.1.32108.1.9.2.5.0

  metrics:
  - name: FiberRxPower1
    oid: 1.3.6.1.4.1.32108.1.9.2.2.0
    type: gauge
    help: Optical signal level for both ports.

  - name: FiberRxPower2
    oid: 1.3.6.1.4.1.32108.1.9.2.3.0
    type: gauge
    help: Optical signal level for both ports.

  - name: RfSignalLevel
    oid: 1.3.6.1.4.1.32108.1.9.2.4.0
    type: gauge
    help: Output RF Signal.

  - name: Temperature
    oid: 1.3.6.1.4.1.32108.1.9.2.5.0
    type: gauge
    help: Internal device temperature.

  auth:
    community: SNMPMTS

  version: 1


And here is my config for Prometheus:

scrape_configs:

  - job_name: tuz_2003
    metrics_path: /snmp
    params:
      module: [tuz_2003] 
    file_sd_configs:
        - files :
          - /etc/prometheus/tuz_2003.yml
          refresh_interval: 2m
    relabel_configs:
      - source_labels: [__address__]
        target_label: __param_target
      - source_labels: [__param_target]
        target_label: instance
      - target_label: __address__
        replacement: 127.0.0.1:9116  # The SNMP exporter's real 
hostname:port.
    metric_relabel_configs:
      - source_labels: [__name__]
        regex: '(FiberRxPower)([1-2])'
        replacement: $2
        target_label: PortIndex
      - target_label: __name__
        replacement: FiberRxPower





It works, and i think it's the most transparent way to do this.

However. Can you explain me how to do this with PromQL?


понедельник, 2 марта 2020 г., 14:08:54 UTC+12 пользователь Виталий Ковалев 
написал:
>
> Hello.
> On  my network i have some specific devices(Optical Receivers), which 
> violate usual snmp rules.
> For example - When you do snmpwalk on IF-MIB::IfSpeed OID you get many 
> values in this format:
> IF-MIB::ifSpeed.X = Gauge32: 10000000
> Where X Number of Interface.
>
> My devices have other logic. They have several oids for one metric(for 
> example optical signal power on inputs(total inputs-2)):
> OPTICAL_INPUT1: 1.3.6.1.4.1.32108.1.9.2.2.0
> OPTICAL_INPUT2: 1.3.6.1.4.1.32108.1.9.2.3.0
>
> How i can write it in one metric with several label for port? I want 
> output something like this:
>
> FiberRxPower{portIndex="1"} -999
> FiberRxPower{portIndex="2"} -36
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Prometheus Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/prometheus-users/e9150ed9-1bfe-4af9-b9fc-12af28d1d874%40googlegroups.com.

Reply via email to