func main()

in analytics/server.go [67:99]


func main() {
	// Sleep for 10 seconds to let Cloud SQL Proxy start up
	// TODO - make this cleaner
	time.Sleep(time.Second * 10)

	// initialize cloud SQL client
	var err error
	a, err = initCloudSQL()
	if err != nil {
		log.Fatal(err)
	}

	// Start web server
	r := mux.NewRouter()

	// Health check
	r.HandleFunc("/_healthz", func(w http.ResponseWriter, _ *http.Request) { fmt.Fprint(w, "ok") })

	// GET / ("no-op")
	r.HandleFunc("/", func(w http.ResponseWriter, _ *http.Request) { fmt.Fprint(w, "analytics server") }).Methods(http.MethodGet)

	// POST Analytics
	r.HandleFunc("/", a.ReceiveClusterAndWriteToSQL).Methods("POST")
	srv := &http.Server{
		Handler:      r,
		Addr:         "0.0.0.0:8000",
		WriteTimeout: 5 * time.Second,
		ReadTimeout:  5 * time.Second,
	}

	log.Info("📊 GKE PoC Toolkit Analytics: Starting server on port 8000")
	log.Fatal(srv.ListenAndServe())
}