Depuración y administración de orquestaciones mediante el panel de planificación de Durable Task

El panel Programador de tareas duraderas le permite observar orquestaciones en ejecución, inspeccionar el historial de ejecución y las entradas y salidas de actividad, y administrar el ciclo de vida de orquestación (pausar, reanudar, finalizar), todo desde un explorador.

El panel está disponible en dos entornos:

Medio ambiente URL Autenticación
Emulador local http://localhost:8082 Ninguno requerido
Azure https://dashboard.durabletask.io/?endpoint=<SCHEDULER_ENDPOINT>&taskhub=<TASK_HUB_NAME> Requiere el rol de Colaborador de datos de Durable Task

Para obtener más información sobre el emulador, consulte Emulador para el desarrollo local.

En este artículo aprenderá a:

  • Acceda al panel localmente o en Azure.
  • Asigne a su identidad de desarrollador el rol de Colaborador de datos de Durable Task.
  • Supervise el estado de orquestación, filtre las instancias e inspeccione el historial de ejecución.
  • Administrar orquestaciones (pausar, reanudar, detener, activar eventos).

Prerrequisitos

Antes de empezar:

Acceso al panel localmente

Si usa el emulador de Durable Task Scheduler, el panel está disponible en:

http://localhost:8082

No se necesita autenticación ni asignación de roles para el desarrollo local.

Asignar roles de acceso al tablero (Azure)

