diff --git a/app.py b/app.py
index 6cece27..df8290d 100644
--- a/app.py
+++ b/app.py
@@ -12,14 +12,13 @@ load_local_template()
 import logging
 
 LOGGER = logging.getLogger(__name__)
-init_opentelemetry()
+init_opentelemetry(batch=False)
 app = flask.Flask(__name__)
 
 @app.post('/<task_id>')
 def do_task(task_id):
     task_info = api.get_task_info(task_id)
     biz.task.start_task(task_info)
-    time.sleep(1) # for telemetry upload traces
     return "OK"
 
 
diff --git a/telemetry/__init__.py b/telemetry/__init__.py
index 99d8e22..acf591d 100644
--- a/telemetry/__init__.py
+++ b/telemetry/__init__.py
@@ -5,14 +5,14 @@ from opentelemetry import trace
 from opentelemetry.exporter.otlp.proto.http.trace_exporter import OTLPSpanExporter as OTLPSpanHttpExporter
 from opentelemetry.sdk.resources import DEPLOYMENT_ENVIRONMENT, HOST_NAME, Resource, SERVICE_NAME, SERVICE_VERSION
 from opentelemetry.sdk.trace import TracerProvider
-from opentelemetry.sdk.trace.export import BatchSpanProcessor
+from opentelemetry.sdk.trace.export import BatchSpanProcessor, SimpleSpanProcessor
 
 
 def get_tracer(name):
     return trace.get_tracer(name)
 
 # 初始化 OpenTelemetry
-def init_opentelemetry():
+def init_opentelemetry(batch=True):
     # 设置服务名、主机名
     resource = Resource(attributes={
         SERVICE_NAME: "RENDER_WORKER",
@@ -22,9 +22,14 @@ def init_opentelemetry():
     })
 
     # 使用HTTP协议上报
-    span_processor = BatchSpanProcessor(OTLPSpanHttpExporter(
-        endpoint="https://oltp.jerryyan.top/v1/traces",
-    ))
+    if batch:
+        span_processor = BatchSpanProcessor(OTLPSpanHttpExporter(
+            endpoint="https://oltp.jerryyan.top/v1/traces",
+        ))
+    else:
+        span_processor = SimpleSpanProcessor(OTLPSpanHttpExporter(
+            endpoint="https://oltp.jerryyan.top/v1/traces",
+        ))
 
     trace_provider = TracerProvider(resource=resource, active_span_processor=span_processor)
     trace.set_tracer_provider(trace_provider)