MCPcopy Create free account
hub / github.com/prometheus/prometheus / createPrometheusAPI

Function createPrometheusAPI

web/api/v1/errors_test.go:124–183  ·  view source on GitHub ↗
(t *testing.T, q storage.SampleAndChunkQueryable, overrideErrorCode OverrideErrorCode)

Source from the content-addressed store, hash-verified

122}
123
124func createPrometheusAPI(t *testing.T, q storage.SampleAndChunkQueryable, overrideErrorCode OverrideErrorCode) *route.Router {
125 t.Helper()
126
127 engine := promqltest.NewTestEngineWithOpts(t, promql.EngineOpts{
128 Logger: promslog.NewNopLogger(),
129 Reg: nil,
130 ActiveQueryTracker: nil,
131 MaxSamples: 100,
132 Timeout: 5 * time.Second,
133 })
134
135 api := NewAPI(
136 engine,
137 q,
138 nil, nil,
139 nil,
140 func(context.Context) ScrapePoolsRetriever { return &DummyScrapePoolsRetriever{} },
141 func(context.Context) TargetRetriever { return &DummyTargetRetriever{} },
142 func(context.Context) AlertmanagerRetriever { return &DummyAlertmanagerRetriever{} },
143 func() config.Config { return config.Config{} },
144 map[string]string{}, // TODO: include configuration flags
145 GlobalURLOptions{},
146 func(f http.HandlerFunc) http.HandlerFunc { return f },
147 nil, // Only needed for admin APIs.
148 "", // This is for snapshots, which is disabled when admin APIs are disabled. Hence empty.
149 false, // Disable admin APIs.
150 false, // Disable search API.
151 0, // Default search max-limit.
152 promslog.NewNopLogger(),
153 func(context.Context) RulesRetriever { return &DummyRulesRetriever{} },
154 0, 0, 0, // Remote read samples and concurrency limit.
155 false, // Not an agent.
156 regexp.MustCompile(".*"),
157 func() (RuntimeInfo, error) { return RuntimeInfo{}, errors.New("not implemented") },
158 &PrometheusVersion{},
159 nil,
160 nil,
161 prometheus.DefaultGatherer,
162 nil,
163 nil,
164 false,
165 remoteapi.MessageTypes{remoteapi.WriteV1MessageType, remoteapi.WriteV2MessageType},
166 false,
167 false,
168 false,
169 false,
170 5*time.Minute,
171 false,
172 false,
173 overrideErrorCode,
174 nil,
175 OpenAPIOptions{},
176 parser.NewParser(parser.Options{}),
177 )
178
179 promRouter := route.New().WithPrefix("/api/v1")
180 api.Register(promRouter)
181

Callers 1

TestApiStatusCodesFunction · 0.85

Calls 4

RegisterMethod · 0.95
NewTestEngineWithOptsFunction · 0.92
NewParserFunction · 0.92
NewAPIFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…