تحلیل خودکار هشدارها و گزارش‌دهی در Slack با n8n

تحلیل خودکار هشدارها و گزارش‌دهی در Slack با n8n

14 دقیقه مطالعه · منتشر شده ۱۴۰۵/۴/۲۹

دانلود workflow

فایل JSON آماده import در n8n — credentialها باید در n8n شما تنظیم شوند.

  1. فایل JSON را دانلود کنید.
  2. در n8n: Workflows → Import from File.
  3. Credentialهای هر node را متصل کنید.
  4. workflow را فعال کنید.

شناسه workflow: 14376 · منبع: کاتالوگ Axeto

تحلیل هشدارها از Alertmanager و ارسال گزارش‌های تشخیصی به Slack

این گردش کار، ارزیابی اولیه هشدارها را که از Alertmanager نشأت می‌گیرند، خودکار می‌کند. داده‌های خام هشدار را به یک خلاصه مختصر قابل خواندن برای هوش مصنوعی تبدیل می‌کند، از یک عامل هوش مصنوعی برای بررسی مشکل با استفاده از ابزارهای مختلف مشاهده‌پذیری و زیرساخت استفاده می‌کند و سپس یک گزارش تشخیصی دقیق را به رشته Slack مربوطه ارسال می‌کند.

این برای تیم‌های SRE و DevOps که زیرساخت یا محیط‌های Kubernetes را مدیریت می‌کنند، بسیار مفید است. این یک تشخیص اولیه خودکار برای حوادثی که در حال حاضر از طریق Alertmanager در Slack گزارش می‌شوند، ارائه می‌دهد و امکان پاسخ‌دهی سریع‌تر را قبل از مداخله انسانی فراهم می‌کند.

نمای کلی گردش کار

1. دریافت هشدارها: یک نقطه پایانی وب‌هوک امن، داده‌های POST دریافتی از Alertmanager را دریافت می‌کند.

2. مقداردهی اولیه متغیرها: مقادیر پیکربندی ثابت، مانند UIDs منبع داده Grafana، به زمینه اجرا اضافه می‌شوند.

3. پیش‌پردازش هشدارها: هر هشدار در داده‌های دریافتی به یک فرمت ساختاریافته نرمال‌سازی می‌شود و خلاصه‌ای قابل فهم برای هوش مصنوعی، یک شناسه جلسه و یک اثر انگشت هشدار برای تطبیق رشته Slack ایجاد می‌کند.

4. بررسی هوش مصنوعی: یک عامل هوش مصنوعی، که توسط یک مدل چت OpenAI پشتیبانی می‌شود، از یک اعلان سیستمی تخصصی برای بررسی هشدار استفاده می‌کند. این عامل می‌تواند با منابع Kubernetes، Grafana (Prometheus، Loki)، DigitalOcean و GitLab تعامل داشته باشد و همچنین اطلاعاتی را از یک فروشگاه برداری Qdrant با استفاده از جاسازی‌های Gemini بازیابی کند.

5. تطبیق رشته Slack: گردش کار پیام‌های اخیر Slack را با استفاده از اثر انگشت هشدار جستجو می‌کند تا اعلان هشدار اصلی را پیدا کند.

6. ارسال گزارش: گزارش تشخیصی تولید شده توسط هوش مصنوعی به عنوان پاسخ در رشته Slack شناسایی شده ارسال می‌شود.

---

تحلیل دقیق

۱. دریافت هشدار و مقداردهی اولیه متغیرها

این بلوک اولیه، نقطه ورود گردش کار را تنظیم می‌کند و اطمینان می‌دهد که داده‌های پیکربندی لازم برای پردازش بعدی در دسترس هستند.

#### ۱.۱ دریافت هشدارها (تریگر وب‌هوک)

  • نوع نود: n8n-nodes-base.webhook
  • هدف: به عنوان تریگر اصلی عمل می‌کند و درخواست‌های POST دریافتی از Alertmanager را می‌پذیرد.
  • پیکربندی:

* متد HTTP: POST

* مسیر: alertmanager

* احراز هویت: Basic Auth (اطمینان حاصل کنید که Alertmanager با اعتبارنامه صحیح پیکربندی شده است).

  • ورودی/خروجی:

