Skip to content

历史版本特性更新

项目初始化

最新版本sdk优化了参数更新,重点变化整理如下

  1. 支持从.env文件获取项目配置
  2. 支持不同优先级的层次化配置
  3. 将otter与项目分离,可以通过配置更新otter版本,初始化自动加载otter

该特性修改参考 update-appinit

平台日志监控

最新版本sdk增加平台日志监控功能,此时代码有些许变化,重点变化整理如下

  1. 接口代码中无需处理异常(如需处理异常,请再次将异常抛出)
  2. submit,task, api 等接口需要添加平台监控注解

示例1:

from hippo.log_tracking import platform_monitor

@bp.route("/demo", methods=['POST'])
@platform_monitor # 业务接口添加平台监控注解
def demo():
    pass

示例2:

from app.views.ms_jk import bp
from hippo.web import DataAnalysisSubmit
from app.task import alphafold_multimer_task # 任务函数
from hippo.log_tracking import platform_monitor


@bp.route("/submit", methods=['POST'])
@platform_monitor # submit接口添加平台监控注解
def submit(): 
    das = DataAnalysisSubmit()
    return das.submit_task(alphafold_multimer_task) # submit提交任务后台运行

示例3:

from celery import shared_task
from hippo.log_tracking import platform_monitor, TASK # 

@shared_task(ignore_result=False)
@platform_monitor(TASK) # 任务函数添加平台监控注解需要指定参数,固定为TASK
def alphafold_multimer_task(**kwargs) -> dict:
    pass

该特性修改参考: update-submit