diff --git a/cmd/bosun/sched/check.go b/cmd/bosun/sched/check.go index 18924a27ae..5754269645 100644 --- a/cmd/bosun/sched/check.go +++ b/cmd/bosun/sched/check.go @@ -166,7 +166,9 @@ func (s *Schedule) runHistory(r *RunHistory, ak expr.AlertKey, event *Event, sil wasOpen := state.Open // render templates and open alert key if abnormal if event.Status > StNormal { - s.executeTemplates(state, event, a, r) + if event.Status >= last { + s.executeTemplates(state, event, a, r) + } state.Open = true if a.Log { state.Open = false diff --git a/cmd/bosun/sched/sched.go b/cmd/bosun/sched/sched.go index 8e66355df8..a46110d408 100644 --- a/cmd/bosun/sched/sched.go +++ b/cmd/bosun/sched/sched.go @@ -221,10 +221,11 @@ func (s *Schedule) GetMetadata(metric string, subset opentsdb.TagSet) ([]metadat type States map[expr.AlertKey]*State type StateTuple struct { - NeedAck bool - Active bool - Status Status - Silenced bool + NeedAck bool + Active bool + Status Status + CurrentStatus Status + Silenced bool } // GroupStates groups by NeedAck, Active, Status, and Silenced. @@ -233,10 +234,11 @@ func (states States) GroupStates(silenced map[expr.AlertKey]Silence) map[StateTu for ak, st := range states { _, sil := silenced[ak] t := StateTuple{ - st.NeedAck, - st.IsActive(), - st.AbnormalStatus(), - sil, + NeedAck: st.NeedAck, + Active: st.IsActive(), + Status: st.AbnormalStatus(), + CurrentStatus: st.Status(), + Silenced: sil, } if _, present := r[t]; !present { r[t] = make(States) @@ -341,16 +343,17 @@ func (s *Schedule) GetOpenStates() States { } type StateGroup struct { - Active bool `json:",omitempty"` - Status Status - Silenced bool - IsError bool `json:",omitempty"` - Subject string `json:",omitempty"` - Alert string `json:",omitempty"` - AlertKey expr.AlertKey `json:",omitempty"` - Ago string `json:",omitempty"` - State *State `json:",omitempty"` - Children []*StateGroup `json:",omitempty"` + Active bool `json:",omitempty"` + Status Status + Silenced bool + CurrentStatus Status + IsError bool `json:",omitempty"` + Subject string `json:",omitempty"` + Alert string `json:",omitempty"` + AlertKey expr.AlertKey `json:",omitempty"` + Ago string `json:",omitempty"` + State *State `json:",omitempty"` + Children []*StateGroup `json:",omitempty"` } type StateGroups struct { @@ -414,10 +417,11 @@ func (s *Schedule) MarshalGroups(T miniprofiler.Timer, filter string) (*StateGro }) for name, group := range sets { g := StateGroup{ - Active: tuple.Active, - Status: tuple.Status, - Silenced: tuple.Silenced, - Subject: fmt.Sprintf("%s - %s", tuple.Status, name), + Active: tuple.Active, + Status: tuple.Status, + CurrentStatus: tuple.CurrentStatus, + Silenced: tuple.Silenced, + Subject: fmt.Sprintf("%s - %s", tuple.Status, name), } for _, ak := range group { st := s.status[ak].Copy() diff --git a/cmd/bosun/web/static.go b/cmd/bosun/web/static.go index 79c989f27e..f7560c6fcf 100644 --- a/cmd/bosun/web/static.go +++ b/cmd/bosun/web/static.go @@ -9098,7 +9098,7 @@ xitlUKAxazlo8/8JAAD//4NB/DtLfAAA "/js/bosun.js": { local: "web/static/js/bosun.js", - size: 99679, + size: 99739, modtime: 0, compressed: ` H4sIAAAJbogA/+y9fXvbNrI4+vfpp2C0aUTXsmS7Tbfr1MlNk76d07Q9Tdrd/Sk+XkqkJMYSqZCUXzbx @@ -9419,16 +9419,16 @@ rfYq+JZiHVvyEFJFTplF0lmZKLwtzuhmiwdS7pgunsim/q0709dlN2g/K+JVrNUCsKg9W+ZlIi1r7ltg PkbGK4kZZRWd3vh6hzEnKbUdGdSXop26wj98VBUluPkv971G4sFeYCZwrdxNqtf7jKEU+t1AEezwrjtt BN6JNpe65niv6tRlgujDHuOmPay/R7dDuQ6gNIaXNSghomCvFZqbaXrIo1ADseoWK0WTJal9qaBspZT9 sz/i5WwZR/H5/wjLU6ZDzOYBA+s6uvfxTYYuVH+wacINDUBDK5caUXQeawiuM4kIaXKfLrGdLbGaPrxp -HZkt8c7sCmQrumK6MAGNe1X5fbHu2e6Rp4mUsVQOwiUjD5VTJeauHbkMdZqrwM3WQbS1mdzUUO3niv6I -1fqE0pdSgm34g5KJCl49szXRIt4o+hT26En8TR5fuZUHbtDL5/PlNgozWiFU20UXuwVFWTVUtW8kGKfx -FvSwZJrNh8Oh5dyneJRG+xVKR8ZJnrzSxl2mzVR+tnCtyQ9l22X0UoSmreIT6gT/NtfSZTjlh9AJZfW0 -/AHma4j1eKWZv4Ed74FroYrfQMGHs5Y11AlHdPmEcXOcSuStDUn38yzsM8OVIiKT1mSYx8dMVrXzLptT -t0xESZj+fVH6re0yifecX/ERgmarG0NFjEWd9GwUjgfvrsOdk53RHJeag9ebw/39ie0CAbeNgjjiVb5B -i0jjKbB8dEb72bUsVtaS6dR389e5mls1ZL+dNbvHitXO4/4tBI0t79wnAfCRRCgV4gdbJdOk/LolRahO -6E9A6FOx0lnQjfc7pQ6RS/62WaLaQGoy+djmmN/BSglzKLt0MIUcBNxxoXmAV5c/F3dbtKCiIxA4usLt -1GuuwOjt+Ot4JS6+2LoOuh+jZzvdRTYa2hk49tA+NicHU1cm57Yj2gfivY+9Y5S1ehZEGmFHbK1iferK -Y4Ih2NUhXNifEirvpkEKf+qUVqfL+qfDtB1c8Tsgb3VpgMdx50iYbpBAxqoPQsQUMXcl4zsRYXH3dLBg -DZOQ/zsAAP//Qe8tLV+FAQA= +HZkt8c7sCmQrumK6MAGNe1X5fbHu2e6RZ4sjy0j1Uhy7kEuxsxjushlLAyHcOfIwO9Vp7haSy1CHuwrc +bA1FO53JiQ3Vfo7qj1itTyj1KSXnhj8oEang8zNbEy2ikSJXYX+fxN/k8ZVb8eDGwHw+X26jbKMFQ7V7 +dLF5UIRWQ1X7JoRxKW9BD0um2Xw4HFrOjIpHabRfGXVkq+SJL23cZdpb5WcLt5z8UKZeRi9Fd9oqPqFO +8G+RLV2G4mIInVBWT8sfYK6HWI9XEvob2PEOuRaq+O0VfDhrOUWdcEQXVxi3zqlE3toIdT/Pwj4zeini +NWlNpHl8zORcO++yOXXLJJaE6d8Xpd9SL5N4z/kVHyFotrptVMRn1AnTRuF48O463DnZGc1xmTp4vTnc +35/YLh9w2zeII17lG7SmNF4Gy0dnpKBdQ2NlLVlSfbeGnat5WUP221mze6xY7fzMgIWgseWd+xQBPpII +pUL8UKxk1pRft6QX1Qn9CQh9KlY6C7rxfqe0I3LJ3zZLVDlIxSb/3BxzQ1gpYc5ol/6mkIOAOy40D/Da +8+fiXowWVHR8AkdXuKx6zfUZvR1/Ha/EpRlb10F3a/RsJ8PIvkO7Csf+28fm5JzqyuTc7kR7SLwzsneM +slbPoEgj7IjLVSxXXXlMMAS7doQL+1NC5d1wSKFTnVLydFn/dJi2Qy9+5+WtLhzwOP0cydYNEsjQ9UGI +mCLmrmR8J6Iz7p4OFuhhEvJ/BwAA//97bdAGm4UBAA== `, }, @@ -12383,36 +12383,37 @@ dbXyA0j6O1j8GwAA//+4yx/k9A8AAA== "/js/state.ts": { local: "web/static/js/state.ts", - size: 5227, + size: 5269, modtime: 0, compressed: ` -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 +lySVFAAA `, }, @@ -12930,21 +12931,23 @@ H4sIAAAJbogA/xzLQQ6CMBCF4atMZoMu0AswJF7AOzzaARtqMZ0magh3p+niJW/x/QPIRZgJTyVRXf/J "/partials/ackgroup.html": { local: "web/static/partials/ackgroup.html", - size: 1782, + size: 2142, modtime: 0, compressed: ` -H4sIAAAJbogA/6RVTW/jKhRd5/0KnlUpjvScLNrVkx2pqjSafZejWWC4NkwIWIDzoSj/ffiy47Ruq9Es -IjD3cu65cA4pKT8gIrAxVdZhCaJoteq7DMm2MEwdqyx8m2z7z2KaSwRg3fCTX1+U7NHn11zSKsNkl42I -vRCFgMZm23LDHkOucWXu4pq3zAachQEBxPpZWettHHtr1bihthK5X0Ghwb2wYW72gS0RnOyqLELkVvew -yrZYiHITIf4KrsHCeDypJEwBy41v55O+0JFbVkQUoJNjxfL8OqwGaj4RDYl3R4Df0u0032N9nqG7d11w -TCxXMl+6m1iuQpRyg2sB7nb+JVg+k92ttEuS6uhirWsMf1DwiLXksv2qIBHKwGzJFx+5FQ2JH5ejWLag -v6rWKN2CnS33LYRu9WLqJwXf3z/T0FTZ5cK4sUqf89X1mm2/x48ENF5+uXHOeGOQYKbE/bbw4ud5sNT6 -1WLbm0hfQwfYJrMhLlFynY9xyV2E0xOq0IOzGCTTvXMuA0zdLU0PjCghcGcgd9tXUWcle7rfZrkVEGOL -UuAaxIyMozBT1qLksustsucOXA0GZFerUzbjak9lryiI1No6JCcjDBz9kD/AAaT9L3UYT4UwL4Qq6zuK -LeSrgeQmsEwfGPmrGohNXdiKc8c4UXJ6DZfluFzAyS3usZdTYXgrl//Hc18/O4kd4OpfrcHffwx+UKLf -Q6GaZoR95QIkAToPPL6gKbmvf4Uj/5jD9Pm8XOK2F8YF1SDXrlRr2fWKsABtzRRlNMKGPUUhR/3OaKpW -9Ize/jFw5wz/iskfTlY/k6zc1gB+p/+wMusB49QPaze1oxGG5MEMxLcymmHsLOZZUwQI5Cat7rxVHRlv -0tjZ0NFgzTim4XcAAAD//6h6Z1H2BgAA +H4sIAAAJbogA/6RV34/iNhB+5v4KNz0JUBu4Fnp33Qak7Z6qvu9j1QfHmcTuGjuynQWE+N87/pHAcizb +6rRaJfHMfN/MeL6hsG4vYf1u1lIFMudAK6GaQ6lNBSY3+NXZu0W7++3Yu1RUNWgq9Q69drnltNLbO/JL +uyMfwt/39NflcvkzEcqCO8VtqVEIfSvw8/3HL4vfLwNtxxhYeytw8fDp4+LLZaBQtb4Z9dOnD5/rIaqY +p14UlXgmTFJrV1lEaozu2oxg9pbr7SoL3zZbvxud+zIJ1NRi589HBV94/1KoapVR9pQNiJ2UuYTaZeti +zhfB1yLNC7sRDXcBZ2RBAnP+rSjNOj475/QQUDpF8D+voKaddOHdbkK2TAr2tMoixMSZDqbZmkpZzCPE +N8HVVFqPp7SCc0DsI5Zzoy6yFY7nEQWqs7ZStX/sT0Nq3pH0ji9aQC/TbY3YULO/ku4GqxCUOaHVZIw3 +MZ4GayUsLSXg7XzHqLpnTydqdFJ6i7YGC6OvEKZ5fouQSW3hKuWDt5xIg+PrdFF2b7HV2jTgrtL9EUwn +vuh6g/Dr++cG6lV2OHBhnTb7yfR4zNZ/xo8ENFx+MUdlXAgkiCnlfjp48O+TIKnZo6OuszF9Ay1Ql8SG +KiVJdd4mlECLqHZkRd6jxCCJ7ivlpoV2k/ShMwaUS9w/jP3OGJ+3mGkpaWthgoTTOJkFX74kcsJJiLZR +IWkJ8srgx1FOXqNCqLZzxO1bQA4O7AmJsyt7wKey0RXI1IxZcE7S6XP0j8l7eMZKfkw9iX1k3I/OKuva +ijqYTPsk5yHL9EGJv9w+sXPdNnLfcsG0Ou/hYTwc57DDww31A5hb0ajxXbyp2T0O5TMc/Z7rN8L/Bn/W +sttArut6gH0UEhSD6jrwsHOTc1f+E1r+eg7nC/dwSCPBhaxwKGZI1Th+PBIqwTh7jjJIZ86XcfTjxF+Z +wlJXe3L5UyJQS37vqb9wrP5OY4WhAfyFYsLJf1BN79crh/kqBuUMRUU/Z3OLcUDwpTGt1zXmgYpOBxHU +H19RiRd+rL2vuZd7fKbHvwEAAP//1kNQfV4IAAA= `, }, @@ -12981,24 +12984,24 @@ NeZtQ48ZNx5cB0tkPLvkz/bBIAzIu+Vq0mH5U/wNAAD//wJxdrNjAwAA "/partials/alertstate.html": { local: "web/static/partials/alertstate.html", - size: 3396, + size: 3440, modtime: 0, compressed: ` -H4sIAAAJbogA/7RWUW/jNgx+zv0KTQc0LTDHSFcUWGG7uAEdVmx72bV7V2zG1qpImSQ3zXL+76NsOXES -Z7dL0ofWDEV9+kiKpKKMv5JUMGNiOmcSRFAAy7jMKZF5kAqevsTUqjwXcHlFkw+DqLjZtrfcCnArg4iR -QsPUiYPI4GprmIvlvOCpkh60Vq6Ga3UAb6icMctRNjyXwztiLLMwQlM7+oxiacjFRY/yu5gMpdIzJoYV -TaLQHXsEgVclyhkEajrFo9OCi2z0mQuQKWSnwP5dgtl36lnCKxMlirvgzOG4GMYUtFb6F26s0st7JkDb -eLVCQiqDywbmk1NeVQ7im0hNuYa1l4/mwR204RGFrOMoIphCLWLaifyjTHkG0j5mNPm4WvWuVNXdXtAQ -a8JlFlMf33LyF6SWfPniqdT+/ArLrZDsxXxeChFonheWbth5gFxRYg0GG/PWVXYAG/eisLhJPkQhXn78 -7JXARGXLGp1jItwJ9cXvmOlGtaVLlQjMLLiljcs91r32P/ilQTTHPFqtZJ7UkSAYChfERhWFcw/RkD6A -9uMabTvk/yzMpWQzuKIk3MXpSKeQdgUJZyO8V+mOOKkzSxpTTLTlM9gyfUIFfS8H/+SwMCc42CnusPCF -/QLLTVnXCXL1/DPeceJr313Y7/cR2rr7oxTwrIXb5UTykHHcdWBTCG9zfe/+4aETq5jvJA+oqQ92AhiD -HesQAvclfs+z+GDt06T9RS4/Hk5sp5GEyVXbePoStxHep+B8rz8puX5lYiXBvyCDKSuFreU3QzshNM1h -91mp64kXj4uLtsF3OntVXViWm92u/4S6OldjUqhSr6N2GoXroyhc1xTMmTjcHsXh9qwcxscFYnzeSFzf -HJeOmx0WZ2+Bn1LH75QmiF2bpS+4zwsbdSqUgWahETdLU6VzsO1AzrUq5+37L8b3XylfpFrIIW12N9b/ -PwK7j5zfsDc1jn5bcNw+0mw8PkBtwjckRk/LOVTVzpTsJzx6NqBpMlmSHhy3VlWdt9VgwGz/MO2e7kZq -srXrayR+xxHCctx110fDr24z+Y+ev/72pK1+n9UH/OSebAcmxPjaj4hCh1+bJmjbzqqgsDOxjb/DyX/+ -DQAA//9L9sWERA0AAA== +H4sIAAAJbogA/7RWX2/jNgx/zn0KTQc0CTbHSFcUWGG7uA0dVmx72bV7V2zG1qpImSS3yXL+7qP8J7ET +Z7dLcg+tGZL66SdSJBUk/JXEghkT0iWTILwMWMJlSolMvbbhJyeP4lxrkPajZTY342+H3kythrUvj19C +alWaChiNafRuEGQ3XWzLrQBnGQSMZBrmThwEBq2NYyrWy4zHSrYJbIZbtQcrVC6Y5SgbnsrhHTHIBibo +aicVMXJ11aP8JiRDqfSCiWFBo8B3255A4FWJfAGems9x6zjjIpl85AJkDMk5sH/nYA4P9SzhlYkcxX1w +5nBcDEMKWiv9CzdW6fU9E6BtuNkgIZXAqIL54JTjwkF8Eak517A95aN5cBvteAQ+ax0UEUym3kLaivyj +jHmC9+UxodH7zabXUhR3B0FDrBmXSUjr+OazvyC25NOnmkp5nl9h3QnJQcyXuRCe5mlm6Y5dDZAqSqzB +YGPe2soWYHW8wM9uoneBj4WCn4NymalkXaJzTITbobz4LTddqTq6WAnPLLxbWh25x7vX//vaNAiWmEer +lUyjMhIEQ+GCWKkCf1lDVKSPoP2wReuG/J83M5JsAWNK/H2clnQOaVeQcDHCB5XuiJMys6RyxURbvoCO +6xMq6Nc64J8c3swZB2wVt5/Vhf0C611Zlwly9fwz3nFS1767sN8dIjR190cu4FkLt8qJ5CHhuOrIIh9W +S33v/uGmM6tY3UkeUFNu7AQwBjvWMQRel/g9T8KjtU+j5hcZvT+e2FYj8aNx03j6ErcTvk7B1b3+rOTW +lpmVBP+8BOYsF7aUV4a2Qmiqze6TXJcTL5xmV02Db3X2oriyLDX7Xf8JdWWupiRTud5G7TwK1ydRuC4p +mAtxuD2Jw+1FOUxPC8T0spG4vjktHTd7LC7eAj/Ejt85TRC7NotfcF0t7NSxUAYqQyXuTHOlU7DNQE61 +ypfN+y/E918uX6R6k0Nara68/38E9h85v2Fvqg76ZcFx60i18PQANQnfkZg8rZdQFHtTsp/w5NmAptFs +TXpwnK0oWm+rwYDZ/mHa3t2N1Kiz6nMkfscRwlJcdddHo7Z2mfxHz99+e9JWvs/KDX50T7YjE2J6XY+I +TPufmybo28wqL7ML0cXf41R//g0AAP//GItLbXANAAA= `, }, diff --git a/cmd/bosun/web/static/js/bosun.js b/cmd/bosun/web/static/js/bosun.js index 0578a1730d..83763a945b 100644 --- a/cmd/bosun/web/static/js/bosun.js +++ b/cmd/bosun/web/static/js/bosun.js @@ -2561,6 +2561,7 @@ bosunApp.directive('tsState', ['$sce', '$http', function ($sce, $http) { templateUrl: '/partials/alertstate.html', link: function (scope, elem, attrs) { var myIdx = attrs["tsGrp"]; + scope.currentStatus = attrs["tsGrpstatus"]; scope.name = scope.child.AlertKey; scope.state = scope.child.State; scope.action = function (type) { diff --git a/cmd/bosun/web/static/js/state.ts b/cmd/bosun/web/static/js/state.ts index b80e919262..631f35fe6c 100644 --- a/cmd/bosun/web/static/js/state.ts +++ b/cmd/bosun/web/static/js/state.ts @@ -105,7 +105,7 @@ bosunApp.directive('tsState', ['$sce', '$http', function($sce: ng.ISCEService, $ templateUrl: '/partials/alertstate.html', link: function(scope: any, elem: any, attrs: any) { var myIdx = attrs["tsGrp"]; - + scope.currentStatus = attrs["tsGrpstatus"] scope.name = scope.child.AlertKey; scope.state = scope.child.State; scope.action = (type: string) => { diff --git a/cmd/bosun/web/static/partials/ackgroup.html b/cmd/bosun/web/static/partials/ackgroup.html index fa6cc35dcd..33d2523ef1 100644 --- a/cmd/bosun/web/static/partials/ackgroup.html +++ b/cmd/bosun/web/static/partials/ackgroup.html @@ -1,3 +1,10 @@ +

@@ -17,7 +24,7 @@

-
+

diff --git a/cmd/bosun/web/static/partials/alertstate.html b/cmd/bosun/web/static/partials/alertstate.html index 6c2f3b2734..68a59855bc 100644 --- a/cmd/bosun/web/static/partials/alertstate.html +++ b/cmd/bosun/web/static/partials/alertstate.html @@ -1,4 +1,4 @@ -
+