Нотатка у трасуванні

Вузол, який пише в трасування виконання ваш рядок із підставленими значеннями з виконання.

3 хв читання

Нотатка у трасуванні залишає нотатку в трасуванні виконання. Нотатка — рядок, який пишете ви, зі значеннями з виконання всередині, і флоу йде далі.

Вузол
Нотатка у трасуванні
Тип
log
Категорія
Рішення
Порти
  • Типовий default підключення обовʼязкове
Завершує шлях
Ні

Що робить вузол

Коли виконання доходить до вузла, вузол заповнює підстановки свого повідомлення, пише нотатку в трасування зі своїм рівнем і виходить через Типовий.

Підстановка — шлях у подвійних фігурних дужках: {{ input.plan }}, {{ nodes.check.output.met }}. На її місце стає значення за цим шляхом.

  • Число й текст пишуться як є. Прапорець пишеться як 1 для true і ніяк для false.

  • Підстановка, шлях якої нічого не знаходить або знаходить список, об’єкт чи null, лишається в нотатці такою, якою її набрано.

Нотатка — частина трасування, і нічого більше: це не запис журналу аудиту, вона не піднімає сповіщень і не надсилає вебхуків. Вона зберігається стільки ж, скільки трасування, — за замовчуванням 30 днів.

Коли використовувати

  • Побачити значення з виконання. Виходи вузлів у трасуванні не зберігаються, тому нотатка — спосіб їх туди записати.

  • Позначити словами для людини, якою гілкою пішло виконання.

Не пишіть у нотатку те, що не можна зберігати: значення входу, записане в повідомлення, зберігається в трасуванні відкритим текстом.

Налаштування

НалаштуванняДля чого воно
messageРядок, який пишеться в трасування, не довший за 500 символів. Шлях у подвійних фігурних дужках замінюється значенням із виконання за цим шляхом.
levelinfo, warning або error — як рядок позначено в трасуванні. Більше від нього нічого не залежить. Вузол без рівня пише info.

У конструкторі налаштування — Повідомлення і Рівень. У нового вузла нотатка порожня, з рівнем Інформація.

Порти

Вузол має один порт, Типовий, і він обов’язковий. Флоу, в якому він нікуди не веде, не публікується.

Вихід

JSON
{ "message": "Plan: pro" }

Вихід — нотатка в тому вигляді, в якому її записано в трасування. Наступний вузол читає її як nodes.<key>.output.message.

Помилки

Помилок вузол не кидає. Підстановку, яку він не зміг заповнити, називає подія warning одразу після нотатки: unknown_path, коли шлях нічого не знаходить, type_mismatch, коли він знаходить значення, яке рядок тексту не може показати.

JSON
[
  { "type": "warning", "node_key": "note", "payload": { "reason": "unknown_path", "paths": ["context.region"] } },
  { "type": "warning", "node_key": "note", "payload": { "reason": "type_mismatch", "paths": ["input.messages"] } }
]

Налаштування перевіряються під час перевірки флоу та під час його публікації.

В API запис issues називає таку перевірку в params.detail; його code — invalid_node_config.

ПеревіркаПовідомлення в конструкторі
log_unsupported_level«{node}» використовує рівень, якого не існує.
log_invalid_messageПовідомлення «{node}» має бути текстом не довше {max} символів.

Приклад

  • Запит — Типовий → Умова
  • Умова — Виконано → Нотатка у трасуванні
  • Нотатка у трасуванні — Типовий → AI-модель
  • Умова — Не виконано → Відхилити запит
  • AI-модель — Успіх → Повернути відповідь

Нотатка нижче стоїть на гілці, яка викликає модель. У трасуванні кожного виконання, що пройшло цією гілкою, вона читається як «Plan: pro».

Plan: {{ context.plan }}

Зібрано з openapi b070e1f, sdk contract 5cc7055, php ae4a53b, node 84bc62d