Skip to content

Commit

Permalink
add custom_event (#273)
Browse files Browse the repository at this point in the history
  • Loading branch information
chaudharysaket authored Feb 27, 2025
1 parent 498c058 commit 6108635
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 13 deletions.
2 changes: 1 addition & 1 deletion apm/collector.go
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ const (
cmdPreconnect = "preconnect"
cmdConnect = "connect"
CmdMetrics = "metric_data"
cmdCustomEvents = "custom_event_data"
CmdCustomEvents = "custom_event_data"
cmdLogEvents = "log_event_data"
cmdTxnEvents = "analytic_event_data"
CmdErrorEvents = "error_event_data"
Expand Down
32 changes: 20 additions & 12 deletions apm/connect.go
Original file line number Diff line number Diff line change
Expand Up @@ -224,16 +224,18 @@ func SendAPMTelemetry(ctx context.Context, invokedFunctionARN string, payload []
return sendTelemetryData(ctx, telemetryData, runID, cmd, cs)
}
func extractTelemetryData(datav1 LambdaRawData, datav2 LambdaData, pv int) (struct {
MetricData []interface{}
SpanEventData []interface{}
ErrorData []interface{}
ErrorEventData []interface{}
MetricData []interface{}
SpanEventData []interface{}
ErrorData []interface{}
ErrorEventData []interface{}
CustomEventData []interface{}
}, error) {
var telemetryData struct {
MetricData []interface{}
SpanEventData []interface{}
ErrorData []interface{}
ErrorEventData []interface{}
MetricData []interface{}
SpanEventData []interface{}
ErrorData []interface{}
ErrorEventData []interface{}
CustomEventData []interface{}
}

switch pv {
Expand All @@ -247,27 +249,31 @@ func extractTelemetryData(datav1 LambdaRawData, datav2 LambdaData, pv int) (stru
SpanEventData []interface{}
ErrorData []interface{}
ErrorEventData []interface{}
CustomEventData []interface{}
}{
MetricData: datav2.MetricData,
SpanEventData: datav2.SpanEventData,
ErrorData: datav2.ErrorData,
ErrorEventData: datav2.ErrorEventData,
CustomEventData: datav2.CustomEventData,
}
default: // Assuming default case is for v1 data
if reflect.DeepEqual(datav1, LambdaRawData{}) {
util.Debugf("SendTelemetry: no telemetry data found in payload")
return telemetryData, nil
}
telemetryData = struct {
MetricData []interface{}
SpanEventData []interface{}
ErrorData []interface{}
ErrorEventData []interface{}
MetricData []interface{}
SpanEventData []interface{}
ErrorData []interface{}
ErrorEventData []interface{}
CustomEventData []interface{}
}{
MetricData: datav1.LambdaData.MetricData,
SpanEventData: datav1.LambdaData.SpanEventData,
ErrorData: datav1.LambdaData.ErrorData,
ErrorEventData: datav1.LambdaData.ErrorEventData,
CustomEventData: datav1.LambdaData.CustomEventData,
}
}

Expand All @@ -278,13 +284,15 @@ func sendTelemetryData(ctx context.Context, data struct {
SpanEventData []interface{}
ErrorData []interface{}
ErrorEventData []interface{}
CustomEventData []interface{}
}, runID string, cmd RpmCmd, cs *RpmControls) (error, int) {
// Define telemetry tasks
telemetryTasks := []telemetryType{
{data.MetricData, CmdMetrics},
{data.SpanEventData, CmdSpanEvents},
{data.ErrorData, CmdErrorData},
{data.ErrorEventData, CmdErrorEvents},
{data.CustomEventData, CmdCustomEvents},
}

var wg sync.WaitGroup
Expand Down

0 comments on commit 6108635

Please sign in to comment.