mirror of
https://github.com/openfaas/faas.git
synced 2025-06-18 03:56:37 +00:00
External alert-handler support.
This commit is contained in:
31
gateway/plugin/external.go
Normal file
31
gateway/plugin/external.go
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
package plugin
|
||||||
|
|
||||||
|
import (
|
||||||
|
"net/url"
|
||||||
|
|
||||||
|
"github.com/alexellis/faas/gateway/handlers"
|
||||||
|
)
|
||||||
|
|
||||||
|
func NewExternalServiceQuery(externalURL url.URL) handlers.ServiceQuery {
|
||||||
|
return ExternalServiceQuery{
|
||||||
|
URL: externalURL,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
type ExternalServiceQuery struct {
|
||||||
|
URL url.URL
|
||||||
|
}
|
||||||
|
|
||||||
|
// GetReplicas replica count for function
|
||||||
|
func (s ExternalServiceQuery) GetReplicas(serviceName string) (uint64, uint64, error) {
|
||||||
|
var err error
|
||||||
|
|
||||||
|
return 0, 0, err
|
||||||
|
}
|
||||||
|
|
||||||
|
// SetReplicas update the replica count
|
||||||
|
func (s ExternalServiceQuery) SetReplicas(serviceName string, count uint64) error {
|
||||||
|
var err error
|
||||||
|
|
||||||
|
return err
|
||||||
|
}
|
@ -14,6 +14,7 @@ import (
|
|||||||
"github.com/Sirupsen/logrus"
|
"github.com/Sirupsen/logrus"
|
||||||
internalHandlers "github.com/alexellis/faas/gateway/handlers"
|
internalHandlers "github.com/alexellis/faas/gateway/handlers"
|
||||||
"github.com/alexellis/faas/gateway/metrics"
|
"github.com/alexellis/faas/gateway/metrics"
|
||||||
|
"github.com/alexellis/faas/gateway/plugin"
|
||||||
"github.com/alexellis/faas/gateway/types"
|
"github.com/alexellis/faas/gateway/types"
|
||||||
"github.com/docker/docker/client"
|
"github.com/docker/docker/client"
|
||||||
"github.com/prometheus/client_golang/prometheus"
|
"github.com/prometheus/client_golang/prometheus"
|
||||||
@ -69,7 +70,9 @@ func main() {
|
|||||||
|
|
||||||
faasHandlers.Proxy = makeHandler(reverseProxy, &metricsOptions)
|
faasHandlers.Proxy = makeHandler(reverseProxy, &metricsOptions)
|
||||||
faasHandlers.RoutelessProxy = makeHandler(reverseProxy, &metricsOptions)
|
faasHandlers.RoutelessProxy = makeHandler(reverseProxy, &metricsOptions)
|
||||||
faasHandlers.Alert = makeHandler(reverseProxy, &metricsOptions)
|
|
||||||
|
faasHandlers.Alert = internalHandlers.MakeAlertHandler(plugin.NewExternalServiceQuery(*config.FunctionsProviderURL))
|
||||||
|
|
||||||
faasHandlers.ListFunctions = makeHandler(reverseProxy, &metricsOptions)
|
faasHandlers.ListFunctions = makeHandler(reverseProxy, &metricsOptions)
|
||||||
faasHandlers.DeployFunction = makeHandler(reverseProxy, &metricsOptions)
|
faasHandlers.DeployFunction = makeHandler(reverseProxy, &metricsOptions)
|
||||||
faasHandlers.DeleteFunction = makeHandler(reverseProxy, &metricsOptions)
|
faasHandlers.DeleteFunction = makeHandler(reverseProxy, &metricsOptions)
|
||||||
|
Reference in New Issue
Block a user