@ -14,14 +14,15 @@ import (
"strings"
"strings"
"time"
"time"
"github.com/prometheus/alertmanager/config"
"github.com/prometheus/alertmanager/template"
"github.com/prometheus/alertmanager/types"
"github.com/grafana/grafana/pkg/infra/log"
"github.com/grafana/grafana/pkg/infra/log"
"github.com/grafana/grafana/pkg/models"
"github.com/grafana/grafana/pkg/models"
ngmodels "github.com/grafana/grafana/pkg/services/ngalert/models"
ngmodels "github.com/grafana/grafana/pkg/services/ngalert/models"
"github.com/grafana/grafana/pkg/services/notifications"
"github.com/grafana/grafana/pkg/services/notifications"
"github.com/grafana/grafana/pkg/setting"
"github.com/grafana/grafana/pkg/setting"
"github.com/prometheus/alertmanager/config"
"github.com/prometheus/alertmanager/template"
"github.com/prometheus/alertmanager/types"
)
)
var SlackAPIEndpoint = "https://slack.com/api/chat.postMessage"
var SlackAPIEndpoint = "https://slack.com/api/chat.postMessage"
@ -199,7 +200,7 @@ func (sn *SlackNotifier) Notify(ctx context.Context, alerts ...*types.Alert) (bo
return false , fmt . Errorf ( "marshal json: %w" , err )
return false , fmt . Errorf ( "marshal json: %w" , err )
}
}
sn . log . Debug ( "S ending Slack API request" , "url" , sn . URL . String ( ) , "data" , string ( b ) )
sn . log . Debug ( "s ending Slack API request" , "url" , sn . URL . String ( ) , "data" , string ( b ) )
request , err := http . NewRequestWithContext ( ctx , http . MethodPost , sn . URL . String ( ) , bytes . NewReader ( b ) )
request , err := http . NewRequestWithContext ( ctx , http . MethodPost , sn . URL . String ( ) , bytes . NewReader ( b ) )
if err != nil {
if err != nil {
return false , fmt . Errorf ( "failed to create HTTP request: %w" , err )
return false , fmt . Errorf ( "failed to create HTTP request: %w" , err )
@ -212,7 +213,7 @@ func (sn *SlackNotifier) Notify(ctx context.Context, alerts ...*types.Alert) (bo
panic ( "Token should be set when using the Slack chat API" )
panic ( "Token should be set when using the Slack chat API" )
}
}
} else {
} else {
sn . log . Debug ( "A dding authorization header to HTTP request" )
sn . log . Debug ( "a dding authorization header to HTTP request" )
request . Header . Set ( "Authorization" , fmt . Sprintf ( "Bearer %s" , sn . Token ) )
request . Header . Set ( "Authorization" , fmt . Sprintf ( "Bearer %s" , sn . Token ) )
}
}
@ -252,7 +253,7 @@ var sendSlackRequest = func(request *http.Request, logger log.Logger) (retErr er
}
}
defer func ( ) {
defer func ( ) {
if err := resp . Body . Close ( ) ; err != nil {
if err := resp . Body . Close ( ) ; err != nil {
logger . Warn ( "F ailed to close response body" , "err" , err )
logger . Warn ( "f ailed to close response body" , "err" , err )
}
}
} ( )
} ( )
@ -285,7 +286,7 @@ var sendSlackRequest = func(request *http.Request, logger log.Logger) (retErr er
return fmt . Errorf ( "failed to make Slack API request: %s" , rslt . Err )
return fmt . Errorf ( "failed to make Slack API request: %s" , rslt . Err )
}
}
logger . Debug ( "S ending Slack API request succeeded" , "url" , request . URL . String ( ) , "statusCode" , resp . Status )
logger . Debug ( "s ending Slack API request succeeded" , "url" , request . URL . String ( ) , "statusCode" , resp . Status )
return nil
return nil
}
}