¿Cómo configurar MAX_ATTEMPT de las tareas en la cola de Google Cloud en el código?
Cuando creo una nueva tarea, quiero establecer cuántas repeticiones deben ser de una tarea determinada, ¿puedo hacerlo desde el código a continuación?
Tengo una cola en la nube de Google como aquí:
const {CloudTasksClient} = require('@google-cloud/tasks'); const client = new CloudTasksClient(); async function createHttpTask() { const project = 'my-project-id'; const queue = 'my-queue'; const location = 'us-central1'; const url = 'https://example.com/taskhandler'; const payload = 'Hello, World!'; const inSeconds = 180; const parent = client.queuePath(project, location, queue); const task = { httpRequest: { httpMethod: 'POST', url, }, }; if (payload) { task.httpRequest.body = Buffer.from(payload).toString('base64'); } console.log('Sending task:'); console.log(task); const request = {parent: parent, task: task}; await client.createTask(request); } createHttpTask();Desde la documentación de Google Cloud, veo que puedo hacerlo desde la consola, para toda la cola: https://cloud.google.com/tasks/docs/configuring-queues#retry , pero quiero configurar esto dinámicamente para el Tareas
¡Gracias por cualquier ayuda!
Desafortunadamente, la respuesta es no. No puede establecer parámetros de reintento en tareas individuales. Hago esta afirmación mirando este documento:
Recurso REST: proyectos.ubicaciones.colas
que es la API REST para crear colas de tareas. Allí, en la documentación de retryConfig , leemos:
Para tareas creadas con Cloud Tasks: la configuración de reintentos a nivel de cola se aplica a todas las tareas de la cola que se crearon con Cloud Tasks. La configuración de reintento no se puede establecer en tareas individuales.