freifunk-berlin / falter-packages

Sources for the falter-packagefeed
GNU General Public License v3.0
12 stars 17 forks source link

Statistics Graphs in LuCI-Admin-Interface broken #128

Closed Noki closed 3 years ago

Noki commented 3 years ago

Description

In the LuCI-Admin-Interface there is the section "Statistics -> "Graphs". The Diagrams under the various tabs do not load:

image

The corresponding Image-URLs show a 200 status code but no content.

What do you expect to happen?

I expect the graphs to display.

Test-Environment

Router: GL.iNet AR300M LuCI openwrt-19.07 branch (git-21.036.67598-2936a19) / OpenWrt 19.07.6 r11278-8055e38794 Freifunk Berlin (falter v1.1.0-rc1) ar71xx - generic

Akira25 commented 3 years ago

Is this maybe an issue with your browser cache or your image?

I did a fresh install on a gl-ar150 with an image from buildbot. There, the statistics show up correct. (The first screenshots shows a fraction of the images, the footer is a separate screenshot.)

Screenshot_20210210_144120 image

Noki commented 3 years ago

Of course I disabled caching in my browser:

image

In the network graph you can see that the images have a 200 status code but no real payload.

The systemlog shows the following:

Wed Feb 10 14:57:23 2021 daemon.err uhttpd[1458]: luci: accepted login on /admin/statistics/graph for root from 192.168.178.20
Wed Feb 10 14:57:33 2021 daemon.err uhttpd[1458]: ERROR: Opening '/tmp/rrdimg/ff-es-01/interface-br-dhcp/1.3600.png' for write: No such file or directory
Wed Feb 10 14:57:33 2021 daemon.err uhttpd[1458]: ERROR: Opening '/tmp/rrdimg/ff-es-01/interface-br-dhcp/2.3600.png' for write: No such file or directory
Wed Feb 10 14:57:33 2021 daemon.err uhttpd[1458]: ERROR: Opening '/tmp/rrdimg/ff-es-01/interface-ffuplink/1.3600.png' for write: No such file or directory
Wed Feb 10 14:57:33 2021 daemon.err uhttpd[1458]: ERROR: Opening '/tmp/rrdimg/ff-es-01/interface-ffuplink/2.3600.png' for write: No such file or directory
Wed Feb 10 14:57:33 2021 daemon.err uhttpd[1458]: ERROR: Opening '/tmp/rrdimg/ff-es-01/interface-wlan0-mesh-2/1.3600.png' for write: No such file or directory
Wed Feb 10 14:57:34 2021 daemon.err uhttpd[1458]: ERROR: Opening '/tmp/rrdimg/ff-es-01/interface-wlan0-mesh-2/2.3600.png' for write: No such file or directory

I would expect the status code to be a 404 at least. ;-)

PolynomialDivision commented 3 years ago

Looks like the tool that is making the graphics rrdtool is not working correctly.

Noki commented 3 years ago

I found a similar issue: https://github.com/openwrt/packages/issues/13608

On my build the etc directory looks like this:

image

The collectd.conf is directly in the /etc directory and /etc/collectd/ and /etc/collectd/conf.d do not exist.

Creating those directories and moving collectd.conf fixed the issue:

image

So the environment for collectd seems to be defined/setup incorrectly.

pmelange commented 3 years ago

I can not reproduce this error.

Noki commented 3 years ago

I just another router today (TP-Link Archer C7 v4) and installed 1.1.0-rc1_tunneldigger (Factory image) from the Firmware Selector. I have the exact same issue on that device/firmware build. I tested multiple devices (Phone, Laptop, Desktop with Firefox and Chrome) and they all have the same issue. Let me know how I can assist debugging it further.

PolynomialDivision commented 3 years ago

@Noki Please try /etc/init.d/luci_statistics reload and then look at logread. The luci_statitics is creating your files.

PolynomialDivision commented 3 years ago

Maybe the default luci_statitics files are wrong @pmelange ?

