CMD Master
Zpět na blog
Arnošt Havelka

Šablony promptů pro ladění produkčních problémů

Znovupoužitelné AI prompty pro ladění produkce: shromážděte důkazy, ověřte hypotézy, použijte malou opravu a bezpečně ji validujte.

Šablony promptů pro ladění produkčních problémů

AI pro ladění produkce používejte jako pracovní postup od důkazů k validaci: shromážděte fakta, vytvořte hypotézy, ověřte je, proveďte nejmenší podloženou opravu a bezpečně ji validujte. Nežádejte asistenta, aby opravil živý problém na základě vágního příznaku, ani výsledek neaplikujte naslepo.

Níže uvedené šablony udržují vyšetřování ukotvené ve faktech. Před sdílením logů nebo traces odstraňte tajné údaje, přístupové tokeny, osobní data a identifikátory zákazníků.

Posloupnost ladění produkce

důkazy -> hypotézy -> ověření -> nejmenší oprava -> validace

Každý prompt by měl zahrnovat očekávané chování, pozorované chování, prostředí, informace o reprodukci, relevantní nedávné změny a bezpečný limit požadované práce.

Šablona: úvodní třídění incidentu

Potřebujeme prozkoumat produkční problém. Zatím nenavrhujte změnu kódu.

Příznaky: [Co ukazují uživatelé nebo monitoring.]
Očekávané chování: [Co se má stát.]
Pozorované chování: [Co se skutečně děje.]
Dopad: [Kdo je ovlivněn, četnost, závažnost a případná známá bezpečná náhrada.]
Prostředí: [Verze, nasazení, prohlížeč/OS, region, feature flags nebo
podrobnosti runtime.]
Nedávné změny: [Relevantní nasazení, migrace, konfigurace nebo závislosti.]
Důkazy: [Sanitizované logy, chyby, metriky, trace ID, snímky obrazovky, příkazy.]
Reprodukce: [Spolehlivé kroky nebo uveďte, že je problém přerušovaný.]

Vraťte:
1. stručnou časovou osu potvrzených faktů;
2. hlavní hypotézy seřazené podle pravděpodobnosti a dopadu;
3. další bezpečné pozorování nebo krok reprodukce pro každou hypotézu;
4. každou chybějící informaci, která podstatně blokuje diagnózu.

To poskytuje asistentovi dostatek materiálu pro úvahy, aniž by předstíral přístup k vašim produkčním systémům.

Šablona: reprodukce před opravou

Pokuste se tento problém reprodukovat místně nebo ve schváleném neprodukčním
prostředí.

Očekávané: [Očekávaný výsledek.]
Pozorované: [Skutečný výsledek.]
Nastavení: [Fixture, stav účtu, příkaz, konfigurace nebo testovací data.]
Nedávná změna k prozkoumání: [Commit, vydání nebo změna chování.]

Neupravujte produkční kód, dokud není selhání reprodukováno nebo dokud nemáme
vysvětlení založené na důkazech, proč reprodukce není možná. Zachyťte
nejmenší selhávající test, posloupnost logů nebo výstup příkazu, který odliší
hlavní hypotézy.

Pokud není reprodukce možná, uveďte nejistotu a doporučte bezpečnou instrumentaci nebo rozhodnutí o vrácení změn — nikoli spekulativní patch kódu.

Šablona: analýza sanitizovaných logů

Analyzujte tyto sanitizované logy pro produkční selhání.

Kontext: [Služba/funkce a očekávaný tok požadavku.]
Časové okno: [Začátek/konec a časové pásmo.]
Očekávané chování: [Očekávaná cesta úspěchu.]
Pozorované chování: [Chyba nebo zhoršené chování.]
Nedávné změny: [Změny nasazení/konfigurace/závislostí.]
Logy: [Sanitizované záznamy v chronologickém pořadí.]

Oddělte fakta od odvození. Události korelujte jen tam, kde to podporují ID, časová razítka nebo
důkazy příčinnosti. Uveďte věrohodné hypotézy, log nebo metriku, která
každou potvrdí, a další pozorování s nejnižším rizikem.

Nenechte asistenta považovat sousední časová razítka za důkaz příčinnosti.

Šablona: prozkoumání selhání příkazu nebo skriptu

Prozkoumejte, proč tento produkční příkaz údržby selhal.

