sniffer-agent/communicator/config.go

50 lines
948 B
Go

package communicator
import (
"flag"
"net/http"
"strconv"
"time"
"github.com/gorilla/mux"
hu "github.com/zr-hebo/util-http"
_ "net/http/pprof"
)
var (
communicatePort int
router = mux.NewRouter()
)
func init() {
flag.IntVar(&communicatePort, "communicate_port", 8088, "http server port. Default is 8088")
router.Path("/get_status").Methods("GET").HandlerFunc(getStatus)
router.Path("/set_config").Methods("POST").HandlerFunc(setConfig)
}
func Server() {
server := &http.Server{
Addr: "0.0.0.0:" + strconv.Itoa(communicatePort),
IdleTimeout: time.Second * 5,
}
http.Handle("/", router)
if err := server.ListenAndServe(); err != nil {
panic(err)
}
}
func getStatus(resp http.ResponseWriter, req *http.Request) {
mp := hu.NewMouthpiece(resp)
defer mp.Convey()
mp.Data = "OK"
}
func setConfig(resp http.ResponseWriter, req *http.Request) {
mp := hu.NewMouthpiece(resp)
defer mp.Convey()
mp.Data = "OK"
}