Skip to content

[BUG] interface conversion: interface {} is nil, not int64 #523

@Cyberes

Description

@Cyberes

After about a month of collecting data it becomes impossible to load the metrics due to a 500 internal server error.

This has been a long-running issue and affects on Docker as well. I also tried building from source using commit 4b1d9dc2d3f5388440a6746c3bdce2b8e2bee91e. The only way to fix this is to nuke the InfluxDB database.

Metrics seem to be collected fine (as seen in the "last updated" field next to each disk), so the issue must be with displaying them as an error is thrown when I click a drive to view its metrics.

Log Files

Oct 02 16:04:21 scrutiny scrutiny-web[1318491]: 2023/10/02 16:04:21 [Recovery] 2023/10/02 - 16:04:21 panic recovered:
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]: interface conversion: interface {} is nil, not int64
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]: /usr/local/go/src/runtime/iface.go:263 (0x40dba4)
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]:         panicdottypeE: panic(&TypeAssertionError{iface, have, want, ""})
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]: /home/username/scrutiny/webapp/backend/pkg/models/measurements/smart.go:69 (0x83b6ed)
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]: /home/username/scrutiny/webapp/backend/pkg/database/scrutiny_repository_device_smart_attributes.go:54 (0xc22ebb)
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]: /home/username/scrutiny/webapp/backend/pkg/web/handler/get_device_details.go:27 (0xdbdeca)
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]: /home/username/scrutiny/vendor/github.com/gin-gonic/gin/context.go:161 (0xd821d3)
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]: /home/username/scrutiny/vendor/github.com/gin-gonic/gin/recovery.go:83 (0xd821c1)
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]: /home/username/scrutiny/vendor/github.com/gin-gonic/gin/context.go:161 (0xd77f0a)
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]: /home/username/scrutiny/webapp/backend/pkg/web/middleware/config.go:11 (0xdc4944)
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]: /home/username/scrutiny/vendor/github.com/gin-gonic/gin/context.go:161 (0xdc33b9)
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]: /home/username/scrutiny/webapp/backend/pkg/web/middleware/repository.go:29 (0xdc33a7)
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]: /home/username/scrutiny/vendor/github.com/gin-gonic/gin/context.go:161 (0xdc23b4)
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]: /home/username/scrutiny/webapp/backend/pkg/web/middleware/logger.go:56 (0xdc2399)
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]: /home/username/scrutiny/vendor/github.com/gin-gonic/gin/context.go:161 (0xd81208)
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]: /home/username/scrutiny/vendor/github.com/gin-gonic/gin/gin.go:409 (0xd80e62)
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]: /home/username/scrutiny/vendor/github.com/gin-gonic/gin/gin.go:367 (0xd809b3)
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]: /usr/local/go/src/net/http/server.go:2938 (0x77b6ad)
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]:         serverHandler.ServeHTTP: handler.ServeHTTP(rw, req)
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]: /usr/local/go/src/net/http/server.go:2009 (0x777593)
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]:         (*conn).serve: serverHandler{c.server}.ServeHTTP(w, w.req)
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]: /usr/local/go/src/runtime/asm_amd64.s:1650 (0x46b0a0)
Oct 02 16:04:21 scrutiny scrutiny-web[1318491]:         goexit: BYTE        $0x90        // NOP

InfluxDB is created with:

docker run -d --restart=always -p 8086:8086 \
  --network="host" \
  -v /var/docker-data/influxdb2:/var/lib/influxdb2 \
  --name influxdb \
  influxdb:2.2

I run the web dashboard in an LXC container which all my hosts send their data to.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions