You've already forked FrameTour-RenderWorker
metrics调整
This commit is contained in:
@ -2,6 +2,8 @@ import json
|
||||
import os.path
|
||||
import time
|
||||
|
||||
from opentelemetry.trace import Status, StatusCode
|
||||
|
||||
from entity.ffmpeg import FfmpegTask
|
||||
import logging
|
||||
|
||||
@ -108,13 +110,18 @@ def check_placeholder_exist(placeholder_id, task_params):
|
||||
|
||||
def start_ffmpeg_task(ffmpeg_task):
|
||||
tracer = get_tracer(__name__)
|
||||
with tracer.start_as_current_span("start_ffmpeg_task"):
|
||||
with tracer.start_as_current_span("start_ffmpeg_task") as span:
|
||||
for task in ffmpeg_task.analyze_input_render_tasks():
|
||||
result = start_ffmpeg_task(task)
|
||||
if not result:
|
||||
return False
|
||||
ffmpeg_task.correct_task_type()
|
||||
return ffmpeg.start_render(ffmpeg_task)
|
||||
result = ffmpeg.start_render(ffmpeg_task)
|
||||
if not result:
|
||||
span.set_status(Status(StatusCode.ERROR))
|
||||
return False
|
||||
span.set_status(Status(StatusCode.OK))
|
||||
return True
|
||||
|
||||
|
||||
def clear_task_tmp_file(ffmpeg_task):
|
||||
|
11
biz/task.py
11
biz/task.py
@ -1,3 +1,7 @@
|
||||
import json
|
||||
|
||||
from opentelemetry.trace import Status, StatusCode
|
||||
|
||||
from biz.ffmpeg import parse_ffmpeg_task, start_ffmpeg_task, clear_task_tmp_file, probe_video_info
|
||||
from telemetry import get_tracer
|
||||
from template import get_template_def
|
||||
@ -6,16 +10,20 @@ from util import api
|
||||
|
||||
def start_task(task_info):
|
||||
tracer = get_tracer(__name__)
|
||||
with tracer.start_as_current_span("start_task"):
|
||||
with tracer.start_as_current_span("start_task") as span:
|
||||
span.set_attribute("task.id", task_info)
|
||||
task_info = api.normalize_task(task_info)
|
||||
span.set_attribute("task.info", json.dumps(task_info))
|
||||
template_info = get_template_def(task_info.get("templateId"))
|
||||
api.report_task_start(task_info)
|
||||
ffmpeg_task = parse_ffmpeg_task(task_info, template_info)
|
||||
result = start_ffmpeg_task(ffmpeg_task)
|
||||
if not result:
|
||||
span.set_status(Status(StatusCode.ERROR))
|
||||
return api.report_task_failed(task_info)
|
||||
oss_result = api.upload_task_file(task_info, ffmpeg_task)
|
||||
if not oss_result:
|
||||
span.set_status(Status(StatusCode.ERROR))
|
||||
return api.report_task_failed(task_info)
|
||||
# 获取视频长度宽度和时长
|
||||
width, height, duration = probe_video_info(ffmpeg_task)
|
||||
@ -25,3 +33,4 @@ def start_task(task_info):
|
||||
"height": height,
|
||||
"duration": duration
|
||||
})
|
||||
span.set_status(Status(StatusCode.OK))
|
||||
|
Reference in New Issue
Block a user