envoyproxy / envoy

Cloud-native high-performance edge/middle/service proxy
https://www.envoyproxy.io
Apache License 2.0
24.83k stars 4.77k forks source link

NS1StatsSink #5880

Open dopry opened 5 years ago

dopry commented 5 years ago

Title: Feature Request NS1StatsSink

Description:

I would like to be able to publish stats to a remote endpoint. I would specifically like to share load data (#of connections per listener) with NS1 to enable LoadShedding between data centers. A more generic or base HttpStatsSink that could accomplish the same result would be acceptable.

Thanks for your time and consideration.

htuch commented 5 years ago

@dopry can you use LRS or one of the existing stats sink? What format do you require if not?

dopry commented 5 years ago

I'm not familiar enough with LRS to know if it can be configured for this use case.

NS1 Feed API Documentation

example)

curl -X POST -H 'X-NSONE-Key: qACMD09OJXBxT7XOuRs8' -d '{"server-1": {"up":false}, "server-2": {"up":true}}' https://api.nsone.net/v1/feed/a53252f9e583c6708331a1daeb172e12

The properties in the dictionary are configured in NS1 when you define a feed.

NS1 requires an HTTP Post. None of the existing StatSinks offer and HTTP Post functionality that I am aware of.

htuch commented 5 years ago

Ack, tagged this enhancement + help wanted.