Skip to content

Commit 5ec3d48

Browse files
authored
Remove plus syntax (#153)
1 parent 1886317 commit 5ec3d48

File tree

4 files changed

+10
-171
lines changed

4 files changed

+10
-171
lines changed

docs/resources/bindplane_configuration_v2.md

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -85,17 +85,13 @@ Configuration V2 builds upon [Configuration V1](./bindplane_configuration.md) by
8585
| Option | Type | Default | Description |
8686
| ------------------- | ------------ | -------- | ---------------------------- |
8787
| `route_id` | string | required | A unique string that identifies the route. |
88-
| `telemetry_type` | enum | `logs+metrics+traces` | The telemetry type to route. |
88+
| `telemetry_type` | enum | required | The telemetry type to route. |
8989
| `components` | list(string) | required | One or more components to route the telemetry to. |
9090

9191
Telemetry types include the following
9292
- `logs`
9393
- `metrics`
9494
- `traces`
95-
- `logs+metrics`
96-
- `logs+traces`
97-
- `metrics+traces`
98-
- `logs+metrics+traces` (default)
9995

10096
The following example shows two route blocks, one for all telemetry types and one for traces only.
10197

internal/component/route.go

Lines changed: 4 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -31,18 +31,6 @@ const (
3131
// RouteTypeTraces routes traces
3232
RouteTypeTraces = "traces"
3333

34-
// RouteTypeLogsMetrics routes logs and metrics
35-
RouteTypeLogsMetrics = "logs+metrics"
36-
37-
// RouteTypeLogsTraces routes logs and traces
38-
RouteTypeLogsTraces = "logs+traces"
39-
40-
// RouteTypeMetricsTraces routes metrics and traces
41-
RouteTypeMetricsTraces = "metrics+traces"
42-
43-
// RouteTypeLogsMetricsTraces routes logs, metrics, and traces
44-
RouteTypeLogsMetricsTraces = "logs+metrics+traces"
45-
4634
// RoutePrefixProcessor is the prefix for processor routes
4735
RoutePrefixProcessor = "processors"
4836

@@ -56,7 +44,7 @@ const (
5644
// ValidateRouteType returns an error if the route type is invalid
5745
func ValidateRouteType(routeType string) error {
5846
switch routeType {
59-
case RouteTypeLogs, RouteTypeMetrics, RouteTypeTraces, RouteTypeLogsMetrics, RouteTypeLogsTraces, RouteTypeMetricsTraces, RouteTypeLogsMetricsTraces:
47+
case RouteTypeLogs, RouteTypeMetrics, RouteTypeTraces:
6048
return nil
6149
}
6250
return fmt.Errorf("invalid route type: %s", routeType)
@@ -117,26 +105,6 @@ func ParseRoutes(rawRoutes []any) (*model.Routes, error) {
117105
ID: id,
118106
Components: components,
119107
})
120-
case RouteTypeLogsMetrics:
121-
routes.LogsMetrics = append(routes.LogsMetrics, model.Route{
122-
ID: id,
123-
Components: components,
124-
})
125-
case RouteTypeLogsTraces:
126-
routes.LogsTraces = append(routes.LogsTraces, model.Route{
127-
ID: id,
128-
Components: components,
129-
})
130-
case RouteTypeMetricsTraces:
131-
routes.MetricsTraces = append(routes.MetricsTraces, model.Route{
132-
ID: id,
133-
Components: components,
134-
})
135-
case RouteTypeLogsMetricsTraces:
136-
routes.LogsMetricsTraces = append(routes.LogsMetricsTraces, model.Route{
137-
ID: id,
138-
Components: components,
139-
})
140108
}
141109
}
142110

@@ -156,13 +124,9 @@ func RoutesToState(inRoutes *model.Routes) ([]map[string]any, error) {
156124
stateRoutes := []map[string]any{}
157125

158126
routeMap := map[string][]model.Route{
159-
RouteTypeLogs: inRoutes.Logs,
160-
RouteTypeMetrics: inRoutes.Metrics,
161-
RouteTypeTraces: inRoutes.Traces,
162-
RouteTypeLogsMetrics: inRoutes.LogsMetrics,
163-
RouteTypeLogsTraces: inRoutes.LogsTraces,
164-
RouteTypeMetricsTraces: inRoutes.MetricsTraces,
165-
RouteTypeLogsMetricsTraces: inRoutes.LogsMetricsTraces,
127+
RouteTypeLogs: inRoutes.Logs,
128+
RouteTypeMetrics: inRoutes.Metrics,
129+
RouteTypeTraces: inRoutes.Traces,
166130
}
167131

168132
for routeType, routes := range routeMap {

internal/component/route_test.go

Lines changed: 3 additions & 123 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,6 @@ func TestValidateRouteType(t *testing.T) {
3131
{"logs", nil},
3232
{"metrics", nil},
3333
{"traces", nil},
34-
{"logs+metrics", nil},
35-
{"logs+traces", nil},
36-
{"metrics+traces", nil},
37-
{"logs+metrics+traces", nil},
3834
{"invalid", errors.New("invalid route type: invalid")},
3935
}
4036

@@ -79,11 +75,11 @@ func TestParseRoutes(t *testing.T) {
7975
map[string]any{
8076
"route_id": "logs-otlp",
8177
"components": []any{"destinations/otlp"},
82-
"telemetry_type": "logs+metrics+traces",
78+
"telemetry_type": "logs",
8379
},
8480
},
8581
&model.Routes{
86-
LogsMetricsTraces: []model.Route{
82+
Logs: []model.Route{
8783
{
8884
ID: "logs-otlp",
8985
Components: []model.ComponentPath{"destinations/otlp"},
@@ -110,26 +106,6 @@ func TestParseRoutes(t *testing.T) {
110106
"components": []any{"destinations/jaeger"},
111107
"telemetry_type": "traces",
112108
},
113-
map[string]any{
114-
"route_id": "logs-metrics",
115-
"components": []any{"destinations/otlp", "processors/batcher"},
116-
"telemetry_type": "logs+metrics",
117-
},
118-
map[string]any{
119-
"route_id": "logs-traces",
120-
"components": []any{"destinations/otlp", "processors/batcher"},
121-
"telemetry_type": "logs+traces",
122-
},
123-
map[string]any{
124-
"route_id": "metrics-traces",
125-
"components": []any{"destinations/otlp", "processors/batcher"},
126-
"telemetry_type": "metrics+traces",
127-
},
128-
map[string]any{
129-
"route_id": "all",
130-
"components": []any{"destinations/otlp", "processors/batcher", "connectors/router"},
131-
"telemetry_type": "logs+metrics+traces",
132-
},
133109
},
134110
&model.Routes{
135111
Logs: []model.Route{
@@ -150,30 +126,6 @@ func TestParseRoutes(t *testing.T) {
150126
Components: []model.ComponentPath{"destinations/jaeger"},
151127
},
152128
},
153-
LogsMetrics: []model.Route{
154-
{
155-
ID: "logs-metrics",
156-
Components: []model.ComponentPath{"destinations/otlp", "processors/batcher"},
157-
},
158-
},
159-
LogsTraces: []model.Route{
160-
{
161-
ID: "logs-traces",
162-
Components: []model.ComponentPath{"destinations/otlp", "processors/batcher"},
163-
},
164-
},
165-
MetricsTraces: []model.Route{
166-
{
167-
ID: "metrics-traces",
168-
Components: []model.ComponentPath{"destinations/otlp", "processors/batcher"},
169-
},
170-
},
171-
LogsMetricsTraces: []model.Route{
172-
{
173-
ID: "all",
174-
Components: []model.ComponentPath{"destinations/otlp", "processors/batcher", "connectors/router"},
175-
},
176-
},
177129
},
178130
false,
179131
},
@@ -182,7 +134,7 @@ func TestParseRoutes(t *testing.T) {
182134
[]any{
183135
map[string]any{
184136
"components": []any{"dest/otlp"},
185-
"telemetry_type": "logs+metrics+traces",
137+
"telemetry_type": "traces",
186138
},
187139
},
188140
nil,
@@ -272,78 +224,6 @@ func TestRoutesToState(t *testing.T) {
272224
},
273225
},
274226
},
275-
{
276-
"logs+metrics route",
277-
&model.Routes{
278-
LogsMetrics: []model.Route{
279-
{
280-
ID: "all-types",
281-
Components: []model.ComponentPath{"destinations/otlp", "processors/batcher"},
282-
},
283-
},
284-
},
285-
[]map[string]any{
286-
{
287-
"route_id": "all-types",
288-
"telemetry_type": "logs+metrics",
289-
"components": []model.ComponentPath{"destinations/otlp", "processors/batcher"},
290-
},
291-
},
292-
},
293-
{
294-
"logs+traces route",
295-
&model.Routes{
296-
LogsTraces: []model.Route{
297-
{
298-
ID: "logs-traces",
299-
Components: []model.ComponentPath{"destinations/otlp", "processors/batcher"},
300-
},
301-
},
302-
},
303-
[]map[string]any{
304-
{
305-
"route_id": "logs-traces",
306-
"telemetry_type": "logs+traces",
307-
"components": []model.ComponentPath{"destinations/otlp", "processors/batcher"},
308-
},
309-
},
310-
},
311-
{
312-
"metrics+traces route",
313-
&model.Routes{
314-
MetricsTraces: []model.Route{
315-
{
316-
ID: "metrics-traces",
317-
Components: []model.ComponentPath{"destinations/otlp", "processors/batcher"},
318-
},
319-
},
320-
},
321-
[]map[string]any{
322-
{
323-
"route_id": "metrics-traces",
324-
"telemetry_type": "metrics+traces",
325-
"components": []model.ComponentPath{"destinations/otlp", "processors/batcher"},
326-
},
327-
},
328-
},
329-
{
330-
"logs+metrics+traces route",
331-
&model.Routes{
332-
LogsMetricsTraces: []model.Route{
333-
{
334-
ID: "all",
335-
Components: []model.ComponentPath{"destinations/otlp", "processors/batcher", "connectors/router"},
336-
},
337-
},
338-
},
339-
[]map[string]any{
340-
{
341-
"route_id": "all",
342-
"telemetry_type": "logs+metrics+traces",
343-
"components": []model.ComponentPath{"destinations/otlp", "processors/batcher", "connectors/router"},
344-
},
345-
},
346-
},
347227
}
348228

349229
for _, tc := range cases {

provider/resource/configuration/v2/configuration.go

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,17 +35,16 @@ var RouteSchema *schema.Schema = &schema.Schema{
3535
},
3636
"telemetry_type": {
3737
Type: schema.TypeString,
38-
Optional: true,
38+
Required: true,
3939
ForceNew: false,
40-
Description: "The telemetry type to route. Valid route types include 'logs', 'metrics', or 'traces' 'logs+metrics', 'logs+traces', 'metrics+traces', 'logs+metrics+traces'.",
40+
Description: "The telemetry type to route. Valid route types include 'logs', 'metrics', or 'traces'.",
4141
ValidateFunc: func(val any, _ string) (warns []string, errs []error) {
4242
telemetryType := val.(string)
4343
if err := component.ValidateRouteType(telemetryType); err != nil {
4444
errs = append(errs, err)
4545
}
4646
return
4747
},
48-
Default: component.RouteTypeLogsMetricsTraces,
4948
},
5049
"components": {
5150
Type: schema.TypeList,

0 commit comments

Comments
 (0)