diff --git a/lib/skywalking/segment.lua b/lib/skywalking/segment.lua
index 02b6cfc..346842d 100644
--- a/lib/skywalking/segment.lua
+++ b/lib/skywalking/segment.lua
@@ -67,9 +67,12 @@
     segmentBuilder.serviceInstanceId = self.service_inst_id
 
     segmentBuilder.spans = {}
-    for i, span in ipairs(self.spans)
-    do 
-        segmentBuilder.spans[#segmentBuilder.spans + 1] = span:transform()
+
+    if self.spans ~= nil and #self.spans > 0 then
+        for i, span in ipairs(self.spans)
+        do 
+            segmentBuilder.spans[#segmentBuilder.spans + 1] = span:transform()
+        end
     end
 
     return segmentBuilder
diff --git a/lib/skywalking/span.lua b/lib/skywalking/span.lua
index 6f8f3e1..6c5d06a 100644
--- a/lib/skywalking/span.lua
+++ b/lib/skywalking/span.lua
@@ -171,8 +171,6 @@
     -- o.start_time = Util.timestamp()
     o.refs = {}
     o.owner = context
-    o.tags = {}
-    o.logs = {}
 
     return o
 end
@@ -265,6 +263,10 @@
         return self
     end
 
+    if self.tags == nil then
+        self.tags = {}
+    end
+
     local tag = {key = tagKey, value = tagValue}
     self.tags[#self.tags + 1] = tag
 
@@ -277,6 +279,10 @@
         return self
     end
 
+    if self.logs == nil then
+        self.logs = {}
+    end
+
     local logEntity = {time = timestamp, data = keyValuePairs}
     self.logs[#self.logs + 1] = logEntity
 
diff --git a/lib/skywalking/tracing_context.lua b/lib/skywalking/tracing_context.lua
index 78976b7..47fcfe6 100644
--- a/lib/skywalking/tracing_context.lua
+++ b/lib/skywalking/tracing_context.lua
@@ -110,6 +110,8 @@
 
     if self.internal.active_count ~= 0 then
         return false, nil
+    elseif #self.internal.finished_spans == 0 then
+        return false, nil
     else
         local segment = Segment:new()
         segment.trace_id = self.trace_id
