Skip to content

Commit 3660364

Browse files
committed
SCFF-31 send the string log to sumo in a sigle call
1 parent b1962d9 commit 3660364

2 files changed

Lines changed: 14 additions & 3 deletions

File tree

main.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ func main() {
6767
//Creating queue
6868
queue := eventQueue.NewQueue(make([]*eventQueue.Node, 100))
6969
loggingClientSumo := sumoCFFirehose.NewSumoLogicAppender(*sumoEndpoint, 1000, *queue, *eventsBatchSize)
70+
go loggingClientSumo.Start() //multi
7071

7172
//Creating Events
7273
events := eventRouting.NewEventRouting(cachingClient, *loggingClientSumo, *queue)

sumoCFFirehose/sumoLogicAppender.go

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,10 @@ func (s *SumoLogicAppender) Connect() bool {
4545
return success
4646
}
4747

48+
func (s *SumoLogicAppender) Start() {
49+
s.AppendLogs()
50+
}
51+
4852
func StringBuilder(node *eventQueue.Node) string {
4953
buf := new(bytes.Buffer)
5054
if node.Event.Fields["message_type"] == nil {
@@ -61,12 +65,18 @@ func StringBuilder(node *eventQueue.Node) string {
6165

6266
func (s *SumoLogicAppender) AppendLogs() {
6367
// the appender calls for the next message in the queue and parse it to a string
68+
//timer := time.NewTimer(60 * time.Second)
6469
logMessage := ""
65-
if s.nozzleQueue.GetCount() > s.eventsBatchSize { //when the batch limit is met, call stringBuilder
70+
stringBuilderCalls := 0
71+
for s.nozzleQueue.GetCount() > s.eventsBatchSize { //when the batch limit is met, call stringBuilder
6672
logMessage = logMessage + StringBuilder(s.nozzleQueue.Pop())
67-
73+
stringBuilderCalls++
74+
if s.eventsBatchSize == stringBuilderCalls {
75+
s.SendToSumo(logMessage)
76+
stringBuilderCalls = 0
77+
logMessage = ""
78+
}
6879
}
69-
s.SendToSumo(logMessage)
7080

7181
}
7282

0 commit comments

Comments
 (0)