summaryrefslogtreecommitdiff
path: root/machine.go
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2025-02-16 12:02:09 -0600
committerJeff Carr <[email protected]>2025-02-16 12:05:28 -0600
commitb53e71ed9eb4067e749f872a7843e31381511bfb (patch)
tree4eca59bb91b42ca94716b2c9648937f1588bd7a5 /machine.go
parent97f29457dbee65a4404570fd17fd5d0f08e21502 (diff)
app works againv0.0.29
Diffstat (limited to 'machine.go')
-rw-r--r--machine.go23
1 files changed, 17 insertions, 6 deletions
diff --git a/machine.go b/machine.go
index a902b7d..7944e9b 100644
--- a/machine.go
+++ b/machine.go
@@ -19,31 +19,42 @@ func rawGetHostname(data []byte) *zoopb.Machine {
return newm
}
-func handleMachine(w http.ResponseWriter, hostname string, data []byte) {
+func handleMachine(r *http.Request, w http.ResponseWriter, hostname string, data []byte) {
hostname = strings.TrimSpace(hostname)
newm := rawGetHostname(data)
if newm == nil {
log.Info("unmarshal failed on data len =", len(data))
}
- if hostname == newm.Hostname {
- log.Info("hostname mismatch", hostname, "vs", newm.Hostname)
+ if hostname != newm.Hostname {
+ // log.Info("hostname mismatch", hostname, "vs", newm.Hostname)
hostname = newm.Hostname
}
if hostname == "" {
- log.Info("hostname is blank even after unmarshal. data len =", len(data))
+ ua := dumpUserAgent(r)
+ ra := dumpRemoteAddr(r)
+ log.Info("hostname is blank even after unmarshal. data len =", len(data), ra, ua, newm.Cpus, newm.Hostname)
return
}
- log.Info("lookoing for", hostname)
+ // log.Info("lookoing for", hostname)
m := me.machines.FindByHostname(hostname)
if m == nil {
am := new(zoopb.Machine)
am.Hostname = newm.Hostname
am.Memory = newm.Memory
me.machines2.Append(am)
+ me.machines.Append(newm)
+ log.Info("new machine", am.Hostname, am.Memory)
return
}
- log.Info("not new machine", hostname)
+ ua := dumpUserAgent(r)
+ ra := dumpRemoteAddr(r)
+ if m.UserAgent != ua {
+ log.Info("hostname ua changed len =", len(data), ra, hostname, ua)
+ m.UserAgent = ua
+ }
+ // log.Info("update machine protobuf", hostname)
+ updateMachine(newm)
}
// someone sent machine 'u' is it new?