Para tener acceso al panel de un programador hospedado en Azure, asigne el rol de Colaborador de datos de Durable Task a su identidad de desarrollador (correo electrónico).

  1. Establezca el usuario asignado a la identidad del desarrollador.

    assignee=$(az ad user show --id "[email protected]" --query "id" --output tsv)
    
  2. Establezca el ámbito. Conceder acceso en el ámbito del programador proporciona acceso a todas las centrales de tareas de ese programador.

    Central de tareas

    scope="/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.DurableTask/schedulers/SCHEDULER_NAME/taskHubs/TASK_HUB_NAME"
    

    Planificador

    scope="/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.DurableTask/schedulers/SCHEDULER_NAME"
    
  3. Conceder acceso. Ejecute el comando siguiente para crear la asignación de roles y conceder acceso.

    az role assignment create \
      --assignee "$assignee" \
      --role "Durable Task Data Contributor" \
      --scope "$scope"
    

    Salida prevista

    En el ejemplo de salida siguiente, se muestra una identidad de desarrollador asignada con el rol Colaborador de datos de tareas duraderas a nivel del programador:

    {
      "condition": null,
      "conditionVersion": null,
      "createdBy": "YOUR_DEVELOPER_CREDENTIAL_ID",
      "createdOn": "2024-12-20T01:36:45.022356+00:00",
      "delegatedManagedIdentityResourceId": null,
      "description": null,
      "id": "/subscriptions/YOUR_SUBSCRIPTION_ID/resourceGroups/YOUR_RESOURCE_GROUP/providers/Microsoft.DurableTask/schedulers/YOUR_DTS_NAME/providers/Microsoft.Authorization/roleAssignments/ROLE_ASSIGNMENT_ID",
      "name": "ROLE_ASSIGNMENT_ID",
      "principalId": "YOUR_DEVELOPER_CREDENTIAL_ID",
      "principalName": "YOUR_EMAIL",
      "principalType": "User",
      "resourceGroup": "YOUR_RESOURCE_GROUP",
      "roleDefinitionId": "/subscriptions/YOUR_SUBSCRIPTION/providers/Microsoft.Authorization/roleDefinitions/ROLE_DEFINITION_ID",
      "roleDefinitionName": "Durable Task Data Contributor",
      "scope": "/subscriptions/YOUR_SUBSCRIPTION/resourceGroups/YOUR_RESOURCE_GROUP/providers/Microsoft.DurableTask/schedulers/YOUR_DTS_NAME",
      "type": "Microsoft.Authorization/roleAssignments",
      "updatedBy": "YOUR_DEVELOPER_CREDENTIAL_ID",
      "updatedOn": "2024-12-20T01:36:45.022356+00:00"
    }
    
  4. Después de conceder acceso, abra el panel en:

    https://dashboard.durabletask.io/?endpoint=<SCHEDULER_ENDPOINT>&taskhub=<TASK_HUB_NAME>
    

    Reemplace por <SCHEDULER_ENDPOINT> el punto de conexión del programador (por ejemplo, https://myscheduler.westus2.durabletask.io) y <TASK_HUB_NAME> por el nombre del centro de tareas.

    Como alternativa, vaya a https://dashboard.durabletask.io/ y escriba el punto de conexión del programador y el nombre del centro de tareas en el formulario de conexión.

Nota:

En la siguiente instrucción se muestra una asignación de roles con ámbito de una central de tareas específica. Si necesita acceso a todos los centros de tareas de un programador, realice la asignación en el nivel del programador.

  1. Vaya al recurso Programador de tareas durables en el portal.

  2. Haga clic en un nombre de la central de tareas.

  3. En el menú izquierdo, seleccione Control de acceso (IAM) .

  4. Haga clic en Agregar para agregar una asignación de roles.

    Captura de pantalla de agregar la asignación de roles en el panel de control de acceso del portal.

  5. Busque y seleccione Colaborador de datos de Durable Task. Haga clic en Next.

    Recorte de pantalla de la selección de la asignación de roles Colaborador de datos de Durable Task en el portal.

  6. En la pestaña Miembros, en Asignar acceso a, seleccione Usuario, grupo o entidad de servicio.

  7. En Miembros, haga clic en + Seleccionar miembros.

  8. En el panel Seleccionar miembros, busque el nombre o el correo electrónico:

    Recorte de pantalla de la selección del tipo de identidad administrada asignada por el usuario en el portal.

  9. Elija el correo electrónico y haga clic en el botón Seleccionar.

  10. Haga clic en Revisar y asignar para terminar de asignar el rol.

  11. Una vez asignado el rol, haga clic en Información general en el menú izquierdo del recurso del centro de tareas y vaya a la dirección URL del panel ubicada en la sección Essentials superior.

Supervisión del centro de tareas a través del panel

El panel permite supervisar el progreso de la orquestación y revisar el historial de ejecución. Desde la página principal del panel de control, puede encontrar las orquestaciones, las entidades, las programaciones, los trabajadores y las métricas de su concentrador de tareas, así como los agentes de IA (actualmente en versión preliminar).

Panel de información general de las orquestaciones

Para ver las orquestaciones, haga clic en el nombre del centro de tareas o en Orquestaciones en el menú lateral.

Captura de pantalla de la página principal del panel con vínculos a centros de tareas, historial de orquestaciones, entidades, programaciones, trabajadores, métricas y agentes de inteligencia artificial.

En el panel de información general de Orchestrations, puede hacer lo siguiente:

  • Revise una lista de instancias de orquestación.
  • Restrinja las orquestaciones a través de la barra de búsqueda o los filtros.
  • Cree una nueva orquestación.
  • Copie un enlace para compartir del panel.
  • Configure los intervalos de actualización automática de la lista de orquestaciones.

Captura de pantalla del panel que muestra una lista de orquestaciones.

La información de orquestación se presenta con las siguientes columnas predeterminadas.

Category Descripción
Id. de instancia Busque una instancia de orquestación específica por su identificador único.
Nombre Filtre por el nombre del tipo de orquestación.
Situación Filtre por estado en tiempo de ejecución (En ejecución, Completado, Error, Finalizado, Pendiente, Suspendido).
Etiquetas Filtre por las etiquetas aplicadas a la instancia de orquestación.
Creado Fecha y hora en que se creó la orquestación.

Puede filtrar la lista de orquestaciones mediante los criterios siguientes.

Captura de pantalla del panel que muestra el historial de orquestación y el estado con opciones de filtro.

Category Descripción
Nombre de la orquestación Filtre por el nombre del tipo de orquestación.
Estado del entorno de ejecución Filtre por estado en tiempo de ejecución (En ejecución, Completado, Error, Finalizado, Pendiente, Suspendido).
Filtro de etiquetas Busque orquestaciones por clave o valor de etiqueta.
Creado desde/Creado hasta Restrinja los resultados a un período de tiempo.

Desencadene una actualización de la lista de orquestaciones mediante:

  • Haga clic en el icono de actualización para una actualización manual.

  • Active o desactive Automático y seleccione el intervalo para actualizar automáticamente la lista.

    Captura de pantalla del interruptor de actualización automática y del icono de actualización manual.

Creación de una nueva orquestación

Puede crear una nueva orquestación desde el panel de Durable Task Scheduler.

  1. En el panel Información general sobre orquestaciones , haga clic en + Nueva orquestación.

  2. Rellene los datos en el formulario Nueva orquestación.

    Captura de pantalla del formulario:

    Campo Descripción
    Nombre de la orquestación Seleccione una orquestación en la lista desplegable o escriba un nombre de orquestación personalizado.
    Id. de instancia Optional. Los identificadores de instancia se generan automáticamente. Tanto si crea uno como si lo deja generar automáticamente, los identificadores de instancia están en formato ASCII.
    Versión Optional. Escriba el número de versión aplicable.
    Entrada Optional. Escriba la entrada en formato JSON.
    Inicio programado Optional. Seleccione la fecha y hora de inicio de la orquestación.
    Etiquetas Optional. Escriba las etiquetas de clave o valor asociadas a la orquestación.
  3. Haga clic en Crear.

    Puede ver la nueva orquestación en la lista.

Detalles de orquestación

Haga clic en una instancia de orquestación para diagnosticar problemas o obtener visibilidad del estado de una orquestación.

Use las pestañas Escala de tiempo, Historial y Flujo para ver sus detalles de ejecución y el progreso de la actividad. La pestaña Escala de tiempo está abierta de forma predeterminada.

  • La pestaña Escala de tiempo muestra los intervalos de una orquestación en ejecución.

    Captura de pantalla de la cronología de la ejecución de la orquestación.

    Seleccione una actividad para ver su entrada y salida.

    Captura de pantalla del panel donde puede ver la entrada, salida y estado de una actividad.

  • La pestaña Historial ofrece una lista de todos los eventos de una orquestación, con sus marcas de tiempo.

    Captura de pantalla del panel que muestra el historial de eventos de una orquestación individual.

  • La pestaña Flujo traza visualmente el flujo de ejecución de la orquestación.

    Captura de pantalla del flujo de eventos de una orquestación individual.

    También puede ver la entrada y salida de una actividad haciendo clic en Ver.

    Captura de pantalla del panel donde puede ver la entrada, salida y estado de una actividad a través de la vista de flujo.

Administración de orquestaciones

Puede gestionar el ciclo de vida de la orquestación desde el panel. En el panel Orquestaciones , seleccione un identificador de instancia para acceder a las siguientes acciones:

Captura de pantalla del panel que muestra los botones Purgar, Reiniciar, Finalizar, Suspender y Reanudar para administrar orquestaciones.

  • Reanudar: Reanude una orquestación suspendida anteriormente.
  • Suspender: Pausar una orquestación en ejecución. Permanece en memoria, pero detiene el procesamiento de eventos hasta que se reanuda.
  • Reiniciar: Reinicie una orquestación que se ejecutó anteriormente.
  • Finalizar: detenga inmediatamente una orquestación con una cadena de motivo opcional.
  • Purga: Eliminar la instancia de orquestación.

Explore en profundidad una orquestación individual para acceder a la acción Generar evento. Esta acción envía un evento externo con nombre (con una carga JSON opcional) a una orquestación en ejecución o suspendida.

Captura de pantalla del panel que muestra los botones Purgar, Reiniciar, Finalizar y Generar evento para administrar orquestaciones.

Entidades

Seleccione Entidades en el menú izquierdo para ver las entidades que ha creado.

Captura de pantalla de las entidades que ha creado y algunas herramientas de administración para ellas.

Haga clic en una entidad individual de la lista para ver sus detalles. Desde aquí, puede revisar:

  • Cuándo se modificó por última vez
  • Cuándo se ejecutó la última operación
  • Si está bloqueado y quién lo bloqueó
  • Su tamaño de trabajo pendiente
  • El estado de la entidad en JSON o en código sin formato

Captura de pantalla de una entidad concreta de la que se realiza un seguimiento en el panel de Durable Task Scheduler.

También puede enviar una señal a la entidad. Haga clic en Señal en la esquina superior derecha y cree el mensaje de señal.

Captura de pantalla de la ventana para enviar una señal a tu entidad individual.

Agentes (versión preliminar)

Nota:

La revisión de las sesiones del agente a través del panel Programador de tareas duraderas se encuentra actualmente en versión preliminar.

Seleccione Agentes en el menú izquierdo para supervisar las sesiones del agente desencadenadas por la aplicación en el programador. Haga clic en una sesión de agente para ver los datos sobre el uso de tokens, como:

  • Número de tokens del prompt que ha utilizado.
  • Número de tokens de finalización que ha usado.
  • Número total de tokens usados durante la sesión del agente.

También puede ver el historial del chat del agente y la cronología.

Captura de pantalla de las sesiones del agente desencadenadas por la aplicación.

Programaciones

Seleccione Programaciones en el menú de la izquierda para ver las programaciones que ha creado. En el panel programaciones, puede pausar, reanudar o eliminar una programación. También puede hacer clic en + Crear programación para crear una programación a través de la interfaz de usuario del panel.

Captura de pantalla de las programaciones que ha creado y algunas herramientas de administración para ellas.

Trabajadores y métricas

Seleccione Workers & Metrics (Trabajadores y métricas ) en el menú izquierdo para ver:

  • Todas sus actividades, orquestadores y entidades pendientes, activos o almacenados.
  • Trabajadores conectados.

Captura de pantalla de una vista general de colas de elementos de trabajo y trabajadores conectados.

Pasos siguientes

Para el Programador de tareas duraderas en Durable Functions:

Para el Programador de tareas duraderas de los SDK de Tareas duraderas: