Bỏ qua nội dung chính
DocsChạy@ Info: status

@ Info: status

9 kiểu điểm ngắt, biểu hiện điều kiện, kiểm tra biến số, và chỉnh sửa trực tiếp - vì vậy tự động hóa của bạn không còn là hộp đen nữa.

Bộ gỡ lỗi của Braidrun là một bộ gỡ lỗi điểm ngắt tương tác: đặt một điểm ngắt trên bất kỳ bước nào, thanh tra các biến khi nó dừng lại, chỉnh sửa và tiếp tục, hoặc một bước về phía trước một lúc. Kinh nghiệm này khớp với việc gỡ lỗi mã thông thường.

Bật gỡ lỗi

Trong hộp thoại "Chạy" tick chọn:

  • Bật gỡ lỗi — Bật chế độ gỡ lỗi và hiển thị bảng gỡ lỗi trên trang chi tiết thực thi.
  • Đã cập nhật — Tự động tạm dừng trước bước đầu tiên
  • Tạm dừng ngoại lệ — Tự động dừng lại nếu bất kỳ bước nào thất bại
  • ô xem thử — Nút "Dry run" ở cuối hộp thoại chỉ xác nhận kế hoạch thực hiện mà không thực sự chạy nó

Với việc gỡ lỗi, sự đồng thuận cấp cao được nối tiếp nhau để anh có thể vượt qua mọi thứ. Chỉ cần tắt lỗi khi bạn đi trực tiếp. Máy gỡ lỗi sẵn sàng từ kế hoạch Pro lên.

9 Kiểu điểm ngắt

Loại điểm dừngđiểm kích hoạt
before_stepTrước khi bắt đầu các bước
after_stepSau khi hoàn thành bước này thành công
step_errorKhi bước này xảy ra lỗi
state_machine_statestate_machine Vào một trạng thái nhất định
group_chat_roundgroup_chat Trước mỗi vòng phát biểu
iteration_itemiterate_over trước mỗi lần lặp
agent_based_delegationagent_based Trước khi giao nhiệm vụ phụ
sub_workflow_entrysub_workflow Trước khi đi vào một dòng chảy phụ (được tách ra trên bước cha mẹ)
sub_workflow_exitsub_workflow Sau khi dòng chảy phụ làm việc trở lại và đầu ra của nó được viết trở lại bối cảnh cha mẹ

Mỗi điểm ngắt cũng có một vài trường tùy chọn:

  • stepName — Nhấn chỉ bước đã chọn (tự động nhạy cảm); để trống để nhấn địa điểm kiểu đó
  • condition — Một biểu thức điều kiện mà thực sự phá vỡ chỉ khi hài lòng, với cú pháp tương tự như một workflow
  • once — Tên

Đang gỡ lỗi luồng phụ làm việc

Điểm ngắt được áp dụng ở mọi cấp theo mặc định: một điểm ngắt đặt trong luồng công việc của cha mẹ cũng sẽ bắn khi một luồng phụ làm việc đạt một bước cùng tên.sub_workflow_entry / sub_workflow_exit Hai kiểu điểm ngắt gắn liền với bước cha mẹ, tạm dừng trước khi nhập dòng dưới công việc và sau khi nó trở lại, đồng thời, làm cho nó dễ dàng để kiểm tra các dữ liệu nhập thông qua và đầu ra được viết trở lại.

Khi cùng một dòng chảy phụ (nói, một mô-đun thị trường) được sử dụng lại bởi nhiều bậc cha mẹ bước, các máy gỡ lỗi cho phép bạn thêm một parentPath lọc đến một điểm ngắt: nó chỉ bắn khi dòng chảy phụ được gọi là thông qua đường dẫn bước cha mẹ, và bước cùng tên trên các đường đi gọi khác không phá vỡ.

Bảng gỡ lỗi

Mọi điều khiển gỡ lỗi trực tiếp trong bảng gỡ lỗi trên trang chi tiết thực hiện — không có cửa sổ gỡ lỗi riêng:

  • kiểm soát điều hành:Tạm dừng / Tiếp tục / Bước nút, với vị trí tạm dừng hiện thời hiển thị trực tiếp ở đầu trang
  • Xem theo ngữ cảnh:Biến, kết xuất bước và tóm tắt bước
  • Lịch sử chụp ảnh:Một hình ảnh ngữ cảnh được lưu tự động tại mỗi điểm kiểm soát (lên 50 gần nhất được giữ); kéo dòng thời gian để nhìn lại các biến tại bất kỳ tạm dừng và mở một diff để so sánh trước và sau khi
  • Chỉnh sửa biến:Bấm đúp vào giá trị biến để sửa đổi nó trong khi tạm dừng
  • Trực quan hóa DAG:Hiển thị điểm đánh dấu điểm dừng và tạm dừng tô sáng trực tiếp trên sơ đồ DAG
  • luồng nhật ký:Bảng nhật ký kiểu thiết bị đầu cuối ở cuối trang chi tiết thực thi

