From ff191ed0da2bb4a1491575af6abcb937a4c35a57 Mon Sep 17 00:00:00 2001 From: "renzheng.wang" Date: Wed, 6 Jul 2022 00:17:45 +0800 Subject: [PATCH] stop reporting traces after the worker process begins to exit --- lib/skywalking/client.lua | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/skywalking/client.lua b/lib/skywalking/client.lua index 2dfd70a..881160d 100644 --- a/lib/skywalking/client.lua +++ b/lib/skywalking/client.lua @@ -204,9 +204,14 @@ function Client:reportTraces(metadata_buffer, backend_http_uri) end segmentTransform = segmentTransform .. segment - segment = queue:rpop(Const.segment_queue) count = count + 1 + if ngx.worker.exiting() then + break + end + + segment = queue:rpop(Const.segment_queue) + if count >= SEGMENT_BATCH_COUNT then if sendSegments('[' .. segmentTransform .. ']', backend_http_uri) then totalCount = totalCount + count