Příkaz: [Přesný příkaz s odstraněnými tajnými údaji.]
Očekávaný výstup: [Očekávaný signál úspěchu.]
Pozorovaný výstup: [Přesný sanitizovaný stderr/stdout a ukončovací kód.]
Prostředí: [Shell, pracovní adresář, verze OS/runtime, relevantní soubory.]
Nedávné změny: [Změny skriptu nebo nasazení.]

Nejprve vysvětlete, co příkaz skutečně dělá, a určete nejdříve selhávající
krok. Navrhněte bezpečné diagnostické příkazy, které nemění data. Až po
pochopení selhání navrhněte nejmenší opravu a způsob její validace v
neprodukčním prostředí.

U selhání v terminálu jsou přesný vstup a výstup často cennější než slovní shrnutí.

Šablona: prozkoumání regrese při rollout

Posuďte, zda tato regrese souvisí s nedávným rolloutem.

Výchozí stav: [Chování/verze před rolloutem.]
Změna: [Vydání, flag, migrace nebo rozdíl konfigurace.]
Pozorovaná regrese: [Kdo je ovlivněn a jak.]
Důkazy: [Metriky, logy, traces, snímky obrazovky nebo reprodukce.]
Omezení: Neměňte rollout ani nemigrujte data, dokud důkazy nepodporují
rozhodnutí. Zachovejte cestu vrácení změn.

Porovnejte výchozí a změněné cesty. Určete nejmenší experiment,
kontrolu feature flagu nebo neprodukční test, který by mohl potvrdit příčinnost.
Doporučte vrácení změn, zmírnění nebo průzkum kódu s mírou jistoty a
kompromisy pro každou možnost.

Správnou odpovědí může být vrácení změn nebo úprava feature flagu, nikoli změna kódu.

Šablona: žádost o bezpečnou opravu

Použijte ji až poté, co důkazy podporují příčinu:

Potvrzená příčina: [Kořenová příčina podložená důkazy.]
Rozsah: [Soubory, modul nebo konfigurace ke změně.]
Chování k zachování: [Existující cesta úspěchu, veřejný kontrakt, oprávnění,
data, locale, výkon nebo chování při vrácení změn.]

Navrhněte nejmenší opravu. Zahrňte:
- proč řeší potvrzenou příčinu;
- regresní test nebo reprodukovatelnou kontrolu;
- validaci ve schváleném neprodukčním prostředí;
- úvahy o rolloutu, monitoringu a vrácení změn;
- chování, které zůstává nejisté.

Do této změny nezahrnujte nesouvisející refaktoring.

Prompt brání tomu, aby se skutečný incident stal příležitostí k nerevidovatelnému přepisu.

Šablona: validace po opravě

Validujte opravu podle původního incidentu.

Zkontrolujte:
1. původní reprodukce nebo selhávající test nyní prochází;
2. běžná cesta úspěchu zůstává nezměněná;
3. relevantní chybové a okrajové cesty se stále chovají bezpečně;
4. signály nasazení nebo monitoringu ukazují očekávané zotavení;
5. podmínka vrácení změn zůstává dostupná.

Uveďte důkazy pro každou kontrolu a explicitně pojmenujte vše, co nebylo ověřeno.

Validace by měla odpovědět na původní otázku incidentu, ne jen potvrdit, že se provedla nová cesta kódu.

Používejte AI jako disciplinovaného vyšetřovatele

AI může pomoci uspořádat důkazy, vytvářet hypotézy, vysvětlovat neznámý kód a navrhovat testy. Nemůže nahradit řízení přístupu, vlastnictví incidentu, ochranné mechanismy produkce ani lidskou revizi.

Pro obecnou strukturu začněte článkem jak psát lepší prompty pro AI. Pomocí článku chyby AI asistentů pro programování a jak se jim vyhnout rozpoznáte nebezpečné zkratky a šablony promptů pro refaktoring kódu použijte až po pochopení incidentu.

Pokud důkazy obsahují shellové příkazy, před změnou bezpečně zreprodukujte pracovní postup. Procvičujte scénáře příkazového řádku v prohlížeči, abyste si osvojili kontrolu vstupu, výstupu a signálů selhání.

Reference

Tyto odkazy na dokumentaci poskytují spolehlivé informace o příkazech použitých v tomto článku.