mirror of
https://git.mirrors.martin98.com/https://github.com/SigNoz/signoz
synced 2025-08-05 16:00:39 +08:00

* feat: get collectorsimulator started and add inmemoryreceiver * feat: add collectorsimulator/inmemoryexporter * feat: add collectorsimulator.SimulateLogsProcessing * chore: clean up collector simulator code a little * chore: update go.sum entries for cors * chore: add collectorsimulator tests to make cmd * chore: move to latest dependency version for collectorsimulator * chore: revert to dependency versions matching signoz-otel-col * chore: cleanup: reorganize collectorsimulator logic * chore: some more cleanup * chore: some more cleanup * chore: some more cleanup * chore: redo go.mod
42 lines
927 B
Go
42 lines
927 B
Go
package inmemoryreceiver
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/google/uuid"
|
|
"github.com/pkg/errors"
|
|
"go.opentelemetry.io/collector/component"
|
|
"go.opentelemetry.io/collector/consumer"
|
|
"go.opentelemetry.io/collector/receiver"
|
|
)
|
|
|
|
func createDefaultConfig() component.Config {
|
|
return &Config{
|
|
Id: uuid.NewString(),
|
|
}
|
|
}
|
|
|
|
func createLogsReceiver(
|
|
_ context.Context,
|
|
_ receiver.CreateSettings,
|
|
config component.Config,
|
|
consumer consumer.Logs,
|
|
) (receiver.Logs, error) {
|
|
if err := component.ValidateConfig(config); err != nil {
|
|
return nil, errors.Wrap(err, "invalid inmemory receiver config")
|
|
}
|
|
return &InMemoryReceiver{
|
|
id: config.(*Config).Id,
|
|
nextConsumer: consumer,
|
|
}, nil
|
|
|
|
}
|
|
|
|
// NewFactory creates a new OTLP receiver factory.
|
|
func NewFactory() receiver.Factory {
|
|
return receiver.NewFactory(
|
|
"memory",
|
|
createDefaultConfig,
|
|
receiver.WithLogs(createLogsReceiver, component.StabilityLevelBeta))
|
|
}
|