Noki commented 3 years ago
Thu Feb 11 16:53:45 2021 daemon.err collectd[2265]: Exiting normally.
Thu Feb 11 16:53:45 2021 daemon.err collectd[2265]: collectd: Stopping 2 read threads.
Thu Feb 11 16:53:45 2021 daemon.err collectd[2265]: collectd: Stopping 5 write threads.
Thu Feb 11 16:53:45 2021 daemon.err collectd[2265]: ping plugin: Shutting down thread.
Thu Feb 11 16:53:45 2021 daemon.err collectd[2265]: rrdtool plugin: Shutting down the queue thread.
Thu Feb 11 16:53:45 2021 daemon.err collectd[26531]: configfile: stat (/etc/collectd/conf.d) failed: No such file or directory
Thu Feb 11 16:53:45 2021 daemon.err collectd[26531]: plugin_load: plugin "iwinfo" successfully loaded.
Thu Feb 11 16:53:45 2021 daemon.err collectd[26531]: plugin_load: plugin "ping" successfully loaded.
Thu Feb 11 16:53:45 2021 daemon.err collectd[26531]: plugin_load: plugin "memory" successfully loaded.
Thu Feb 11 16:53:45 2021 daemon.err collectd[26531]: plugin_load: plugin "load" successfully loaded.
Thu Feb 11 16:53:45 2021 daemon.err collectd[26531]: plugin_load: plugin "rrdtool" successfully loaded.
Thu Feb 11 16:53:45 2021 daemon.err collectd[26531]: rrdtool plugin: RRASingle = true: creating only AVERAGE RRAs
Thu Feb 11 16:53:45 2021 daemon.err collectd[26531]: plugin_load: plugin "interface" successfully loaded.
Thu Feb 11 16:53:45 2021 daemon.err collectd[26531]: plugin_load: plugin "uptime" successfully loaded.
Thu Feb 11 16:53:45 2021 daemon.err collectd[26531]: plugin_load: plugin "network" successfully loaded.
Thu Feb 11 16:53:45 2021 daemon.err collectd[26531]: plugin_load: plugin "olsrd" successfully loaded.
Thu Feb 11 16:53:45 2021 daemon.err collectd[26531]: Initialization complete, entering read-loop.
Thu Feb 11 16:54:17 2021 daemon.err odhcp6c[1504]: Failed to send DHCPV6 message to ff02::1:2 (Permission denied)

As pointed out before the collectd.conf is in the wrong place / the directory does not exist:

image

PolynomialDivision commented 3 years ago

@Noki Could u give me your luci_statistics?

PolynomialDivision commented 3 years ago

I believe the failure is not important

Thu Feb 11 16:04:35 2021 daemon.err collectd[14908]: configfile: stat (/etc/collectd/conf.d) failed: No such file or directory
Noki commented 3 years ago

@PolynomialDivision how do I get "luci_staticstics"? (Still new to all of this)

PolynomialDivision commented 3 years ago

cat /etc/config/luci_statistics ;)

Noki commented 3 years ago
config statistics 'rrdtool'
        option default_timespan '1hour'
        option image_width '600'
        option image_path '/tmp/rrdimg'

config statistics 'collectd'
        option BaseDir '/var/run/collectd'
        option Include '/etc/collectd/conf.d'
        option PIDFile '/var/run/collectd.pid'
        option PluginDir '/usr/lib/collectd'
        option TypesDB '/usr/share/collectd/types.db'
        option Interval '30'
        option ReadThreads '2'

config statistics 'collectd_ping'
        option enable '1'
        option TTL '127'
        option Interval '10'
        option Hosts 'ping.berlin.freifunk.net'

config statistics 'collectd_interface'
        option enable '1'
        option Interfaces 'ffuplink wlan0-mesh-5 wlan1-mesh-2 br-dhcp'

config statistics 'collectd_load'
        option enable '1'

config statistics 'collectd_rrdtool'
        option enable '1'
        option DataDir '/tmp/rrd'
        option RRARows '100'
        option RRASingle '1'
        option RRATimespans '1hour 1day 1week 1month 1year'

