mirror of
https://github.com/prometheus/prometheus.git
synced 2025-03-05 20:59:13 -08:00
API: Enable remote write and otlp receivers by default
Signed-off-by: Jesus Vazquez <jesusvzpg@gmail.com>
This commit is contained in:
parent
6c79689331
commit
3bbd7ada6b
|
@ -182,12 +182,6 @@ func (c *flagConfig) setFeatureListOptions(logger log.Logger) error {
|
||||||
opts := strings.Split(f, ",")
|
opts := strings.Split(f, ",")
|
||||||
for _, o := range opts {
|
for _, o := range opts {
|
||||||
switch o {
|
switch o {
|
||||||
case "remote-write-receiver":
|
|
||||||
c.web.EnableRemoteWriteReceiver = true
|
|
||||||
level.Warn(logger).Log("msg", "Remote write receiver enabled via feature flag remote-write-receiver. This is DEPRECATED. Use --web.enable-remote-write-receiver.")
|
|
||||||
case "otlp-write-receiver":
|
|
||||||
c.web.EnableOTLPWriteReceiver = true
|
|
||||||
level.Info(logger).Log("msg", "Experimental OTLP write receiver enabled")
|
|
||||||
case "expand-external-labels":
|
case "expand-external-labels":
|
||||||
c.enableExpandExternalLabels = true
|
c.enableExpandExternalLabels = true
|
||||||
level.Info(logger).Log("msg", "Experimental expand-external-labels enabled")
|
level.Info(logger).Log("msg", "Experimental expand-external-labels enabled")
|
||||||
|
@ -352,11 +346,6 @@ func main() {
|
||||||
a.Flag("web.enable-admin-api", "Enable API endpoints for admin control actions.").
|
a.Flag("web.enable-admin-api", "Enable API endpoints for admin control actions.").
|
||||||
Default("false").BoolVar(&cfg.web.EnableAdminAPI)
|
Default("false").BoolVar(&cfg.web.EnableAdminAPI)
|
||||||
|
|
||||||
// TODO(bwplotka): Consider allowing those remote receive flags to be changed in config.
|
|
||||||
// See https://github.com/prometheus/prometheus/issues/14410
|
|
||||||
a.Flag("web.enable-remote-write-receiver", "Enable API endpoint accepting remote write requests.").
|
|
||||||
Default("false").BoolVar(&cfg.web.EnableRemoteWriteReceiver)
|
|
||||||
|
|
||||||
supportedRemoteWriteProtoMsgs := config.RemoteWriteProtoMsgs{config.RemoteWriteProtoMsgV1, config.RemoteWriteProtoMsgV2}
|
supportedRemoteWriteProtoMsgs := config.RemoteWriteProtoMsgs{config.RemoteWriteProtoMsgV1, config.RemoteWriteProtoMsgV2}
|
||||||
a.Flag("web.remote-write-receiver.accepted-protobuf-messages", fmt.Sprintf("List of the remote write protobuf messages to accept when receiving the remote writes. Supported values: %v", supportedRemoteWriteProtoMsgs.String())).
|
a.Flag("web.remote-write-receiver.accepted-protobuf-messages", fmt.Sprintf("List of the remote write protobuf messages to accept when receiving the remote writes. Supported values: %v", supportedRemoteWriteProtoMsgs.String())).
|
||||||
Default(supportedRemoteWriteProtoMsgs.Strings()...).SetValue(rwProtoMsgFlagValue(&cfg.web.AcceptRemoteWriteProtoMsgs))
|
Default(supportedRemoteWriteProtoMsgs.Strings()...).SetValue(rwProtoMsgFlagValue(&cfg.web.AcceptRemoteWriteProtoMsgs))
|
||||||
|
|
|
@ -248,9 +248,7 @@ func NewAPI(
|
||||||
gatherer prometheus.Gatherer,
|
gatherer prometheus.Gatherer,
|
||||||
registerer prometheus.Registerer,
|
registerer prometheus.Registerer,
|
||||||
statsRenderer StatsRenderer,
|
statsRenderer StatsRenderer,
|
||||||
rwEnabled bool,
|
|
||||||
acceptRemoteWriteProtoMsgs []config.RemoteWriteProtoMsg,
|
acceptRemoteWriteProtoMsgs []config.RemoteWriteProtoMsg,
|
||||||
otlpEnabled bool,
|
|
||||||
) *API {
|
) *API {
|
||||||
a := &API{
|
a := &API{
|
||||||
QueryEngine: qe,
|
QueryEngine: qe,
|
||||||
|
@ -287,16 +285,8 @@ func NewAPI(
|
||||||
a.statsRenderer = statsRenderer
|
a.statsRenderer = statsRenderer
|
||||||
}
|
}
|
||||||
|
|
||||||
if ap == nil && (rwEnabled || otlpEnabled) {
|
a.remoteWriteHandler = remote.NewWriteHandler(logger, registerer, ap, acceptRemoteWriteProtoMsgs)
|
||||||
panic("remote write or otlp write enabled, but no appender passed in.")
|
a.otlpWriteHandler = remote.NewOTLPWriteHandler(logger, ap, configFunc)
|
||||||
}
|
|
||||||
|
|
||||||
if rwEnabled {
|
|
||||||
a.remoteWriteHandler = remote.NewWriteHandler(logger, registerer, ap, acceptRemoteWriteProtoMsgs)
|
|
||||||
}
|
|
||||||
if otlpEnabled {
|
|
||||||
a.otlpWriteHandler = remote.NewOTLPWriteHandler(logger, ap, configFunc)
|
|
||||||
}
|
|
||||||
|
|
||||||
return a
|
return a
|
||||||
}
|
}
|
||||||
|
|
|
@ -137,9 +137,7 @@ func createPrometheusAPI(t *testing.T, q storage.SampleAndChunkQueryable) *route
|
||||||
prometheus.DefaultGatherer,
|
prometheus.DefaultGatherer,
|
||||||
nil,
|
nil,
|
||||||
nil,
|
nil,
|
||||||
false,
|
|
||||||
config.RemoteWriteProtoMsgs{config.RemoteWriteProtoMsgV1, config.RemoteWriteProtoMsgV2},
|
config.RemoteWriteProtoMsgs{config.RemoteWriteProtoMsgV1, config.RemoteWriteProtoMsgV2},
|
||||||
false,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
promRouter := route.New().WithPrefix("/api/v1")
|
promRouter := route.New().WithPrefix("/api/v1")
|
||||||
|
|
11
web/web.go
11
web/web.go
|
@ -277,8 +277,6 @@ type Options struct {
|
||||||
RemoteReadSampleLimit int
|
RemoteReadSampleLimit int
|
||||||
RemoteReadConcurrencyLimit int
|
RemoteReadConcurrencyLimit int
|
||||||
RemoteReadBytesInFrame int
|
RemoteReadBytesInFrame int
|
||||||
EnableRemoteWriteReceiver bool
|
|
||||||
EnableOTLPWriteReceiver bool
|
|
||||||
IsAgent bool
|
IsAgent bool
|
||||||
AppName string
|
AppName string
|
||||||
|
|
||||||
|
@ -338,12 +336,7 @@ func New(logger log.Logger, o *Options) *Handler {
|
||||||
factoryAr := func(_ context.Context) api_v1.AlertmanagerRetriever { return h.notifier }
|
factoryAr := func(_ context.Context) api_v1.AlertmanagerRetriever { return h.notifier }
|
||||||
FactoryRr := func(_ context.Context) api_v1.RulesRetriever { return h.ruleManager }
|
FactoryRr := func(_ context.Context) api_v1.RulesRetriever { return h.ruleManager }
|
||||||
|
|
||||||
var app storage.Appendable
|
h.apiV1 = api_v1.NewAPI(h.queryEngine, h.storage, h.storage, h.exemplarStorage, factorySPr, factoryTr, factoryAr,
|
||||||
if o.EnableRemoteWriteReceiver || o.EnableOTLPWriteReceiver {
|
|
||||||
app = h.storage
|
|
||||||
}
|
|
||||||
|
|
||||||
h.apiV1 = api_v1.NewAPI(h.queryEngine, h.storage, app, h.exemplarStorage, factorySPr, factoryTr, factoryAr,
|
|
||||||
func() config.Config {
|
func() config.Config {
|
||||||
h.mtx.RLock()
|
h.mtx.RLock()
|
||||||
defer h.mtx.RUnlock()
|
defer h.mtx.RUnlock()
|
||||||
|
@ -371,9 +364,7 @@ func New(logger log.Logger, o *Options) *Handler {
|
||||||
o.Gatherer,
|
o.Gatherer,
|
||||||
o.Registerer,
|
o.Registerer,
|
||||||
nil,
|
nil,
|
||||||
o.EnableRemoteWriteReceiver,
|
|
||||||
o.AcceptRemoteWriteProtoMsgs,
|
o.AcceptRemoteWriteProtoMsgs,
|
||||||
o.EnableOTLPWriteReceiver,
|
|
||||||
)
|
)
|
||||||
|
|
||||||
if o.RoutePrefix != "/" {
|
if o.RoutePrefix != "/" {
|
||||||
|
|
Loading…
Reference in a new issue