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

如何对VSCode宏执行操作?实现Airflow调试自动获取DAG名称

如何在VSCode的launch.json中自动从文件名提取Airflow DAG名称?

可以实现。VSCode的调试变量支持正则替换表达式,完全可以基于你的文件名规则(DAG名称+_dag.py)自动提取DAG名,无需手动修改launch.json。

具体实现方案

  1. 先用${fileBasenameNoExtension}变量获取当前打开文件的无后缀文件名:比如对于migrate_dtm_dag.py,该变量会返回migrate_dtm_dag。
  2. 给变量添加正则替换后缀,去掉末尾固定的_dag,最终表达式为:${fileBasenameNoExtension/(_dag)$//}

示例launch.json配置片段

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Airflow DAG 调试",
      "type": "python",
      "request": "launch",
      "program": "${workspaceFolder}/venv/bin/airflow", // 替换为你的airflow可执行文件路径
      "args": [
        "tasks",
        "test",
        "${fileBasenameNoExtension/(_dag)$//}", // 自动提取的DAG名称
        "your_task_id", // 替换为你的任务ID
        "2024-01-01",
        "--local"
      ],
      "console": "integratedTerminal"
    }
  ]
}

表达式细节说明

  • (_dag)$:正则匹配字符串末尾的_dag($表示匹配行尾,确保只移除最后面的_dag,避免误删名称中间的相同字符)
  • 第二个/后留空,表示将匹配到的内容替换为空白,最终得到纯DAG名称。

只要你的DAG文件严格遵循[DAG名称]_dag.py的命名规则,打开对应文件启动调试时,VSCode会自动注入正确的DAG名称。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 19:40:33