config statistics 'collectd_memory'
        option enable '1'
        option ValuesAbsolute '1'

config statistics 'collectd_olsrd'
        option enable '1'
        option Port '2006'
        option Host '127.0.0.1'

config statistics 'collectd_iwinfo'
        option enable '1'
        option Interfaces 'wlan0-mesh-5 wlan0-dhcp-5 wlan1-mesh-2 wlan1-dhcp-2'

config statistics 'collectd_uptime'
        option enable '1'

config collectd_network_server
        option host 'monitor.berlin.freifunk.net'

config statistics 'collectd_network'
        option enable '1'
PolynomialDivision commented 3 years ago

It seems like it is a 19.07 issue and fixed upstream. If u have time, maybe you can search for a fix and backport to 19.07 https://github.com/openwrt/luci/commits/master?before=98bd6f6ec30f3ea35938050784b7d70f0ce960b4+35&branch=master&path%5B%5D=applications&path%5B%5D=luci-app-statistics

But I'm not sure at all.

PolynomialDivision commented 3 years ago

@Noki Lets see what the luci-app-statics maintainer will say why they didn't include the fix until now.

pmelange commented 3 years ago

@Noki The line configfile: stat (/etc/collectd/conf.d) failed: No such file or directory is nothing to worry about. The configuration for collectd is generated from luci_statistics and the generated config file looks in /etc/collectd/conf.d/* for any additional hand-written config files. If there aren't any to be found, then that warning is produced.

Still I am not able to reproduce these problems.

@Noki Please do find /tmp/rrd and df -h. I'm wondering if your router is running out of memory (/tmp) or some other issue.

pmelange commented 3 years ago

It seems like it is a 19.07 issue and fixed upstream. If u have time, maybe you can search for a fix and backport to 19.07 https://github.com/openwrt/luci/commits/master?before=98bd6f6ec30f3ea35938050784b7d70f0ce960b4+35&branch=master&path%5B%5D=applications&path%5B%5D=luci-app-statistics

But I'm not sure at all.

Which commit are you trying to reference? Nothing in particular is jumping up and down at me.

Noki commented 3 years ago
root@ff-es-01:/# find /tmp/rrd
/tmp/rrd
/tmp/rrd/ff-es-01
/tmp/rrd/ff-es-01/interface-ffuplink
/tmp/rrd/ff-es-01/interface-ffuplink/if_dropped.rrd
/tmp/rrd/ff-es-01/interface-ffuplink/if_errors.rrd
/tmp/rrd/ff-es-01/interface-ffuplink/if_octets.rrd
/tmp/rrd/ff-es-01/interface-ffuplink/if_packets.rrd
/tmp/rrd/ff-es-01/olsrd-topology
/tmp/rrd/ff-es-01/olsrd-topology/links.rrd
/tmp/rrd/ff-es-01/olsrd-topology/signal_quality-average.rrd
/tmp/rrd/ff-es-01/olsrd-routes
/tmp/rrd/ff-es-01/olsrd-routes/routes.rrd
/tmp/rrd/ff-es-01/olsrd-routes/route_etx-average.rrd
/tmp/rrd/ff-es-01/olsrd-routes/route_metric-average.rrd
/tmp/rrd/ff-es-01/olsrd-links
/tmp/rrd/ff-es-01/olsrd-links/signal_quality-10.36.197.157-10.36.197.5-rx.rrd
/tmp/rrd/ff-es-01/olsrd-links/signal_quality-10.36.197.157-10.36.197.5-lq.rrd
/tmp/rrd/ff-es-01/olsrd-links/signal_quality-10.36.197.157-10.36.197.6-rx.rrd
/tmp/rrd/ff-es-01/olsrd-links/signal_quality-10.36.197.157-10.36.197.6-lq.rrd
/tmp/rrd/ff-es-01/olsrd-links/signal_quality-average-nlq.rrd
/tmp/rrd/ff-es-01/olsrd-links/signal_quality-average-lq.rrd
/tmp/rrd/ff-es-01/olsrd-links/links.rrd
/tmp/rrd/ff-es-01/uptime
/tmp/rrd/ff-es-01/uptime/uptime.rrd
/tmp/rrd/ff-es-01/interface-wlan0-mesh-5
/tmp/rrd/ff-es-01/interface-wlan0-mesh-5/if_dropped.rrd
/tmp/rrd/ff-es-01/interface-wlan0-mesh-5/if_errors.rrd
/tmp/rrd/ff-es-01/interface-wlan0-mesh-5/if_octets.rrd
/tmp/rrd/ff-es-01/interface-wlan0-mesh-5/if_packets.rrd
/tmp/rrd/ff-es-01/interface-br-dhcp
/tmp/rrd/ff-es-01/interface-br-dhcp/if_dropped.rrd
/tmp/rrd/ff-es-01/interface-br-dhcp/if_errors.rrd
/tmp/rrd/ff-es-01/interface-br-dhcp/if_octets.rrd
/tmp/rrd/ff-es-01/interface-br-dhcp/if_packets.rrd
/tmp/rrd/ff-es-01/interface-wlan1-mesh-2
/tmp/rrd/ff-es-01/interface-wlan1-mesh-2/if_dropped.rrd
/tmp/rrd/ff-es-01/interface-wlan1-mesh-2/if_errors.rrd
/tmp/rrd/ff-es-01/interface-wlan1-mesh-2/if_octets.rrd
/tmp/rrd/ff-es-01/interface-wlan1-mesh-2/if_packets.rrd
/tmp/rrd/ff-es-01/load
/tmp/rrd/ff-es-01/load/load.rrd
/tmp/rrd/ff-es-01/memory
/tmp/rrd/ff-es-01/memory/memory-slab_recl.rrd
/tmp/rrd/ff-es-01/memory/memory-slab_unrecl.rrd
/tmp/rrd/ff-es-01/memory/memory-free.rrd
/tmp/rrd/ff-es-01/memory/memory-cached.rrd
/tmp/rrd/ff-es-01/memory/memory-buffered.rrd
/tmp/rrd/ff-es-01/memory/memory-used.rrd
/tmp/rrd/ff-es-01/iwinfo-wlan0-mesh-5
/tmp/rrd/ff-es-01/iwinfo-wlan0-mesh-5/stations.rrd
/tmp/rrd/ff-es-01/iwinfo-wlan0-mesh-5/signal_quality.rrd
/tmp/rrd/ff-es-01/iwinfo-wlan0-mesh-5/signal_noise.rrd
/tmp/rrd/ff-es-01/iwinfo-wlan0-mesh-5/signal_power.rrd
/tmp/rrd/ff-es-01/iwinfo-wlan0-mesh-5/bitrate.rrd
/tmp/rrd/ff-es-01/ping
/tmp/rrd/ff-es-01/ping/ping_droprate-ping.berlin.freifunk.net.rrd
/tmp/rrd/ff-es-01/ping/ping_stddev-ping.berlin.freifunk.net.rrd
/tmp/rrd/ff-es-01/ping/ping-ping.berlin.freifunk.net.rrd
/tmp/rrd/ff-es-01/iwinfo-wlan0-dhcp-5
/tmp/rrd/ff-es-01/iwinfo-wlan0-dhcp-5/stations.rrd
/tmp/rrd/ff-es-01/iwinfo-wlan0-dhcp-5/signal_quality.rrd
/tmp/rrd/ff-es-01/iwinfo-wlan0-dhcp-5/signal_noise.rrd
/tmp/rrd/ff-es-01/iwinfo-wlan0-dhcp-5/signal_power.rrd
/tmp/rrd/ff-es-01/iwinfo-wlan0-dhcp-5/bitrate.rrd
/tmp/rrd/ff-es-01/iwinfo-wlan1-mesh-2
/tmp/rrd/ff-es-01/iwinfo-wlan1-mesh-2/stations.rrd
/tmp/rrd/ff-es-01/iwinfo-wlan1-mesh-2/signal_quality.rrd
/tmp/rrd/ff-es-01/iwinfo-wlan1-mesh-2/signal_noise.rrd
/tmp/rrd/ff-es-01/iwinfo-wlan1-mesh-2/signal_power.rrd
/tmp/rrd/ff-es-01/iwinfo-wlan1-mesh-2/bitrate.rrd
/tmp/rrd/ff-es-01/iwinfo-wlan1-dhcp-2
/tmp/rrd/ff-es-01/iwinfo-wlan1-dhcp-2/stations.rrd
/tmp/rrd/ff-es-01/iwinfo-wlan1-dhcp-2/signal_quality.rrd
/tmp/rrd/ff-es-01/iwinfo-wlan1-dhcp-2/signal_noise.rrd
/tmp/rrd/ff-es-01/iwinfo-wlan1-dhcp-2/signal_power.rrd
/tmp/rrd/ff-es-01/iwinfo-wlan1-dhcp-2/bitrate.rrd
root@ff-es-01:/# df -h
Filesystem                Size      Used Available Use% Mounted on
/dev/root                 5.0M      5.0M         0 100% /rom
tmpfs                    60.8M      2.3M     58.5M   4% /tmp
/dev/mtdblock5            8.2M    416.0K      7.8M   5% /overlay
overlayfs:/overlay        8.2M    416.0K      7.8M   5% /
tmpfs                   512.0K         0    512.0K   0% /dev
pmelange commented 3 years ago

Please do opkg list-installed "rrd*"

Noki commented 3 years ago

rrdtool1 - 1.0.50-3

pmelange commented 3 years ago

ok, looks fine. how about find /tmp/rrdimg and find /etc/collectd*

Noki commented 3 years ago
root@ff-es-01:/# find /tmp/rrdimg
find: /tmp/rrdimg: No such file or directory
root@ff-es-01:/# find /etc/collectd*
/etc/collectd.conf
root@ff-es-01:/#
pmelange commented 3 years ago

Or maybe, if you trust me enough, put my public key on your device so I can take a look myself.


ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDbv8aJweuDFx34itdPpj7Okk2XcLyhIR2TVOoKlfbdGnVvXrPhblcd/Nt4INFv50/3USRmU90nTQnAdd/oniEaT3pM/ZaLz/quFa1aiP4Vu/+GlE9vEHinzimkOh7sHS8XlhC//WKHqb7tKDMW81A+YoR8A+uGjbv8pY8EzD/dATG9G2awj0erRAAXqx4CVMVxX75jKjKmf52iR8baoEjyw5zxhLHYEyAfcJ6k8q887+PeGfjswFtYx8qklx43PdfR7Fg6O+5ai111F6Lg5Yijl0iVKsIpIUKuUDiPAGWGPhPcktsQt8Cr7kbZEYB/tZ2mMJ1cXkWJ+r9MCxutFCJj pmelange@automaton```
Noki commented 3 years ago

@pmelange hinzugefügt.

pmelange commented 3 years ago

This is what I see when I load your node in my browser. No problem

Screenshot_2021-02-11_17-48-23

Noki commented 3 years ago

well. now I see it as well. should I flash it again with the image? ;-)

pmelange commented 3 years ago

No, but maybe a reboot (clears the memory) and try from your browser again. then I will try from mine. Maybe it is your browser settings or something like that.

Noki commented 3 years ago

ok, I'll reboot and try

Noki commented 3 years ago

well, still fine after the reboot. I don't understand this one at all and I am quite used to issues with browser caching and did everything to avoid that and even tried multiple devices.

pmelange commented 3 years ago

I really don't know what the problem was. If you feel like it, you could do firstboot -y; reboot and run the wizard again and see how it goes.

Noki commented 3 years ago

will do

Noki commented 3 years ago

Well, still works. I feel kind of crazy now and will close the issue for now. Remind me to buy you a beer / softdrink if we ever meet. I think I wasted enough of your time with this one. :-(