Skip to content

Commit

Permalink
remove some exports from the smartagent receiver
Browse files Browse the repository at this point in the history
  • Loading branch information
atoulme committed Oct 5, 2022
1 parent f530150 commit 05f5ffc
Show file tree
Hide file tree
Showing 11 changed files with 129 additions and 129 deletions.
4 changes: 2 additions & 2 deletions internal/receiver/smartagentreceiver/config.go
Expand Up @@ -187,14 +187,14 @@ func setHostAndPortViaEndpoint(endpoint string, monitorConfig any) error {
}

if host != "" {
_, err := SetStructFieldIfZeroValue(monitorConfig, "Host", host)
_, err := setStructFieldIfZeroValue(monitorConfig, "Host", host)
if err != nil {
return fmt.Errorf("unable to set monitor Host field using Endpoint-derived value of %s: %w", host, err)
}
}

if port != 0 {
_, err := SetStructFieldIfZeroValue(monitorConfig, "Port", port)
_, err := setStructFieldIfZeroValue(monitorConfig, "Port", port)
if err != nil {
return fmt.Errorf("unable to set monitor Port field using Endpoint-derived value of %d: %w", port, err)
}
Expand Down
20 changes: 10 additions & 10 deletions internal/receiver/smartagentreceiver/converter/event.go
Expand Up @@ -24,12 +24,12 @@ import (
)

const (
// SFxEventCategoryKey key for splunk event category,
SFxEventCategoryKey = "com.splunk.signalfx.event_category"
// SFxEventPropertiesKey key for splunk event properties.
SFxEventPropertiesKey = "com.splunk.signalfx.event_properties"
// SFxEventType key for splunk event type
SFxEventType = "com.splunk.signalfx.event_type"
// sfxEventCategoryKey key for splunk event category,
sfxEventCategoryKey = "com.splunk.signalfx.event_category"
// sfxEventPropertiesKey key for splunk event properties.
sfxEventPropertiesKey = "com.splunk.signalfx.event_properties"
// sfxEventType key for splunk event type
sfxEventType = "com.splunk.signalfx.event_type"
)

// eventToLog converts a SFx event to a plog.Logs entry suitable for consumption by LogConsumer.
Expand Down Expand Up @@ -58,17 +58,17 @@ func sfxEventToPDataLogs(event *event.Event, logger *zap.Logger) plog.Logs {

if event.Category == 0 {
// This attribute must be present or SFx exporter will not know it's an event
attrs.PutEmpty(SFxEventCategoryKey)
attrs.PutEmpty(sfxEventCategoryKey)
} else {
attrs.PutInt(SFxEventCategoryKey, int64(event.Category))
attrs.PutInt(sfxEventCategoryKey, int64(event.Category))
}

if event.EventType != "" {
attrs.PutString(SFxEventType, event.EventType)
attrs.PutString(sfxEventType, event.EventType)
}

if len(event.Properties) > 0 {
propMap := attrs.PutEmptyMap(SFxEventPropertiesKey)
propMap := attrs.PutEmptyMap(sfxEventPropertiesKey)
propMap.EnsureCapacity(len(event.Properties))

for property, value := range event.Properties {
Expand Down
6 changes: 3 additions & 3 deletions internal/receiver/smartagentreceiver/factory.go
Expand Up @@ -31,10 +31,10 @@ var (
// Smart Agent receivers can be for metrics or logs (events).
// We keep store of them to ensure the same instance is used for a given config.
receiverStoreLock = sync.Mutex{}
receiverStore = map[*Config]*Receiver{}
receiverStore = map[*Config]*receiver{}
)

func getOrCreateReceiver(cfg config.Receiver, params component.ReceiverCreateSettings) (*Receiver, error) {
func getOrCreateReceiver(cfg config.Receiver, params component.ReceiverCreateSettings) (*receiver, error) {
receiverStoreLock.Lock()
defer receiverStoreLock.Unlock()
receiverConfig := cfg.(*Config)
Expand All @@ -46,7 +46,7 @@ func getOrCreateReceiver(cfg config.Receiver, params component.ReceiverCreateSet

receiver, ok := receiverStore[receiverConfig]
if !ok {
receiver = NewReceiver(params, *receiverConfig)
receiver = newReceiver(params, *receiverConfig)
receiverStore[receiverConfig] = receiver
}

Expand Down
12 changes: 6 additions & 6 deletions internal/receiver/smartagentreceiver/factory_test.go
Expand Up @@ -139,9 +139,9 @@ func TestCreateMetricsThenLogsAndThenTracesReceiver(t *testing.T) {
assert.Same(t, logsReceiver, tracesReceiver)
assert.Same(t, metricsReceiver, receiverStore[cfg.(*Config)])

assert.Same(t, nextMetricsConsumer, metricsReceiver.(*Receiver).nextMetricsConsumer)
assert.Same(t, nextLogsConsumer, metricsReceiver.(*Receiver).nextLogsConsumer)
assert.Same(t, nextTracesConsumer, metricsReceiver.(*Receiver).nextTracesConsumer)
assert.Same(t, nextMetricsConsumer, metricsReceiver.(*receiver).nextMetricsConsumer)
assert.Same(t, nextLogsConsumer, metricsReceiver.(*receiver).nextLogsConsumer)
assert.Same(t, nextTracesConsumer, metricsReceiver.(*receiver).nextTracesConsumer)
}

func TestCreateTracesThenLogsAndThenMetricsReceiver(t *testing.T) {
Expand Down Expand Up @@ -169,7 +169,7 @@ func TestCreateTracesThenLogsAndThenMetricsReceiver(t *testing.T) {
assert.Same(t, logsReceiver, tracesReceiver)
assert.Same(t, metricsReceiver, receiverStore[cfg.(*Config)])

assert.Same(t, nextMetricsConsumer, metricsReceiver.(*Receiver).nextMetricsConsumer)
assert.Same(t, nextLogsConsumer, metricsReceiver.(*Receiver).nextLogsConsumer)
assert.Same(t, nextTracesConsumer, metricsReceiver.(*Receiver).nextTracesConsumer)
assert.Same(t, nextMetricsConsumer, metricsReceiver.(*receiver).nextMetricsConsumer)
assert.Same(t, nextLogsConsumer, metricsReceiver.(*receiver).nextLogsConsumer)
assert.Same(t, nextTracesConsumer, metricsReceiver.(*receiver).nextTracesConsumer)
}
52 changes: 26 additions & 26 deletions internal/receiver/smartagentreceiver/output.go
Expand Up @@ -35,11 +35,11 @@ import (

const internalTransport = "internal"

// Output is an implementation of a Smart Agent FilteringOutput that receives datapoints, events, and dimension updates
// output is an implementation of a Smart Agent FilteringOutput that receives datapoints, events, and dimension updates
// from a configured monitor. It will forward all datapoints to the nextMetricsConsumer, all dimension updates to the
// nextDimensionClients as determined by the associated items in Config.MetadataClients, and all events to the
// nextLogsConsumer.
type Output struct {
type output struct {
nextMetricsConsumer consumer.Metrics
nextLogsConsumer consumer.Logs
nextTracesConsumer consumer.Traces
Expand All @@ -54,15 +54,15 @@ type Output struct {
nextDimensionClients []metadata.MetadataExporter
}

var _ types.Output = (*Output)(nil)
var _ types.FilteringOutput = (*Output)(nil)
var _ types.Output = (*output)(nil)
var _ types.FilteringOutput = (*output)(nil)

func NewOutput(
func newOutput(
config Config, filtering *monitorFiltering, nextMetricsConsumer consumer.Metrics,
nextLogsConsumer consumer.Logs, nextTracesConsumer consumer.Traces, host component.Host,
params component.ReceiverCreateSettings,
) *Output {
return &Output{
) *output {
return &output{
receiverID: config.ID(),
nextMetricsConsumer: nextMetricsConsumer,
nextLogsConsumer: nextLogsConsumer,
Expand Down Expand Up @@ -162,37 +162,37 @@ func getLoneSFxExporter(host component.Host, exporterType collectorConfig.DataTy

}

func (output *Output) AddDatapointExclusionFilter(filter dpfilters.DatapointFilter) {
func (output *output) AddDatapointExclusionFilter(filter dpfilters.DatapointFilter) {
output.logger.Debug("AddDatapointExclusionFilter has been called", zap.Any("filter", filter))
output.monitorFiltering.AddDatapointExclusionFilter(filter)
}

func (output *Output) EnabledMetrics() []string {
func (output *output) EnabledMetrics() []string {
output.logger.Debug("EnabledMetrics has been called.")
return output.monitorFiltering.EnabledMetrics()
}

func (output *Output) HasEnabledMetricInGroup(group string) bool {
func (output *output) HasEnabledMetricInGroup(group string) bool {
output.logger.Debug("HasEnabledMetricInGroup has been called", zap.String("group", group))
return output.monitorFiltering.HasEnabledMetricInGroup(group)
}

func (output *Output) HasAnyExtraMetrics() bool {
func (output *output) HasAnyExtraMetrics() bool {
output.logger.Debug("HasAnyExtraMetrics has been called.")
return output.monitorFiltering.HasAnyExtraMetrics()
}

// Copy clones the Output to provide to child monitors with their own extraDimensions.
func (output *Output) Copy() types.Output {
output.logger.Debug("Copying Output", zap.Any("output", output))
// Copy clones the output to provide to child monitors with their own extraDimensions.
func (output *output) Copy() types.Output {
output.logger.Debug("Copying output", zap.Any("output", output))
cp := *output
cp.extraDimensions = utils.CloneStringMap(output.extraDimensions)
cp.extraSpanTags = utils.CloneStringMap(output.extraSpanTags)
cp.defaultSpanTags = utils.CloneStringMap(output.defaultSpanTags)
return &cp
}

func (output *Output) SendDatapoints(datapoints ...*datapoint.Datapoint) {
func (output *output) SendDatapoints(datapoints ...*datapoint.Datapoint) {
if output.nextMetricsConsumer == nil {
return
}
Expand All @@ -201,7 +201,7 @@ func (output *Output) SendDatapoints(datapoints ...*datapoint.Datapoint) {

datapoints = output.filterDatapoints(datapoints)
for _, dp := range datapoints {
// Output's extraDimensions take priority over datapoint's
// output's extraDimensions take priority over datapoint's
dp.Dimensions = utils.MergeStringMaps(dp.Dimensions, output.extraDimensions)
}

Expand All @@ -215,7 +215,7 @@ func (output *Output) SendDatapoints(datapoints ...*datapoint.Datapoint) {
output.reporter.EndMetricsOp(ctx, typeStr, numPoints, err)
}

func (output *Output) SendEvent(event *event.Event) {
func (output *output) SendEvent(event *event.Event) {
if output.nextLogsConsumer == nil {
return
}
Expand All @@ -231,7 +231,7 @@ func (output *Output) SendEvent(event *event.Event) {
}
}

func (output *Output) SendSpans(spans ...*trace.Span) {
func (output *output) SendSpans(spans ...*trace.Span) {
if output.nextTracesConsumer == nil {
return
}
Expand Down Expand Up @@ -262,7 +262,7 @@ func (output *Output) SendSpans(spans ...*trace.Span) {
}
}

func (output *Output) SendDimensionUpdate(dimension *types.Dimension) {
func (output *output) SendDimensionUpdate(dimension *types.Dimension) {
if len(output.nextDimensionClients) == 0 {
return
}
Expand All @@ -276,33 +276,33 @@ func (output *Output) SendDimensionUpdate(dimension *types.Dimension) {
}
}

func (output *Output) AddExtraDimension(key, value string) {
func (output *output) AddExtraDimension(key, value string) {
output.logger.Debug("Adding extra dimension", zap.String("key", key), zap.String("value", value))
output.extraDimensions[key] = value
}

func (output *Output) RemoveExtraDimension(key string) {
func (output *output) RemoveExtraDimension(key string) {
output.logger.Debug("Removing extra dimension", zap.String("key", key))
delete(output.extraDimensions, key)
}

func (output *Output) AddExtraSpanTag(key, value string) {
func (output *output) AddExtraSpanTag(key, value string) {
output.extraSpanTags[key] = value
}

func (output *Output) RemoveExtraSpanTag(key string) {
func (output *output) RemoveExtraSpanTag(key string) {
delete(output.extraSpanTags, key)
}

func (output *Output) AddDefaultSpanTag(key, value string) {
func (output *output) AddDefaultSpanTag(key, value string) {
output.defaultSpanTags[key] = value
}

func (output *Output) RemoveDefaultSpanTag(key string) {
func (output *output) RemoveDefaultSpanTag(key string) {
delete(output.defaultSpanTags, key)
}

func (output *Output) filterDatapoints(datapoints []*datapoint.Datapoint) []*datapoint.Datapoint {
func (output *output) filterDatapoints(datapoints []*datapoint.Datapoint) []*datapoint.Datapoint {
filteredDatapoints := make([]*datapoint.Datapoint, 0, len(datapoints))
for _, dp := range datapoints {
if output.monitorFiltering.filterSet == nil || !output.monitorFiltering.filterSet.Matches(dp) {
Expand Down

0 comments on commit 05f5ffc

Please sign in to comment.