@intentius/chant-lexicon-otel 0.124.46 → 0.124.48

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (211) hide show
  1. package/README.md +2 -2
  2. package/dist/build/capability-plugin.d.ts +10 -0
  3. package/dist/build/capability-plugin.d.ts.map +1 -0
  4. package/dist/build/capability-plugin.js +19 -0
  5. package/dist/build/ocb-build.d.ts +38 -0
  6. package/dist/build/ocb-build.d.ts.map +1 -0
  7. package/dist/build/ocb-build.js +49 -0
  8. package/dist/clickhouse-tables.d.ts +73 -0
  9. package/dist/clickhouse-tables.d.ts.map +1 -0
  10. package/dist/clickhouse-tables.js +199 -0
  11. package/dist/codegen/docs.d.ts.map +1 -1
  12. package/dist/codegen/docs.js +4 -2
  13. package/dist/codegen/generate.d.ts +29 -10
  14. package/dist/codegen/generate.d.ts.map +1 -1
  15. package/dist/codegen/generate.js +82 -17
  16. package/dist/components/common.d.ts +3 -1
  17. package/dist/components/common.d.ts.map +1 -1
  18. package/dist/components/common.js +2 -0
  19. package/dist/components/connectors.d.ts +25 -90
  20. package/dist/components/connectors.d.ts.map +1 -1
  21. package/dist/components/connectors.js +3 -0
  22. package/dist/components/exporters.d.ts +78 -34
  23. package/dist/components/exporters.d.ts.map +1 -1
  24. package/dist/components/exporters.js +26 -1
  25. package/dist/components/extensions.d.ts +16 -33
  26. package/dist/components/extensions.d.ts.map +1 -1
  27. package/dist/components/filtering.d.ts +13 -60
  28. package/dist/components/filtering.d.ts.map +1 -1
  29. package/dist/components/k8s-receivers.d.ts +5 -53
  30. package/dist/components/k8s-receivers.d.ts.map +1 -1
  31. package/dist/components/overlay.d.ts +25 -0
  32. package/dist/components/overlay.d.ts.map +1 -0
  33. package/dist/components/overlay.js +19 -0
  34. package/dist/components/processors.d.ts +18 -79
  35. package/dist/components/processors.d.ts.map +1 -1
  36. package/dist/components/receivers.d.ts +17 -71
  37. package/dist/components/receivers.d.ts.map +1 -1
  38. package/dist/components/receivers.js +3 -1
  39. package/dist/components/sampling.d.ts +19 -35
  40. package/dist/components/sampling.d.ts.map +1 -1
  41. package/dist/config-hygiene.d.ts +10 -8
  42. package/dist/config-hygiene.d.ts.map +1 -1
  43. package/dist/config-hygiene.js +36 -13
  44. package/dist/coverage.d.ts +50 -0
  45. package/dist/coverage.d.ts.map +1 -0
  46. package/dist/coverage.js +92 -0
  47. package/dist/define.d.ts +8 -5
  48. package/dist/define.d.ts.map +1 -1
  49. package/dist/define.js +10 -6
  50. package/dist/distribution.d.ts +125 -0
  51. package/dist/distribution.d.ts.map +1 -0
  52. package/dist/distribution.js +227 -0
  53. package/dist/generated/index.d.ts +4234 -0
  54. package/dist/generated/index.d.ts.map +1 -0
  55. package/dist/generated/index.js +23 -0
  56. package/dist/index.d.ts +7 -1
  57. package/dist/index.d.ts.map +1 -1
  58. package/dist/index.js +9 -1
  59. package/dist/init-templates.js +2 -2
  60. package/dist/integrity.json +11 -9
  61. package/dist/lint/audit-catalog.d.ts +3 -0
  62. package/dist/lint/audit-catalog.d.ts.map +1 -1
  63. package/dist/lint/audit-catalog.js +5 -0
  64. package/dist/lint/post-synth/index.d.ts.map +1 -1
  65. package/dist/lint/post-synth/index.js +4 -0
  66. package/dist/lint/post-synth/otel-helpers.d.ts +2 -1
  67. package/dist/lint/post-synth/otel-helpers.d.ts.map +1 -1
  68. package/dist/lint/post-synth/otel-helpers.js +1 -1
  69. package/dist/lint/post-synth/otel119.d.ts +1 -1
  70. package/dist/lint/post-synth/otel119.js +1 -1
  71. package/dist/lint/post-synth/otel125.d.ts +1 -1
  72. package/dist/lint/post-synth/otel125.js +1 -1
  73. package/dist/lint/post-synth/otel126.d.ts +1 -1
  74. package/dist/lint/post-synth/otel126.js +1 -1
  75. package/dist/lint/post-synth/otel127.d.ts +1 -1
  76. package/dist/lint/post-synth/otel127.js +1 -1
  77. package/dist/lint/post-synth/otel128.d.ts +8 -0
  78. package/dist/lint/post-synth/otel128.d.ts.map +1 -0
  79. package/dist/lint/post-synth/otel128.js +17 -0
  80. package/dist/lint/post-synth/otel129.d.ts +15 -0
  81. package/dist/lint/post-synth/otel129.d.ts.map +1 -0
  82. package/dist/lint/post-synth/otel129.js +92 -0
  83. package/dist/lsp/completions.d.ts +10 -1
  84. package/dist/lsp/completions.d.ts.map +1 -1
  85. package/dist/lsp/completions.js +29 -1
  86. package/dist/lsp/hover.d.ts +5 -1
  87. package/dist/lsp/hover.d.ts.map +1 -1
  88. package/dist/lsp/hover.js +16 -3
  89. package/dist/lsp/properties.d.ts +34 -0
  90. package/dist/lsp/properties.d.ts.map +1 -0
  91. package/dist/lsp/properties.js +135 -0
  92. package/dist/manifest.json +1 -1
  93. package/dist/meta.json +5 -0
  94. package/dist/metric-names.d.ts +36 -8
  95. package/dist/metric-names.d.ts.map +1 -1
  96. package/dist/metric-names.js +42 -9
  97. package/dist/model.d.ts +1 -1
  98. package/dist/model.js +1 -1
  99. package/dist/okf/index.md +3 -0
  100. package/dist/okf/rules/OTEL128.md +11 -0
  101. package/dist/okf/rules/OTEL129.md +11 -0
  102. package/dist/okf/types/ClickHouseExporter.md +9 -0
  103. package/dist/op/activities/collector-audit.d.ts +18 -6
  104. package/dist/op/activities/collector-audit.d.ts.map +1 -1
  105. package/dist/op/activities/collector-audit.js +37 -21
  106. package/dist/plugin.d.ts.map +1 -1
  107. package/dist/plugin.js +51 -8
  108. package/dist/rules/otel-helpers.ts +1 -1
  109. package/dist/rules/otel119.ts +1 -1
  110. package/dist/rules/otel125.ts +1 -1
  111. package/dist/rules/otel126.ts +1 -1
  112. package/dist/rules/otel127.ts +1 -1
  113. package/dist/rules/otel128.ts +22 -0
  114. package/dist/rules/otel129.ts +99 -0
  115. package/dist/serializer.d.ts +3 -0
  116. package/dist/serializer.d.ts.map +1 -1
  117. package/dist/serializer.js +12 -2
  118. package/dist/spec/builtins.d.ts +17 -0
  119. package/dist/spec/builtins.d.ts.map +1 -0
  120. package/dist/spec/builtins.js +45 -0
  121. package/dist/spec/fetch.d.ts +120 -0
  122. package/dist/spec/fetch.d.ts.map +1 -0
  123. package/dist/spec/fetch.js +282 -0
  124. package/dist/spec/parse.d.ts +77 -0
  125. package/dist/spec/parse.d.ts.map +1 -0
  126. package/dist/spec/parse.js +337 -0
  127. package/dist/spec/pin.d.ts +82 -0
  128. package/dist/spec/pin.d.ts.map +1 -0
  129. package/dist/spec/pin.js +126 -0
  130. package/dist/spec/snapshot-cli.d.ts +13 -0
  131. package/dist/spec/snapshot-cli.d.ts.map +1 -0
  132. package/dist/spec/snapshot-cli.js +31 -0
  133. package/dist/spec/snapshot.d.ts +9 -0
  134. package/dist/spec/snapshot.d.ts.map +1 -0
  135. package/dist/spec/snapshot.js +14 -0
  136. package/dist/types/index.d.ts +3 -2
  137. package/dist/validate-config.d.ts +1 -1
  138. package/dist/validate-config.d.ts.map +1 -1
  139. package/dist/validate.d.ts.map +1 -1
  140. package/dist/validate.js +1 -0
  141. package/dist/workspace-links.d.ts +25 -0
  142. package/dist/workspace-links.d.ts.map +1 -0
  143. package/dist/workspace-links.js +49 -0
  144. package/package.json +3 -2
  145. package/src/build/capability-plugin.ts +30 -0
  146. package/src/build/ocb-build.ts +73 -0
  147. package/src/clickhouse-exporter.e2e.test.ts +208 -0
  148. package/src/clickhouse-tables.test.ts +216 -0
  149. package/src/clickhouse-tables.ts +223 -0
  150. package/src/codegen/docs.ts +4 -2
  151. package/src/codegen/generate.ts +95 -19
  152. package/src/components/common.ts +4 -2
  153. package/src/components/connectors.ts +30 -77
  154. package/src/components/exporters.ts +128 -61
  155. package/src/components/extensions.ts +22 -36
  156. package/src/components/filtering.ts +17 -58
  157. package/src/components/k8s-receivers.test.ts +1 -1
  158. package/src/components/k8s-receivers.ts +3 -45
  159. package/src/components/overlay.ts +24 -0
  160. package/src/components/processors.ts +18 -63
  161. package/src/components/receivers.ts +20 -60
  162. package/src/components/sampling.ts +24 -37
  163. package/src/config-hygiene.ts +36 -13
  164. package/src/coverage.test.ts +37 -0
  165. package/src/coverage.ts +121 -0
  166. package/src/define.test.ts +2 -0
  167. package/src/define.ts +10 -6
  168. package/src/distribution.test.ts +250 -0
  169. package/src/distribution.ts +305 -0
  170. package/src/generated/index.ts +4576 -0
  171. package/src/generated/lexicon-otel.json +5 -0
  172. package/src/generated/properties.json +1 -0
  173. package/src/import/roundtrip.test.ts +16 -0
  174. package/src/import/testdata/clickhouse.yaml +37 -0
  175. package/src/import/testdata/fixtures.ts +17 -2
  176. package/src/import/testdata/upstream/clickhouse-exporter.yaml +60 -0
  177. package/src/index.ts +69 -0
  178. package/src/init-templates.ts +2 -2
  179. package/src/lint/audit-catalog.ts +15 -0
  180. package/src/lint/post-synth/index.ts +4 -0
  181. package/src/lint/post-synth/otel-helpers.ts +1 -1
  182. package/src/lint/post-synth/otel119.ts +1 -1
  183. package/src/lint/post-synth/otel125.ts +1 -1
  184. package/src/lint/post-synth/otel126.ts +1 -1
  185. package/src/lint/post-synth/otel127.ts +1 -1
  186. package/src/lint/post-synth/otel128.ts +22 -0
  187. package/src/lint/post-synth/otel129.ts +99 -0
  188. package/src/lsp/completions.ts +30 -1
  189. package/src/lsp/hover.ts +14 -3
  190. package/src/lsp/properties.test.ts +72 -0
  191. package/src/lsp/properties.ts +141 -0
  192. package/src/metric-names.test.ts +11 -0
  193. package/src/metric-names.ts +64 -16
  194. package/src/model.ts +1 -1
  195. package/src/op/activities/collector-audit.test.ts +29 -22
  196. package/src/op/activities/collector-audit.ts +38 -18
  197. package/src/plugin.test.ts +2 -0
  198. package/src/plugin.ts +57 -6
  199. package/src/serializer.ts +11 -2
  200. package/src/spec/builtins.ts +56 -0
  201. package/src/spec/fetch.ts +332 -0
  202. package/src/spec/otel-schemas.snapshot.json +13932 -0
  203. package/src/spec/parse.ts +364 -0
  204. package/src/spec/pin.ts +155 -0
  205. package/src/spec/snapshot-cli.ts +32 -0
  206. package/src/spec/snapshot.ts +19 -0
  207. package/src/spec/spec.test.ts +144 -0
  208. package/src/validate-config.ts +4 -3
  209. package/src/validate.ts +1 -0
  210. package/src/workspace-links.e2e.test.ts +91 -0
  211. package/src/workspace-links.ts +50 -0
