chore(alerting): struct names and url refactoring

This commit is contained in:
bergquist
2016-05-04 14:58:00 +02:00
parent 74d5410a38
commit 47070f2d1f
8 changed files with 27 additions and 25 deletions

View File

@@ -30,7 +30,7 @@ func GetAlertChanges(c *middleware.Context) Response {
limit := c.QueryInt64("limit") limit := c.QueryInt64("limit")
if limit == 0 { if limit == 0 {
limit = 10 limit = 50
} }
query.Limit = limit query.Limit = limit
@@ -125,10 +125,10 @@ func DelAlert(c *middleware.Context) Response {
} }
// GET /api/alerts/events/:id // GET /api/alerts/events/:id
func GetAlertState(c *middleware.Context) Response { func GetAlertStates(c *middleware.Context) Response {
alertId := c.ParamsInt64(":alertId") alertId := c.ParamsInt64(":alertId")
query := models.GetAlertsStateLogCommand{ query := models.GetAlertsStateCommand{
AlertId: alertId, AlertId: alertId,
} }
@@ -141,13 +141,9 @@ func GetAlertState(c *middleware.Context) Response {
// PUT /api/alerts/events/:id // PUT /api/alerts/events/:id
func PutAlertState(c *middleware.Context, cmd models.UpdateAlertStateCommand) Response { func PutAlertState(c *middleware.Context, cmd models.UpdateAlertStateCommand) Response {
alertId := c.ParamsInt64(":alertId") cmd.AlertId = c.ParamsInt64(":alertId")
if alertId != cmd.AlertId { query := models.GetAlertByIdQuery{Id: cmd.AlertId}
return ApiError(401, "Bad Request", nil)
}
query := models.GetAlertByIdQuery{Id: alertId}
if err := bus.Dispatch(&query); err != nil { if err := bus.Dispatch(&query); err != nil {
return ApiError(500, "Failed to get alertstate", err) return ApiError(500, "Failed to get alertstate", err)
} }

View File

@@ -239,11 +239,17 @@ func Register(r *macaron.Macaron) {
r.Get("/metrics/test", GetTestMetrics) r.Get("/metrics/test", GetTestMetrics)
r.Group("/alerts", func() { r.Group("/alerts", func() {
r.Get("/:alertId/states", wrap(GetAlertState)) r.Group("/rules", func() {
r.Put("/:alertId/state", bind(m.UpdateAlertStateCommand{}), wrap(PutAlertState)) r.Get("/:alertId/states", wrap(GetAlertStates))
r.Get("/:alertId", ValidateOrgAlert, wrap(GetAlert))
r.Get("/", wrap(GetAlerts)) r.Put("/:alertId/state", bind(m.UpdateAlertStateCommand{}), wrap(PutAlertState))
r.Delete("/:alertId", ValidateOrgAlert, wrap(DelAlert))
r.Get("/:alertId", ValidateOrgAlert, wrap(GetAlert))
r.Delete("/:alertId", ValidateOrgAlert, wrap(DelAlert))
r.Get("/", wrap(GetAlerts))
})
r.Get("/changes", wrap(GetAlertChanges))
}) })
r.Get("/alert-changes", wrap(GetAlertChanges)) r.Get("/alert-changes", wrap(GetAlertChanges))

View File

@@ -4,7 +4,7 @@ import (
"time" "time"
) )
type AlertStateLog struct { type AlertState struct {
Id int64 `json:"-"` Id int64 `json:"-"`
OrgId int64 `json:"-"` OrgId int64 `json:"-"`
AlertId int64 `json:"alertId"` AlertId int64 `json:"alertId"`
@@ -36,9 +36,9 @@ type UpdateAlertStateCommand struct {
// Queries // Queries
type GetAlertsStateLogCommand struct { type GetAlertsStateCommand struct {
OrgId int64 `json:"orgId" binding:"Required"` OrgId int64 `json:"orgId" binding:"Required"`
AlertId int64 `json:"alertId" binding:"Required"` AlertId int64 `json:"alertId" binding:"Required"`
Result *[]AlertStateLog Result *[]AlertState
} }

View File

@@ -32,7 +32,7 @@ func SetNewAlertState(cmd *m.UpdateAlertStateCommand) error {
alert.State = cmd.NewState alert.State = cmd.NewState
sess.Id(alert.Id).Update(&alert) sess.Id(alert.Id).Update(&alert)
log := m.AlertStateLog{ log := m.AlertState{
AlertId: cmd.AlertId, AlertId: cmd.AlertId,
OrgId: cmd.AlertId, OrgId: cmd.AlertId,
NewState: cmd.NewState, NewState: cmd.NewState,
@@ -47,8 +47,8 @@ func SetNewAlertState(cmd *m.UpdateAlertStateCommand) error {
}) })
} }
func GetAlertStateLogByAlertId(cmd *m.GetAlertsStateLogCommand) error { func GetAlertStateLogByAlertId(cmd *m.GetAlertsStateCommand) error {
alertLogs := make([]m.AlertStateLog, 0) alertLogs := make([]m.AlertState, 0)
if err := x.Where("alert_id = ?", cmd.AlertId).Desc("created").Find(&alertLogs); err != nil { if err := x.Where("alert_id = ?", cmd.AlertId).Desc("created").Find(&alertLogs); err != nil {
return err return err

View File

@@ -82,7 +82,7 @@ func TestAlertingStateAccess(t *testing.T) {
}) })
Convey("should have two event state logs", func() { Convey("should have two event state logs", func() {
query := &m.GetAlertsStateLogCommand{ query := &m.GetAlertsStateCommand{
AlertId: 1, AlertId: 1,
OrgId: 1, OrgId: 1,
} }

View File

@@ -42,7 +42,7 @@ func addAlertMigrations(mg *Migrator) {
mg.AddMigration("create alert_rules_updates table v1", NewAddTableMigration(alert_changes)) mg.AddMigration("create alert_rules_updates table v1", NewAddTableMigration(alert_changes))
alert_state_log := Table{ alert_state_log := Table{
Name: "alert_state_log", Name: "alert_state",
Columns: []*Column{ Columns: []*Column{
{Name: "id", Type: DB_BigInt, IsPrimaryKey: true, IsAutoIncrement: true}, {Name: "id", Type: DB_BigInt, IsPrimaryKey: true, IsAutoIncrement: true},
{Name: "alert_id", Type: DB_BigInt, Nullable: false}, {Name: "alert_id", Type: DB_BigInt, Nullable: false},

View File

@@ -22,7 +22,7 @@ export class AlertLogCtrl {
} }
loadAlertLogs() { loadAlertLogs() {
this.backendSrv.get(`/api/alerts/${this.alertId}/states/`).then(result => { this.backendSrv.get(`/api/alerts/rules/${this.alertId}/states`).then(result => {
this.alertLogs = _.map(result, log => { this.alertLogs = _.map(result, log => {
log.iconCss = alertDef.getCssForState(log.newState); log.iconCss = alertDef.getCssForState(log.newState);
log.humanTime = moment(log.created).format("YYYY-MM-DD HH:mm:ss"); log.humanTime = moment(log.created).format("YYYY-MM-DD HH:mm:ss");
@@ -30,7 +30,7 @@ export class AlertLogCtrl {
}); });
}); });
this.backendSrv.get(`api/alerts/${this.alertId}`).then(result => { this.backendSrv.get(`/api/alerts/rules/${this.alertId}`).then(result => {
this.alert = result; this.alert = result;
}); });
} }

View File

@@ -16,7 +16,7 @@ export class AlertPageCtrl {
} }
loadAlerts() { loadAlerts() {
this.backendSrv.get('/api/alerts').then(result => { this.backendSrv.get('/api/alerts/rules').then(result => {
this.alerts = _.map(result, alert => { this.alerts = _.map(result, alert => {
alert.iconCss = alertDef.getCssForState(alert.state); alert.iconCss = alertDef.getCssForState(alert.state);
return alert; return alert;