* ورودی: ندارد (این تریگر است).

* خروجی: محموله دریافتی Alertmanager (body) را به نود بعدی منتقل می‌کند.

  • مشکلات احتمالی:

* خطاهای احراز هویت در صورت نادرست بودن اعتبارنامه‌های Alertmanager.

* خطاهای فرمت محموله در صورت ارسال JSON غیرمنتظره توسط Alertmanager.

* مشکلات اتصال شبکه که مانع از رسیدن Alertmanager به وب‌هوک می‌شود.

#### ۱.۲ مقداردهی اولیه متغیرها (نود Set)

  • نوع نود: n8n-nodes-base.set
  • هدف: مقادیر پیکربندی ثابت، مانند UIDهای منبع داده Grafana، را به زمینه اجرایی تزریق می‌کند.
  • پیکربندی:

* افزودن متغیرها:

* prometheus_uid: به عنوان مثال، cb0069a2-5028-423c-b8a6-95bf3c9d39e7

* loki_uid: به عنوان مثال، grafanacloud-logs

* includeOtherFields: برای حفظ محموله ورودی Alertmanager، روی true تنظیم شود.

  • ورودی/خروجی:

* ورودی: محموله Alertmanager را از وب‌هوک دریافت می‌کند.

* خروجی: داده‌های غنی‌شده (محموله + متغیرها) را به مرحله پیش‌پردازش منتقل می‌کند.

  • مشکلات احتمالی:

* UIDهای منبع داده نادرست منجر به پرس‌وجو از نمونه‌های اشتباه Grafana توسط عامل هوش مصنوعی یا عدم بازیابی داده‌ها می‌شود.

---

۲. پیش‌پردازش هشدار

این مرحله داده‌های خام Alertmanager را به یک فرمت ساختاریافته مناسب برای تجزیه و تحلیل هوش مصنوعی تبدیل می‌کند و شناسه‌های کلیدی را برای ادغام Slack استخراج می‌کند.

#### ۲.۱ پیش‌پردازش هشدارها (نود Code)

  • نوع نود: n8n-nodes-base.code
  • هدف: محموله Alertmanager را تجزیه می‌کند و یک آیتم اجرایی جداگانه برای هر هشدار ایجاد می‌کند. خلاصه‌ای قابل فهم برای انسان، شناسه جلسه و اثر انگشت هشدار را تولید می‌کند.
  • پیکربندی:

* مدیریت ورودی: محموله را از $input.first().json.body می‌خواند یا به $input.first().json بازمی‌گردد.

* فیلتر کردن برچسب‌ها: برچسب‌های رایج و پر سر و صدا مانند alertname, endpoint, instance, job و غیره را حذف می‌کند.

* تغییر نام برچسب‌ها: خوانایی برخی برچسب‌ها را بهبود می‌بخشد (به عنوان مثال، grafana_board به Grafana Dashboard، persistentvolumeclaim به PVC).

* تولید chatInput: یک رشته چند خطی شامل وضعیت هشدار، نام، شدت، برچسب‌های باقی‌مانده، مُهر زمانی، generatorURL و توضیحات می‌سازد. این به عنوان ورودی اصلی برای عامل هوش مصنوعی عمل می‌کند.

* تولید sessionId: یک شناسه منحصر به فرد ایجاد می‌کند که عمدتاً از fingerprint هشدار استفاده می‌کند. در صورت عدم وجود، به ترکیبی از نام هشدار، فضای نام و سرویس بازمی‌گردد.

* فیلدهای خروجی: action: "sendMessage", chatInput, sessionId, و alert_id را منتشر می‌کند.

  • ورودی/خروجی:

* ورودی: داده‌های غنی‌شده هشدار را از مرحله "مقداردهی اولیه متغیرها" دریافت می‌کند.

* خروجی: داده‌های پردازش‌شده هشدار (یک آیتم برای هر هشدار) را به عامل هوش مصنوعی منتقل می‌کند.

  • مشکلات احتمالی:

* اگر آرایه alerts در محموله وجود نداشته باشد یا خالی باشد، نودهای پایین‌دستی اجرا نخواهند شد.

