From 52d5321249dc55cd59d8ea3ddf2bfcf7f586bb27 Mon Sep 17 00:00:00 2001 From: Vineeth Pothulapati Date: Wed, 8 Sep 2021 07:43:02 +0530 Subject: [PATCH] Add influxdb receiver --- pkg/collector/parser/receiver_generic_test.go | 1 + pkg/collector/parser/receiver_influxdb.go | 34 +++++++++++++++++++ .../parser/receiver_influxdb_test.go | 17 ++++++++++ 3 files changed, 52 insertions(+) create mode 100644 pkg/collector/parser/receiver_influxdb.go create mode 100644 pkg/collector/parser/receiver_influxdb_test.go diff --git a/pkg/collector/parser/receiver_generic_test.go b/pkg/collector/parser/receiver_generic_test.go index 82c52de6b1..704fa76d25 100644 --- a/pkg/collector/parser/receiver_generic_test.go +++ b/pkg/collector/parser/receiver_generic_test.go @@ -77,6 +77,7 @@ func TestDownstreamParsers(t *testing.T) { {"zipkin-scribe", "zipkin-scribe", "__zipkinscribe", 9410, parser.NewZipkinScribeReceiverParser}, {"fluentforward", "fluentforward", "__fluentforward", 8006, parser.NewFluentForwardReceiverParser}, {"statsd", "statsd", "__statsd", 8125, parser.NewStatsdReceiverParser}, + {"influxdb", "influxdb", "__influxdb", 8086, parser.NewInfluxdbReceiverParser}, } { t.Run(tt.receiverName, func(t *testing.T) { t.Run("builds successfully", func(t *testing.T) { diff --git a/pkg/collector/parser/receiver_influxdb.go b/pkg/collector/parser/receiver_influxdb.go new file mode 100644 index 0000000000..55e393f2ff --- /dev/null +++ b/pkg/collector/parser/receiver_influxdb.go @@ -0,0 +1,34 @@ +// Copyright The OpenTelemetry Authors +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package parser + +import "github.com/go-logr/logr" + +const parserNameInfluxdb = "__influxdb" + +// NewInfluxdbReceiverParser builds a new parser for Influxdb receivers, from the contrib repository. +func NewInfluxdbReceiverParser(logger logr.Logger, name string, config map[interface{}]interface{}) ReceiverParser { + return &GenericReceiver{ + logger: logger, + name: name, + config: config, + defaultPort: 8086, + parserName: parserNameInfluxdb, + } +} + +func init() { + Register("influxdb", NewInfluxdbReceiverParser) +} diff --git a/pkg/collector/parser/receiver_influxdb_test.go b/pkg/collector/parser/receiver_influxdb_test.go new file mode 100644 index 0000000000..8597204488 --- /dev/null +++ b/pkg/collector/parser/receiver_influxdb_test.go @@ -0,0 +1,17 @@ +// Copyright The OpenTelemetry Authors +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package parser + +// all tests for the Influxdb parser are currently part of the test TestDownstreamParsers