Communitygithub.com

aws-samples/sample-code-for-devops-agent-skills

Open-Source-Skills für den AWS DevOps Agent – Erweitern Sie den DevOps Agent mit einsatzbereiten Skills für Incident Response, Root Cause Analysis und operative Fehlerbehebung. Nutzen Sie sie direkt oder als Referenz für eigene Skills.

Was ist sample-code-for-devops-agent-skills?

Dieser Skill, „Support Case Review“, ist Teil der Open-Source-Sammlung „aws-samples/sample-code-for-devops-agent-skills“ und richtet sich an DevOps-Agenten auf AWS-Plattformen. Er ermöglicht es, während einer Incident-Untersuchung automatisiert AWS-Supportfälle zu durchsuchen – sowohl den aktuellen Fall als auch historische Fälle der letzten 24 Monate. Der Skill extrahiert Schlüsselinformationen wie betroffene Services, Fehlermeldungen, Zeitfenster und Symptome aus dem aktuellen Incident, filtert dann anhand von Kriterien wie Service, Schweregrad und Status die relevanten Supportfälle heraus und prüft deren Kommunikationsverläufe auf Ursachenanalysen und Abhilfemaßnahmen. Eine strukturierte Korrelationsprüfung und Relevanzbewertung hilft, wiederkehrende Muster zu identifizieren und fundierte Handlungsempfehlungen abzuleiten. Er ist für AWS-Konten mit Business Support+, Enterprise Support oder Unified Operations Plan konzipiert und benötigt Berechtigungen für `support:DescribeCases` und `support:DescribeCommunications`. Der Skill kann als Referenz für die Entwicklung eigener Skills genutzt werden und unterstützt Entwickler und DevOps-Teams dabei, Incidents effizienter zu analysieren und auf bewährte Lösungen zurückzugreifen.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add aws-samples/sample-code-for-devops-agent-skills

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Support Case Review

Verwenden Sie diesen Skill, wenn Sie einen Incident untersuchen und AWS-Supportfälle prüfen müssen – entweder den aktuellen Fall, der mit dem Incident verbunden ist, oder historische Fälle, die relevanten Kontext, ähnliche Symptome oder bewährte Abhilfemaßnahmen enthalten können.

Wann dieser Skill verwendet werden sollte

  • Ein aktiver Incident weist Symptome auf, die mit zuvor behobenen Problemen übereinstimmen.
  • Sie müssen prüfen, ob in den letzten 24 Monaten ein ähnlicher Supportfall eingereicht wurde.
  • Sie möchten den aktuellen Incident mit bekannten AWS-Serviceereignissen korrelieren.
  • Sie müssen Kommunikationen und Lösungsdetails aus einem früheren Fall abrufen.
  • Sie möchten wiederkehrende Muster über mehrere Supportfälle hinweg identifizieren.

Voraussetzungen

  • Das AWS-Konto muss einen Business Support+, Enterprise Support oder Unified Operations Plan haben (erforderlich für die AWS Support API).
  • Der Agent muss Berechtigungen haben, um support:DescribeCases und support:DescribeCommunications im Zielkonto aufzurufen.
  • Supportfalldaten sind 24 Monate nach Erstellung verfügbar. Fälle, die älter als 24 Monate sind, können nicht über die API abgerufen werden.

Schritt 1: Kontext des aktuellen Incidents ermitteln

Sammeln Sie vor der Suche nach Supportfällen die wichtigsten Details aus dem aktuellen Incident:

  1. Betroffene AWS-Services (z. B. EC2, RDS, Lambda, ELB).
  2. Fehlermeldungen oder Fehlercodes, die in Logs oder Alarms beobachtet wurden.
  3. Zeitrahmen des Incidents (Startzeit, Dauer).
  4. Betroffene Ressourcen (Instanz-IDs, ARNs, Endpunktnamen).
  5. Symptome (Latenzspitzen, 5xx-Fehler, Verbindungs-Timeouts, Drosselung).

Verwenden Sie diese Details als Suchkriterien beim Filtern von Supportfällen.


