Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] Web app dosen't run probably a crash #282

Closed
rshxyz opened this issue Jun 6, 2022 · 9 comments
Closed

[BUG] Web app dosen't run probably a crash #282

rshxyz opened this issue Jun 6, 2022 · 9 comments
Labels
bug Something isn't working waiting for response

Comments

@rshxyz
Copy link

rshxyz commented Jun 6, 2022

Describe the bug
Can't reach the webapp GUI, I can reach the InfluxDB GUI which asks me to create a user

Expected behavior
Webapp dosen't run

Screenshots
If applicable, add screenshots to help explain your problem.

Log Files
cat web.log
time="2022-06-06T00:54:29Z" level=info msg="Trying to connect to scrutiny sqlite db: /opt/scrutiny/config/scrutiny.db\n"
time="2022-06-06T00:54:29Z" level=info msg="Successfully connected to scrutiny sqlite db: /opt/scrutiny/config/scrutiny.db\n"
time="2022-06-06T00:54:29Z" level=debug msg="InfluxDB url: http://localhost:8086"
time="2022-06-06T00:54:29Z" level=debug msg="Determine Influxdb setup status..."

cat failure.txt
sudo docker-compose up scrutiny-omnibus
Creating scrutiny-omnibus ... done
Attaching to scrutiny-omnibus
scrutiny-omnibus | [s6-init] making user provided files available at /var/run/s6/etc...exited 0.
scrutiny-omnibus | [s6-init] ensuring user provided files have correct perms...exited 0.
scrutiny-omnibus | [fix-attrs.d] applying ownership & permissions fixes...
scrutiny-omnibus | [fix-attrs.d] done.
scrutiny-omnibus | [cont-init.d] executing container initialization scripts...
scrutiny-omnibus | [cont-init.d] 01-timezone: executing...
scrutiny-omnibus | [cont-init.d] 01-timezone: exited 0.
scrutiny-omnibus | [cont-init.d] 50-cron-config: executing...
scrutiny-omnibus | [cont-init.d] 50-cron-config: exited 0.
scrutiny-omnibus | [cont-init.d] done.
scrutiny-omnibus | [services.d] starting services
scrutiny-omnibus | waiting for scrutiny service to start
scrutiny-omnibus | waiting for influxdb
scrutiny-omnibus | starting cron
scrutiny-omnibus | [services.d] done.
scrutiny-omnibus | influxdb config file already exists. skipping.
scrutiny-omnibus | starting influxdb
scrutiny-omnibus | scrutiny api not ready
scrutiny-omnibus | influxdb not ready
scrutiny-omnibus | ts=2022-06-06T00:53:00.384843Z lvl=info msg="Welcome to InfluxDB" log_id=0aucrNO0000 version=v2.2.0 commit=a2f8538837 build_date=2022-04-06T17:36:40Z
scrutiny-omnibus | ts=2022-06-06T00:53:00.385676Z lvl=info msg="Resources opened" log_id=0aucrNO0000 service=bolt path=/opt/scrutiny/influxdb/influxd.bolt
scrutiny-omnibus | ts=2022-06-06T00:53:00.385710Z lvl=info msg="Resources opened" log_id=0aucrNO0000 service=sqlite path=/opt/scrutiny/influxdb/influxd.sqlite
scrutiny-omnibus | ts=2022-06-06T00:53:00.388390Z lvl=info msg="Using data dir" log_id=0aucrNO0000 service=storage-engine service=store path=/opt/scrutiny/influxdb/engine/data
scrutiny-omnibus | ts=2022-06-06T00:53:00.388415Z lvl=info msg="Compaction settings" log_id=0aucrNO0000 service=storage-engine service=store max_concurrent_compactions=6 throughput_bytes_per_second=50331648 throughput_bytes_per_second_burst=50331648
scrutiny-omnibus | ts=2022-06-06T00:53:00.388426Z lvl=info msg="Open store (start)" log_id=0aucrNO0000 service=storage-engine service=store op_name=tsdb_open op_event=start
scrutiny-omnibus | ts=2022-06-06T00:53:00.388464Z lvl=info msg="Open store (end)" log_id=0aucrNO0000 service=storage-engine service=store op_name=tsdb_open op_event=end op_elapsed=0.042ms
scrutiny-omnibus | ts=2022-06-06T00:53:00.388483Z lvl=info msg="Starting retention policy enforcement service" log_id=0aucrNO0000 service=retention check_interval=30m
scrutiny-omnibus | ts=2022-06-06T00:53:00.388491Z lvl=info msg="Starting precreation service" log_id=0aucrNO0000 service=shard-precreation check_interval=10m advance_period=30m
scrutiny-omnibus | ts=2022-06-06T00:53:00.388939Z lvl=info msg="Starting query controller" log_id=0aucrNO0000 service=storage-reads concurrency_quota=1024 initial_memory_bytes_quota_per_query=9223372036854775807 memory_bytes_quota_per_query=9223372036854775807 max_memory_bytes=0 queue_size=1024
scrutiny-omnibus | ts=2022-06-06T00:53:00.389854Z lvl=info msg="Configuring InfluxQL statement executor (zeros indicate unlimited)." log_id=0aucrNO0000 max_select_point=0 max_select_series=0 max_select_buckets=0
scrutiny-omnibus | ts=2022-06-06T00:53:00.393539Z lvl=info msg=Listening log_id=0aucrNO0000 service=tcp-listener transport=http addr=:8086 port=8086
scrutiny-omnibus | scrutiny api not ready
scrutiny-omnibus | starting scrutiny
scrutiny-omnibus | 2022/06/06 00:53:05 No configuration file found at /opt/scrutiny/config/scrutiny.yaml. Using Defaults.
scrutiny-omnibus |
scrutiny-omnibus | ___ ___ ____ __ __ ____ ____ _ _ _ _
scrutiny-omnibus | / ) / )( _ ( )( )( )( )( ( )( / )
scrutiny-omnibus | _
( (
) / )(
)( )( )( ) ( \ /
scrutiny-omnibus | (
/ _)()_)() () ()()_) (__)
scrutiny-omnibus | github.com/AnalogJ/scrutiny dev-0.4.9
scrutiny-omnibus |
scrutiny-omnibus | Start the scrutiny server
scrutiny-omnibus | [GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production.
scrutiny-omnibus | - using env: export GIN_MODE=release
scrutiny-omnibus | - using code: gin.SetMode(gin.ReleaseMode)
scrutiny-omnibus |
scrutiny-omnibus | time="2022-06-06T00:53:05Z" level=info msg="Trying to connect to scrutiny sqlite db: /opt/scrutiny/config/scrutiny.db\n"
scrutiny-omnibus | time="2022-06-06T00:53:05Z" level=info msg="Successfully connected to scrutiny sqlite db: /opt/scrutiny/config/scrutiny.db\n"
scrutiny-omnibus | time="2022-06-06T00:53:05Z" level=debug msg="InfluxDB url: http://localhost:8086"
scrutiny-omnibus | time="2022-06-06T00:53:05Z" level=debug msg="Determine Influxdb setup status..."
scrutiny-omnibus | fatal error: unexpected signal during runtime execution
scrutiny-omnibus | [signal SIGSEGV: segmentation violation code=0x1 addr=0x63 pc=0x7f529538eef4]

  scrutiny-omnibus:
    container_name: scrutiny-omnibus
    hostname: scrutiny-omnibus
    image: ghcr.io/analogj/scrutiny:master-omnibus
    restart: unless-stopped
    ports:
      - "8082:8080" # webapp
      - "8086:8086" # influxDB admin
    environment:
      - PUID=1000 
      - PGID=1000 
      - UMASK=002 
      - TZ=Etc/UTC # timezone
      - DEBUG=true
      - COLLECTOR_LOG_FILE=/config/collector.log
      - SCRUTINY_LOG_FILE=/config/web.log
    volumes:
      - /home/UTC/docker/scrutiny-omnibus/config:/config:rw
      - /home/UTC/docker/scrutiny-omnibus/influxdb:/opt/scrutiny/influxdb:rw
      - /run/udev:/run/udev:ro
    cap_add:
      - SYS_RAWIO
      - SYS_ADMIN
    devices:
      - /dev/sda
      - /dev/sdb
      - /dev/sdc
      - /dev/sdd
      - /dev/nvme0
    privileged: false
    security_opt:
      - no-new-privileges=true


The log files will be available on your host in the config directory. Please attach them to this issue.

@rshxyz rshxyz added the bug Something isn't working label Jun 6, 2022
@rshxyz rshxyz changed the title [BUG] [BUG] Web app dosen't run probably a crash Jun 6, 2022
@AnalogJ
Copy link
Owner

AnalogJ commented Jun 6, 2022

can you paste the content of your config file?

@PhilipWhiteside
Copy link

I don't think there is a config file based on this line of the output.

scrutiny-omnibus | 2022/06/06 00:53:05 No configuration file found at /opt/scrutiny/config/scrutiny.yaml. Using Defaults.

I have the same issue on lates. I am using defaults (no config) also. Mine shows a bit more beyond what is shown above.

scrutiny  | Start the scrutiny server
scrutiny  | time="2022-06-06T05:33:07Z" level=info msg="Trying to connect to scrutiny sqlite db: /opt/scrutiny/config/scrutiny.db\n"
scrutiny  | time="2022-06-06T05:33:07Z" level=info msg="Successfully connected to scrutiny sqlite db: /opt/scrutiny/config/scrutiny.db\n"
scrutiny  | fatal error: unexpected signal during runtime execution
scrutiny  | [signal SIGSEGV: segmentation violation code=0x1 addr=0x63 pc=0x7fd964663ef4]
scrutiny  |
scrutiny  | runtime stack:
scrutiny  | runtime.throw({0xf7071b, 0x0})
scrutiny  |     /usr/local/go/src/runtime/panic.go:1198 +0x71
scrutiny  | runtime.sigpanic()
scrutiny  |     /usr/local/go/src/runtime/signal_unix.go:719 +0x396
scrutiny  |
scrutiny  | goroutine 23 [syscall]:
scrutiny  | runtime.cgocall(0xc0b7b0, 0xc000056d90)
scrutiny  |     /usr/local/go/src/runtime/cgocall.go:156 +0x5c fp=0xc000056d68 sp=0xc000056d30 pc=0x40555c
scrutiny  | net._C2func_getaddrinfo(0xc0003a5ac0, 0x0, 0xc0003e4180, 0xc00012f070)
scrutiny  |     _cgo_gotypes.go:91 +0x56 fp=0xc000056d90 sp=0xc000056d68 pc=0x58cbf6
scrutiny  | net.cgoLookupIPCNAME.func1({0xc0003a5ac0, 0x0, 0x0}, 0xc0003a59c0, 0xc000056e50)
scrutiny  |     /usr/local/go/src/net/cgo_unix.go:163 +0x9f fp=0xc000056de8 sp=0xc000056d90 pc=0x58e4bf
scrutiny  | net.cgoLookupIPCNAME({0xf4e53b, 0x3}, {0xc0003a59c0, 0x4})
scrutiny  |     /usr/local/go/src/net/cgo_unix.go:163 +0x16d fp=0xc000056f38 sp=0xc000056de8 pc=0x58dd0d
scrutiny  | net.cgoIPLookup(0x16b1f50, {0xf4e53b, 0xc0003a59d0}, {0xc0003a59c0, 0xc0001626e0})
scrutiny  |     /usr/local/go/src/net/cgo_unix.go:220 +0x3b fp=0xc000056fa8 sp=0xc000056f38 pc=0x58e57b
scrutiny  | net.cgoLookupIP·dwrap·25()
scrutiny  |     /usr/local/go/src/net/cgo_unix.go:230 +0x36 fp=0xc000056fe0 sp=0xc000056fa8 pc=0x58e9f6
scrutiny  | runtime.goexit()
scrutiny  |     /usr/local/go/src/runtime/asm_amd64.s:1581 +0x1 fp=0xc000056fe8 sp=0xc000056fe0 pc=0x465dc1
scrutiny  | created by net.cgoLookupIP
scrutiny  |     /usr/local/go/src/net/cgo_unix.go:230 +0x125
scrutiny  |
scrutiny  | goroutine 1 [select]:
scrutiny  | net/http.(*Transport).getConn(0x1645280, 0xc0003e0d80, {{}, 0x0, {0xc00019d170, 0x4}, {0xc0003a59c0, 0xe}, 0x0})
scrutiny  |     /usr/local/go/src/net/http/transport.go:1372 +0x5d2
scrutiny  | net/http.(*Transport).roundTrip(0x1645280, 0xc00013f300)
scrutiny  |     /usr/local/go/src/net/http/transport.go:581 +0x774
scrutiny  | net/http.(*Transport).RoundTrip(0x30, 0x1088b40)
scrutiny  |     /usr/local/go/src/net/http/roundtrip.go:18 +0x19
scrutiny  | net/http.send(0xc00013f300, {0x1088b40, 0x1645280}, {0xf23360, 0x1, 0x0})
scrutiny  |     /usr/local/go/src/net/http/client.go:252 +0x5d8
scrutiny  | net/http.(*Client).send(0x16b29c0, 0xc00013f300, {0xc00013f300, 0x2f, 0x0})
scrutiny  |     /usr/local/go/src/net/http/client.go:176 +0x9b
scrutiny  | net/http.(*Client).do(0x16b29c0, 0xc00013f300)
scrutiny  |     /usr/local/go/src/net/http/client.go:725 +0x908
scrutiny  | net/http.(*Client).Do(...)
scrutiny  |     /usr/local/go/src/net/http/client.go:593
scrutiny  | net/http.(*Client).Get(0xc000272ea0, {0xc00019d170, 0x15})
scrutiny  |     /usr/local/go/src/net/http/client.go:480 +0x6a
scrutiny  | net/http.Get(...)
scrutiny  |     /usr/local/go/src/net/http/client.go:449
scrutiny  | github.com/analogj/scrutiny/webapp/backend/pkg/database.InfluxSetupComplete({0xc00036ac90, 0xf69162})
scrutiny  |     /go/src/github.com/analogj/scrutiny/webapp/backend/pkg/database/scrutiny_repository.go:195 +0x69
scrutiny  | github.com/analogj/scrutiny/webapp/backend/pkg/database.NewScrutinyRepository({0x10b2100, 0xc00012ecc8}, {0x10bb7d0, 0xc0003de070})
scrutiny  |     /go/src/github.com/analogj/scrutiny/webapp/backend/pkg/database/scrutiny_repository.go:89 +0x547
scrutiny  | github.com/analogj/scrutiny/webapp/backend/pkg/web/middleware.RepositoryMiddleware({0x10b2100, 0xc00012ecc8}, {0x10bb7d0, 0xc0003de070})
scrutiny  |     /go/src/github.com/analogj/scrutiny/webapp/backend/pkg/web/middleware/repository.go:12 +0x31scrutiny  | github.com/analogj/scrutiny/webapp/backend/pkg/web.(*AppEngine).Setup(0xc0003d6600, {0x10bb7d0, 0xc0003de070})
scrutiny  |     /go/src/github.com/analogj/scrutiny/webapp/backend/pkg/web/server.go:27 +0xb4
scrutiny  | github.com/analogj/scrutiny/webapp/backend/pkg/web.(*AppEngine).Start(0xc0003d6600)
scrutiny  |     /go/src/github.com/analogj/scrutiny/webapp/backend/pkg/web/server.go:105 +0x46b
scrutiny  | main.main.func2(0xc0003b3c00)
scrutiny  |     /go/src/github.com/analogj/scrutiny/webapp/backend/cmd/scrutiny/scrutiny.go:112 +0x1f7
scrutiny  | github.com/urfave/cli/v2.(*Command).Run(0xc0003dc360, 0xc0003b3a80)
scrutiny  |     /go/src/github.com/analogj/scrutiny/vendor/github.com/urfave/cli/v2/command.go:164 +0x64a
scrutiny  | github.com/urfave/cli/v2.(*App).RunContext(0xc0002a6480, {0x109c3d0, 0xc000136000}, {0xc000132000, 0x2, 0x2})
scrutiny  |     /go/src/github.com/analogj/scrutiny/vendor/github.com/urfave/cli/v2/app.go:306 +0x926
scrutiny  | github.com/urfave/cli/v2.(*App).Run(...)
scrutiny  |     /go/src/github.com/analogj/scrutiny/vendor/github.com/urfave/cli/v2/app.go:215
scrutiny  | main.main()
scrutiny  |     /go/src/github.com/analogj/scrutiny/webapp/backend/cmd/scrutiny/scrutiny.go:137 +0x679
scrutiny  |
scrutiny  | goroutine 20 [select]:
scrutiny  | database/sql.(*DB).connectionOpener(0xc0003b4ea0, {0x109c398, 0xc0003e0b40})
scrutiny  |     /usr/local/go/src/database/sql/sql.go:1196 +0x93
scrutiny  | created by database/sql.OpenDB
scrutiny  |     /usr/local/go/src/database/sql/sql.go:794 +0x188
scrutiny  |
scrutiny  | goroutine 21 [select]:
scrutiny  | net.(*Resolver).lookupIPAddr(0x16b1f40, {0x109c408, 0xc000131260}, {0xf4e53b, 0xc0003e2460}, {0xc0003a59c0, 0x9})
scrutiny  |     /usr/local/go/src/net/lookup.go:302 +0x5c7
scrutiny  | net.(*Resolver).internetAddrList(0x109c408, {0x109c408, 0xc000131260}, {0xf4e53b, 0x3}, {0xc0003a59c0, 0xe})scrutiny  |     /usr/local/go/src/net/ipsock.go:288 +0x67a
scrutiny  | net.(*Resolver).resolveAddrList(0x16eb080, {0x109c408, 0xc000131260}, {0xf4ebe9, 0x4}, {0xf4e53b, 0x7fd964fbf090}, {0xc0003a59c0, 0xe}, {0x0, ...})
scrutiny  |     /usr/local/go/src/net/dial.go:221 +0x41b
scrutiny  | net.(*Dialer).DialContext(0xc000130240, {0x109c3d0, 0xc000136000}, {0xf4e53b, 0x7fd96473f190}, {0xc0003a59c0, 0x118})
scrutiny  |     /usr/local/go/src/net/dial.go:406 +0x448
scrutiny  | net/http.(*Transport).dial(0xf251e0, {0x109c3d0, 0xc000136000}, {0xf4e53b, 0xdc4280}, {0xc0003a59c0, 0x8})
scrutiny  |     /usr/local/go/src/net/http/transport.go:1166 +0xda
scrutiny  | net/http.(*Transport).dialConn(0x1645280, {0x109c3d0, 0xc000136000}, {{}, 0x0, {0xc00019d170, 0x4}, {0xc0003a59c0, 0xe}, 0x0})
scrutiny  |     /usr/local/go/src/net/http/transport.go:1604 +0x845
scrutiny  | net/http.(*Transport).dialConnFor(0x0, 0xc0001626e0)
scrutiny  |     /usr/local/go/src/net/http/transport.go:1446 +0xb0
scrutiny  | created by net/http.(*Transport).queueForDial
scrutiny  |     /usr/local/go/src/net/http/transport.go:1415 +0x3d7
scrutiny  |
scrutiny  | goroutine 22 [select]:
scrutiny  | net.cgoLookupIP({0x109c398, 0xc0003e0e00}, {0xf4e53b, 0x9}, {0xc0003a59c0, 0x0})
scrutiny  |     /usr/local/go/src/net/cgo_unix.go:231 +0x1b7
scrutiny  | net.(*Resolver).lookupIP(0x16b1f40, {0x109c398, 0xc0003e0e00}, {0xf4e53b, 0x3}, {0xc0003a59c0, 0x9})
scrutiny  |     /usr/local/go/src/net/lookup_unix.go:97 +0x128
scrutiny  | net.glob..func1({0x109c398, 0xc0003e0e00}, 0x0, {0xf4e53b, 0x0}, {0xc0003a59c0, 0x70fd90})
scrutiny  |     /usr/local/go/src/net/hook.go:23 +0x3d
scrutiny  | net.(*Resolver).lookupIPAddr.func1()
scrutiny  |     /usr/local/go/src/net/lookup.go:296 +0x9f
scrutiny  | internal/singleflight.(*Group).doCall(0x16b1f50, 0xc0003e24b0, {0xc0003a59d0, 0xd}, 0xc0001626e0)
scrutiny  |     /usr/local/go/src/internal/singleflight/singleflight.go:95 +0x3b
scrutiny  | created by internal/singleflight.(*Group).DoChan
scrutiny  |     /usr/local/go/src/internal/singleflight/singleflight.go:88 +0x2f1

@AnalogJ
Copy link
Owner

AnalogJ commented Jun 6, 2022

@PhilipWhiteside @rshxyz
what is your host OS and architecture?

@calvinbui
Copy link

same thing happening for me, Ubuntu x64

@PhilipWhiteside
Copy link

@PhilipWhiteside @rshxyz what is your host OS and architecture?

  • OS: NixOS 22.05
  • Kernel: 5.15.29
  • Architecture: x86_64

@PhilipWhiteside
Copy link

PhilipWhiteside commented Jun 7, 2022

I retried with the sample docker-compose that has separate containers, to confirm which part has the problem, which shows it being the web component.

nas ➜  scrutiny dc up 
[+] Running 4/4
 ⠿ Network scrutiny_default        Created                                                                                                                                                                      0.1s
 ⠿ Container scrutiny-influxdb-1   Created                                                                                                                                                                      0.2s
 ⠿ Container scrutiny-web-1        Created                                                                                                                                                                      0.1s
 ⠿ Container scrutiny-collector-1  Created                                                                                                                                                                      0.1s
Attaching to scrutiny-collector-1, scrutiny-influxdb-1, scrutiny-web-1
scrutiny-influxdb-1   | Command "print-config" is deprecated, use the influx-cli command server-config to display the configuration values from the running server
scrutiny-influxdb-1   | Command "print-config" is deprecated, use the influx-cli command server-config to display the configuration values from the running server
scrutiny-influxdb-1   | Command "print-config" is deprecated, use the influx-cli command server-config to display the configuration values from the running server
scrutiny-influxdb-1   | 2022-06-07T18:51:26.563652991Z	warn	boltdb not found at configured path, but DOCKER_INFLUXDB_INIT_MODE not specified, skipping setup wrapper	{"system": "docker", "bolt_path": ""}
scrutiny-influxdb-1   | Command "print-config" is deprecated, use the influx-cli command server-config to display the configuration values from the running server
scrutiny-influxdb-1   | Command "print-config" is deprecated, use the influx-cli command server-config to display the configuration values from the running server
scrutiny-influxdb-1   | Command "print-config" is deprecated, use the influx-cli command server-config to display the configuration values from the running server
scrutiny-influxdb-1   | 2022-06-07T18:51:26.803200220Z	warn	boltdb not found at configured path, but DOCKER_INFLUXDB_INIT_MODE not specified, skipping setup wrapper	{"system": "docker", "bolt_path": ""}
scrutiny-influxdb-1   | ts=2022-06-07T18:51:26.984328Z lvl=info msg="Welcome to InfluxDB" log_id=0awsyBXW000 version=v2.2.0 commit=a2f8538837 build_date=2022-04-06T17:36:40Z
scrutiny-influxdb-1   | ts=2022-06-07T18:51:26.984380Z lvl=warn msg="nats-port argument is deprecated and unused" log_id=0awsyBXW000
scrutiny-influxdb-1   | ts=2022-06-07T18:51:27.006719Z lvl=info msg="Resources opened" log_id=0awsyBXW000 service=bolt path=/var/lib/influxdb2/influxd.bolt
scrutiny-influxdb-1   | ts=2022-06-07T18:51:27.007143Z lvl=info msg="Resources opened" log_id=0awsyBXW000 service=sqlite path=/var/lib/influxdb2/influxd.sqlite
scrutiny-influxdb-1   | ts=2022-06-07T18:51:27.021921Z lvl=info msg="Bringing up metadata migrations" log_id=0awsyBXW000 service="KV migrations" migration_count=19
scrutiny-influxdb-1   | ts=2022-06-07T18:51:28.213153Z lvl=info msg="Bringing up metadata migrations" log_id=0awsyBXW000 service="SQL migrations" migration_count=5
scrutiny-influxdb-1   | ts=2022-06-07T18:51:28.311501Z lvl=info msg="Using data dir" log_id=0awsyBXW000 service=storage-engine service=store path=/var/lib/influxdb2/engine/data
scrutiny-influxdb-1   | ts=2022-06-07T18:51:28.311810Z lvl=info msg="Compaction settings" log_id=0awsyBXW000 service=storage-engine service=store max_concurrent_compactions=3 throughput_bytes_per_second=50331648 throughput_bytes_per_second_burst=50331648
scrutiny-influxdb-1   | ts=2022-06-07T18:51:28.311845Z lvl=info msg="Open store (start)" log_id=0awsyBXW000 service=storage-engine service=store op_name=tsdb_open op_event=start
scrutiny-influxdb-1   | ts=2022-06-07T18:51:28.312018Z lvl=info msg="Open store (end)" log_id=0awsyBXW000 service=storage-engine service=store op_name=tsdb_open op_event=end op_elapsed=0.174ms
scrutiny-influxdb-1   | ts=2022-06-07T18:51:28.312382Z lvl=info msg="Starting retention policy enforcement service" log_id=0awsyBXW000 service=retention check_interval=30m
scrutiny-influxdb-1   | ts=2022-06-07T18:51:28.312409Z lvl=info msg="Starting precreation service" log_id=0awsyBXW000 service=shard-precreation check_interval=10m advance_period=30m
scrutiny-influxdb-1   | ts=2022-06-07T18:51:28.315578Z lvl=info msg="Starting query controller" log_id=0awsyBXW000 service=storage-reads concurrency_quota=1024 initial_memory_bytes_quota_per_query=9223372036854775807 memory_bytes_quota_per_query=9223372036854775807 max_memory_bytes=0 queue_size=1024
scrutiny-influxdb-1   | ts=2022-06-07T18:51:28.321874Z lvl=info msg="Configuring InfluxQL statement executor (zeros indicate unlimited)." log_id=0awsyBXW000 max_select_point=0 max_select_series=0 max_select_buckets=0
scrutiny-influxdb-1   | ts=2022-06-07T18:51:28.368928Z lvl=info msg=Starting log_id=0awsyBXW000 service=telemetry interval=8h
scrutiny-influxdb-1   | ts=2022-06-07T18:51:28.369476Z lvl=info msg=Listening log_id=0awsyBXW000 service=tcp-listener transport=http addr=:8086 port=8086
scrutiny-web-1        | 2022/06/07 18:51:32 No configuration file found at /opt/scrutiny/config/scrutiny.yaml. Using Defaults.
scrutiny-web-1        | 
scrutiny-web-1        |  ___   ___  ____  __  __  ____  ____  _  _  _  _
scrutiny-web-1        | / __) / __)(  _ \(  )(  )(_  _)(_  _)( \( )( \/ )
scrutiny-web-1        | \__ \( (__  )   / )(__)(   )(   _)(_  )  (  \  /
scrutiny-web-1        | (___/ \___)(_)\_)(______) (__) (____)(_)\_) (__)
scrutiny-web-1        | github.com/AnalogJ/scrutiny                             dev-0.4.9
scrutiny-web-1        | 
scrutiny-web-1        | Start the scrutiny server
scrutiny-web-1        | time="2022-06-07T18:51:32Z" level=info msg="Trying to connect to scrutiny sqlite db: /opt/scrutiny/config/scrutiny.db\n"
scrutiny-web-1        | time="2022-06-07T18:51:32Z" level=info msg="Successfully connected to scrutiny sqlite db: /opt/scrutiny/config/scrutiny.db\n"
scrutiny-web-1        | fatal error: unexpected signal during runtime execution
scrutiny-web-1        | [signal SIGSEGV: segmentation violation code=0x1 addr=0x63 pc=0x7f4b6cb80ef4]
scrutiny-web-1        | 
scrutiny-web-1        | runtime stack:
scrutiny-web-1        | runtime.throw({0xf7071b, 0x0})
scrutiny-web-1        | 	/usr/local/go/src/runtime/panic.go:1198 +0x71
scrutiny-web-1        | runtime.sigpanic()
scrutiny-web-1        | 	/usr/local/go/src/runtime/signal_unix.go:719 +0x396
scrutiny-web-1        | 
scrutiny-web-1        | goroutine 21 [syscall]:
scrutiny-web-1        | runtime.cgocall(0xc0b7b0, 0xc000054590)
scrutiny-web-1        | 	/usr/local/go/src/runtime/cgocall.go:156 +0x5c fp=0xc000054568 sp=0xc000054530 pc=0x40555c
scrutiny-web-1        | net._C2func_getaddrinfo(0xc00011b020, 0x0, 0xc00041b020, 0xc000116418)
scrutiny-web-1        | 	_cgo_gotypes.go:91 +0x56 fp=0xc000054590 sp=0xc000054568 pc=0x58cbf6
scrutiny-web-1        | net.cgoLookupIPCNAME.func1({0xc00011b020, 0x0, 0x0}, 0xc00011af20, 0xc000054650)
scrutiny-web-1        | 	/usr/local/go/src/net/cgo_unix.go:163 +0x9f fp=0xc0000545e8 sp=0xc000054590 pc=0x58e4bf
scrutiny-web-1        | net.cgoLookupIPCNAME({0xf4e53b, 0x3}, {0xc00011af20, 0x4})
scrutiny-web-1        | 	/usr/local/go/src/net/cgo_unix.go:163 +0x16d fp=0xc000054738 sp=0xc0000545e8 pc=0x58dd0d
scrutiny-web-1        | net.cgoIPLookup(0x16b1f50, {0xf4e53b, 0xc00011af30}, {0xc00011af20, 0xc0001342c0})
scrutiny-web-1        | 	/usr/local/go/src/net/cgo_unix.go:220 +0x3b fp=0xc0000547a8 sp=0xc000054738 pc=0x58e57b
scrutiny-web-1        | net.cgoLookupIP·dwrap·25()
scrutiny-web-1        | 	/usr/local/go/src/net/cgo_unix.go:230 +0x36 fp=0xc0000547e0 sp=0xc0000547a8 pc=0x58e9f6
scrutiny-web-1        | runtime.goexit()
scrutiny-web-1        | 	/usr/local/go/src/runtime/asm_amd64.s:1581 +0x1 fp=0xc0000547e8 sp=0xc0000547e0 pc=0x465dc1
scrutiny-web-1        | created by net.cgoLookupIP
scrutiny-web-1        | 	/usr/local/go/src/net/cgo_unix.go:230 +0x125
scrutiny-web-1        | 
scrutiny-web-1        | goroutine 1 [select]:
scrutiny-web-1        | net/http.(*Transport).getConn(0x1645280, 0xc00041c3c0, {{}, 0x0, {0xc000112180, 0x4}, {0xc00011af20, 0xd}, 0x0})
scrutiny-web-1        | 	/usr/local/go/src/net/http/transport.go:1372 +0x5d2
scrutiny-web-1        | net/http.(*Transport).roundTrip(0x1645280, 0xc000120500)
scrutiny-web-1        | 	/usr/local/go/src/net/http/transport.go:581 +0x774
scrutiny-web-1        | net/http.(*Transport).RoundTrip(0x30, 0x1088b40)
scrutiny-web-1        | 	/usr/local/go/src/net/http/roundtrip.go:18 +0x19
scrutiny-web-1        | net/http.send(0xc000120500, {0x1088b40, 0x1645280}, {0xf23360, 0x1, 0x0})
scrutiny-web-1        | 	/usr/local/go/src/net/http/client.go:252 +0x5d8
scrutiny-web-1        | net/http.(*Client).send(0x16b29c0, 0xc000120500, {0xc000120500, 0x2f, 0x0})
scrutiny-web-1        | 	/usr/local/go/src/net/http/client.go:176 +0x9b
scrutiny-web-1        | net/http.(*Client).do(0x16b29c0, 0xc000120500)
scrutiny-web-1        | 	/usr/local/go/src/net/http/client.go:725 +0x908
scrutiny-web-1        | net/http.(*Client).Do(...)
scrutiny-web-1        | 	/usr/local/go/src/net/http/client.go:593
scrutiny-web-1        | net/http.(*Client).Get(0xc00015a5a0, {0xc000112180, 0x14})
scrutiny-web-1        | 	/usr/local/go/src/net/http/client.go:480 +0x6a
scrutiny-web-1        | net/http.Get(...)
scrutiny-web-1        | 	/usr/local/go/src/net/http/client.go:449
scrutiny-web-1        | github.com/analogj/scrutiny/webapp/backend/pkg/database.InfluxSetupComplete({0xc00011e6c0, 0xf69162})
scrutiny-web-1        | 	/go/src/github.com/analogj/scrutiny/webapp/backend/pkg/database/scrutiny_repository.go:195 +0x69
scrutiny-web-1        | github.com/analogj/scrutiny/webapp/backend/pkg/database.NewScrutinyRepository({0x10b2100, 0xc000116078}, {0x10bb7d0, 0xc00017c460})
scrutiny-web-1        | 	/go/src/github.com/analogj/scrutiny/webapp/backend/pkg/database/scrutiny_repository.go:89 +0x547
scrutiny-web-1        | github.com/analogj/scrutiny/webapp/backend/pkg/web/middleware.RepositoryMiddleware({0x10b2100, 0xc000116078}, {0x10bb7d0, 0xc00017c460})
scrutiny-web-1        | 	/go/src/github.com/analogj/scrutiny/webapp/backend/pkg/web/middleware/repository.go:12 +0x31
scrutiny-web-1        | github.com/analogj/scrutiny/webapp/backend/pkg/web.(*AppEngine).Setup(0xc000115200, {0x10bb7d0, 0xc00017c460})
scrutiny-web-1        | 	/go/src/github.com/analogj/scrutiny/webapp/backend/pkg/web/server.go:27 +0xb4
scrutiny-web-1        | github.com/analogj/scrutiny/webapp/backend/pkg/web.(*AppEngine).Start(0xc000115200)
scrutiny-web-1        | 	/go/src/github.com/analogj/scrutiny/webapp/backend/pkg/web/server.go:105 +0x46b
scrutiny-web-1        | main.main.func2(0xc00011d240)
scrutiny-web-1        | 	/go/src/github.com/analogj/scrutiny/webapp/backend/cmd/scrutiny/scrutiny.go:112 +0x1f7
scrutiny-web-1        | github.com/urfave/cli/v2.(*Command).Run(0xc000402240, 0xc00011d0c0)
scrutiny-web-1        | 	/go/src/github.com/analogj/scrutiny/vendor/github.com/urfave/cli/v2/command.go:164 +0x64a
scrutiny-web-1        | github.com/urfave/cli/v2.(*App).RunContext(0xc000404000, {0x109c3d0, 0xc00003c020}, {0xc000032040, 0x2, 0x2})
scrutiny-web-1        | 	/go/src/github.com/analogj/scrutiny/vendor/github.com/urfave/cli/v2/app.go:306 +0x926
scrutiny-web-1        | github.com/urfave/cli/v2.(*App).Run(...)
scrutiny-web-1        | 	/go/src/github.com/analogj/scrutiny/vendor/github.com/urfave/cli/v2/app.go:215
scrutiny-web-1        | main.main()
scrutiny-web-1        | 	/go/src/github.com/analogj/scrutiny/webapp/backend/cmd/scrutiny/scrutiny.go:137 +0x679
scrutiny-web-1        | 
scrutiny-web-1        | goroutine 18 [select]:
scrutiny-web-1        | database/sql.(*DB).connectionOpener(0xc0001229c0, {0x109c398, 0xc00041c180})
scrutiny-web-1        | 	/usr/local/go/src/database/sql/sql.go:1196 +0x93
scrutiny-web-1        | created by database/sql.OpenDB
scrutiny-web-1        | 	/usr/local/go/src/database/sql/sql.go:794 +0x188
scrutiny-web-1        | 
scrutiny-web-1        | goroutine 19 [select]:
scrutiny-web-1        | net.(*Resolver).lookupIPAddr(0x16b1f40, {0x109c408, 0xc00010ede0}, {0xf4e53b, 0xc000124fa0}, {0xc00011af20, 0x8})
scrutiny-web-1        | 	/usr/local/go/src/net/lookup.go:302 +0x5c7
scrutiny-web-1        | net.(*Resolver).internetAddrList(0x109c408, {0x109c408, 0xc00010ede0}, {0xf4e53b, 0x3}, {0xc00011af20, 0xd})
scrutiny-web-1        | 	/usr/local/go/src/net/ipsock.go:288 +0x67a
scrutiny-web-1        | net.(*Resolver).resolveAddrList(0x16eb080, {0x109c408, 0xc00010ede0}, {0xf4ebe9, 0x4}, {0xf4e53b, 0x0}, {0xc00011af20, 0xd}, {0x0, ...})
scrutiny-web-1        | 	/usr/local/go/src/net/dial.go:221 +0x41b
scrutiny-web-1        | net.(*Dialer).DialContext(0xc0000822a0, {0x109c3d0, 0xc00003c020}, {0xf4e53b, 0x7f4b9617d0d8}, {0xc00011af20, 0x118})
scrutiny-web-1        | 	/usr/local/go/src/net/dial.go:406 +0x448
scrutiny-web-1        | net/http.(*Transport).dial(0x0, {0x109c3d0, 0xc00003c020}, {0xf4e53b, 0x0}, {0xc00011af20, 0x0})
scrutiny-web-1        | 	/usr/local/go/src/net/http/transport.go:1166 +0xda
scrutiny-web-1        | net/http.(*Transport).dialConn(0x1645280, {0x109c3d0, 0xc00003c020}, {{}, 0x0, {0xc000112180, 0x4}, {0xc00011af20, 0xd}, 0x0})
scrutiny-web-1        | 	/usr/local/go/src/net/http/transport.go:1604 +0x845
scrutiny-web-1        | net/http.(*Transport).dialConnFor(0x0, 0xc0001342c0)
scrutiny-web-1        | 	/usr/local/go/src/net/http/transport.go:1446 +0xb0
scrutiny-web-1        | created by net/http.(*Transport).queueForDial
scrutiny-web-1        | 	/usr/local/go/src/net/http/transport.go:1415 +0x3d7
scrutiny-web-1        | 
scrutiny-web-1        | goroutine 20 [select]:
scrutiny-web-1        | net.cgoLookupIP({0x109c398, 0xc00041c440}, {0xf4e53b, 0x8}, {0xc00011af20, 0x0})
scrutiny-web-1        | 	/usr/local/go/src/net/cgo_unix.go:231 +0x1b7
scrutiny-web-1        | net.(*Resolver).lookupIP(0x16b1f40, {0x109c398, 0xc00041c440}, {0xf4e53b, 0x3}, {0xc00011af20, 0x8})
scrutiny-web-1        | 	/usr/local/go/src/net/lookup_unix.go:97 +0x128
scrutiny-web-1        | net.glob..func1({0x109c398, 0xc00041c440}, 0x0, {0xf4e53b, 0x0}, {0xc00011af20, 0x70fd90})
scrutiny-web-1        | 	/usr/local/go/src/net/hook.go:23 +0x3d
scrutiny-web-1        | net.(*Resolver).lookupIPAddr.func1()
scrutiny-web-1        | 	/usr/local/go/src/net/lookup.go:296 +0x9f
scrutiny-web-1        | internal/singleflight.(*Group).doCall(0x16b1f50, 0xc000124ff0, {0xc00011af30, 0xc}, 0xc0001342c0)
scrutiny-web-1        | 	/usr/local/go/src/internal/singleflight/singleflight.go:95 +0x3b
scrutiny-web-1        | created by internal/singleflight.(*Group).DoChan
scrutiny-web-1        | 	/usr/local/go/src/internal/singleflight/singleflight.go:88 +0x2f1
scrutiny-web-1 exited with code 2

The release binary runs on the host system. At least the usage info from it. As shown by the error below I haven't setup the other components for this test, just checking compatibility of the go build.

nas ➜  scrutiny ./scrutiny-web-linux-amd64 
2022/06/07 19:53:51 No configuration file found at /opt/scrutiny/config/scrutiny.yaml. Using Defaults.

 ___   ___  ____  __  __  ____  ____  _  _  _  _
/ __) / __)(  _ \(  )(  )(_  _)(_  _)( \( )( \/ )
\__ \( (__  )   / )(__)(   )(   _)(_  )  (  \  /
(___/ \___)(_)\_)(______) (__) (____)(_)\_) (__)
github.com/AnalogJ/scrutiny                     linux.amd64-0.4.9

NAME:
   scrutiny - WebUI for smartd S.M.A.R.T monitoring

USAGE:
   scrutiny-web-linux-amd64 [global options] command [command options] [arguments...]

VERSION:
   0.4.9

AUTHOR:
   Jason Kulatunga <jason@thesparktree.com>

COMMANDS:
   start    Start the scrutiny server
   help, h  Shows a list of commands or help for one command

GLOBAL OPTIONS:
   --help, -h     show help (default: false)
   --version, -v  print the version (default: false)
nas ➜  scrutiny 
nas ➜  scrutiny ./scrutiny-web-linux-amd64 start
2022/06/07 19:54:19 No configuration file found at /opt/scrutiny/config/scrutiny.yaml. Using Defaults.

 ___   ___  ____  __  __  ____  ____  _  _  _  _
/ __) / __)(  _ \(  )(  )(_  _)(_  _)( \( )( \/ )
\__ \( (__  )   / )(__)(   )(   _)(_  )  (  \  /
(___/ \___)(_)\_)(______) (__) (____)(_)\_) (__)
github.com/AnalogJ/scrutiny                     linux.amd64-0.4.9

Start the scrutiny server
FATA[0000] ERROR: ConfigValidationError: "Database parent directory does not exist. Please check path (/opt/scrutiny/config)" 
nas ➜  scrutiny 

@rshxyz
Copy link
Author

rshxyz commented Jun 8, 2022

@AnalogJ
Kind of forgot about this my bad, using default config that is created

Operating System: Fedora Linux 35 (Workstation Edition)
CPE OS Name: cpe:/o:fedoraproject:fedora:35
Kernel: Linux 5.17.11-200.fc35.x86_64
Architecture: x86-64

@AnalogJ
Copy link
Owner

AnalogJ commented Jun 8, 2022

This looks very similar to #281 and I'm going to close this issue as a dupe of that issue.

I'll copy paste a comment below from that issue with my current thought process. Please follow up in that thread with any updates.


Sorry everyone, this is incredibly difficult to debug without a way to reproduce.

So there's 2 things that I'm currently investigating as possible root-causes:

  1. the go binaries are compiled in a golang:1.17.10-buster image while the runtime container is based on ubuntu:latest. While the binaries are supposed to be statically compiled, IIRC they still use the system glibc, which will be different in different OS versions. The weird thing is that an issue with incompatible glibc versions should cause issues for everyone, not just some users.
  2. It could be related to static compilation + CGO + DNS: https://engineering.grab.com/dns-resolution-in-go-and-cgo

While I investigate further, can those of you running into this issue run the following command and paste the output as a comment: docker info

Thanks for your patience!

@AnalogJ AnalogJ closed this as completed Jun 8, 2022
@martadinata666
Copy link

martadinata666 commented Jun 11, 2022

So for jammy there is some break changes that silently happen, in my experience.

  1. Docker version min 20.10.10+ some seccomp thing
  2. it uses libssl3, on new installation and need libssl1.1 manually installed.

I dont know how this impact on go based applications, just some reference may affect jammy base image.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working waiting for response
Projects
None yet
Development

No branches or pull requests

5 participants