orbiter/api/events.go
Abdulrahman Solanke ad6ccde1bb switch to go mod
2023-05-19 00:58:50 +01:00

23 lines
441 B
Go

package api
import (
"fmt"
"net/http"
"github.com/sirupsen/logrus"
)
func Events(eventChannel chan *logrus.Entry) func(w http.ResponseWriter, r *http.Request) {
return func(w http.ResponseWriter, r *http.Request) {
logrus.Info("New events")
formatter := &logrus.JSONFormatter{}
flusher, _ := w.(http.Flusher)
for {
e := <-eventChannel
b, _ := formatter.Format(e)
fmt.Fprintf(w, string(b))
flusher.Flush()
}
}
}