You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Dagit日志中添加可点击的超链接?

在Dagit日志中添加可点击超链接的实现方法

要在Dagit日志里显示可点击的超链接,直接写入路径字符串或HTML标签无法生效,需通过Dagster提供的MetadataValue.url结合日志的metadata参数实现,以下是具体步骤和修改后的代码示例:

核心实现逻辑

Dagit日志系统支持通过metadata参数接收结构化数据,用MetadataValue.url()包装文件路径或URL,即可在日志中渲染出可点击链接。

修改后的代码示例

1. 作业定义代码

只需新增MetadataValue的导入,原有结构无需改动:

import dagstermill as dm
from dagster import In, Out, job, MetadataValue  # 新增导入MetadataValue
from dagster.utils import script_relative_path

load_data = dm.define_dagstermill_op(
    'load_data',
    notebook_path=script_relative_path('load_data.ipynb'),
    outs={'numbers': Out(list, description='list of numbers')}
)

read_data = dm.define_dagstermill_op(
    'read_data',
    notebook_path=script_relative_path('read_data.ipynb'),
    ins={'numbers': In(list, description='list of numbers obtained from load_data.ipynb')}
)

@job(
    resource_defs={
        'output_notebook_io_manager': dm.local_output_notebook_io_manager,
    }
)
def main_job():
    numbers = load_data()
    read_data(numbers)

2. Load Data Notebook 修改

import dagstermill as dm
from dagster import MetadataValue  # 导入MetadataValue

result = [1, 2, 3, 4]
# 替换为实际的出错文件路径
error_file_path = "/path/to/your/error_file.log"

# 日志中添加带超链接的信息
dm.get_context().log.info(
    f'Step 1 - load_data - results: {result}',
    metadata={
        "出错文件": MetadataValue.url(f"file://{error_file_path}")
    }
)
dm.yield_result(result, 'numbers')

3. Read Data Notebook 修改

import dagstermill as dm
from dagster import MetadataValue  # 导入MetadataValue

# 替换为实际的数据文件路径
data_file_path = "/path/to/your/data_file.csv"

dm.get_context().log.info(
    f'Step 2 - read_data - loaded numbers: {numbers}',
    metadata={
        "数据文件": MetadataValue.url(f"file://{data_file_path}")
    }
)

注意事项

  • 本地文件路径需添加file://协议前缀,Dagit才能识别为可点击链接;
  • 若为远程URL(如HTTP、云存储链接),直接传入完整URL即可;
  • metadata支持添加多组键值对,每组对应一个可点击链接。

内容的提问来源于stack exchange,提问作者Phil T

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 20:26:16