Kiểm soát việc gỡ lỗi qua RTTT

Đằng sau bảng gỡ lỗi là một tập hợp các điểm kết thúc RIT bạn có thể gọi trực tiếp khi soạn thảo một bản chẩn đoán (cũng giao diện mà bảng điều khiển dùng):

Điểm kết thúcMục đích
GET /debug/stateTrạng thái gỡ lỗi: nếu tạm dừng, danh sách điểm ngắt, và điểm tạm dừng hiện thời
GET /debug/contextCác biến hiện tại, đầu ra bước, và kết quả tóm tắt
POST /debug/pauseYêu cầu tạm dừng, có hiệu lực ở điểm kiểm tra tiếp theo
POST /debug/continueTiếp tục, chạy tới điểm ngắt tiếp theo
POST /debug/stepBước: Chỉ tiến tới điểm kiểm tra tiếp theo
PUT /debug/breakpointsThay thế toàn bộ điểm ngắt (có thể thay đổi bất cứ lúc nào trong khi chạy)
PUT /debug/break-on-errorBật/ tắt sử dụng ngoại lệ trong khi chạy
GET /debug/snapshotsChụp ảnh lịch sử, hoặc lấy một cái duy nhất theo chỉ mục
POST /debug/variablesSửa đổi biến khi bị dừng

Tiền tố là /api/executions/{executionId}Thí dụ:

bash
# 给 fetch_data 步骤加断点,再加一个"出错即停"的一次性断点
curl -X PUT https://braidrun.com/api/executions/<execution-id>/debug/breakpoints \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "breakpoints": [
      {"point": "before_step", "stepName": "fetch_data"},
      {"point": "step_error", "once": true}
    ]
  }'

# 暂停 / 单步 / 继续
curl -X POST https://braidrun.com/api/executions/<execution-id>/debug/pause \
  -H "Authorization: Bearer <token>"
curl -X POST https://braidrun.com/api/executions/<execution-id>/debug/step \
  -H "Authorization: Bearer <token>"
curl -X POST https://braidrun.com/api/executions/<execution-id>/debug/continue \
  -H "Authorization: Bearer <token>"

Thay đổi biến khi bị dừng, sau đó tiếp tục

Một kịch bản điển hình: một bước xuôi tính toán một tham số rõ ràng sai; một khi điểm ngắt dừng, bạn sửa đổi biến trực tiếp, nhấn "Tiếp tục", và những bước sau chạy với giá trị mới, tiết kiệm được cả một bản chạy lại. Trong bảng điều khiển, nhấn đôi một giá trị biến để sửa đổi nó; bằng cách sử dụng REST POST /debug/variablesvà chỉnh sửa chỉ được chấp nhận khi cuộc hành hình tạm dừng.

bash
# 暂停态下把变量改对,然后 continue
curl -X POST https://braidrun.com/api/executions/<execution-id>/debug/variables \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{"variables": {"target_country": "US"}}'

Tên

Một khi một cuộc thực hiện đạt trạng thái thiết bị cuối (hoàn tất, bị lỗi, hoặc bị hủy bỏ), bạn có thể chạy lại từ một bước đã cho trước: nhấn vào « Chạy lại từ bước này » trong dòng thời gian thực hiện hay bảng chi tiết bước. Kết quả của các bước trước khi chạy lại điểm được giữ như-là, hoàn thành các bước mLM không gọi các mô hình một lần nữa, và do đó không có lời buộc tội trùng lặp được thực hiện.

  • Điểm chạy lại phải là một bước này thực sự chạy; chạy lại từ bước đầu tiên là một chạy lại đầy đủ và không bị hạn chế này
  • Bạn không thể chạy lại khi cuộc hành hình vẫn còn chạy — hủy bỏ nó hoặc chờ nó kết thúc đầu tiên
  • RORT:POST /api/executions/{executionId}/restart-from-step; rời khỏi bướcTên

Chẩn đoán điểm + chỉnh sửa biến + chạy lại từ bước bị lỗi, được dùng cùng nhau, là cách tiết kiệm chi phí để gỡ lỗi workflow dài: giữ kết quả của vài chục bước đầu tiên và chỉ trả tiền cho phần thất bại.

Hạn chế hiện tại

  • Chủ yếu tạm dừng ở ranh giới bước và các điểm chính của nút phức hợp
  • không treo bên trong luồng công cụ/mã thông báo
  • Đồng thời cấp cao nhất sẽ được tuần tự hóa khi bật tính năng gỡ lỗi

Bước tiếp theo

  • Kế hoạch — Kết nối quy trình làm việc đã gỡ lỗi với cron/webhook
  • Đã Cập nhật — Sau khi gỡ lỗi, hãy quyết định bước nào là bình thường