Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
aos
GitHub Repository: aos/grafana-agent
Path: blob/main/production/operator/crds/monitoring.grafana.com_logsinstances.yaml
4096 views
1
---
2
apiVersion: apiextensions.k8s.io/v1
3
kind: CustomResourceDefinition
4
metadata:
5
annotations:
6
controller-gen.kubebuilder.io/version: v0.9.2
7
creationTimestamp: null
8
name: logsinstances.monitoring.grafana.com
9
spec:
10
group: monitoring.grafana.com
11
names:
12
categories:
13
- agent-operator
14
kind: LogsInstance
15
listKind: LogsInstanceList
16
plural: logsinstances
17
singular: logsinstance
18
scope: Namespaced
19
versions:
20
- name: v1alpha1
21
schema:
22
openAPIV3Schema:
23
description: LogsInstance controls an individual logs instance within a Grafana
24
Agent deployment.
25
properties:
26
apiVersion:
27
description: 'APIVersion defines the versioned schema of this representation
28
of an object. Servers should convert recognized schemas to the latest
29
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
30
type: string
31
kind:
32
description: 'Kind is a string value representing the REST resource this
33
object represents. Servers may infer this from the endpoint the client
34
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
35
type: string
36
metadata:
37
type: object
38
spec:
39
description: Spec holds the specification of the desired behavior for
40
the logs instance.
41
properties:
42
additionalScrapeConfigs:
43
description: "AdditionalScrapeConfigs allows specifying a key of a
44
Secret containing additional Grafana Agent logging scrape configurations.
45
Scrape configurations specified are appended to the configurations
46
generated by the Grafana Agent Operator. \n Job configurations specified
47
must have the form as specified in the official Promtail documentation:
48
\n https://grafana.com/docs/loki/latest/clients/promtail/configuration/#scrape_configs
49
\n As scrape configs are appended, the user is responsible to make
50
sure it is valid. Note that using this feature may expose the possibility
51
to break upgrades of Grafana Agent. It is advised to review both
52
Grafana Agent and Promtail release notes to ensure that no incompatible
53
scrape configs are going to break Grafana Agent after the upgrade."
54
properties:
55
key:
56
description: The key of the secret to select from. Must be a
57
valid secret key.
58
type: string
59
name:
60
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
61
TODO: Add other useful fields. apiVersion, kind, uid?'
62
type: string
63
optional:
64
description: Specify whether the Secret or its key must be defined
65
type: boolean
66
required:
67
- key
68
type: object
69
x-kubernetes-map-type: atomic
70
clients:
71
description: Clients controls where logs are written to for this instance.
72
items:
73
description: LogsClientSpec defines the client integration for logs,
74
indicating which Loki server to send logs to.
75
properties:
76
backoffConfig:
77
description: Configures how to retry requests to Loki when a
78
request fails. Defaults to a minPeriod of 500ms, maxPeriod
79
of 5m, and maxRetries of 10.
80
properties:
81
maxPeriod:
82
description: Maximum backoff time between retries.
83
type: string
84
maxRetries:
85
description: Maximum number of retries to perform before
86
giving up a request.
87
type: integer
88
minPeriod:
89
description: Initial backoff time between retries. Time
90
between retries is increased exponentially.
91
type: string
92
type: object
93
basicAuth:
94
description: BasicAuth for the Loki server.
95
properties:
96
password:
97
description: The secret in the service monitor namespace
98
that contains the password for authentication.
99
properties:
100
key:
101
description: The key of the secret to select from. Must
102
be a valid secret key.
103
type: string
104
name:
105
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
106
TODO: Add other useful fields. apiVersion, kind, uid?'
107
type: string
108
optional:
109
description: Specify whether the Secret or its key must
110
be defined
111
type: boolean
112
required:
113
- key
114
type: object
115
x-kubernetes-map-type: atomic
116
username:
117
description: The secret in the service monitor namespace
118
that contains the username for authentication.
119
properties:
120
key:
121
description: The key of the secret to select from. Must
122
be a valid secret key.
123
type: string
124
name:
125
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
126
TODO: Add other useful fields. apiVersion, kind, uid?'
127
type: string
128
optional:
129
description: Specify whether the Secret or its key must
130
be defined
131
type: boolean
132
required:
133
- key
134
type: object
135
x-kubernetes-map-type: atomic
136
type: object
137
batchSize:
138
description: Maximum batch size (in bytes) of logs to accumulate
139
before sending the batch to Loki.
140
type: integer
141
batchWait:
142
description: Maximum amount of time to wait before sending a
143
batch, even if that batch isn't full.
144
type: string
145
bearerToken:
146
description: BearerToken used for remote_write.
147
type: string
148
bearerTokenFile:
149
description: BearerTokenFile used to read bearer token.
150
type: string
151
externalLabels:
152
additionalProperties:
153
type: string
154
description: ExternalLabels are labels to add to any time series
155
when sending data to Loki.
156
type: object
157
proxyUrl:
158
description: ProxyURL to proxy requests through. Optional.
159
type: string
160
tenantId:
161
description: Tenant ID used by default to push logs to Loki.
162
If omitted assumes remote Loki is running in single-tenant
163
mode or an authentication layer is used to inject an X-Scope-OrgID
164
header.
165
type: string
166
timeout:
167
description: Maximum time to wait for a server to respond to
168
a request.
169
type: string
170
tlsConfig:
171
description: TLSConfig to use for the client. Only used when
172
the protocol of the URL is https.
173
properties:
174
ca:
175
description: Certificate authority used when verifying server
176
certificates.
177
properties:
178
configMap:
179
description: ConfigMap containing data to use for the
180
targets.
181
properties:
182
key:
183
description: The key to select.
184
type: string
185
name:
186
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
187
TODO: Add other useful fields. apiVersion, kind,
188
uid?'
189
type: string
190
optional:
191
description: Specify whether the ConfigMap or its
192
key must be defined
193
type: boolean
194
required:
195
- key
196
type: object
197
x-kubernetes-map-type: atomic
198
secret:
199
description: Secret containing data to use for the targets.
200
properties:
201
key:
202
description: The key of the secret to select from. Must
203
be a valid secret key.
204
type: string
205
name:
206
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
207
TODO: Add other useful fields. apiVersion, kind,
208
uid?'
209
type: string
210
optional:
211
description: Specify whether the Secret or its key
212
must be defined
213
type: boolean
214
required:
215
- key
216
type: object
217
x-kubernetes-map-type: atomic
218
type: object
219
caFile:
220
description: Path to the CA cert in the Prometheus container
221
to use for the targets.
222
type: string
223
cert:
224
description: Client certificate to present when doing client-authentication.
225
properties:
226
configMap:
227
description: ConfigMap containing data to use for the
228
targets.
229
properties:
230
key:
231
description: The key to select.
232
type: string
233
name:
234
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
235
TODO: Add other useful fields. apiVersion, kind,
236
uid?'
237
type: string
238
optional:
239
description: Specify whether the ConfigMap or its
240
key must be defined
241
type: boolean
242
required:
243
- key
244
type: object
245
x-kubernetes-map-type: atomic
246
secret:
247
description: Secret containing data to use for the targets.
248
properties:
249
key:
250
description: The key of the secret to select from. Must
251
be a valid secret key.
252
type: string
253
name:
254
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
255
TODO: Add other useful fields. apiVersion, kind,
256
uid?'
257
type: string
258
optional:
259
description: Specify whether the Secret or its key
260
must be defined
261
type: boolean
262
required:
263
- key
264
type: object
265
x-kubernetes-map-type: atomic
266
type: object
267
certFile:
268
description: Path to the client cert file in the Prometheus
269
container for the targets.
270
type: string
271
insecureSkipVerify:
272
description: Disable target certificate validation.
273
type: boolean
274
keyFile:
275
description: Path to the client key file in the Prometheus
276
container for the targets.
277
type: string
278
keySecret:
279
description: Secret containing the client key file for the
280
targets.
281
properties:
282
key:
283
description: The key of the secret to select from. Must
284
be a valid secret key.
285
type: string
286
name:
287
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
288
TODO: Add other useful fields. apiVersion, kind, uid?'
289
type: string
290
optional:
291
description: Specify whether the Secret or its key must
292
be defined
293
type: boolean
294
required:
295
- key
296
type: object
297
x-kubernetes-map-type: atomic
298
serverName:
299
description: Used to verify the hostname for the targets.
300
type: string
301
type: object
302
url:
303
description: 'URL is the URL where Loki is listening. Must be
304
a full HTTP URL, including protocol. Required. Example: https://logs-prod-us-central1.grafana.net/loki/api/v1/push.'
305
type: string
306
required:
307
- url
308
type: object
309
type: array
310
podLogsNamespaceSelector:
311
description: Set of labels to determine which namespaces should be
312
watched for PodLogs. If not provided, checks only namespace of the
313
instance.
314
properties:
315
matchExpressions:
316
description: matchExpressions is a list of label selector requirements.
317
The requirements are ANDed.
318
items:
319
description: A label selector requirement is a selector that
320
contains values, a key, and an operator that relates the key
321
and values.
322
properties:
323
key:
324
description: key is the label key that the selector applies
325
to.
326
type: string
327
operator:
328
description: operator represents a key's relationship to
329
a set of values. Valid operators are In, NotIn, Exists
330
and DoesNotExist.
331
type: string
332
values:
333
description: values is an array of string values. If the
334
operator is In or NotIn, the values array must be non-empty.
335
If the operator is Exists or DoesNotExist, the values
336
array must be empty. This array is replaced during a strategic
337
merge patch.
338
items:
339
type: string
340
type: array
341
required:
342
- key
343
- operator
344
type: object
345
type: array
346
matchLabels:
347
additionalProperties:
348
type: string
349
description: matchLabels is a map of {key,value} pairs. A single
350
{key,value} in the matchLabels map is equivalent to an element
351
of matchExpressions, whose key field is "key", the operator
352
is "In", and the values array contains only "value". The requirements
353
are ANDed.
354
type: object
355
type: object
356
x-kubernetes-map-type: atomic
357
podLogsSelector:
358
description: Determines which PodLogs should be selected for including
359
in this instance.
360
properties:
361
matchExpressions:
362
description: matchExpressions is a list of label selector requirements.
363
The requirements are ANDed.
364
items:
365
description: A label selector requirement is a selector that
366
contains values, a key, and an operator that relates the key
367
and values.
368
properties:
369
key:
370
description: key is the label key that the selector applies
371
to.
372
type: string
373
operator:
374
description: operator represents a key's relationship to
375
a set of values. Valid operators are In, NotIn, Exists
376
and DoesNotExist.
377
type: string
378
values:
379
description: values is an array of string values. If the
380
operator is In or NotIn, the values array must be non-empty.
381
If the operator is Exists or DoesNotExist, the values
382
array must be empty. This array is replaced during a strategic
383
merge patch.
384
items:
385
type: string
386
type: array
387
required:
388
- key
389
- operator
390
type: object
391
type: array
392
matchLabels:
393
additionalProperties:
394
type: string
395
description: matchLabels is a map of {key,value} pairs. A single
396
{key,value} in the matchLabels map is equivalent to an element
397
of matchExpressions, whose key field is "key", the operator
398
is "In", and the values array contains only "value". The requirements
399
are ANDed.
400
type: object
401
type: object
402
x-kubernetes-map-type: atomic
403
targetConfig:
404
description: Configures how tailed targets are watched.
405
properties:
406
syncPeriod:
407
description: Period to resync directories being watched and files
408
being tailed to discover new ones or stop watching removed ones.
409
type: string
410
type: object
411
type: object
412
type: object
413
served: true
414
storage: true
415
416