Schritt 2: Nach verwandten Supportfällen suchen

Verwenden Sie die AWS Support API, um Fälle abzurufen, die relevant sein könnten.

Alle aktuellen Fälle abrufen (offen und gelöst)

aws support describe-cases \
  --include-resolved-cases \
  --include-communications \
  --after-time "<ISO-8601-start>" \
  --before-time "<ISO-8601-end>" \
  --language "en"

Nach bestimmten Fall-IDs filtern (falls bekannt)

aws support describe-cases \
  --case-id-list "case-123456789010-muen-2024" \
  --include-communications

Wichtige Filterstrategien

StrategieAnwendung
Nach ZeitfensterVerwenden Sie --after-time und --before-time, um Fälle auf den relevanten Zeitraum zu beschränken (z. B. die letzten 30 Tage oder um ein früheres Incident-Datum), da aktuelle Fälle eher den aktuellen Infrastrukturzustand widerspiegeln.
Nach ServiceÜberprüfen Sie das Feld serviceCode in den zurückgegebenen Fällen, um den betroffenen Service zu identifizieren (z. B. amazon-elastic-compute-cloud, amazon-rds), da derselbe Service oft wiederkehrende Fehlermuster aufweist.
Nach SchweregradPrüfen Sie das Feld severityCode – konzentrieren Sie sich bei schwerwiegenden Incidents auf Fälle mit urgent und critical, da Fälle mit höherem Schweregrad tendenziell detailliertere Ursachenanalysen vom AWS Support enthalten.
Nach StatusVerwenden Sie --include-resolved-cases, um geschlossene Fälle einzuschließen, da gelöste Fälle die Ursache und Abhilfemaßnahmen enthalten, die für die Korrelation mit dem aktuellen Incident am wertvollsten sind.
Nach Betreff-SchlüsselwörternDurchsuchen Sie das Feld subject der zurückgegebenen Fälle nach Schlüsselwörtern, die den Symptomen des aktuellen Incidents entsprechen, da ähnliche Symptome oft auf gemeinsame Ursachen hinweisen.

Schritt 3: Fallkommunikation prüfen

Die Antwort von describe-cases mit includeCommunications: true gibt die aktuellsten Kommunikationen für jeden Fall im Feld recentCommunications zurück (bis zu 5 Nachrichten). Da Ursachenanalyse und Lösungsschritte typischerweise in den letzten Nachrichten eines gelösten Falls stehen, ist dies normalerweise ausreichend.

Wenn das Feld recentCommunications einen nextToken enthält, hat der Fall weitere ältere Nachrichten. Verwenden Sie describe-communications nur dann zum Paginieren, wenn die aktuellen Nachrichten keine klare Ursache oder Lösung enthalten – zum Beispiel, wenn die letzten Nachrichten Folgefragen und keine endgültige Antwort sind.

aws support describe-communications \
  --case-id "case-123456789010-muen-2024" \
  --max-results 10 \
  --next-token "<nextToken-from-recentCommunications>"

Achten Sie bei der Prüfung der Kommunikation auf:

  1. Ursachenaussagen – AWS Support Engineers fassen die Ursache oft in ihrer letzten Antwort zusammen.
  2. Abhilfemaßnahmen – Konkrete Maßnahmen zur Behebung des Problems (z. B. „max_connections erhöht“, „Sicherheitsgruppenregel angewendet“, „Instanztyp hochskaliert“).
  3. Konfigurationsempfehlungen – Best Practices oder Optimierungsvorschläge von AWS.
  4. Eskalationsvermerke – Falls der Fall eskaliert wurde, prüfen Sie auf tiefergehende technische Analysen spezialisierter Teams.

Schritt 4: Ergebnisse mit dem aktuellen Incident korrelieren

Nach der Prüfung relevanter Fälle korrelieren Sie die Ergebnisse:

Checkliste für Musterabgleich

  • Teilen vergangene Fälle denselben betroffenen Service und Ressourcentyp?
  • Sind die Fehlermeldungen oder -codes identisch oder ähnlich?
  • Traten frühere Incidents zu einer ähnlichen Tageszeit oder an einem ähnlichen Wochentag auf (was auf Lastmuster hindeutet)?
  • War die Ursache ein Konfigurationsproblem, das möglicherweise noch besteht?
  • War die Lösung eine temporäre Problemumgehung, die inzwischen abgelaufen oder rückgängig gemacht wurde?
  • Hat AWS ein serverseitiges Problem identifiziert, das möglicherweise wiederholt auftritt?

Relevanzbewertung

Bewerten Sie jeden historischen Fall nach Relevanz für den aktuellen Incident:

BewertungKriterien
HochGleicher Service, gleicher Fehler, gleicher Ressourcentyp, ähnlicher Zeitrahmen
MittelGleicher Service, anderer Fehler, aber verwandte Symptome
NiedrigAnderer Service, aber ähnliches Architekturmuster oder Fehlermodus

Schritt 5: Ergebnisse zusammenfassen

Erstellen Sie eine strukturierte Zusammenfassung mit:

  1. Anzahl der gefundenen relevanten Fälle – Wie viele vergangene Fälle den Suchkriterien entsprachen.
  2. Relevanteste(r) Fall/Fälle – Fall-ID, Betreff, Status und Erstellungsdatum der besten Treffer.
  3. Historische Ursachen – Was ähnliche Probleme in der Vergangenheit verursacht hat.
  4. Frühere Lösungen – Welche Abhilfemaßnahmen angewendet wurden und ob es sich um dauerhafte Korrekturen oder temporäre Problemumgehungen handelte.
  5. Empfehlungen – Basierend auf historischen Mustern schlagen Sie Untersuchungspfade oder Abhilfemaßnahmen für den aktuellen Incident vor.
  6. Wiederkehrendes Muster erkennen – Wenn dasselbe Problem mehrfach aufgetreten ist, markieren Sie es als wiederkehrendes Problem, das eine dauerhafte Korrektur oder architektonische Änderung erfordert.

Entscheidungsbaum: Fallsuchstrategie

Ist eine bekannte Fall-ID mit dem aktuellen Incident verknüpft?
├── JA → Rufen Sie diesen spezifischen Fall und seine Kommunikation ab (Schritt 2, Filter nach Fall-ID)
└── NEIN → Fahren Sie unten fort

Ist der betroffene AWS-Service bekannt?
├── JA → Durchsuchen Sie Fälle der letzten 90 Tage nach diesem Service, erweitern Sie ggf. auf 12 Monate
└── NEIN → Durchsuchen Sie alle Fälle der letzten 30 Tage und filtern Sie nach Fehlerschlüsselwörtern

Wurden relevante historische Fälle gefunden?
├── JA → Kommunikation prüfen (Schritt 3), Ergebnisse korrelieren (Schritt 4), zusammenfassen (Schritt 5)
└── NEIN → Suchkriterien erweitern:
         - Zeitfenster vergrößern
         - Nach verwandten Services suchen (z. B. wenn ELB betroffen ist, auch EC2- und Target-Group-Fälle prüfen)
         - Nach Fehlercode oder Symptom-Schlüsselwörtern in Fallbetreffen suchen

Tipps für eine effektive Fallprüfung

  • Beginnen Sie eng, dann erweitern: Verwenden Sie zunächst spezifische Filter (Service + Zeitfenster) und erweitern Sie diese nur, wenn keine relevanten Fälle gefunden werden.
  • Prüfen Sie gelöste Fälle: Die wertvollsten Informationen stammen oft aus gelösten Fällen, in denen Ursache und Lösung dokumentiert sind.
  • Beachten Sie Muster beim Schweregrad: Wenn frühere Fälle für dasselbe Problem mit critical eingestuft wurden, kann der aktuelle Incident eine ähnliche Dringlichkeit rechtfertigen.
  • Querverweis mit Deployments: Wenn ein früherer Fall durch ein Deployment verursacht wurde, prüfen Sie, ob vor dem aktuellen Incident ein ähnliches Deployment stattfand.

Verwandte Skills