Discord
Posta ett meddelande i en Discord-kanal när en incident öppnas, så att de som följer kanalen får veta det direkt. Status200s arbetsflödessteg Send Message to Discord postar via kanalens webhook, och en färdig mall bygger hela arbetsflödet åt dig. Den här integrationen är utgående: Status200 postar i kanalen och läser inte det som sägs där.
Så fungerar det
Från incident till Discord-meddelande
Steget postar Message Text till kanalens webhook. Det tar sin utgång Success när Discord tar emot meddelandet, och sin utgång Error, med Discords skäl, när Discord avvisar det. Mallen kopplar ett steg Log till Error, så att en körning som inte kunde posta säger varför.
Innan du börjar
- I Discord behörigheten Manage Webhooks på kanalen.
- I Status200 rätten att skapa arbetsflöden och variabler. På Status200 Cloud kräver arbetsflöden planen Growth eller högre.
Konfigurera integrationen
Skapa en webhook i Discord
- Öppna kanalens inställningar i Discord med Edit Channel, sedan Integrations → Webhooks, och välj New Webhook.
- Ge den ett namn, till exempel
Status200, och kontrollera att den postar i rätt kanal. - Välj Copy Webhook URL.
Alla som har URL:en kan posta i kanalen, så var lika rädd om den som om ett lösenord.
Bygg arbetsflödet
Börja från mallen, som bygger hela arbetsflödet åt dig, eller från grunden.
Från mallen
- Öppna Arbetsflöden och klicka på Skapa arbetsflöde.
- Skriv
Discordi Sök mallar…, klicka på Tell Discord when an incident opens och klicka sedan på Använd den här mallen. - Behåll namnet Notify Discord on new incident eller ändra det, och klicka på Nästa.
- Klistra in URL:en i Discord Webhook URL och klicka på Skapa arbetsflöde.
Arbetsflödet öppnas i Byggare med tre steg: On Create Incident; Send Message to Discord, som postar incidentens nummer, titel, allvarlighetsgrad och tillstånd; och ett steg Log på dess utgång Error. URL:en sparas som arbetsflödets hemliga variabel
discordWebhookUrl.Från grunden
- Spara URL:en som en hemlig global variabel: gå till Arbetsflöden → Globala variabler, klicka på Skapa Arbetsflöde Variabel, ge den namnet
DISCORD_WEBHOOK_URLoch klicka på Nästa. Klistra in URL:en i Innehåll, slå på Hemlighet och klicka på Skapa Arbetsflöde Variabel. - Gå till Arbetsflöden, klicka på Skapa arbetsflöde, välj Börja från grunden, ge arbetsflödet ett namn och klicka på Skapa arbetsflöde.
- Klicka på Choose what starts this workflow i Byggare och välj On Create Incident under Popular. Klicka på utlösaren: dess Fields to pass on börjar med Titel, så klicka på Lägg till fält och välj de andra fält som ditt meddelande visar, till exempel Incident Number With Prefix.
- Klicka på Lägg till komponent, sök efter
discordoch klicka på Send Message to Discord. Anslut utlösarens utgång Success till det. - Klicka på det nya steget. Klicka på { } i Discord Incoming Webhook URL och välj
DISCORD_WEBHOOK_URLunder Global variables. Skriv meddelandet i Message Text och infoga incidentens fält med { }.
Ett meddelande byggt från grunden läser incidentens fält med referenser som dessa:
🚨 **Incident {{local.components.incident-on-create-1.returnValues.model.incidentNumberWithPrefix}} declared** **Title:** {{local.components.incident-on-create-1.returnValues.model.title}}Slå på och testa
Slå på Aktiverad högst upp i Byggare. Från och med nu postas varje ny incident i kanalen.
För att testa utan att öppna en incident klickar du på Kör arbetsflöde och väljer en incident du redan har under Incident: de senaste visas i listan, och genom att skriva dess nummer eller en del av dess titel hittar du en annan. Klicka på Kör arbetsflödet manuellt och bekräfta med Kör. Panelen Arbetsflödeskörning följer körningen, och meddelandet dyker upp i kanalen. Om steget i stället tar Error säger raden från steget Log varför: se Felsökning.
Tips
- Formatera med Discords Markdown. Texten skickas som den är skriven, så Discords Markdown fungerar i den: asterisker runt ett ord gör det fetstilt, och en URL visas som en länk.
- Tänk på gränsen på 2 000 tecken. Discord tar emot meddelanden på upp till 2 000 tecken. Ett längre kortas av och slutar med "… (обрезано — полный текст в Status200)" i stället för att avvisas.
- Posta mer än nya incidenter. Bygg ett annat arbetsflöde på On Update Incident för tillståndsändringar, eller på On Create Alert för larm, med samma steg. För att bara posta vissa incidenter sätter du ett block If / Else före steget.
- Bara Discords egna adresser. Steget postar till en
https-URL pådiscord.comellerdiscordapp.comoch följer inte omdirigeringar, så en URL som pekar någon annanstans stoppar körningen.
Felsökning
När steget tar Error säger körningen varför: mallens steg Log skriver ❌ Discord could not deliver the incident notification: och Discords skäl.
Discord svarar "Unknown Webhook" eller "Invalid Webhook Token"
Webhooken har tagits bort, eller så kopierades URL:en fel. Skapa en ny webhook och ersätt URL:en: i mallens arbetsflöde variabeln discordWebhookUrl, i ditt eget arbetsflöde innehållet i DISCORD_WEBHOOK_URL.
Discord svarar "You are being rate limited"
Discord begränsar hur ofta en webhook kan posta. En skur av incidenter kan nå gränsen: posta färre meddelanden, till exempel bara för vissa allvarlighetsgrader.
Körningen stoppar med "Discord Webhook URL must be an https URL on discord.com or discordapp.com"
Discord Incoming Webhook URL innehåller något annat än en Discord-webhook, eller så är variabeln den läser tom. Klistra in URL:en från Copy Webhook URL igen.