Installing and Configuring SigNoz Agent on Ubuntu 20.04

TLDR Happy asks for guidance on installing SigNoz Agent, Srikanth provides resources and suggestions. The binary failed to execute, Srikanth recommended creating an issue in the repo. Prashant tried to reproduce the issue but couldn't.

Photo of Happy
Happy
Fri, 09 Jun 2023 21:58:33 UTC

Kind of dumb question, but how do you install agents on machines that you want to monitor, and send data to Signoz installation? Or do I just need to install prometheus agent?

Photo of Srikanth
Srikanth
Sat, 10 Jun 2023 01:40:09 UTC

Run signoz collector either as binary or docker on the machine . Use `hostmetrics` receiver.

Photo of Happy
Happy
Sat, 10 Jun 2023 07:21:03 UTC

"" doesn't install using apt

Photo of Happy
Happy
Sat, 10 Jun 2023 07:21:34 UTC

"make" on source fails with "cannot load crypto/ecdh: malformed module path "crypto/ecdh": missing dot in first path element"

Photo of Happy
Happy
Sat, 10 Jun 2023 07:23:18 UTC

NVM, you said binary. My bad.

Photo of Happy
Happy
Sat, 10 Jun 2023 07:33:24 UTC

Srikanth Man, you guys really need to have atleast hostmetrics end to end setup guide. Now the binary doesn't start, and my guess would be it needs a config file. I am trying to run this as binary file using ./signoz-collector_0.76.2_linux_amd64 Can I have a sample resource file to go with it, and where to put it? Same folder as binary? Does this collector works as Prometheus (pull model) or DataDog Agent (push model)? If it's a pull model do I need to configure the Signoz Host to pull from this collector? Or if it's a push model, this collector will automatically start sending metrics to Host after config is provided?

Photo of Srikanth
Srikanth
Sat, 10 Jun 2023 07:36:28 UTC

hostmetrics is enabled by default.

Photo of Srikanth
Srikanth
Sat, 10 Jun 2023 07:36:44 UTC

Photo of Srikanth
Srikanth
Sat, 10 Jun 2023 08:25:58 UTC

It’s a push model and you need to use the otlp exporter to send data.

Photo of Happy
Happy
Sat, 10 Jun 2023 09:03:58 UTC

Fantastic. Can you now help me please with where to put that config file?

Photo of Happy
Happy
Sat, 10 Jun 2023 09:04:08 UTC

