func Start() {
	connectionString := fmt.Sprintf("%s%s%d", config.Address, ":", config.Port)  
	server := &http.Server{
		Addr:           connectionString,
		Handler:        nil,
		ReadTimeout:    config.ReadTimeout,
		WriteTimeout:   config.WriteTimeout,
		IdleTimeout:    config.IdleTimeout,
		MaxHeaderBytes: config.MaxHeaderBytes,
		ConnState:      stateCallback,
	}
	logs.WriteBasic("Golang server started on http://" + connectionString + " [" + time.Now().Truncate(0).String() + "]")
	http.HandleFunc("/", handler.Handle)
	http.HandleFunc("/server-status/", handler.ServerStatus)
	http.HandleFunc("/gop-info/", handler.GopInfo)
	log.Fatal(server.ListenAndServe())  
}
Start innitiates the server
package server
import (
	"fmt"
	"log"
	"net"
	"net/http"
	"pfg/src/handler"
	"pfg/src/repository/filesystem"
	"pfg/src/server/config"
	"pfg/src/server/logs"
	"time"
)
var lastTimestamp time.Time
func init() {
	filesystem.RemoveCache(config.CacheRoot)
	lastTimestamp = time.Now()
}
func stateCallback(conn net.Conn, ConnState http.ConnState) {
	currentTime := time.Now()
	elapsedTime := time.Since(lastTimestamp)
	lastTimestamp = currentTime  
	timeSpent := fmt.Sprint(elapsedTime.Milliseconds()) + "ms"
	switch ConnState {
	case http.StateNew:
	case http.StateActive:
	case http.StateIdle:
		logs.WriteResponse(conn.RemoteAddr().String(), conn.LocalAddr().String(), timeSpent)
	case http.StateHijacked:
	case http.StateClosed:
	}
}