Alertmanager: Silences placed in future creates a dead-lock.

Created on 10 May 2017  Â·  7Comments  Â·  Source: prometheus/alertmanager

When creating a future-silence, the silence is created with a delete button that doesn't function. I see no clear way of disarming or deactivating the silence.

Most helpful comment

Hiding will cause confusion. I'd prefer that it is placed in expired.

All 7 comments

I got into the same issue when working on the new UI. When I want to delete a pending silence I get:

screen shot 2017-05-20 at 16 26 03

On it.

I fixed the issue semantically. But as we never delete but only expire, afterwards the silence still exists but has an effective duration of 0. It is still shown in the "pending" tab.

I think there are two options: Completely hide any silence at UI or API level where startsAt == endsAt or sort it into the "expired" tab even though the start lays in the future.

Another alternative would be to add this logic on the server in types.go/CalcSilenceState and set any Silence to Expired where startsAt == endsAt. What do you think? @w0rm @fabxc

I would prefer showing them as. It would be surprising to hide them or not,
just because they were expired before or after they begin. A silence that
will never be active has the same effect as one that did have an effect on
the past but not the future.

I think server side is the right place for this logic.

On Mon, May 22, 2017, 09:18 Fabian Reinartz notifications@github.com
wrote:

I fixed the issue semantically. But as we never delete but only expire,
afterwards the silence still exists but has an effective duration of 0. It
is still shown in the "pending" tab.

I think there are two options: Completely hide any silence at UI or API
level where startsAt == endsAt or sort it into the "expired" tab even
though the start lays in the future.

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/prometheus/alertmanager/issues/783#issuecomment-303018808,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAICBrfzUwJqdHBqvp5XxjR2oOrLJKt_ks5r8TbVgaJpZM4NWglD
.

Hiding will cause confusion. I'd prefer that it is placed in expired.

In #811 @RSamal @fabxc and came up with a third solution. Instead of setting endsAt to startsAt we can set both to now. Thereby the Silence will get the expired state by default.

Was this page helpful?
0 / 5 - 0 ratings