Make the router public.

This commit is contained in:
Cyril Duez 2016-05-27 10:19:33 +02:00
parent 580dc733ee
commit b95244cd65
2 changed files with 3 additions and 7 deletions

View File

@ -342,7 +342,7 @@ func (a *Agent) Run(shutdown chan struct{}) error {
defer p.Stop()
case telegraf.WebhookInput:
acc := createAccumulatorForInput(a, input, metricC)
if err := p.Register(webserver.Router(), acc); err != nil {
if err := p.Register(webserver.Router, acc); err != nil {
log.Printf("Webhook for input %s failed to start, exiting\n%s\n",
input.Name, err.Error())
return err

View File

@ -10,19 +10,15 @@ import (
type Webserver struct {
ServiceAddress string
router *mux.Router
Router *mux.Router
}
func NewWebserver(serviceAddress string) *Webserver {
return &Webserver{Router: mux.NewRouter(), ServiceAddress: serviceAddress}
}
func (wb *Webserver) Router() *mux.Router {
return wb.router
}
func (wb *Webserver) Listen() {
err := http.ListenAndServe(fmt.Sprintf("%s", wb.ServiceAddress), wb.router)
err := http.ListenAndServe(fmt.Sprintf("%s", wb.ServiceAddress), wb.Router)
if err != nil {
log.Printf("Error starting server: %v", err)
}