@@ -0,0 +1,4576 @@
1
+ // Generated by `npm run generate` from src/spec/otel-schemas.snapshot.json. Do not edit.
2
+ // Versions: otelcol-contrib v0.162.0, otelcol-k8s v0.162.0, core v0.162.0, contrib v0.162.0.
3
+ // Upstream publishes no schema for these $refs, so they are typed `unknown`:
4
+ // github.com/open-telemetry/opentelemetry-collector-contrib/internal/healthcheck.config
5
+ // github.com/open-telemetry/opentelemetry-collector-contrib/processor/filterprocessor/internal/condition.context_conditions
6
+ // github.com/open-telemetry/opentelemetry-collector-contrib/processor/resourcedetectionprocessor/internal/azure/appservice/internal/metadata.resource_attributes_config
7
+ // github.com/open-telemetry/opentelemetry-collector-contrib/processor/resourcedetectionprocessor/internal/azure/functions/internal/metadata.resource_attributes_config
8
+ // github.com/open-telemetry/opentelemetry-collector-contrib/processor/resourcedetectionprocessor/internal/ibmcloud/classic.config
9
+ // github.com/open-telemetry/opentelemetry-collector-contrib/processor/resourcedetectionprocessor/internal/ibmcloud/vpc.config
10
+ // github.com/open-telemetry/opentelemetry-collector-contrib/processor/resourcedetectionprocessor/internal/tencent/cvm.config
11
+ // github.com/open-telemetry/opentelemetry-collector-contrib/receiver/hostmetricsreceiver/internal/scraper/cpuscraper.config
12
+ // github.com/open-telemetry/opentelemetry-collector-contrib/receiver/hostmetricsreceiver/internal/scraper/diskscraper.config
13
+ // github.com/open-telemetry/opentelemetry-collector-contrib/receiver/hostmetricsreceiver/internal/scraper/filesystemscraper.config
14
+ // github.com/open-telemetry/opentelemetry-collector-contrib/receiver/hostmetricsreceiver/internal/scraper/loadscraper.config
15
+ // github.com/open-telemetry/opentelemetry-collector-contrib/receiver/hostmetricsreceiver/internal/scraper/memoryscraper.config
16
+ // github.com/open-telemetry/opentelemetry-collector-contrib/receiver/hostmetricsreceiver/internal/scraper/networkscraper.config
17
+ // github.com/open-telemetry/opentelemetry-collector-contrib/receiver/hostmetricsreceiver/internal/scraper/nfsscraper.config
18
+ // github.com/open-telemetry/opentelemetry-collector-contrib/receiver/hostmetricsreceiver/internal/scraper/pagingscraper.config
19
+ // github.com/open-telemetry/opentelemetry-collector-contrib/receiver/hostmetricsreceiver/internal/scraper/processesscraper.config
20
+ // github.com/open-telemetry/opentelemetry-collector-contrib/receiver/hostmetricsreceiver/internal/scraper/processscraper.config
21
+ // github.com/open-telemetry/opentelemetry-collector-contrib/receiver/hostmetricsreceiver/internal/scraper/systemscraper.config
22
+ // go.opentelemetry.io/collector/pipeline.id
23
+
24
+ import type { Duration } from "../components/common";
25
+
26
+ /** Config defines the auth settings for the receiver. */
27
+ export type CollectorConfigConfigauthConfig = {
28
+ /** AuthenticatorID specifies the name of the extension to use in order to authenticate the incoming data point. */
29
+ authenticator?: string;
30
+ };
31
+
32
+ export type CollectorConfigConfigcompressionCompressionParams = {
33
+ level?: CollectorConfigConfigcompressionLevel;
34
+ };
35
+
36
+ export type CollectorConfigConfigcompressionLevel = number;
37
+
38
+ /** Type represents a compression method */
39
+ export type CollectorConfigConfigcompressionType = string;
40
+
41
+ /** ClientConfig defines common settings for a gRPC client configuration. */
42
+ export type CollectorConfigConfiggrpcClientConfig = {
43
+ /** Auth configuration for outgoing RPCs. */
44
+ auth?: CollectorConfigConfigauthConfig | null;
45
+ /** WithAuthority parameter configures client to rewrite ":authority" header (godoc.org/google.golang.org/grpc#WithAuthority) */
46
+ authority?: string;
47
+ /** Sets the balancer in grpclb_policy to discover the servers. Default is pick_first. https://github.com/grpc/grpc-go/blob/master/examples/features/load_balancing/README.md */
48
+ balancer_name?: string;
49
+ /** The compression key for supported compression types within collector. */
50
+ compression?: CollectorConfigConfigcompressionType;
51
+ /** The target to which the exporter is going to send traces or metrics, using the gRPC protocol. The valid syntax is described at https://github.com/grpc/grpc/blob/master/doc/naming.md. */
52
+ endpoint?: string;
53
+ /** The headers associated with gRPC requests. */
54
+ headers?: CollectorConfigConfigopaqueMapList;
55
+ /** The keepalive parameters for gRPC client. See grpc.WithKeepaliveParams. (https://godoc.org/google.golang.org/grpc#WithKeepaliveParams). */
56
+ keepalive?: CollectorConfigConfiggrpcKeepaliveClientConfig | null;
57
+ /** Middlewares for the gRPC client. */
58
+ middlewares?: Array<CollectorConfigConfigmiddlewareConfig>;
59
+ /** ReadBufferSize for gRPC client. See grpc.WithReadBufferSize. (https://godoc.org/google.golang.org/grpc#WithReadBufferSize). */
60
+ read_buffer_size?: number;
61
+ /** TLS struct exposes TLS client configuration. */
62
+ tls?: CollectorConfigConfigtlsClientConfig;
63
+ /** UserAgent overrides the default user-agent header sent on gRPC requests. The default is derived from the build info. When empty, the caller controls the user-agent via grpc.WithUserAgent or similar options. */
64
+ user_agent?: string;
65
+ /** WaitForReady parameter configures client to wait for ready state before sending data. (https://github.com/grpc/grpc/blob/master/doc/wait-for-ready.md) */
66
+ wait_for_ready?: boolean;
67
+ /** WriteBufferSize for gRPC gRPC. See grpc.WithWriteBufferSize. (https://godoc.org/google.golang.org/grpc#WithWriteBufferSize). */
68
+ write_buffer_size?: number;
69
+ };
70
+
71
+ /** KeepaliveClientConfig exposes the keepalive.ClientParameters to be used by the exporter. Refer to the original data-structure for the meaning of each parameter: https://godoc.org/google.golang.org/grpc/keepalive#ClientParameters */
72
+ export type CollectorConfigConfiggrpcKeepaliveClientConfig = {
73
+ permit_without_stream?: boolean;
74
+ time?: Duration;
75
+ timeout?: Duration;
76
+ };
77
+
78
+ /** KeepaliveEnforcementPolicy allow configuration of the keepalive.EnforcementPolicy. The same default values as keepalive.EnforcementPolicy are applicable and get applied by the server. See https://godoc.org/google.golang.org/grpc/keepalive#EnforcementPolicy for details. */
79
+ export type CollectorConfigConfiggrpcKeepaliveEnforcementPolicy = {
80
+ min_time?: Duration;
81
+ permit_without_stream?: boolean;
82
+ };
83
+
84
+ /** KeepaliveServerConfig is the configuration for keepalive. */
85
+ export type CollectorConfigConfiggrpcKeepaliveServerConfig = {
86
+ enforcement_policy?: CollectorConfigConfiggrpcKeepaliveEnforcementPolicy | null;
87
+ server_parameters?: CollectorConfigConfiggrpcKeepaliveServerParameters | null;
88
+ };
89
+
90
+ /** KeepaliveServerParameters allow configuration of the keepalive.ServerParameters. The same default values as keepalive.ServerParameters are applicable and get applied by the server. See https://godoc.org/google.golang.org/grpc/keepalive#ServerParameters for details. */
91
+ export type CollectorConfigConfiggrpcKeepaliveServerParameters = {
92
+ max_connection_age?: Duration;
93
+ max_connection_age_grace?: Duration;
94
+ max_connection_idle?: Duration;
95
+ time?: Duration;
96
+ timeout?: Duration;
97
+ };
98
+
99
+ /** ServerConfig defines common settings for a gRPC server configuration. */
100
+ export type CollectorConfigConfiggrpcServerConfig = CollectorConfigConfignetAddrConfig & {
101
+ /** Auth for this receiver */
102
+ auth?: CollectorConfigConfigauthConfig | null;
103
+ /** Include propagates the incoming connection's metadata to downstream consumers. */
104
+ include_metadata?: boolean;
105
+ /** Keepalive anchor for all the settings related to keepalive. */
106
+ keepalive?: CollectorConfigConfiggrpcKeepaliveServerConfig | null;
107
+ /** MaxConcurrentStreams sets the limit on the number of concurrent streams to each ServerTransport. It has effect only for streaming RPCs. */
108
+ max_concurrent_streams?: number;
109
+ /** MaxRecvMsgSizeMiB sets the maximum size (in MiB) of messages accepted by the server. */
110
+ max_recv_msg_size_mib?: number;
111
+ /** Middlewares for the gRPC server. */
112
+ middlewares?: Array<CollectorConfigConfigmiddlewareConfig>;
113
+ /** ReadBufferSize for gRPC server. See grpc.ReadBufferSize. (https://godoc.org/google.golang.org/grpc#ReadBufferSize). */
114
+ read_buffer_size?: number;
115
+ /** Configures the protocol to use TLS. The default value is nil, which will cause the protocol to not use TLS. */
116
+ tls?: CollectorConfigConfigtlsServerConfig | null;
117
+ /** WriteBufferSize for gRPC server. See grpc.WriteBufferSize. (https://godoc.org/google.golang.org/grpc#WriteBufferSize). */
118
+ write_buffer_size?: number;
119
+ };
120
+
121
+ export type CollectorConfigConfighttpAuthConfig = CollectorConfigConfigauthConfig & {
122
+ /** RequestParameters is a list of parameters that should be extracted from the request and added to the context. When a parameter is found in both the query string and the header, the value from the query string will be used. */
123
+ request_params?: Array<string>;
124
+ };
125
+
126
+ /** ClientConfig defines settings for creating an HTTP client. */
127
+ export type CollectorConfigConfighttpClientConfig = {
128
+ /** Auth configuration for outgoing HTTP calls. */
129
+ auth?: CollectorConfigConfigauthConfig | null;
130
+ /** The compression key for supported compression types within collector. */
131
+ compression?: CollectorConfigConfigcompressionType;
132
+ /** Advanced configuration options for the Compression */
133
+ compression_params?: CollectorConfigConfigcompressionCompressionParams;
134
+ /** Cookies configures the cookie management of the HTTP client. */
135
+ cookies?: CollectorConfigConfighttpCookiesConfig | null;
136
+ /** The target URL to send data to (e.g.: http://some.url:9411/v1/traces). */
137
+ endpoint?: string;
138
+ /** Enabling ForceAttemptHTTP2 forces the HTTP transport to use the HTTP/2 protocol. By default, this is set to true. NOTE: HTTP/2 does not support settings such as MaxConnsPerHost, MaxIdleConnsPerHost and MaxIdleConns. */
139
+ force_attempt_http2?: boolean;
140
+ /** Additional headers attached to each HTTP request sent by the client. Existing header values are overwritten if collision happens. Header values are opaque since they may be sensitive. */
141
+ headers?: CollectorConfigConfigopaqueMapList;
142
+ /** HTTP2PingTimeout if there's no response to the ping within the configured value, the connection will be closed. If not set or set to 0, it defaults to 15s. */
143
+ http2_ping_timeout?: Duration;
144
+ /** This is needed in case you run into https://github.com/golang/go/issues/59690 https://github.com/golang/go/issues/36026 HTTP2ReadIdleTimeout if the connection has been idle for the configured value send a ping frame for health check 0s means no health check will be performed. */
145
+ http2_read_idle_timeout?: Duration;
146
+ /** Keepalive settings for the HTTP client. */
147
+ keepalive?: CollectorConfigConfighttpKeepaliveClientConfig | null;
148
+ /** MaxConnsPerHost limits the total number of connections per host, including connections in the dialing, active, and idle states. Default is 0 (unlimited). */
149
+ max_conns_per_host?: number;
150
+ /** Middlewares are used to add custom functionality to the HTTP client. Middleware handlers are called in the order they appear in this list, with the first middleware becoming the outermost handler. */
151
+ middlewares?: Array<CollectorConfigConfigmiddlewareConfig>;
152
+ /** ProxyURL setting for the collector */
153
+ proxy_url?: string;
154
+ /** ReadBufferSize for HTTP client. See http.Transport.ReadBufferSize. Default is 0. */
155
+ read_buffer_size?: number;
156
+ /** Timeout parameter configures `http.Client.Timeout`. Default is 0 (unlimited). */
157
+ timeout?: Duration;
158
+ /** TLS struct exposes TLS client configuration. */
159
+ tls?: CollectorConfigConfigtlsClientConfig;
160
+ /** WriteBufferSize for HTTP client. See http.Transport.WriteBufferSize. Default is 0. */
161
+ write_buffer_size?: number;
162
+ };
163
+
164
+ /** CookiesConfig defines the configuration of the HTTP client regarding cookies served by the server. */
165
+ export type CollectorConfigConfighttpCookiesConfig = unknown;
166
+
167
+ /** CORSConfig configures a receiver for HTTP cross-origin resource sharing (CORS). See the underlying https://github.com/rs/cors package for details. */
168
+ export type CollectorConfigConfighttpCorsConfig = {
169
+ /** AllowedHeaders sets what headers will be allowed in CORS requests. The Accept, Accept-Language, Content-Type, and Content-Language headers are implicitly allowed. If no headers are listed, X-Requested-With will also be accepted by default. Include "*" to allow any request header. */
170
+ allowed_headers?: Array<string>;
171
+ /** AllowedOrigins sets the allowed values of the Origin header for HTTP/JSON requests to an OTLP receiver. An origin may contain a wildcard (*) to replace 0 or more characters (e.g., "http://*.domain.com", or "*" to allow any origin). */
172
+ allowed_origins?: Array<string>;
173
+ /** ExposedHeaders sets the value of the Access-Control-Expose-Headers response header, indicating which headers are safe to expose to the API of a CORS response. */
174
+ exposed_headers?: Array<string>;
175
+ /** MaxAge sets the value of the Access-Control-Max-Age response header. Set it to the number of seconds that browsers should cache a CORS preflight response for. */
176
+ max_age?: number;
177
+ };
178
+
179
+ /** KeepaliveClientConfig describes the keepalive configuration for the HTTP client. */
180
+ export type CollectorConfigConfighttpKeepaliveClientConfig = {
181
+ /** Set to false to disable HTTP keep-alives. Default is true. */
182
+ enabled?: boolean;
183
+ /** IdleConnTimeout is the maximum amount of time an idle (keep-alive) connection will remain open before closing itself. Default is 90 seconds. */
184
+ idle_conn_timeout?: Duration;
185
+ /** MaxIdleConns is used to set a limit to the maximum idle HTTP connections the client can keep open. Default is 100. Zero means no limit. */
186
+ max_idle_conns?: number;
187
+ /** MaxIdleConnsPerHost is used to set a limit to the maximum idle HTTP connections the host can keep open. If zero, net/http.DefaultMaxIdleConnsPerHost is used. */
188
+ max_idle_conns_per_host?: number;
189
+ };
190
+
191
+ /** KeepaliveServerConfig controls HTTP keep-alive settings for the server. */
192
+ export type CollectorConfigConfighttpKeepaliveServerConfig = {
193
+ /** Set to false to disable HTTP keep-alives. Default is true. */
194
+ enabled?: boolean;
195
+ /** IdleTimeout is the maximum amount of time to wait for the next request when keep-alives are enabled. If IdleTimeout is zero, the value of ReadTimeout is used. If both are zero, there is no timeout. */
196
+ idle_timeout?: Duration;
197
+ };
198
+
199
+ /** ServerConfig defines settings for creating an HTTP server. */
200
+ export type CollectorConfigConfighttpServerConfig = {
201
+ /** Auth for this receiver */
202
+ auth?: CollectorConfigConfighttpAuthConfig | null;
203
+ /** CompressionAlgorithms configures the list of compression algorithms the server can accept. Default: ["", "gzip", "zstd", "zlib", "snappy", "deflate"] */
204
+ compression_algorithms?: Array<string>;
205
+ /** CORS configures the server for HTTP cross-origin resource sharing (CORS). */
206
+ cors?: CollectorConfigConfighttpCorsConfig | null;
207
+ /** Endpoint configures the listening address for the server. */
208
+ endpoint?: string;
209
+ /** IncludeMetadata propagates the client metadata from the incoming requests to the downstream consumers */
210
+ include_metadata?: boolean;
211
+ /** Keepalive settings for the HTTP server. */
212
+ keepalive?: CollectorConfigConfighttpKeepaliveServerConfig | null;
213
+ /** MaxRequestBodySize sets the maximum request body size in bytes. Default: 20MiB. */
214
+ max_request_body_size?: number;
215
+ /** Middlewares are used to add custom functionality to the HTTP server. Middleware handlers are called in the order they appear in this list, with the first middleware becoming the outermost handler. */
216
+ middlewares?: Array<CollectorConfigConfigmiddlewareConfig>;
217
+ /** ReadHeaderTimeout is the amount of time allowed to read request headers. The connection's read deadline is reset after reading the headers and the Handler can decide what is considered too slow for the body. If ReadHeaderTimeout is zero, the value of ReadTimeout is used. If both are zero, there is no timeout. */
218
+ read_header_timeout?: Duration;
219
+ /** ReadTimeout is the maximum duration for reading the entire request, including the body. A zero or negative value means there will be no timeout. Because ReadTimeout does not let Handlers make per-request decisions on each request body's acceptable deadline or upload rate, most users will prefer to use ReadHeaderTimeout. It is valid to use them both. */
220
+ read_timeout?: Duration;
221
+ /** Additional headers attached to each HTTP response sent to the client. Header values are opaque since they may be sensitive. */
222
+ response_headers?: CollectorConfigConfigopaqueMapList;
223
+ /** TLS struct exposes TLS client configuration. */
224
+ tls?: CollectorConfigConfigtlsServerConfig | null;
225
+ /** WriteTimeout is the maximum duration before timing out writes of the response. It is reset whenever a new request's header is read. Like ReadTimeout, it does not let Handlers make decisions on a per-request basis. A zero or negative value means there will be no timeout. */
226
+ write_timeout?: Duration;
227
+ };
228
+
229
+ /** Middleware defines the extension ID for a middleware component. */
230
+ export type CollectorConfigConfigmiddlewareConfig = {
231
+ /** ID specifies the name of the extension to use. */
232
+ id?: string;
233
+ };
234
+
235
+ /** AddrConfig represents a network endpoint address. */
236
+ export type CollectorConfigConfignetAddrConfig = {
237
+ /** DialerConfig contains options for connecting to an address. */
238
+ dialer?: CollectorConfigConfignetDialerConfig;
239
+ /** Endpoint configures the address for this network connection. For TCP and UDP networks, the address has the form "host:port". The host must be a literal IP address, or a host name that can be resolved to IP addresses. The port must be a literal port number or a service name. If the host is a literal IPv6 address it must be enclosed in square brackets, as in "[2001:db8::1]:80" or "[fe80::1%zone]:80". The zone specifies the scope of the literal IPv6 address as defined in RFC 4007. */
240
+ endpoint?: string;
241
+ /** Transport to use. Allowed protocols are "tcp", "tcp4" (IPv4-only), "tcp6" (IPv6-only), "udp", "udp4" (IPv4-only), "udp6" (IPv6-only), "ip", "ip4" (IPv4-only), "ip6" (IPv6-only), "unix", "unixgram", "unixpacket" and "npipe" (Windows named pipes, Windows-only). */
242
+ transport?: CollectorConfigConfignetTransportType;
243
+ };
244
+
245
+ /** DialerConfig contains options for connecting to an address. */
246
+ export type CollectorConfigConfignetDialerConfig = {
247
+ /** Timeout is the maximum amount of time a dial will wait for a connect to complete. The default is no timeout. */
248
+ timeout?: Duration;
249
+ };
250
+
251
+ /** TCPAddrConfig represents a TCP endpoint address. */
252
+ export type CollectorConfigConfignetTcpAddrConfig = {
253
+ /** DialerConfig contains options for connecting to an address. */
254
+ dialer?: CollectorConfigConfignetDialerConfig;
255
+ /** Endpoint configures the address for this network connection. The address has the form "host:port". The host must be a literal IP address, or a host name that can be resolved to IP addresses. The port must be a literal port number or a service name. If the host is a literal IPv6 address it must be enclosed in square brackets, as in "[2001:db8::1]:80" or "[fe80::1%zone]:80". The zone specifies the scope of the literal IPv6 address as defined in RFC 4007. */
256
+ endpoint?: string;
257
+ };
258
+
259
+ /** TransportType represents a type of network transport protocol */
260
+ export type CollectorConfigConfignetTransportType = string;
261
+
262
+ /** MapList is a replacement for map[string]configopaque.String with a similar API, which can also be unmarshalled from (and is stored as) a list of name/value pairs. Pairs are assumed to have distinct names. This is checked during config validation. */
263
+ export type CollectorConfigConfigopaqueMapList = Record<string, string> | Array<CollectorConfigConfigopaquePair>;
264
+
265
+ /** Pair is an element of a MapList, and consists of a name and an opaque value. */
266
+ export type CollectorConfigConfigopaquePair = {
267
+ name?: string;
268
+ value?: CollectorConfigConfigopaqueString;
269
+ };
270
+
271
+ /** String alias that is marshaled and printed in an opaque way. To recover the original value, cast it to a string. */
272
+ export type CollectorConfigConfigopaqueString = string;
273
+
274
+ /** BackOffConfig defines configuration for retrying batches in case of export failure. The current supported strategy is exponential backoff. */
275
+ export type CollectorConfigConfigretryBackOffConfig = {
276
+ /** Enabled indicates whether to not retry sending batches in case of export failure. */
277
+ enabled?: boolean;
278
+ /** InitialInterval the time to wait after the first failure before retrying. */
279
+ initial_interval?: Duration;
280
+ /** MaxElapsedTime is the maximum amount of time (including retries) spent trying to send a request/batch. Once this value is reached, the data is discarded. If set to 0, the retries are never stopped. */
281
+ max_elapsed_time?: Duration;
282
+ /** MaxInterval is the upper bound on backoff interval. Once this value is reached the delay between consecutive retries will always be `MaxInterval`. */
283
+ max_interval?: Duration;
284
+ /** Multiplier is the value multiplied by the backoff interval bounds */
285
+ multiplier?: number;
286
+ /** RandomizationFactor is a random factor used to calculate next backoffs Randomized interval = RetryInterval * (1 ± RandomizationFactor) */
287
+ randomization_factor?: number;
288
+ };
289
+
290
+ /** Level is the level of internal telemetry (metrics, logs, traces about the component itself) that every component should generate. */
291
+ export type CollectorConfigConfigtelemetryLevel = "none" | "basic" | "normal" | "detailed";
292
+
293
+ /** ClientConfig contains TLS configurations that are specific to client connections in addition to the common configurations. This should be used by components configuring TLS client connections. */
294
+ export type CollectorConfigConfigtlsClientConfig = CollectorConfigConfigtlsConfig & {
295
+ /** In gRPC and HTTP when set to true, this is used to disable the client transport security. See https://godoc.org/google.golang.org/grpc#WithInsecure for gRPC. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional, default false) */
296
+ insecure?: boolean;
297
+ /** InsecureSkipVerify will enable TLS but not verify the certificate. */
298
+ insecure_skip_verify?: boolean;
299
+ /** ServerName requested by client for virtual hosting. This sets the ServerName in the TLSConfig. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional) */
300
+ server_name_override?: string;
301
+ };
302
+
303
+ /** Config exposes the common client and server TLS configurations. Note: Since there isn't anything specific to a server connection. Components with server connections should use Config. */
304
+ export type CollectorConfigConfigtlsConfig = {
305
+ /** Path to the CA cert. For a client this verifies the server certificate. For a server this verifies client certificates. If empty uses system root CA. (optional) */
306
+ ca_file?: string;
307
+ /** In memory PEM encoded cert. (optional) */
308
+ ca_pem?: CollectorConfigConfigopaqueString;
309
+ /** Path to the TLS cert to use for TLS required connections. (optional) */
310
+ cert_file?: string;
311
+ /** In memory PEM encoded TLS cert to use for TLS required connections. (optional) */
312
+ cert_pem?: CollectorConfigConfigopaqueString;
313
+ /** CipherSuites is a list of TLS cipher suites that the TLS transport can use. If left blank, a safe default list is used. See https://go.dev/src/crypto/tls/cipher_suites.go for a list of supported cipher suites. */
314
+ cipher_suites?: Array<string>;
315
+ /** contains the elliptic curves that will be used in an ECDHE handshake, in preference order Defaults to empty list and "crypto/tls" defaults are used, internally. */
316
+ curve_preferences?: Array<string>;
317
+ /** If true, load system CA certificates pool in addition to the certificates configured in this struct. */
318
+ include_system_ca_certs_pool?: boolean;
319
+ /** Path to the TLS key to use for TLS required connections. (optional) */
320
+ key_file?: string;
321
+ /** In memory PEM encoded TLS key to use for TLS required connections. (optional) */
322
+ key_pem?: CollectorConfigConfigopaqueString;
323
+ /** MaxVersion sets the maximum TLS version that is acceptable. If not set, refer to crypto/tls for defaults. (optional) */
324
+ max_version?: string;
325
+ /** MinVersion sets the minimum TLS version that is acceptable. If not set, TLS 1.2 will be used. (optional) */
326
+ min_version?: string;
327
+ /** ReloadInterval specifies the duration after which the certificate will be reloaded If not set, it will never be reloaded (optional) */
328
+ reload_interval?: Duration;
329
+ /** Trusted platform module configuration */
330
+ tpm?: CollectorConfigConfigtlsTpmConfig;
331
+ };
332
+
333
+ /** ServerConfig contains TLS configurations that are specific to server connections in addition to the common configurations. This should be used by components configuring TLS server connections. */
334
+ export type CollectorConfigConfigtlsServerConfig = CollectorConfigConfigtlsConfig & {
335
+ /** Path to the TLS cert to use by the server to verify a client certificate. (optional) This sets the ClientCAs and ClientAuth to RequireAndVerifyClientCert in the TLSConfig. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional) */
336
+ client_ca_file?: string;
337
+ /** Reload the ClientCAs file when it is modified (optional, default false) */
338
+ client_ca_file_reload?: boolean;
339
+ };
340
+
341
+ /** TPMConfig defines trusted platform module configuration for storing TLS keys. */
342
+ export type CollectorConfigConfigtlsTpmConfig = {
343
+ auth?: string;
344
+ enabled?: boolean;
345
+ owner_auth?: string;
346
+ /** The path to the TPM device or Unix domain socket. For instance /dev/tpm0 or /dev/tpmrm0. */
347
+ path?: string;
348
+ };
349
+
350
+ /** Config defines configuration for debug exporter. */
351
+ export type CollectorExporterDebugexporterSchema = {
352
+ /** OutputPaths is a list of file paths to write logging output to. This option can only be used when use_internal_logger is false. Special strings "stdout" and "stderr" are interpreted as os.Stdout and os.Stderr respectively. All other values are treated as file paths. If not set, defaults to ["stdout"]. */
353
+ output_paths?: Array<string>;
354
+ /** SamplingInitial defines how many samples are initially logged during each second. */
355
+ sampling_initial?: number;
356
+ /** SamplingThereafter defines the sampling rate after the initial samples are logged. */
357
+ sampling_thereafter?: number;
358
+ sending_queue?: CollectorExporterExporterhelperQueueBatchConfig | null;
359
+ /** UseInternalLogger defines whether the exporter sends the output to the collector's internal logger. */
360
+ use_internal_logger?: boolean;
361
+ /** Verbosity defines the debug exporter verbosity. */
362
+ verbosity?: CollectorConfigConfigtelemetryLevel;
363
+ };
364
+
365
+ /** BatchConfig defines a configuration for batching requests based on a timeout and a minimum number of items. */
366
+ export type CollectorExporterExporterhelperInternalQueuebatchBatchConfig = {
367
+ /** FlushTimeout sets the time after which a batch will be sent regardless of its size. */
368
+ flush_timeout?: Duration;
369
+ /** MaxSize defines the configuration for the maximum size of a batch. */
370
+ max_size?: number;
371
+ /** MinSize defines the configuration for the minimum size of a batch. */
372
+ min_size?: number;
373
+ /** Partition defines the partitioning of the batches configuration. */
374
+ partition?: CollectorExporterExporterhelperInternalQueuebatchPartitionConfig;
375
+ /** Sizer determines the type of size measurement used by the batch. If not configured, use the same configuration as the queue. It accepts "requests", "items", or "bytes". */
376
+ sizer?: string;
377
+ };
378
+
379
+ /** Config defines configuration for queueing and batching incoming requests. */
380
+ export type CollectorExporterExporterhelperInternalQueuebatchConfig = {
381
+ /** BatchConfig it configures how the requests are consumed from the queue and batch together during consumption. */
382
+ batch?: CollectorExporterExporterhelperInternalQueuebatchBatchConfig | null;
383
+ /** BlockOnOverflow determines the behavior when the component's TotalSize limit is reached. If true, the component will wait for space; otherwise, operations will immediately return a retryable error. */
384
+ block_on_overflow?: boolean;
385
+ /** Enabled indicates whether to not enqueue and batch before exporting. */
386
+ enabled?: boolean;
387
+ /** NumConsumers is the maximum number of concurrent consumers from the queue. This applies across all different optional configurations from above (e.g. wait_for_result, block_on_overflow, storage, etc.). */
388
+ num_consumers?: number;
389
+ /** QueueSize represents the maximum data size allowed for concurrent storage and processing. */
390
+ queue_size?: number;
391
+ /** Sizer determines the type of size measurement used by this component. It accepts "requests", "items", or "bytes". */
392
+ sizer?: string;
393
+ /** StorageID if not empty, enables the persistent storage and uses the component specified as a storage extension for the persistent queue. TODO: This will be changed to Optional when available. See https://github.com/open-telemetry/opentelemetry-collector/issues/13822 */
394
+ storage?: string;
395
+ /** WaitForResult determines if incoming requests are blocked until the request is processed or not. Currently, this option is not available when persistent queue is configured using the storage configuration. */
396
+ wait_for_result?: boolean;
397
+ };
398
+
399
+ /** PartitionConfig defines a configuration for partitioning requests based on metadata keys. */
400
+ export type CollectorExporterExporterhelperInternalQueuebatchPartitionConfig = {
401
+ /** CacheSize is the maximum number of active partition batchers kept in the LRU cache when partitioning is enabled. When the limit is reached, the least recently used partition is flushed and removed. Default is 10000. Must be positive. */
402
+ cache_size?: number;
403
+ /** IdleTimeout is the duration a partition may stay empty before it is removed. Keep it above the data arrival interval to avoid churning partitions. Default is 90s. Must be positive. */
404
+ idle_timeout?: Duration;
405
+ /** MetadataKeys is a list of client.Metadata keys that will be used to partition the data into batches. If this setting is empty, a single batcher instance will be used. When this setting is not empty, one batcher will be used per distinct combination of values for the listed metadata keys. Empty value and unset metadata are treated as distinct cases. Entries are case-insensitive. Duplicated entries will trigger a validation error. */
406
+ metadata_keys?: Array<string>;
407
+ };
408
+
409
+ /** TimeoutConfig for timeout. The timeout applies to individual attempts to send data to the backend. */
410
+ export type CollectorExporterExporterhelperInternalTimeoutConfig = {
411
+ /** Timeout is the timeout for every attempt to send data to the backend. A zero timeout means no timeout. */
412
+ timeout?: Duration;
413
+ };
414
+
415
+ /** QueueBatchConfig defines configuration for queueing and batching for the exporter. */
416
+ export type CollectorExporterExporterhelperQueueBatchConfig = CollectorExporterExporterhelperInternalQueuebatchConfig;
417
+
418
+ export type CollectorExporterExporterhelperTimeoutConfig = CollectorExporterExporterhelperInternalTimeoutConfig;
419
+
420
+ /** Config defines configuration for OTLP exporter. */
421
+ export type CollectorExporterOtlpexporterSchema = CollectorExporterExporterhelperTimeoutConfig & CollectorConfigConfiggrpcClientConfig & {
422
+ retry_on_failure?: CollectorConfigConfigretryBackOffConfig;
423
+ sending_queue?: CollectorExporterExporterhelperQueueBatchConfig | null;
424
+ };
425
+
426
+ /** EncodingType defines the type for content encoding */
427
+ export type CollectorExporterOtlphttpexporterEncodingType = string;
428
+
429
+ /** Config defines configuration for OTLP/HTTP exporter. */
430
+ export type CollectorExporterOtlphttpexporterSchema = CollectorConfigConfighttpClientConfig & {
431
+ /** The encoding to export telemetry (default: "proto") */
432
+ encoding?: CollectorExporterOtlphttpexporterEncodingType;
433
+ /** The URL to send logs to. If omitted the Endpoint + "/v1/logs" will be used. */
434
+ logs_endpoint?: string;
435
+ /** The URL to send metrics to. If omitted the Endpoint + "/v1/metrics" will be used. */
436
+ metrics_endpoint?: string;
437
+ /** The URL to send profiles to. If omitted the Endpoint + "/v1development/profiles" will be used. */
438
+ profiles_endpoint?: string;
439
+ retry_on_failure?: CollectorConfigConfigretryBackOffConfig;
440
+ sending_queue?: CollectorExporterExporterhelperQueueBatchConfig | null;
441
+ /** The URL to send traces to. If omitted the Endpoint + "/v1/traces" will be used. */
442
+ traces_endpoint?: string;
443
+ };
444
+
445
+ /** ExpvarConfig has the configuration for the expvar service. */
446
+ export type CollectorExtensionZpagesextensionExpvarConfig = {
447
+ /** Enabled indicates whether to enable expvar service. (default = false) */
448
+ enabled?: boolean;
449
+ };
450
+
451
+ /** Config has the configuration for the extension enabling the zPages extension. */
452
+ export type CollectorExtensionZpagesextensionSchema = CollectorConfigConfighttpServerConfig & {
453
+ expvar?: CollectorExtensionZpagesextensionExpvarConfig;
454
+ };
455
+
456
+ /** Config configures the matching behavior of a Filter. */
457
+ export type CollectorFilterConfig = {
458
+ regexp?: string;
459
+ strict?: string;
460
+ };
461
+
462
+ /** Config defines configuration for memory memoryLimiter processor. */
463
+ export type CollectorInternalMemorylimiterConfig = {
464
+ /** CheckInterval is the time between measurements of memory usage for the purposes of avoiding going over the limits. Defaults to zero, so no checks will be performed. */
465
+ check_interval?: Duration;
466
+ /** MemoryLimitMiB is the maximum amount of memory, in MiB, targeted to be allocated by the process. */
467
+ limit_mib?: number;
468
+ /** MemoryLimitPercentage is the maximum amount of memory, in %, targeted to be allocated by the process. The fixed memory settings MemoryLimitMiB has a higher precedence. */
469
+ limit_percentage?: number;
470
+ /** MaxGCIntervalWhenHardLimited caps the exponential backoff between forced GC calls in hard-limited mode. Same semantics as MaxGCIntervalWhenSoftLimited but applies to the hard-limit path. Set to 0 to disable the exponential backoff on this path. */
471
+ max_gc_interval_when_hard_limited?: Duration;
472
+ /** MaxGCIntervalWhenSoftLimited caps the exponential backoff between forced GC calls in soft-limited mode. When a forced GC fails to reclaim memory (e.g., held by live references in exporter queues during a downstream outage), the interval doubles starting from min_gc_interval_when_soft_limited (or 95% of check_interval, whichever is larger) up to this cap. It resets to zero whenever a GC is effective or memory drops on its own. Set to 0 to disable the exponential backoff on this path; the interval will not grow beyond the configured min. */
473
+ max_gc_interval_when_soft_limited?: Duration;
474
+ /** MinGCIntervalWhenHardLimited minimum interval between forced GC when in hard (=limit_mib) limited mode. Zero value means no minimum interval. GCs is a CPU-heavy operation and executing it too frequently may affect the recovery capabilities of the collector. */
475
+ min_gc_interval_when_hard_limited?: Duration;
476
+ /** MinGCIntervalWhenSoftLimited minimum interval between forced GC when in soft (=limit_mib - spike_limit_mib) limited mode. Zero value means no minimum interval. GCs is a CPU-heavy operation and executing it too frequently may affect the recovery capabilities of the collector. */
477
+ min_gc_interval_when_soft_limited?: Duration;
478
+ /** MemorySpikeLimitMiB is the maximum, in MiB, spike expected between the measurements of memory usage. */
479
+ spike_limit_mib?: number;
480
+ /** MemorySpikePercentage is the maximum, in percents against the total memory, spike expected between the measurements of memory usage. */
481
+ spike_limit_percentage?: number;
482
+ };
483
+
484
+ /** SeverityNumber represents severity number of a log record. */
485
+ export type CollectorPdataPlogSeverityNumber = number | string;
486
+
487
+ /** Config defines configuration for batch processor. */
488
+ export type CollectorProcessorBatchprocessorSchema = {
489
+ /** MetadataCardinalityLimit indicates the maximum number of batcher instances that will be created through a distinct combination of MetadataKeys. */
490
+ metadata_cardinality_limit?: number;
491
+ /** MetadataKeys is a list of client.Metadata keys that will be used to form distinct batchers. If this setting is empty, a single batcher instance will be used. When this setting is not empty, one batcher will be used per distinct combination of values for the listed metadata keys. Empty value and unset metadata are treated as distinct cases. Entries are case-insensitive. Duplicated entries will trigger a validation error. */
492
+ metadata_keys?: Array<string>;
493
+ /** SendBatchMaxSize is the maximum size of a batch. It must be larger than SendBatchSize. Larger batches are split into smaller units. Default value is 0, that means no maximum size. */
494
+ send_batch_max_size?: number;
495
+ /** SendBatchSize is the size of a batch which after hit, will trigger it to be sent. When this is set to zero, the batch size is ignored and data will be sent immediately subject to only send_batch_max_size. */
496
+ send_batch_size?: number;
497
+ /** Timeout sets the time after which a batch will be sent regardless of size. When this is set to zero, batched data will be sent immediately. */
498
+ timeout?: Duration;
499
+ };
500
+
501
+ export type CollectorProcessorMemorylimiterprocessorSchema = CollectorInternalMemorylimiterConfig;
502
+
503
+ export type CollectorReceiverOtlpreceiverHttpConfig = CollectorConfigConfighttpServerConfig & {
504
+ /** The URL path to receive logs on. If omitted "/v1/logs" will be used. */
505
+ logs_url_path?: CollectorReceiverOtlpreceiverSanitizedUrlPath;
506
+ /** The URL path to receive metrics on. If omitted "/v1/metrics" will be used. */
507
+ metrics_url_path?: CollectorReceiverOtlpreceiverSanitizedUrlPath;
508
+ /** The URL path to receive traces on. If omitted "/v1/traces" will be used. */
509
+ traces_url_path?: CollectorReceiverOtlpreceiverSanitizedUrlPath;
510
+ };
511
+
512
+ /** Protocols is the configuration for the supported protocols. */
513
+ export type CollectorReceiverOtlpreceiverProtocols = {
514
+ grpc?: CollectorConfigConfiggrpcServerConfig | null;
515
+ http?: CollectorReceiverOtlpreceiverHttpConfig | null;
516
+ };
517
+
518
+ export type CollectorReceiverOtlpreceiverSanitizedUrlPath = string;
519
+
520
+ /** Config defines configuration for OTLP receiver. */
521
+ export type CollectorReceiverOtlpreceiverSchema = {
522
+ /** Protocols is the configuration for the supported protocols, currently gRPC and HTTP (Proto and JSON). */
523
+ protocols?: CollectorReceiverOtlpreceiverProtocols;
524
+ };
525
+
526
+ /** ControllerConfig defines common settings for a scraper controller configuration. Scraper controller receivers can embed this struct, instead of receiver.Settings, and extend it with more fields if needed. */
527
+ export type CollectorScraperScraperhelperControllerConfig = {
528
+ /** CollectionInterval sets how frequently the scraper is scheduled. */
529
+ collection_interval?: Duration;
530
+ /** InitialDelay sets the initial start delay for the scraper, any non positive value is assumed to be immediately. */
531
+ initial_delay?: Duration;
532
+ /** Timeout is an optional value used to set scraper's context deadline. */
533
+ timeout?: Duration;
534
+ };
535
+
536
+ export type ConnectorCountconnectorAttributeConfig = {
537
+ default_value?: unknown;
538
+ key?: string;
539
+ };
540
+
541
+ /** MetricInfo for a data type */
542
+ export type ConnectorCountconnectorMetricInfo = {
543
+ attributes?: Array<ConnectorCountconnectorAttributeConfig>;
544
+ conditions?: Array<string>;
545
+ description?: string;
546
+ };
547
+
548
+ /** Config for the connector */
549
+ export type ConnectorCountconnectorSchema = {
550
+ datapoints?: Record<string, ConnectorCountconnectorMetricInfo>;
551
+ logs?: Record<string, ConnectorCountconnectorMetricInfo>;
552
+ metrics?: Record<string, ConnectorCountconnectorMetricInfo>;
553
+ profiles?: Record<string, ConnectorCountconnectorMetricInfo>;
554
+ spanevents?: Record<string, ConnectorCountconnectorMetricInfo>;
555
+ spans?: Record<string, ConnectorCountconnectorMetricInfo>;
556
+ };
557
+
558
+ export type ConnectorRoutingconnectorAction = string;
559
+
560
+ /** RoutingTableItem specifies how data should be routed to the different pipelines */
561
+ export type ConnectorRoutingconnectorRoutingTableItem = {
562
+ /** Action indicates the type of operation we intend to do when the condition Matches for the corresponding context and data. */
563
+ action?: ConnectorRoutingconnectorAction;
564
+ /** Condition is an OTTL condition used for making a routing decision. For the "request" context, 'Condition' is required and must be of the form 'request["<attribute>"] {== | !=} <value>'. For all other contexts, 'Statement' or 'Condition' must be provided, and must be a valid OTTL condition. */
565
+ condition?: string;
566
+ /** One of "request" (deprecated), "resource", "log", "span", "metric", "datapoint", "otelcol". Optional. Default is inferred from the condition/statement paths. */
567
+ context?: string;
568
+ /** Pipelines contains the list of pipelines to use when the value from the FromAttribute field matches this table item. When no pipelines are specified, the ones specified under DefaultPipelines are used, if any. The routing processor will fail upon the first failure from these pipelines. Optional. */
569
+ pipelines?: Array<unknown>;
570
+ /** Statement is an OTTL statement used for making a routing decision. 'Statement' is disallowed for the "request" context. For other contexts, 'Statement' or 'Condition' must be provided. */
571
+ statement?: string;
572
+ };
573
+
574
+ /** Config defines configuration for the Routing processor. */
575
+ export type ConnectorRoutingconnectorSchema = {
576
+ /** DefaultPipelines contains the list of pipelines to use when a more specific record can't be found in the routing table. Optional. */
577
+ default_pipelines?: Array<unknown>;
578
+ /** ErrorMode determines how the processor reacts to errors that occur while processing an OTTL condition. Valid values are `ignore` and `propagate`. `ignore` means the processor ignores errors returned by conditions and continues on to the next condition. This is the recommended mode. If `ignore` is used and a statement's condition has an error then the payload will be routed to the default exporter. `propagate` means the processor returns the error up the pipeline. This will result in the payload being dropped from the collector. The default value is `ignore` when the `connector.routing.defaultErrorModeIgnore` feature gate is enabled (default), and `propagate` when disabled. */
579
+ error_mode?: PkgOttlErrorMode;
580
+ /** Table contains the routing table for this processor. Required. */
581
+ table?: Array<ConnectorRoutingconnectorRoutingTableItem>;
582
+ };
583
+
584
+ /** Config defines the configuration options for servicegraphprocessor. */
585
+ export type ConnectorServicegraphconnectorSchema = {
586
+ /** CacheLoop is the time to cleans the cache periodically. */
587
+ cache_loop?: Duration;
588
+ /** DatabaseNameAttributes is the attribute name list of attributes need to match used to identify the database name from span attributes, the higher the front, the higher the priority. The default value is {"db.name"}. */
589
+ database_name_attributes?: Array<string>;
590
+ /** Dimensions defines the list of additional dimensions on top of the provided: - client - server - failed - connection_type The dimensions will be fetched from the span's attributes. Examples of some conventionally used attributes: https://github.com/open-telemetry/opentelemetry-collector/blob/main/model/semconv/opentelemetry.go. */
591
+ dimensions?: Array<string>;
592
+ /** ExponentialHistogramMaxSize is the setting of exponential histogram */
593
+ exponential_histogram_max_size?: number;
594
+ /** LatencyHistogramBuckets is the list of durations representing latency histogram buckets. See defaultLatencyHistogramBucketsMs in processor.go for the default value. make sure use either `LatencyHistogramBuckets` or `ExponentialHistogramMaxSize` */
595
+ latency_histogram_buckets?: Array<Duration>;
596
+ /** MetricsFlushInterval is the interval at which metrics are flushed to the exporter. If set to 0, metrics are flushed on every received batch of traces. Default is 60s if unset. */
597
+ metrics_flush_interval?: Duration;
598
+ /** MetricsTimestampOffset is the offset to subtract from metric timestamps. If set to a positive duration, metric timestamps will be set to (current time - offset), effectively shifting metrics to appear as if they were generated in the past. Default is 0, which means no offset is applied. */
599
+ metrics_timestamp_offset?: Duration;
600
+ /** Store contains the config for the in-memory store used to find requests between services by pairing spans. */
601
+ store?: ConnectorServicegraphconnectorStoreConfig;
602
+ /** CacheLoop is the time to expire old entries from the store periodically. */
603
+ store_expiration_loop?: Duration;
604
+ /** VirtualNodeExtraLabel enables the `virtual_node` label to be added to the spans. */
605
+ virtual_node_extra_label?: boolean;
606
+ /** VirtualNodePeerAttributes the list of attributes need to match, the higher the front, the higher the priority. */
607
+ virtual_node_peer_attributes?: Array<string>;
608
+ };
609
+
610
+ export type ConnectorServicegraphconnectorStoreConfig = {
611
+ /** MaxItems is the maximum number of items to keep in the store. */
612
+ max_items?: number;
613
+ /** TTL is the time to live for items in the store. */
614
+ ttl?: Duration;
615
+ };
616
+
617
+ export type ConnectorSignaltometricsconnectorConfigAttribute = {
618
+ default_value?: unknown;
619
+ key?: string;
620
+ /** KeysExpression is an OTTL value expression that resolves to a list of attribute keys at runtime. The expression must return a pcommon.Slice or []string. Exactly one of Key or KeysExpression must be set. */
621
+ keys_expression?: string;
622
+ optional?: boolean;
623
+ };
624
+
625
+ /** Config for the connector. Each configuration field describes the metrics to produce from a specific signal. */
626
+ export type ConnectorSignaltometricsconnectorConfigConfig = {
627
+ datapoints?: Array<ConnectorSignaltometricsconnectorConfigMetricInfo>;
628
+ /** ErrorMode determines how the connector reacts to errors that occur while processing an OTTL condition or statement during runtime data consumption. This setting does NOT affect errors during OTTL statement parsing at configuration time - those will always cause startup failures. Valid values are `propagate`, `ignore`, and `silent`. `propagate` means the connector returns the error up the pipeline. This will result in the payload being dropped from the collector. `ignore` means the connector ignores errors returned by conditions and continues processing. If an error occurs, the record is skipped and the error is logged. `silent` means the connector ignores errors returned by conditions and continues processing. If an error occurs, the record is skipped and the error is not logged. The default value is `propagate`. */
629
+ error_mode?: PkgOttlErrorMode;
630
+ logs?: Array<ConnectorSignaltometricsconnectorConfigMetricInfo>;
631
+ profiles?: Array<ConnectorSignaltometricsconnectorConfigMetricInfo>;
632
+ spans?: Array<ConnectorSignaltometricsconnectorConfigMetricInfo>;
633
+ };
634
+
635
+ export type ConnectorSignaltometricsconnectorConfigExponentialHistogram = {
636
+ count?: string;
637
+ max_size?: number;
638
+ value?: string;
639
+ };
640
+
641
+ export type ConnectorSignaltometricsconnectorConfigGauge = {
642
+ value?: string;
643
+ };
644
+
645
+ export type ConnectorSignaltometricsconnectorConfigHistogram = {
646
+ buckets?: Array<number>;
647
+ count?: string;
648
+ value?: string;
649
+ };
650
+
651
+ /** MetricInfo defines the structure of the metric produced by the connector. */
652
+ export type ConnectorSignaltometricsconnectorConfigMetricInfo = {
653
+ attributes?: Array<ConnectorSignaltometricsconnectorConfigAttribute>;
654
+ /** Conditions are a set of OTTL conditions which are ORed. Data is processed into metrics only if the sequence evaluates to true. */
655
+ conditions?: Array<string>;
656
+ description?: string;
657
+ exponential_histogram?: ConnectorSignaltometricsconnectorConfigExponentialHistogram | null;
658
+ gauge?: ConnectorSignaltometricsconnectorConfigGauge | null;
659
+ histogram?: ConnectorSignaltometricsconnectorConfigHistogram | null;
660
+ /** IncludeResourceAttributes is a list of resource attributes that needs to be included in the generated metric. If no resource attribute is included in the list then all attributes are included. */
661
+ include_resource_attributes?: Array<ConnectorSignaltometricsconnectorConfigAttribute>;
662
+ name?: string;
663
+ sum?: ConnectorSignaltometricsconnectorConfigSum | null;
664
+ /** Unit, if not-empty, will set the unit associated with the metric. See: https://github.com/open-telemetry/opentelemetry-collector/blob/b06236cc794982916cc956f20828b3e18eb33264/pdata/pmetric/generated_metric.go#L72-L81 */
665
+ unit?: string;
666
+ };
667
+
668
+ export type ConnectorSignaltometricsconnectorConfigSum = {
669
+ monotonic?: boolean;
670
+ value?: string;
671
+ };
672
+
673
+ /** Dimension defines a single dimension entry. Exactly one of Name (with optional Default) or Glob must be set. If Name is set, Default value will be used if dimension is missing form a span attribute. */
674
+ export type ConnectorSpanmetricsconnectorDimension = {
675
+ default?: string;
676
+ glob?: string;
677
+ name?: string;
678
+ };
679
+
680
+ export type ConnectorSpanmetricsconnectorEventsConfig = {
681
+ /** Dimensions defines the list of dimensions to add to the events metric. */
682
+ dimensions?: Array<ConnectorSpanmetricsconnectorDimension>;
683
+ /** Enabled is a flag to enable events. */
684
+ enabled?: boolean;
685
+ };
686
+
687
+ export type ConnectorSpanmetricsconnectorExemplarsConfig = {
688
+ enabled?: boolean;
689
+ max_per_data_point?: number;
690
+ };
691
+
692
+ export type ConnectorSpanmetricsconnectorExplicitHistogramConfig = {
693
+ /** Buckets is the list of durations representing explicit histogram buckets. */
694
+ buckets?: Array<Duration>;
695
+ };
696
+
697
+ export type ConnectorSpanmetricsconnectorExponentialHistogramConfig = {
698
+ max_size?: number;
699
+ };
700
+
701
+ export type ConnectorSpanmetricsconnectorHistogramConfig = {
702
+ dimensions?: Array<ConnectorSpanmetricsconnectorDimension>;
703
+ disable?: boolean;
704
+ explicit?: ConnectorSpanmetricsconnectorExplicitHistogramConfig | null;
705
+ exponential?: ConnectorSpanmetricsconnectorExponentialHistogramConfig | null;
706
+ unit?: ConnectorSpanmetricsconnectorInternalMetricsUnit;
707
+ };
708
+
709
+ export type ConnectorSpanmetricsconnectorInternalMetricsUnit = "ms" | "s";
710
+
711
+ /** Config defines the configuration options for spanmetricsconnector. */
712
+ export type ConnectorSpanmetricsconnectorSchema = {
713
+ /** Add the resource attributes to the resulting metrics (disabled by default) This option enables the old behavior https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/42103 */
714
+ add_resource_attributes?: boolean;
715
+ aggregation_cardinality_limit?: number;
716
+ aggregation_temporality?: string;
717
+ calls_dimensions?: Array<ConnectorSpanmetricsconnectorDimension>;
718
+ /** Dimensions defines the list of additional dimensions on top of the provided: - service.name - span.name - span.kind - status.code - collector.instance.id The dimensions will be fetched from the span's attributes. Examples of some conventionally used attributes: https://github.com/open-telemetry/opentelemetry-collector/blob/main/model/semconv/opentelemetry.go. */
719
+ dimensions?: Array<ConnectorSpanmetricsconnectorDimension>;
720
+ /**
721
+ * DimensionsCacheSize defines the size of cache for storing Dimensions, which helps to avoid cache memory growing indefinitely over the lifetime of the collector. Optional. See defaultDimensionsCacheSize in connector.go for the default value. Deprecated [v0.130.0]: Please use AggregationCardinalityLimit instead
722
+ * @deprecated
723
+ */
724
+ dimensions_cache_size?: number;
725
+ /** EnableMetricsSamplingMethod adds the sampling.method attribute ("extrapolated" or "counted") to metrics. When false (default), the attribute is not added. */
726
+ enable_metrics_sampling_method?: boolean;
727
+ /** Events defines the configuration for events section of spans. */
728
+ events?: ConnectorSpanmetricsconnectorEventsConfig;
729
+ exclude_dimensions?: Array<string>;
730
+ /** Exemplars defines the configuration for exemplars. */
731
+ exemplars?: ConnectorSpanmetricsconnectorExemplarsConfig;
732
+ histogram?: ConnectorSpanmetricsconnectorHistogramConfig;
733
+ include_instrumentation_scope?: Array<string>;
734
+ /** TimestampCacheSize controls the size of the cache used to keep track of delta metrics' TimestampUnixNano the last time it was flushed */
735
+ metric_timestamp_cache_size?: number;
736
+ /** MetricsExpiration is the time period after which, if no new spans are received, metrics are considered stale and will no longer be exported. Default value (0) means that the metrics will never expire. */
737
+ metrics_expiration?: Duration;
738
+ /** MetricsEmitInterval is the time period between when metrics are flushed or emitted to the configured MetricsExporter. */
739
+ metrics_flush_interval?: Duration;
740
+ /** Namespace is the namespace of the metrics emitted by the connector. */
741
+ namespace?: string;
742
+ /** ResourceMetricsCacheSize defines the size of the cache holding metrics for a service. This is mostly relevant for cumulative temporality to avoid memory leaks and correct metric timestamp resets. Optional. See defaultResourceMetricsCacheSize in connector.go for the default value. */
743
+ resource_metrics_cache_size?: number;
744
+ /** ResourceMetricsKeyAttributes filters the resource attributes used to create the resource metrics key hash. This can be used to avoid situations where resource attributes may change across service restarts, causing metric counters to break (and duplicate). A resource does not need to have all of the attributes. The list must include enough attributes to properly identify unique resources or risk aggregating data from more than one service and span. e.g. ["service.name", "telemetry.sdk.language", "telemetry.sdk.name"] See https://opentelemetry.io/docs/specs/semconv/resource/ for possible attributes. */
745
+ resource_metrics_key_attributes?: Array<string>;
746
+ /** SeriesExpiration is the time period after which individual metric series are considered stale and will no longer be exported. Default value (0) means that individual metric series will never expire. */
747
+ series_expiration?: Duration;
748
+ };
749
+
750
+ export type ConnectorSumconnectorAttributeConfig = {
751
+ default_value?: unknown;
752
+ key?: string;
753
+ };
754
+
755
+ /** MetricInfo for a data type */
756
+ export type ConnectorSumconnectorMetricInfo = {
757
+ attributes?: Array<ConnectorSumconnectorAttributeConfig>;
758
+ conditions?: Array<string>;
759
+ description?: string;
760
+ source_attribute?: string;
761
+ };
762
+
763
+ /** Config for the connector */
764
+ export type ConnectorSumconnectorSchema = {
765
+ datapoints?: Record<string, ConnectorSumconnectorMetricInfo>;
766
+ logs?: Record<string, ConnectorSumconnectorMetricInfo>;
767
+ metrics?: Record<string, ConnectorSumconnectorMetricInfo>;
768
+ spanevents?: Record<string, ConnectorSumconnectorMetricInfo>;
769
+ spans?: Record<string, ConnectorSumconnectorMetricInfo>;
770
+ };
771
+
772
+ export type ExporterClickhouseexporterInternalMetricsMetricTypeConfig = {
773
+ name?: string;
774
+ };
775
+
776
+ export type ExporterClickhouseexporterMetricTablesConfig = {
777
+ /** ExponentialHistogram is the table name for exponential histogram metric type. default is `otel_metrics_exponential_histogram`. */
778
+ exponential_histogram?: ExporterClickhouseexporterInternalMetricsMetricTypeConfig;
779
+ /** Gauge is the table name for gauge metric type. default is `otel_metrics_gauge`. */
780
+ gauge?: ExporterClickhouseexporterInternalMetricsMetricTypeConfig;
781
+ /** Histogram is the table name for histogram metric type. default is `otel_metrics_histogram`. */
782
+ histogram?: ExporterClickhouseexporterInternalMetricsMetricTypeConfig;
783
+ /** Sum is the table name for sum metric type. default is `otel_metrics_sum`. */
784
+ sum?: ExporterClickhouseexporterInternalMetricsMetricTypeConfig;
785
+ /** Summary is the table name for summary metric type. default is `otel_metrics_summary`. */
786
+ summary?: ExporterClickhouseexporterInternalMetricsMetricTypeConfig;
787
+ };
788
+
789
+ /** Config defines configuration for clickhouse exporter. */
790
+ export type ExporterClickhouseexporterSchema = CollectorExporterExporterhelperTimeoutConfig & {
791
+ /** AsyncInsert if true will enable async inserts. Default is `true`. Ignored if async inserts are configured in the `endpoint` or `connection_params`. Async inserts may still be overridden server-side. */
792
+ async_insert?: boolean;
793
+ /** ClusterName if set will append `ON CLUSTER` with the provided name when creating tables. */
794
+ cluster_name?: string;
795
+ /** Compress controls the compression algorithm. Valid options: `none` (disabled), `zstd`, `lz4` (default), `gzip`, `deflate`, `br`, `true` (lz4). */
796
+ compress?: string;
797
+ /** ConnectionParams is the extra connection parameters with map format. for example compression/dial_timeout */
798
+ connection_params?: Record<string, string>;
799
+ /** CreateSchema if set to true will run the DDL for creating the database and tables. default is true. */
800
+ create_schema?: boolean;
801
+ /** Database is the database name to export. */
802
+ database?: string;
803
+ /** Endpoint is the clickhouse endpoint. */
804
+ endpoint?: string;
805
+ /** JSON enables the JSON column type for attributes in logs and traces tables. When false (default), Map columns are used. When true, JSON columns are used. ClickHouse v25+ is recommended for reliable JSON support. You may also need to add `enable_json_type=1` to your endpoint or connection_params. */
806
+ json?: boolean;
807
+ /** LogsTableName is the table name for logs. default is `otel_logs`. */
808
+ logs_table_name?: string;
809
+ /**
810
+ * MetricsTableName is the table name for metrics. default is `otel_metrics`. Deprecated: MetricsTableName exists for historical compatibility and should not be used. To set the metrics tables name, use the MetricsTables parameter instead.
811
+ * @deprecated
812
+ */
813
+ metrics_table_name?: string;
814
+ /** MetricsTables defines the table names for metric types. */
815
+ metrics_tables?: ExporterClickhouseexporterMetricTablesConfig;
816
+ /** Password is the authentication password. */
817
+ password?: CollectorConfigConfigopaqueString;
818
+ /** ProfilesTableName is the table name for profiles. default is `otel_profiles`. */
819
+ profiles_table_name?: string;
820
+ retry_on_failure?: CollectorConfigConfigretryBackOffConfig;
821
+ sending_queue?: CollectorExporterExporterhelperQueueBatchConfig | null;
822
+ /** TableEngine is the table engine to use. default is `MergeTree()`. */
823
+ table_engine?: ExporterClickhouseexporterTableEngine;
824
+ /** TLS is the TLS config for connecting to ClickHouse. */
825
+ tls?: CollectorConfigConfigtlsClientConfig;
826
+ /** TracesTableName is the table name for traces. default is `otel_traces`. */
827
+ traces_table_name?: string;
828
+ /** TTL is The data time-to-live example 30m, 48h. 0 means no ttl. */
829
+ ttl?: Duration;
830
+ /** Username is the authentication username. */
831
+ username?: string;
832
+ };
833
+
834
+ /** TableEngine defines the ENGINE string value when creating the table. */
835
+ export type ExporterClickhouseexporterTableEngine = {
836
+ name?: string;
837
+ params?: string;
838
+ };
839
+
840
+ /** Config defines configuration for Google Cloud exporter. */
841
+ export type ExporterGooglecloudexporterSchema = CollectorExporterExporterhelperTimeoutConfig & {
842
+ sending_queue?: CollectorExporterExporterhelperQueueBatchConfig | null;
843
+ };
844
+
845
+ export type ExporterLoadbalancingexporterAwsCloudMapResolver = {
846
+ health_status?: unknown;
847
+ interval?: Duration;
848
+ namespace?: string;
849
+ owner_account?: string;
850
+ port?: number;
851
+ service_name?: string;
852
+ timeout?: Duration;
853
+ };
854
+
855
+ /** DNSResolver defines the configuration for the DNS resolver */
856
+ export type ExporterLoadbalancingexporterDnsResolver = {
857
+ hostname?: string;
858
+ interval?: Duration;
859
+ port?: string;
860
+ timeout?: Duration;
861
+ };
862
+
863
+ /** K8sSvcResolver defines the configuration for the DNS resolver */
864
+ export type ExporterLoadbalancingexporterK8SSvcResolver = {
865
+ ports?: Array<number>;
866
+ return_hostnames?: boolean;
867
+ service?: string;
868
+ timeout?: Duration;
869
+ };
870
+
871
+ /** Protocol holds the individual protocol-specific settings. Only OTLP is supported at the moment. */
872
+ export type ExporterLoadbalancingexporterProtocol = {
873
+ otlp?: CollectorExporterOtlpexporterSchema;
874
+ };
875
+
876
+ /** ResolverSettings defines the configurations for the backend resolver */
877
+ export type ExporterLoadbalancingexporterResolverSettings = {
878
+ aws_cloud_map?: ExporterLoadbalancingexporterAwsCloudMapResolver | null;
879
+ dns?: ExporterLoadbalancingexporterDnsResolver | null;
880
+ k8s?: ExporterLoadbalancingexporterK8SSvcResolver | null;
881
+ static?: ExporterLoadbalancingexporterStaticResolver | null;
882
+ };
883
+
884
+ /** Config defines configuration for the exporter. */
885
+ export type ExporterLoadbalancingexporterSchema = CollectorExporterExporterhelperTimeoutConfig & {
886
+ protocol?: ExporterLoadbalancingexporterProtocol;
887
+ resolver?: ExporterLoadbalancingexporterResolverSettings;
888
+ retry_on_failure?: CollectorConfigConfigretryBackOffConfig;
889
+ /** RoutingAttributes creates a composite routing key from the listed attributes. For traces, attributes can come from resource, scope, or span, plus the pseudo attributes "span.kind" and "span.name". For logs, attributes can come from resource, scope, or log record attributes, plus the pseudo attributes "log.severity" and "log.body". For metrics, attributes can come from resource, scope, or datapoint attributes. Keys are encoded as "name=value|name=value|" in the order configured. Missing attributes are encoded as "name=|". Non-string values are deterministically stringified. */
890
+ routing_attributes?: Array<string>;
891
+ /** RoutingKey is a single routing key value */
892
+ routing_key?: string;
893
+ sending_queue?: CollectorExporterExporterhelperQueueBatchConfig | null;
894
+ };
895
+
896
+ /** StaticResolver defines the configuration for the resolver providing a fixed list of backends */
897
+ export type ExporterLoadbalancingexporterStaticResolver = {
898
+ hostnames?: Array<string>;
899
+ };
900
+
901
+ /** Config defines configuration for Prometheus exporter. */
902
+ export type ExporterPrometheusexporterSchema = CollectorConfigConfighttpServerConfig & {
903
+ /**
904
+ * AddMetricSuffixes controls whether suffixes are added to metric names. Defaults to true. Deprecated: Use TranslationStrategy instead. This setting is ignored when TranslationStrategy is explicitly set.
905
+ * @deprecated
906
+ */
907
+ add_metric_suffixes?: boolean;
908
+ /** ConstLabels are values that are applied for every exported metric. */
909
+ const_labels?: unknown;
910
+ /** EnableOpenMetrics enables the use of the OpenMetrics encoding option for the prometheus exporter. */
911
+ enable_open_metrics?: boolean;
912
+ /** MetricExpiration defines how long metrics are kept without updates */
913
+ metric_expiration?: Duration;
914
+ /** Namespace if set, exports metrics under the provided value. */
915
+ namespace?: string;
916
+ /** ResourceConstantLabels controls which resource attributes are added as constant labels on Prometheus metrics. */
917
+ resource_constant_labels?: PkgResourcetotelemetrySettings;
918
+ /**
919
+ * ResourceToTelemetrySettings defines configuration for converting resource attributes to metric labels. Deprecated: Use ResourceConstantLabels instead.
920
+ * @deprecated
921
+ */
922
+ resource_to_telemetry_conversion?: PkgResourcetotelemetrySettings;
923
+ /** SendTimestamps will send the underlying scrape timestamp with the export */
924
+ send_timestamps?: boolean;
925
+ /** QueueBatchConfig defines the queue configuration. */
926
+ sending_queue?: CollectorExporterExporterhelperQueueBatchConfig | null;
927
+ /** TranslationStrategy controls how OTLP metric and attribute names are translated into Prometheus metric and label names. When set, this takes precedence over AddMetricSuffixes. */
928
+ translation_strategy?: string;
929
+ /** WithoutScopeInfo controls the addition of labels for the instrumentation scope. */
930
+ without_scope_info?: boolean;
931
+ };
932
+
933
+ /** Config wraps the shared healthcheck.Config to add extension-specific validation. */
934
+ export type ExtensionHealthcheckextensionSchema = unknown;
935
+
936
+ /** Config is the configuration for the leader elector extension. */
937
+ export type ExtensionK8sleaderelectorSchema = InternalK8sconfigApiConfig & {
938
+ lease_duration?: Duration;
939
+ lease_name?: string;
940
+ lease_namespace?: string;
941
+ renew_deadline?: Duration;
942
+ retry_period?: Duration;
943
+ };
944
+
945
+ /** Config has the configuration for the extension enabling the golang net/http/pprof (Performance Profiler) extension. */
946
+ export type ExtensionPprofextensionSchema = CollectorConfigConfignetTcpAddrConfig & {
947
+ /** Fraction of blocking events that are profiled. A value <= 0 disables profiling. See https://golang.org/pkg/runtime/#SetBlockProfileRate for details. */
948
+ block_profile_fraction?: number;
949
+ /** Fraction of mutex contention events that are profiled. A value <= 0 disables profiling. See https://golang.org/pkg/runtime/#SetMutexProfileFraction for details. */
950
+ mutex_profile_fraction?: number;
951
+ /** Optional file name to save the CPU profile to. The profiling starts when the Collector starts and is saved to the file when the Collector is terminated. */
952
+ save_to_file?: string;
953
+ };
954
+
955
+ /** Action is the enum to capture the four types of actions to perform on an attribute. */
956
+ export type InternalCoreinternalAttractionAction = string;
957
+
958
+ /** ActionKeyValue specifies the attribute key to act upon. */
959
+ export type InternalCoreinternalAttractionActionKeyValue = {
960
+ /** Action specifies the type of action to perform. The set of values are {INSERT, UPDATE, UPSERT, DELETE, HASH}. Both lower case and upper case are supported. INSERT - Inserts the key/value to attributes when the key does not exist. No action is applied to attributes where the key already exists. Either Value, FromAttribute or FromContext must be set. UPDATE - Updates an existing key with a value. No action is applied to attributes where the key does not exist. Either Value, FromAttribute or FromContext must be set. UPSERT - Performs insert or update action depending on the attributes containing the key. The key/value is inserted to attributes that did not originally have the key. The key/value is updated for attributes where the key already existed. Either Value, FromAttribute or FromContext must be set. DELETE - Deletes the attribute. If the key doesn't exist, no action is performed. HASH - Calculates the SHA-1 hash of an existing value and overwrites the value with its SHA-1 hash result. If the feature gate `coreinternal.attraction.hash.sha256` is enabled, it uses SHA2-256 instead. EXTRACT - Extracts values using a regular expression rule from the input 'key' to target keys specified in the 'rule'. If a target key already exists, it will be overridden. CONVERT - converts the type of an existing attribute, if convertable This is a required field. */
961
+ action?: InternalCoreinternalAttractionAction;
962
+ /** ConvertedType specifies the target type of an attribute to be converted If the key doesn't exist, no action is performed. If the value cannot be converted, the original value will be left as-is */
963
+ converted_type?: string;
964
+ /** DefaultValue specifies the value to use if Value/FromAttribute/FromContext doesn't provide a value (e.g., environment variable not set, attribute doesn't exist). Only used with INSERT, UPDATE, and UPSERT actions. */
965
+ default_value?: unknown;
966
+ /** FromAttribute specifies the attribute to use to populate the value. If the attribute doesn't exist, no action is performed. */
967
+ from_attribute?: string;
968
+ /** FromContext specifies the context value to use to populate the value. The values would be searched in client.Info.Metadata. If the key doesn't exist, no action is performed. If the key has multiple values the values will be joined with `;` separator. */
969
+ from_context?: string;
970
+ /** Key specifies the attribute to act upon. This is a required field. */
971
+ key?: string;
972
+ /** A regex pattern must be specified for the action EXTRACT. It uses the attribute specified by `key' to extract values from The target keys are inferred based on the names of the matcher groups provided and the names will be inferred based on the values of the matcher group. Note: All subexpressions must have a name. Note: The value type of the source key must be a string. If it isn't, no extraction will occur. */
973
+ pattern?: string;
974
+ /** Value specifies the value to populate for the key. The type of the value is inferred from the configuration. */
975
+ value?: unknown;
976
+ };
977
+
978
+ /** Settings specifies the processor settings. */
979
+ export type InternalCoreinternalAttractionSettings = {
980
+ /** Actions specifies the list of attributes to act on. The set of actions are {INSERT, UPDATE, UPSERT, DELETE, HASH, EXTRACT, CONVERT}. This is a required field. */
981
+ actions?: Array<InternalCoreinternalAttractionActionKeyValue>;
982
+ };
983
+
984
+ /** Config defines configuration for retrying batches in case of receiving a retryable error from a downstream consumer. If the retryable error doesn't provide a delay, exponential backoff is applied. */
985
+ export type InternalCoreinternalConsumerretryConfig = {
986
+ /** Enabled indicates whether to not retry sending logs in case of receiving a retryable error from a downstream consumer. Default is false. */
987
+ enabled?: boolean;
988
+ /** InitialInterval the time to wait after the first failure before retrying. Default value is 1 second. */
989
+ initial_interval?: Duration;
990
+ /** MaxElapsedTime is the maximum amount of time (including retries) spent trying to send a logs batch to a downstream consumer. Once this value is reached, the data is discarded. It never stops if MaxElapsedTime == 0. Default value is 5 minutes. */
991
+ max_elapsed_time?: Duration;
992
+ /** MaxInterval is the upper bound on backoff interval. Once this value is reached the delay between consecutive retries will always be `MaxInterval`. Default value is 30 seconds. */
993
+ max_interval?: Duration;
994
+ };
995
+
996
+ /** Attribute specifies the attribute key and optional value to match against. */
997
+ export type InternalFilterFilterconfigAttribute = {
998
+ /** Key specifies the attribute key. */
999
+ key?: string;
1000
+ /** Values specifies the value to match against. If it is not set, any value will match. */
1001
+ value?: unknown;
1002
+ };
1003
+
1004
+ /** InstrumentationLibrary specifies the instrumentation library and optional version to match against. */
1005
+ export type InternalFilterFilterconfigInstrumentationLibrary = {
1006
+ name?: string;
1007
+ /** version match expected actual match nil <blank> yes nil 1 yes <blank> <blank> yes <blank> 1 no 1 <blank> no 1 1 yes */
1008
+ version?: string;
1009
+ };
1010
+
1011
+ /** LogSeverityNumberMatchProperties defines how to match based on a log record's SeverityNumber field. */
1012
+ export type InternalFilterFilterconfigLogSeverityNumberMatchProperties = {
1013
+ /** MatchUndefined controls whether logs with "undefined" severity matches. If this is true, entries with undefined severity will match. */
1014
+ match_undefined?: boolean;
1015
+ /** Min is the lowest severity that may be matched. e.g. if this is plog.SeverityNumberInfo, INFO, WARN, ERROR, and FATAL logs will match. */
1016
+ min?: CollectorPdataPlogSeverityNumber;
1017
+ };
1018
+
1019
+ /** MatchConfig has two optional MatchProperties one to define what is processed by the processor, captured under the 'include' and the second, exclude, to define what is excluded from the processor. */
1020
+ export type InternalFilterFilterconfigMatchConfig = {
1021
+ /** Exclude specifies when this processor will not be applied to the input data which match the specified properties. Note: The `exclude` properties are checked after the `include` properties, if they exist, are checked. If `include` isn't specified, the `exclude` properties are checked against all input data. This is an optional field. If neither `include` and `exclude` are set, all input data is processed. If `exclude` is set and `include` isn't set, then all the input data that does not match the properties in this structure are processed. */
1022
+ exclude?: InternalFilterFilterconfigMatchProperties;
1023
+ /** Include specifies the set of input data properties that must be present in order for this processor to apply to it. Note: If `exclude` is specified, the input data is compared against those properties after the `include` properties. This is an optional field. If neither `include` and `exclude` are set, all input data are processed. If `include` is set and `exclude` isn't set, then all input data matching the properties in this structure are processed. */
1024
+ include?: InternalFilterFilterconfigMatchProperties;
1025
+ };
1026
+
1027
+ /** MatchProperties specifies the set of properties in a spans/log/metric to match against and if the input data should be included or excluded from the processor. At least one of services (spans only), names or attributes must be specified. It is supported to have all specified, but this requires all the properties to match for the inclusion/exclusion to occur. The following are examples of invalid configurations: attributes/bad1: # This is invalid because include is specified with neither services or # attributes. include: actions: ... span/bad2: exclude: # This is invalid because services, span_names and attributes have empty values. services: span_names: attributes: actions: ... Please refer to processor/attributesprocessor/testdata/config.yaml and processor/spanprocessor/testdata/config.yaml for valid configurations. */
1028
+ export type InternalFilterFilterconfigMatchProperties = InternalFilterFiltersetConfig & {
1029
+ /** Attributes specifies the list of attributes to match against. All of these attributes must match for a match to occur. This is an optional field. */
1030
+ attributes?: Array<InternalFilterFilterconfigAttribute>;
1031
+ /** Libraries specify the list of items to match the implementation library against. A match occurs if the span's implementation library matches at least one item in this list. This is an optional field. */
1032
+ libraries?: Array<InternalFilterFilterconfigInstrumentationLibrary>;
1033
+ /** LogBodies is a list of strings that the LogRecord's body field must match against. */
1034
+ log_bodies?: Array<string>;
1035
+ /** LogSeverityNumber defines how to match against a log record's SeverityNumber, if defined. */
1036
+ log_severity_number?: InternalFilterFilterconfigLogSeverityNumberMatchProperties;
1037
+ /** LogSeverityTexts is a list of strings that the LogRecord's severity text field must match against. */
1038
+ log_severity_texts?: Array<string>;
1039
+ /** MetricNames is a list of strings to match metric name against. A match occurs if metric name matches at least one item in the list. This field is optional. */
1040
+ metric_names?: Array<string>;
1041
+ /** Resources specify the list of items to match the resources against. A match occurs if the data's resources match at least one item in this list. This is an optional field. */
1042
+ resources?: Array<InternalFilterFilterconfigAttribute>;
1043
+ /** Services specify the list of items to match service name against. A match occurs if the span's service name matches at least one item in this list. This is an optional field. */
1044
+ services?: Array<string>;
1045
+ /** SpanKinds specify the list of items to match the span kind against. A match occurs if the span's span kind matches at least one item in this list. This is an optional field */
1046
+ span_kinds?: Array<string>;
1047
+ /** SpanNames specify the list of items to match span name against. A match occurs if the span name matches at least one item in this list. This is an optional field. */
1048
+ span_names?: Array<string>;
1049
+ };
1050
+
1051
+ /** MetricMatchProperties specifies the set of properties in a metric to match against and the type of string pattern matching to use. */
1052
+ export type InternalFilterFilterconfigMetricMatchProperties = {
1053
+ /** Expressions specifies the list of expr expressions to match metrics against. A match occurs if any datapoint in a metric matches at least one expression in this list. */
1054
+ expressions?: Array<string>;
1055
+ /** MatchType specifies the type of matching desired */
1056
+ match_type?: InternalFilterFilterconfigMetricMatchType;
1057
+ /** MetricNames specifies the list of string patterns to match metric names against. A match occurs if the metric name matches at least one string pattern in this list. */
1058
+ metric_names?: Array<string>;
1059
+ /** RegexpConfig specifies options for the MetricRegexp match type */
1060
+ regexp?: InternalFilterFiltersetRegexpConfig;
1061
+ /** ResourceAttributes defines a list of possible resource attributes to match metrics against. A match occurs if any resource attribute matches all expressions in this given list. */
1062
+ resource_attributes?: Array<InternalFilterFilterconfigAttribute>;
1063
+ };
1064
+
1065
+ /** MetricMatchType specifies the strategy for matching against `pmetric.Metric`s. This is distinct from filterset.MatchType which matches against metric (and tracing) names only. To support matching against metric names and `pmetric.Metric`s, filtermetric.MatchType is effectively a superset of filterset.MatchType. */
1066
+ export type InternalFilterFilterconfigMetricMatchType = string;
1067
+
1068
+ /** Config configures the matching behavior of a FilterSet. */
1069
+ export type InternalFilterFiltersetConfig = {
1070
+ match_type?: InternalFilterFiltersetMatchType;
1071
+ regexp?: InternalFilterFiltersetRegexpConfig;
1072
+ };
1073
+
1074
+ /** MatchType describes the type of pattern matching a FilterSet uses to filter strings. */
1075
+ export type InternalFilterFiltersetMatchType = string;
1076
+
1077
+ /** Config represents the options for a NewFilterSet. */
1078
+ export type InternalFilterFiltersetRegexpConfig = {
1079
+ /** CacheEnabled determines whether match results are LRU cached to make subsequent matches faster. Cache size is unlimited unless CacheMaxNumEntries is also specified. */
1080
+ cacheenabled?: boolean;
1081
+ /** CacheMaxNumEntries is the max number of entries of the LRU cache that stores match results. CacheMaxNumEntries is ignored if CacheEnabled is false. */
1082
+ cachemaxnumentries?: number;
1083
+ };
1084
+
1085
+ /** APIConfig contains options relevant to connecting to the K8s API */
1086
+ export type InternalK8sconfigApiConfig = {
1087
+ /** How to authenticate to the K8s API server. This can be one of `none` (for no auth), `serviceAccount` (to use the standard service account token provided to the agent pod), or `kubeConfig` to use credentials from `~/.kube/config`. */
1088
+ auth_type?: InternalK8sconfigAuthType;
1089
+ /** When using auth_type `kubeConfig`, override the current context. */
1090
+ context?: string;
1091
+ /** KubeAPIBurst is the maximum burst of requests to the Kubernetes API. Uses client-go's default (10) if unset. Increase if you see client-side throttling warnings. */
1092
+ kube_api_burst?: number;
1093
+ /** KubeAPIQPS is the maximum number of queries per second to the Kubernetes API. Uses client-go's default (5) if unset. Increase if you see client-side throttling warnings. */
1094
+ kube_api_qps?: number;
1095
+ };
1096
+
1097
+ /** AuthType describes the type of authentication to use for the K8s API */
1098
+ export type InternalK8sconfigAuthType = string;
1099
+
1100
+ /** ClientConfig for a kubelet client for talking to a kubelet HTTP endpoint. */
1101
+ export type InternalKubeletClientConfig = InternalK8sconfigApiConfig & CollectorConfigConfigtlsConfig & {
1102
+ /** InsecureSkipVerify controls whether the client verifies the server's certificate chain and host name. */
1103
+ insecure_skip_verify?: boolean;
1104
+ };
1105
+
1106
+ /** ErrorMode is the way OTTL should handle errors. */
1107
+ export type PkgOttlErrorMode = string;
1108
+
1109
+ /** Settings defines configuration for converting resource attributes to telemetry attributes or constant labels. When used, it is typically embedded in the exporter configuration under a key name chosen by the exporter (e.g. `resource_constant_labels` for Prometheus exporters, or `resource_to_telemetry_conversion` for AWS EMF exporter): type Config struct { // ... resourcetotelemetry.Settings `mapstructure:"resource_constant_labels"` } */
1110
+ export type PkgResourcetotelemetrySettings = {
1111
+ /**
1112
+ * Enabled indicates whether to convert resource attributes to telemetry attributes. Default is `false`. Deprecated: Use Included and Excluded instead. To convert all resource attributes, set Included to ["*"].
1113
+ * @deprecated
1114
+ */
1115
+ enabled?: boolean;
1116
+ /**
1117
+ * ExcludeServiceAttributes indicates whether to exclude `service.name`, `service.instance.id` and `service.namespace` resource attributes from being converted to metric attributes. Default is `false`. When set to `true`, these attributes will not be added to metric labels since they are already mapped to Prometheus `job` and `instance` labels respectively. Deprecated: Use Excluded instead. To exclude service attributes, add "service.name", "service.instance.id", and "service.namespace" to Excluded.
1118
+ * @deprecated
1119
+ */
1120
+ exclude_service_attributes?: boolean;
1121
+ /** Excluded represents a list of patterns (supporting wildcards '*' and '?') of resource attribute keys to exclude, overriding anything that matched Included. If Included is empty, setting Excluded implies including all non-excluded attributes. */
1122
+ excluded?: Array<string>;
1123
+ /** Included represents a list of patterns (supporting wildcards '*' and '?') of resource attribute keys to include. Wildcards '*' and '?' match any sequence of characters and any single character respectively (and cannot be escaped). Note: if Included is empty and Excluded is non-empty, all resource attributes except those matched by Excluded will be included. */
1124
+ included?: Array<string>;
1125
+ };
1126
+
1127
+ /** BaseConfig is the common configuration of a stanza-based receiver */
1128
+ export type PkgStanzaAdapterBaseConfig = {
1129
+ operators?: Array<unknown>;
1130
+ retry_on_failure?: InternalCoreinternalConsumerretryConfig;
1131
+ storage?: string;
1132
+ };
1133
+
1134
+ export type PkgStanzaFileconsumerAttrsResolver = {
1135
+ include_file_name?: boolean;
1136
+ include_file_name_resolved?: boolean;
1137
+ include_file_owner_group_name?: boolean;
1138
+ include_file_owner_name?: boolean;
1139
+ include_file_path?: boolean;
1140
+ include_file_path_resolved?: boolean;
1141
+ include_file_permissions?: boolean;
1142
+ };
1143
+
1144
+ /** Config is the configuration of a file input operator */
1145
+ export type PkgStanzaFileconsumerConfig = PkgStanzaFileconsumerMatcherCriteria & PkgStanzaFileconsumerAttrsResolver & PkgStanzaTrimConfig & {
1146
+ acquire_fs_lock?: boolean;
1147
+ compression?: string;
1148
+ delete_after_read?: boolean;
1149
+ encoding?: string;
1150
+ file_cache_advise?: boolean;
1151
+ fingerprint_size?: PkgStanzaOperatorHelperByteSize;
1152
+ force_flush_period?: Duration;
1153
+ header?: PkgStanzaFileconsumerHeaderConfig;
1154
+ include_file_record_number?: boolean;
1155
+ include_file_record_offset?: boolean;
1156
+ initial_buffer_size?: PkgStanzaOperatorHelperByteSize;
1157
+ max_batches?: number;
1158
+ max_concurrent_files?: number;
1159
+ max_log_size?: PkgStanzaOperatorHelperByteSize;
1160
+ max_log_size_behavior?: string;
1161
+ multiline?: PkgStanzaSplitConfig;
1162
+ on_truncate?: string;
1163
+ poll_interval?: Duration;
1164
+ polls_to_archive?: number;
1165
+ skip_unmodified_files?: boolean;
1166
+ start_at?: string;
1167
+ };
1168
+
1169
+ export type PkgStanzaFileconsumerHeaderConfig = {
1170
+ metadata_operators?: Array<unknown>;
1171
+ pattern?: string;
1172
+ };
1173
+
1174
+ export type PkgStanzaFileconsumerMatcherCriteria = {
1175
+ exclude?: Array<string>;
1176
+ /** ExcludeOlderThan allows excluding files whose modification time is older than the specified age. */
1177
+ exclude_older_than?: Duration;
1178
+ include?: Array<string>;
1179
+ ordering_criteria?: PkgStanzaFileconsumerMatcherOrderingCriteria;
1180
+ };
1181
+
1182
+ export type PkgStanzaFileconsumerMatcherOrderingCriteria = {
1183
+ group_by?: string;
1184
+ regex?: string;
1185
+ sort_by?: Array<PkgStanzaFileconsumerMatcherSort>;
1186
+ /** TopN uses a pointer so the matcher can distinguish between "unset" and "explicitly zero". When sort_by is configured, top_n must be set explicitly: zero means "match all files" and a positive value caps the match count. */
1187
+ top_n?: number;
1188
+ };
1189
+
1190
+ export type PkgStanzaFileconsumerMatcherSort = {
1191
+ ascending?: boolean;
1192
+ /** Timestamp only */
1193
+ layout?: string;
1194
+ location?: string;
1195
+ regex_key?: string;
1196
+ sort_type?: string;
1197
+ };
1198
+
1199
+ /** AttributerConfig is the configuration of a attributer */
1200
+ export type PkgStanzaOperatorHelperAttributerConfig = {
1201
+ attributes?: Record<string, PkgStanzaOperatorHelperExprStringConfig>;
1202
+ };
1203
+
1204
+ /** BasicConfig provides a basic implementation for an operator config. */
1205
+ export type PkgStanzaOperatorHelperBasicConfig = {
1206
+ id?: string;
1207
+ type?: string;
1208
+ };
1209
+
1210
+ export type PkgStanzaOperatorHelperByteSize = number | string;
1211
+
1212
+ /** ExprStringConfig is a string that represents an expression */
1213
+ export type PkgStanzaOperatorHelperExprStringConfig = string;
1214
+
1215
+ /** IdentifierConfig is the configuration of a resource identifier */
1216
+ export type PkgStanzaOperatorHelperIdentifierConfig = {
1217
+ resource?: Record<string, PkgStanzaOperatorHelperExprStringConfig>;
1218
+ };
1219
+
1220
+ /** InputConfig provides a basic implementation of an input operator config. */
1221
+ export type PkgStanzaOperatorHelperInputConfig = PkgStanzaOperatorHelperAttributerConfig & PkgStanzaOperatorHelperIdentifierConfig & PkgStanzaOperatorHelperWriterConfig;
1222
+
1223
+ /** WriterConfig is the configuration of a writer operator. */
1224
+ export type PkgStanzaOperatorHelperWriterConfig = PkgStanzaOperatorHelperBasicConfig & {
1225
+ output?: Array<string>;
1226
+ };
1227
+
1228
+ /** Config is the configuration of a file input operator */
1229
+ export type PkgStanzaOperatorInputFileConfig = PkgStanzaOperatorHelperInputConfig & PkgStanzaFileconsumerConfig;
1230
+
1231
+ /** Config is the configuration for a split func */
1232
+ export type PkgStanzaSplitConfig = {
1233
+ line_end_pattern?: string;
1234
+ line_start_pattern?: string;
1235
+ omit_pattern?: boolean;
1236
+ };
1237
+
1238
+ export type PkgStanzaTrimConfig = {
1239
+ preserve_leading_whitespaces?: boolean;
1240
+ preserve_trailing_whitespaces?: boolean;
1241
+ };
1242
+
1243
+ /** Config specifies the set of attributes to be inserted, updated, upserted and deleted and the properties to include/exclude a span from being processed. This processor handles all forms of modifications to attributes within a span, log, or metric. Prior to any actions being applied, each span is compared against the include properties and then the exclude properties if they are specified. This determines if a span is to be processed or not. The list of actions is applied in order specified in the configuration. */
1244
+ export type ProcessorAttributesprocessorSchema = InternalFilterFilterconfigMatchConfig & InternalCoreinternalAttractionSettings;
1245
+
1246
+ export type ProcessorDeltatocumulativeprocessorSchema = {
1247
+ max_stale?: Duration;
1248
+ max_streams?: number;
1249
+ };
1250
+
1251
+ /** LogFilters filters by Log properties. */
1252
+ export type ProcessorFilterprocessorLogFilters = {
1253
+ /** Exclude match properties describe logs that should be excluded from the Collector Service pipeline, all other logs should be included. If both Include and Exclude are specified, Include filtering occurs first. */
1254
+ exclude?: ProcessorFilterprocessorLogMatchProperties;
1255
+ /** Include match properties describe logs that should be included in the Collector Service pipeline, all other logs should be dropped from further processing. If both Include and Exclude are specified, Include filtering occurs first. */
1256
+ include?: ProcessorFilterprocessorLogMatchProperties;
1257
+ /** LogConditions is a list of OTTL conditions for an ottllog context. If any condition resolves to true, the log event will be dropped. Supports `and`, `or`, and `()` */
1258
+ log_record?: Array<string>;
1259
+ /** ResourceConditions is a list of OTTL conditions for an ottlresource context. If any condition resolves to true, the whole resource will be dropped. Supports `and`, `or`, and `()` */
1260
+ resource?: Array<string>;
1261
+ };
1262
+
1263
+ /** LogMatchProperties specifies the set of properties in a log to match against and the type of string pattern matching to use. */
1264
+ export type ProcessorFilterprocessorLogMatchProperties = {
1265
+ /** LogBodies is a list of strings that the LogRecord's body field must match against. */
1266
+ bodies?: Array<string>;
1267
+ /** LogMatchType specifies the type of matching desired */
1268
+ match_type?: ProcessorFilterprocessorLogMatchType;
1269
+ /** RecordAttributes defines a list of possible record attributes to match logs against. A match occurs if any record attribute matches at least one expression in this given list. */
1270
+ record_attributes?: Array<InternalFilterFilterconfigAttribute>;
1271
+ /** ResourceAttributes defines a list of possible resource attributes to match logs against. A match occurs if any resource attribute matches all expressions in this given list. */
1272
+ resource_attributes?: Array<InternalFilterFilterconfigAttribute>;
1273
+ /** SeverityNumberProperties defines how to match against a log record's SeverityNumber, if defined. */
1274
+ severity_number?: ProcessorFilterprocessorLogSeverityNumberMatchProperties;
1275
+ /** SeverityTexts is a list of strings that the LogRecord's severity text field must match against. */
1276
+ severity_texts?: Array<string>;
1277
+ };
1278
+
1279
+ /** LogMatchType specifies the strategy for matching against `plog.Log`s. */
1280
+ export type ProcessorFilterprocessorLogMatchType = string;
1281
+
1282
+ export type ProcessorFilterprocessorLogSeverityNumberMatchProperties = {
1283
+ /** MatchUndefined lets logs records with "unknown" severity match. If MinSeverity is not set, this field is ignored, as fields are not matched based on severity. */
1284
+ match_undefined?: boolean;
1285
+ /** Min is the minimum severity needed for the log record to match. This corresponds to the short names specified here: https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/logs/data-model.md#displaying-severity this field is case-insensitive ("INFO" == "info") */
1286
+ min?: string;
1287
+ };
1288
+
1289
+ /** MetricFilters filters by Metric properties. */
1290
+ export type ProcessorFilterprocessorMetricFilters = {
1291
+ /** DataPointConditions is a list of OTTL conditions for an ottldatapoint context. If any condition resolves to true, the datapoint will be dropped. Supports `and`, `or`, and `()` */
1292
+ datapoint?: Array<string>;
1293
+ /** Exclude match properties describe metrics that should be excluded from the Collector Service pipeline, all other metrics should be included. If both Include and Exclude are specified, Include filtering occurs first. */
1294
+ exclude?: InternalFilterFilterconfigMetricMatchProperties;
1295
+ /** Include match properties describe metrics that should be included in the Collector Service pipeline, all other metrics should be dropped from further processing. If both Include and Exclude are specified, Include filtering occurs first. */
1296
+ include?: InternalFilterFilterconfigMetricMatchProperties;
1297
+ /** MetricConditions is a list of OTTL conditions for an ottlmetric context. If any condition resolves to true, the metric will be dropped. Supports `and`, `or`, and `()` */
1298
+ metric?: Array<string>;
1299
+ /** RegexpConfig specifies options for the regexp match type */
1300
+ regexp?: InternalFilterFiltersetRegexpConfig;
1301
+ /** ResourceConditions is a list of OTTL conditions for an ottlresource context. If any condition resolves to true, the whole resource will be dropped. Supports `and`, `or`, and `()` */
1302
+ resource?: Array<string>;
1303
+ };
1304
+
1305
+ /** ProfileFilters filters by OTTL conditions */
1306
+ export type ProcessorFilterprocessorProfileFilters = {
1307
+ /** ProfileConditions is a list of OTTL conditions for an ottlprofile context. If any condition resolves to true, the profile will be dropped. Supports `and`, `or`, and `()` */
1308
+ profile?: Array<string>;
1309
+ /** ResourceConditions is a list of OTTL conditions for an ottlresource context. If any condition resolves to true, the whole resource will be dropped. Supports `and`, `or`, and `()` */
1310
+ resource?: Array<string>;
1311
+ };
1312
+
1313
+ /** Config defines configuration for Resource processor. */
1314
+ export type ProcessorFilterprocessorSchema = {
1315
+ /** ErrorMode determines how the processor reacts to errors that occur while processing an OTTL condition. Valid values are `ignore` and `propagate`. `ignore` means the processor ignores errors returned by conditions and continues on to the next condition. This is the recommended mode. `propagate` means the processor returns the error up the pipeline. This will result in the payload being dropped from the collector. The default value is `ignore`. */
1316
+ error_mode?: PkgOttlErrorMode;
1317
+ log_conditions?: Array<unknown>;
1318
+ /**
1319
+ * Deprecated: use LogConditions instead.
1320
+ * @deprecated
1321
+ */
1322
+ logs?: ProcessorFilterprocessorLogFilters;
1323
+ metric_conditions?: Array<unknown>;
1324
+ /**
1325
+ * Deprecated: use MetricConditions instead.
1326
+ * @deprecated
1327
+ */
1328
+ metrics?: ProcessorFilterprocessorMetricFilters;
1329
+ profile_conditions?: Array<unknown>;
1330
+ /**
1331
+ * Deprecated: use ProfileConditions instead.
1332
+ * @deprecated
1333
+ */
1334
+ profiles?: ProcessorFilterprocessorProfileFilters;
1335
+ /**
1336
+ * Deprecated: use TraceConditions instead.
1337
+ * @deprecated
1338
+ */
1339
+ spans?: InternalFilterFilterconfigMatchConfig;
1340
+ trace_conditions?: Array<unknown>;
1341
+ /**
1342
+ * Deprecated: use TraceConditions instead.
1343
+ * @deprecated
1344
+ */
1345
+ traces?: ProcessorFilterprocessorTraceFilters;
1346
+ };
1347
+
1348
+ /** TraceFilters filters by OTTL conditions */
1349
+ export type ProcessorFilterprocessorTraceFilters = {
1350
+ /** ResourceConditions is a list of OTTL conditions for an ottlresource context. If any condition resolves to true, the whole resource will be dropped. Supports `and`, `or`, and `()` */
1351
+ resource?: Array<string>;
1352
+ /** SpanConditions is a list of OTTL conditions for an ottlspan context. If any condition resolves to true, the span will be dropped. Supports `and`, `or`, and `()` */
1353
+ span?: Array<string>;
1354
+ /** SpanEventConditions is a list of OTTL conditions for an ottlspanevent context. If any condition resolves to true, the span event will be dropped. Supports `and`, `or`, and `()` */
1355
+ spanevent?: Array<string>;
1356
+ };
1357
+
1358
+ /** ExcludeConfig represent a list of Pods to exclude */
1359
+ export type ProcessorK8sattributesprocessorExcludeConfig = {
1360
+ pods?: Array<ProcessorK8sattributesprocessorExcludePodConfig>;
1361
+ };
1362
+
1363
+ /** ExcludePodConfig represent a Pod name to ignore */
1364
+ export type ProcessorK8sattributesprocessorExcludePodConfig = {
1365
+ name?: string;
1366
+ };
1367
+
1368
+ /** ExtractConfig section allows specifying extraction rules to extract data from k8s pod specs. */
1369
+ export type ProcessorK8sattributesprocessorExtractConfig = {
1370
+ /** Annotations allows extracting data from pod annotations and record it as resource attributes. It is a list of FieldExtractConfig type. See FieldExtractConfig documentation for more details. */
1371
+ annotations?: Array<ProcessorK8sattributesprocessorFieldExtractConfig>;
1372
+ /** Labels allows extracting data from pod labels and record it as resource attributes. It is a list of FieldExtractConfig type. See FieldExtractConfig documentation for more details. */
1373
+ labels?: Array<ProcessorK8sattributesprocessorFieldExtractConfig>;
1374
+ /** Metadata allows to extract pod/namespace/node metadata from a list of metadata fields. The field accepts a list of strings. Metadata fields supported right now are, k8s.pod.name, k8s.pod.uid, k8s.deployment.name, k8s.node.name, k8s.namespace.name, k8s.pod.start_time, k8s.replicaset.name, k8s.replicaset.uid, k8s.daemonset.name, k8s.daemonset.uid, k8s.job.name, k8s.job.uid, k8s.cronjob.name, k8s.cronjob.uid, k8s.statefulset.name, k8s.statefulset.uid, k8s.container.name, container.id, container.image.name, container.image.tag, container.image.repo_digests k8s.cluster.uid Specifying anything other than these values will result in an error. By default, the following fields are extracted and added to spans, metrics and logs as resource attributes: - k8s.pod.name - k8s.pod.uid - k8s.pod.start_time - k8s.namespace.name - k8s.node.name - k8s.deployment.name (if the pod is controlled by a deployment) - k8s.container.name (requires an additional attribute to be set: container.id) - container.image.name (requires one of the following additional attributes to be set: container.id or k8s.container.name) - container.image.tag (requires one of the following additional attributes to be set: container.id or k8s.container.name) — deprecated, use container.image.tags - container.image.tags (requires one of the following additional attributes to be set: container.id or k8s.container.name) */
1375
+ metadata?: Array<string>;
1376
+ /** OtelAnnotations extracts all pod annotations with the prefix "resource.opentelemetry.io" as resource attributes E.g. "resource.opentelemetry.io/foo" becomes "foo" */
1377
+ otel_annotations?: boolean;
1378
+ };
1379
+
1380
+ /** FieldExtractConfig allows specifying an extraction rule to extract a resource attribute from pod (or namespace) annotations (or labels). */
1381
+ export type ProcessorK8sattributesprocessorFieldExtractConfig = {
1382
+ /** From represents the source of the labels/annotations. Allowed values are "pod", "namespace", "node", "deployment", "replicaset", "statefulset", "daemonset", "job", and "cronjob". The default is pod. */
1383
+ from?: string;
1384
+ /** Key represents the annotation (or label) name. This must exactly match an annotation (or label) name. */
1385
+ key?: string;
1386
+ /** KeyRegex is a regular expression used to extract a Key that matches the regex. Out of Key or KeyRegex, only one option is expected to be configured at a time. */
1387
+ key_regex?: string;
1388
+ /** TagName represents the name of the resource attribute that will be added to logs, metrics or spans. When not specified, a default tag name will be used of the format: - k8s.pod.annotations.<annotation key> (or k8s.pod.annotation.<annotation key> when processor.k8sattributes.EmitV1K8sConventions is enabled) - k8s.pod.labels.<label key> (or k8s.pod.label.<label key> when processor.k8sattributes.EmitV1K8sConventions is enabled) For example, if tag_name is not specified and the key is git_sha, then the attribute name will be `k8s.pod.annotations.git_sha` (or `k8s.pod.annotation.git_sha` with the feature gate). When key_regex is present, tag_name supports back reference to both named capturing and positioned capturing. For example, if your pod spec contains the following labels, app.kubernetes.io/component: mysql app.kubernetes.io/version: 5.7.21 and you'd like to add tags for all labels with prefix app.kubernetes.io/ and also trim the prefix, then you can specify the following extraction rules: extract: labels: - tag_name: $$1 key_regex: kubernetes.io/(.*) this will add the `component` and `version` tags to the spans or metrics. When key_regex is present without tag_name, the default tag name format will be used for each matched key. For example: extract: labels: - key_regex: environment\.(.*) from: pod If labels like "environment.prod" and "environment.dev" exist, they will be extracted as k8s.pod.labels.environment.prod and k8s.pod.labels.environment.dev respectively. */
1389
+ tag_name?: string;
1390
+ };
1391
+
1392
+ /** FieldFilterConfig allows specifying exactly one filter by a field. It can be used to represent a label or generic field filter. */
1393
+ export type ProcessorK8sattributesprocessorFieldFilterConfig = {
1394
+ /** Key represents the key or name of the field or labels that a filter can apply on. */
1395
+ key?: string;
1396
+ /** Op represents the filter operation to apply on the given Key: Value pair. The following operations are supported equals, not-equals, exists, does-not-exist. */
1397
+ op?: string;
1398
+ /** Value represents the value associated with the key that a filter operation specified by the `Op` field applies on. */
1399
+ value?: string;
1400
+ };
1401
+
1402
+ /** FilterConfig section allows specifying filters to filter pods by labels, fields, namespaces, nodes, etc. */
1403
+ export type ProcessorK8sattributesprocessorFilterConfig = {
1404
+ /** Fields allows to filter pods by generic k8s fields. Only the following operations are supported: - equals - not-equals Check FieldFilterConfig for more details. */
1405
+ fields?: Array<ProcessorK8sattributesprocessorFieldFilterConfig>;
1406
+ /** Labels allows to filter pods by generic k8s pod labels. Only the following operations are supported: - equals - not-equals - exists - not-exists Check FieldFilterConfig for more details. */
1407
+ labels?: Array<ProcessorK8sattributesprocessorFieldFilterConfig>;
1408
+ /** Namespace filters all pods by the provided namespace. All other pods are ignored. */
1409
+ namespace?: string;
1410
+ /** Node represents a k8s node or host. If specified, any pods not running on the specified node will be ignored by the tagger. */
1411
+ node?: string;
1412
+ /** NodeFromEnv can be used to extract the node name from an environment variable. The value must be the name of the environment variable. This is useful when the node a Otel agent will run on cannot be predicted. In such cases, the Kubernetes downward API can be used to add the node name to each pod as an environment variable. K8s tagger can then read this value and filter pods by it. For example, node name can be passed to each agent with the downward API as follows env: - name: K8S_NODE_NAME valueFrom: fieldRef: fieldPath: spec.nodeName Then the NodeFromEnv field can be set to `K8S_NODE_NAME` to filter all pods by the node that the agent is running on. More on downward API here: https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/ */
1413
+ node_from_env_var?: string;
1414
+ };
1415
+
1416
+ /** PodAssociationConfig contain single rule how to associate Pod metadata with logs, spans and metrics */
1417
+ export type ProcessorK8sattributesprocessorPodAssociationConfig = {
1418
+ /** List of pod association sources which should be taken to identify pod */
1419
+ sources?: Array<ProcessorK8sattributesprocessorPodAssociationSourceConfig>;
1420
+ };
1421
+
1422
+ export type ProcessorK8sattributesprocessorPodAssociationSourceConfig = {
1423
+ /** From represents the source of the association. Allowed values are "connection" and "resource_attribute". */
1424
+ from?: string;
1425
+ /** Name represents extracted key name. e.g. ip, pod_uid, k8s.pod.ip */
1426
+ name?: string;
1427
+ };
1428
+
1429
+ /** Config defines configuration for k8s attributes processor. */
1430
+ export type ProcessorK8sattributesprocessorSchema = InternalK8sconfigApiConfig & {
1431
+ /** Exclude section allows to define names of pod that should be ignored while tagging. */
1432
+ exclude?: ProcessorK8sattributesprocessorExcludeConfig;
1433
+ /** Extract section allows specifying extraction rules to extract data from k8s pod specs */
1434
+ extract?: ProcessorK8sattributesprocessorExtractConfig;
1435
+ /** Filter section allows specifying filters to filter pods by labels, fields, namespaces, nodes, etc. */
1436
+ filter?: ProcessorK8sattributesprocessorFilterConfig;
1437
+ /** Passthrough mode only annotates resources with the pod IP and does not try to extract any other metadata. It does not need access to the K8S cluster API. Agent/Collector must receive spans directly from services to be able to correctly detect the pod IPs. */
1438
+ passthrough?: boolean;
1439
+ /** Association section allows to define rules for tagging spans, metrics, and logs with Pod metadata. */
1440
+ pod_association?: Array<ProcessorK8sattributesprocessorPodAssociationConfig>;
1441
+ /** PodDeleteGracePeriod is the duration to wait before deleting a pod from the cache after receiving a delete event. */
1442
+ pod_delete_grace_period?: Duration;
1443
+ /** WaitForMetadata is a flag that determines if the processor should wait k8s metadata to be synced when starting. */
1444
+ wait_for_metadata?: boolean;
1445
+ /** WaitForMetadataTimeout is the maximum time the processor will wait for the k8s metadata to be synced. */
1446
+ wait_for_metadata_timeout?: Duration;
1447
+ /** WatchSyncPeriod determines the resync period for K8s informers. Reprocessing the informer cache periodically can cause significant memory churn and CPU spikes. Setting this to 0 disables resync. */
1448
+ watch_sync_period?: Duration;
1449
+ };
1450
+
1451
+ export type ProcessorProbabilisticsamplerprocessorAttributeSource = string;
1452
+
1453
+ /** SamplerMode determines which of several modes is used for the sampling decision. */
1454
+ export type ProcessorProbabilisticsamplerprocessorSamplerMode = string;
1455
+
1456
+ /** Config has the configuration guiding the sampler processor. */
1457
+ export type ProcessorProbabilisticsamplerprocessorSchema = {
1458
+ /** AttributeSource (logs only) defines where to look for the attribute in from_attribute. The allowed values are `traceID` or `record`. Default is `traceID`. */
1459
+ attribute_source?: ProcessorProbabilisticsamplerprocessorAttributeSource;
1460
+ /** FailClosed indicates to not sample data (the processor will fail "closed") in case of error, such as failure to parse the tracestate field or missing the randomness attribute. By default, failure cases are sampled (the processor is fails "open"). Sampling priority-based decisions are made after FailClosed is processed, making it possible to sample despite errors using priority. */
1461
+ fail_closed?: boolean;
1462
+ /** FromAttribute (logs only) The optional name of a log record attribute used for sampling purposes, such as a unique log record ID. The value of the attribute is only used if the trace ID is absent or if `attribute_source` is set to `record`. */
1463
+ from_attribute?: string;
1464
+ /** HashSeed allows one to configure the hashing seed. This is important in scenarios where multiple layers of collectors have different sampling rates: if they use the same seed all passing one layer may pass the other even if they have different sampling rates, configuring different seeds avoids that. */
1465
+ hash_seed?: number;
1466
+ /** Mode selects the sampling behavior. Supported values: - "hash_seed": the legacy behavior of this processor. Using an FNV hash combined with the HashSeed value, this sampler performs a non-consistent probabilistic downsampling. The number of spans output is expected to equal SamplingPercentage (as a ratio) times the number of spans inpout, assuming good behavior from FNV and good entropy in the hashed attributes or TraceID. - "equalizing": Using an OTel-specified consistent sampling mechanism, this sampler selectively reduces the effective sampling probability of arriving spans. This can be useful to select a small fraction of complete traces from a stream with mixed sampling rates. The rate of spans passing through depends on how much sampling has already been applied. If an arriving span was head sampled at the same probability it passes through. If the span arrives with lower probability, a warning is logged because it means this sampler is configured with too large a sampling probability to ensure complete traces. - "proportional": Using an OTel-specified consistent sampling mechanism, this sampler reduces the effective sampling probability of each span by `SamplingProbability`. */
1467
+ mode?: ProcessorProbabilisticsamplerprocessorSamplerMode;
1468
+ /** SamplingPercentage is the percentage rate at which traces or logs are going to be sampled. Defaults to zero, i.e.: no sample. Values greater or equal 100 are treated as "sample all traces/logs". */
1469
+ sampling_percentage?: number;
1470
+ /** SamplingPrecision is how many hex digits of sampling threshold will be encoded, from 1 up to 14. Default is 4. 0 is treated as full precision. */
1471
+ sampling_precision?: number;
1472
+ /** SamplingPriority (logs only) enables using a log record attribute as the sampling priority of the log record. */
1473
+ sampling_priority?: string;
1474
+ };
1475
+
1476
+ export type ProcessorRedactionprocessorHashFunction = string;
1477
+
1478
+ export type ProcessorRedactionprocessorInternalDbDbSanitizerConfig = {
1479
+ es?: ProcessorRedactionprocessorInternalDbEsConfig;
1480
+ memcached?: ProcessorRedactionprocessorInternalDbMemcachedConfig;
1481
+ mongo?: ProcessorRedactionprocessorInternalDbMongoConfig;
1482
+ opensearch?: ProcessorRedactionprocessorInternalDbOpenSearchConfig;
1483
+ redis?: ProcessorRedactionprocessorInternalDbRedisConfig;
1484
+ sanitize_span_name?: boolean;
1485
+ sql?: ProcessorRedactionprocessorInternalDbSqlConfig;
1486
+ valkey?: ProcessorRedactionprocessorInternalDbValkeyConfig;
1487
+ };
1488
+
1489
+ export type ProcessorRedactionprocessorInternalDbEsConfig = {
1490
+ /** Attributes specifies which attribute keys to apply Elasticsearch sanitization to. If empty, Elasticsearch sanitization is applied to all string values in log bodies but not to span/metric attributes */
1491
+ attributes?: Array<string>;
1492
+ enabled?: boolean;
1493
+ };
1494
+
1495
+ export type ProcessorRedactionprocessorInternalDbMemcachedConfig = {
1496
+ /** Attributes specifies which attribute keys to apply Memcached sanitization to. If empty, Memcached sanitization is applied to all string values in log bodies but not to span/metric attributes */
1497
+ attributes?: Array<string>;
1498
+ enabled?: boolean;
1499
+ };
1500
+
1501
+ export type ProcessorRedactionprocessorInternalDbMongoConfig = {
1502
+ /** Attributes specifies which attribute keys to apply MongoDB sanitization to. If empty, MongoDB sanitization is applied to all string values in log bodies but not to span/metric attributes */
1503
+ attributes?: Array<string>;
1504
+ enabled?: boolean;
1505
+ };
1506
+
1507
+ export type ProcessorRedactionprocessorInternalDbOpenSearchConfig = {
1508
+ /** Attributes specifies which attribute keys to apply OpenSearch sanitization to. If empty, OpenSearch sanitization is applied to all string values in log bodies but not to span/metric attributes */
1509
+ attributes?: Array<string>;
1510
+ enabled?: boolean;
1511
+ };
1512
+
1513
+ export type ProcessorRedactionprocessorInternalDbRedisConfig = {
1514
+ /** Attributes specifies which attribute keys to apply Redis sanitization to. If empty, Redis sanitization is applied to all string values in log bodies but not to span/metric attributes */
1515
+ attributes?: Array<string>;
1516
+ enabled?: boolean;
1517
+ };
1518
+
1519
+ export type ProcessorRedactionprocessorInternalDbSqlConfig = {
1520
+ /** Attributes specifies which attribute keys to apply SQL sanitization to. If empty, SQL sanitization is applied to all string values in log bodies but not to span/metric attributes */
1521
+ attributes?: Array<string>;
1522
+ enabled?: boolean;
1523
+ };
1524
+
1525
+ export type ProcessorRedactionprocessorInternalDbValkeyConfig = {
1526
+ /** Attributes specifies which attribute keys to apply Valkey sanitization to. If empty, Valkey sanitization is applied to all string values in log bodies but not to span/metric attributes */
1527
+ attributes?: Array<string>;
1528
+ enabled?: boolean;
1529
+ };
1530
+
1531
+ export type ProcessorRedactionprocessorInternalUrlUrlSanitizationConfig = {
1532
+ /** Attributes is the list of attributes that will be sanitized. */
1533
+ attributes?: Array<string>;
1534
+ enabled?: boolean;
1535
+ /** SanitizeSpanName controls whether span names should be sanitized. */
1536
+ sanitize_span_name?: boolean;
1537
+ };
1538
+
1539
+ export type ProcessorRedactionprocessorSchema = {
1540
+ /** AllowAllKeys is a flag to allow all span attribute keys. Setting this to true disables the AllowedKeys list. The list of BlockedValues is applied regardless. If you just want to block values, set this to true. */
1541
+ allow_all_keys?: boolean;
1542
+ /** AllowedKeys is a list of allowed span attribute keys. Span attributes not on the list are removed. The list fails closed if it's empty. To allow all keys, you should explicitly set AllowAllKeys */
1543
+ allowed_keys?: Array<string>;
1544
+ /** AllowedValues is a list of regular expressions for allowing values of blocked span attributes. Values that match are not masked. */
1545
+ allowed_values?: Array<string>;
1546
+ /** BlockedKeyPatterns is a list of blocked span attribute key patterns. Span attributes matching the regexes on the list are masked. */
1547
+ blocked_key_patterns?: Array<string>;
1548
+ /** BlockedValues is a list of regular expressions for blocking values of allowed span attributes. Values that match are masked. */
1549
+ blocked_values?: Array<string>;
1550
+ /** DBSanitizer is a flag to enable database query sanitization. */
1551
+ db_sanitizer?: ProcessorRedactionprocessorInternalDbDbSanitizerConfig;
1552
+ /** HashFunction defines the function for hashing the values instead of masking them with a fixed string. By default, no hash function is used and masking with a fixed string is performed. */
1553
+ hash_function?: ProcessorRedactionprocessorHashFunction;
1554
+ /** HMACKey is the secret key used for HMAC hashing when HashFunction is set to hmac-sha256 or hmac-sha512. This should be loaded from a secure source like environment variables. Minimum length: 32 bytes for HMAC-SHA256, 64 bytes for HMAC-SHA512. */
1555
+ hmac_key?: CollectorConfigConfigopaqueString;
1556
+ /** IgnoredKeyPatterns is a list of attribute key patterns (regex) that are not redacted. attributes matching any of these patterns are allowed to pass through the filter without their values being checked or modified. */
1557
+ ignored_key_patterns?: Array<string>;
1558
+ /** IgnoredKeys is a list of span attribute keys that are not redacted. Span attributes in this list are allowed to pass through the filter without being changed or removed. */
1559
+ ignored_keys?: Array<string>;
1560
+ /** RedactAllTypes of attributes, including those that are not string, by converting to a string representation. By default only string values are redacted. */
1561
+ redact_all_types?: boolean;
1562
+ /** Summary controls the verbosity level of the diagnostic attributes that the processor adds to the spans when it redacts or masks other attributes. In some contexts a list of redacted attributes leaks information, while it is valuable when integrating and testing a new configuration. Possible values are `debug`, `info`, and `silent`. */
1563
+ summary?: string;
1564
+ /** URLSanitization is a flag to sanitize URLs by removing UUIDs, timestamps, and other non-essential information */
1565
+ url_sanitizer?: ProcessorRedactionprocessorInternalUrlUrlSanitizationConfig;
1566
+ };
1567
+
1568
+ /** DetectorConfig contains user-specified configurations unique to all individual detectors */
1569
+ export type ProcessorResourcedetectionprocessorDetectorConfig = {
1570
+ /** AkamaiConfig contains user-specified configurations for the akamai detector */
1571
+ akamai?: ProcessorResourcedetectionprocessorInternalAkamaiSchema;
1572
+ /** Aks contains user-specified configurations for the aks detector */
1573
+ aks?: ProcessorResourcedetectionprocessorInternalAzureAksSchema;
1574
+ /** AlibabaECSConfig contains user-specified configurations for the Alibaba Cloud ECS detector */
1575
+ alibaba_ecs?: ProcessorResourcedetectionprocessorInternalAlibabaEcsSchema;
1576
+ /** Azure contains user-specified configurations for the azure detector */
1577
+ azure?: ProcessorResourcedetectionprocessorInternalAzureSchema;
1578
+ /** AzureAppServiceConfig contains user-specified configurations for the Azure App Service detector */
1579
+ azureappservice?: ProcessorResourcedetectionprocessorInternalAzureAppserviceSchema;
1580
+ /** AzureContainerAppsConfig contains user-specified configurations for the Azure Container Apps detector */
1581
+ azurecontainerapps?: ProcessorResourcedetectionprocessorInternalAzureContainerappsSchema;
1582
+ /** AzureFunctionsConfig contains user-specified configurations for the Azure Functions detector */
1583
+ azurefunctions?: ProcessorResourcedetectionprocessorInternalAzureFunctionsSchema;
1584
+ /** ConsulConfig contains user-specified configurations for the Consul detector */
1585
+ consul?: ProcessorResourcedetectionprocessorInternalConsulSchema;
1586
+ /** DigitalOceanConfig contains user-specified configurations for the digitalocean detector */
1587
+ digitalocean?: ProcessorResourcedetectionprocessorInternalDigitaloceanSchema;
1588
+ /** DockerConfig contains user-specified configurations for the docker detector */
1589
+ docker?: ProcessorResourcedetectionprocessorInternalDockerSchema;
1590
+ /** EC2Config contains user-specified configurations for the EC2 detector */
1591
+ ec2?: ProcessorResourcedetectionprocessorInternalAwsEc2Schema;
1592
+ /** ECSConfig contains user-specified configurations for the ECS detector */
1593
+ ecs?: ProcessorResourcedetectionprocessorInternalAwsEcsSchema;
1594
+ /** EKSConfig contains user-specified configurations for the EKS detector */
1595
+ eks?: ProcessorResourcedetectionprocessorInternalAwsEksSchema;
1596
+ /** Elasticbeanstalk contains user-specified configurations for the elasticbeanstalk detector */
1597
+ elasticbeanstalk?: ProcessorResourcedetectionprocessorInternalAwsElasticbeanstalkSchema;
1598
+ /** GcpConfig contains user-specified configurations for the gcp detector */
1599
+ gcp?: ProcessorResourcedetectionprocessorInternalGcpSchema;
1600
+ /** HerokuConfig contains user-specified configurations for the heroku detector */
1601
+ heroku?: ProcessorResourcedetectionprocessorInternalHerokuSchema;
1602
+ /** HetznerConfig contains user-specified configurations for the hetzner detector */
1603
+ hetzner?: ProcessorResourcedetectionprocessorInternalHetznerSchema;
1604
+ /** IBMCloudClassicConfig contains user-specified configurations for the IBM Cloud Classic detector */
1605
+ ibmcloud_classic?: unknown;
1606
+ /** IBMCloudVPCConfig contains user-specified configurations for the IBM Cloud VPC detector */
1607
+ ibmcloud_vpc?: unknown;
1608
+ /** K8SAPIConfig contains user-specified configurations for the K8S API detector */
1609
+ k8s_api?: ProcessorResourcedetectionprocessorInternalK8sapiSchema;
1610
+ /** K8SNodeConfig contains user-specified configurations for the K8SNode detector (deprecated: use K8SAPIConfig) */
1611
+ k8snode?: ProcessorResourcedetectionprocessorInternalK8sapiSchema;
1612
+ /** Kubeadm contains user-specified configurations for the Kubeadm detector */
1613
+ kubeadm?: ProcessorResourcedetectionprocessorInternalKubeadmSchema;
1614
+ /** Lambda contains user-specified configurations for the lambda detector */
1615
+ lambda?: ProcessorResourcedetectionprocessorInternalAwsLambdaSchema;
1616
+ /** OpenStackNovaConfig contains user-specified configurations for the OpenStackNova detector */
1617
+ nova?: ProcessorResourcedetectionprocessorInternalOpenstackNovaSchema;
1618
+ /** OpenShift contains user-specified configurations for the OpenShift detector */
1619
+ openshift?: ProcessorResourcedetectionprocessorInternalOpenshiftSchema;
1620
+ /** OracleCloud contains user-specified configurations for the OracleCloud detector */
1621
+ oraclecloud?: ProcessorResourcedetectionprocessorInternalOraclecloudSchema;
1622
+ /** ScalewayConfig contains user-specified configurations for the scaleway detector */
1623
+ scaleway?: ProcessorResourcedetectionprocessorInternalScalewaySchema;
1624
+ /** SystemConfig contains user-specified configurations for the System detector */
1625
+ system?: ProcessorResourcedetectionprocessorInternalSystemSchema;
1626
+ /** TencentCVMConfig contains user-specified configurations for the Tencent Cloud CVM detector */
1627
+ tencent_cvm?: unknown;
1628
+ /** UpcloudConfig contains user-specified configurations for the upcloud detector */
1629
+ upcloud?: ProcessorResourcedetectionprocessorInternalUpcloudSchema;
1630
+ /** VultrConfig contains user-specified configurations for the vultr detector */
1631
+ vultr?: ProcessorResourcedetectionprocessorInternalVultrSchema;
1632
+ };
1633
+
1634
+ /** ResourceAttributesConfig provides config for akamaidetector resource attributes. */
1635
+ export type ProcessorResourcedetectionprocessorInternalAkamaiInternalMetadataResourceAttributesConfig = {
1636
+ /** ResourceAttributeConfig provides common config for a cloud.account.id resource attribute. */
1637
+ "cloud.account.id"?: {
1638
+ enabled?: boolean;
1639
+ };
1640
+ /** ResourceAttributeConfig provides common config for a cloud.platform resource attribute. */
1641
+ "cloud.platform"?: {
1642
+ enabled?: boolean;
1643
+ };
1644
+ /** ResourceAttributeConfig provides common config for a cloud.provider resource attribute. */
1645
+ "cloud.provider"?: {
1646
+ enabled?: boolean;
1647
+ };
1648
+ /** ResourceAttributeConfig provides common config for a cloud.region resource attribute. */
1649
+ "cloud.region"?: {
1650
+ enabled?: boolean;
1651
+ };
1652
+ /** ResourceAttributeConfig provides common config for a host.id resource attribute. */
1653
+ "host.id"?: {
1654
+ enabled?: boolean;
1655
+ };
1656
+ /** ResourceAttributeConfig provides common config for a host.image.id resource attribute. */
1657
+ "host.image.id"?: {
1658
+ enabled?: boolean;
1659
+ };
1660
+ /** ResourceAttributeConfig provides common config for a host.image.name resource attribute. */
1661
+ "host.image.name"?: {
1662
+ enabled?: boolean;
1663
+ };
1664
+ /** ResourceAttributeConfig provides common config for a host.name resource attribute. */
1665
+ "host.name"?: {
1666
+ enabled?: boolean;
1667
+ };
1668
+ /** ResourceAttributeConfig provides common config for a host.type resource attribute. */
1669
+ "host.type"?: {
1670
+ enabled?: boolean;
1671
+ };
1672
+ };
1673
+
1674
+ export type ProcessorResourcedetectionprocessorInternalAkamaiSchema = {
1675
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalAkamaiInternalMetadataResourceAttributesConfig;
1676
+ };
1677
+
1678
+ /** ResourceAttributeConfig provides common config for a particular resource attribute. */
1679
+ export type ProcessorResourcedetectionprocessorInternalAlibabaEcsInternalMetadataResourceAttributeConfig = {
1680
+ enabled?: boolean;
1681
+ };
1682
+
1683
+ /** ResourceAttributesConfig provides config for alibabaecsdetector resource attributes. */
1684
+ export type ProcessorResourcedetectionprocessorInternalAlibabaEcsInternalMetadataResourceAttributesConfig = {
1685
+ "cloud.account.id"?: ProcessorResourcedetectionprocessorInternalAlibabaEcsInternalMetadataResourceAttributeConfig;
1686
+ "cloud.availability_zone"?: ProcessorResourcedetectionprocessorInternalAlibabaEcsInternalMetadataResourceAttributeConfig;
1687
+ "cloud.platform"?: ProcessorResourcedetectionprocessorInternalAlibabaEcsInternalMetadataResourceAttributeConfig;
1688
+ "cloud.provider"?: ProcessorResourcedetectionprocessorInternalAlibabaEcsInternalMetadataResourceAttributeConfig;
1689
+ "cloud.region"?: ProcessorResourcedetectionprocessorInternalAlibabaEcsInternalMetadataResourceAttributeConfig;
1690
+ "host.id"?: ProcessorResourcedetectionprocessorInternalAlibabaEcsInternalMetadataResourceAttributeConfig;
1691
+ "host.image.id"?: ProcessorResourcedetectionprocessorInternalAlibabaEcsInternalMetadataResourceAttributeConfig;
1692
+ "host.name"?: ProcessorResourcedetectionprocessorInternalAlibabaEcsInternalMetadataResourceAttributeConfig;
1693
+ "host.type"?: ProcessorResourcedetectionprocessorInternalAlibabaEcsInternalMetadataResourceAttributeConfig;
1694
+ };
1695
+
1696
+ /** Config defines user-specified configurations unique to the Alibaba Cloud ECS detector. */
1697
+ export type ProcessorResourcedetectionprocessorInternalAlibabaEcsSchema = {
1698
+ /**
1699
+ * Deprecated: Use the top-level fail_on_missing_metadata in the processor config instead. This field will be removed in a future release.
1700
+ * @deprecated
1701
+ */
1702
+ fail_on_missing_metadata?: boolean;
1703
+ /** ResourceAttributes controls which standard resource attributes are enabled (e.g., host.id, host.name, cloud.provider, etc.). */
1704
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalAlibabaEcsInternalMetadataResourceAttributesConfig;
1705
+ };
1706
+
1707
+ /** ResourceAttributesConfig provides config for resourcedetectionprocessor/ec2 resource attributes. */
1708
+ export type ProcessorResourcedetectionprocessorInternalAwsEc2InternalMetadataResourceAttributesConfig = {
1709
+ /** ResourceAttributeConfig provides common config for a cloud.account.id resource attribute. */
1710
+ "cloud.account.id"?: {
1711
+ enabled?: boolean;
1712
+ };
1713
+ /** ResourceAttributeConfig provides common config for a cloud.availability_zone resource attribute. */
1714
+ "cloud.availability_zone"?: {
1715
+ enabled?: boolean;
1716
+ };
1717
+ /** ResourceAttributeConfig provides common config for a cloud.platform resource attribute. */
1718
+ "cloud.platform"?: {
1719
+ enabled?: boolean;
1720
+ };
1721
+ /** ResourceAttributeConfig provides common config for a cloud.provider resource attribute. */
1722
+ "cloud.provider"?: {
1723
+ enabled?: boolean;
1724
+ };
1725
+ /** ResourceAttributeConfig provides common config for a cloud.region resource attribute. */
1726
+ "cloud.region"?: {
1727
+ enabled?: boolean;
1728
+ };
1729
+ /** ResourceAttributeConfig provides common config for a host.id resource attribute. */
1730
+ "host.id"?: {
1731
+ enabled?: boolean;
1732
+ };
1733
+ /** ResourceAttributeConfig provides common config for a host.image.id resource attribute. */
1734
+ "host.image.id"?: {
1735
+ enabled?: boolean;
1736
+ };
1737
+ /** ResourceAttributeConfig provides common config for a host.name resource attribute. */
1738
+ "host.name"?: {
1739
+ enabled?: boolean;
1740
+ };
1741
+ /** ResourceAttributeConfig provides common config for a host.type resource attribute. */
1742
+ "host.type"?: {
1743
+ enabled?: boolean;
1744
+ };
1745
+ };
1746
+
1747
+ /** Config defines user-specified configurations unique to the EC2 detector */
1748
+ export type ProcessorResourcedetectionprocessorInternalAwsEc2Schema = {
1749
+ /**
1750
+ * Deprecated: Use the top-level fail_on_missing_metadata in the processor config instead. This field will be removed in a future release.
1751
+ * @deprecated
1752
+ */
1753
+ fail_on_missing_metadata?: boolean;
1754
+ max_attempts?: number;
1755
+ max_backoff?: Duration;
1756
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalAwsEc2InternalMetadataResourceAttributesConfig;
1757
+ /** Tags is a list of regex's to match ec2 instance tag keys that users want to add as resource attributes to processed data */
1758
+ tags?: Array<string>;
1759
+ /** TagsFromIMDS controls whether instance tags are fetched via IMDS (true) or via the EC2 DescribeTags API (false, default). IMDS does not require IAM permissions but requires InstanceMetadataTags=enabled on the instance. Note: IMDS must be network-accessible from the process; workloads running in containers (e.g., EKS pods, ECS tasks) may not have access to IMDS even if it is enabled on the host, unless the instance metadata options are configured to allow container access. */
1760
+ tags_from_imds?: boolean;
1761
+ };
1762
+
1763
+ /** ResourceAttributesConfig provides config for resourcedetectionprocessor/ecs resource attributes. */
1764
+ export type ProcessorResourcedetectionprocessorInternalAwsEcsInternalMetadataResourceAttributesConfig = {
1765
+ /** ResourceAttributeConfig provides common config for a aws.ecs.cluster.arn resource attribute. */
1766
+ "aws.ecs.cluster.arn"?: {
1767
+ enabled?: boolean;
1768
+ };
1769
+ /** ResourceAttributeConfig provides common config for a aws.ecs.launchtype resource attribute. */
1770
+ "aws.ecs.launchtype"?: {
1771
+ enabled?: boolean;
1772
+ };
1773
+ /** ResourceAttributeConfig provides common config for a aws.ecs.task.arn resource attribute. */
1774
+ "aws.ecs.task.arn"?: {
1775
+ enabled?: boolean;
1776
+ };
1777
+ /** ResourceAttributeConfig provides common config for a aws.ecs.task.family resource attribute. */
1778
+ "aws.ecs.task.family"?: {
1779
+ enabled?: boolean;
1780
+ };
1781
+ /** ResourceAttributeConfig provides common config for a aws.ecs.task.id resource attribute. */
1782
+ "aws.ecs.task.id"?: {
1783
+ enabled?: boolean;
1784
+ };
1785
+ /** ResourceAttributeConfig provides common config for a aws.ecs.task.revision resource attribute. */
1786
+ "aws.ecs.task.revision"?: {
1787
+ enabled?: boolean;
1788
+ };
1789
+ /** ResourceAttributeConfig provides common config for a aws.log.group.arns resource attribute. */
1790
+ "aws.log.group.arns"?: {
1791
+ enabled?: boolean;
1792
+ };
1793
+ /** ResourceAttributeConfig provides common config for a aws.log.group.names resource attribute. */
1794
+ "aws.log.group.names"?: {
1795
+ enabled?: boolean;
1796
+ };
1797
+ /** ResourceAttributeConfig provides common config for a aws.log.stream.arns resource attribute. */
1798
+ "aws.log.stream.arns"?: {
1799
+ enabled?: boolean;
1800
+ };
1801
+ /** ResourceAttributeConfig provides common config for a aws.log.stream.names resource attribute. */
1802
+ "aws.log.stream.names"?: {
1803
+ enabled?: boolean;
1804
+ };
1805
+ /** ResourceAttributeConfig provides common config for a cloud.account.id resource attribute. */
1806
+ "cloud.account.id"?: {
1807
+ enabled?: boolean;
1808
+ };
1809
+ /** ResourceAttributeConfig provides common config for a cloud.availability_zone resource attribute. */
1810
+ "cloud.availability_zone"?: {
1811
+ enabled?: boolean;
1812
+ };
1813
+ /** ResourceAttributeConfig provides common config for a cloud.platform resource attribute. */
1814
+ "cloud.platform"?: {
1815
+ enabled?: boolean;
1816
+ };
1817
+ /** ResourceAttributeConfig provides common config for a cloud.provider resource attribute. */
1818
+ "cloud.provider"?: {
1819
+ enabled?: boolean;
1820
+ };
1821
+ /** ResourceAttributeConfig provides common config for a cloud.region resource attribute. */
1822
+ "cloud.region"?: {
1823
+ enabled?: boolean;
1824
+ };
1825
+ };
1826
+
1827
+ export type ProcessorResourcedetectionprocessorInternalAwsEcsSchema = {
1828
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalAwsEcsInternalMetadataResourceAttributesConfig;
1829
+ };
1830
+
1831
+ /** ResourceAttributesConfig provides config for resourcedetectionprocessor/eks resource attributes. */
1832
+ export type ProcessorResourcedetectionprocessorInternalAwsEksInternalMetadataResourceAttributesConfig = {
1833
+ /** ResourceAttributeConfig provides common config for a cloud.account.id resource attribute. */
1834
+ "cloud.account.id"?: {
1835
+ enabled?: boolean;
1836
+ };
1837
+ /** ResourceAttributeConfig provides common config for a cloud.availability_zone resource attribute. */
1838
+ "cloud.availability_zone"?: {
1839
+ enabled?: boolean;
1840
+ };
1841
+ /** ResourceAttributeConfig provides common config for a cloud.platform resource attribute. */
1842
+ "cloud.platform"?: {
1843
+ enabled?: boolean;
1844
+ };
1845
+ /** ResourceAttributeConfig provides common config for a cloud.provider resource attribute. */
1846
+ "cloud.provider"?: {
1847
+ enabled?: boolean;
1848
+ };
1849
+ /** ResourceAttributeConfig provides common config for a cloud.region resource attribute. */
1850
+ "cloud.region"?: {
1851
+ enabled?: boolean;
1852
+ };
1853
+ /** ResourceAttributeConfig provides common config for a host.id resource attribute. */
1854
+ "host.id"?: {
1855
+ enabled?: boolean;
1856
+ };
1857
+ /** ResourceAttributeConfig provides common config for a host.image.id resource attribute. */
1858
+ "host.image.id"?: {
1859
+ enabled?: boolean;
1860
+ };
1861
+ /** ResourceAttributeConfig provides common config for a host.name resource attribute. */
1862
+ "host.name"?: {
1863
+ enabled?: boolean;
1864
+ };
1865
+ /** ResourceAttributeConfig provides common config for a host.type resource attribute. */
1866
+ "host.type"?: {
1867
+ enabled?: boolean;
1868
+ };
1869
+ /** ResourceAttributeConfig provides common config for a k8s.cluster.name resource attribute. */
1870
+ "k8s.cluster.name"?: {
1871
+ enabled?: boolean;
1872
+ };
1873
+ };
1874
+
1875
+ export type ProcessorResourcedetectionprocessorInternalAwsEksSchema = {
1876
+ node_from_env_var?: string;
1877
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalAwsEksInternalMetadataResourceAttributesConfig;
1878
+ };
1879
+
1880
+ /** ResourceAttributesConfig provides config for resourcedetectionprocessor/elastic_beanstalk resource attributes. */
1881
+ export type ProcessorResourcedetectionprocessorInternalAwsElasticbeanstalkInternalMetadataResourceAttributesConfig = {
1882
+ /** ResourceAttributeConfig provides common config for a cloud.platform resource attribute. */
1883
+ "cloud.platform"?: {
1884
+ enabled?: boolean;
1885
+ };
1886
+ /** ResourceAttributeConfig provides common config for a cloud.provider resource attribute. */
1887
+ "cloud.provider"?: {
1888
+ enabled?: boolean;
1889
+ };
1890
+ /** ResourceAttributeConfig provides common config for a deployment.environment resource attribute. */
1891
+ "deployment.environment"?: {
1892
+ enabled?: boolean;
1893
+ };
1894
+ /** ResourceAttributeConfig provides common config for a service.instance.id resource attribute. */
1895
+ "service.instance.id"?: {
1896
+ enabled?: boolean;
1897
+ };
1898
+ /** ResourceAttributeConfig provides common config for a service.version resource attribute. */
1899
+ "service.version"?: {
1900
+ enabled?: boolean;
1901
+ };
1902
+ };
1903
+
1904
+ export type ProcessorResourcedetectionprocessorInternalAwsElasticbeanstalkSchema = {
1905
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalAwsElasticbeanstalkInternalMetadataResourceAttributesConfig;
1906
+ };
1907
+
1908
+ /** ResourceAttributesConfig provides config for resourcedetectionprocessor/lambda resource attributes. */
1909
+ export type ProcessorResourcedetectionprocessorInternalAwsLambdaInternalMetadataResourceAttributesConfig = {
1910
+ /** ResourceAttributeConfig provides common config for a aws.log.group.names resource attribute. */
1911
+ "aws.log.group.names"?: {
1912
+ enabled?: boolean;
1913
+ };
1914
+ /** ResourceAttributeConfig provides common config for a aws.log.stream.names resource attribute. */
1915
+ "aws.log.stream.names"?: {
1916
+ enabled?: boolean;
1917
+ };
1918
+ /** ResourceAttributeConfig provides common config for a cloud.platform resource attribute. */
1919
+ "cloud.platform"?: {
1920
+ enabled?: boolean;
1921
+ };
1922
+ /** ResourceAttributeConfig provides common config for a cloud.provider resource attribute. */
1923
+ "cloud.provider"?: {
1924
+ enabled?: boolean;
1925
+ };
1926
+ /** ResourceAttributeConfig provides common config for a cloud.region resource attribute. */
1927
+ "cloud.region"?: {
1928
+ enabled?: boolean;
1929
+ };
1930
+ /** ResourceAttributeConfig provides common config for a faas.instance resource attribute. */
1931
+ "faas.instance"?: {
1932
+ enabled?: boolean;
1933
+ };
1934
+ /** ResourceAttributeConfig provides common config for a faas.max_memory resource attribute. */
1935
+ "faas.max_memory"?: {
1936
+ enabled?: boolean;
1937
+ };
1938
+ /** ResourceAttributeConfig provides common config for a faas.name resource attribute. */
1939
+ "faas.name"?: {
1940
+ enabled?: boolean;
1941
+ };
1942
+ /** ResourceAttributeConfig provides common config for a faas.version resource attribute. */
1943
+ "faas.version"?: {
1944
+ enabled?: boolean;
1945
+ };
1946
+ };
1947
+
1948
+ export type ProcessorResourcedetectionprocessorInternalAwsLambdaSchema = {
1949
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalAwsLambdaInternalMetadataResourceAttributesConfig;
1950
+ };
1951
+
1952
+ /** ResourceAttributesConfig provides config for resourcedetectionprocessor/aks resource attributes. */
1953
+ export type ProcessorResourcedetectionprocessorInternalAzureAksInternalMetadataResourceAttributesConfig = {
1954
+ /** ResourceAttributeConfig provides common config for a cloud.platform resource attribute. */
1955
+ "cloud.platform"?: {
1956
+ enabled?: boolean;
1957
+ };
1958
+ /** ResourceAttributeConfig provides common config for a cloud.provider resource attribute. */
1959
+ "cloud.provider"?: {
1960
+ enabled?: boolean;
1961
+ };
1962
+ /** ResourceAttributeConfig provides common config for a k8s.cluster.name resource attribute. */
1963
+ "k8s.cluster.name"?: {
1964
+ enabled?: boolean;
1965
+ };
1966
+ };
1967
+
1968
+ export type ProcessorResourcedetectionprocessorInternalAzureAksSchema = {
1969
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalAzureAksInternalMetadataResourceAttributesConfig;
1970
+ };
1971
+
1972
+ export type ProcessorResourcedetectionprocessorInternalAzureAppserviceSchema = {
1973
+ resource_attributes?: unknown;
1974
+ };
1975
+
1976
+ /** ResourceAttributesConfig provides config for resourcedetectionprocessor/azurecontainerapps resource attributes. */
1977
+ export type ProcessorResourcedetectionprocessorInternalAzureContainerappsInternalMetadataResourceAttributesConfig = {
1978
+ /** ResourceAttributeConfig provides common config for a azure.container_app.instance.id resource attribute. */
1979
+ "azure.container_app.instance.id"?: {
1980
+ enabled?: boolean;
1981
+ };
1982
+ /** ResourceAttributeConfig provides common config for a cloud.platform resource attribute. */
1983
+ "cloud.platform"?: {
1984
+ enabled?: boolean;
1985
+ };
1986
+ /** ResourceAttributeConfig provides common config for a cloud.provider resource attribute. */
1987
+ "cloud.provider"?: {
1988
+ enabled?: boolean;
1989
+ };
1990
+ /** ResourceAttributeConfig provides common config for a service.name resource attribute. */
1991
+ "service.name"?: {
1992
+ enabled?: boolean;
1993
+ };
1994
+ };
1995
+
1996
+ export type ProcessorResourcedetectionprocessorInternalAzureContainerappsSchema = {
1997
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalAzureContainerappsInternalMetadataResourceAttributesConfig;
1998
+ };
1999
+
2000
+ export type ProcessorResourcedetectionprocessorInternalAzureFunctionsSchema = {
2001
+ resource_attributes?: unknown;
2002
+ };
2003
+
2004
+ /** ResourceAttributesConfig provides config for azuredetector resource attributes. */
2005
+ export type ProcessorResourcedetectionprocessorInternalAzureInternalMetadataResourceAttributesConfig = {
2006
+ /** ResourceAttributeConfig provides common config for a azure.resourcegroup.name resource attribute. */
2007
+ "azure.resourcegroup.name"?: {
2008
+ enabled?: boolean;
2009
+ };
2010
+ /** ResourceAttributeConfig provides common config for a azure.vm.name resource attribute. */
2011
+ "azure.vm.name"?: {
2012
+ enabled?: boolean;
2013
+ };
2014
+ /** ResourceAttributeConfig provides common config for a azure.vm.scaleset.name resource attribute. */
2015
+ "azure.vm.scaleset.name"?: {
2016
+ enabled?: boolean;
2017
+ };
2018
+ /** ResourceAttributeConfig provides common config for a azure.vm.size resource attribute. */
2019
+ "azure.vm.size"?: {
2020
+ enabled?: boolean;
2021
+ };
2022
+ /** ResourceAttributeConfig provides common config for a cloud.account.id resource attribute. */
2023
+ "cloud.account.id"?: {
2024
+ enabled?: boolean;
2025
+ };
2026
+ /** ResourceAttributeConfig provides common config for a cloud.availability_zone resource attribute. */
2027
+ "cloud.availability_zone"?: {
2028
+ enabled?: boolean;
2029
+ };
2030
+ /** ResourceAttributeConfig provides common config for a cloud.platform resource attribute. */
2031
+ "cloud.platform"?: {
2032
+ enabled?: boolean;
2033
+ };
2034
+ /** ResourceAttributeConfig provides common config for a cloud.provider resource attribute. */
2035
+ "cloud.provider"?: {
2036
+ enabled?: boolean;
2037
+ };
2038
+ /** ResourceAttributeConfig provides common config for a cloud.region resource attribute. */
2039
+ "cloud.region"?: {
2040
+ enabled?: boolean;
2041
+ };
2042
+ /** ResourceAttributeConfig provides common config for a host.id resource attribute. */
2043
+ "host.id"?: {
2044
+ enabled?: boolean;
2045
+ };
2046
+ /** ResourceAttributeConfig provides common config for a host.name resource attribute. */
2047
+ "host.name"?: {
2048
+ enabled?: boolean;
2049
+ };
2050
+ };
2051
+
2052
+ export type ProcessorResourcedetectionprocessorInternalAzureSchema = {
2053
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalAzureInternalMetadataResourceAttributesConfig;
2054
+ /** Tags is a list of regex's to match azure instance tag keys that users want to add as resource attributes to processed data */
2055
+ tags?: Array<string>;
2056
+ };
2057
+
2058
+ /** ResourceAttributesConfig provides config for resourcedetectionprocessor/consul resource attributes. */
2059
+ export type ProcessorResourcedetectionprocessorInternalConsulInternalMetadataResourceAttributesConfig = {
2060
+ /** ResourceAttributeConfig provides common config for a cloud.region resource attribute. */
2061
+ "cloud.region"?: {
2062
+ enabled?: boolean;
2063
+ };
2064
+ /** ResourceAttributeConfig provides common config for a host.id resource attribute. */
2065
+ "host.id"?: {
2066
+ enabled?: boolean;
2067
+ };
2068
+ /** ResourceAttributeConfig provides common config for a host.name resource attribute. */
2069
+ "host.name"?: {
2070
+ enabled?: boolean;
2071
+ };
2072
+ };
2073
+
2074
+ /** The struct requires no user-specified fields by default as consul agent's default configuration will be provided to the API client. See `consul.go#NewDetector` for more information. */
2075
+ export type ProcessorResourcedetectionprocessorInternalConsulSchema = {
2076
+ /** Address is the address of the Consul server */
2077
+ address?: string;
2078
+ /** Datacenter to use. If not provided, the default agent datacenter is used. */
2079
+ datacenter?: string;
2080
+ /** Allowlist of [Consul Metadata](https://www.consul.io/docs/agent/options#node_meta) keys to use as resource attributes. */
2081
+ meta?: Record<string, unknown>;
2082
+ /** Namespace is the name of the namespace to send along for the request when no other Namespace is present in the QueryOptions */
2083
+ namespace?: string;
2084
+ /** ResourceAttributes configuration for Consul detector */
2085
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalConsulInternalMetadataResourceAttributesConfig;
2086
+ /** Token is used to provide a per-request ACL token which overrides the agent's default (empty) token. Token or Tokenfile are only required if [Consul's ACL System](https://www.consul.io/docs/security/acl/acl-system) is enabled. */
2087
+ token?: CollectorConfigConfigopaqueString;
2088
+ /** TokenFile is a file containing the current token to use for this client. If provided it is read once at startup and never again. Token or Tokenfile are only required if [Consul's ACL System](https://www.consul.io/docs/security/acl/acl-system) is enabled. */
2089
+ token_file?: string;
2090
+ };
2091
+
2092
+ /** ResourceAttributesConfig provides config for digitaloceandetector resource attributes. */
2093
+ export type ProcessorResourcedetectionprocessorInternalDigitaloceanInternalMetadataResourceAttributesConfig = {
2094
+ /** ResourceAttributeConfig provides common config for a cloud.provider resource attribute. */
2095
+ "cloud.provider"?: {
2096
+ enabled?: boolean;
2097
+ };
2098
+ /** ResourceAttributeConfig provides common config for a cloud.region resource attribute. */
2099
+ "cloud.region"?: {
2100
+ enabled?: boolean;
2101
+ };
2102
+ /** ResourceAttributeConfig provides common config for a host.id resource attribute. */
2103
+ "host.id"?: {
2104
+ enabled?: boolean;
2105
+ };
2106
+ /** ResourceAttributeConfig provides common config for a host.name resource attribute. */
2107
+ "host.name"?: {
2108
+ enabled?: boolean;
2109
+ };
2110
+ };
2111
+
2112
+ export type ProcessorResourcedetectionprocessorInternalDigitaloceanSchema = {
2113
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalDigitaloceanInternalMetadataResourceAttributesConfig;
2114
+ };
2115
+
2116
+ /** ResourceAttributesConfig provides config for resourcedetectionprocessor/docker resource attributes. */
2117
+ export type ProcessorResourcedetectionprocessorInternalDockerInternalMetadataResourceAttributesConfig = {
2118
+ /** ResourceAttributeConfig provides common config for a container.image.name resource attribute. */
2119
+ "container.image.name"?: {
2120
+ enabled?: boolean;
2121
+ };
2122
+ /** ResourceAttributeConfig provides common config for a container.name resource attribute. */
2123
+ "container.name"?: {
2124
+ enabled?: boolean;
2125
+ };
2126
+ /** ResourceAttributeConfig provides common config for a host.name resource attribute. */
2127
+ "host.name"?: {
2128
+ enabled?: boolean;
2129
+ };
2130
+ /** ResourceAttributeConfig provides common config for a os.type resource attribute. */
2131
+ "os.type"?: {
2132
+ enabled?: boolean;
2133
+ };
2134
+ };
2135
+
2136
+ export type ProcessorResourcedetectionprocessorInternalDockerSchema = {
2137
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalDockerInternalMetadataResourceAttributesConfig;
2138
+ };
2139
+
2140
+ /** ResourceAttributesConfig provides config for resourcedetectionprocessor/gcp resource attributes. */
2141
+ export type ProcessorResourcedetectionprocessorInternalGcpInternalMetadataResourceAttributesConfig = {
2142
+ /** ResourceAttributeConfig provides common config for a cloud.account.id resource attribute. */
2143
+ "cloud.account.id"?: {
2144
+ enabled?: boolean;
2145
+ };
2146
+ /** ResourceAttributeConfig provides common config for a cloud.availability_zone resource attribute. */
2147
+ "cloud.availability_zone"?: {
2148
+ enabled?: boolean;
2149
+ };
2150
+ /** ResourceAttributeConfig provides common config for a cloud.platform resource attribute. */
2151
+ "cloud.platform"?: {
2152
+ enabled?: boolean;
2153
+ };
2154
+ /** ResourceAttributeConfig provides common config for a cloud.provider resource attribute. */
2155
+ "cloud.provider"?: {
2156
+ enabled?: boolean;
2157
+ };
2158
+ /** ResourceAttributeConfig provides common config for a cloud.region resource attribute. */
2159
+ "cloud.region"?: {
2160
+ enabled?: boolean;
2161
+ };
2162
+ /** ResourceAttributeConfig provides common config for a faas.instance resource attribute. */
2163
+ "faas.instance"?: {
2164
+ enabled?: boolean;
2165
+ };
2166
+ /** ResourceAttributeConfig provides common config for a faas.name resource attribute. */
2167
+ "faas.name"?: {
2168
+ enabled?: boolean;
2169
+ };
2170
+ /** ResourceAttributeConfig provides common config for a faas.version resource attribute. */
2171
+ "faas.version"?: {
2172
+ enabled?: boolean;
2173
+ };
2174
+ /** ResourceAttributeConfig provides common config for a gcp.cloud_run.job.execution resource attribute. */
2175
+ "gcp.cloud_run.job.execution"?: {
2176
+ enabled?: boolean;
2177
+ };
2178
+ /** ResourceAttributeConfig provides common config for a gcp.cloud_run.job.task_index resource attribute. */
2179
+ "gcp.cloud_run.job.task_index"?: {
2180
+ enabled?: boolean;
2181
+ };
2182
+ /** ResourceAttributeConfig provides common config for a gcp.gce.instance.hostname resource attribute. */
2183
+ "gcp.gce.instance.hostname"?: {
2184
+ enabled?: boolean;
2185
+ };
2186
+ /** ResourceAttributeConfig provides common config for a gcp.gce.instance.name resource attribute. */
2187
+ "gcp.gce.instance.name"?: {
2188
+ enabled?: boolean;
2189
+ };
2190
+ /** ResourceAttributeConfig provides common config for a gcp.gce.instance_group_manager.name resource attribute. */
2191
+ "gcp.gce.instance_group_manager.name"?: {
2192
+ enabled?: boolean;
2193
+ };
2194
+ /** ResourceAttributeConfig provides common config for a gcp.gce.instance_group_manager.region resource attribute. */
2195
+ "gcp.gce.instance_group_manager.region"?: {
2196
+ enabled?: boolean;
2197
+ };
2198
+ /** ResourceAttributeConfig provides common config for a gcp.gce.instance_group_manager.zone resource attribute. */
2199
+ "gcp.gce.instance_group_manager.zone"?: {
2200
+ enabled?: boolean;
2201
+ };
2202
+ /** ResourceAttributeConfig provides common config for a host.id resource attribute. */
2203
+ "host.id"?: {
2204
+ enabled?: boolean;
2205
+ };
2206
+ /** ResourceAttributeConfig provides common config for a host.name resource attribute. */
2207
+ "host.name"?: {
2208
+ enabled?: boolean;
2209
+ };
2210
+ /** ResourceAttributeConfig provides common config for a host.type resource attribute. */
2211
+ "host.type"?: {
2212
+ enabled?: boolean;
2213
+ };
2214
+ /** ResourceAttributeConfig provides common config for a k8s.cluster.name resource attribute. */
2215
+ "k8s.cluster.name"?: {
2216
+ enabled?: boolean;
2217
+ };
2218
+ };
2219
+
2220
+ export type ProcessorResourcedetectionprocessorInternalGcpSchema = {
2221
+ /** Labels is a list of regex's to match gce instance label keys that users want to add as resource attributes to processed data */
2222
+ labels?: Array<string>;
2223
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalGcpInternalMetadataResourceAttributesConfig;
2224
+ };
2225
+
2226
+ /** ResourceAttributesConfig provides config for resourcedetectionprocessor/heroku resource attributes. */
2227
+ export type ProcessorResourcedetectionprocessorInternalHerokuInternalMetadataResourceAttributesConfig = {
2228
+ /** ResourceAttributeConfig provides common config for a cloud.provider resource attribute. */
2229
+ "cloud.provider"?: {
2230
+ enabled?: boolean;
2231
+ };
2232
+ /** ResourceAttributeConfig provides common config for a heroku.app.id resource attribute. */
2233
+ "heroku.app.id"?: {
2234
+ enabled?: boolean;
2235
+ };
2236
+ /** ResourceAttributeConfig provides common config for a heroku.dyno.id resource attribute. */
2237
+ "heroku.dyno.id"?: {
2238
+ enabled?: boolean;
2239
+ };
2240
+ /** ResourceAttributeConfig provides common config for a heroku.release.commit resource attribute. */
2241
+ "heroku.release.commit"?: {
2242
+ enabled?: boolean;
2243
+ };
2244
+ /** ResourceAttributeConfig provides common config for a heroku.release.creation_timestamp resource attribute. */
2245
+ "heroku.release.creation_timestamp"?: {
2246
+ enabled?: boolean;
2247
+ };
2248
+ /** ResourceAttributeConfig provides common config for a service.instance.id resource attribute. */
2249
+ "service.instance.id"?: {
2250
+ enabled?: boolean;
2251
+ };
2252
+ /** ResourceAttributeConfig provides common config for a service.name resource attribute. */
2253
+ "service.name"?: {
2254
+ enabled?: boolean;
2255
+ };
2256
+ /** ResourceAttributeConfig provides common config for a service.version resource attribute. */
2257
+ "service.version"?: {
2258
+ enabled?: boolean;
2259
+ };
2260
+ };
2261
+
2262
+ export type ProcessorResourcedetectionprocessorInternalHerokuSchema = {
2263
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalHerokuInternalMetadataResourceAttributesConfig;
2264
+ };
2265
+
2266
+ /** ResourceAttributesConfig provides config for hetznerdetector resource attributes. */
2267
+ export type ProcessorResourcedetectionprocessorInternalHetznerInternalMetadataResourceAttributesConfig = {
2268
+ /** ResourceAttributeConfig provides common config for a cloud.availability_zone resource attribute. */
2269
+ "cloud.availability_zone"?: {
2270
+ enabled?: boolean;
2271
+ };
2272
+ /** ResourceAttributeConfig provides common config for a cloud.platform resource attribute. */
2273
+ "cloud.platform"?: {
2274
+ enabled?: boolean;
2275
+ };
2276
+ /** ResourceAttributeConfig provides common config for a cloud.provider resource attribute. */
2277
+ "cloud.provider"?: {
2278
+ enabled?: boolean;
2279
+ };
2280
+ /** ResourceAttributeConfig provides common config for a cloud.region resource attribute. */
2281
+ "cloud.region"?: {
2282
+ enabled?: boolean;
2283
+ };
2284
+ /** ResourceAttributeConfig provides common config for a host.id resource attribute. */
2285
+ "host.id"?: {
2286
+ enabled?: boolean;
2287
+ };
2288
+ /** ResourceAttributeConfig provides common config for a host.name resource attribute. */
2289
+ "host.name"?: {
2290
+ enabled?: boolean;
2291
+ };
2292
+ };
2293
+
2294
+ export type ProcessorResourcedetectionprocessorInternalHetznerSchema = {
2295
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalHetznerInternalMetadataResourceAttributesConfig;
2296
+ };
2297
+
2298
+ /** ResourceAttributesConfig provides config for resourcedetectionprocessor/k8s_api resource attributes. */
2299
+ export type ProcessorResourcedetectionprocessorInternalK8sapiInternalMetadataResourceAttributesConfig = {
2300
+ /** ResourceAttributeConfig provides common config for a k8s.cluster.uid resource attribute. */
2301
+ "k8s.cluster.uid"?: {
2302
+ enabled?: boolean;
2303
+ };
2304
+ /** ResourceAttributeConfig provides common config for a k8s.node.name resource attribute. */
2305
+ "k8s.node.name"?: {
2306
+ enabled?: boolean;
2307
+ };
2308
+ /** ResourceAttributeConfig provides common config for a k8s.node.uid resource attribute. */
2309
+ "k8s.node.uid"?: {
2310
+ enabled?: boolean;
2311
+ };
2312
+ };
2313
+
2314
+ export type ProcessorResourcedetectionprocessorInternalK8sapiSchema = InternalK8sconfigApiConfig & {
2315
+ /** NodeFromEnv can be used to extract the node name from an environment variable. The value must be the name of the environment variable. This is useful when the node a Otel agent will run on cannot be predicted. In such cases, the Kubernetes downward API can be used to add the node name to each pod as an environment variable. K8s tagger can then read this value and filter pods by it. NodeFromEnv defaults to K8S_NODE_NAME For example, node name can be passed to each agent with the downward API as follows env: - name: K8S_NODE_NAME valueFrom: fieldRef: fieldPath: spec.nodeName Then the NodeFromEnv field can be set to `K8S_NODE_NAME` to filter all pods by the node that the agent is running on. More on downward API here: https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/ */
2316
+ node_from_env_var?: string;
2317
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalK8sapiInternalMetadataResourceAttributesConfig;
2318
+ };
2319
+
2320
+ /** ResourceAttributesConfig provides config for resourcedetectionprocessor/kubeadm resource attributes. */
2321
+ export type ProcessorResourcedetectionprocessorInternalKubeadmInternalMetadataResourceAttributesConfig = {
2322
+ /** ResourceAttributeConfig provides common config for a k8s.cluster.name resource attribute. */
2323
+ "k8s.cluster.name"?: {
2324
+ enabled?: boolean;
2325
+ };
2326
+ /** ResourceAttributeConfig provides common config for a k8s.cluster.uid resource attribute. */
2327
+ "k8s.cluster.uid"?: {
2328
+ enabled?: boolean;
2329
+ };
2330
+ };
2331
+
2332
+ export type ProcessorResourcedetectionprocessorInternalKubeadmSchema = InternalK8sconfigApiConfig & {
2333
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalKubeadmInternalMetadataResourceAttributesConfig;
2334
+ };
2335
+
2336
+ /** ResourceAttributesConfig provides config for resourcedetectionprocessor/openshift resource attributes. */
2337
+ export type ProcessorResourcedetectionprocessorInternalOpenshiftInternalMetadataResourceAttributesConfig = {
2338
+ /** ResourceAttributeConfig provides common config for a cloud.platform resource attribute. */
2339
+ "cloud.platform"?: {
2340
+ enabled?: boolean;
2341
+ };
2342
+ /** ResourceAttributeConfig provides common config for a cloud.provider resource attribute. */
2343
+ "cloud.provider"?: {
2344
+ enabled?: boolean;
2345
+ };
2346
+ /** ResourceAttributeConfig provides common config for a cloud.region resource attribute. */
2347
+ "cloud.region"?: {
2348
+ enabled?: boolean;
2349
+ };
2350
+ /** ResourceAttributeConfig provides common config for a k8s.cluster.name resource attribute. */
2351
+ "k8s.cluster.name"?: {
2352
+ enabled?: boolean;
2353
+ };
2354
+ };
2355
+
2356
+ /** Config can contain user-specified inputs to overwrite default values. See `openshift.go#NewDetector` for more information. */
2357
+ export type ProcessorResourcedetectionprocessorInternalOpenshiftSchema = {
2358
+ /** Address is the address of the openshift api server */
2359
+ address?: string;
2360
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalOpenshiftInternalMetadataResourceAttributesConfig;
2361
+ /** TLSs contains TLS configurations that are specific to client connection used to communicate with the OpenShift API. */
2362
+ tls?: CollectorConfigConfigtlsClientConfig;
2363
+ /** Token is used to identify against the openshift api server */
2364
+ token?: string;
2365
+ };
2366
+
2367
+ /** ResourceAttributeConfig provides common config for a particular resource attribute. */
2368
+ export type ProcessorResourcedetectionprocessorInternalOpenstackNovaInternalMetadataResourceAttributeConfig = {
2369
+ enabled?: boolean;
2370
+ };
2371
+
2372
+ /** ResourceAttributesConfig provides config for novadetector resource attributes. */
2373
+ export type ProcessorResourcedetectionprocessorInternalOpenstackNovaInternalMetadataResourceAttributesConfig = {
2374
+ "cloud.account.id"?: ProcessorResourcedetectionprocessorInternalOpenstackNovaInternalMetadataResourceAttributeConfig;
2375
+ "cloud.availability_zone"?: ProcessorResourcedetectionprocessorInternalOpenstackNovaInternalMetadataResourceAttributeConfig;
2376
+ "cloud.platform"?: ProcessorResourcedetectionprocessorInternalOpenstackNovaInternalMetadataResourceAttributeConfig;
2377
+ "cloud.provider"?: ProcessorResourcedetectionprocessorInternalOpenstackNovaInternalMetadataResourceAttributeConfig;
2378
+ "host.id"?: ProcessorResourcedetectionprocessorInternalOpenstackNovaInternalMetadataResourceAttributeConfig;
2379
+ "host.name"?: ProcessorResourcedetectionprocessorInternalOpenstackNovaInternalMetadataResourceAttributeConfig;
2380
+ "host.type"?: ProcessorResourcedetectionprocessorInternalOpenstackNovaInternalMetadataResourceAttributeConfig;
2381
+ };
2382
+
2383
+ /** Config defines user-specified configurations unique to the Nova detector. */
2384
+ export type ProcessorResourcedetectionprocessorInternalOpenstackNovaSchema = {
2385
+ /**
2386
+ * Deprecated: Use the top-level fail_on_missing_metadata in the processor config instead. This field will be removed in a future release.
2387
+ * @deprecated
2388
+ */
2389
+ fail_on_missing_metadata?: boolean;
2390
+ /** Labels is a list of regex patterns to match Nova instance metadata keys (from the "meta" map) that should be added as resource attributes. Matched keys are emitted as "openstack.nova.meta.<key>: <value>". */
2391
+ labels?: Array<string>;
2392
+ /** ResourceAttributes controls which standard resource attributes are enabled (e.g., host.id, host.name, cloud.provider, etc.). */
2393
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalOpenstackNovaInternalMetadataResourceAttributesConfig;
2394
+ };
2395
+
2396
+ /** ResourceAttributeConfig provides common config for a particular resource attribute. */
2397
+ export type ProcessorResourcedetectionprocessorInternalOraclecloudInternalMetadataResourceAttributeConfig = {
2398
+ enabled?: boolean;
2399
+ };
2400
+
2401
+ /** ResourceAttributesConfig provides config for oracleclouddetector resource attributes. */
2402
+ export type ProcessorResourcedetectionprocessorInternalOraclecloudInternalMetadataResourceAttributesConfig = {
2403
+ "cloud.availability_zone"?: ProcessorResourcedetectionprocessorInternalOraclecloudInternalMetadataResourceAttributeConfig;
2404
+ "cloud.platform"?: ProcessorResourcedetectionprocessorInternalOraclecloudInternalMetadataResourceAttributeConfig;
2405
+ "cloud.provider"?: ProcessorResourcedetectionprocessorInternalOraclecloudInternalMetadataResourceAttributeConfig;
2406
+ "cloud.region"?: ProcessorResourcedetectionprocessorInternalOraclecloudInternalMetadataResourceAttributeConfig;
2407
+ "cloud.resource_id"?: ProcessorResourcedetectionprocessorInternalOraclecloudInternalMetadataResourceAttributeConfig;
2408
+ "host.id"?: ProcessorResourcedetectionprocessorInternalOraclecloudInternalMetadataResourceAttributeConfig;
2409
+ "host.name"?: ProcessorResourcedetectionprocessorInternalOraclecloudInternalMetadataResourceAttributeConfig;
2410
+ "host.type"?: ProcessorResourcedetectionprocessorInternalOraclecloudInternalMetadataResourceAttributeConfig;
2411
+ "k8s.cluster.name"?: ProcessorResourcedetectionprocessorInternalOraclecloudInternalMetadataResourceAttributeConfig;
2412
+ "oracle_cloud.realm"?: ProcessorResourcedetectionprocessorInternalOraclecloudInternalMetadataResourceAttributeConfig;
2413
+ };
2414
+
2415
+ export type ProcessorResourcedetectionprocessorInternalOraclecloudSchema = {
2416
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalOraclecloudInternalMetadataResourceAttributesConfig;
2417
+ };
2418
+
2419
+ /** ResourceAttributesConfig provides config for scalewaydetector resource attributes. */
2420
+ export type ProcessorResourcedetectionprocessorInternalScalewayInternalMetadataResourceAttributesConfig = {
2421
+ /** ResourceAttributeConfig provides common config for a cloud.account.id resource attribute. */
2422
+ "cloud.account.id"?: {
2423
+ enabled?: boolean;
2424
+ };
2425
+ /** ResourceAttributeConfig provides common config for a cloud.availability_zone resource attribute. */
2426
+ "cloud.availability_zone"?: {
2427
+ enabled?: boolean;
2428
+ };
2429
+ /** ResourceAttributeConfig provides common config for a cloud.platform resource attribute. */
2430
+ "cloud.platform"?: {
2431
+ enabled?: boolean;
2432
+ };
2433
+ /** ResourceAttributeConfig provides common config for a cloud.provider resource attribute. */
2434
+ "cloud.provider"?: {
2435
+ enabled?: boolean;
2436
+ };
2437
+ /** ResourceAttributeConfig provides common config for a cloud.region resource attribute. */
2438
+ "cloud.region"?: {
2439
+ enabled?: boolean;
2440
+ };
2441
+ /** ResourceAttributeConfig provides common config for a host.id resource attribute. */
2442
+ "host.id"?: {
2443
+ enabled?: boolean;
2444
+ };
2445
+ /** ResourceAttributeConfig provides common config for a host.image.id resource attribute. */
2446
+ "host.image.id"?: {
2447
+ enabled?: boolean;
2448
+ };
2449
+ /** ResourceAttributeConfig provides common config for a host.image.name resource attribute. */
2450
+ "host.image.name"?: {
2451
+ enabled?: boolean;
2452
+ };
2453
+ /** ResourceAttributeConfig provides common config for a host.name resource attribute. */
2454
+ "host.name"?: {
2455
+ enabled?: boolean;
2456
+ };
2457
+ /** ResourceAttributeConfig provides common config for a host.type resource attribute. */
2458
+ "host.type"?: {
2459
+ enabled?: boolean;
2460
+ };
2461
+ };
2462
+
2463
+ export type ProcessorResourcedetectionprocessorInternalScalewaySchema = {
2464
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalScalewayInternalMetadataResourceAttributesConfig;
2465
+ };
2466
+
2467
+ /** ResourceAttributesConfig provides config for resourcedetectionprocessor/system resource attributes. */
2468
+ export type ProcessorResourcedetectionprocessorInternalSystemInternalMetadataResourceAttributesConfig = {
2469
+ /** ResourceAttributeConfig provides common config for a host.arch resource attribute. */
2470
+ "host.arch"?: {
2471
+ enabled?: boolean;
2472
+ };
2473
+ /** ResourceAttributeConfig provides common config for a host.cpu.cache.l2.size resource attribute. */
2474
+ "host.cpu.cache.l2.size"?: {
2475
+ enabled?: boolean;
2476
+ };
2477
+ /** ResourceAttributeConfig provides common config for a host.cpu.family resource attribute. */
2478
+ "host.cpu.family"?: {
2479
+ enabled?: boolean;
2480
+ };
2481
+ /** ResourceAttributeConfig provides common config for a host.cpu.model.id resource attribute. */
2482
+ "host.cpu.model.id"?: {
2483
+ enabled?: boolean;
2484
+ };
2485
+ /** ResourceAttributeConfig provides common config for a host.cpu.model.name resource attribute. */
2486
+ "host.cpu.model.name"?: {
2487
+ enabled?: boolean;
2488
+ };
2489
+ /** ResourceAttributeConfig provides common config for a host.cpu.stepping resource attribute. */
2490
+ "host.cpu.stepping"?: {
2491
+ enabled?: boolean;
2492
+ };
2493
+ /** ResourceAttributeConfig provides common config for a host.cpu.vendor.id resource attribute. */
2494
+ "host.cpu.vendor.id"?: {
2495
+ enabled?: boolean;
2496
+ };
2497
+ /** ResourceAttributeConfig provides common config for a host.id resource attribute. */
2498
+ "host.id"?: {
2499
+ enabled?: boolean;
2500
+ };
2501
+ /** ResourceAttributeConfig provides common config for a host.interface resource attribute. */
2502
+ "host.interface"?: {
2503
+ enabled?: boolean;
2504
+ };
2505
+ /** ResourceAttributeConfig provides common config for a host.ip resource attribute. */
2506
+ "host.ip"?: {
2507
+ enabled?: boolean;
2508
+ };
2509
+ /** ResourceAttributeConfig provides common config for a host.mac resource attribute. */
2510
+ "host.mac"?: {
2511
+ enabled?: boolean;
2512
+ };
2513
+ /** ResourceAttributeConfig provides common config for a host.name resource attribute. */
2514
+ "host.name"?: {
2515
+ enabled?: boolean;
2516
+ };
2517
+ /** ResourceAttributeConfig provides common config for a os.build.id resource attribute. */
2518
+ "os.build.id"?: {
2519
+ enabled?: boolean;
2520
+ };
2521
+ /** ResourceAttributeConfig provides common config for a os.description resource attribute. */
2522
+ "os.description"?: {
2523
+ enabled?: boolean;
2524
+ };
2525
+ /** ResourceAttributeConfig provides common config for a os.name resource attribute. */
2526
+ "os.name"?: {
2527
+ enabled?: boolean;
2528
+ };
2529
+ /** ResourceAttributeConfig provides common config for a os.type resource attribute. */
2530
+ "os.type"?: {
2531
+ enabled?: boolean;
2532
+ };
2533
+ /** ResourceAttributeConfig provides common config for a os.version resource attribute. */
2534
+ "os.version"?: {
2535
+ enabled?: boolean;
2536
+ };
2537
+ };
2538
+
2539
+ /** Config defines user-specified configurations unique to the system detector */
2540
+ export type ProcessorResourcedetectionprocessorInternalSystemSchema = {
2541
+ /** The HostnameSources is a priority list of sources from which hostname will be fetched. In case of the error in fetching hostname from source, the next source from the list will be considered.(**default**: `["dns", "os"]`) */
2542
+ hostname_sources?: Array<string>;
2543
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalSystemInternalMetadataResourceAttributesConfig;
2544
+ };
2545
+
2546
+ /** ResourceAttributesConfig provides config for upclouddetector resource attributes. */
2547
+ export type ProcessorResourcedetectionprocessorInternalUpcloudInternalMetadataResourceAttributesConfig = {
2548
+ /** ResourceAttributeConfig provides common config for a cloud.provider resource attribute. */
2549
+ "cloud.provider"?: {
2550
+ enabled?: boolean;
2551
+ };
2552
+ /** ResourceAttributeConfig provides common config for a cloud.region resource attribute. */
2553
+ "cloud.region"?: {
2554
+ enabled?: boolean;
2555
+ };
2556
+ /** ResourceAttributeConfig provides common config for a host.id resource attribute. */
2557
+ "host.id"?: {
2558
+ enabled?: boolean;
2559
+ };
2560
+ /** ResourceAttributeConfig provides common config for a host.name resource attribute. */
2561
+ "host.name"?: {
2562
+ enabled?: boolean;
2563
+ };
2564
+ };
2565
+
2566
+ export type ProcessorResourcedetectionprocessorInternalUpcloudSchema = {
2567
+ /**
2568
+ * Deprecated: Use the top-level fail_on_missing_metadata in the processor config instead. This field will be removed in a future release.
2569
+ * @deprecated
2570
+ */
2571
+ fail_on_missing_metadata?: boolean;
2572
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalUpcloudInternalMetadataResourceAttributesConfig;
2573
+ };
2574
+
2575
+ /** ResourceAttributesConfig provides config for vultrdetector resource attributes. */
2576
+ export type ProcessorResourcedetectionprocessorInternalVultrInternalMetadataResourceAttributesConfig = {
2577
+ /** ResourceAttributeConfig provides common config for a cloud.platform resource attribute. */
2578
+ "cloud.platform"?: {
2579
+ enabled?: boolean;
2580
+ };
2581
+ /** ResourceAttributeConfig provides common config for a cloud.provider resource attribute. */
2582
+ "cloud.provider"?: {
2583
+ enabled?: boolean;
2584
+ };
2585
+ /** ResourceAttributeConfig provides common config for a cloud.region resource attribute. */
2586
+ "cloud.region"?: {
2587
+ enabled?: boolean;
2588
+ };
2589
+ /** ResourceAttributeConfig provides common config for a host.id resource attribute. */
2590
+ "host.id"?: {
2591
+ enabled?: boolean;
2592
+ };
2593
+ /** ResourceAttributeConfig provides common config for a host.name resource attribute. */
2594
+ "host.name"?: {
2595
+ enabled?: boolean;
2596
+ };
2597
+ };
2598
+
2599
+ export type ProcessorResourcedetectionprocessorInternalVultrSchema = {
2600
+ /**
2601
+ * Deprecated: Use the top-level fail_on_missing_metadata in the processor config instead. This field will be removed in a future release.
2602
+ * @deprecated
2603
+ */
2604
+ fail_on_missing_metadata?: boolean;
2605
+ resource_attributes?: ProcessorResourcedetectionprocessorInternalVultrInternalMetadataResourceAttributesConfig;
2606
+ };
2607
+
2608
+ /** Config defines configuration for Resource processor. */
2609
+ export type ProcessorResourcedetectionprocessorSchema = ProcessorResourcedetectionprocessorDetectorConfig & CollectorConfigConfighttpClientConfig & {
2610
+ /** Detectors is an ordered list of named detectors that should be run to attempt to detect resource information. */
2611
+ detectors?: Array<string>;
2612
+ /** FailOnMissingMetadata controls whether network-based detectors treat an unreachable metadata service as a hard failure. When true, affected detectors return an error instead of silently returning an empty resource, enabling the processor's retry mechanism to wait until the metadata service becomes available (e.g., during GKE/AKS node startup races). Supersedes the per-detector fail_on_missing_metadata fields (now deprecated). Default: false (backward compatible). */
2613
+ fail_on_missing_metadata?: boolean;
2614
+ /** Override indicates whether any existing resource attributes should be overridden or preserved. Defaults to true. */
2615
+ override?: boolean;
2616
+ /** If > 0, periodically re-run detection for all configured detectors. When 0 (default), no periodic refresh occurs. */
2617
+ refresh_interval?: Duration;
2618
+ /** Retry controls retry/backoff for each detection attempt. Set Enabled=false to perform a single attempt per detector with no retries. */
2619
+ retry?: CollectorConfigConfigretryBackOffConfig;
2620
+ };
2621
+
2622
+ /** Config defines configuration for Resource processor. */
2623
+ export type ProcessorResourceprocessorSchema = {
2624
+ /** AttributesActions specifies the list of actions to be applied on resource attributes. The set of actions are {INSERT, UPDATE, UPSERT, DELETE, HASH, EXTRACT}. */
2625
+ attributes?: Array<InternalCoreinternalAttractionActionKeyValue>;
2626
+ };
2627
+
2628
+ /** AndCfg holds the common configuration to all and policies. */
2629
+ export type ProcessorTailsamplingprocessorAndCfg = {
2630
+ and_sub_policy?: Array<ProcessorTailsamplingprocessorAndSubPolicyCfg>;
2631
+ };
2632
+
2633
+ /** AndSubPolicyCfg holds the common configuration to all policies under and policy. */
2634
+ export type ProcessorTailsamplingprocessorAndSubPolicyCfg = {
2635
+ /** Configs for any extensions that are used. */
2636
+ ExtensionCfg?: Record<string, Record<string, unknown>>;
2637
+ /** Configs for boolean attribute filter sampling policy evaluator. */
2638
+ boolean_attribute?: ProcessorTailsamplingprocessorBooleanAttributeCfg;
2639
+ /** Configs for bytes limiting filter sampling policy evaluator. */
2640
+ bytes_limiting?: ProcessorTailsamplingprocessorBytesLimitingCfg;
2641
+ /** Configs for latency filter sampling policy evaluator. */
2642
+ latency?: ProcessorTailsamplingprocessorLatencyCfg;
2643
+ /** Name given to the instance of the policy to make easy to identify it in metrics and logs. */
2644
+ name?: string;
2645
+ /** Configs for defining not policy under and policy. */
2646
+ not?: ProcessorTailsamplingprocessorNotCfg;
2647
+ /** Configs for numeric attribute filter sampling policy evaluator. */
2648
+ numeric_attribute?: ProcessorTailsamplingprocessorNumericAttributeCfg;
2649
+ /** Configs for OTTL condition filter sampling policy evaluator */
2650
+ ottl_condition?: ProcessorTailsamplingprocessorOttlConditionCfg;
2651
+ /** Configs for probabilistic sampling policy evaluator. */
2652
+ probabilistic?: ProcessorTailsamplingprocessorProbabilisticCfg;
2653
+ /** Configs for rate limiting filter sampling policy evaluator. */
2654
+ rate_limiting?: ProcessorTailsamplingprocessorRateLimitingCfg;
2655
+ /** Configs for span count filter sampling policy evaluator. */
2656
+ span_count?: ProcessorTailsamplingprocessorSpanCountCfg;
2657
+ /** Configs for status code filter sampling policy evaluator. */
2658
+ status_code?: ProcessorTailsamplingprocessorStatusCodeCfg;
2659
+ /** Configs for string attribute filter sampling policy evaluator. */
2660
+ string_attribute?: ProcessorTailsamplingprocessorStringAttributeCfg;
2661
+ /** Configs for defining trace_state policy */
2662
+ trace_state?: ProcessorTailsamplingprocessorTraceStateCfg;
2663
+ /** Type of the policy this will be used to match the proper configuration of the policy. */
2664
+ type?: ProcessorTailsamplingprocessorPolicyType;
2665
+ };
2666
+
2667
+ /** BooleanAttributeCfg holds the configurable settings to create a boolean attribute filter sampling policy evaluator. */
2668
+ export type ProcessorTailsamplingprocessorBooleanAttributeCfg = {
2669
+ /** InvertMatch indicates that values must not match against attribute values. If InvertMatch is true and Values is equal to 'true', all other values will be sampled except 'true'. Also, if the specified Key does not match any resource or span attributes, data will be sampled. */
2670
+ invert_match?: boolean;
2671
+ /** Tag that the filter is going to be matching against. */
2672
+ key?: string;
2673
+ /** Value indicate the bool value, either true or false to use when matching against attribute values. BooleanAttribute Policy will apply exact value match on Value */
2674
+ value?: boolean;
2675
+ };
2676
+
2677
+ /** BytesLimitingCfg holds the configurable settings to create a bytes limiting sampling policy evaluator using a token bucket algorithm. */
2678
+ export type ProcessorTailsamplingprocessorBytesLimitingCfg = {
2679
+ /** BurstCapacity sets the maximum burst capacity in bytes. If not specified, defaults to 2x BytesPerSecond. This allows for short bursts of traffic above the sustained rate. It also acts as a limit for individual trace sizes, a single trace larger than the burst size will not pass. */
2680
+ burst_capacity?: number;
2681
+ /** BytesPerSecond sets the limit on the maximum number of bytes that can be processed each second. */
2682
+ bytes_per_second?: number;
2683
+ };
2684
+
2685
+ /** CompositeCfg holds the configurable settings to create a composite sampling policy evaluator. */
2686
+ export type ProcessorTailsamplingprocessorCompositeCfg = {
2687
+ composite_sub_policy?: Array<ProcessorTailsamplingprocessorCompositeSubPolicyCfg>;
2688
+ max_total_spans_per_second?: number;
2689
+ policy_order?: Array<string>;
2690
+ rate_allocation?: Array<ProcessorTailsamplingprocessorRateAllocationCfg>;
2691
+ };
2692
+
2693
+ /** CompositeSubPolicyCfg holds the common configuration to all policies under composite policy. */
2694
+ export type ProcessorTailsamplingprocessorCompositeSubPolicyCfg = {
2695
+ /** Configs for any extensions that are used. */
2696
+ ExtensionCfg?: Record<string, Record<string, unknown>>;
2697
+ /** Configs for and policy evaluator. */
2698
+ and?: ProcessorTailsamplingprocessorAndCfg;
2699
+ /** Configs for boolean attribute filter sampling policy evaluator. */
2700
+ boolean_attribute?: ProcessorTailsamplingprocessorBooleanAttributeCfg;
2701
+ /** Configs for bytes limiting filter sampling policy evaluator. */
2702
+ bytes_limiting?: ProcessorTailsamplingprocessorBytesLimitingCfg;
2703
+ /** Configs for latency filter sampling policy evaluator. */
2704
+ latency?: ProcessorTailsamplingprocessorLatencyCfg;
2705
+ /** Name given to the instance of the policy to make easy to identify it in metrics and logs. */
2706
+ name?: string;
2707
+ /** Configs for numeric attribute filter sampling policy evaluator. */
2708
+ numeric_attribute?: ProcessorTailsamplingprocessorNumericAttributeCfg;
2709
+ /** Configs for OTTL condition filter sampling policy evaluator */
2710
+ ottl_condition?: ProcessorTailsamplingprocessorOttlConditionCfg;
2711
+ /** Configs for probabilistic sampling policy evaluator. */
2712
+ probabilistic?: ProcessorTailsamplingprocessorProbabilisticCfg;
2713
+ /** Configs for rate limiting filter sampling policy evaluator. */
2714
+ rate_limiting?: ProcessorTailsamplingprocessorRateLimitingCfg;
2715
+ /** Configs for span count filter sampling policy evaluator. */
2716
+ span_count?: ProcessorTailsamplingprocessorSpanCountCfg;
2717
+ /** Configs for status code filter sampling policy evaluator. */
2718
+ status_code?: ProcessorTailsamplingprocessorStatusCodeCfg;
2719
+ /** Configs for string attribute filter sampling policy evaluator. */
2720
+ string_attribute?: ProcessorTailsamplingprocessorStringAttributeCfg;
2721
+ /** Configs for defining trace_state policy */
2722
+ trace_state?: ProcessorTailsamplingprocessorTraceStateCfg;
2723
+ /** Type of the policy this will be used to match the proper configuration of the policy. */
2724
+ type?: ProcessorTailsamplingprocessorPolicyType;
2725
+ };
2726
+
2727
+ export type ProcessorTailsamplingprocessorDecisionCacheConfig = {
2728
+ /** NonSampledCacheSize specifies the size of the cache that holds the non-sampled trace IDs. This value will be the maximum amount of trace IDs that the cache can hold before overwriting previous IDs. For effective use, this value should be at least an order of magnitude greater than Config.NumTraces. If left as default 0, a no-op DecisionCache will be used. */
2729
+ non_sampled_cache_size?: number;
2730
+ /** SampledCacheSize specifies the size of the cache that holds the sampled trace IDs. This value will be the maximum amount of trace IDs that the cache can hold before overwriting previous IDs. For effective use, this value should be at least an order of magnitude greater than Config.NumTraces. If left as default 0, a no-op DecisionCache will be used. */
2731
+ sampled_cache_size?: number;
2732
+ };
2733
+
2734
+ /** DropCfg holds the common configuration to all policies under drop policy. */
2735
+ export type ProcessorTailsamplingprocessorDropCfg = {
2736
+ drop_sub_policy?: Array<ProcessorTailsamplingprocessorAndSubPolicyCfg>;
2737
+ };
2738
+
2739
+ /** LatencyCfg holds the configurable settings to create a latency filter sampling policy evaluator */
2740
+ export type ProcessorTailsamplingprocessorLatencyCfg = {
2741
+ /** Lower bound in milliseconds. Retaining original name for compatibility */
2742
+ threshold_ms?: number;
2743
+ /** Upper bound in milliseconds. */
2744
+ upper_threshold_ms?: number;
2745
+ };
2746
+
2747
+ /** NotCfg holds the configuration for the not policy. */
2748
+ export type ProcessorTailsamplingprocessorNotCfg = {
2749
+ not_sub_policy?: ProcessorTailsamplingprocessorNotSubPolicyCfg;
2750
+ };
2751
+
2752
+ /** NotSubPolicyCfg holds the common configuration to the policy under the not policy. */
2753
+ export type ProcessorTailsamplingprocessorNotSubPolicyCfg = {
2754
+ /** Configs for any extensions that are used. */
2755
+ ExtensionCfg?: Record<string, Record<string, unknown>>;
2756
+ /** Configs for boolean attribute filter sampling policy evaluator. */
2757
+ boolean_attribute?: ProcessorTailsamplingprocessorBooleanAttributeCfg;
2758
+ /** Configs for bytes limiting filter sampling policy evaluator. */
2759
+ bytes_limiting?: ProcessorTailsamplingprocessorBytesLimitingCfg;
2760
+ /** Configs for latency filter sampling policy evaluator. */
2761
+ latency?: ProcessorTailsamplingprocessorLatencyCfg;
2762
+ /** Name given to the instance of the policy to make easy to identify it in metrics and logs. */
2763
+ name?: string;
2764
+ /** Configs for numeric attribute filter sampling policy evaluator. */
2765
+ numeric_attribute?: ProcessorTailsamplingprocessorNumericAttributeCfg;
2766
+ /** Configs for OTTL condition filter sampling policy evaluator */
2767
+ ottl_condition?: ProcessorTailsamplingprocessorOttlConditionCfg;
2768
+ /** Configs for probabilistic sampling policy evaluator. */
2769
+ probabilistic?: ProcessorTailsamplingprocessorProbabilisticCfg;
2770
+ /** Configs for rate limiting filter sampling policy evaluator. */
2771
+ rate_limiting?: ProcessorTailsamplingprocessorRateLimitingCfg;
2772
+ /** Configs for span count filter sampling policy evaluator. */
2773
+ span_count?: ProcessorTailsamplingprocessorSpanCountCfg;
2774
+ /** Configs for status code filter sampling policy evaluator. */
2775
+ status_code?: ProcessorTailsamplingprocessorStatusCodeCfg;
2776
+ /** Configs for string attribute filter sampling policy evaluator. */
2777
+ string_attribute?: ProcessorTailsamplingprocessorStringAttributeCfg;
2778
+ /** Configs for defining trace_state policy */
2779
+ trace_state?: ProcessorTailsamplingprocessorTraceStateCfg;
2780
+ /** Type of the policy this will be used to match the proper configuration of the policy. */
2781
+ type?: ProcessorTailsamplingprocessorPolicyType;
2782
+ };
2783
+
2784
+ /** NumericAttributeCfg holds the configurable settings to create a numeric attribute filter sampling policy evaluator. */
2785
+ export type ProcessorTailsamplingprocessorNumericAttributeCfg = {
2786
+ /** InvertMatch indicates that values must not match against attribute values. If InvertMatch is true and Values is equal to '123', all other values will be sampled except '123'. Also, if the specified Key does not match any resource or span attributes, data will be sampled. */
2787
+ invert_match?: boolean;
2788
+ /** Tag that the filter is going to be matching against. */
2789
+ key?: string;
2790
+ /** MaxValue is the maximum value of the attribute to be considered a match. */
2791
+ max_value?: number;
2792
+ /** MinValue is the minimum value of the attribute to be considered a match. */
2793
+ min_value?: number;
2794
+ };
2795
+
2796
+ /** OTTLConditionCfg holds the configurable setting to create a OTTL condition filter sampling policy evaluator. */
2797
+ export type ProcessorTailsamplingprocessorOttlConditionCfg = {
2798
+ error_mode?: PkgOttlErrorMode;
2799
+ span?: Array<string>;
2800
+ spanevent?: Array<string>;
2801
+ };
2802
+
2803
+ /** PolicyCfg holds the common configuration to all policies. */
2804
+ export type ProcessorTailsamplingprocessorPolicyCfg = {
2805
+ /** Configs for any extensions that are used. */
2806
+ ExtensionCfg?: Record<string, Record<string, unknown>>;
2807
+ /** Configs for defining and policy */
2808
+ and?: ProcessorTailsamplingprocessorAndCfg;
2809
+ /** Configs for boolean attribute filter sampling policy evaluator. */
2810
+ boolean_attribute?: ProcessorTailsamplingprocessorBooleanAttributeCfg;
2811
+ /** Configs for bytes limiting filter sampling policy evaluator. */
2812
+ bytes_limiting?: ProcessorTailsamplingprocessorBytesLimitingCfg;
2813
+ /** Configs for defining composite policy */
2814
+ composite?: ProcessorTailsamplingprocessorCompositeCfg;
2815
+ /** Configs for defining drop policy */
2816
+ drop?: ProcessorTailsamplingprocessorDropCfg;
2817
+ /** Configs for latency filter sampling policy evaluator. */
2818
+ latency?: ProcessorTailsamplingprocessorLatencyCfg;
2819
+ /** Name given to the instance of the policy to make easy to identify it in metrics and logs. */
2820
+ name?: string;
2821
+ /** Configs for defining not policy */
2822
+ not?: ProcessorTailsamplingprocessorNotCfg;
2823
+ /** Configs for numeric attribute filter sampling policy evaluator. */
2824
+ numeric_attribute?: ProcessorTailsamplingprocessorNumericAttributeCfg;
2825
+ /** Configs for OTTL condition filter sampling policy evaluator */
2826
+ ottl_condition?: ProcessorTailsamplingprocessorOttlConditionCfg;
2827
+ /** Configs for probabilistic sampling policy evaluator. */
2828
+ probabilistic?: ProcessorTailsamplingprocessorProbabilisticCfg;
2829
+ /** Configs for rate limiting filter sampling policy evaluator. */
2830
+ rate_limiting?: ProcessorTailsamplingprocessorRateLimitingCfg;
2831
+ /** Configs for span count filter sampling policy evaluator. */
2832
+ span_count?: ProcessorTailsamplingprocessorSpanCountCfg;
2833
+ /** Configs for status code filter sampling policy evaluator. */
2834
+ status_code?: ProcessorTailsamplingprocessorStatusCodeCfg;
2835
+ /** Configs for string attribute filter sampling policy evaluator. */
2836
+ string_attribute?: ProcessorTailsamplingprocessorStringAttributeCfg;
2837
+ /** Configs for defining trace_state policy */
2838
+ trace_state?: ProcessorTailsamplingprocessorTraceStateCfg;
2839
+ /** Type of the policy this will be used to match the proper configuration of the policy. */
2840
+ type?: ProcessorTailsamplingprocessorPolicyType;
2841
+ };
2842
+
2843
+ /** PolicyType indicates the type of sampling policy. */
2844
+ export type ProcessorTailsamplingprocessorPolicyType = string;
2845
+
2846
+ /** ProbabilisticCfg holds the configurable settings to create a probabilistic sampling policy evaluator. */
2847
+ export type ProcessorTailsamplingprocessorProbabilisticCfg = {
2848
+ /** HashSalt allows one to configure the hashing salts. This is important in scenarios where multiple layers of collectors have different sampling rates: if they use the same salt all passing one layer may pass the other even if they have different sampling rates, configuring different salts avoids that. */
2849
+ hash_salt?: string;
2850
+ /** SamplingPercentage is the percentage rate at which traces are going to be sampled. Defaults to zero, i.e.: no sample. Values greater or equal 100 are treated as "sample all traces". */
2851
+ sampling_percentage?: number;
2852
+ };
2853
+
2854
+ /** RateAllocationCfg used within composite policy */
2855
+ export type ProcessorTailsamplingprocessorRateAllocationCfg = {
2856
+ percent?: number;
2857
+ policy?: string;
2858
+ };
2859
+
2860
+ /** RateLimitingCfg holds the configurable settings to create a rate limiting sampling policy evaluator. */
2861
+ export type ProcessorTailsamplingprocessorRateLimitingCfg = {
2862
+ /** BurstCapacity sets the maximum burst capacity in spans. If not specified, defaults to 2x SpansPerSecond. This allows for short bursts of traffic above the sustained rate. It also acts as a limit for individual trace span counts, a single trace with more spans than the burst size will not pass. */
2863
+ burst_capacity?: number;
2864
+ /** SpansPerSecond sets the limit on the maximum number of spans that can be processed each second. */
2865
+ spans_per_second?: number;
2866
+ };
2867
+
2868
+ /** Config holds the configuration for tail-based sampling. */
2869
+ export type ProcessorTailsamplingprocessorSchema = {
2870
+ /** BlockOnOverflow determines the behavior when the component's NumTraces limit is reached. If true, the component will wait for space; otherwise, old traces will be evicted to make space. */
2871
+ block_on_overflow?: boolean;
2872
+ /** DecisionCache holds configuration for the decision cache(s) */
2873
+ decision_cache?: ProcessorTailsamplingprocessorDecisionCacheConfig;
2874
+ /** DecisionWait is the time before timer handling for a trace. When sampling_strategy is "trace-complete", this controls decision timing. When sampling_strategy is "span-ingest", this controls pending cleanup finalization timing. */
2875
+ decision_wait?: Duration;
2876
+ /** DecisionWaitAfterRootReceived adds root-span-based acceleration for timer handling. When sampling_strategy is "trace-complete", this can make decisions earlier. When sampling_strategy is "span-ingest", this can finalize pending traces earlier on cleanup. */
2877
+ decision_wait_after_root_received?: Duration;
2878
+ /** DropPendingTracesOnShutdown will drop all traces that are part of batches that have not yet reached the decision wait when the processor is shutdown. */
2879
+ drop_pending_traces_on_shutdown?: boolean;
2880
+ /** ExpectedNewTracesPerSec sets the expected number of new traces sending to the tail sampling processor per second. This helps with allocating data structures with closer to actual usage size. */
2881
+ expected_new_traces_per_sec?: number;
2882
+ /** MaximumTraceSizeBytes is the largest size of a trace a decision will be made for. If the trace size exceeds this it will be dropped before the decision period to keep memory more predictable. A 0 value disables dropping large traces early. */
2883
+ maximum_trace_size_bytes?: number;
2884
+ /** NumShards controls the number of parallel goroutine loops processing traces. Each shard runs an independent event loop with its own trace storage and decision batcher. Traces are routed to shards by a hash of the trace ID, ensuring all spans for a given trace are processed by the same shard. Higher values reduce contention between trace ingestion and sampling decision evaluation under high load. NumTraces, ExpectedNewTracesPerSec, decision cache sizes, and per-second rate limits in policies (rate_limiting, bytes_limiting, and composite max_total_spans_per_second) are divided evenly across shards so aggregate behavior matches the configured values. Limiter burst capacities are not divided so single large traces stay admissible regardless of the shard count. Must not exceed 256, and values greater than 1 are not supported with tail_storage. Defaults to 1 (single event loop, original behavior). */
2885
+ num_shards?: number;
2886
+ /** NumTraces is the number of traces kept on memory. Typically most of the data of a trace is released after a sampling decision is taken. */
2887
+ num_traces?: number;
2888
+ /** PolicyCfgs sets the tail-based sampling policy which makes a sampling decision for a given trace when requested. */
2889
+ policies?: Array<ProcessorTailsamplingprocessorPolicyCfg>;
2890
+ /** Make decision as soon as a policy matches */
2891
+ sample_on_first_match?: boolean;
2892
+ /** SamplingStrategy controls how/when sampling decisions are made. "trace-complete" (default) evaluates accumulated trace data on timer handling. "span-ingest" evaluates each incoming batch on ingest; terminal outcomes finalize immediately, and non-terminal traces are finalized on cleanup. */
2893
+ sampling_strategy?: string;
2894
+ /** TailStorageID specifies an optional tail storage extension to use for buffering spans. If not set, in-memory tail storage is used. It is behind feature gate `processor.tailsamplingprocessor.tailstorageextension`. */
2895
+ tail_storage?: string;
2896
+ };
2897
+
2898
+ /** SpanCountCfg holds the configurable settings to create a Span Count filter sampling policy evaluator */
2899
+ export type ProcessorTailsamplingprocessorSpanCountCfg = {
2900
+ max_spans?: number;
2901
+ /** Minimum number of spans in a Trace */
2902
+ min_spans?: number;
2903
+ };
2904
+
2905
+ /** StatusCodeCfg holds the configurable settings to create a status code filter sampling policy evaluator. */
2906
+ export type ProcessorTailsamplingprocessorStatusCodeCfg = {
2907
+ status_codes?: Array<string>;
2908
+ };
2909
+
2910
+ /** StringAttributeCfg holds the configurable settings to create a string attribute filter sampling policy evaluator. */
2911
+ export type ProcessorTailsamplingprocessorStringAttributeCfg = {
2912
+ /** CacheMaxSize is the maximum number of attribute entries of LRU Cache that stores the matched result from the regular expressions defined in Values. CacheMaxSize will not be used if EnabledRegexMatching is set to false. */
2913
+ cache_max_size?: number;
2914
+ /** EnabledRegexMatching determines whether match attribute values by regexp string. */
2915
+ enabled_regex_matching?: boolean;
2916
+ /** InvertMatch indicates that values or regular expressions must not match against attribute values. If InvertMatch is true and Values is equal to 'acme', all other values will be sampled except 'acme'. Also, if the specified Key does not match on any resource or span attributes, data will be sampled. */
2917
+ invert_match?: boolean;
2918
+ /** Tag that the filter is going to be matching against. */
2919
+ key?: string;
2920
+ /** Values indicate the set of values or regular expressions to use when matching against attribute values. StringAttribute Policy will apply exact value match on Values unless EnabledRegexMatching is true. */
2921
+ values?: Array<string>;
2922
+ };
2923
+
2924
+ /** TraceStateCfg holds the common configuration for trace states. */
2925
+ export type ProcessorTailsamplingprocessorTraceStateCfg = {
2926
+ /** Tag that the filter is going to be matching against. */
2927
+ key?: string;
2928
+ /** Values indicate the set of values to use when matching against trace_state values. */
2929
+ values?: Array<string>;
2930
+ };
2931
+
2932
+ export type ProcessorTransformprocessorInternalCommonContextId = string;
2933
+
2934
+ export type ProcessorTransformprocessorInternalCommonContextStatements = {
2935
+ conditions?: Array<string>;
2936
+ context?: ProcessorTransformprocessorInternalCommonContextId;
2937
+ /** ErrorMode determines how the processor reacts to errors that occur while processing this group of statements. When provided, it overrides the default Config ErrorMode. */
2938
+ error_mode?: PkgOttlErrorMode;
2939
+ /** SharedCache is experimental and subject to change or removal in the future. */
2940
+ shared_cache?: boolean;
2941
+ statements?: Array<string>;
2942
+ };
2943
+
2944
+ /** Config defines the configuration for the processor. */
2945
+ export type ProcessorTransformprocessorSchema = {
2946
+ /** ErrorMode determines how the processor reacts to errors that occur while processing a statement. Valid values are `ignore` and `propagate`. `ignore` means the processor ignores errors returned by statements and continues on to the next statement. This is the recommended mode. `propagate` means the processor returns the error up the pipeline. This will result in the payload being dropped from the collector. The default value is `ignore`. */
2947
+ error_mode?: PkgOttlErrorMode;
2948
+ flatten_data?: boolean;
2949
+ log_statements?: Array<ProcessorTransformprocessorInternalCommonContextStatements>;
2950
+ metric_statements?: Array<ProcessorTransformprocessorInternalCommonContextStatements>;
2951
+ /** ProfileStatements configures the OTTL statements executed against profile data. Experimental: *NOTE* this API is subject to change or removal in the future. */
2952
+ profile_statements?: Array<ProcessorTransformprocessorInternalCommonContextStatements>;
2953
+ trace_statements?: Array<ProcessorTransformprocessorInternalCommonContextStatements>;
2954
+ };
2955
+
2956
+ /** FileLogConfig defines configuration for the file_log receiver */
2957
+ export type ReceiverFilelogreceiverSchema = PkgStanzaOperatorInputFileConfig & PkgStanzaAdapterBaseConfig;
2958
+
2959
+ /** Config defines configuration for HostMetrics receiver. */
2960
+ export type ReceiverHostmetricsreceiverSchema = CollectorScraperScraperhelperControllerConfig & {
2961
+ /** Collection interval for metadata. Metadata of the particular entity is collected when the entity changes. In addition metadata of all entities is collected periodically even if no changes happen. Setting the duration to 0 will disable periodic collection (however will not impact metadata collection on changes). */
2962
+ metadata_collection_interval?: Duration;
2963
+ /** RootPath is the host's root directory (linux only). */
2964
+ root_path?: string;
2965
+ /** Map of scrapers to be run, keyed by scraper type. */
2966
+ scrapers?: {
2967
+ cpu?: unknown;
2968
+ disk?: unknown;
2969
+ filesystem?: unknown;
2970
+ load?: unknown;
2971
+ memory?: unknown;
2972
+ network?: unknown;
2973
+ nfs?: unknown;
2974
+ paging?: unknown;
2975
+ process?: unknown;
2976
+ processes?: unknown;
2977
+ system?: unknown;
2978
+ };
2979
+ };
2980
+
2981
+ /** MetricsBuilderConfig is a configuration for k8s_cluster metrics builder. */
2982
+ export type ReceiverK8sclusterreceiverInternalMetadataMetricsBuilderConfig = {
2983
+ metrics?: ReceiverK8sclusterreceiverInternalMetadataMetricsConfig;
2984
+ resource_attributes?: ReceiverK8sclusterreceiverInternalMetadataResourceAttributesConfig;
2985
+ };
2986
+
2987
+ /** MetricsConfig provides config for k8s_cluster metrics. */
2988
+ export type ReceiverK8sclusterreceiverInternalMetadataMetricsConfig = {
2989
+ /** K8sContainerCPULimitMetricConfig provides config for the k8s.container.cpu_limit metric. */
2990
+ "k8s.container.cpu_limit"?: {
2991
+ enabled?: boolean;
2992
+ };
2993
+ /** K8sContainerCPURequestMetricConfig provides config for the k8s.container.cpu_request metric. */
2994
+ "k8s.container.cpu_request"?: {
2995
+ enabled?: boolean;
2996
+ };
2997
+ /** K8sContainerEphemeralstorageLimitMetricConfig provides config for the k8s.container.ephemeralstorage_limit metric. */
2998
+ "k8s.container.ephemeralstorage_limit"?: {
2999
+ enabled?: boolean;
3000
+ };
3001
+ /** K8sContainerEphemeralstorageRequestMetricConfig provides config for the k8s.container.ephemeralstorage_request metric. */
3002
+ "k8s.container.ephemeralstorage_request"?: {
3003
+ enabled?: boolean;
3004
+ };
3005
+ /** K8sContainerMemoryLimitMetricConfig provides config for the k8s.container.memory_limit metric. */
3006
+ "k8s.container.memory_limit"?: {
3007
+ enabled?: boolean;
3008
+ };
3009
+ /** K8sContainerMemoryRequestMetricConfig provides config for the k8s.container.memory_request metric. */
3010
+ "k8s.container.memory_request"?: {
3011
+ enabled?: boolean;
3012
+ };
3013
+ /** K8sContainerReadyMetricConfig provides config for the k8s.container.ready metric. */
3014
+ "k8s.container.ready"?: {
3015
+ enabled?: boolean;
3016
+ };
3017
+ /** K8sContainerRestartsMetricConfig provides config for the k8s.container.restarts metric. */
3018
+ "k8s.container.restarts"?: {
3019
+ enabled?: boolean;
3020
+ };
3021
+ /** K8sContainerStatusReasonMetricConfig provides config for the k8s.container.status.reason metric. */
3022
+ "k8s.container.status.reason"?: {
3023
+ enabled?: boolean;
3024
+ };
3025
+ /** K8sContainerStatusStateMetricConfig provides config for the k8s.container.status.state metric. */
3026
+ "k8s.container.status.state"?: {
3027
+ enabled?: boolean;
3028
+ };
3029
+ /** K8sContainerStorageLimitMetricConfig provides config for the k8s.container.storage_limit metric. */
3030
+ "k8s.container.storage_limit"?: {
3031
+ enabled?: boolean;
3032
+ };
3033
+ /** K8sContainerStorageRequestMetricConfig provides config for the k8s.container.storage_request metric. */
3034
+ "k8s.container.storage_request"?: {
3035
+ enabled?: boolean;
3036
+ };
3037
+ /** K8sCronjobActiveJobsMetricConfig provides config for the k8s.cronjob.active_jobs metric. */
3038
+ "k8s.cronjob.active_jobs"?: {
3039
+ enabled?: boolean;
3040
+ };
3041
+ /** K8sDaemonsetCurrentScheduledNodesMetricConfig provides config for the k8s.daemonset.current_scheduled_nodes metric. */
3042
+ "k8s.daemonset.current_scheduled_nodes"?: {
3043
+ enabled?: boolean;
3044
+ };
3045
+ /** K8sDaemonsetDesiredScheduledNodesMetricConfig provides config for the k8s.daemonset.desired_scheduled_nodes metric. */
3046
+ "k8s.daemonset.desired_scheduled_nodes"?: {
3047
+ enabled?: boolean;
3048
+ };
3049
+ /** K8sDaemonsetMisscheduledNodesMetricConfig provides config for the k8s.daemonset.misscheduled_nodes metric. */
3050
+ "k8s.daemonset.misscheduled_nodes"?: {
3051
+ enabled?: boolean;
3052
+ };
3053
+ /** K8sDaemonsetReadyNodesMetricConfig provides config for the k8s.daemonset.ready_nodes metric. */
3054
+ "k8s.daemonset.ready_nodes"?: {
3055
+ enabled?: boolean;
3056
+ };
3057
+ /** K8sDeploymentAvailableMetricConfig provides config for the k8s.deployment.available metric. */
3058
+ "k8s.deployment.available"?: {
3059
+ enabled?: boolean;
3060
+ };
3061
+ /** K8sDeploymentDesiredMetricConfig provides config for the k8s.deployment.desired metric. */
3062
+ "k8s.deployment.desired"?: {
3063
+ enabled?: boolean;
3064
+ };
3065
+ /** K8sHpaCurrentReplicasMetricConfig provides config for the k8s.hpa.current_replicas metric. */
3066
+ "k8s.hpa.current_replicas"?: {
3067
+ enabled?: boolean;
3068
+ };
3069
+ /** K8sHpaDesiredReplicasMetricConfig provides config for the k8s.hpa.desired_replicas metric. */
3070
+ "k8s.hpa.desired_replicas"?: {
3071
+ enabled?: boolean;
3072
+ };
3073
+ /** K8sHpaMaxReplicasMetricConfig provides config for the k8s.hpa.max_replicas metric. */
3074
+ "k8s.hpa.max_replicas"?: {
3075
+ enabled?: boolean;
3076
+ };
3077
+ /** K8sHpaMinReplicasMetricConfig provides config for the k8s.hpa.min_replicas metric. */
3078
+ "k8s.hpa.min_replicas"?: {
3079
+ enabled?: boolean;
3080
+ };
3081
+ /** K8sJobActivePodsMetricConfig provides config for the k8s.job.active_pods metric. */
3082
+ "k8s.job.active_pods"?: {
3083
+ enabled?: boolean;
3084
+ };
3085
+ /** K8sJobDesiredSuccessfulPodsMetricConfig provides config for the k8s.job.desired_successful_pods metric. */
3086
+ "k8s.job.desired_successful_pods"?: {
3087
+ enabled?: boolean;
3088
+ };
3089
+ /** K8sJobFailedPodsMetricConfig provides config for the k8s.job.failed_pods metric. */
3090
+ "k8s.job.failed_pods"?: {
3091
+ enabled?: boolean;
3092
+ };
3093
+ /** K8sJobMaxParallelPodsMetricConfig provides config for the k8s.job.max_parallel_pods metric. */
3094
+ "k8s.job.max_parallel_pods"?: {
3095
+ enabled?: boolean;
3096
+ };
3097
+ /** K8sJobSuccessfulPodsMetricConfig provides config for the k8s.job.successful_pods metric. */
3098
+ "k8s.job.successful_pods"?: {
3099
+ enabled?: boolean;
3100
+ };
3101
+ /** K8sNamespacePhaseMetricConfig provides config for the k8s.namespace.phase metric. */
3102
+ "k8s.namespace.phase"?: {
3103
+ enabled?: boolean;
3104
+ };
3105
+ /** K8sNodeConditionMetricConfig provides config for the k8s.node.condition metric. */
3106
+ "k8s.node.condition"?: {
3107
+ enabled?: boolean;
3108
+ };
3109
+ /** K8sPersistentvolumeStatusPhaseMetricConfig provides config for the k8s.persistentvolume.status.phase metric. */
3110
+ "k8s.persistentvolume.status.phase"?: {
3111
+ enabled?: boolean;
3112
+ };
3113
+ /** K8sPersistentvolumeStorageCapacityMetricConfig provides config for the k8s.persistentvolume.storage.capacity metric. */
3114
+ "k8s.persistentvolume.storage.capacity"?: {
3115
+ enabled?: boolean;
3116
+ };
3117
+ /** K8sPersistentvolumeclaimStatusPhaseMetricConfig provides config for the k8s.persistentvolumeclaim.status.phase metric. */
3118
+ "k8s.persistentvolumeclaim.status.phase"?: {
3119
+ enabled?: boolean;
3120
+ };
3121
+ /** K8sPersistentvolumeclaimStorageCapacityMetricConfig provides config for the k8s.persistentvolumeclaim.storage.capacity metric. */
3122
+ "k8s.persistentvolumeclaim.storage.capacity"?: {
3123
+ enabled?: boolean;
3124
+ };
3125
+ /** K8sPersistentvolumeclaimStorageRequestMetricConfig provides config for the k8s.persistentvolumeclaim.storage.request metric. */
3126
+ "k8s.persistentvolumeclaim.storage.request"?: {
3127
+ enabled?: boolean;
3128
+ };
3129
+ /** K8sPodPhaseMetricConfig provides config for the k8s.pod.phase metric. */
3130
+ "k8s.pod.phase"?: {
3131
+ enabled?: boolean;
3132
+ };
3133
+ /** K8sPodStatusReasonMetricConfig provides config for the k8s.pod.status_reason metric. */
3134
+ "k8s.pod.status_reason"?: {
3135
+ enabled?: boolean;
3136
+ };
3137
+ /** K8sReplicasetAvailableMetricConfig provides config for the k8s.replicaset.available metric. */
3138
+ "k8s.replicaset.available"?: {
3139
+ enabled?: boolean;
3140
+ };
3141
+ /** K8sReplicasetDesiredMetricConfig provides config for the k8s.replicaset.desired metric. */
3142
+ "k8s.replicaset.desired"?: {
3143
+ enabled?: boolean;
3144
+ };
3145
+ /** K8sReplicationControllerAvailableMetricConfig provides config for the k8s.replication_controller.available metric. */
3146
+ "k8s.replication_controller.available"?: {
3147
+ enabled?: boolean;
3148
+ };
3149
+ /** K8sReplicationControllerDesiredMetricConfig provides config for the k8s.replication_controller.desired metric. */
3150
+ "k8s.replication_controller.desired"?: {
3151
+ enabled?: boolean;
3152
+ };
3153
+ /** K8sResourceQuotaHardLimitMetricConfig provides config for the k8s.resource_quota.hard_limit metric. */
3154
+ "k8s.resource_quota.hard_limit"?: {
3155
+ enabled?: boolean;
3156
+ };
3157
+ /** K8sResourceQuotaUsedMetricConfig provides config for the k8s.resource_quota.used metric. */
3158
+ "k8s.resource_quota.used"?: {
3159
+ enabled?: boolean;
3160
+ };
3161
+ /** K8sServiceEndpointCountMetricConfig provides config for the k8s.service.endpoint.count metric. */
3162
+ "k8s.service.endpoint.count"?: {
3163
+ aggregation_strategy?: "sum" | "avg" | "min" | "max";
3164
+ attributes?: Array<"k8s.service.endpoint.address_type" | "k8s.service.endpoint.condition" | "k8s.service.endpoint.zone">;
3165
+ enabled?: boolean;
3166
+ };
3167
+ /** K8sServiceLoadBalancerIngressCountMetricConfig provides config for the k8s.service.load_balancer.ingress.count metric. */
3168
+ "k8s.service.load_balancer.ingress.count"?: {
3169
+ enabled?: boolean;
3170
+ };
3171
+ /** K8sStatefulsetCurrentPodsMetricConfig provides config for the k8s.statefulset.current_pods metric. */
3172
+ "k8s.statefulset.current_pods"?: {
3173
+ enabled?: boolean;
3174
+ };
3175
+ /** K8sStatefulsetDesiredPodsMetricConfig provides config for the k8s.statefulset.desired_pods metric. */
3176
+ "k8s.statefulset.desired_pods"?: {
3177
+ enabled?: boolean;
3178
+ };
3179
+ /** K8sStatefulsetReadyPodsMetricConfig provides config for the k8s.statefulset.ready_pods metric. */
3180
+ "k8s.statefulset.ready_pods"?: {
3181
+ enabled?: boolean;
3182
+ };
3183
+ /** K8sStatefulsetUpdatedPodsMetricConfig provides config for the k8s.statefulset.updated_pods metric. */
3184
+ "k8s.statefulset.updated_pods"?: {
3185
+ enabled?: boolean;
3186
+ };
3187
+ /** OpenshiftAppliedclusterquotaLimitMetricConfig provides config for the openshift.appliedclusterquota.limit metric. */
3188
+ "openshift.appliedclusterquota.limit"?: {
3189
+ aggregation_strategy?: "sum" | "avg" | "min" | "max";
3190
+ attributes?: Array<"k8s.namespace.name" | "resource">;
3191
+ enabled?: boolean;
3192
+ };
3193
+ /** OpenshiftAppliedclusterquotaUsedMetricConfig provides config for the openshift.appliedclusterquota.used metric. */
3194
+ "openshift.appliedclusterquota.used"?: {
3195
+ aggregation_strategy?: "sum" | "avg" | "min" | "max";
3196
+ attributes?: Array<"k8s.namespace.name" | "resource">;
3197
+ enabled?: boolean;
3198
+ };
3199
+ /** OpenshiftClusterquotaLimitMetricConfig provides config for the openshift.clusterquota.limit metric. */
3200
+ "openshift.clusterquota.limit"?: {
3201
+ enabled?: boolean;
3202
+ };
3203
+ /** OpenshiftClusterquotaUsedMetricConfig provides config for the openshift.clusterquota.used metric. */
3204
+ "openshift.clusterquota.used"?: {
3205
+ enabled?: boolean;
3206
+ };
3207
+ };
3208
+
3209
+ /** ResourceAttributesConfig provides config for k8s_cluster resource attributes. */
3210
+ export type ReceiverK8sclusterreceiverInternalMetadataResourceAttributesConfig = {
3211
+ /** ResourceAttributeConfig provides common config for a container.id resource attribute. */
3212
+ "container.id"?: {
3213
+ enabled?: boolean;
3214
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3215
+ metrics_exclude?: Array<CollectorFilterConfig>;
3216
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3217
+ metrics_include?: Array<CollectorFilterConfig>;
3218
+ };
3219
+ /** ResourceAttributeConfig provides common config for a container.image.name resource attribute. */
3220
+ "container.image.name"?: {
3221
+ enabled?: boolean;
3222
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3223
+ metrics_exclude?: Array<CollectorFilterConfig>;
3224
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3225
+ metrics_include?: Array<CollectorFilterConfig>;
3226
+ };
3227
+ /** ResourceAttributeConfig provides common config for a container.image.tag resource attribute. */
3228
+ "container.image.tag"?: {
3229
+ enabled?: boolean;
3230
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3231
+ metrics_exclude?: Array<CollectorFilterConfig>;
3232
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3233
+ metrics_include?: Array<CollectorFilterConfig>;
3234
+ };
3235
+ /** ResourceAttributeConfig provides common config for a container.runtime resource attribute. */
3236
+ "container.runtime"?: {
3237
+ enabled?: boolean;
3238
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3239
+ metrics_exclude?: Array<CollectorFilterConfig>;
3240
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3241
+ metrics_include?: Array<CollectorFilterConfig>;
3242
+ };
3243
+ /** ResourceAttributeConfig provides common config for a container.runtime.version resource attribute. */
3244
+ "container.runtime.version"?: {
3245
+ enabled?: boolean;
3246
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3247
+ metrics_exclude?: Array<CollectorFilterConfig>;
3248
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3249
+ metrics_include?: Array<CollectorFilterConfig>;
3250
+ };
3251
+ /** ResourceAttributeConfig provides common config for a k8s.container.name resource attribute. */
3252
+ "k8s.container.name"?: {
3253
+ enabled?: boolean;
3254
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3255
+ metrics_exclude?: Array<CollectorFilterConfig>;
3256
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3257
+ metrics_include?: Array<CollectorFilterConfig>;
3258
+ };
3259
+ /** ResourceAttributeConfig provides common config for a k8s.container.status.last_terminated_reason resource attribute. */
3260
+ "k8s.container.status.last_terminated_reason"?: {
3261
+ enabled?: boolean;
3262
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3263
+ metrics_exclude?: Array<CollectorFilterConfig>;
3264
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3265
+ metrics_include?: Array<CollectorFilterConfig>;
3266
+ };
3267
+ /** ResourceAttributeConfig provides common config for a k8s.cronjob.name resource attribute. */
3268
+ "k8s.cronjob.name"?: {
3269
+ enabled?: boolean;
3270
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3271
+ metrics_exclude?: Array<CollectorFilterConfig>;
3272
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3273
+ metrics_include?: Array<CollectorFilterConfig>;
3274
+ };
3275
+ /** ResourceAttributeConfig provides common config for a k8s.cronjob.uid resource attribute. */
3276
+ "k8s.cronjob.uid"?: {
3277
+ enabled?: boolean;
3278
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3279
+ metrics_exclude?: Array<CollectorFilterConfig>;
3280
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3281
+ metrics_include?: Array<CollectorFilterConfig>;
3282
+ };
3283
+ /** ResourceAttributeConfig provides common config for a k8s.daemonset.name resource attribute. */
3284
+ "k8s.daemonset.name"?: {
3285
+ enabled?: boolean;
3286
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3287
+ metrics_exclude?: Array<CollectorFilterConfig>;
3288
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3289
+ metrics_include?: Array<CollectorFilterConfig>;
3290
+ };
3291
+ /** ResourceAttributeConfig provides common config for a k8s.daemonset.uid resource attribute. */
3292
+ "k8s.daemonset.uid"?: {
3293
+ enabled?: boolean;
3294
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3295
+ metrics_exclude?: Array<CollectorFilterConfig>;
3296
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3297
+ metrics_include?: Array<CollectorFilterConfig>;
3298
+ };
3299
+ /** ResourceAttributeConfig provides common config for a k8s.deployment.name resource attribute. */
3300
+ "k8s.deployment.name"?: {
3301
+ enabled?: boolean;
3302
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3303
+ metrics_exclude?: Array<CollectorFilterConfig>;
3304
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3305
+ metrics_include?: Array<CollectorFilterConfig>;
3306
+ };
3307
+ /** ResourceAttributeConfig provides common config for a k8s.deployment.uid resource attribute. */
3308
+ "k8s.deployment.uid"?: {
3309
+ enabled?: boolean;
3310
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3311
+ metrics_exclude?: Array<CollectorFilterConfig>;
3312
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3313
+ metrics_include?: Array<CollectorFilterConfig>;
3314
+ };
3315
+ /** ResourceAttributeConfig provides common config for a k8s.hpa.name resource attribute. */
3316
+ "k8s.hpa.name"?: {
3317
+ enabled?: boolean;
3318
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3319
+ metrics_exclude?: Array<CollectorFilterConfig>;
3320
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3321
+ metrics_include?: Array<CollectorFilterConfig>;
3322
+ };
3323
+ /** ResourceAttributeConfig provides common config for a k8s.hpa.scaletargetref.apiversion resource attribute. */
3324
+ "k8s.hpa.scaletargetref.apiversion"?: {
3325
+ enabled?: boolean;
3326
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3327
+ metrics_exclude?: Array<CollectorFilterConfig>;
3328
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3329
+ metrics_include?: Array<CollectorFilterConfig>;
3330
+ };
3331
+ /** ResourceAttributeConfig provides common config for a k8s.hpa.scaletargetref.kind resource attribute. */
3332
+ "k8s.hpa.scaletargetref.kind"?: {
3333
+ enabled?: boolean;
3334
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3335
+ metrics_exclude?: Array<CollectorFilterConfig>;
3336
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3337
+ metrics_include?: Array<CollectorFilterConfig>;
3338
+ };
3339
+ /** ResourceAttributeConfig provides common config for a k8s.hpa.scaletargetref.name resource attribute. */
3340
+ "k8s.hpa.scaletargetref.name"?: {
3341
+ enabled?: boolean;
3342
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3343
+ metrics_exclude?: Array<CollectorFilterConfig>;
3344
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3345
+ metrics_include?: Array<CollectorFilterConfig>;
3346
+ };
3347
+ /** ResourceAttributeConfig provides common config for a k8s.hpa.uid resource attribute. */
3348
+ "k8s.hpa.uid"?: {
3349
+ enabled?: boolean;
3350
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3351
+ metrics_exclude?: Array<CollectorFilterConfig>;
3352
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3353
+ metrics_include?: Array<CollectorFilterConfig>;
3354
+ };
3355
+ /** ResourceAttributeConfig provides common config for a k8s.job.name resource attribute. */
3356
+ "k8s.job.name"?: {
3357
+ enabled?: boolean;
3358
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3359
+ metrics_exclude?: Array<CollectorFilterConfig>;
3360
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3361
+ metrics_include?: Array<CollectorFilterConfig>;
3362
+ };
3363
+ /** ResourceAttributeConfig provides common config for a k8s.job.uid resource attribute. */
3364
+ "k8s.job.uid"?: {
3365
+ enabled?: boolean;
3366
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3367
+ metrics_exclude?: Array<CollectorFilterConfig>;
3368
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3369
+ metrics_include?: Array<CollectorFilterConfig>;
3370
+ };
3371
+ /** ResourceAttributeConfig provides common config for a k8s.kubelet.version resource attribute. */
3372
+ "k8s.kubelet.version"?: {
3373
+ enabled?: boolean;
3374
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3375
+ metrics_exclude?: Array<CollectorFilterConfig>;
3376
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3377
+ metrics_include?: Array<CollectorFilterConfig>;
3378
+ };
3379
+ /** ResourceAttributeConfig provides common config for a k8s.namespace.name resource attribute. */
3380
+ "k8s.namespace.name"?: {
3381
+ enabled?: boolean;
3382
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3383
+ metrics_exclude?: Array<CollectorFilterConfig>;
3384
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3385
+ metrics_include?: Array<CollectorFilterConfig>;
3386
+ };
3387
+ /** ResourceAttributeConfig provides common config for a k8s.namespace.uid resource attribute. */
3388
+ "k8s.namespace.uid"?: {
3389
+ enabled?: boolean;
3390
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3391
+ metrics_exclude?: Array<CollectorFilterConfig>;
3392
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3393
+ metrics_include?: Array<CollectorFilterConfig>;
3394
+ };
3395
+ /** ResourceAttributeConfig provides common config for a k8s.node.name resource attribute. */
3396
+ "k8s.node.name"?: {
3397
+ enabled?: boolean;
3398
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3399
+ metrics_exclude?: Array<CollectorFilterConfig>;
3400
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3401
+ metrics_include?: Array<CollectorFilterConfig>;
3402
+ };
3403
+ /** ResourceAttributeConfig provides common config for a k8s.node.uid resource attribute. */
3404
+ "k8s.node.uid"?: {
3405
+ enabled?: boolean;
3406
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3407
+ metrics_exclude?: Array<CollectorFilterConfig>;
3408
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3409
+ metrics_include?: Array<CollectorFilterConfig>;
3410
+ };
3411
+ /** ResourceAttributeConfig provides common config for a k8s.persistentvolume.name resource attribute. */
3412
+ "k8s.persistentvolume.name"?: {
3413
+ enabled?: boolean;
3414
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3415
+ metrics_exclude?: Array<CollectorFilterConfig>;
3416
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3417
+ metrics_include?: Array<CollectorFilterConfig>;
3418
+ };
3419
+ /** ResourceAttributeConfig provides common config for a k8s.persistentvolume.reclaim_policy resource attribute. */
3420
+ "k8s.persistentvolume.reclaim_policy"?: {
3421
+ enabled?: boolean;
3422
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3423
+ metrics_exclude?: Array<CollectorFilterConfig>;
3424
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3425
+ metrics_include?: Array<CollectorFilterConfig>;
3426
+ };
3427
+ /** ResourceAttributeConfig provides common config for a k8s.persistentvolume.uid resource attribute. */
3428
+ "k8s.persistentvolume.uid"?: {
3429
+ enabled?: boolean;
3430
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3431
+ metrics_exclude?: Array<CollectorFilterConfig>;
3432
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3433
+ metrics_include?: Array<CollectorFilterConfig>;
3434
+ };
3435
+ /** ResourceAttributeConfig provides common config for a k8s.persistentvolumeclaim.name resource attribute. */
3436
+ "k8s.persistentvolumeclaim.name"?: {
3437
+ enabled?: boolean;
3438
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3439
+ metrics_exclude?: Array<CollectorFilterConfig>;
3440
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3441
+ metrics_include?: Array<CollectorFilterConfig>;
3442
+ };
3443
+ /** ResourceAttributeConfig provides common config for a k8s.persistentvolumeclaim.uid resource attribute. */
3444
+ "k8s.persistentvolumeclaim.uid"?: {
3445
+ enabled?: boolean;
3446
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3447
+ metrics_exclude?: Array<CollectorFilterConfig>;
3448
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3449
+ metrics_include?: Array<CollectorFilterConfig>;
3450
+ };
3451
+ /** ResourceAttributeConfig provides common config for a k8s.pod.name resource attribute. */
3452
+ "k8s.pod.name"?: {
3453
+ enabled?: boolean;
3454
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3455
+ metrics_exclude?: Array<CollectorFilterConfig>;
3456
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3457
+ metrics_include?: Array<CollectorFilterConfig>;
3458
+ };
3459
+ /** ResourceAttributeConfig provides common config for a k8s.pod.qos_class resource attribute. */
3460
+ "k8s.pod.qos_class"?: {
3461
+ enabled?: boolean;
3462
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3463
+ metrics_exclude?: Array<CollectorFilterConfig>;
3464
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3465
+ metrics_include?: Array<CollectorFilterConfig>;
3466
+ };
3467
+ /** ResourceAttributeConfig provides common config for a k8s.pod.uid resource attribute. */
3468
+ "k8s.pod.uid"?: {
3469
+ enabled?: boolean;
3470
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3471
+ metrics_exclude?: Array<CollectorFilterConfig>;
3472
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3473
+ metrics_include?: Array<CollectorFilterConfig>;
3474
+ };
3475
+ /** ResourceAttributeConfig provides common config for a k8s.replicaset.name resource attribute. */
3476
+ "k8s.replicaset.name"?: {
3477
+ enabled?: boolean;
3478
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3479
+ metrics_exclude?: Array<CollectorFilterConfig>;
3480
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3481
+ metrics_include?: Array<CollectorFilterConfig>;
3482
+ };
3483
+ /** ResourceAttributeConfig provides common config for a k8s.replicaset.uid resource attribute. */
3484
+ "k8s.replicaset.uid"?: {
3485
+ enabled?: boolean;
3486
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3487
+ metrics_exclude?: Array<CollectorFilterConfig>;
3488
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3489
+ metrics_include?: Array<CollectorFilterConfig>;
3490
+ };
3491
+ /** ResourceAttributeConfig provides common config for a k8s.replicationcontroller.name resource attribute. */
3492
+ "k8s.replicationcontroller.name"?: {
3493
+ enabled?: boolean;
3494
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3495
+ metrics_exclude?: Array<CollectorFilterConfig>;
3496
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3497
+ metrics_include?: Array<CollectorFilterConfig>;
3498
+ };
3499
+ /** ResourceAttributeConfig provides common config for a k8s.replicationcontroller.uid resource attribute. */
3500
+ "k8s.replicationcontroller.uid"?: {
3501
+ enabled?: boolean;
3502
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3503
+ metrics_exclude?: Array<CollectorFilterConfig>;
3504
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3505
+ metrics_include?: Array<CollectorFilterConfig>;
3506
+ };
3507
+ /** ResourceAttributeConfig provides common config for a k8s.resourcequota.name resource attribute. */
3508
+ "k8s.resourcequota.name"?: {
3509
+ enabled?: boolean;
3510
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3511
+ metrics_exclude?: Array<CollectorFilterConfig>;
3512
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3513
+ metrics_include?: Array<CollectorFilterConfig>;
3514
+ };
3515
+ /** ResourceAttributeConfig provides common config for a k8s.resourcequota.uid resource attribute. */
3516
+ "k8s.resourcequota.uid"?: {
3517
+ enabled?: boolean;
3518
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3519
+ metrics_exclude?: Array<CollectorFilterConfig>;
3520
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3521
+ metrics_include?: Array<CollectorFilterConfig>;
3522
+ };
3523
+ /** ResourceAttributeConfig provides common config for a k8s.service.name resource attribute. */
3524
+ "k8s.service.name"?: {
3525
+ enabled?: boolean;
3526
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3527
+ metrics_exclude?: Array<CollectorFilterConfig>;
3528
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3529
+ metrics_include?: Array<CollectorFilterConfig>;
3530
+ };
3531
+ /** ResourceAttributeConfig provides common config for a k8s.service.publish_not_ready_addresses resource attribute. */
3532
+ "k8s.service.publish_not_ready_addresses"?: {
3533
+ enabled?: boolean;
3534
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3535
+ metrics_exclude?: Array<CollectorFilterConfig>;
3536
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3537
+ metrics_include?: Array<CollectorFilterConfig>;
3538
+ };
3539
+ /** ResourceAttributeConfig provides common config for a k8s.service.traffic_distribution resource attribute. */
3540
+ "k8s.service.traffic_distribution"?: {
3541
+ enabled?: boolean;
3542
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3543
+ metrics_exclude?: Array<CollectorFilterConfig>;
3544
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3545
+ metrics_include?: Array<CollectorFilterConfig>;
3546
+ };
3547
+ /** ResourceAttributeConfig provides common config for a k8s.service.type resource attribute. */
3548
+ "k8s.service.type"?: {
3549
+ enabled?: boolean;
3550
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3551
+ metrics_exclude?: Array<CollectorFilterConfig>;
3552
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3553
+ metrics_include?: Array<CollectorFilterConfig>;
3554
+ };
3555
+ /** ResourceAttributeConfig provides common config for a k8s.service.uid resource attribute. */
3556
+ "k8s.service.uid"?: {
3557
+ enabled?: boolean;
3558
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3559
+ metrics_exclude?: Array<CollectorFilterConfig>;
3560
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3561
+ metrics_include?: Array<CollectorFilterConfig>;
3562
+ };
3563
+ /** ResourceAttributeConfig provides common config for a k8s.statefulset.name resource attribute. */
3564
+ "k8s.statefulset.name"?: {
3565
+ enabled?: boolean;
3566
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3567
+ metrics_exclude?: Array<CollectorFilterConfig>;
3568
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3569
+ metrics_include?: Array<CollectorFilterConfig>;
3570
+ };
3571
+ /** ResourceAttributeConfig provides common config for a k8s.statefulset.uid resource attribute. */
3572
+ "k8s.statefulset.uid"?: {
3573
+ enabled?: boolean;
3574
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3575
+ metrics_exclude?: Array<CollectorFilterConfig>;
3576
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3577
+ metrics_include?: Array<CollectorFilterConfig>;
3578
+ };
3579
+ /** ResourceAttributeConfig provides common config for a k8s.storageclass.name resource attribute. */
3580
+ "k8s.storageclass.name"?: {
3581
+ enabled?: boolean;
3582
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3583
+ metrics_exclude?: Array<CollectorFilterConfig>;
3584
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3585
+ metrics_include?: Array<CollectorFilterConfig>;
3586
+ };
3587
+ /** ResourceAttributeConfig provides common config for a openshift.clusterquota.name resource attribute. */
3588
+ "openshift.clusterquota.name"?: {
3589
+ enabled?: boolean;
3590
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3591
+ metrics_exclude?: Array<CollectorFilterConfig>;
3592
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3593
+ metrics_include?: Array<CollectorFilterConfig>;
3594
+ };
3595
+ /** ResourceAttributeConfig provides common config for a openshift.clusterquota.uid resource attribute. */
3596
+ "openshift.clusterquota.uid"?: {
3597
+ enabled?: boolean;
3598
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3599
+ metrics_exclude?: Array<CollectorFilterConfig>;
3600
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3601
+ metrics_include?: Array<CollectorFilterConfig>;
3602
+ };
3603
+ /** ResourceAttributeConfig provides common config for a os.description resource attribute. */
3604
+ "os.description"?: {
3605
+ enabled?: boolean;
3606
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3607
+ metrics_exclude?: Array<CollectorFilterConfig>;
3608
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3609
+ metrics_include?: Array<CollectorFilterConfig>;
3610
+ };
3611
+ /** ResourceAttributeConfig provides common config for a os.type resource attribute. */
3612
+ "os.type"?: {
3613
+ enabled?: boolean;
3614
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3615
+ metrics_exclude?: Array<CollectorFilterConfig>;
3616
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3617
+ metrics_include?: Array<CollectorFilterConfig>;
3618
+ };
3619
+ };
3620
+
3621
+ /** Config defines configuration for kubernetes cluster receiver. */
3622
+ export type ReceiverK8sclusterreceiverSchema = InternalK8sconfigApiConfig & ReceiverK8sclusterreceiverInternalMetadataMetricsBuilderConfig & {
3623
+ /** Allocate resource types to report. See all resource types, see here: https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/#node-allocatable */
3624
+ allocatable_types_to_report?: Array<string>;
3625
+ /** Collection interval for metrics. */
3626
+ collection_interval?: Duration;
3627
+ /** Whether OpenShift support should be enabled or not. */
3628
+ distribution?: string;
3629
+ /** K8sLeaderElector defines the reference to the k8s leader elector extension use this when k8s cluster receiver needs to be deployed in HA mode */
3630
+ k8s_leader_elector?: string;
3631
+ /** Collection interval for metadata. Metadata of the particular entity in the cluster is collected when the entity changes. In addition metadata of all entities is collected periodically even if no changes happen. Setting the duration to 0 will disable periodic collection (however will not impact metadata collection on changes). */
3632
+ metadata_collection_interval?: Duration;
3633
+ /** List of exporters to which metadata from this receiver should be forwarded to. */
3634
+ metadata_exporters?: Array<string>;
3635
+ /**
3636
+ * Deprecated: This field is no longer supported, use cfg.Namespaces instead.
3637
+ * @deprecated
3638
+ */
3639
+ namespace?: string;
3640
+ /** Namespaces to fetch resources from. If this is set, certain cluster-wide resources such as Nodes or Namespaces will not be able to be observed. Setting this option is recommended in environments where due to security restrictions the collector cannot be granted cluster-wide permissions. */
3641
+ namespaces?: Array<string>;
3642
+ /** Node condition types to report. See all condition types, see here: https://kubernetes.io/docs/concepts/architecture/nodes/#condition. */
3643
+ node_conditions_to_report?: Array<string>;
3644
+ };
3645
+
3646
+ export type ReceiverKubeletstatsreceiverInternalKubeletMetadataLabel = string;
3647
+
3648
+ export type ReceiverKubeletstatsreceiverInternalKubeletMetricGroup = string;
3649
+
3650
+ /** MetricsBuilderConfig is a configuration for kubelet_stats metrics builder. */
3651
+ export type ReceiverKubeletstatsreceiverInternalMetadataMetricsBuilderConfig = {
3652
+ metrics?: ReceiverKubeletstatsreceiverInternalMetadataMetricsConfig;
3653
+ resource_attributes?: ReceiverKubeletstatsreceiverInternalMetadataResourceAttributesConfig;
3654
+ };
3655
+
3656
+ /** MetricsConfig provides config for kubelet_stats metrics. */
3657
+ export type ReceiverKubeletstatsreceiverInternalMetadataMetricsConfig = {
3658
+ /** ContainerCPUTimeMetricConfig provides config for the container.cpu.time metric. */
3659
+ "container.cpu.time"?: {
3660
+ enabled?: boolean;
3661
+ };
3662
+ /** ContainerCPUUsageMetricConfig provides config for the container.cpu.usage metric. */
3663
+ "container.cpu.usage"?: {
3664
+ enabled?: boolean;
3665
+ };
3666
+ /** ContainerFilesystemAvailableMetricConfig provides config for the container.filesystem.available metric. */
3667
+ "container.filesystem.available"?: {
3668
+ enabled?: boolean;
3669
+ };
3670
+ /** ContainerFilesystemCapacityMetricConfig provides config for the container.filesystem.capacity metric. */
3671
+ "container.filesystem.capacity"?: {
3672
+ enabled?: boolean;
3673
+ };
3674
+ /** ContainerFilesystemUsageMetricConfig provides config for the container.filesystem.usage metric. */
3675
+ "container.filesystem.usage"?: {
3676
+ enabled?: boolean;
3677
+ };
3678
+ /** ContainerMemoryAvailableMetricConfig provides config for the container.memory.available metric. */
3679
+ "container.memory.available"?: {
3680
+ enabled?: boolean;
3681
+ };
3682
+ /** ContainerMemoryMajorPageFaultsMetricConfig provides config for the container.memory.major_page_faults metric. */
3683
+ "container.memory.major_page_faults"?: {
3684
+ enabled?: boolean;
3685
+ };
3686
+ /** ContainerMemoryPageFaultsMetricConfig provides config for the container.memory.page_faults metric. */
3687
+ "container.memory.page_faults"?: {
3688
+ enabled?: boolean;
3689
+ };
3690
+ /** ContainerMemoryRssMetricConfig provides config for the container.memory.rss metric. */
3691
+ "container.memory.rss"?: {
3692
+ enabled?: boolean;
3693
+ };
3694
+ /** ContainerMemoryUsageMetricConfig provides config for the container.memory.usage metric. */
3695
+ "container.memory.usage"?: {
3696
+ enabled?: boolean;
3697
+ };
3698
+ /** ContainerMemoryWorkingSetMetricConfig provides config for the container.memory.working_set metric. */
3699
+ "container.memory.working_set"?: {
3700
+ enabled?: boolean;
3701
+ };
3702
+ /** ContainerUptimeMetricConfig provides config for the container.uptime metric. */
3703
+ "container.uptime"?: {
3704
+ enabled?: boolean;
3705
+ };
3706
+ /** K8sContainerCPUNodeUtilizationMetricConfig provides config for the k8s.container.cpu.node.utilization metric. */
3707
+ "k8s.container.cpu.node.utilization"?: {
3708
+ enabled?: boolean;
3709
+ };
3710
+ /** K8sContainerCPULimitUtilizationMetricConfig provides config for the k8s.container.cpu_limit_utilization metric. */
3711
+ "k8s.container.cpu_limit_utilization"?: {
3712
+ enabled?: boolean;
3713
+ };
3714
+ /** K8sContainerCPURequestUtilizationMetricConfig provides config for the k8s.container.cpu_request_utilization metric. */
3715
+ "k8s.container.cpu_request_utilization"?: {
3716
+ enabled?: boolean;
3717
+ };
3718
+ /** K8sContainerEphemeralStorageUsageMetricConfig provides config for the k8s.container.ephemeral_storage.usage metric. */
3719
+ "k8s.container.ephemeral_storage.usage"?: {
3720
+ aggregation_strategy?: "sum" | "avg" | "min" | "max";
3721
+ attributes?: Array<"fs.type">;
3722
+ enabled?: boolean;
3723
+ };
3724
+ /** K8sContainerMemoryNodeUtilizationMetricConfig provides config for the k8s.container.memory.node.utilization metric. */
3725
+ "k8s.container.memory.node.utilization"?: {
3726
+ enabled?: boolean;
3727
+ };
3728
+ /** K8sContainerMemoryLimitUtilizationMetricConfig provides config for the k8s.container.memory_limit_utilization metric. */
3729
+ "k8s.container.memory_limit_utilization"?: {
3730
+ enabled?: boolean;
3731
+ };
3732
+ /** K8sContainerMemoryRequestUtilizationMetricConfig provides config for the k8s.container.memory_request_utilization metric. */
3733
+ "k8s.container.memory_request_utilization"?: {
3734
+ enabled?: boolean;
3735
+ };
3736
+ /** K8sNodeCPUTimeMetricConfig provides config for the k8s.node.cpu.time metric. */
3737
+ "k8s.node.cpu.time"?: {
3738
+ enabled?: boolean;
3739
+ };
3740
+ /** K8sNodeCPUUsageMetricConfig provides config for the k8s.node.cpu.usage metric. */
3741
+ "k8s.node.cpu.usage"?: {
3742
+ enabled?: boolean;
3743
+ };
3744
+ /** K8sNodeFilesystemAvailableMetricConfig provides config for the k8s.node.filesystem.available metric. */
3745
+ "k8s.node.filesystem.available"?: {
3746
+ enabled?: boolean;
3747
+ };
3748
+ /** K8sNodeFilesystemCapacityMetricConfig provides config for the k8s.node.filesystem.capacity metric. */
3749
+ "k8s.node.filesystem.capacity"?: {
3750
+ enabled?: boolean;
3751
+ };
3752
+ /** K8sNodeFilesystemUsageMetricConfig provides config for the k8s.node.filesystem.usage metric. */
3753
+ "k8s.node.filesystem.usage"?: {
3754
+ enabled?: boolean;
3755
+ };
3756
+ /** K8sNodeMemoryAvailableMetricConfig provides config for the k8s.node.memory.available metric. */
3757
+ "k8s.node.memory.available"?: {
3758
+ enabled?: boolean;
3759
+ };
3760
+ /** K8sNodeMemoryMajorPageFaultsMetricConfig provides config for the k8s.node.memory.major_page_faults metric. */
3761
+ "k8s.node.memory.major_page_faults"?: {
3762
+ enabled?: boolean;
3763
+ };
3764
+ /** K8sNodeMemoryPageFaultsMetricConfig provides config for the k8s.node.memory.page_faults metric. */
3765
+ "k8s.node.memory.page_faults"?: {
3766
+ enabled?: boolean;
3767
+ };
3768
+ /** K8sNodeMemoryRssMetricConfig provides config for the k8s.node.memory.rss metric. */
3769
+ "k8s.node.memory.rss"?: {
3770
+ enabled?: boolean;
3771
+ };
3772
+ /** K8sNodeMemoryUsageMetricConfig provides config for the k8s.node.memory.usage metric. */
3773
+ "k8s.node.memory.usage"?: {
3774
+ enabled?: boolean;
3775
+ };
3776
+ /** K8sNodeMemoryWorkingSetMetricConfig provides config for the k8s.node.memory.working_set metric. */
3777
+ "k8s.node.memory.working_set"?: {
3778
+ enabled?: boolean;
3779
+ };
3780
+ /** K8sNodeNetworkErrorsMetricConfig provides config for the k8s.node.network.errors metric. */
3781
+ "k8s.node.network.errors"?: {
3782
+ aggregation_strategy?: "sum" | "avg" | "min" | "max";
3783
+ attributes?: Array<"interface" | "direction">;
3784
+ enabled?: boolean;
3785
+ };
3786
+ /** K8sNodeNetworkIoMetricConfig provides config for the k8s.node.network.io metric. */
3787
+ "k8s.node.network.io"?: {
3788
+ aggregation_strategy?: "sum" | "avg" | "min" | "max";
3789
+ attributes?: Array<"interface" | "direction">;
3790
+ enabled?: boolean;
3791
+ };
3792
+ /** K8sNodeSystemContainerCPUTimeMetricConfig provides config for the k8s.node.system_container.cpu.time metric. */
3793
+ "k8s.node.system_container.cpu.time"?: {
3794
+ enabled?: boolean;
3795
+ };
3796
+ /** K8sNodeSystemContainerCPUUsageMetricConfig provides config for the k8s.node.system_container.cpu.usage metric. */
3797
+ "k8s.node.system_container.cpu.usage"?: {
3798
+ enabled?: boolean;
3799
+ };
3800
+ /** K8sNodeSystemContainerMemoryUsageMetricConfig provides config for the k8s.node.system_container.memory.usage metric. */
3801
+ "k8s.node.system_container.memory.usage"?: {
3802
+ enabled?: boolean;
3803
+ };
3804
+ /** K8sNodeSystemContainerMemoryWorkingSetMetricConfig provides config for the k8s.node.system_container.memory.working_set metric. */
3805
+ "k8s.node.system_container.memory.working_set"?: {
3806
+ enabled?: boolean;
3807
+ };
3808
+ /** K8sNodeUptimeMetricConfig provides config for the k8s.node.uptime metric. */
3809
+ "k8s.node.uptime"?: {
3810
+ enabled?: boolean;
3811
+ };
3812
+ /** K8sPodCPUNodeUtilizationMetricConfig provides config for the k8s.pod.cpu.node.utilization metric. */
3813
+ "k8s.pod.cpu.node.utilization"?: {
3814
+ enabled?: boolean;
3815
+ };
3816
+ /** K8sPodCPUTimeMetricConfig provides config for the k8s.pod.cpu.time metric. */
3817
+ "k8s.pod.cpu.time"?: {
3818
+ enabled?: boolean;
3819
+ };
3820
+ /** K8sPodCPUUsageMetricConfig provides config for the k8s.pod.cpu.usage metric. */
3821
+ "k8s.pod.cpu.usage"?: {
3822
+ enabled?: boolean;
3823
+ };
3824
+ /** K8sPodCPULimitUtilizationMetricConfig provides config for the k8s.pod.cpu_limit_utilization metric. */
3825
+ "k8s.pod.cpu_limit_utilization"?: {
3826
+ enabled?: boolean;
3827
+ };
3828
+ /** K8sPodCPURequestUtilizationMetricConfig provides config for the k8s.pod.cpu_request_utilization metric. */
3829
+ "k8s.pod.cpu_request_utilization"?: {
3830
+ enabled?: boolean;
3831
+ };
3832
+ /** K8sPodFilesystemAvailableMetricConfig provides config for the k8s.pod.filesystem.available metric. */
3833
+ "k8s.pod.filesystem.available"?: {
3834
+ enabled?: boolean;
3835
+ };
3836
+ /** K8sPodFilesystemCapacityMetricConfig provides config for the k8s.pod.filesystem.capacity metric. */
3837
+ "k8s.pod.filesystem.capacity"?: {
3838
+ enabled?: boolean;
3839
+ };
3840
+ /** K8sPodFilesystemUsageMetricConfig provides config for the k8s.pod.filesystem.usage metric. */
3841
+ "k8s.pod.filesystem.usage"?: {
3842
+ enabled?: boolean;
3843
+ };
3844
+ /** K8sPodMemoryAvailableMetricConfig provides config for the k8s.pod.memory.available metric. */
3845
+ "k8s.pod.memory.available"?: {
3846
+ enabled?: boolean;
3847
+ };
3848
+ /** K8sPodMemoryMajorPageFaultsMetricConfig provides config for the k8s.pod.memory.major_page_faults metric. */
3849
+ "k8s.pod.memory.major_page_faults"?: {
3850
+ enabled?: boolean;
3851
+ };
3852
+ /** K8sPodMemoryNodeUtilizationMetricConfig provides config for the k8s.pod.memory.node.utilization metric. */
3853
+ "k8s.pod.memory.node.utilization"?: {
3854
+ enabled?: boolean;
3855
+ };
3856
+ /** K8sPodMemoryPageFaultsMetricConfig provides config for the k8s.pod.memory.page_faults metric. */
3857
+ "k8s.pod.memory.page_faults"?: {
3858
+ enabled?: boolean;
3859
+ };
3860
+ /** K8sPodMemoryRssMetricConfig provides config for the k8s.pod.memory.rss metric. */
3861
+ "k8s.pod.memory.rss"?: {
3862
+ enabled?: boolean;
3863
+ };
3864
+ /** K8sPodMemoryUsageMetricConfig provides config for the k8s.pod.memory.usage metric. */
3865
+ "k8s.pod.memory.usage"?: {
3866
+ enabled?: boolean;
3867
+ };
3868
+ /** K8sPodMemoryWorkingSetMetricConfig provides config for the k8s.pod.memory.working_set metric. */
3869
+ "k8s.pod.memory.working_set"?: {
3870
+ enabled?: boolean;
3871
+ };
3872
+ /** K8sPodMemoryLimitUtilizationMetricConfig provides config for the k8s.pod.memory_limit_utilization metric. */
3873
+ "k8s.pod.memory_limit_utilization"?: {
3874
+ enabled?: boolean;
3875
+ };
3876
+ /** K8sPodMemoryRequestUtilizationMetricConfig provides config for the k8s.pod.memory_request_utilization metric. */
3877
+ "k8s.pod.memory_request_utilization"?: {
3878
+ enabled?: boolean;
3879
+ };
3880
+ /** K8sPodNetworkErrorsMetricConfig provides config for the k8s.pod.network.errors metric. */
3881
+ "k8s.pod.network.errors"?: {
3882
+ aggregation_strategy?: "sum" | "avg" | "min" | "max";
3883
+ attributes?: Array<"interface" | "direction">;
3884
+ enabled?: boolean;
3885
+ };
3886
+ /** K8sPodNetworkIoMetricConfig provides config for the k8s.pod.network.io metric. */
3887
+ "k8s.pod.network.io"?: {
3888
+ aggregation_strategy?: "sum" | "avg" | "min" | "max";
3889
+ attributes?: Array<"interface" | "direction">;
3890
+ enabled?: boolean;
3891
+ };
3892
+ /** K8sPodUptimeMetricConfig provides config for the k8s.pod.uptime metric. */
3893
+ "k8s.pod.uptime"?: {
3894
+ enabled?: boolean;
3895
+ };
3896
+ /** K8sPodVolumeUsageMetricConfig provides config for the k8s.pod.volume.usage metric. */
3897
+ "k8s.pod.volume.usage"?: {
3898
+ enabled?: boolean;
3899
+ };
3900
+ /** K8sVolumeAvailableMetricConfig provides config for the k8s.volume.available metric. */
3901
+ "k8s.volume.available"?: {
3902
+ enabled?: boolean;
3903
+ };
3904
+ /** K8sVolumeCapacityMetricConfig provides config for the k8s.volume.capacity metric. */
3905
+ "k8s.volume.capacity"?: {
3906
+ enabled?: boolean;
3907
+ };
3908
+ /** K8sVolumeInodesMetricConfig provides config for the k8s.volume.inodes metric. */
3909
+ "k8s.volume.inodes"?: {
3910
+ enabled?: boolean;
3911
+ };
3912
+ /** K8sVolumeInodesFreeMetricConfig provides config for the k8s.volume.inodes.free metric. */
3913
+ "k8s.volume.inodes.free"?: {
3914
+ enabled?: boolean;
3915
+ };
3916
+ /** K8sVolumeInodesUsedMetricConfig provides config for the k8s.volume.inodes.used metric. */
3917
+ "k8s.volume.inodes.used"?: {
3918
+ enabled?: boolean;
3919
+ };
3920
+ };
3921
+
3922
+ /** ResourceAttributesConfig provides config for kubelet_stats resource attributes. */
3923
+ export type ReceiverKubeletstatsreceiverInternalMetadataResourceAttributesConfig = {
3924
+ /** ResourceAttributeConfig provides common config for a aws.volume.id resource attribute. */
3925
+ "aws.volume.id"?: {
3926
+ enabled?: boolean;
3927
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3928
+ metrics_exclude?: Array<CollectorFilterConfig>;
3929
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3930
+ metrics_include?: Array<CollectorFilterConfig>;
3931
+ };
3932
+ /** ResourceAttributeConfig provides common config for a container.id resource attribute. */
3933
+ "container.id"?: {
3934
+ enabled?: boolean;
3935
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3936
+ metrics_exclude?: Array<CollectorFilterConfig>;
3937
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3938
+ metrics_include?: Array<CollectorFilterConfig>;
3939
+ };
3940
+ /** ResourceAttributeConfig provides common config for a fs.type resource attribute. */
3941
+ "fs.type"?: {
3942
+ enabled?: boolean;
3943
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3944
+ metrics_exclude?: Array<CollectorFilterConfig>;
3945
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3946
+ metrics_include?: Array<CollectorFilterConfig>;
3947
+ };
3948
+ /** ResourceAttributeConfig provides common config for a gce.pd.name resource attribute. */
3949
+ "gce.pd.name"?: {
3950
+ enabled?: boolean;
3951
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3952
+ metrics_exclude?: Array<CollectorFilterConfig>;
3953
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3954
+ metrics_include?: Array<CollectorFilterConfig>;
3955
+ };
3956
+ /** ResourceAttributeConfig provides common config for a glusterfs.endpoints.name resource attribute. */
3957
+ "glusterfs.endpoints.name"?: {
3958
+ enabled?: boolean;
3959
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3960
+ metrics_exclude?: Array<CollectorFilterConfig>;
3961
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3962
+ metrics_include?: Array<CollectorFilterConfig>;
3963
+ };
3964
+ /** ResourceAttributeConfig provides common config for a glusterfs.path resource attribute. */
3965
+ "glusterfs.path"?: {
3966
+ enabled?: boolean;
3967
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3968
+ metrics_exclude?: Array<CollectorFilterConfig>;
3969
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3970
+ metrics_include?: Array<CollectorFilterConfig>;
3971
+ };
3972
+ /** ResourceAttributeConfig provides common config for a k8s.container.name resource attribute. */
3973
+ "k8s.container.name"?: {
3974
+ enabled?: boolean;
3975
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3976
+ metrics_exclude?: Array<CollectorFilterConfig>;
3977
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3978
+ metrics_include?: Array<CollectorFilterConfig>;
3979
+ };
3980
+ /** ResourceAttributeConfig provides common config for a k8s.namespace.name resource attribute. */
3981
+ "k8s.namespace.name"?: {
3982
+ enabled?: boolean;
3983
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3984
+ metrics_exclude?: Array<CollectorFilterConfig>;
3985
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3986
+ metrics_include?: Array<CollectorFilterConfig>;
3987
+ };
3988
+ /** ResourceAttributeConfig provides common config for a k8s.node.name resource attribute. */
3989
+ "k8s.node.name"?: {
3990
+ enabled?: boolean;
3991
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
3992
+ metrics_exclude?: Array<CollectorFilterConfig>;
3993
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
3994
+ metrics_include?: Array<CollectorFilterConfig>;
3995
+ };
3996
+ /** ResourceAttributeConfig provides common config for a k8s.node.system_container.name resource attribute. */
3997
+ "k8s.node.system_container.name"?: {
3998
+ enabled?: boolean;
3999
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
4000
+ metrics_exclude?: Array<CollectorFilterConfig>;
4001
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
4002
+ metrics_include?: Array<CollectorFilterConfig>;
4003
+ };
4004
+ /** ResourceAttributeConfig provides common config for a k8s.persistentvolumeclaim.name resource attribute. */
4005
+ "k8s.persistentvolumeclaim.name"?: {
4006
+ enabled?: boolean;
4007
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
4008
+ metrics_exclude?: Array<CollectorFilterConfig>;
4009
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
4010
+ metrics_include?: Array<CollectorFilterConfig>;
4011
+ };
4012
+ /** ResourceAttributeConfig provides common config for a k8s.pod.name resource attribute. */
4013
+ "k8s.pod.name"?: {
4014
+ enabled?: boolean;
4015
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
4016
+ metrics_exclude?: Array<CollectorFilterConfig>;
4017
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
4018
+ metrics_include?: Array<CollectorFilterConfig>;
4019
+ };
4020
+ /** ResourceAttributeConfig provides common config for a k8s.pod.uid resource attribute. */
4021
+ "k8s.pod.uid"?: {
4022
+ enabled?: boolean;
4023
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
4024
+ metrics_exclude?: Array<CollectorFilterConfig>;
4025
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
4026
+ metrics_include?: Array<CollectorFilterConfig>;
4027
+ };
4028
+ /** ResourceAttributeConfig provides common config for a k8s.volume.name resource attribute. */
4029
+ "k8s.volume.name"?: {
4030
+ enabled?: boolean;
4031
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
4032
+ metrics_exclude?: Array<CollectorFilterConfig>;
4033
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
4034
+ metrics_include?: Array<CollectorFilterConfig>;
4035
+ };
4036
+ /** ResourceAttributeConfig provides common config for a k8s.volume.type resource attribute. */
4037
+ "k8s.volume.type"?: {
4038
+ enabled?: boolean;
4039
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
4040
+ metrics_exclude?: Array<CollectorFilterConfig>;
4041
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
4042
+ metrics_include?: Array<CollectorFilterConfig>;
4043
+ };
4044
+ /** ResourceAttributeConfig provides common config for a partition resource attribute. */
4045
+ partition?: {
4046
+ enabled?: boolean;
4047
+ /** Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude. */
4048
+ metrics_exclude?: Array<CollectorFilterConfig>;
4049
+ /** Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted. */
4050
+ metrics_include?: Array<CollectorFilterConfig>;
4051
+ };
4052
+ };
4053
+
4054
+ export type ReceiverKubeletstatsreceiverNetworkInterfacesEnablerConfig = {
4055
+ node?: boolean;
4056
+ pod?: boolean;
4057
+ };
4058
+
4059
+ export type ReceiverKubeletstatsreceiverSchema = CollectorScraperScraperhelperControllerConfig & InternalKubeletClientConfig & CollectorConfigConfignetTcpAddrConfig & ReceiverKubeletstatsreceiverInternalMetadataMetricsBuilderConfig & {
4060
+ /** NetworkCollectAllInterfaces allows to enable collecting metrics from all network interfaces instead of default one Can be set separately for Pod and Node network metrics */
4061
+ collect_all_network_interfaces?: ReceiverKubeletstatsreceiverNetworkInterfacesEnablerConfig;
4062
+ /** ExtraMetadataLabels contains list of extra metadata that should be taken from /pods endpoint and put as extra labels on metrics resource. No additional metadata is fetched by default, so there are no extra calls to /pods endpoint. Supported values include container.id and k8s.volume.type. */
4063
+ extra_metadata_labels?: Array<ReceiverKubeletstatsreceiverInternalKubeletMetadataLabel>;
4064
+ /** Configuration of the Kubernetes API client. */
4065
+ k8s_api_config?: InternalK8sconfigApiConfig;
4066
+ /** MetricGroupsToCollect provides a list of metrics groups to collect metrics from. "container", "pod", "node" and "volume" are the only valid groups. */
4067
+ metric_groups?: Array<ReceiverKubeletstatsreceiverInternalKubeletMetricGroup>;
4068
+ /** NodeName is the node name to limit the discovery of nodes. For example, node name can be set using the downward API inside the collector pod spec as follows: env: - name: K8S_NODE_NAME valueFrom: fieldRef: fieldPath: spec.nodeName Then set this value to ${env:K8S_NODE_NAME} in the configuration. */
4069
+ node?: string;
4070
+ };
4071
+
4072
+ export type ReceiverPrometheusreceiverInternalApiserverConfig = {
4073
+ enabled?: boolean;
4074
+ max_connections?: number;
4075
+ server_config?: CollectorConfigConfighttpServerConfig;
4076
+ };
4077
+
4078
+ export type ReceiverPrometheusreceiverInternalTargetallocatorConfig = CollectorConfigConfighttpClientConfig & {
4079
+ collector_id?: string;
4080
+ http_scrape_config?: ReceiverPrometheusreceiverInternalTargetallocatorPromHttpClientConfig;
4081
+ http_sd_config?: ReceiverPrometheusreceiverInternalTargetallocatorPromHttpsdConfig;
4082
+ interval?: Duration;
4083
+ };
4084
+
4085
+ export type ReceiverPrometheusreceiverInternalTargetallocatorPromHttpClientConfig = unknown;
4086
+
4087
+ /** PromHTTPSDConfig is a redeclaration of promHTTP.SDConfig because we need custom unmarshaling as prometheus "config" uses `yaml` tags. */
4088
+ export type ReceiverPrometheusreceiverInternalTargetallocatorPromHttpsdConfig = unknown;
4089
+
4090
+ /** HTTP Authorization header credentials. */
4091
+ export type ReceiverPrometheusreceiverPromAuthorization = {
4092
+ /** Credentials value (mutually exclusive with credentials_file/credentials_ref). */
4093
+ credentials?: string;
4094
+ /** File containing credentials. */
4095
+ credentials_file?: string;
4096
+ /** Reference to credentials in the credential store. */
4097
+ credentials_ref?: string;
4098
+ /** Authorization type. Default is "Bearer". */
4099
+ type?: string;
4100
+ };
4101
+
4102
+ /** HTTP Basic authentication credentials. */
4103
+ export type ReceiverPrometheusreceiverPromBasicAuth = {
4104
+ password?: string;
4105
+ /** File containing the password. */
4106
+ password_file?: string;
4107
+ /** Reference to a password in the credential store. */
4108
+ password_ref?: string;
4109
+ username?: string;
4110
+ /** File containing the username. */
4111
+ username_file?: string;
4112
+ /** Reference to a username in the credential store. */
4113
+ username_ref?: string;
4114
+ };
4115
+
4116
+ /** PromConfig is a redeclaration of promconfig.Config because we need custom unmarshaling as prometheus "config" uses `yaml` tags. */
4117
+ export type ReceiverPrometheusreceiverPromConfig = {
4118
+ global?: ReceiverPrometheusreceiverPromGlobalConfig;
4119
+ otlp?: ReceiverPrometheusreceiverPromOtlpConfig;
4120
+ runtime?: ReceiverPrometheusreceiverPromRuntimeConfig;
4121
+ scrape_configs?: Array<ReceiverPrometheusreceiverPromScrapeConfig>;
4122
+ storage?: ReceiverPrometheusreceiverPromStorageConfig;
4123
+ tracing?: ReceiverPrometheusreceiverPromTracingConfig;
4124
+ };
4125
+
4126
+ /** Exemplar storage configuration. */
4127
+ export type ReceiverPrometheusreceiverPromExemplarsConfig = {
4128
+ /** Maximum number of exemplars stored in memory. 0 disables exemplar storage. */
4129
+ max_exemplars?: number;
4130
+ };
4131
+
4132
+ /** Default values applied to all scrape jobs. */
4133
+ export type ReceiverPrometheusreceiverPromGlobalConfig = {
4134
+ /** Whether to always scrape classic histograms alongside native histograms. */
4135
+ always_scrape_classic_histograms?: boolean;
4136
+ /** Maximum size of uncompressed response body. E.g. "100MB". 0 means no limit. */
4137
+ body_size_limit?: string;
4138
+ /** Whether to convert classic histograms to native histogram custom buckets. */
4139
+ convert_classic_histograms_to_nhcb?: boolean;
4140
+ /** How frequently to evaluate rules. Default is 1m. */
4141
+ evaluation_interval?: Duration;
4142
+ /** Labels added to all time series and alerts when communicating with external systems. */
4143
+ external_labels?: Record<string, string>;
4144
+ /** Whether to add extra metrics to each scrape result (scrape_body_size_bytes, etc.). */
4145
+ extra_scrape_metrics?: boolean;
4146
+ /** How many dropped targets to keep for UI purposes. 0 means no limit. */
4147
+ keep_dropped_targets?: number;
4148
+ /** Per-scrape limit on number of labels per sample. 0 means no limit. */
4149
+ label_limit?: number;
4150
+ /** Per-scrape limit on label name length. 0 means no limit. */
4151
+ label_name_length_limit?: number;
4152
+ /** Per-scrape limit on label value length. 0 means no limit. */
4153
+ label_value_length_limit?: number;
4154
+ /** Escaping scheme for non-standard metric names. */
4155
+ metric_name_escaping_scheme?: "allow-utf-8" | "underscore" | "dots" | "values";
4156
+ /** Validation scheme for metric names. */
4157
+ metric_name_validation_scheme?: "utf8" | "legacy";
4158
+ /** File to which PromQL queries are logged. */
4159
+ query_log_file?: string;
4160
+ /** Delay rule evaluation relative to the query timestamp. */
4161
+ rule_query_offset?: Duration;
4162
+ /** Per-scrape limit on number of accepted samples. 0 means no limit. */
4163
+ sample_limit?: number;
4164
+ /** File to which scrape failures are logged. */
4165
+ scrape_failure_log_file?: string;
4166
+ /** How frequently to scrape targets. Default is 1m. */
4167
+ scrape_interval?: Duration;
4168
+ /** Whether to scrape native histograms. */
4169
+ scrape_native_histograms?: boolean;
4170
+ /** Accepted content-type negotiation protocols in preference order. */
4171
+ scrape_protocols?: Array<ReceiverPrometheusreceiverPromScrapeProtocol>;
4172
+ /** Timeout per scrape request. Default is 10s. */
4173
+ scrape_timeout?: Duration;
4174
+ /** Per-scrape limit on number of targets. 0 means no limit. */
4175
+ target_limit?: number;
4176
+ };
4177
+
4178
+ /** OAuth 2.0 authentication configuration. */
4179
+ export type ReceiverPrometheusreceiverPromOauth2 = {
4180
+ /** JWT audience. */
4181
+ audience?: string;
4182
+ /** Additional JWT claims. */
4183
+ claims?: Record<string, unknown>;
4184
+ client_certificate_key?: string;
4185
+ client_certificate_key_file?: string;
4186
+ client_certificate_key_id?: string;
4187
+ client_certificate_key_ref?: string;
4188
+ client_id?: string;
4189
+ client_secret?: string;
4190
+ client_secret_file?: string;
4191
+ client_secret_ref?: string;
4192
+ /** Additional parameters for the token endpoint. */
4193
+ endpoint_params?: Record<string, string>;
4194
+ /** OAuth2 grant type. Default is "client_credentials". */
4195
+ grant_type?: string;
4196
+ /** JWT issuer. */
4197
+ iss?: string;
4198
+ no_proxy?: string;
4199
+ proxy_connect_header?: Record<string, Array<string>>;
4200
+ proxy_from_environment?: boolean;
4201
+ proxy_url?: string;
4202
+ /** OAuth2 scopes. */
4203
+ scopes?: Array<string>;
4204
+ signature_algorithm?: string;
4205
+ tls_config?: ReceiverPrometheusreceiverPromTlsConfig;
4206
+ /** URL for fetching the access token. */
4207
+ token_url?: string;
4208
+ };
4209
+
4210
+ /** Configuration for OTLP metric translation. */
4211
+ export type ReceiverPrometheusreceiverPromOtlpConfig = {
4212
+ /** Whether to convert OTLP histograms to native histogram custom buckets. */
4213
+ convert_histograms_to_nhcb?: boolean;
4214
+ /** Resource attributes to exclude from promotion. */
4215
+ ignore_resource_attributes?: Array<string>;
4216
+ /** Whether to keep identifying resource attributes. */
4217
+ keep_identifying_resource_attributes?: boolean;
4218
+ /** Whether to preserve multiple consecutive underscores in label names. */
4219
+ label_name_preserve_multiple_underscores?: boolean;
4220
+ /** Whether to sanitize label names by replacing non-alphanumeric characters with underscores. */
4221
+ label_name_underscore_sanitization?: boolean;
4222
+ /** Promote all resource attributes to metric labels. */
4223
+ promote_all_resource_attributes?: boolean;
4224
+ /** Specific resource attributes to promote to metric labels. */
4225
+ promote_resource_attributes?: Array<string>;
4226
+ /** Whether to promote instrumentation scope metadata to metric labels. */
4227
+ promote_scope_metadata?: boolean;
4228
+ /** Strategy for translating OTLP metrics to Prometheus format. */
4229
+ translation_strategy?: string;
4230
+ };
4231
+
4232
+ /** Relabeling rule applied to labels or samples. */
4233
+ export type ReceiverPrometheusreceiverPromRelabelConfig = {
4234
+ /** Action to perform. Default is "replace". */
4235
+ action?: "replace" | "lowercase" | "uppercase" | "keep" | "drop" | "keepequal" | "dropequal" | "hashmod" | "labelmap" | "labeldrop" | "labelkeep" | "templatereplace";
4236
+ /** PromQL metric selector used as a pre-filter (native histograms only). */
4237
+ if?: string;
4238
+ /** Labels to set for the labelkeep/labeldrop/labelmap actions. */
4239
+ labels?: Record<string, string>;
4240
+ /** Modulus for the hashmod action. */
4241
+ modulus?: number;
4242
+ /** Regular expression matched against the concatenated source label values. Default is "(.*)". */
4243
+ regex?: string;
4244
+ /** Replacement value for the target label. Default is "$1". */
4245
+ replacement?: string;
4246
+ /** Separator between source label values. Default is ";". */
4247
+ separator?: string;
4248
+ /** Labels whose values are concatenated to form the input to the regex. */
4249
+ source_labels?: Array<string>;
4250
+ /** Label to write the replacement value into. */
4251
+ target_label?: string;
4252
+ };
4253
+
4254
+ /** Runtime configuration. */
4255
+ export type ReceiverPrometheusreceiverPromRuntimeConfig = {
4256
+ /** Target percentage for Go GC. Default is 75. */
4257
+ gogc?: number;
4258
+ };
4259
+
4260
+ /** Configuration for a scrape job. */
4261
+ export type ReceiverPrometheusreceiverPromScrapeConfig = {
4262
+ always_scrape_classic_histograms?: boolean;
4263
+ authorization?: ReceiverPrometheusreceiverPromAuthorization;
4264
+ /** Azure service discovery configurations. */
4265
+ azure_sd_configs?: Array<Record<string, unknown>>;
4266
+ basic_auth?: ReceiverPrometheusreceiverPromBasicAuth;
4267
+ /** Bearer token for authentication (mutually exclusive with bearer_token_file). */
4268
+ bearer_token?: string;
4269
+ /** File containing bearer token (mutually exclusive with bearer_token). */
4270
+ bearer_token_file?: string;
4271
+ /** Maximum response body size. E.g. "100MB". 0 means no limit. */
4272
+ body_size_limit?: string;
4273
+ /** HashiCorp Consul service discovery configurations. */
4274
+ consul_sd_configs?: Array<Record<string, unknown>>;
4275
+ convert_classic_histograms_to_nhcb?: boolean;
4276
+ digitalocean_sd_configs?: Array<Record<string, unknown>>;
4277
+ /** DNS SRV record service discovery configurations. */
4278
+ dns_sd_configs?: Array<Record<string, unknown>>;
4279
+ /** AWS EC2 service discovery configurations. */
4280
+ ec2_sd_configs?: Array<Record<string, unknown>>;
4281
+ /** Whether to request compressed responses. Default is true. */
4282
+ enable_compression?: boolean;
4283
+ /** Whether to use HTTP/2. Default is true. */
4284
+ enable_http2?: boolean;
4285
+ eureka_sd_configs?: Array<Record<string, unknown>>;
4286
+ extra_scrape_metrics?: boolean;
4287
+ /** Fallback protocol if negotiation fails. */
4288
+ fallback_scrape_protocol?: ReceiverPrometheusreceiverPromScrapeProtocol;
4289
+ /** File-based service discovery configurations. */
4290
+ file_sd_configs?: Array<Record<string, unknown>>;
4291
+ /** Whether to follow HTTP redirects. Default is true. */
4292
+ follow_redirects?: boolean;
4293
+ /** Google Compute Engine service discovery configurations. */
4294
+ gce_sd_configs?: Array<Record<string, unknown>>;
4295
+ hetzner_sd_configs?: Array<Record<string, unknown>>;
4296
+ /** Whether to honor labels from the scraped target over Prometheus-set labels. */
4297
+ honor_labels?: boolean;
4298
+ /** Whether to honor timestamps from the scraped target. */
4299
+ honor_timestamps?: boolean;
4300
+ /** Custom HTTP headers sent during scraping. */
4301
+ http_headers?: Record<string, unknown>;
4302
+ /** HTTP endpoint service discovery configurations. */
4303
+ http_sd_configs?: Array<Record<string, unknown>>;
4304
+ ionos_sd_configs?: Array<Record<string, unknown>>;
4305
+ /** Name of the scrape job. Must be unique across all scrape configs. */
4306
+ job_name?: string;
4307
+ keep_dropped_targets?: number;
4308
+ /** Kubernetes service discovery configurations. */
4309
+ kubernetes_sd_configs?: Array<Record<string, unknown>>;
4310
+ label_limit?: number;
4311
+ label_name_length_limit?: number;
4312
+ label_value_length_limit?: number;
4313
+ linode_sd_configs?: Array<Record<string, unknown>>;
4314
+ marathon_sd_configs?: Array<Record<string, unknown>>;
4315
+ metric_name_escaping_scheme?: "allow-utf-8" | "underscore" | "dots" | "values";
4316
+ metric_name_validation_scheme?: "utf8" | "legacy";
4317
+ /** List of relabel configs applied to scraped samples. */
4318
+ metric_relabel_configs?: Array<ReceiverPrometheusreceiverPromRelabelConfig>;
4319
+ /** HTTP path for scraping. Default is /metrics. */
4320
+ metrics_path?: string;
4321
+ /** Docker/Moby service discovery configurations. */
4322
+ moby_sd_configs?: Array<Record<string, unknown>>;
4323
+ /** Maximum number of buckets per native histogram sample. */
4324
+ native_histogram_bucket_limit?: number;
4325
+ /** Minimum bucket factor for native histograms. */
4326
+ native_histogram_min_bucket_factor?: number;
4327
+ /** Comma-separated list of hosts to bypass the proxy. */
4328
+ no_proxy?: string;
4329
+ nomad_sd_configs?: Array<Record<string, unknown>>;
4330
+ oauth2?: ReceiverPrometheusreceiverPromOauth2;
4331
+ openstack_sd_configs?: Array<Record<string, unknown>>;
4332
+ outscale_sd_configs?: Array<Record<string, unknown>>;
4333
+ ovhcloud_sd_configs?: Array<Record<string, unknown>>;
4334
+ /** HTTP URL query parameters added to every scrape. */
4335
+ params?: Record<string, Array<string>>;
4336
+ /** Headers sent to the proxy during CONNECT requests. */
4337
+ proxy_connect_header?: Record<string, Array<string>>;
4338
+ /** Whether to use proxy settings from environment variables. */
4339
+ proxy_from_environment?: boolean;
4340
+ /** HTTP proxy URL. */
4341
+ proxy_url?: string;
4342
+ puppetdb_sd_configs?: Array<Record<string, unknown>>;
4343
+ /** List of relabel configs applied to target labels before scraping. */
4344
+ relabel_configs?: Array<ReceiverPrometheusreceiverPromRelabelConfig>;
4345
+ sample_limit?: number;
4346
+ scaleway_sd_configs?: Array<Record<string, unknown>>;
4347
+ /** HTTP scheme for scraping. Default is http. */
4348
+ scheme?: "http" | "https";
4349
+ scrape_failure_log_file?: string;
4350
+ /** Override for global scrape_interval. */
4351
+ scrape_interval?: Duration;
4352
+ scrape_native_histograms?: boolean;
4353
+ scrape_protocols?: Array<ReceiverPrometheusreceiverPromScrapeProtocol>;
4354
+ /** Override for global scrape_timeout. */
4355
+ scrape_timeout?: Duration;
4356
+ stackit_sd_configs?: Array<Record<string, unknown>>;
4357
+ /** List of statically configured targets. */
4358
+ static_configs?: Array<ReceiverPrometheusreceiverPromStaticConfig>;
4359
+ target_limit?: number;
4360
+ tls_config?: ReceiverPrometheusreceiverPromTlsConfig;
4361
+ /** Whether to track staleness of scraped timestamps. */
4362
+ track_timestamps_staleness?: boolean;
4363
+ triton_sd_configs?: Array<Record<string, unknown>>;
4364
+ uyuni_sd_configs?: Array<Record<string, unknown>>;
4365
+ vultr_sd_configs?: Array<Record<string, unknown>>;
4366
+ /** xDS (Envoy) service discovery configurations. */
4367
+ xds_sd_configs?: Array<Record<string, unknown>>;
4368
+ zookeeper_sd_configs?: Array<Record<string, unknown>>;
4369
+ };
4370
+
4371
+ /** Content-type negotiation protocol. */
4372
+ export type ReceiverPrometheusreceiverPromScrapeProtocol = "PrometheusProto" | "PrometheusText0.0.4" | "PrometheusText1.0.0" | "OpenMetricsText0.0.1" | "OpenMetricsText1.0.0";
4373
+
4374
+ /** Statically configured scrape targets. */
4375
+ export type ReceiverPrometheusreceiverPromStaticConfig = {
4376
+ /** Labels assigned to all metrics scraped from these targets. */
4377
+ labels?: Record<string, string>;
4378
+ /** Targets in host:port format (scheme and path from the job config are used). */
4379
+ targets?: Array<string>;
4380
+ };
4381
+
4382
+ /** Storage configuration. */
4383
+ export type ReceiverPrometheusreceiverPromStorageConfig = {
4384
+ exemplars?: ReceiverPrometheusreceiverPromExemplarsConfig;
4385
+ tsdb?: ReceiverPrometheusreceiverPromTsdbConfig;
4386
+ };
4387
+
4388
+ /** TLS client configuration. */
4389
+ export type ReceiverPrometheusreceiverPromTlsConfig = {
4390
+ /** CA certificate as a string (mutually exclusive with ca_file/ca_ref). */
4391
+ ca?: string;
4392
+ /** Path to the CA certificate file. */
4393
+ ca_file?: string;
4394
+ /** Reference to a CA certificate in the credential store. */
4395
+ ca_ref?: string;
4396
+ /** Client certificate as a string (mutually exclusive with cert_file/cert_ref). */
4397
+ cert?: string;
4398
+ /** Path to the client certificate file. */
4399
+ cert_file?: string;
4400
+ /** Reference to a client certificate in the credential store. */
4401
+ cert_ref?: string;
4402
+ /** Whether to skip TLS certificate verification. */
4403
+ insecure_skip_verify?: boolean;
4404
+ /** Client private key as a string (mutually exclusive with key_file/key_ref). */
4405
+ key?: string;
4406
+ /** Path to the client private key file. */
4407
+ key_file?: string;
4408
+ /** Reference to a client private key in the credential store. */
4409
+ key_ref?: string;
4410
+ /** Maximum TLS version. E.g. "TLS13". */
4411
+ max_version?: string;
4412
+ /** Minimum TLS version. E.g. "TLS12". */
4413
+ min_version?: string;
4414
+ /** Server name for SNI verification (overrides the hostname in the URL). */
4415
+ server_name?: string;
4416
+ };
4417
+
4418
+ /** OTLP tracing configuration for Prometheus internal traces. */
4419
+ export type ReceiverPrometheusreceiverPromTracingConfig = {
4420
+ /** Transport protocol for trace export. Default is grpc. */
4421
+ client_type?: "http" | "grpc";
4422
+ /** Compression for trace export. */
4423
+ compression?: "gzip";
4424
+ /** OTLP endpoint to send traces to. */
4425
+ endpoint?: string;
4426
+ /** HTTP headers sent with trace requests. */
4427
+ headers?: Record<string, string>;
4428
+ /** Whether to skip TLS for the trace endpoint. */
4429
+ insecure?: boolean;
4430
+ /** Fraction of traces to sample. 0 disables tracing. 1 enables full tracing. */
4431
+ sampling_fraction?: number;
4432
+ /** Timeout for trace export requests. */
4433
+ timeout?: Duration;
4434
+ tls_config?: ReceiverPrometheusreceiverPromTlsConfig;
4435
+ };
4436
+
4437
+ /** TSDB storage configuration. */
4438
+ export type ReceiverPrometheusreceiverPromTsdbConfig = {
4439
+ /** Time window for accepting out-of-order samples. */
4440
+ out_of_order_time_window?: Duration;
4441
+ retention?: ReceiverPrometheusreceiverPromTsdbRetentionConfig;
4442
+ /** Fraction of chunks that must be stale to trigger compaction. */
4443
+ stale_series_compaction_threshold?: number;
4444
+ };
4445
+
4446
+ /** TSDB data retention configuration. */
4447
+ export type ReceiverPrometheusreceiverPromTsdbRetentionConfig = {
4448
+ /** Maximum storage usage as a percentage of available disk. 0 means no limit. */
4449
+ percentage?: number;
4450
+ /** Maximum storage size. E.g. "10GB". 0 means no limit. */
4451
+ size?: string;
4452
+ /** Retention duration. Default is 15d. */
4453
+ time?: Duration;
4454
+ };
4455
+
4456
+ /** Config defines configuration for Prometheus receiver. */
4457
+ export type ReceiverPrometheusreceiverSchema = {
4458
+ /** APIServer has the settings to enable the receiver to host the Prometheus API server in agent mode. This allows the user to call the endpoint to get the config, service discovery, and targets for debugging purposes. */
4459
+ api_server?: ReceiverPrometheusreceiverInternalApiserverConfig;
4460
+ config?: ReceiverPrometheusreceiverPromConfig;
4461
+ /** DiscoveryReloadOnStartup enables discovering targets immediately on start up as opposed to waiting for the configured interval before initializing the scrape pools. */
4462
+ discovery_reload_on_startup?: boolean;
4463
+ /** InitialScrapeOffset adds a fixed delay before the initial scrape of targets. This duration is applied on top of the receiver's internal load balancing offset. It avoids readiness races and backend rate limits immediately after startup. */
4464
+ initial_scrape_offset?: Duration;
4465
+ /** ScrapeOnShutdown enables a final scrape before the receiver closes. NOTE: This final scrape ignores the configured scrape interval. */
4466
+ scrape_on_shutdown?: boolean;
4467
+ target_allocator?: ReceiverPrometheusreceiverInternalTargetallocatorConfig | null;
4468
+ trim_metric_suffixes?: boolean;
4469
+ };
4470
+
4471
+ // ── Built-in config types ──────────────────────────────────────────
4472
+
4473
+ /** `AttributesProcessor`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/processor/attributesprocessor`. */
4474
+ export type AttributesProcessorSchemaConfig = ProcessorAttributesprocessorSchema;
4475
+
4476
+ /** `BatchProcessor`'s config, from `go.opentelemetry.io/collector/processor/batchprocessor`. */
4477
+ export type BatchProcessorSchemaConfig = CollectorProcessorBatchprocessorSchema;
4478
+
4479
+ /** `ClickHouseExporter`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/exporter/clickhouseexporter`. */
4480
+ export type ClickHouseExporterSchemaConfig = ExporterClickhouseexporterSchema;
4481
+
4482
+ /** `CountConnector`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/connector/countconnector`. */
4483
+ export type CountConnectorSchemaConfig = ConnectorCountconnectorSchema;
4484
+
4485
+ /** `DebugExporter`'s config, from `go.opentelemetry.io/collector/exporter/debugexporter`. */
4486
+ export type DebugExporterSchemaConfig = CollectorExporterDebugexporterSchema;
4487
+
4488
+ /** `DeltaToCumulativeProcessor`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/processor/deltatocumulativeprocessor`. */
4489
+ export type DeltaToCumulativeProcessorSchemaConfig = ProcessorDeltatocumulativeprocessorSchema;
4490
+
4491
+ /** `FileLogReceiver`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/receiver/filelogreceiver`. */
4492
+ export type FileLogReceiverSchemaConfig = ReceiverFilelogreceiverSchema;
4493
+
4494
+ /** `FilterProcessor`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/processor/filterprocessor`. */
4495
+ export type FilterProcessorSchemaConfig = ProcessorFilterprocessorSchema;
4496
+
4497
+ /** `GoogleCloudExporter`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/exporter/googlecloudexporter`. */
4498
+ export type GoogleCloudExporterSchemaConfig = ExporterGooglecloudexporterSchema;
4499
+
4500
+ /** `HealthCheckExtension`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/extension/healthcheckextension`. */
4501
+ export type HealthCheckExtensionSchemaConfig = ExtensionHealthcheckextensionSchema;
4502
+
4503
+ /** `HostMetricsReceiver`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/receiver/hostmetricsreceiver`. */
4504
+ export type HostMetricsReceiverSchemaConfig = ReceiverHostmetricsreceiverSchema;
4505
+
4506
+ /** `K8sAttributesProcessor`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/processor/k8sattributesprocessor`. */
4507
+ export type K8sAttributesProcessorSchemaConfig = ProcessorK8sattributesprocessorSchema;
4508
+
4509
+ /** `K8sClusterReceiver`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/receiver/k8sclusterreceiver`. */
4510
+ export type K8sClusterReceiverSchemaConfig = ReceiverK8sclusterreceiverSchema;
4511
+
4512
+ /** `K8sLeaderElectorExtension`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/extension/k8sleaderelector`. */
4513
+ export type K8sLeaderElectorExtensionSchemaConfig = ExtensionK8sleaderelectorSchema;
4514
+
4515
+ /** `KubeletStatsReceiver`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/receiver/kubeletstatsreceiver`. */
4516
+ export type KubeletStatsReceiverSchemaConfig = ReceiverKubeletstatsreceiverSchema;
4517
+
4518
+ /** `LoadBalancingExporter`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/exporter/loadbalancingexporter`. */
4519
+ export type LoadBalancingExporterSchemaConfig = ExporterLoadbalancingexporterSchema;
4520
+
4521
+ /** `MemoryLimiterProcessor`'s config, from `go.opentelemetry.io/collector/processor/memorylimiterprocessor`. */
4522
+ export type MemoryLimiterProcessorSchemaConfig = CollectorProcessorMemorylimiterprocessorSchema;
4523
+
4524
+ /** `OtlpExporter`'s config, from `go.opentelemetry.io/collector/exporter/otlpexporter`. */
4525
+ export type OtlpExporterSchemaConfig = CollectorExporterOtlpexporterSchema;
4526
+
4527
+ /** `OtlpHttpExporter`'s config, from `go.opentelemetry.io/collector/exporter/otlphttpexporter`. */
4528
+ export type OtlpHttpExporterSchemaConfig = CollectorExporterOtlphttpexporterSchema;
4529
+
4530
+ /** `OtlpReceiver`'s config, from `go.opentelemetry.io/collector/receiver/otlpreceiver`. */
4531
+ export type OtlpReceiverSchemaConfig = CollectorReceiverOtlpreceiverSchema;
4532
+
4533
+ /** `PprofExtension`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/extension/pprofextension`. */
4534
+ export type PprofExtensionSchemaConfig = ExtensionPprofextensionSchema;
4535
+
4536
+ /** `ProbabilisticSamplerProcessor`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/processor/probabilisticsamplerprocessor`. */
4537
+ export type ProbabilisticSamplerProcessorSchemaConfig = ProcessorProbabilisticsamplerprocessorSchema;
4538
+
4539
+ /** `PrometheusExporter`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/exporter/prometheusexporter`. */
4540
+ export type PrometheusExporterSchemaConfig = ExporterPrometheusexporterSchema;
4541
+
4542
+ /** `PrometheusReceiver`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/receiver/prometheusreceiver`. */
4543
+ export type PrometheusReceiverSchemaConfig = ReceiverPrometheusreceiverSchema;
4544
+
4545
+ /** `RedactionProcessor`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/processor/redactionprocessor`. */
4546
+ export type RedactionProcessorSchemaConfig = ProcessorRedactionprocessorSchema;
4547
+
4548
+ /** `ResourceDetectionProcessor`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/processor/resourcedetectionprocessor`. */
4549
+ export type ResourceDetectionProcessorSchemaConfig = ProcessorResourcedetectionprocessorSchema;
4550
+
4551
+ /** `ResourceProcessor`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/processor/resourceprocessor`. */
4552
+ export type ResourceProcessorSchemaConfig = ProcessorResourceprocessorSchema;
4553
+
4554
+ /** `RoutingConnector`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/connector/routingconnector`. */
4555
+ export type RoutingConnectorSchemaConfig = ConnectorRoutingconnectorSchema;
4556
+
4557
+ /** `ServiceGraphConnector`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/connector/servicegraphconnector`. */
4558
+ export type ServiceGraphConnectorSchemaConfig = ConnectorServicegraphconnectorSchema;
4559
+
4560
+ /** `SignalToMetricsConnector`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/connector/signaltometricsconnector/config`. */
4561
+ export type SignalToMetricsConnectorSchemaConfig = ConnectorSignaltometricsconnectorConfigConfig;
4562
+
4563
+ /** `SpanMetricsConnector`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/connector/spanmetricsconnector`. */
4564
+ export type SpanMetricsConnectorSchemaConfig = ConnectorSpanmetricsconnectorSchema;
4565
+
4566
+ /** `SumConnector`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/connector/sumconnector`. */
4567
+ export type SumConnectorSchemaConfig = ConnectorSumconnectorSchema;
4568
+
4569
+ /** `TailSamplingProcessor`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/processor/tailsamplingprocessor`. */
4570
+ export type TailSamplingProcessorSchemaConfig = ProcessorTailsamplingprocessorSchema;
4571
+
4572
+ /** `TransformProcessor`'s config, from `github.com/open-telemetry/opentelemetry-collector-contrib/processor/transformprocessor`. */
4573
+ export type TransformProcessorSchemaConfig = ProcessorTransformprocessorSchema;
4574
+
4575
+ /** `ZPagesExtension`'s config, from `go.opentelemetry.io/collector/extension/zpagesextension`. */
4576
+ export type ZPagesExtensionSchemaConfig = CollectorExtensionZpagesextensionSchema;