Alerting: Update references to alertmanager (#40904)
* update module reference for alertmanager * remove workaround
This commit is contained in:
@@ -8,7 +8,6 @@ import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"net/url"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"regexp"
|
||||
"strconv"
|
||||
@@ -31,6 +30,8 @@ import (
|
||||
"github.com/prometheus/client_golang/prometheus"
|
||||
"github.com/prometheus/common/model"
|
||||
|
||||
pb "github.com/prometheus/alertmanager/silence/silencepb"
|
||||
|
||||
"github.com/grafana/grafana/pkg/infra/kvstore"
|
||||
"github.com/grafana/grafana/pkg/infra/log"
|
||||
apimodels "github.com/grafana/grafana/pkg/services/ngalert/api/tooling/definitions"
|
||||
@@ -40,7 +41,6 @@ import (
|
||||
"github.com/grafana/grafana/pkg/services/ngalert/notifier/channels"
|
||||
"github.com/grafana/grafana/pkg/services/ngalert/store"
|
||||
"github.com/grafana/grafana/pkg/setting"
|
||||
pb "github.com/prometheus/alertmanager/silence/silencepb"
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -165,7 +165,12 @@ func newAlertmanager(orgID int64, cfg *setting.Cfg, store store.AlertingStore, k
|
||||
c := am.peer.AddState(fmt.Sprintf("notificationlog:%d", am.orgID), am.notificationLog, m.Registerer)
|
||||
am.notificationLog.SetBroadcast(c.Broadcast)
|
||||
|
||||
am.silences, err = newSilences(silencesFilePath, m.Registerer)
|
||||
// Initialize silences
|
||||
am.silences, err = silence.New(silence.Options{
|
||||
Metrics: m.Registerer,
|
||||
SnapshotFile: silencesFilePath,
|
||||
Retention: retentionNotificationsAndSilences,
|
||||
})
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("unable to initialize the silencing component of alerting: %w", err)
|
||||
}
|
||||
@@ -190,31 +195,6 @@ func newAlertmanager(orgID int64, cfg *setting.Cfg, store store.AlertingStore, k
|
||||
return am, nil
|
||||
}
|
||||
|
||||
// newSilences initializes returns *silence.Silences (from the Alertmanager) with silences taken from the file by path silencesFilePath and specific metrics registerer.
|
||||
func newSilences(silencesFilePath string, registerer prometheus.Registerer) (*silence.Silences, error) {
|
||||
//TODO yuriy: Replace with silencesFilePath when fix in https://github.com/prometheus/alertmanager/pull/2710 is merged.
|
||||
silenceOpts := silence.Options{
|
||||
Metrics: registerer,
|
||||
Retention: retentionNotificationsAndSilences,
|
||||
}
|
||||
|
||||
//The path is generated by the filestore. So presumably it should be safe
|
||||
//nolint:gosec
|
||||
silencesFileReader, err := os.Open(silencesFilePath)
|
||||
if err != nil && !os.IsNotExist(err) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if silencesFileReader != nil {
|
||||
silenceOpts.SnapshotReader = silencesFileReader
|
||||
defer func(file *os.File) {
|
||||
_ = file.Close()
|
||||
}(silencesFileReader)
|
||||
}
|
||||
// Initialize silences
|
||||
return silence.New(silenceOpts)
|
||||
}
|
||||
|
||||
func (am *Alertmanager) Ready() bool {
|
||||
// We consider AM as ready only when the config has been
|
||||
// applied at least once successfully. Until then, some objects
|
||||
|
||||
Reference in New Issue
Block a user