* تغییرات در فرمت محموله Alertmanager می‌تواند منطق تجزیه را مختل کند.

* عدم وجود fingerprint می‌تواند قابلیت اطمینان در تطبیق نخ صحیح Slack را کاهش دهد.

* sessionId بازگشتی ممکن است در محیط‌های هشدار با حجم بالا به اندازه کافی منحصر به فرد نباشد.

---

۳. تحقیق هوش مصنوعی و دسترسی به ابزار

این جزء تحلیلی اصلی است که در آن عامل هوش مصنوعی با استفاده از مجموعه‌ای از ابزارها، هشدار را بررسی می‌کند.

#### ۳.۱ عامل هوش مصنوعی (نود Langchain Agent)

  • نوع نود: @n8n/n8n-nodes-langchain.agent
  • هدف: فرآیند استدلال هوش مصنوعی، فراخوانی ابزار و تولید پاسخ را هماهنگ می‌کند.
  • پیکربندی:

* System Prompt: یک اعلان سفارشی که برای تجزیه و تحلیل حوادث SRE تنظیم شده است و به عامل دستور می‌دهد:

* منابع Kubernetes و لاگ‌ها را بازرسی کند.

* Grafana (Prometheus, Loki) را پرس‌وجو کند و داشبوردها را جستجو کند.

* از دانش برداری برای قوانین هشدار استفاده کند.

* منابع DigitalOcean را بررسی کند.

* فعالیت و انتشار GitLab را بررسی کند.

* ادغام ابزار: از UIDهای منبع داده Grafana و Kubernetes که از طریق عبارات ارائه شده‌اند استفاده می‌کند ({{ $('SetVars').first().json.prometheus_uid }}).

* اجرای رفتار:

* تلاش‌های مجدد ابزار را به یک تلاش محدود می‌کند.

* نتایج خالی یا خطا را به طور موثر مدیریت می‌کند.

* از ایجاد تغییرات از طریق ابزارهای MCP جلوگیری می‌کند.

* از پرسیدن سوالات شفاف‌سازی جلوگیری می‌کند.

* الزامات خروجی: بخش‌های خروجی خاصی را اجباری می‌کند: "چه اتفاقی افتاد"، "جدول زمانی رویداد"، "علت ریشه‌ای" و "نکات عیب‌یابی".

  • ورودی/خروجی:

* ورودی اصلی: داده‌های هشدار پردازش‌شده را از مرحله "پیش‌پردازش هشدارها" دریافت می‌کند.

* ورودی مدل زبان: به نود "OpenAI Chat Model" متصل می‌شود.

* ورودی‌های ابزار: به نودهای مختلف ابزار MCP متصل می‌شود (K8S mcp, Grafana mcp, Digitalocean MCP, Gitlab MCP, Qdrant Vector Store).

* خروجی اصلی: گزارش هوش مصنوعی تولید شده را به مرحله "تطبیق نخ Slack" ارسال می‌کند.

  • مشکلات احتمالی:

* خطاهای API LLM (سهمیه، احراز هویت، دسترسی به مدل).

* عدم دسترسی به ابزار در صورت خرابی نقاط پایانی MCP.

* "توهمات" هوش مصنوعی یا فرضیات نادرست در صورت مبهم یا پراکنده بودن نتایج ابزار.

* تأخیر قابل توجه به دلیل تعداد ابزارهای فراخوانی شده.

* عدم تطابق بین اعلان در مورد GitHub و نود پیکربندی شده GitLab MCP می‌تواند باعث سردرگمی شود.

#### ۳.۲ مدل چت OpenAI (نود Langchain LLM)

  • نوع نود: @n8n/n8n-nodes-langchain.lmChatOpenAi
  • هدف: مدل زبان را برای عامل هوش مصنوعی فراهم می‌کند.
  • پیکربندی:

* مدل: gpt-5.3-codex (یا جایگزین مناسب).

* اعتبارنامه‌ها: به اعتبارنامه‌های API OpenAI معتبر نیاز دارد.

  • ورودی/خروجی:

* ورودی: درخواست‌ها را از نود "عامل هوش مصنوعی" دریافت می‌کند.

