Categorias
iiiiii
Guardar y consultar losg
Descripcion
Para guardar los errores en tablas en N8N
Notas
#
Workflow-json
{ "name": "flujo de prueba para logs", "nodes": [ { "parameters": {}, "type": "n8n-nodes-base.manualTrigger", "typeVersion": 1, "position": [ -288, -32 ], "id": "e4fe31f4-e5ac-475c-9ad9-4a7792c5bb46", "name": "When clicking ‘Execute workflow’" }, { "parameters": { "url": "http://tecnolobos.com", "options": {} }, "type": "n8n-nodes-base.httpRequest", "typeVersion": 4.4, "position": [ -48, -32 ], "id": "6a9f02e9-691a-42fd-bf1b-46d67448bcd2", "name": "HTTP Request", "onError": "continueErrorOutput" }, { "parameters": { "workflowId": { "__rl": true, "value": "R456ENGDYyBZA47i", "mode": "list", "cachedResultUrl": "/workflow/R456ENGDYyBZA47i", "cachedResultName": "Guardar_logs" }, "workflowInputs": { "mappingMode": "defineBelow", "value": { "level": "error", "workflow_name": "={{ $workflow.name }}", "workflow_id": "={{ $workflow.id }}", "execution_id": "={{ $execution.id }}", "execution_mode": "={{ $execution.mode }}", "node_name": "={{ $prevNode.name }}", "message": "={{ $json.error.message }}", "error_stack": "={{ $json.error.stack }}", "context_data": "={\n\"simulaFallo\":true\n}" }, "matchingColumns": [], "schema": [ { "id": "level", "displayName": "level", "required": false, "defaultMatch": false, "display": true, "canBeUsedToMatch": true, "type": "string", "removed": false }, { "id": "workflow_name", "displayName": "workflow_name", "required": false, "defaultMatch": false, "display": true, "canBeUsedToMatch": true, "type": "string", "removed": false }, { "id": "workflow_id", "displayName": "workflow_id", "required": false, "defaultMatch": false, "display": true, "canBeUsedToMatch": true, "type": "string", "removed": false }, { "id": "execution_id", "displayName": "execution_id", "required": false, "defaultMatch": false, "display": true, "canBeUsedToMatch": true, "type": "string", "removed": false }, { "id": "execution_mode", "displayName": "execution_mode", "required": false, "defaultMatch": false, "display": true, "canBeUsedToMatch": true, "type": "string", "removed": false }, { "id": "node_name", "displayName": "node_name", "required": false, "defaultMatch": false, "display": true, "canBeUsedToMatch": true, "type": "string", "removed": false }, { "id": "message", "displayName": "message", "required": false, "defaultMatch": false, "display": true, "canBeUsedToMatch": true, "type": "string", "removed": false }, { "id": "context_data", "displayName": "context_data", "required": false, "defaultMatch": false, "display": true, "canBeUsedToMatch": true, "type": "string", "removed": false }, { "id": "error_stack", "displayName": "error_stack", "required": false, "defaultMatch": false, "display": true, "canBeUsedToMatch": true, "type": "string", "removed": false } ], "attemptToConvertTypes": false, "convertFieldsToString": true }, "options": {} }, "type": "n8n-nodes-base.executeWorkflow", "typeVersion": 1.3, "position": [ 208, 144 ], "id": "9215f42e-41df-437b-874f-4d7a3d93da36", "name": "Grabar Log", "onError": "continueRegularOutput" } ], "pinData": {}, "connections": { "When clicking ‘Execute workflow’": { "main": [ [ { "node": "HTTP Request", "type": "main", "index": 0 } ] ] }, "HTTP Request": { "main": [ [], [ { "node": "Grabar Log", "type": "main", "index": 0 } ] ] } }, "active": false, "settings": { "executionOrder": "v1", "binaryMode": "separate", "availableInMCP": false }, "versionId": "aa729438-2fe0-406b-8f71-3217c36825be", "meta": { "instanceId": "fe291777ffabf9d737d29c561fd9bdf11a3d8ba106af6fb4a8b650410061a9ea" }, "nodeGroups": [], "id": "16Uap78QdvnnR5Jv", "tags": [] }
SubWorkflow-json
{ "name": "Guardar_logs", "nodes": [ { "parameters": { "workflowInputs": { "values": [ { "name": "level" }, { "name": "workflow_name" }, { "name": "workflow_id" }, { "name": "execution_id" }, { "name": "execution_mode" }, { "name": "node_name" }, { "name": "message" }, { "name": "context_data" }, { "name": "error_stack" } ] } }, "type": "n8n-nodes-base.executeWorkflowTrigger", "typeVersion": 1.2, "position": [ -480, -96 ], "id": "a9cf8e81-51ba-480e-ac21-0d8ababe1000", "name": "When Executed by Another Workflow" }, { "parameters": { "jsCode": "const input = $input.first().json;\nlet level = null;\nlet workflow_name = input.workflow_name;\nlet message = input.message;\n\nconst validLevels = {\n error: 'error',\n warn: 'warn', \n info: 'info', \n success: 'success'\n};\n\nconsole.log('workloif_',input.workflow_id);\n\nif(input.workflow_id){\n level = validLevels[input.level?.toLowerCase()] || 'info';\n\n if(!message){\n message = 'Sin mensaje';\n }\n\n if(!workflow_name){\n workflow_name = 'unknown';\n }\n \n \n}else{\n level = null;\n workflow_name = null;\n \n}\n\n\n\nreturn {\n level: level,\n workflow_name: workflow_name,\n workflow_id: input.workflow_id ?? null,\n execution_id: input.execution_id ?? null,\n execution_mode: input.execution_mode ?? null,\n node_name: input.node_name ?? null,\n message: message ,\n context_data: input.context_data ? input.context_data : null,\n error_stack: input.error_stack ?? null,\n}" }, "type": "n8n-nodes-base.code", "typeVersion": 2, "position": [ -224, -96 ], "id": "fa59112f-fa68-4727-aebf-b21dcd7fd3e4", "name": "Validate columns" }, { "parameters": { "schema": { "__rl": true, "value": "public", "mode": "list", "cachedResultName": "public" }, "table": { "__rl": true, "value": "workflow_logs", "mode": "list", "cachedResultName": "workflow_logs" }, "columns": { "mappingMode": "defineBelow", "value": { "level": "={{ $json.level }}", "workflow_name": "={{ $json.workflow_name }}", "workflow_id": "={{ $json.workflow_id }}", "execution_id": "={{ $json.execution_id }}", "execution_mode": "={{ $json.execution_mode }}", "node_name": "={{ $json.node_name }}", "message": "={{ $json.message }}", "context_data": "={{ $json.context_data }}", "error_stack": "={{ $json.error_stack }}" }, "matchingColumns": [ "id" ], "schema": [ { "id": "id", "displayName": "id", "required": false, "defaultMatch": true, "display": true, "type": "number", "canBeUsedToMatch": true, "removed": true }, { "id": "level", "displayName": "level", "required": true, "defaultMatch": false, "display": true, "type": "string", "canBeUsedToMatch": true }, { "id": "workflow_name", "displayName": "workflow_name", "required": true, "defaultMatch": false, "display": true, "type": "string", "canBeUsedToMatch": true }, { "id": "workflow_id", "displayName": "workflow_id", "required": false, "defaultMatch": false, "display": true, "type": "string", "canBeUsedToMatch": true }, { "id": "execution_id", "displayName": "execution_id", "required": false, "defaultMatch": false, "display": true, "type": "string", "canBeUsedToMatch": true }, { "id": "execution_mode", "displayName": "execution_mode", "required": false, "defaultMatch": false, "display": true, "type": "string", "canBeUsedToMatch": true }, { "id": "node_name", "displayName": "node_name", "required": false, "defaultMatch": false, "display": true, "type": "string", "canBeUsedToMatch": true }, { "id": "message", "displayName": "message", "required": true, "defaultMatch": false, "display": true, "type": "string", "canBeUsedToMatch": true }, { "id": "context_data", "displayName": "context_data", "required": false, "defaultMatch": false, "display": true, "type": "object", "canBeUsedToMatch": true }, { "id": "error_stack", "displayName": "error_stack", "required": false, "defaultMatch": false, "display": true, "type": "string", "canBeUsedToMatch": true }, { "id": "created_at", "displayName": "created_at", "required": false, "defaultMatch": false, "display": true, "type": "dateTime", "canBeUsedToMatch": true, "removed": true } ], "attemptToConvertTypes": false, "convertFieldsToString": false }, "options": {} }, "type": "n8n-nodes-base.postgres", "typeVersion": 2.6, "position": [ 224, -192 ], "id": "41279419-e05b-4a1f-bd6e-6bc23b8ddab0", "name": "Insert rows in a table", "credentials": { "postgres": { "id": "7GEn0NIPS83s2Cr8", "name": "Postgres n8n" } } }, { "parameters": { "conditions": { "options": { "caseSensitive": true, "leftValue": "", "typeValidation": "strict", "version": 3 }, "conditions": [ { "id": "fa32495e-ada4-405c-8468-461be757cb1a", "leftValue": "={{ $json.workflow_id }}", "rightValue": "", "operator": { "type": "string", "operation": "notEmpty", "singleValue": true } } ], "combinator": "and" }, "options": {} }, "type": "n8n-nodes-base.if", "typeVersion": 2.3, "position": [ 16, -96 ], "id": "0075ec27-0305-43f6-a0ba-c3d2633ce288", "name": "If" }, { "parameters": {}, "type": "n8n-nodes-base.noOp", "typeVersion": 1, "position": [ 208, 16 ], "id": "22d2239e-ba03-4461-87b3-3c219cd2b266", "name": "No Operation, do nothing" } ], "pinData": {}, "connections": { "When Executed by Another Workflow": { "main": [ [ { "node": "Validate columns", "type": "main", "index": 0 } ] ] }, "Validate columns": { "main": [ [ { "node": "If", "type": "main", "index": 0 } ] ] }, "If": { "main": [ [ { "node": "Insert rows in a table", "type": "main", "index": 0 } ], [ { "node": "No Operation, do nothing", "type": "main", "index": 0 } ] ] } }, "active": true, "settings": { "executionOrder": "v1", "binaryMode": "separate", "availableInMCP": false }, "versionId": "47b93fd7-62fd-4179-a9f1-b01a857e4727", "meta": { "templateCredsSetupCompleted": true, "instanceId": "fe291777ffabf9d737d29c561fd9bdf11a3d8ba106af6fb4a8b650410061a9ea" }, "nodeGroups": [], "id": "R456ENGDYyBZA47i", "tags": [] }






















