Skip to content

Commit

Permalink
Add AWS PRW exporter to lambda components
Browse files Browse the repository at this point in the history
  • Loading branch information
xukaren committed Jun 10, 2021
1 parent e50d672 commit 6e622dc
Show file tree
Hide file tree
Showing 3 changed files with 51 additions and 46 deletions.
94 changes: 48 additions & 46 deletions pkg/lambdacomponents/defaults.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,51 +13,53 @@
* permissions and limitations under the License.
*/

package lambdacomponents
package lambdacomponents

import (
"github.com/open-telemetry/opentelemetry-collector-contrib/exporter/awsemfexporter"
"github.com/open-telemetry/opentelemetry-collector-contrib/exporter/awsxrayexporter"
"go.opentelemetry.io/collector/component"
"go.opentelemetry.io/collector/consumer/consumererror"
"go.opentelemetry.io/collector/exporter/loggingexporter"
"go.opentelemetry.io/collector/exporter/otlpexporter"
"go.opentelemetry.io/collector/exporter/otlphttpexporter"
"go.opentelemetry.io/collector/exporter/prometheusexporter"
"go.opentelemetry.io/collector/receiver/otlpreceiver"
)

// Components returns a set of stripped components used by the
// OpenTelemetry collector built for Lambda env.
func Components() (
component.Factories,
error,
) {
var errs []error

receivers, err := component.MakeReceiverFactoryMap(
otlpreceiver.NewFactory(),
)
if err != nil {
errs = append(errs, err)
}

exporters, err := component.MakeExporterFactoryMap(
awsxrayexporter.NewFactory(),
awsemfexporter.NewFactory(),
prometheusexporter.NewFactory(),
loggingexporter.NewFactory(),
otlpexporter.NewFactory(),
otlphttpexporter.NewFactory(),
)
if err != nil {
errs = append(errs, err)
}

factories := component.Factories{
Receivers: receivers,
Exporters: exporters,
}
import (
"github.com/open-telemetry/opentelemetry-collector-contrib/exporter/awsemfexporter"
"github.com/open-telemetry/opentelemetry-collector-contrib/exporter/awsprometheusremotewriteexporter"
"github.com/open-telemetry/opentelemetry-collector-contrib/exporter/awsxrayexporter"
"go.opentelemetry.io/collector/component"
"go.opentelemetry.io/collector/consumer/consumererror"
"go.opentelemetry.io/collector/exporter/loggingexporter"
"go.opentelemetry.io/collector/exporter/otlpexporter"
"go.opentelemetry.io/collector/exporter/otlphttpexporter"
"go.opentelemetry.io/collector/exporter/prometheusexporter"
"go.opentelemetry.io/collector/receiver/otlpreceiver"
)

return factories, consumererror.Combine(errs)
}
// Components returns a set of stripped components used by the
// OpenTelemetry collector built for Lambda env.
func Components() (
component.Factories,
error,
) {
var errs []error

receivers, err := component.MakeReceiverFactoryMap(
otlpreceiver.NewFactory(),
)
if err != nil {
errs = append(errs, err)
}

exporters, err := component.MakeExporterFactoryMap(
awsxrayexporter.NewFactory(),
awsemfexporter.NewFactory(),
awsprometheusremotewriteexporter.NewFactory(),
prometheusexporter.NewFactory(),
loggingexporter.NewFactory(),
otlpexporter.NewFactory(),
otlphttpexporter.NewFactory(),
)
if err != nil {
errs = append(errs, err)
}

factories := component.Factories{
Receivers: receivers,
Exporters: exporters,
}

return factories, consumererror.Combine(errs)
}
2 changes: 2 additions & 0 deletions pkg/lambdacomponents/defaults_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@ func TestComponents(t *testing.T) {
exporters := factories.Exporters
// aws exporters
assert.True(t, exporters["awsxray"] != nil)
assert.True(t, exporters["awsprometheusremotewrite"] != nil)

// core exporters
assert.True(t, exporters["logging"] != nil)
assert.True(t, exporters["otlphttp"] != nil)
Expand Down
1 change: 1 addition & 0 deletions pkg/lambdacomponents/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ go 1.14
require (
github.com/open-telemetry/opentelemetry-collector-contrib/exporter/awsemfexporter v0.27.0
github.com/open-telemetry/opentelemetry-collector-contrib/exporter/awsxrayexporter v0.27.0
github.com/open-telemetry/opentelemetry-collector-contrib/exporter/awsprometheusremotewriteexporter v0.27.0
github.com/stretchr/testify v1.7.0
go.opentelemetry.io/collector v0.27.0
)
Expand Down

0 comments on commit 6e622dc

Please sign in to comment.