diff --git a/server/pkg/api/rest/controller/benchmarkInfo.go b/server/pkg/api/rest/controller/benchmarkInfo.go index 9c3ff1b..32e265b 100644 --- a/server/pkg/api/rest/controller/benchmarkInfo.go +++ b/server/pkg/api/rest/controller/benchmarkInfo.go @@ -57,6 +57,7 @@ func GetBenchmarkInfo(c echo.Context) error { // @Accept json // @Produce json // @Param connId path string true "ID of the connection info" +// @Param types query string false "Comma-separated types for benchmarking (e.g., cpus, cpum, memR, memW, fioR, fioW, dbR, dbW)" default(cpus,cpum) // @Success 200 {object} model.Benchmark "Successfully get information of the benchmark." // @Failure 400 {object} common.ErrorResponse "Sent bad request." // @Failure 500 {object} common.ErrorResponse "Failed to get information of the benchmark." diff --git a/server/pkg/api/rest/docs/docs.go b/server/pkg/api/rest/docs/docs.go index 6f88aa2..2b365b8 100644 --- a/server/pkg/api/rest/docs/docs.go +++ b/server/pkg/api/rest/docs/docs.go @@ -85,6 +85,13 @@ const docTemplate = `{ "name": "connId", "in": "path", "required": true + }, + { + "type": "string", + "default": "cpus,cpum", + "description": "Comma-separated types for benchmarking (e.g., cpus, cpum, memR, memW, fioR, fioW, dbR, dbW)", + "name": "types", + "in": "query" } ], "responses": { diff --git a/server/pkg/api/rest/docs/swagger.json b/server/pkg/api/rest/docs/swagger.json index c7fa4a0..21baecf 100644 --- a/server/pkg/api/rest/docs/swagger.json +++ b/server/pkg/api/rest/docs/swagger.json @@ -78,6 +78,13 @@ "name": "connId", "in": "path", "required": true + }, + { + "type": "string", + "default": "cpus,cpum", + "description": "Comma-separated types for benchmarking (e.g., cpus, cpum, memR, memW, fioR, fioW, dbR, dbW)", + "name": "types", + "in": "query" } ], "responses": { diff --git a/server/pkg/api/rest/docs/swagger.yaml b/server/pkg/api/rest/docs/swagger.yaml index 221c7b0..5b92944 100644 --- a/server/pkg/api/rest/docs/swagger.yaml +++ b/server/pkg/api/rest/docs/swagger.yaml @@ -1304,6 +1304,12 @@ paths: name: connId required: true type: string + - default: cpus,cpum + description: Comma-separated types for benchmarking (e.g., cpus, cpum, memR, + memW, fioR, fioW, dbR, dbW) + in: query + name: types + type: string produces: - application/json responses: diff --git a/server/pkg/api/rest/model/agentInfo.go b/server/pkg/api/rest/model/agentInfo.go new file mode 100644 index 0000000..f97419b --- /dev/null +++ b/server/pkg/api/rest/model/agentInfo.go @@ -0,0 +1,7 @@ +package model + +type AgentInfo struct { + Connection string `json:"connection_name"` + Result string `json:"result"` + ErrorMsg error `json:"error_msg,omitempty"` +} diff --git a/server/pkg/api/rest/model/benchmarkInfo.go b/server/pkg/api/rest/model/benchmarkInfo.go index 304f196..b42f448 100644 --- a/server/pkg/api/rest/model/benchmarkInfo.go +++ b/server/pkg/api/rest/model/benchmarkInfo.go @@ -1,27 +1,25 @@ package model import ( - "time" + "time" ) type SavedBenchmarkInfo struct { - ConnectionID string `gorm:"primaryKey" json:"connection_id"` - Benchmark string `gorm:"column:benchmark;type:longtext" json:"benchmark,omitempty"` - Status string `json:"status"` - SavedTime time.Time `json:"saved_time"` + ConnectionID string `gorm:"primaryKey" json:"connection_id"` + Benchmark string `gorm:"column:benchmark;type:longtext" json:"benchmark,omitempty"` + Status string `json:"status"` + SavedTime time.Time `json:"saved_time"` } type Benchmark struct { - Type string `json:"type"` - Data BenchmarkData `json:"data" gorm:"embedded"` + Type string `json:"type"` + Data BenchmarkData `json:"data" gorm:"embedded"` } -type BenchmarkArray []Benchmark - type BenchmarkData struct { - Desc string `json:"desc"` - Elapsed string `json:"elapsed"` - Result string `json:"result"` - SpecID string `json:"specid"` - Unit string `json:"unit"` + Desc string `json:"desc"` + Elapsed string `json:"elapsed"` + Result string `json:"result"` + SpecID string `json:"specid"` + Unit string `json:"unit"` }