* خروجی: پاسخ LLM را به نود "عامل هوش مصنوعی" برمی‌گرداند.

  • مشکلات احتمالی:

* کلید API OpenAI نامعتبر.

* عدم دسترسی به مدل یا محدودیت‌های دسترسی.

* استفاده زیاد از توکن و هزینه‌های مرتبط در صورت بزرگ شدن اعلان‌ها و ردیابی ابزار.

#### ۳.۳ Kubernetes MCP (نود Langchain MCP Tool)

  • نوع نود: @n8n/n8n-nodes-langchain.mcpClientTool
  • هدف: قابلیت‌های بازرسی Kubernetes را از طریق MCP (Microservice Communication Platform) به عامل هوش مصنوعی ارائه می‌دهد.
  • پیکربندی:

* نقطه پایانی: http://mcp-kubernetes:8089/mcp

* ابزارهای انتخاب شده: شامل توابعی برای مشاهده پیکربندی‌ها، لیست کردن رویدادها، فضاهای نام، نودها (لاگ‌ها، آمار، تاپ)، پادها (دریافت، لیست، لاگ، تاپ) و عملیات منبع عمومی است.

  • ورودی/خروجی:

* ورودی: درخواست‌های فراخوانی ابزار را از "عامل هوش مصنوعی" دریافت می‌کند.

* خروجی: داده‌های Kubernetes را به "عامل هوش مصنوعی" برمی‌گرداند.

  • مشکلات احتمالی:

* سرور MCP غیرقابل دسترس.

* مجوزهای RBAC Kubernetes برای حساب سرویس عامل ناکافی است.

* منابع ممکن است بین زمان هشدار و زمان تحقیق ناپدید شوند.

* بازیابی لاگ ممکن است برای پادهای خاتمه یافته با شکست مواجه شود.

#### ۳.۴ Grafana MCP (نود Langchain MCP Tool)

  • نوع نود: @n8n/n8n-nodes-langchain.mcpClientTool
  • هدف: به عامل هوش مصنوعی امکان دسترسی به منابع داده Grafana، از جمله معیارهای Prometheus، لاگ‌های Loki، داشبوردها و هشدارها را می‌دهد.
  • پیکربندی:

* نقطه پایانی: http://mcp-grafana:8000/mcp

* مهلت زمانی: 60000 ms

* ابزارهای گنجانده شده: مجموعه‌ای جامع شامل query_prometheus, query_loki_logs, جستجو/خلاصه داشبورد، بازیابی فراداده منبع داده، جستجوی قوانین هشدار و ابزارهای کمکی پیوند پنل.

  • ورودی/خروجی:

* ورودی: درخواست‌های فراخوانی ابزار را از "عامل هوش مصنوعی" دریافت می‌کند.

* خروجی: داده‌های Grafana را به "عامل هوش مصنوعی" برمی‌گرداند.

  • مشکلات احتمالی:

* سرور MCP در دسترس نیست.

* عدم تطابق UIDهای منبع داده Grafana (پیکربندی شده در مرحله "مقداردهی اولیه متغیرها").

* مهلت زمانی پرس‌وجو، حتی با مهلت زمانی تمدید شده.

* مجوزهای API Grafana ناکافی.

#### ۳.۵ DigitalOcean MCP (نود Langchain MCP Tool)

  • نوع نود: @n8n/n8n-nodes-langchain.mcpClientTool
  • هدف: عامل هوش مصنوعی را قادر می‌سازد تا منابع زیرساخت DigitalOcean را بازرسی کند.
  • پیکربندی:

* نقطه پایانی: http://mcp-digitalocean:8090/mcp

* ابزارهای گنجانده شده: اطلاعات برنامه (وضعیت، لاگ‌ها)، جزئیات کلاستر و nodepool DOKS (DigitalOcean Kubernetes)، Droplets، Load Balancers، VPCها، فایروال‌ها، دامنه‌ها، گواهی‌ها، مناطق و اندازه‌ها را پوشش می‌دهد.

  • ورودی/خروجی:

* ورودی: درخواست‌های فراخوانی ابزار را از "عامل هوش مصنوعی" دریافت می‌کند.

