fboaventura / dckr-mrtg

:whale: Docker MRTG Instance that will configure monitoring from the environment variable.
https://hub.docker.com/r/fboaventura/dckr-mrtg/
MIT License
26 stars 17 forks source link

Support for SNMPv1 #2

Closed Chaz6 closed 3 years ago

Chaz6 commented 3 years ago

I would like to use dckr-mrtg with a HP LaserJet P2015 printer which requires SNMPv1. When I try to add the device, it reports Timeout: No Response from [host].

fboaventura commented 3 years ago

Let me see what I can do :)

fboaventura commented 3 years ago

Hi @Chaz6!

Can you, please, give a run to fboaventura/dckr-mrtg:mrtg-rrd and see if it will work for you?

I was already working on a change, to implement rrdtool so I sized the opportunity to make it live. Please, read the README.md and verify the changes, if there is anything that you may have to change on your side.

If everything works on your side, I'll merge into master and make a proper release.

Thanks!

Chaz6 commented 3 years ago

Thanks! I will give it a try this afternoon.

Chaz6 commented 3 years ago

The device picked up correctly, but it did not show up on the main page.

mrtg_1  | --base: Get Device Info on public@PRINTER:::::1
mrtg_1  | --base: Vendor Id: hp
mrtg_1  | --base: Populating confcache
mrtg_1  | --base: Get Interface Info
mrtg_1  | --base: Walking ifIndex
mrtg_1  | --snpd:   public@PRINTER:::::1 -> 1 -> ifIndex = 1
mrtg_1  | --snpd:   public@PRINTER:::::1 -> 2 -> ifIndex = 2
mrtg_1  | --base: Walking ifType
mrtg_1  | --snpd:   public@PRINTER:::::1 -> 1 -> ifType = 24
mrtg_1  | --snpd:   public@PRINTER:::::1 -> 2 -> ifType = 6
mrtg_1  | --base: Walking ifAdminStatus
mrtg_1  | --snpd:   public@PRINTER:::::1 -> 1 -> ifAdminStatus = 1
mrtg_1  | --snpd:   public@PRINTER:::::1 -> 2 -> ifAdminStatus = 1
mrtg_1  | --base: Walking ifOperStatus
mrtg_1  | --snpd:   public@PRINTER:::::1 -> 1 -> ifOperStatus = 1
mrtg_1  | --snpd:   public@PRINTER:::::1 -> 2 -> ifOperStatus = 1
mrtg_1  | --base: Walking ifMtu
mrtg_1  | --snpd:   public@PRINTER:::::1 -> 1 -> ifMtu = 1500
mrtg_1  | --snpd:   public@PRINTER:::::1 -> 2 -> ifMtu = 1500
mrtg_1  | --base: Walking ifAlias
mrtg_1  | --base: Walking ifSpeed
mrtg_1  | --snpd:   public@PRINTER:::::1 -> 1 -> ifSpeed = 0
mrtg_1  | --snpd:   public@PRINTER:::::1 -> 2 -> ifSpeed = 10000000
mrtg_1  | --base: Writing /etc/mrtg/conf.d/PRINTER.cfg

I also noticed there appears to be a bit of corruption in the charts:-

image

Finally, some resources seem to be missing:-

image

fboaventura commented 3 years ago

Hi @Chaz6!

I couldn't reproduce the missing graphic on the main page. I've only seen this on my first run of this instance, before the first MRTG execution. But if you are mounting the volumes for persistency, please, make sure that you are pointing the volumes to the right place:

    volumes:
      - "./conf.d:/etc/mrtg/conf.d"
      - "./html:/mrtg/html"

As for the graphic corruption, here they are showing like this, with the nan before it pools the devices for the second time and has actual data do plot:

Screenshot_20210608_145427

After the second pooling, everything gets back to normal:

Screenshot_20210608_145039

I've fixed the missing resources and changed the graphic font to something more readable.

fboaventura commented 3 years ago

@Chaz6 did you have the opportunity to validate? Can I close the issue? :)