Fehlerprotokoll-Überwachung mit Slack-Benachrichtigungen und automatischer Fehler-Ticket-Erstellung

Experte

Dies ist ein DevOps-Bereich Automatisierungsworkflow mit 20 Nodes. Hauptsächlich werden If, Set, Ssh, Code, Jira und andere Nodes verwendet. Fehlerprotokoll-Überwachung mit SSH, Slack-Benachrichtigungen und Jira-Ticket-Erstellung

Voraussetzungen
  • Slack Bot Token oder Webhook URL

Kategorie

Workflow-Vorschau
Visualisierung der Node-Verbindungen, mit Zoom und Pan
Workflow exportieren
Kopieren Sie die folgende JSON-Konfiguration und importieren Sie sie in n8n
{
  "id": "VbL8CupBzmcRolP4",
  "meta": {
    "instanceId": "dd69efaf8212c74ad206700d104739d3329588a6f3f8381a46a481f34c9cc281",
    "templateCredsSetupCompleted": true
  },
  "name": "Error Log Monitor with Slack Alerts & Auto Bug Ticket Creation",
  "tags": [],
  "nodes": [
    {
      "id": "44f0eba7-b92a-47f0-a7b0-c90eb5d9e8f0",
      "name": "Manueller Trigger",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -480,
        60
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "19a920cb-28da-4388-80f2-a1b7bd87badb",
      "name": "Konfiguration setzen",
      "type": "n8n-nodes-base.set",
      "position": [
        -260,
        160
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "cf9f1b38-541c-4311-9fea-c66d7fd39473",
      "name": "Fehlerprotokolle lesen",
      "type": "n8n-nodes-base.ssh",
      "position": [
        -40,
        160
      ],
      "parameters": {
        "command": "tail -n 50 /var/log/application/error.log | grep -E '(CRITICAL|ERROR|FATAL)' || echo 'No critical errors found'",
        "authentication": "privateKey"
      },
      "credentials": {
        "sshPrivateKey": {
          "id": "ilPh8oO4GfSlc0Qy",
          "name": "SSH Password account - test "
        }
      },
      "typeVersion": 1
    },
    {
      "id": "87962f71-2a7b-4913-b660-c3b1d7ee328d",
      "name": "Protokolle parsen",
      "type": "n8n-nodes-base.code",
      "position": [
        400,
        160
      ],
      "parameters": {
        "jsCode": "const logOutput = $input.first().json.stdout || '';\nconst lines = logOutput.split('\\n').filter(line => line.trim() !== '' && line !== 'No critical errors found');\n\nconst errors = [];\n\nlines.forEach((line, index) => {\n  let errorLevel = 'ERROR';\n  \n  if (line.includes('CRITICAL') || line.includes('FATAL')) {\n    errorLevel = 'CRITICAL';\n  }\n  \n  const timestamp = new Date().toISOString();\n  const errorId = `ERR-${Date.now()}-${index}`;\n  \n  errors.push({\n    id: errorId,\n    level: errorLevel,\n    message: line.trim(),\n    timestamp: timestamp,\n    raw_log: line\n  });\n});\n\nreturn errors.map(error => ({ json: error }));"
      },
      "typeVersion": 2
    },
    {
      "id": "093e59c5-8c25-4c70-9f61-418cfded5f40",
      "name": "Wenn Kritischer Fehler",
      "type": "n8n-nodes-base.if",
      "position": [
        620,
        160
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "leftValue": "={{ $json.level }}",
            "operation": "equal",
            "rightValue": "CRITICAL"
          }
        }
      },
      "typeVersion": 2
    },
    {
      "id": "0ca2c626-4dd7-42f8-837d-559c9df7657b",
      "name": "Send Slack Alert",
      "type": "n8n-nodes-base.slack",
      "position": [
        840,
        -180
      ],
      "webhookId": "a6dc2a87-e06c-463e-b63c-c08f8bf457ca",
      "parameters": {
        "text": "🚨 CRITICAL ERROR DETECTED",
        "select": "channel",
        "channelId": {
          "__rl": true,
          "mode": "id",
          "value": "C0987654"
        },
        "otherOptions": {}
      },
      "credentials": {
        "slackApi": {
          "id": "MQ0fgwuS8AzfwFvy",
          "name": "Slack account - test "
        }
      },
      "typeVersion": 2
    },
    {
      "id": "05e1b571-702b-4744-a3b7-38300058e3ff",
      "name": "Create Jira Ticket",
      "type": "n8n-nodes-base.jira",
      "position": [
        840,
        160
      ],
      "parameters": {
        "project": {
          "mode": "name",
          "value": "BUG"
        },
        "summary": "Critical Error: {{ $json.id }}",
        "issueType": {
          "mode": "name",
          "value": "Bug"
        },
        "additionalFields": {
          "labels": [
            "auto-generated",
            "critical-error"
          ],
          "priority": {
            "mode": "name",
            "value": "Highest"
          },
          "description": "**Error Details:**\\n\\nError ID: {{ $json.id }}\\nLevel: {{ $json.level }}\\nTimestamp: {{ $json.timestamp }}\\n\\n**Error Message:**\\n```\\n{{ $json.message }}\\n```\\n\\n**Raw Log:**\\n```\\n{{ $json.raw_log }}\\n```\\n\\n*This ticket was automatically created by the Error Monitoring System.*"
        }
      },
      "credentials": {
        "jiraSoftwareCloudApi": {
          "id": "cP7JyAE1RB0zcBon",
          "name": "Jira SW Cloud  - test"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "0b13473e-63de-4874-8d9e-843cc8e51c1d",
      "name": "Nicht-kritische Benachrichtigung senden",
      "type": "n8n-nodes-base.slack",
      "position": [
        860,
        520
      ],
      "webhookId": "7fdc3628-087e-4fc3-ba38-56c54461b293",
      "parameters": {
        "text": "⚠️ Error Detected: {{ $json.level }}",
        "select": "channel",
        "channelId": {
          "__rl": true,
          "mode": "id",
          "value": "C098765"
        },
        "otherOptions": {}
      },
      "credentials": {
        "slackApi": {
          "id": "MQ0fgwuS8AzfwFvy",
          "name": "Slack account - test "
        }
      },
      "typeVersion": 2
    },
    {
      "id": "4374ae68-f2a2-46f1-82e9-a98e3dc7886f",
      "name": "Auf alle Protokolle warten",
      "type": "n8n-nodes-base.wait",
      "position": [
        180,
        160
      ],
      "webhookId": "fdde8463-2899-4169-891b-7a5df07b4f34",
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "d90c28f1-6013-4e04-b676-7f8d831ab1d3",
      "name": "Notiz",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -280,
        40
      ],
      "parameters": {
        "color": 5,
        "width": 160,
        "height": 280,
        "content": "Configures basic parameters"
      },
      "typeVersion": 1
    },
    {
      "id": "7e3948e4-5ac8-4a98-a45d-5c8097208b46",
      "name": "Notiz1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -500,
        -20
      ],
      "parameters": {
        "color": 4,
        "width": 150,
        "height": 220,
        "content": "For testing"
      },
      "typeVersion": 1
    },
    {
      "id": "702b64fb-c7b9-44b6-9d5f-d3597a2d366b",
      "name": "Notiz2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -500,
        300
      ],
      "parameters": {
        "color": 3,
        "width": 150,
        "height": 220,
        "content": "Runs every 5 minutes automatically"
      },
      "typeVersion": 1
    },
    {
      "id": "0ba8b489-3f92-4d0a-93f7-121aaca95771",
      "name": "Zeitplan Alle 5min",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -480,
        380
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "minutes"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "2250de6b-468a-49bb-a6ef-76be482fe3a9",
      "name": "Notiz3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        360,
        40
      ],
      "parameters": {
        "color": 3,
        "width": 160,
        "height": 280,
        "content": "JavaScript code to parse and categorize errors"
      },
      "typeVersion": 1
    },
    {
      "id": "2231a875-1367-47d0-aab0-7a4fcc03fe5c",
      "name": "Notiz4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        140,
        40
      ],
      "parameters": {
        "color": 6,
        "width": 160,
        "height": 280,
        "content": "Wait for all error logs read"
      },
      "typeVersion": 1
    },
    {
      "id": "f3c58543-431e-40aa-9e30-f5bc0a181c0d",
      "name": "Notiz5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -60,
        40
      ],
      "parameters": {
        "width": 160,
        "height": 280,
        "content": "SSH into server and reads error logs"
      },
      "typeVersion": 1
    },
    {
      "id": "8e5766d8-d40b-4867-8a17-88fdf9a40b29",
      "name": "Notiz6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        840,
        400
      ],
      "parameters": {
        "color": 5,
        "width": 160,
        "height": 260,
        "content": "Sends simple alert for non-critical errors"
      },
      "typeVersion": 1
    },
    {
      "id": "c71bc4f9-a96e-4b08-beba-5b3c3bce86c7",
      "name": "Notiz7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        820,
        40
      ],
      "parameters": {
        "width": 160,
        "height": 260,
        "content": "Auto-creates bug ticket for critical errors"
      },
      "typeVersion": 1
    },
    {
      "id": "fa119483-66e9-40e5-9e50-4837807f50e0",
      "name": "Notiz8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        800,
        -300
      ],
      "parameters": {
        "color": 6,
        "width": 160,
        "height": 280,
        "content": " Sends detailed alert for critical errors"
      },
      "typeVersion": 1
    },
    {
      "id": "7f07dd84-a237-4b62-9e32-7b431c844152",
      "name": "Notiz9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        580,
        40
      ],
      "parameters": {
        "color": 4,
        "width": 160,
        "height": 280,
        "content": "Filters critical errors from regular errors\n"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "9ee70159-d6b0-4271-bda9-3ab79401d38e",
  "connections": {
    "87962f71-2a7b-4913-b660-c3b1d7ee328d": {
      "main": [
        [
          {
            "node": "IF Kritischer Fehler",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "19a920cb-28da-4388-80f2-a1b7bd87badb": {
      "main": [
        [
          {
            "node": "cf9f1b38-541c-4311-9fea-c66d7fd39473",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "44f0eba7-b92a-47f0-a7b0-c90eb5d9e8f0": {
      "main": [
        [
          {
            "node": "19a920cb-28da-4388-80f2-a1b7bd87badb",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "cf9f1b38-541c-4311-9fea-c66d7fd39473": {
      "main": [
        [
          {
            "node": "4374ae68-f2a2-46f1-82e9-a98e3dc7886f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "0ca2c626-4dd7-42f8-837d-559c9df7657b": {
      "main": [
        []
      ]
    },
    "IF Kritischer Fehler": {
      "main": [
        [
          {
            "node": "0ca2c626-4dd7-42f8-837d-559c9df7657b",
            "type": "main",
            "index": 0
          },
          {
            "node": "05e1b571-702b-4744-a3b7-38300058e3ff",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "0b13473e-63de-4874-8d9e-843cc8e51c1d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "4374ae68-f2a2-46f1-82e9-a98e3dc7886f": {
      "main": [
        [
          {
            "node": "87962f71-2a7b-4913-b660-c3b1d7ee328d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "05e1b571-702b-4744-a3b7-38300058e3ff": {
      "main": [
        []
      ]
    },
    "0ba8b489-3f92-4d0a-93f7-121aaca95771": {
      "main": [
        [
          {
            "node": "19a920cb-28da-4388-80f2-a1b7bd87badb",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "0b13473e-63de-4874-8d9e-843cc8e51c1d": {
      "main": [
        []
      ]
    }
  }
}
Häufig gestellte Fragen

Wie verwende ich diesen Workflow?

Kopieren Sie den obigen JSON-Code, erstellen Sie einen neuen Workflow in Ihrer n8n-Instanz und wählen Sie "Aus JSON importieren". Fügen Sie die Konfiguration ein und passen Sie die Anmeldedaten nach Bedarf an.

Für welche Szenarien ist dieser Workflow geeignet?

Experte - DevOps

Ist es kostenpflichtig?

Dieser Workflow ist völlig kostenlos. Beachten Sie jedoch, dass Drittanbieterdienste (wie OpenAI API), die im Workflow verwendet werden, möglicherweise kostenpflichtig sind.

Workflow-Informationen
Schwierigkeitsgrad
Experte
Anzahl der Nodes20
Kategorie1
Node-Typen10
Schwierigkeitsbeschreibung

Für fortgeschrittene Benutzer, komplexe Workflows mit 16+ Nodes

Autor
Oneclick AI Squad

Oneclick AI Squad

@oneclick-ai

The AI Squad Initiative is a pioneering effort to build, automate and scale AI-powered workflows using n8n.io. Our mission is to help individuals and businesses integrate AI agents seamlessly into their daily operations from automating tasks and enhancing productivity to creating innovative, intelligent solutions. We design modular, reusable AI workflow templates that empower creators, developers and teams to supercharge their automation with minimal effort and maximum impact.

Externe Links
Auf n8n.io ansehen

Diesen Workflow teilen

Kategorien

Kategorien: 34