* خروجی: داده‌های منابع DigitalOcean را به "عامل هوش مصنوعی" برمی‌گرداند.

  • مشکلات احتمالی:

* مشکلات احراز هویت MCP یا API DigitalOcean.

* محدودیت نرخ توسط DigitalOcean.

* دشواری در نگاشت نام‌ها یا شناسه‌های منابع یافت شده در هشدارها به دارایی‌های خاص DigitalOcean.

#### ۳.۶ GitLab MCP (نود Langchain MCP Tool)

  • نوع نود: @n8n/n8n-nodes-langchain.mcpClientTool
  • هدف: به عامل هوش مصنوعی امکان می‌دهد تا GitLab را برای اطلاعات مربوط به تحقیق حوادث، مانند فعالیت پروژه، درخواست‌های ادغام یا انتشارها، پرس‌وجو کند.
  • پیکربندی:

* نقطه پایانی: http://mcp-gitlab:8080/mcp

* ابزارهای گنجانده شده: معمولاً شامل توابعی برای جستجوی پروژه‌ها، بازیابی اطلاعات commit، بررسی درخواست‌های ادغام و دسترسی به داده‌های انتشار است.

  • ورودی/خروجی:

* ورودی: درخواست‌های فراخوانی ابزار را از "عامل هوش مصنوعی" دریافت می‌کند.

* خروجی: داده‌های GitLab را به "عامل هوش مصنوعی" برمی‌گرداند.

  • مشکلات احتمالی:

* سرور MCP غیرقابل دسترس.

* اعتبارنامه‌های API GitLab نادرست یا مجوزهای ناکافی.

* محدودیت نرخ توسط API GitLab.

#### ۳.۷ Qdrant Vector Store (نود Langchain Vector Store)

  • نوع نود: @n8n/n8n-nodes-langchain.vectorStoreQdrant
  • هدف: عامل هوش مصنوعی را قادر می‌سازد تا جستجوهای معنایی را در برابر پایگاه دانش ذخیره شده در Qdrant انجام دهد، که به طور بالقوه شامل تعاریف قوانین هشدار، runbookها یا داده‌های حوادث تاریخی است.
  • پیکربندی:

* URL Qdrant: جزئیات اتصال به نمونه Qdrant شما.

* نام مجموعه: مجموعه Qdrant خاص برای پرس‌وجو.

* Embeddings: برای استفاده از نود "Embeddings Google Gemini" پیکربندی شده است.

  • ورودی/خروجی:

* ورودی: پرس‌وجوهای جستجو را از "عامل هوش مصنوعی" دریافت می‌کند.

* خروجی: اسناد/اطلاعات مرتبط را از Qdrant به "عامل هوش مصنوعی" برمی‌گرداند.

  • مشکلات احتمالی:

* نمونه Qdrant در دسترس نیست یا به اشتباه پیکربندی شده است.

* نام مجموعه نادرست.

* مشکلات با اتصال مدل embedding.

#### ۳.۸ Embeddings Google Gemini (نود Langchain Embeddings)

  • نوع نود: @n8n/n8n-nodes-langchain.embeddingsGoogleGemini
  • هدف: بردارهای embedding را برای داده‌های متنی با استفاده از مدل‌های Gemini گوگل تولید می‌کند که توسط فروشگاه برداری Qdrant برای جستجوی معنایی استفاده می‌شود.
  • پیکربندی:

* مدل: مدل Gemini مورد استفاده را مشخص می‌کند (به عنوان مثال، models/embedding-001).

* اعتبارنامه‌ها: به اعتبارنامه‌های API Google Cloud یا Gemini نیاز دارد.

  • ورودی/خروجی:

* ورودی: داده‌های متنی را برای embedding دریافت می‌کند (از عامل هوش مصنوعی یا منابع دیگر).

* خروجی: بردارهای embedding را برمی‌گرداند.

  • مشکلات احتمالی:

* اعتبارنامه‌های API گوگل نامعتبر.

* محدودیت‌های دسترسی به مدل یا خطاها.

* محدودیت‌های نرخ اعمال شده توسط API Gemini.

---