```~/temp# ./signoz-collector_0.76.2_linux_amd64 signoz-collector_0.76.2_linux_amd64: dl-call-libc-early-init.c:37: _dl_call_libc_early_init: Assertion `sym != NULL' failed. SIGABRT: abort PC=0x3e09d3b m=0 sigcode=18446744073709551610 signal arrived during cgo execution goroutine 1 [syscall, locked to thread]: runtime.cgocall(0x3d241b0, 0xc0002def50) /usr/local/go/src/runtime/cgocall.go:157 +0x5c fp=0xc0002def28 sp=0xc0002deef0 pc=0x405a5c os/user._Cfunc_mygetpwuid_r(0x0, 0xc0003243c0, 0x46, 0xc000357028, 0xc00035702c) _cgo_gotypes.go:159 +0x65 fp=0xc0002def50 sp=0xc0002def28 pc=0xcd5985 os/user._C_getpwuid_r(0x0?, 0xc0002df080?, 0x40fa48?) /usr/local/go/src/os/user/cgo_lookup_cgo.go:91 +0xa5 fp=0xc0002df010 sp=0xc0002def50 pc=0xcd5b25 os/user.lookupUnixUid.func1({0xc0003243c0?, 0x33?, 0xc0002df0e0?}) /usr/local/go/src/os/user/cgo_lookup_unix.go:57 +0x65 fp=0xc0002df0b8 sp=0xc0002df010 pc=0xcd52c5 os/user.retryWithBuffer(0x506a83a8?, 0xc0002df178) /usr/local/go/src/os/user/cgo_lookup_unix.go:171 +0x69 fp=0xc0002df118 sp=0xc0002df0b8 pc=0xcd5649 os/user.lookupUnixUid(0x0) /usr/local/go/src/os/user/cgo_lookup_unix.go:55 +0x94 fp=0xc0002df1d8 sp=0xc0002df118 pc=0xcd5154 os/user.current() /usr/local/go/src/os/user/cgo_lookup_unix.go:19 +0x47 fp=0xc0002df218 sp=0xc0002df1d8 pc=0xcd5047 os/user.Current.func1() /usr/local/go/src/os/user/lookup.go:22 +0x17 fp=0xc0002df228 sp=0xc0002df218 pc=0xcd5bf7 sync.(*Once).doSlow(0xc0002df2f0?, 0x40fa48?) /usr/local/go/src/sync/once.go:74 +0xc2 fp=0xc0002df288 sp=0xc0002df228 pc=0x48e602 sync.(*Once).Do(...) /usr/local/go/src/sync/once.go:65 os/user.Current() /usr/local/go/src/os/user/lookup.go:22 +0x37 fp=0xc0002df2b8 sp=0xc0002df288 pc=0xcd5737 /home/codegeas/go/pkg/mod/github.com/godbus/[email protected]/conn_other.go:80 +0x19 fp=0xc0002df300 sp=0xc0002df2b8 pc=0x10f1819 /home/codegeas/go/pkg/mod/github.com/godbus/[email protected]/conn_other.go:52 +0x2b fp=0xc0002df3a8 sp=0xc0002df300 pc=0x10f15ab /home/codegeas/go/pkg/mod/github.com/godbus/[email protected]/conn.go:83 +0x66 fp=0xc0002df3e8 sp=0xc0002df3a8 pc=0x10eca66 , 0x0, 0x0}) /home/codegeas/go/pkg/mod/github.com/godbus/[email protected]/conn.go:92 +0x28 fp=0xc0002df420 sp=0xc0002df3e8 pc=0x10ecae8 /home/codegeas/go/pkg/mod/github.com/godbus/[email protected]/conn.go:63 +0xce fp=0xc0002df4a0 sp=0xc0002df420 pc=0x10ec7ae /home/codegeas/go/pkg/mod/github.com/99designs/[email protected]/kwallet.go:24 +0x45 fp=0xc0002df4d0 sp=0xc0002df4a0 pc=0x11164e5 runtime.doInit(0x86a95e0) /usr/local/go/src/runtime/proc.go:6506 +0x126 fp=0xc0002df600 sp=0xc0002df4d0 pc=0x44ade6 runtime.doInit(0x8688ee0) /usr/local/go/src/runtime/proc.go:6483 +0x71 fp=0xc0002df730 sp=0xc0002df600 pc=0x44ad31 runtime.doInit(0x8684da0) /usr/local/go/src/runtime/proc.go:6483 +0x71 fp=0xc0002df860 sp=0xc0002df730 pc=0x44ad31 runtime.doInit(0x86a2c40) /usr/local/go/src/runtime/proc.go:6483 +0x71 fp=0xc0002df990 sp=0xc0002df860 pc=0x44ad31 runtime.doInit(0x86b3900) /usr/local/go/src/runtime/proc.go:6483 +0x71 fp=0xc0002dfac0 sp=0xc0002df990 pc=0x44ad31 runtime.doInit(0x86b20e0) /usr/local/go/src/runtime/proc.go:6483 +0x71 fp=0xc0002dfbf0 sp=0xc0002dfac0 pc=0x44ad31 runtime.doInit(0x86a3300) /usr/local/go/src/runtime/proc.go:6483 +0x71 fp=0xc0002dfd20 sp=0xc0002dfbf0 pc=0x44ad31 runtime.doInit(0x86ce160) /usr/local/go/src/runtime/proc.go:6483 +0x71 fp=0xc0002dfe50 sp=0xc0002dfd20 pc=0x44ad31 runtime.doInit(0x8680700) /usr/local/go/src/runtime/proc.go:6483 +0x71 fp=0xc0002dff80 sp=0xc0002dfe50 pc=0x44ad31 runtime.main() /usr/local/go/src/runtime/proc.go:233 +0x1c6 fp=0xc0002dffe0 sp=0xc0002dff80 pc=0x43d6c6 runtime.goexit() /usr/local/go/src/runtime/asm_amd64.s:1598 +0x1 fp=0xc0002dffe8 sp=0xc0002dffe0 pc=0x471f41 goroutine 2 [force gc (idle)]: runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?) /usr/local/go/src/runtime/proc.go:381 +0xd6 fp=0xc000098fb0 sp=0xc000098f90 pc=0x43db36 runtime.goparkunlock(...) /usr/local/go/src/runtime/proc.go:387 runtime.forcegchelper() /usr/local/go/src/runtime/proc.go:305 +0xb0 fp=0xc000098fe0 sp=0xc000098fb0 pc=0x43d970 runtime.goexit() /usr/local/go/src/runtime/asm_amd64.s:1598 +0x1 fp=0xc000098fe8 sp=0xc000098fe0 pc=0x471f41 created by runtime.init.6 /usr/local/go/src/runtime/proc.go:293 +0x25 goroutine 18 [GC sweep wait]: runtime.gopark(0x1?, 0x0?, 0x0?, 0x0?, 0x0?) /usr/local/go/src/runtime/proc.go:381 +0xd6 fp=0xc000094780 sp=0xc000094760 pc=0x43db36 runtime.goparkunlock(...) /usr/local/go/src/runtime/proc.go:387 runtime.bgsweep(0x0?) /usr/local/go/src/runtime/mgcsweep.go:319 +0xde fp=0xc0000947c8 sp=0xc000094780 pc=0x427c1e runtime.gcenable.func1() /usr/local/go/src/runtime/mgc.go:178 +0x26 fp=0xc0000947e0 sp=0xc0000947c8 pc=0x41ce86 runtime.goexit() /usr/local/go/src/runtime/asm_amd64.s:1598 +0x1 fp=0xc0000947e8 sp=0xc0000947e0 pc=0x471f41 created by runtime.gcenable /usr/local/go/src/runtime/mgc.go:178 +0x6b goroutine 19 [GC scavenge wait]: runtime.gopark(0xc000082070?, 0x59d7ac8?, 0x0?, 0x0?, 0x0?) /usr/local/go/src/runtime/proc.go:381 +0xd6 fp=0xc000094f70 sp=0xc000094f50 pc=0x43db36 runtime.goparkunlock(...) /usr/local/go/src/runtime/proc.go:387 runtime.(*scavengerState).park(0x87db300) /usr/local/go/src/runtime/mgcscavenge.go:400 +0x53 fp=0xc000094fa0 sp=0xc000094f70 pc=0x425af3 runtime.bgscavenge(0x0?) /usr/local/go/src/runtime/mgcscavenge.go:633 +0x65 fp=0xc000094fc8 sp=0xc000094fa0 pc=0x4260e5 runtime.gcenable.func2() /usr/local/go/src/runtime/mgc.go:179 +0x26 fp=0xc000094fe0 sp=0xc000094fc8 pc=0x41ce26 runtime.goexit() /usr/local/go/src/runtime/asm_amd64.s:1598 +0x1 fp=0xc000094fe8 sp=0xc000094fe0 pc=0x471f41 created by runtime.gcenable /usr/local/go/src/runtime/mgc.go:179 +0xaa goroutine 20 [finalizer wait]: runtime.gopark(0x1a0?, 0x87dcca0?, 0x20?, 0x28?, 0xc000098770?) /usr/local/go/src/runtime/proc.go:381 +0xd6 fp=0xc000098628 sp=0xc000098608 pc=0x43db36 runtime.runfinq() /usr/local/go/src/runtime/mfinal.go:193 +0x107 fp=0xc0000987e0 sp=0xc000098628 pc=0x41bec7 runtime.goexit() /usr/local/go/src/runtime/asm_amd64.s:1598 +0x1 fp=0xc0000987e8 sp=0xc0000987e0 pc=0x471f41 created by runtime.createfing /usr/local/go/src/runtime/mfinal.go:163 +0x45 goroutine 21 [select]: runtime.gopark(0xc000095788?, 0x3?, 0x20?, 0x60?, 0xc000095772?) /usr/local/go/src/runtime/proc.go:381 +0xd6 fp=0xc0000955f8 sp=0xc0000955d8 pc=0x43db36 runtime.selectgo(0xc000095788, 0xc00009576c, 0xc000172680?, 0x0, 0x0?, 0x1) /usr/local/go/src/runtime/select.go:327 +0x7be fp=0xc000095738 sp=0xc0000955f8 pc=0x44ddfe /home/codegeas/go/pkg/mod/[email protected]/stats/view/worker.go:276 +0xad fp=0xc0000957c8 sp=0xc000095738 pc=0xb5a34d /home/codegeas/go/pkg/mod/[email protected]/stats/view/worker.go:34 +0x26 fp=0xc0000957e0 sp=0xc0000957c8 pc=0xb595c6 runtime.goexit() /usr/local/go/src/runtime/asm_amd64.s:1598 +0x1 fp=0xc0000957e8 sp=0xc0000957e0 pc=0x471f41 created by /home/codegeas/go/pkg/mod/[email protected]/stats/view/worker.go:34 +0x96 goroutine 22 [GC worker (idle)]: runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?) /usr/local/go/src/runtime/proc.go:381 +0xd6 fp=0xc000095f50 sp=0xc000095f30 pc=0x43db36 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1275 +0xf1 fp=0xc000095fe0 sp=0xc000095f50 pc=0x41ebf1 runtime.goexit() /usr/local/go/src/runtime/asm_amd64.s:1598 +0x1 fp=0xc000095fe8 sp=0xc000095fe0 pc=0x471f41 created by runtime.gcBgMarkStartWorkers /usr/local/go/src/runtime/mgc.go:1199 +0x25 goroutine 3 [GC worker (idle)]: runtime.gopark(0x69f2c1361138eb?, 0x0?, 0x0?, 0x0?, 0x0?) /usr/local/go/src/runtime/proc.go:381 +0xd6 fp=0xc000099750 sp=0xc000099730 pc=0x43db36 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1275 +0xf1 fp=0xc0000997e0 sp=0xc000099750 pc=0x41ebf1 runtime.goexit() /usr/local/go/src/runtime/asm_amd64.s:1598 +0x1 fp=0xc0000997e8 sp=0xc0000997e0 pc=0x471f41 created by runtime.gcBgMarkStartWorkers /usr/local/go/src/runtime/mgc.go:1199 +0x25 goroutine 4 [GC worker (idle)]: runtime.gopark(0x69f2c135e0e3c6?, 0x0?, 0x0?, 0x0?, 0x0?) /usr/local/go/src/runtime/proc.go:381 +0xd6 fp=0xc000099f50 sp=0xc000099f30 pc=0x43db36 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1275 +0xf1 fp=0xc000099fe0 sp=0xc000099f50 pc=0x41ebf1 runtime.goexit() /usr/local/go/src/runtime/asm_amd64.s:1598 +0x1 fp=0xc000099fe8 sp=0xc000099fe0 pc=0x471f41 created by runtime.gcBgMarkStartWorkers /usr/local/go/src/runtime/mgc.go:1199 +0x25 goroutine 5 [GC worker (idle)]: runtime.gopark(0x69f2c136140731?, 0x3?, 0xb1?, 0x2c?, 0x0?) /usr/local/go/src/runtime/proc.go:381 +0xd6 fp=0xc00009a750 sp=0xc00009a730 pc=0x43db36 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1275 +0xf1 fp=0xc00009a7e0 sp=0xc00009a750 pc=0x41ebf1 runtime.goexit() /usr/local/go/src/runtime/asm_amd64.s:1598 +0x1 fp=0xc00009a7e8 sp=0xc00009a7e0 pc=0x471f41 created by runtime.gcBgMarkStartWorkers /usr/local/go/src/runtime/mgc.go:1199 +0x25 goroutine 34 [GC worker (idle)]: runtime.gopark(0x69f2c136114b62?, 0x0?, 0x0?, 0x0?, 0x0?) /usr/local/go/src/runtime/proc.go:381 +0xd6 fp=0xc000508750 sp=0xc000508730 pc=0x43db36 runtime.gcBgMarkWorker() /usr/local/go/src/runtime/mgc.go:1275 +0xf1 fp=0xc0005087e0 sp=0xc000508750 pc=0x41ebf1 runtime.goexit() /usr/local/go/src/runtime/asm_amd64.s:1598 +0x1 fp=0xc0005087e8 sp=0xc0005087e0 pc=0x471f41 created by runtime.gcBgMarkStartWorkers /usr/local/go/src/runtime/mgc.go:1199 +0x25 rax 0x0 rbx 0x21b12 rcx 0x3e09d3b rdx 0x6 rdi 0x21b12 rsi 0x21b12 rbp 0x6 rsp 0x7fff7b2178a0 r8 0x8fff030 r9 0xa2e64656c6961 r10 0x8 r11 0x246 r12 0x16 r13 0x25 r14 0x5fdd7fe r15 0x90001e0 rip 0x3e09d3b rflags 0x246 cs 0x33 fs 0x0 gs 0x0```

Photo of Srikanth
Srikanth
Sat, 10 Jun 2023 09:48:14 UTC

> Can you now help me please with where to put that config file? You can keep it anywhere and provide the path with command line arg `--config <path-to-file>`

Photo of Happy
Happy
Sat, 10 Jun 2023 11:06:12 UTC

Ok the binary still fails with same error as above after providing the file. Running it on Ubuntu 20.04 using "./signoz-collector_0.76.2_linux_amd64"

Photo of Srikanth
Srikanth
Sat, 10 Jun 2023 14:22:52 UTC

Ah, that’s a bummer. Can you create an issue here

Photo of Prashant
Prashant
Mon, 12 Jun 2023 20:09:29 UTC

Happy not able to reproduce the issue in Ubuntu 20.04. could you please verify that architecture of the machine? Is it amd64? If possible, share output of `uname -a` .