Skip to content

Commit 9d43851

Browse files
committed
PMM-12913 re-add /agent_id/
1 parent e412500 commit 9d43851

File tree

2 files changed

+21
-21
lines changed

2 files changed

+21
-21
lines changed

managed/services/inventory/agents.go

+1-8
Original file line numberDiff line numberDiff line change
@@ -620,14 +620,7 @@ func (as *AgentsService) AddPostgresExporter(ctx context.Context, p *inventoryv1
620620
//
621621
//nolint:lll
622622
func (as *AgentsService) ChangePostgresExporter(ctx context.Context, agentID string, p *inventoryv1.ChangePostgresExporterParams) (*inventoryv1.ChangeAgentResponse, error) {
623-
params := &models.ChangeCommonAgentParams{
624-
Enabled: p.Enable,
625-
EnablePushMetrics: p.EnablePushMetrics,
626-
}
627-
if p.CustomLabels != nil {
628-
params.CustomLabels = &p.CustomLabels.Values
629-
}
630-
ag, err := as.changeAgent(ctx, "/agent_id/"+agentID, params)
623+
ag, err := as.changeAgent(ctx, agentID, commonParams(p))
631624
if err != nil {
632625
return nil, err
633626
}

managed/services/inventory/grpc/agents_server.go

+20-13
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ package grpc
1919
import (
2020
"context"
2121
"fmt"
22+
"strings"
2223

2324
inventoryv1 "github.com/percona/pmm/api/inventory/v1"
2425
"github.com/percona/pmm/managed/models"
@@ -211,33 +212,39 @@ func (s *agentsServer) AddAgent(ctx context.Context, req *inventoryv1.AddAgentRe
211212

212213
// ChangeAgent allows to change some Agent attributes.
213214
func (s *agentsServer) ChangeAgent(ctx context.Context, req *inventoryv1.ChangeAgentRequest) (*inventoryv1.ChangeAgentResponse, error) {
215+
agentID := req.GetAgentId()
216+
// NOTE: we need to add a prefix since gRPC does not allow to pass a URL segment that begins with a slash.
217+
// TODO: remove this once we drop prefixes in agent IDs.
218+
if strings.HasPrefix(agentID, "/agent_id/") {
219+
agentID = "/agent_id/" + agentID
220+
}
214221
switch req.Agent.(type) {
215222
case *inventoryv1.ChangeAgentRequest_NodeExporter:
216-
return s.s.ChangeNodeExporter(ctx, req.GetAgentId(), req.GetNodeExporter())
223+
return s.s.ChangeNodeExporter(ctx, agentID, req.GetNodeExporter())
217224
case *inventoryv1.ChangeAgentRequest_MysqldExporter:
218-
return s.s.ChangeMySQLdExporter(ctx, req.GetAgentId(), req.GetMysqldExporter())
225+
return s.s.ChangeMySQLdExporter(ctx, agentID, req.GetMysqldExporter())
219226
case *inventoryv1.ChangeAgentRequest_MongodbExporter:
220-
return s.s.ChangeMongoDBExporter(ctx, req.GetAgentId(), req.GetMongodbExporter())
227+
return s.s.ChangeMongoDBExporter(ctx, agentID, req.GetMongodbExporter())
221228
case *inventoryv1.ChangeAgentRequest_PostgresExporter:
222-
return s.s.ChangePostgresExporter(ctx, req.GetAgentId(), req.GetPostgresExporter())
229+
return s.s.ChangePostgresExporter(ctx, agentID, req.GetPostgresExporter())
223230
case *inventoryv1.ChangeAgentRequest_ProxysqlExporter:
224-
return s.s.ChangeProxySQLExporter(ctx, req.GetAgentId(), req.GetProxysqlExporter())
231+
return s.s.ChangeProxySQLExporter(ctx, agentID, req.GetProxysqlExporter())
225232
case *inventoryv1.ChangeAgentRequest_RdsExporter:
226-
return s.s.ChangeRDSExporter(ctx, req.GetAgentId(), req.GetRdsExporter())
233+
return s.s.ChangeRDSExporter(ctx, agentID, req.GetRdsExporter())
227234
case *inventoryv1.ChangeAgentRequest_ExternalExporter:
228-
return s.s.ChangeExternalExporter(ctx, req.GetAgentId(), req.GetExternalExporter())
235+
return s.s.ChangeExternalExporter(ctx, agentID, req.GetExternalExporter())
229236
case *inventoryv1.ChangeAgentRequest_AzureDatabaseExporter:
230-
return s.s.ChangeAzureDatabaseExporter(ctx, req.GetAgentId(), req.GetAzureDatabaseExporter())
237+
return s.s.ChangeAzureDatabaseExporter(ctx, agentID, req.GetAzureDatabaseExporter())
231238
case *inventoryv1.ChangeAgentRequest_QanMysqlPerfschemaAgent:
232-
return s.s.ChangeQANMySQLPerfSchemaAgent(ctx, req.GetAgentId(), req.GetQanMysqlPerfschemaAgent())
239+
return s.s.ChangeQANMySQLPerfSchemaAgent(ctx, agentID, req.GetQanMysqlPerfschemaAgent())
233240
case *inventoryv1.ChangeAgentRequest_QanMysqlSlowlogAgent:
234-
return s.s.ChangeQANMySQLSlowlogAgent(ctx, req.GetAgentId(), req.GetQanMysqlSlowlogAgent())
241+
return s.s.ChangeQANMySQLSlowlogAgent(ctx, agentID, req.GetQanMysqlSlowlogAgent())
235242
case *inventoryv1.ChangeAgentRequest_QanMongodbProfilerAgent:
236-
return s.s.ChangeQANMongoDBProfilerAgent(ctx, req.GetAgentId(), req.GetQanMongodbProfilerAgent())
243+
return s.s.ChangeQANMongoDBProfilerAgent(ctx, agentID, req.GetQanMongodbProfilerAgent())
237244
case *inventoryv1.ChangeAgentRequest_QanPostgresqlPgstatementsAgent:
238-
return s.s.ChangeQANPostgreSQLPgStatementsAgent(ctx, req.GetAgentId(), req.GetQanPostgresqlPgstatementsAgent())
245+
return s.s.ChangeQANPostgreSQLPgStatementsAgent(ctx, agentID, req.GetQanPostgresqlPgstatementsAgent())
239246
case *inventoryv1.ChangeAgentRequest_QanPostgresqlPgstatmonitorAgent:
240-
return s.s.ChangeQANPostgreSQLPgStatMonitorAgent(ctx, req.GetAgentId(), req.GetQanPostgresqlPgstatmonitorAgent())
247+
return s.s.ChangeQANPostgreSQLPgStatMonitorAgent(ctx, agentID, req.GetQanPostgresqlPgstatmonitorAgent())
241248
default:
242249
return nil, fmt.Errorf("invalid request %v", req.Agent)
243250
}

0 commit comments

Comments
 (0)