۴. تطبیق رشته Slack

این مرحله اطمینان حاصل می‌کند که گزارش هوش مصنوعی در زمینه صحیح در Slack ارسال می‌شود.

#### ۴.۱ دریافت پیام‌های هشدار (نود Slack)

  • نوع نود: n8n-nodes-base.slack
  • هدف: پیام‌های اخیر را از کانال Slack مربوطه بازیابی می‌کند تا اعلان هشدار اصلی را پیدا کند.
  • پیکربندی:

* متد: Get Messages

* کانال: کانال Slack خاصی که اعلان‌های Alertmanager در آن ارسال می‌شوند.

* محدودیت: تعداد معقولی از پیام‌های اخیر برای جستجو (به عنوان مثال، ۵۰-۱۰۰).

  • ورودی/خروجی:

* ورودی: alert_id (fingerprint) را از مرحله "پیش‌پردازش هشدارها" دریافت می‌کند.

* خروجی: لیست پیام‌های اخیر Slack را که بر اساس اثر انگشت هشدار فیلتر شده‌اند، به نود بعدی منتقل می‌کند.

  • مشکلات احتمالی:

* پیکربندی کانال Slack نادرست.

* محدودیت‌های نرخ API Slack.

* پیام هشدار اصلی ممکن است خیلی قدیمی باشد و خارج از تاریخچه پیام بازیابی شده قرار گیرد.

#### ۴.۲ تطبیق رشته (نود Code)

  • نوع نود: n8n-nodes-base.code
  • هدف: پیام‌های Slack بازیابی شده را فیلتر می‌کند تا پیام منطبق با اثر انگشت هشدار فعلی را پیدا کند و thread_ts (مُهر زمانی برای نخ‌بندی) آن را استخراج کند.
  • پیکربندی:

* منطق: از طریق پیام‌های نود "دریافت پیام‌های هشدار" تکرار می‌شود. به دنبال پیامی می‌گردد که متن یا فراداده آن حاوی alert_id (fingerprint) از آیتم هشدار فعلی باشد.

* خروجی: در صورت یافتن تطابق، مقدار thread_ts را منتشر می‌کند. در صورت عدم یافتن تطابق، ممکن است null یا مقدار خالی را منتشر کند.

  • ورودی/خروجی:

* ورودی: alert_id و لیست پیام‌های Slack را دریافت می‌کند.

* خروجی: thread_ts (یا نشانه‌ای از عدم تطابق) را به مرحله "تحویل گزارش Slack" منتشر می‌کند.

  • مشکلات احتمالی:

* قالب اثر انگشت ممکن است به طور مداوم در محتوای پیام Slack وجود نداشته باشد یا به راحتی قابل جستجو نباشد.

* هشدارهای متعدد با اثر انگشت‌های مشابه می‌تواند منجر به تطبیق نادرست نخ شود.

---

۵. تحویل گزارش Slack

آخرین مرحله ارسال گزارش تولید شده توسط هوش مصنوعی به Slack است.

#### ۵.۱ تحویل گزارش Slack (نود Slack)

  • نوع نود: n8n-nodes-base.slack
  • هدف: گزارش تشخیصی تولید شده توسط هوش مصنوعی را به Slack ارسال می‌کند.
  • پیکربندی:

* متد: Send Message

* کانال: همان کانال Slack که در "دریافت پیام‌های هشدار" پیکربندی شده است.

* پیام: پیام نهایی را با استفاده از بخش‌های گزارش هوش مصنوعی (چه اتفاقی افتاد، جدول زمانی، علت ریشه‌ای، عیب‌یابی) می‌سازد.

* مُهر زمانی نخ (thread_ts): از مقدار thread_ts به دست آمده از نود "تطبیق نخ" استفاده می‌کند. اگر thread_ts خالی یا null باشد، پیام به عنوان یک پیام سطح بالا جدید در کانال ارسال می‌شود.

  • ورودی/خروجی:

* ورودی: گزارش تولید شده توسط هوش مصنوعی و مقدار thread_ts را دریافت می‌کند.

* خروجی: پیام را به Slack ارسال می‌کند.

  • مشکلات احتمالی:

