מה מעיר אתכם בשלוש לפנות בוקר
האתר שהתקלקל בלי שאף אחד נגע בו
אליס, צלמת חתונות, בנתה את דף ההזמנות שלה בעזרת סוכן AI ולא נגעה בו שלושה שבועות. ביום ראשון בשש בבוקר לקוחה שלחה לה צילום מסך של שגיאה. היא עברה על הקוד ולא מצאה שום תקלה. אז היא פתחה את לוח הבקרה של האירוח וראתה באנר אדום: הפרויקט הושעה אחרי תשלום שנכשל. כרטיס האשראי השמור פג בסוף החודש. שום התראה לא הזהירה אותה, כי היא מעולם לא הגדירה אחת.
- כמעט כל מצב חירום בסביבת הייצור נובע משש סיבות: deploy, תקלה אצל ספק, טעות בנתונים, דליפה או ניצול לרעה, עלות, פקיעת תוקף.
- deploy וטעויות בנתונים הם באחריותכם. פרסו שינויים קטנים והחזיקו ביטול בלחיצה אחת.
- תקלות הן של הספק, ולכן הגדירו בדיקת זמינות והודעה למשתמשים.
- דליפות וניצול לרעה דורשים מגבלות שכבר קיימות לפני התקיפה; עלות דורשת התראת תקציב לפני החשבון.
- לכל סיבה, דעו איך תגלו עליה ומה הצעד הראשון שלכם.
שש סיבות כל אחת דורשת תוכנית
עשה ואל תעשה
- מלאו טבלה עם האופן שבו תגלו והצעד הראשון שלכם לכל סיבה.
- תקנו את השורה שבה לקוח מספר לכם ראשון.
- שחזרו גיבוי פעם אחת כדי להוכיח שהוא עובד.
- אל תחכו שלקוחות ידווחו על בעיות.
- אל תגדירו מגבלות אחרי תקיפה.
- אל תשכחו תאריכי פקיעה של תעודות ודומיינים.
שלכם, שלהם או של לוח השנה
כמעט כל מצב חירום בשלוש בלילה הוא אחד משישה דברים: פריסה גרועה, השבתה אצל ספק, טעות בנתונים, דליפת מפתח סודי או ניצול לרעה, עלות שיצאה משליטה, או משהו שפג תוקפו. הם מתחלקים לשלושה סוגים.
פריסות וטעויות בנתונים באות מהשינויים שלכם. פרסמו שינויים קטנים, החזיקו ביטול בלחיצה אחת, ושמרו גיבויים ששחזרתם בפועל לפחות פעם אחת.
השבתות אצל ספק הן לא בשליטתכם. אי אפשר למנוע אותן, אז הגדירו בדיקת זמינות שתתריע לכם, ובאנר שמסביר למשתמשים מה קורה.
דליפות וניצול לרעה דורשים מגבלות שכבר קיימות לפני המתקפה. עלות דורשת התראת תקציב, כי החשבון מגיע אחרי הנזק. תפוגה אפשר לצפות מראש, אז הפעילו חידוש אוטומטי והגדירו תזכורת.
דוגמה: תעודת TLS של הדומיין פגה → הדפדפן מציג אזהרת תעודה והמשתמשים בורחים; חידוש אוטומטי ותזכורת ביומן 14 יום מראש עוצרים את זה.
מוצאים את השורות החלשות
לכל אחד מששת הגורמים ענו על שתי שאלות: איך אדע על התקלה, ומה הצעד הראשון שלי? אם התשובה הכנה היא "לקוח יספר לי", תקנו קודם את השורה הזו.
דוגמה: עלות שיצאה משליטה → יודעים מהתראת הוצאה של $50/day; הצעד הראשון הוא לכבות את מתג ה־AI, ואז לחפור בחשבון.
צרו RISKS.md לפרויקט שלי עם שש שורות: פריסה גרועה, תקלה אצל ספק, טעות בנתונים, דליפה או ניצול לרעה, עלות שהתפרצה, משהו שפג תוקפו. לכל אחת אמרו איך באמת הייתי מגלה ומה הצעד הראשון שלי, לפי מה שקיים בריפו הזה ובאחסון שלי. סמנו את השורות שבהן התשובה הכנה היא סימן שאלה.
דוגמה
תעברו על הפרויקט שלי ותענו כן או לא על כל אחד: אפשר לעשות rollback ל־deploy בלחיצה אחת? אני אדע מתי הספק מושבת ולא הקוד שלי? שחזרתי פעם גיבוי? סריקת סודות והגבלת קצב פועלות? הוגדרה תקרת תקציב? ומה עומד לפוג בקרוב? אל תשנו כלום בינתיים.
הדביקו את ההנחיות לסוכן מתוך תיקיית פרויקט. כשההנחיה אומרת "הפרויקט הזה", הכוונה לאפליקציה שבונים בתרגול או לאפליקציה שכבר יש לכם. עדיין אין פרויקט? קראו עכשיו והדביקו אחר כך, בתרגול.
תעברו על האפליקציה שלי מול ששת הגורמים הרגילים לכאב ב־production: deploy רע, השבתה של ספק, טעות בנתונים, סוד שדלף או ניצול לרעה, עלות שיצאה משליטה, משהו שפג תוקפו. לכל אחד, תגידו איך הייתי מגלה על זה היום ומה הצעד הראשון שלי. אל תשנו שום קוד.
רשמו כל שירות בתשלום או חיצוני שהאפליקציה שלי תלויה בו (אחסון, מסד נתונים, אימייל, תשלומים, AI, דומיין). לכל אחד, אמרו מה קורה לאפליקציה שלי אם הוא מושבת, ואיפה דף הסטטוס שלו.
מצאו כל דבר בהגדרות שלי שיכול לפוג: דומיין, תעודות, מפתחות API עם תאריך סיום, תקופות ניסיון חינמיות, הכרטיס בכל חשבון. בנו טבלה עם התאריך או המקום לבדוק אותו, והאם חידוש אוטומטי פועל.
🚨 בזמן תקלה בסביבת הייצור, בקשו מה־AI
משהו משתבש ולא ברור לכם מאיפה להתחילמה עושים? · הצגת ההנחיה להדבקה
האפליקציה שלי מתנהגת מוזר בסביבת הייצור ולא ברור לי למה. אל תשנו קוד. עברו אחת אחת על שש הסיבות הנפוצות (פריסה חדשה, ספק שנפל, בעיה בנתונים, מפתח שדלף או שימוש לרעה, הגעה למגבלת עלות, משהו שפג תוקפו). לכל סיבה תגידו מה הדבר האחד לבדוק ומה מצאתם. תראו ראיות, ואז תגידו איזו סיבה הכי סבירה.