Obervability
שירותים
AudiTrace
משאבים▾
צור קשר
עברית ▾
הזמן בדיקה ללא עלות
מתוך האודיט · Alerting
1,617 חלונות תחזוקה: איך ההתראות משתתקות בלי שאף אחד החליט
השתקה נצברת החלטה לגיטימית אחת בכל פעם. ב־tenant אחד היא הגיעה ל־1,617 חלונות קבועים או שפג תוקפם, ועוד 106 דריסות ברמת האובייקט עם זיהוי מכובה.
פורסם ב־16 בספטמבר 2026
לשקט אין סימפטום
התראות נכשלות בכיוון אחד בלבד. על התראה רועשת מדווח תוך שעה מי שהיא העירה משנתו; על התראה מושתקת לא מדווח אף אחד, לעולם, כי תקלה מושתקת אינה תקלה שקטה — היא בכלל לא תקלה. שום דבר שבן אדם קורא לא נרשם, שום אריח בדשבורד לא הופך לכתום, ולסקירת התקלות הבאה אין שום עדות להצביע עליה.
כך הקונפיגורציה נסחפת אל עבר השקט בדרך שהיא לעולם לא נסחפת בה אל עבר הרעש. האסימטריה הזו, ולא רשלנות, היא שמייצרת מספר בן ארבע ספרות של חלונות תחזוקה פתוחים.
איך מגיעים ל־1,617
חלון אחד לכל גרסה, לכל שירות, שנפתח על ידי pipeline פריסה שאין בו שלב לסגירה שלו. אחד שנפתח ידנית באמצע תקלה ב־02:00, בהיקף נדיב כי אף אחד לא רצה להתווכח על היקף ב־02:00. אחד שנפתח לקראת מיגרציה עם תאריך סיום שמאז חלף — ותלוי איך הוגדר, הוא או שפג בצורה נקייה או שהמשיך להשתיק.
כל אחת מההחלטות האלה הייתה נכונה באותו רגע. אף אחת מהן לא הייתה החלטה להפסיק להתריע על השירות הזה לצמיתות, וזה בכל זאת מה שה־tenant עושה היום.
המנגנון השני: דריסות ברמת האובייקט
חלונות תחזוקה לפחות מופיעים ברשימה אחת. דריסות של זיהוי אנומליות גרועות יותר: הן יושבות על האובייקט עצמו, הן בלתי נראות ממסכי הקונפיגורציה הגלובליים, והן מכבות את הזיהוי במקום לנתב אותו למקום אחר. באותו tenant עצמו היו 106 כאלה.
הדפוס שמאחוריהן מוכר — שרת או שירות היה רועש באמצע תקלה, מישהו כיבה עליו את הזיהוי כדי לעבור את הלילה, וההפעלה מחדש מעולם לא קרתה כי מעולם לא נפתח עליה טיקט.
צורת השאילתה
מצאי החלונות יחד עם התזמון שלהם, וזה מספיק כדי להפריד בין "נגמר ביום שישי" לבין "לא נגמר לעולם":
DQL
fetch dt.settings.maintenance_window
| fields name, enabled, scheduleType = schedule.type, end = schedule.end, scope
| filter enabled == true and (scheduleType == "PERMANENT" or end < now())
מה לעשות, ובאיזה סדר
אל תפעילו מחדש את הכול. tenant שהיה שקט שנתיים ייצר קיר של תקלות ביום הראשון, רובן אמיתיות, והצוות יכבה את הכול בחזרה עד יום שישי — תוצאה גרועה יותר מנקודת ההתחלה.
סדרו לפי רדיוס הפגיעה במקום זה: קודם חלונות שחלים על שירותי production ששולחים קריאה לכונן, אחר כך דריסות על אובייקטים שנושאים תעבורת לקוחות, ואחר כך הזנב הארוך. הפעילו מחדש באצוות קטנות מספיק כדי שאפשר יהיה למיין את התקלות שייווצרו ולא רק לרפרף עליהן, ותקנו את הרעש שבבסיסן תוך כדי. ב־tenant שעבר את האודיט זו הייתה הפעולה המתקנת הראשונה, כי היא משנה האם תקלה מגיעה לבן אדם, והחזרה ממנה לא עולה כלום.
הממצא שמאחורי המאמר
Permanent or expired maintenance windows
היקף
1,617
השפעה
Alerting silently suppressed
השורה התחתונה
אף אחד לא החליט להפסיק להתריע. 1,617 אנשים החליטו כל אחד פעם אחת משהו סביר, ושום דבר במוצר לא שאל אם הסך הכולל עדיין הגיוני.
עוד מהסדרה
שאלה של 91,576 דולר: שרתי Full-Stack שאין עליהם מה לנטר
מתוך האודיט · FinOps
ה־bucket ב־Grail שאף אחד לא בחר: 462 יום retention
מתוך האודיט · Grail
מידע אישי בלוגים: 50 מקורות, כ־30.7 מיליון רשומות ביום
מתוך האודיט · Pipelines
מה באמת נוחת על חשבונית DPS
מתוך האודיט · FinOps
לגלות מה ה־tenant שלכם אומר.
ריצה אחת בקריאה בלבד, 71 בדיקות, והמקור שמאחורי כל ממצא. הדוח נשאר אצלכם כך או כך.
לקבוע אודיט
AudiTrace
גלו מה ה־Obervability שלכם באמת עושה.
ה־Audit הוא ריצה אחת. הממצאים — פגישה אחת. מה שתעשו איתם — בידיים שלכם.
מומחי Dynatrace מוסמכים
+1
שירותים
שירותים
AudiTrace
סיפור לקוח
מדריכים
אודיט ל־Dynatrace
ייעול עלויות Dynatrace
מקרה לקוח
מאמרים
יצירת קשר
צור קשר
hello@obzervability.com
© 2026 Obervability · כל הזכויות שמורות.
פרטיות
תנאי שימוש
נגישות
Obervability
{{ t.navServices }}
AudiTrace
{{ resLabel }}▾
{{ t.navContact }}
{{ footGuideAudit }}
{{ footGuideCost }}
{{ footGuideCase }}
{{ footGuideArticles }}
{{ langLabel }} ▾
English
{{ altLabel }}
{{ t.heroKicker }}
{{ t.heroTitle }}
{{ t.heroSub }}
{{ t.heroCta1 }}
{{ t.heroCta2 }}
{{ t.badge }}
71
{{ t.stripChecks }}
19
{{ t.stripDomains }}
21
{{ t.stripRem }}
0
{{ t.stripWrite }}
{{ t.svcTitle }}
{{ t.s1t }}
{{ t.s1d }}
{{ t.s2t }}
{{ t.s2d }}
{{ t.s3t }}
{{ t.s3d }}
{{ t.caseKicker }}
{{ t.caseTitle }}
{{ t.caseCtx }}
{{ t.caseNote }}
{{ t.svcKick }}
{{ t.svcTitle2 }}
{{ t.svcSub }}
{{ t.heroCta1 }}
{{ t.svcCta2 }}
71
{{ t.svcL1 }}
$114–178k
{{ t.svcL2 }}
0
{{ t.svcL3 }}
{{ t.svcTracksT }}
{{ t.svcTracksD }}
{{ k.t }}
{{ k.g }}
{{ k.d }}
{{ t.fcTitle }}
{{ t.svcFindD }}
{{ f.t }}
{{ f.d }}
{{ t.svcEngT }}
{{ t.colEng }}
{{ t.colTrack }}
{{ t.colShape }}
{{ e.n }}
{{ e.k }}
{{ e.s }}
{{ t.svcCtaT }}
{{ t.svcCtaD }}
{{ g.kicker }}
{{ g.title }}
{{ g.sub }}
{{ g.cta1 }}
{{ g.cta2 }}
{{ g.s1h }}
{{ p.t }}
{{ g.s2h }}
{{ g.s2sub }}
{{ c.t }}
{{ c.d }}
{{ g.s3h }}
{{ g.s3sub }}
{{ g.s4h }}
{{ g.s4sub }}
{{ g.tableNote }}
{{ g.s5h }}
{{ g.s5sub }}
{{ k.t }}
{{ k.d }}
{{ g.s6h }}
{{ c.t }}
{{ c.d }}
{{ g.faqH }}
{{ f.q }}
{{ f.a }}
{{ g.closerT }}
{{ g.closerD }}
{{ g.cta1 }}
{{ g.closerCta }}
{{ g.kicker }}
{{ g.title }}
{{ g.sub }}
{{ g.cta1 }}
{{ g.cta2 }}
{{ g.s1h }}
{{ p.t }}
{{ g.s2h }}
{{ g.s2sub }}
{{ g.tableNote }}
{{ g.s3h }}
{{ c.t }}
{{ c.d }}
{{ g.s4h }}
{{ c.t }}
{{ c.d }}
{{ g.faqH }}
{{ f.q }}
{{ f.a }}
{{ g.closerT }}
{{ g.closerD }}
{{ g.cta1 }}
{{ g.closerCta }}
{{ dom.kicker }}
{{ dom.title }}
{{ dom.lede }}
{{ dom.ctaBook }}
{{ dom.ctaChecks }}
{{ dom.hReads }}
{{ r.t }}
{{ r.d }}
{{ dom.hWhy }}
{{ p.t }}
{{ dom.findLabel }}
{{ dom.findName }}
{{ dom.lblScale }}
{{ dom.findScale }}
{{ dom.lblImpact }}
{{ dom.findImpact }}
{{ dom.findNote }}
{{ dom.hFaqs }}
{{ f.q }}
{{ f.a }}
{{ dom.hOther }}
{{ dom.otherSub }}
{{ dom.closerT }}
{{ dom.closerD }}
{{ dom.ctaBook }}
{{ dom.closerCta }}
{{ c.kicker }}
{{ c.title }}
{{ c.sub }}
{{ c.cta1 }}
{{ c.cta2 }}
{{ f.n }}
{{ f.l }}
{{ c.s1h }}
{{ c.s1sub }}
{{ c.tableNote }}
{{ c.s2h }}
{{ p.t }}
{{ c.s3h }}
{{ a.t }}
{{ a.d }}
{{ c.s4h }}
{{ f.q }}
{{ f.a }}
{{ c.closerT }}
{{ c.closerD }}
{{ c.cta1 }}
{{ c.closerCta }}
{{ art.kicker }}
{{ art.title }}
{{ art.dek }}
{{ art.dateLine }}
{{ s.h }}
{{ p.t }}
DQL
{{ s.code }}
{{ art.findLabel }}
{{ art.findName }}
{{ art.scaleLabel }}
{{ art.findScale }}
{{ art.impactLabel }}
{{ art.findImpact }}
{{ art.takeawayLabel }}
{{ art.takeaway }}
{{ art.moreLabel }}
{{ art.ctaTitle }}
{{ art.ctaSub }}
{{ art.ctaBtn }}
AudiTrace
{{ artIndexKicker }}
{{ artIndexTitle }}
{{ artIndexSub }}
{{ t.privTitle }}
{{ t.privUpdated }}
{{ s.h }}
{{ s.b }}
{{ t.termsTitle }}
{{ t.termsUpdated }}
{{ s.h }}
{{ s.b }}
{{ t.a11yTitle }}
{{ t.a11yUpdated }}
{{ s.h }}
{{ s.b }}
{{ c.t }}
{{ c.d }}
{{ t.pTitle }}
{{ p.t }}
{{ p.d }}
{{ p.fig }}
{{ t.hTitle }}
{{ s.n }}
{{ s.t }}
{{ s.d }}
{{ t.way1k }}
{{ t.way1t }}
{{ t.way1d }}
{{ t.way2k }}
{{ t.way2t }}
{{ t.way2d }}
{{ t.waysNote }}
{{ t.fcTitle }}
{{ i.t }}
{{ i.d }}
{{ t.prDelTitle }}
{{ d.t }}
{{ d.d }}
{{ t.dTitle }}
{{ t.dSub }}
{{ t.secTitle }}
{{ b.t }}
{{ b.d }}
{{ n.t }}
{{ t.oTitle }}
{{ o.k }}
{{ o.t }}
{{ o.d }}
{{ o.p }}
{{ t.faqTitle }}
{{ q.q }}
{{ q.a }}
{{ t.cTitle }}
{{ t.cSub }}
{{ t.badge }}
{{ t.fSentT }}
{{ t.fSentD }}
{{ ccDial }}
{{ formErrMsg }}
{{ t.footColServices }}
{{ t.navServices }}
AudiTrace
{{ t.navCase }}
{{ t.footColGuides }}
{{ footGuideAudit }}
{{ footGuideCost }}
{{ footGuideCase }}
{{ footGuideArticles }}
{{ t.footColReach }}
{{ t.navContact }}
hello@obzervability.com
© 2026 Obzervability · {{ t.footRights }}
{{ t.navPrivacy }}
{{ t.navTerms }}
{{ t.navA11y }}