From 86d1386eb61fed5057e1942afad368693ebc9230 Mon Sep 17 00:00:00 2001 From: nityanandagohain Date: Mon, 16 Oct 2023 17:28:33 +0530 Subject: [PATCH] fix: minor fixed --- receiver/httpreceiver/bodyparser/default.go | 4 ++-- receiver/httpreceiver/bodyparser/default_test.go | 2 +- receiver/httpreceiver/bodyparser/google.go | 4 ++-- receiver/httpreceiver/bodyparser/heroku.go | 4 ++-- receiver/httpreceiver/bodyparser/heroku_test.go | 3 ++- receiver/httpreceiver/bodyparser/logs.go | 2 +- receiver/httpreceiver/httpsreceiver.go | 11 ++--------- 7 files changed, 12 insertions(+), 18 deletions(-) diff --git a/receiver/httpreceiver/bodyparser/default.go b/receiver/httpreceiver/bodyparser/default.go index 6ca9272c..2c75a990 100644 --- a/receiver/httpreceiver/bodyparser/default.go +++ b/receiver/httpreceiver/bodyparser/default.go @@ -9,7 +9,7 @@ import ( type Default struct { } -func (l *Default) Parse(body []byte) plog.Logs { +func (l *Default) Parse(body []byte) (plog.Logs, int) { // split by newline and return // TODO: add configuration for multiline ld := plog.NewLogs() @@ -20,5 +20,5 @@ func (l *Default) Parse(body []byte) plog.Logs { for _, log := range loglines { sl.LogRecords().AppendEmpty().Body().SetStr(log) } - return ld + return ld, len(loglines) } diff --git a/receiver/httpreceiver/bodyparser/default_test.go b/receiver/httpreceiver/bodyparser/default_test.go index aaaeb27b..9207b2ff 100644 --- a/receiver/httpreceiver/bodyparser/default_test.go +++ b/receiver/httpreceiver/bodyparser/default_test.go @@ -43,7 +43,7 @@ func TestDefaultParse(t *testing.T) { for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - res := d.Parse([]byte(tt.PayLoad)) + res, _ := d.Parse([]byte(tt.PayLoad)) logs := tt.Logs() assert.Equal(t, logs, res) }) diff --git a/receiver/httpreceiver/bodyparser/google.go b/receiver/httpreceiver/bodyparser/google.go index 9f0f346f..449aa7a1 100644 --- a/receiver/httpreceiver/bodyparser/google.go +++ b/receiver/httpreceiver/bodyparser/google.go @@ -5,6 +5,6 @@ import "go.opentelemetry.io/collector/pdata/plog" type GCloud struct { } -func (l *GCloud) Parse(body []byte) plog.Logs { - return plog.Logs{} +func (l *GCloud) Parse(body []byte) (plog.Logs, int) { + return plog.Logs{}, 0 } diff --git a/receiver/httpreceiver/bodyparser/heroku.go b/receiver/httpreceiver/bodyparser/heroku.go index 0fb9906b..8bec46be 100644 --- a/receiver/httpreceiver/bodyparser/heroku.go +++ b/receiver/httpreceiver/bodyparser/heroku.go @@ -39,7 +39,7 @@ type log struct { body string } -func (l *Heroku) Parse(body []byte) plog.Logs { +func (l *Heroku) Parse(body []byte) (plog.Logs, int) { data := string(body) loglines := octectCountingSplitter(data) @@ -91,7 +91,7 @@ func (l *Heroku) Parse(body []byte) plog.Logs { rec.Attributes().PutStr("msgid", log.msgid) } } - return ld + return ld, len(loglines) } diff --git a/receiver/httpreceiver/bodyparser/heroku_test.go b/receiver/httpreceiver/bodyparser/heroku_test.go index 60465ba5..55dd54aa 100644 --- a/receiver/httpreceiver/bodyparser/heroku_test.go +++ b/receiver/httpreceiver/bodyparser/heroku_test.go @@ -84,6 +84,7 @@ func TestHerokuParse(t *testing.T) { name string PayLoad string Logs func() plog.Logs + count int isError bool }{ { @@ -125,7 +126,7 @@ func TestHerokuParse(t *testing.T) { for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - res := d.Parse([]byte(tt.PayLoad)) + res, _ := d.Parse([]byte(tt.PayLoad)) logs := tt.Logs() assert.Equal(t, logs, res) }) diff --git a/receiver/httpreceiver/bodyparser/logs.go b/receiver/httpreceiver/bodyparser/logs.go index 0a914576..c3d1802a 100644 --- a/receiver/httpreceiver/bodyparser/logs.go +++ b/receiver/httpreceiver/bodyparser/logs.go @@ -3,7 +3,7 @@ package bodyparser import "go.opentelemetry.io/collector/pdata/plog" type Parser interface { - Parse(body []byte) plog.Logs + Parse(body []byte) (plog.Logs, int) } func GetBodyParser(source string) Parser { diff --git a/receiver/httpreceiver/httpsreceiver.go b/receiver/httpreceiver/httpsreceiver.go index 1f86b644..6ac55a0a 100644 --- a/receiver/httpreceiver/httpsreceiver.go +++ b/receiver/httpreceiver/httpsreceiver.go @@ -5,7 +5,6 @@ import ( "errors" "fmt" "io" - "log" "net/http" "sync" "time" @@ -25,13 +24,8 @@ const ( defaultEndpoint = ":54321" defaultServerTimeout = 20 * time.Second - // responseErrNextConsumer = "Internal Server Error" ) -// var ( -// errNextConsumerRespBody = initJSONResponse(responseErrNextConsumer) -// ) - // NewFactory creates a factory for httpreceiver func NewFactory() receiver.Factory { return receiver.NewFactory(metadata.Type, createDefaultConfig, receiver.WithLogs(createLogsReceiver, metadata.LogsStability)) @@ -184,7 +178,7 @@ func (r *httpreceiver) handleLogs(w http.ResponseWriter, req *http.Request) { return } - logs := r.parser.Parse(body) + logs, totalCount := r.parser.Parse(body) err = r.logsConsumer.ConsumeLogs(ctx, logs) if err != nil { @@ -192,11 +186,10 @@ func (r *httpreceiver) handleLogs(w http.ResponseWriter, req *http.Request) { return } - log.Printf("Received logs: %d\n", logs.LogRecordCount) r.obsrecv.EndMetricsOp( ctx, metadata.Type, - logs.LogRecordCount(), + totalCount, err) }