* خطاهای API Slack (به عنوان مثال، توکن نامعتبر، کانال یافت نشد).

* اگر thread_ts به درستی منتقل یا یافت نشود، گزارش نخ‌بندی نخواهد شد.

* مشکلات قالب‌بندی پیام در صورت وجود کاراکترهای پیچیده یا غیرقابل گریز در گزارش هوش مصنوعی.

---

شروع کار

1. پیش‌نیازها:

* یک نمونه n8n که از Alertmanager شما قابل دسترسی باشد.

* یک نمونه Alertmanager پیکربندی شده.

* فضای کاری Slack با مجوزهای مناسب.

* دسترسی به API OpenAI.

* دسترسی به API Google Cloud/Gemini.

* سرویس‌های MCP مستقر و قابل دسترسی (Kubernetes، Grafana، DigitalOcean، GitLab).

* یک مخزن برداری Qdrant که با داده‌های مرتبط پر شده باشد.

2. وارد کردن Workflow: این Workflow را در نمونه n8n خود وارد کنید.

3. پیکربندی Node ها:

* Webhook: Alertmanager را طوری تنظیم کنید که درخواست‌های POST را به URL Webhook n8n شما ارسال کند. اعتبارنامه‌های Basic Auth را پیکربندی کنید.

* Set Node: prometheus_uid و loki_uid را با UIDs منبع داده Grafana واقعی خود به‌روزرسانی کنید.

* OpenAI Chat Model: کلید API OpenAI خود را وارد کنید.

* Google Gemini Embeddings: کلید API Google خود را وارد کنید.

* MCP Nodes: اطمینان حاصل کنید که URL های Endpoint برای هر سرویس MCP برای محیط شما صحیح هستند.

* Qdrant Vector Store: جزئیات اتصال برای نمونه Qdrant خود و نام مجموعه صحیح را پیکربندی کنید.

* Slack Nodes: با فضای کاری Slack خود احراز هویت کنید و شناسه کانال صحیح را مشخص کنید.

4. تست: یک هشدار در Alertmanager فعال کنید و اجرای Workflow را در n8n نظارت کنید. برای گزارش تشخیصی، Slack را بررسی کنید.

این Workflow نقطه شروع قدرتمندی برای خودکارسازی پاسخ به حوادث و کاهش میانگین زمان حل مشکل (MTTR) فراهم می‌کند. به یاد داشته باشید که اعلان‌ها، پیکربندی ابزارها و شناسه‌های منبع داده را برای محیط و نیازهای خاص خود تطبیق دهید.

Nodeهای استفاده‌شده

سوالات متداول

این گردش کار n8n چه کاری انجام می‌دهد؟

این گردش کار، تحلیل اولیه هشدارهای دریافتی از Alertmanager را خودکار می‌کند. داده‌های خام هشدار را به خلاصه‌ای قابل فهم برای هوش مصنوعی تبدیل کرده، از یک عامل هوش مصنوعی برای بررسی مشکل استفاده می‌کند و سپس گزارش‌های تشخیصی را به کانال Slack مربوطه ارسال می‌نماید.

چه ابزارهایی در این گردش کار استفاده می‌شوند؟

این گردش کار از نودهای n8n مانند Webhook، Set، Code و Slack به همراه ابزارهای هوش مصنوعی مانند مدل چت OpenAI و ابزارهای مشاهده‌پذیری مانند Kubernetes، Grafana (Prometheus، Loki)، DigitalOcean و GitLab استفاده می‌کند. همچنین از پایگاه داده برداری Qdrant و جاسازی‌های Gemini بهره می‌برد.

این گردش کار برای چه کسانی مفید است؟

این گردش کار به طور خاص برای تیم‌های SRE و DevOps که زیرساخت‌ها یا محیط‌های Kubernetes را مدیریت می‌کنند، بسیار مفید است. این ابزار امکان تشخیص اولیه خودکار حوادث را فراهم کرده و به پاسخ‌دهی سریع‌تر کمک می‌کند.

workflowهای مرتبط

این workflow در کاتالوگ Axeto.ai بایگانی شده است. لایسنس اصلی متعلق به سازنده workflow است.