From a40df07f4351d525a99900b32e2f746f282f1c7c Mon Sep 17 00:00:00 2001 From: Alex Demidoff Date: Tue, 6 Feb 2024 16:55:43 +0300 Subject: [PATCH] PMM-12811 single agents change endpoint (#2777) * PMM-12811 fix a typo * PMM-12811 fix tests * PMM-12811 modify agents.proto * PMM-12811 modify agents_server and tests * PMM-12811 fix API tests * PMM-12811 fix linter warning * PMM-12811 increase container wait time * PMM-12811 print docker logs on failure * PMM-12811 increase the container wait time again * PMM-12811 try exit-code param for container launch * PMM-12811 check the container exit code * PMM-12811 launch pmm w/o waiting * PMM-12811 launch the container manually * PMM-12811 simplify, remove redundant methods * PMM-12811 rename exporter to agent in proto * PMM-12811 document the change * PMM-12811 fix API tests * PMM-12811 fix platform_test.go * PMM-12811 prefer a single enable boolean vs paired * PMM-12811 make custom_labels map optional * PMM-12811 fix Advisor params * PMM-12811 get rid of remove_custom_labels field * PMM-12811 remove a duplicate test * PMM-12811 follow up on review * PMM-12811 pass context to changeAgent * PMM-12811 move tableCount to MysqldExporter * PMM-12811 pass context around, fix tests * PMM-12811 add an annotation about one param * PMM-12811 fix Azure test --- .github/workflows/managed.yml | 1 + .../inventory/add_agent_mysqld_exporter.go | 2 +- .../agents_azure_database_exporter_test.go | 122 +- .../agents_external_exporter_test.go | 117 +- .../inventory/agents_mongodb_exporter_test.go | 133 +- .../inventory/agents_mysqld_exporter_test.go | 143 +- .../inventory/agents_node_exporter_test.go | 123 +- .../agents_postgres_exporter_test.go | 137 +- .../agents_proxysql_exporter_test.go | 117 +- .../inventory/agents_rds_exporter_test.go | 131 +- api-tests/inventory/agents_test.go | 167 +- api-tests/management/action/explain_test.go | 25 - api-tests/server/platform_test.go | 95 +- api-tests/server/settings_test.go | 84 +- api/common/common.pb.go | 103 +- api/common/common.pb.validate.go | 101 + api/common/common.proto | 5 + api/inventory/v1/agents.pb.go | 6781 ++++++++-------- api/inventory/v1/agents.pb.gw.go | 1068 +-- api/inventory/v1/agents.pb.validate.go | 4355 +++++----- api/inventory/v1/agents.proto | 313 +- api/inventory/v1/agents_grpc.pb.go | 524 +- .../agents_service/add_agent_responses.go | 6 +- .../agents_service/agents_service_client.go | 514 +- .../agents_service/change_agent_parameters.go | 144 + .../agents_service/change_agent_responses.go | 7073 +++++++++++++++++ ...ange_azure_database_exporter_parameters.go | 144 - ...hange_azure_database_exporter_responses.go | 701 -- .../change_external_exporter_parameters.go | 144 - .../change_external_exporter_responses.go | 561 -- .../change_mongo_db_exporter_parameters.go | 144 - .../change_mongo_db_exporter_responses.go | 720 -- .../change_my_s_q_ld_exporter_parameters.go | 144 - .../change_my_s_q_ld_exporter_responses.go | 727 -- .../change_node_exporter_parameters.go | 144 - .../change_node_exporter_responses.go | 698 -- .../change_postgres_exporter_parameters.go | 144 - .../change_postgres_exporter_responses.go | 713 -- .../change_proxy_sql_exporter_parameters.go | 144 - .../change_proxy_sql_exporter_responses.go | 710 -- ..._qan_mongo_db_profiler_agent_parameters.go | 144 - ...e_qan_mongo_db_profiler_agent_responses.go | 701 -- ...qan_my_sql_perf_schema_agent_parameters.go | 144 - ..._qan_my_sql_perf_schema_agent_responses.go | 716 -- ...nge_qan_my_sql_slowlog_agent_parameters.go | 144 - ...ange_qan_my_sql_slowlog_agent_responses.go | 719 -- ...re_sql_pg_stat_monitor_agent_parameters.go | 144 - ...gre_sql_pg_stat_monitor_agent_responses.go | 707 -- ...tgre_sql_pg_statements_agent_parameters.go | 144 - ...stgre_sql_pg_statements_agent_responses.go | 704 -- .../change_rds_exporter_parameters.go | 144 - .../change_rds_exporter_responses.go | 707 -- .../agents_service/get_agent_responses.go | 3 + .../agents_service/list_agents_responses.go | 3 + api/inventory/v1/json/v1.json | 2174 ++--- .../my_sql_service/add_my_sql_responses.go | 3 + .../client/rds_service/add_rds_responses.go | 3 + api/management/v1/json/v1.json | 32 +- api/swagger/swagger-dev.json | 2628 +++--- api/swagger/swagger.json | 36 +- build/docker/server/entrypoint.sh | 2 +- descriptor.bin | Bin 684990 -> 680604 bytes docs/api/inventory/change-agent.md | 67 + managed/models/agent_helpers.go | 37 +- managed/services/converters.go | 1 + managed/services/inventory/agents.go | 497 +- managed/services/inventory/agents_test.go | 477 +- .../services/inventory/grpc/agents_server.go | 463 +- managed/services/inventory/services_test.go | 22 +- managed/services/server/server_test.go | 4 +- 70 files changed, 15840 insertions(+), 23952 deletions(-) create mode 100644 api/inventory/v1/json/client/agents_service/change_agent_parameters.go create mode 100644 api/inventory/v1/json/client/agents_service/change_agent_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_azure_database_exporter_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_azure_database_exporter_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_external_exporter_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_external_exporter_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_mongo_db_exporter_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_mongo_db_exporter_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_my_s_q_ld_exporter_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_my_s_q_ld_exporter_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_node_exporter_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_node_exporter_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_postgres_exporter_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_postgres_exporter_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_proxy_sql_exporter_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_proxy_sql_exporter_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_qan_mongo_db_profiler_agent_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_qan_mongo_db_profiler_agent_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_qan_my_sql_perf_schema_agent_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_qan_my_sql_perf_schema_agent_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_qan_my_sql_slowlog_agent_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_qan_my_sql_slowlog_agent_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_qan_postgre_sql_pg_stat_monitor_agent_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_qan_postgre_sql_pg_stat_monitor_agent_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_qan_postgre_sql_pg_statements_agent_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_qan_postgre_sql_pg_statements_agent_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_rds_exporter_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/change_rds_exporter_responses.go create mode 100644 docs/api/inventory/change-agent.md diff --git a/.github/workflows/managed.yml b/.github/workflows/managed.yml index eeb545c10d..08a30b3d73 100644 --- a/.github/workflows/managed.yml +++ b/.github/workflows/managed.yml @@ -69,6 +69,7 @@ jobs: docker compose --profile pmm up -d sleep 100s docker logs pmm-server + - name: Restore Go build cache if: ${{ fromJSON(env.DEVCONTAINER_CACHE_ENABLED) }} continue-on-error: true diff --git a/admin/commands/inventory/add_agent_mysqld_exporter.go b/admin/commands/inventory/add_agent_mysqld_exporter.go index 095eb92704..2d51e9e0ef 100644 --- a/admin/commands/inventory/add_agent_mysqld_exporter.go +++ b/admin/commands/inventory/add_agent_mysqld_exporter.go @@ -156,6 +156,6 @@ func (cmd *AddAgentMysqldExporterCommand) RunCmd() (commands.Result, error) { } return &addAgentMysqldExporterResult{ Agent: resp.Payload.MysqldExporter, - TableCount: resp.Payload.TableCount, + TableCount: resp.Payload.MysqldExporter.TableCount, }, nil } diff --git a/api-tests/inventory/agents_azure_database_exporter_test.go b/api-tests/inventory/agents_azure_database_exporter_test.go index eae394f843..ee881fec87 100644 --- a/api-tests/inventory/agents_azure_database_exporter_test.go +++ b/api-tests/inventory/agents_azure_database_exporter_test.go @@ -82,20 +82,23 @@ func TestAzureDatabaseExporter(t *testing.T) { //nolint:tparallel }, getAgentRes) // Test change API. - changeAzureDatabaseExporterOK, err := client.Default.AgentsService.ChangeAzureDatabaseExporter(&agents.ChangeAzureDatabaseExporterParams{ - Body: agents.ChangeAzureDatabaseExporterBody{ - AgentID: agentID, - Common: &agents.ChangeAzureDatabaseExporterParamsBodyCommon{ - Disable: true, - RemoveCustomLabels: true, + changeAzureDatabaseExporterOK, err := client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + AzureDatabaseExporter: &agents.ChangeAgentParamsBodyAzureDatabaseExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyAzureDatabaseExporterCommon{ + Enable: pointer.ToBool(false), + CustomLabels: &agents.ChangeAgentParamsBodyAzureDatabaseExporterCommonCustomLabels{}, + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeAzureDatabaseExporterOK{ - Payload: &agents.ChangeAzureDatabaseExporterOKBody{ - AzureDatabaseExporter: &agents.ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + AzureDatabaseExporter: &agents.ChangeAgentOKBodyAzureDatabaseExporter{ NodeID: nodeID, AgentID: agentID, PMMAgentID: pmmAgentID, @@ -108,22 +111,27 @@ func TestAzureDatabaseExporter(t *testing.T) { //nolint:tparallel }, }, changeAzureDatabaseExporterOK) - changeAzureDatabaseExporterOK, err = client.Default.AgentsService.ChangeAzureDatabaseExporter(&agents.ChangeAzureDatabaseExporterParams{ - Body: agents.ChangeAzureDatabaseExporterBody{ - AgentID: agentID, - Common: &agents.ChangeAzureDatabaseExporterParamsBodyCommon{ - Enable: true, - CustomLabels: map[string]string{ - "new_label": "azure_database_exporter", + changeAzureDatabaseExporterOK, err = client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + AzureDatabaseExporter: &agents.ChangeAgentParamsBodyAzureDatabaseExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyAzureDatabaseExporterCommon{ + Enable: pointer.ToBool(true), + CustomLabels: &agents.ChangeAgentParamsBodyAzureDatabaseExporterCommonCustomLabels{ + Values: map[string]string{ + "new_label": "azure_database_exporter", + }, + }, + }, }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeAzureDatabaseExporterOK{ - Payload: &agents.ChangeAzureDatabaseExporterOKBody{ - AzureDatabaseExporter: &agents.ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + AzureDatabaseExporter: &agents.ChangeAgentOKBodyAzureDatabaseExporter{ NodeID: nodeID, AgentID: agentID, PMMAgentID: pmmAgentID, @@ -159,7 +167,7 @@ func TestAzureDatabaseExporter(t *testing.T) { //nolint:tparallel }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddDatabaseExporterRequest.NodeId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAzureDatabaseExporterParams.NodeId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.AzureDatabaseExporter.AgentID) } @@ -265,19 +273,22 @@ func TestAzureDatabaseExporter(t *testing.T) { //nolint:tparallel }, getAgentRes) // Test change API. - changeAzureDatabaseExporterOK, err := client.Default.AgentsService.ChangeAzureDatabaseExporter(&agents.ChangeAzureDatabaseExporterParams{ - Body: agents.ChangeAzureDatabaseExporterBody{ - AgentID: agentID, - Common: &agents.ChangeAzureDatabaseExporterParamsBodyCommon{ - EnablePushMetrics: true, + changeAzureDatabaseExporterOK, err := client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + AzureDatabaseExporter: &agents.ChangeAgentParamsBodyAzureDatabaseExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyAzureDatabaseExporterCommon{ + EnablePushMetrics: pointer.ToBool(true), + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeAzureDatabaseExporterOK{ - Payload: &agents.ChangeAzureDatabaseExporterOKBody{ - AzureDatabaseExporter: &agents.ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + AzureDatabaseExporter: &agents.ChangeAgentOKBodyAzureDatabaseExporter{ NodeID: nodeID, AgentID: agentID, PMMAgentID: pmmAgentID, @@ -291,19 +302,22 @@ func TestAzureDatabaseExporter(t *testing.T) { //nolint:tparallel }, }, changeAzureDatabaseExporterOK) - changeAzureDatabaseExporterOK, err = client.Default.AgentsService.ChangeAzureDatabaseExporter(&agents.ChangeAzureDatabaseExporterParams{ - Body: agents.ChangeAzureDatabaseExporterBody{ - AgentID: agentID, - Common: &agents.ChangeAzureDatabaseExporterParamsBodyCommon{ - DisablePushMetrics: true, + changeAzureDatabaseExporterOK, err = client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + AzureDatabaseExporter: &agents.ChangeAgentParamsBodyAzureDatabaseExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyAzureDatabaseExporterCommon{ + EnablePushMetrics: pointer.ToBool(false), + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeAzureDatabaseExporterOK{ - Payload: &agents.ChangeAzureDatabaseExporterOKBody{ - AzureDatabaseExporter: &agents.ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + AzureDatabaseExporter: &agents.ChangeAgentOKBodyAzureDatabaseExporter{ NodeID: nodeID, AgentID: agentID, PMMAgentID: pmmAgentID, @@ -316,17 +330,5 @@ func TestAzureDatabaseExporter(t *testing.T) { //nolint:tparallel }, }, }, changeAzureDatabaseExporterOK) - _, err = client.Default.AgentsService.ChangeAzureDatabaseExporter(&agents.ChangeAzureDatabaseExporterParams{ - Body: agents.ChangeAzureDatabaseExporterBody{ - AgentID: agentID, - Common: &agents.ChangeAzureDatabaseExporterParamsBodyCommon{ - EnablePushMetrics: true, - DisablePushMetrics: true, - }, - }, - Context: pmmapitests.Context, - }) - - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "expected one of param: enable_push_metrics or disable_push_metrics") }) } diff --git a/api-tests/inventory/agents_external_exporter_test.go b/api-tests/inventory/agents_external_exporter_test.go index d4f81f89fe..0d3cee6df0 100644 --- a/api-tests/inventory/agents_external_exporter_test.go +++ b/api-tests/inventory/agents_external_exporter_test.go @@ -18,6 +18,7 @@ package inventory import ( "testing" + "github.com/AlekSi/pointer" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "google.golang.org/grpc/codes" @@ -139,19 +140,22 @@ func TestExternalExporter(t *testing.T) { }, getAgentRes.Payload) // Test change API. - changeExternalExporterOK, err := client.Default.AgentsService.ChangeExternalExporter(&agents.ChangeExternalExporterParams{ - Body: agents.ChangeExternalExporterBody{ - AgentID: agentID, - Common: &agents.ChangeExternalExporterParamsBodyCommon{ - Disable: true, - RemoveCustomLabels: true, + changeExternalExporterOK, err := client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + ExternalExporter: &agents.ChangeAgentParamsBodyExternalExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyExternalExporterCommon{ + Enable: pointer.ToBool(false), + CustomLabels: &agents.ChangeAgentParamsBodyExternalExporterCommonCustomLabels{}, + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeExternalExporterOKBody{ - ExternalExporter: &agents.ChangeExternalExporterOKBodyExternalExporter{ + assert.Equal(t, &agents.ChangeAgentOKBody{ + ExternalExporter: &agents.ChangeAgentOKBodyExternalExporter{ AgentID: agentID, ServiceID: serviceID, RunsOnNodeID: genericNodeID, @@ -164,21 +168,26 @@ func TestExternalExporter(t *testing.T) { }, }, changeExternalExporterOK.Payload) - changeExternalExporterOK, err = client.Default.AgentsService.ChangeExternalExporter(&agents.ChangeExternalExporterParams{ - Body: agents.ChangeExternalExporterBody{ - AgentID: agentID, - Common: &agents.ChangeExternalExporterParamsBodyCommon{ - Enable: true, - CustomLabels: map[string]string{ - "new_label": "external_exporter", + changeExternalExporterOK, err = client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + ExternalExporter: &agents.ChangeAgentParamsBodyExternalExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyExternalExporterCommon{ + Enable: pointer.ToBool(true), + CustomLabels: &agents.ChangeAgentParamsBodyExternalExporterCommonCustomLabels{ + Values: map[string]string{ + "new_label": "external_exporter", + }, + }, + }, }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeExternalExporterOKBody{ - ExternalExporter: &agents.ChangeExternalExporterOKBodyExternalExporter{ + assert.Equal(t, &agents.ChangeAgentOKBody{ + ExternalExporter: &agents.ChangeAgentOKBodyExternalExporter{ AgentID: agentID, ServiceID: serviceID, RunsOnNodeID: genericNodeID, @@ -243,7 +252,7 @@ func TestExternalExporter(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.ListenPort: value must be inside range (0, 65536)") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExternalExporterParams.ListenPort: value must be inside range (0, 65536)") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.ExternalExporter.AgentID) } @@ -276,7 +285,7 @@ func TestExternalExporter(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.RunsOnNodeId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExternalExporterParams.RunsOnNodeId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.ExternalExporter.AgentID) } @@ -392,18 +401,21 @@ func TestExternalExporter(t *testing.T) { }, getAgentRes.Payload) // Test change API. - changeExternalExporterOK, err := client.Default.AgentsService.ChangeExternalExporter(&agents.ChangeExternalExporterParams{ - Body: agents.ChangeExternalExporterBody{ - AgentID: agentID, - Common: &agents.ChangeExternalExporterParamsBodyCommon{ - DisablePushMetrics: true, + changeExternalExporterOK, err := client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + ExternalExporter: &agents.ChangeAgentParamsBodyExternalExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyExternalExporterCommon{ + EnablePushMetrics: pointer.ToBool(false), + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeExternalExporterOKBody{ - ExternalExporter: &agents.ChangeExternalExporterOKBodyExternalExporter{ + assert.Equal(t, &agents.ChangeAgentOKBody{ + ExternalExporter: &agents.ChangeAgentOKBodyExternalExporter{ AgentID: agentID, ServiceID: serviceID, RunsOnNodeID: genericNodeID, @@ -417,18 +429,21 @@ func TestExternalExporter(t *testing.T) { }, }, changeExternalExporterOK.Payload) - changeExternalExporterOK, err = client.Default.AgentsService.ChangeExternalExporter(&agents.ChangeExternalExporterParams{ - Body: agents.ChangeExternalExporterBody{ - AgentID: agentID, - Common: &agents.ChangeExternalExporterParamsBodyCommon{ - EnablePushMetrics: true, + changeExternalExporterOK, err = client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + ExternalExporter: &agents.ChangeAgentParamsBodyExternalExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyExternalExporterCommon{ + EnablePushMetrics: pointer.ToBool(true), + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeExternalExporterOKBody{ - ExternalExporter: &agents.ChangeExternalExporterOKBodyExternalExporter{ + assert.Equal(t, &agents.ChangeAgentOKBody{ + ExternalExporter: &agents.ChangeAgentOKBodyExternalExporter{ AgentID: agentID, ServiceID: serviceID, RunsOnNodeID: genericNodeID, @@ -441,17 +456,5 @@ func TestExternalExporter(t *testing.T) { PushMetricsEnabled: true, }, }, changeExternalExporterOK.Payload) - - _, err = client.Default.AgentsService.ChangeExternalExporter(&agents.ChangeExternalExporterParams{ - Body: agents.ChangeExternalExporterBody{ - AgentID: agentID, - Common: &agents.ChangeExternalExporterParamsBodyCommon{ - EnablePushMetrics: true, - DisablePushMetrics: true, - }, - }, - Context: pmmapitests.Context, - }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "expected one of param: enable_push_metrics or disable_push_metrics") }) } diff --git a/api-tests/inventory/agents_mongodb_exporter_test.go b/api-tests/inventory/agents_mongodb_exporter_test.go index 88591ebd18..82832d1ce3 100644 --- a/api-tests/inventory/agents_mongodb_exporter_test.go +++ b/api-tests/inventory/agents_mongodb_exporter_test.go @@ -97,20 +97,23 @@ func TestMongoDBExporter(t *testing.T) { }, getAgentRes) // Test change API. - changeMongoDBExporterOK, err := client.Default.AgentsService.ChangeMongoDBExporter(&agents.ChangeMongoDBExporterParams{ - Body: agents.ChangeMongoDBExporterBody{ - AgentID: agentID, - Common: &agents.ChangeMongoDBExporterParamsBodyCommon{ - Disable: true, - RemoveCustomLabels: true, + changeMongoDBExporterOK, err := client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + MongodbExporter: &agents.ChangeAgentParamsBodyMongodbExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyMongodbExporterCommon{ + Enable: pointer.ToBool(false), + CustomLabels: &agents.ChangeAgentParamsBodyMongodbExporterCommonCustomLabels{}, + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeMongoDBExporterOK{ - Payload: &agents.ChangeMongoDBExporterOKBody{ - MongodbExporter: &agents.ChangeMongoDBExporterOKBodyMongodbExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + MongodbExporter: &agents.ChangeAgentOKBodyMongodbExporter{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -125,22 +128,27 @@ func TestMongoDBExporter(t *testing.T) { }, }, changeMongoDBExporterOK) - changeMongoDBExporterOK, err = client.Default.AgentsService.ChangeMongoDBExporter(&agents.ChangeMongoDBExporterParams{ - Body: agents.ChangeMongoDBExporterBody{ - AgentID: agentID, - Common: &agents.ChangeMongoDBExporterParamsBodyCommon{ - Enable: true, - CustomLabels: map[string]string{ - "new_label": "mongodb_exporter", + changeMongoDBExporterOK, err = client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + MongodbExporter: &agents.ChangeAgentParamsBodyMongodbExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyMongodbExporterCommon{ + Enable: pointer.ToBool(true), + CustomLabels: &agents.ChangeAgentParamsBodyMongodbExporterCommonCustomLabels{ + Values: map[string]string{ + "new_label": "mongodb_exporter", + }, + }, + }, }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeMongoDBExporterOK{ - Payload: &agents.ChangeMongoDBExporterOKBody{ - MongodbExporter: &agents.ChangeMongoDBExporterOKBodyMongodbExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + MongodbExporter: &agents.ChangeAgentOKBodyMongodbExporter{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -178,7 +186,7 @@ func TestMongoDBExporter(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.ServiceId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddMongoDBExporterParams.ServiceId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.MongodbExporter.AgentID) } @@ -213,7 +221,7 @@ func TestMongoDBExporter(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.PmmAgentId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddMongoDBExporterParams.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.MongodbExporter.AgentID) } @@ -325,10 +333,11 @@ func TestMongoDBExporter(t *testing.T) { agentID := mongoDBExporter.MongodbExporter.AgentID defer pmmapitests.RemoveAgents(t, agentID) - getAgentRes, err := client.Default.AgentsService.GetAgent(&agents.GetAgentParams{ - Body: agents.GetAgentBody{AgentID: agentID}, - Context: pmmapitests.Context, - }) + getAgentRes, err := client.Default.AgentsService.GetAgent( + &agents.GetAgentParams{ + Body: agents.GetAgentBody{AgentID: agentID}, + Context: pmmapitests.Context, + }) require.NoError(t, err) assert.Equal(t, &agents.GetAgentOK{ Payload: &agents.GetAgentOKBody{ @@ -350,19 +359,22 @@ func TestMongoDBExporter(t *testing.T) { }, getAgentRes) // Test change API. - changeMongoDBExporterOK, err := client.Default.AgentsService.ChangeMongoDBExporter(&agents.ChangeMongoDBExporterParams{ - Body: agents.ChangeMongoDBExporterBody{ - AgentID: agentID, - Common: &agents.ChangeMongoDBExporterParamsBodyCommon{ - DisablePushMetrics: true, + changeMongoDBExporterOK, err := client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + MongodbExporter: &agents.ChangeAgentParamsBodyMongodbExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyMongodbExporterCommon{ + EnablePushMetrics: pointer.ToBool(false), + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeMongoDBExporterOK{ - Payload: &agents.ChangeMongoDBExporterOKBody{ - MongodbExporter: &agents.ChangeMongoDBExporterOKBodyMongodbExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + MongodbExporter: &agents.ChangeAgentOKBodyMongodbExporter{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -378,19 +390,22 @@ func TestMongoDBExporter(t *testing.T) { }, }, changeMongoDBExporterOK) - changeMongoDBExporterOK, err = client.Default.AgentsService.ChangeMongoDBExporter(&agents.ChangeMongoDBExporterParams{ - Body: agents.ChangeMongoDBExporterBody{ - AgentID: agentID, - Common: &agents.ChangeMongoDBExporterParamsBodyCommon{ - EnablePushMetrics: true, + changeMongoDBExporterOK, err = client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + MongodbExporter: &agents.ChangeAgentParamsBodyMongodbExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyMongodbExporterCommon{ + EnablePushMetrics: pointer.ToBool(true), + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeMongoDBExporterOK{ - Payload: &agents.ChangeMongoDBExporterOKBody{ - MongodbExporter: &agents.ChangeMongoDBExporterOKBodyMongodbExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + MongodbExporter: &agents.ChangeAgentOKBodyMongodbExporter{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -406,17 +421,5 @@ func TestMongoDBExporter(t *testing.T) { }, }, }, changeMongoDBExporterOK) - - _, err = client.Default.AgentsService.ChangeMongoDBExporter(&agents.ChangeMongoDBExporterParams{ - Body: agents.ChangeMongoDBExporterBody{ - AgentID: agentID, - Common: &agents.ChangeMongoDBExporterParamsBodyCommon{ - EnablePushMetrics: true, - DisablePushMetrics: true, - }, - }, - Context: pmmapitests.Context, - }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "expected one of param: enable_push_metrics or disable_push_metrics") }) } diff --git a/api-tests/inventory/agents_mysqld_exporter_test.go b/api-tests/inventory/agents_mysqld_exporter_test.go index 580e6f7f10..80a75c37c6 100644 --- a/api-tests/inventory/agents_mysqld_exporter_test.go +++ b/api-tests/inventory/agents_mysqld_exporter_test.go @@ -70,15 +70,16 @@ func TestMySQLdExporter(t *testing.T) { TablestatsGroupTableLimit: 2000, }, }) - assert.EqualValues(t, 0, mySqldExporter.TableCount) + assert.EqualValues(t, 0, mySqldExporter.MysqldExporter.TableCount) assert.EqualValues(t, 2000, mySqldExporter.MysqldExporter.TablestatsGroupTableLimit) agentID := mySqldExporter.MysqldExporter.AgentID defer pmmapitests.RemoveAgents(t, agentID) - getAgentRes, err := client.Default.AgentsService.GetAgent(&agents.GetAgentParams{ - Body: agents.GetAgentBody{AgentID: agentID}, - Context: pmmapitests.Context, - }) + getAgentRes, err := client.Default.AgentsService.GetAgent( + &agents.GetAgentParams{ + Body: agents.GetAgentBody{AgentID: agentID}, + Context: pmmapitests.Context, + }) require.NoError(t, err) assert.Equal(t, &agents.GetAgentOKBody{ MysqldExporter: &agents.GetAgentOKBodyMysqldExporter{ @@ -97,19 +98,22 @@ func TestMySQLdExporter(t *testing.T) { }, getAgentRes.Payload) // Test change API. - changeMySQLdExporterOK, err := client.Default.AgentsService.ChangeMySQLdExporter(&agents.ChangeMySQLdExporterParams{ - Body: agents.ChangeMySQLdExporterBody{ - AgentID: agentID, - Common: &agents.ChangeMySQLdExporterParamsBodyCommon{ - Disable: true, - RemoveCustomLabels: true, + changeMySQLdExporterOK, err := client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + MysqldExporter: &agents.ChangeAgentParamsBodyMysqldExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyMysqldExporterCommon{ + Enable: pointer.ToBool(false), + CustomLabels: &agents.ChangeAgentParamsBodyMysqldExporterCommonCustomLabels{}, + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeMySQLdExporterOKBody{ - MysqldExporter: &agents.ChangeMySQLdExporterOKBodyMysqldExporter{ + assert.Equal(t, &agents.ChangeAgentOKBody{ + MysqldExporter: &agents.ChangeAgentOKBodyMysqldExporter{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -123,21 +127,26 @@ func TestMySQLdExporter(t *testing.T) { }, }, changeMySQLdExporterOK.Payload) - changeMySQLdExporterOK, err = client.Default.AgentsService.ChangeMySQLdExporter(&agents.ChangeMySQLdExporterParams{ - Body: agents.ChangeMySQLdExporterBody{ - AgentID: agentID, - Common: &agents.ChangeMySQLdExporterParamsBodyCommon{ - Enable: true, - CustomLabels: map[string]string{ - "new_label": "mysql_exporter", + changeMySQLdExporterOK, err = client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + MysqldExporter: &agents.ChangeAgentParamsBodyMysqldExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyMysqldExporterCommon{ + Enable: pointer.ToBool(true), + CustomLabels: &agents.ChangeAgentParamsBodyMysqldExporterCommonCustomLabels{ + Values: map[string]string{ + "new_label": "mysql_exporter", + }, + }, + }, }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeMySQLdExporterOKBody{ - MysqldExporter: &agents.ChangeMySQLdExporterOKBodyMysqldExporter{ + assert.Equal(t, &agents.ChangeAgentOKBody{ + MysqldExporter: &agents.ChangeAgentOKBodyMysqldExporter{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -206,7 +215,7 @@ func TestMySQLdExporter(t *testing.T) { TablestatsGroupTableLimit: 2000, }, }) - assert.Greater(t, mySqldExporter.TableCount, int32(0)) + assert.Greater(t, mySqldExporter.MysqldExporter.TableCount, int32(0)) assert.EqualValues(t, 2000, mySqldExporter.MysqldExporter.TablestatsGroupTableLimit) agentID := mySqldExporter.MysqldExporter.AgentID defer pmmapitests.RemoveAgents(t, agentID) @@ -232,7 +241,7 @@ func TestMySQLdExporter(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.ServiceId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddMySQLdExporterParams.ServiceId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.MysqldExporter.AgentID) } @@ -267,7 +276,7 @@ func TestMySQLdExporter(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.PmmAgentId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddMySQLdExporterParams.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.MysqldExporter.AgentID) } @@ -377,15 +386,16 @@ func TestMySQLdExporter(t *testing.T) { PushMetrics: true, }, }) - assert.EqualValues(t, 0, mySqldExporter.TableCount) + assert.EqualValues(t, 0, mySqldExporter.MysqldExporter.TableCount) assert.EqualValues(t, 2000, mySqldExporter.MysqldExporter.TablestatsGroupTableLimit) agentID := mySqldExporter.MysqldExporter.AgentID defer pmmapitests.RemoveAgents(t, agentID) - getAgentRes, err := client.Default.AgentsService.GetAgent(&agents.GetAgentParams{ - Body: agents.GetAgentBody{AgentID: agentID}, - Context: pmmapitests.Context, - }) + getAgentRes, err := client.Default.AgentsService.GetAgent( + &agents.GetAgentParams{ + Body: agents.GetAgentBody{AgentID: agentID}, + Context: pmmapitests.Context, + }) require.NoError(t, err) assert.Equal(t, &agents.GetAgentOKBody{ MysqldExporter: &agents.GetAgentOKBodyMysqldExporter{ @@ -405,18 +415,21 @@ func TestMySQLdExporter(t *testing.T) { }, getAgentRes.Payload) // Test change API. - changeMySQLdExporterOK, err := client.Default.AgentsService.ChangeMySQLdExporter(&agents.ChangeMySQLdExporterParams{ - Body: agents.ChangeMySQLdExporterBody{ - AgentID: agentID, - Common: &agents.ChangeMySQLdExporterParamsBodyCommon{ - DisablePushMetrics: true, + changeMySQLdExporterOK, err := client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + MysqldExporter: &agents.ChangeAgentParamsBodyMysqldExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyMysqldExporterCommon{ + EnablePushMetrics: pointer.ToBool(false), + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeMySQLdExporterOKBody{ - MysqldExporter: &agents.ChangeMySQLdExporterOKBodyMysqldExporter{ + assert.Equal(t, &agents.ChangeAgentOKBody{ + MysqldExporter: &agents.ChangeAgentOKBodyMysqldExporter{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -431,18 +444,21 @@ func TestMySQLdExporter(t *testing.T) { }, }, changeMySQLdExporterOK.Payload) - changeMySQLdExporterOK, err = client.Default.AgentsService.ChangeMySQLdExporter(&agents.ChangeMySQLdExporterParams{ - Body: agents.ChangeMySQLdExporterBody{ - AgentID: agentID, - Common: &agents.ChangeMySQLdExporterParamsBodyCommon{ - EnablePushMetrics: true, + changeMySQLdExporterOK, err = client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + MysqldExporter: &agents.ChangeAgentParamsBodyMysqldExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyMysqldExporterCommon{ + EnablePushMetrics: pointer.ToBool(true), + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeMySQLdExporterOKBody{ - MysqldExporter: &agents.ChangeMySQLdExporterOKBodyMysqldExporter{ + assert.Equal(t, &agents.ChangeAgentOKBody{ + MysqldExporter: &agents.ChangeAgentOKBodyMysqldExporter{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -457,20 +473,5 @@ func TestMySQLdExporter(t *testing.T) { LogLevel: pointer.ToString("LOG_LEVEL_UNSPECIFIED"), }, }, changeMySQLdExporterOK.Payload) - _, err = client.Default.AgentsService.ChangeMySQLdExporter(&agents.ChangeMySQLdExporterParams{ - Body: agents.ChangeMySQLdExporterBody{ - AgentID: agentID, - Common: &agents.ChangeMySQLdExporterParamsBodyCommon{ - Enable: true, - CustomLabels: map[string]string{ - "new_label": "mysql_exporter", - }, - EnablePushMetrics: true, - DisablePushMetrics: true, - }, - }, - Context: pmmapitests.Context, - }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "expected one of param: enable_push_metrics or disable_push_metrics") }) } diff --git a/api-tests/inventory/agents_node_exporter_test.go b/api-tests/inventory/agents_node_exporter_test.go index b0d7deb71d..5df7c9a8d5 100644 --- a/api-tests/inventory/agents_node_exporter_test.go +++ b/api-tests/inventory/agents_node_exporter_test.go @@ -48,10 +48,11 @@ func TestNodeExporter(t *testing.T) { agentID := res.Payload.NodeExporter.AgentID defer pmmapitests.RemoveAgents(t, agentID) - getAgentRes, err := client.Default.AgentsService.GetAgent(&agents.GetAgentParams{ - Body: agents.GetAgentBody{AgentID: agentID}, - Context: pmmapitests.Context, - }) + getAgentRes, err := client.Default.AgentsService.GetAgent( + &agents.GetAgentParams{ + Body: agents.GetAgentBody{AgentID: agentID}, + Context: pmmapitests.Context, + }) require.NoError(t, err) assert.Equal(t, &agents.GetAgentOK{ Payload: &agents.GetAgentOKBody{ @@ -68,20 +69,23 @@ func TestNodeExporter(t *testing.T) { }, getAgentRes) // Test change API. - changeNodeExporterOK, err := client.Default.AgentsService.ChangeNodeExporter(&agents.ChangeNodeExporterParams{ - Body: agents.ChangeNodeExporterBody{ - AgentID: agentID, - Common: &agents.ChangeNodeExporterParamsBodyCommon{ - Disable: true, - RemoveCustomLabels: true, + changeNodeExporterOK, err := client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + NodeExporter: &agents.ChangeAgentParamsBodyNodeExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyNodeExporterCommon{ + Enable: pointer.ToBool(false), + CustomLabels: &agents.ChangeAgentParamsBodyNodeExporterCommonCustomLabels{}, + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeNodeExporterOK{ - Payload: &agents.ChangeNodeExporterOKBody{ - NodeExporter: &agents.ChangeNodeExporterOKBodyNodeExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + NodeExporter: &agents.ChangeAgentOKBodyNodeExporter{ AgentID: agentID, PMMAgentID: pmmAgentID, Disabled: true, @@ -93,22 +97,27 @@ func TestNodeExporter(t *testing.T) { }, }, changeNodeExporterOK) - changeNodeExporterOK, err = client.Default.AgentsService.ChangeNodeExporter(&agents.ChangeNodeExporterParams{ - Body: agents.ChangeNodeExporterBody{ - AgentID: agentID, - Common: &agents.ChangeNodeExporterParamsBodyCommon{ - Enable: true, - CustomLabels: map[string]string{ - "new_label": "node_exporter", + changeNodeExporterOK, err = client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + NodeExporter: &agents.ChangeAgentParamsBodyNodeExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyNodeExporterCommon{ + Enable: pointer.ToBool(true), + CustomLabels: &agents.ChangeAgentParamsBodyNodeExporterCommonCustomLabels{ + Values: map[string]string{ + "new_label": "node_exporter", + }, + }, + }, }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeNodeExporterOK{ - Payload: &agents.ChangeNodeExporterOKBody{ - NodeExporter: &agents.ChangeNodeExporterOKBodyNodeExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + NodeExporter: &agents.ChangeAgentOKBodyNodeExporter{ AgentID: agentID, PMMAgentID: pmmAgentID, Disabled: false, @@ -134,7 +143,7 @@ func TestNodeExporter(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.PmmAgentId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddNodeExporterParams.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.NodeExporter.AgentID) } @@ -209,19 +218,21 @@ func TestNodeExporter(t *testing.T) { }, getAgentRes) // Test change API. - changeNodeExporterOK, err := client.Default.AgentsService.ChangeNodeExporter(&agents.ChangeNodeExporterParams{ - Body: agents.ChangeNodeExporterBody{ - AgentID: agentID, - Common: &agents.ChangeNodeExporterParamsBodyCommon{ - DisablePushMetrics: true, + changeNodeExporterOK, err := client.Default.AgentsService.ChangeAgent(&agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + NodeExporter: &agents.ChangeAgentParamsBodyNodeExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyNodeExporterCommon{ + EnablePushMetrics: pointer.ToBool(false), + }, }, }, Context: pmmapitests.Context, }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeNodeExporterOK{ - Payload: &agents.ChangeNodeExporterOKBody{ - NodeExporter: &agents.ChangeNodeExporterOKBodyNodeExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + NodeExporter: &agents.ChangeAgentOKBodyNodeExporter{ AgentID: agentID, PMMAgentID: pmmAgentID, Disabled: false, @@ -233,19 +244,22 @@ func TestNodeExporter(t *testing.T) { }, }, changeNodeExporterOK) - changeNodeExporterOK, err = client.Default.AgentsService.ChangeNodeExporter(&agents.ChangeNodeExporterParams{ - Body: agents.ChangeNodeExporterBody{ - AgentID: agentID, - Common: &agents.ChangeNodeExporterParamsBodyCommon{ - EnablePushMetrics: true, + changeNodeExporterOK, err = client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + NodeExporter: &agents.ChangeAgentParamsBodyNodeExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyNodeExporterCommon{ + EnablePushMetrics: pointer.ToBool(true), + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeNodeExporterOK{ - Payload: &agents.ChangeNodeExporterOKBody{ - NodeExporter: &agents.ChangeNodeExporterOKBodyNodeExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + NodeExporter: &agents.ChangeAgentOKBodyNodeExporter{ AgentID: agentID, PMMAgentID: pmmAgentID, Disabled: false, @@ -257,16 +271,5 @@ func TestNodeExporter(t *testing.T) { }, }, }, changeNodeExporterOK) - _, err = client.Default.AgentsService.ChangeNodeExporter(&agents.ChangeNodeExporterParams{ - Body: agents.ChangeNodeExporterBody{ - AgentID: agentID, - Common: &agents.ChangeNodeExporterParamsBodyCommon{ - EnablePushMetrics: true, - DisablePushMetrics: true, - }, - }, - Context: pmmapitests.Context, - }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "expected one of param: enable_push_metrics or disable_push_metrics") }) } diff --git a/api-tests/inventory/agents_postgres_exporter_test.go b/api-tests/inventory/agents_postgres_exporter_test.go index 6124d68954..4885bcdbc1 100644 --- a/api-tests/inventory/agents_postgres_exporter_test.go +++ b/api-tests/inventory/agents_postgres_exporter_test.go @@ -96,20 +96,23 @@ func TestPostgresExporter(t *testing.T) { }, getAgentRes) // Test change API. - changePostgresExporterOK, err := client.Default.AgentsService.ChangePostgresExporter(&agents.ChangePostgresExporterParams{ - Body: agents.ChangePostgresExporterBody{ - AgentID: agentID, - Common: &agents.ChangePostgresExporterParamsBodyCommon{ - Disable: true, - RemoveCustomLabels: true, + changePostgresExporterOK, err := client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + PostgresExporter: &agents.ChangeAgentParamsBodyPostgresExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyPostgresExporterCommon{ + Enable: pointer.ToBool(false), + CustomLabels: &agents.ChangeAgentParamsBodyPostgresExporterCommonCustomLabels{}, + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangePostgresExporterOK{ - Payload: &agents.ChangePostgresExporterOKBody{ - PostgresExporter: &agents.ChangePostgresExporterOKBodyPostgresExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + PostgresExporter: &agents.ChangeAgentOKBodyPostgresExporter{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -123,22 +126,27 @@ func TestPostgresExporter(t *testing.T) { }, }, changePostgresExporterOK) - changePostgresExporterOK, err = client.Default.AgentsService.ChangePostgresExporter(&agents.ChangePostgresExporterParams{ - Body: agents.ChangePostgresExporterBody{ - AgentID: agentID, - Common: &agents.ChangePostgresExporterParamsBodyCommon{ - Enable: true, - CustomLabels: map[string]string{ - "new_label": "postgres_exporter", + changePostgresExporterOK, err = client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + PostgresExporter: &agents.ChangeAgentParamsBodyPostgresExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyPostgresExporterCommon{ + Enable: pointer.ToBool(true), + CustomLabels: &agents.ChangeAgentParamsBodyPostgresExporterCommonCustomLabels{ + Values: map[string]string{ + "new_label": "postgres_exporter", + }, + }, + }, }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangePostgresExporterOK{ - Payload: &agents.ChangePostgresExporterOKBody{ - PostgresExporter: &agents.ChangePostgresExporterOKBodyPostgresExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + PostgresExporter: &agents.ChangeAgentOKBodyPostgresExporter{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -175,7 +183,7 @@ func TestPostgresExporter(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.ServiceId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddPostgresExporterParams.ServiceId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.PostgresExporter.AgentID) } @@ -210,7 +218,7 @@ func TestPostgresExporter(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.PmmAgentId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddPostgresExporterParams.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.PostgresExporter.AgentID) } @@ -322,10 +330,11 @@ func TestPostgresExporter(t *testing.T) { agentID := PostgresExporter.PostgresExporter.AgentID defer pmmapitests.RemoveAgents(t, agentID) - getAgentRes, err := client.Default.AgentsService.GetAgent(&agents.GetAgentParams{ - Body: agents.GetAgentBody{AgentID: agentID}, - Context: pmmapitests.Context, - }) + getAgentRes, err := client.Default.AgentsService.GetAgent( + &agents.GetAgentParams{ + Body: agents.GetAgentBody{AgentID: agentID}, + Context: pmmapitests.Context, + }) require.NoError(t, err) assert.Equal(t, &agents.GetAgentOK{ Payload: &agents.GetAgentOKBody{ @@ -346,19 +355,22 @@ func TestPostgresExporter(t *testing.T) { }, getAgentRes) // Test change API. - changePostgresExporterOK, err := client.Default.AgentsService.ChangePostgresExporter(&agents.ChangePostgresExporterParams{ - Body: agents.ChangePostgresExporterBody{ - AgentID: agentID, - Common: &agents.ChangePostgresExporterParamsBodyCommon{ - DisablePushMetrics: true, + changePostgresExporterOK, err := client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + PostgresExporter: &agents.ChangeAgentParamsBodyPostgresExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyPostgresExporterCommon{ + EnablePushMetrics: pointer.ToBool(false), + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangePostgresExporterOK{ - Payload: &agents.ChangePostgresExporterOKBody{ - PostgresExporter: &agents.ChangePostgresExporterOKBodyPostgresExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + PostgresExporter: &agents.ChangeAgentOKBodyPostgresExporter{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -373,19 +385,22 @@ func TestPostgresExporter(t *testing.T) { }, }, changePostgresExporterOK) - changePostgresExporterOK, err = client.Default.AgentsService.ChangePostgresExporter(&agents.ChangePostgresExporterParams{ - Body: agents.ChangePostgresExporterBody{ - AgentID: agentID, - Common: &agents.ChangePostgresExporterParamsBodyCommon{ - EnablePushMetrics: true, + changePostgresExporterOK, err = client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + PostgresExporter: &agents.ChangeAgentParamsBodyPostgresExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyPostgresExporterCommon{ + EnablePushMetrics: pointer.ToBool(true), + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangePostgresExporterOK{ - Payload: &agents.ChangePostgresExporterOKBody{ - PostgresExporter: &agents.ChangePostgresExporterOKBodyPostgresExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + PostgresExporter: &agents.ChangeAgentOKBodyPostgresExporter{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -400,21 +415,5 @@ func TestPostgresExporter(t *testing.T) { }, }, }, changePostgresExporterOK) - - _, err = client.Default.AgentsService.ChangePostgresExporter(&agents.ChangePostgresExporterParams{ - Body: agents.ChangePostgresExporterBody{ - AgentID: agentID, - Common: &agents.ChangePostgresExporterParamsBodyCommon{ - Enable: true, - CustomLabels: map[string]string{ - "new_label": "postgres_exporter", - }, - EnablePushMetrics: true, - DisablePushMetrics: true, - }, - }, - Context: pmmapitests.Context, - }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "expected one of param: enable_push_metrics or disable_push_metrics") }) } diff --git a/api-tests/inventory/agents_proxysql_exporter_test.go b/api-tests/inventory/agents_proxysql_exporter_test.go index 86c10763fa..c06fc7b0ab 100644 --- a/api-tests/inventory/agents_proxysql_exporter_test.go +++ b/api-tests/inventory/agents_proxysql_exporter_test.go @@ -96,20 +96,23 @@ func TestProxySQLExporter(t *testing.T) { }, getAgentRes) // Test change API. - changeProxySQLExporterOK, err := client.Default.AgentsService.ChangeProxySQLExporter(&agents.ChangeProxySQLExporterParams{ - Body: agents.ChangeProxySQLExporterBody{ - AgentID: agentID, - Common: &agents.ChangeProxySQLExporterParamsBodyCommon{ - Disable: true, - RemoveCustomLabels: true, + changeProxySQLExporterOK, err := client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + ProxysqlExporter: &agents.ChangeAgentParamsBodyProxysqlExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyProxysqlExporterCommon{ + Enable: pointer.ToBool(false), + CustomLabels: &agents.ChangeAgentParamsBodyProxysqlExporterCommonCustomLabels{}, + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeProxySQLExporterOK{ - Payload: &agents.ChangeProxySQLExporterOKBody{ - ProxysqlExporter: &agents.ChangeProxySQLExporterOKBodyProxysqlExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + ProxysqlExporter: &agents.ChangeAgentOKBodyProxysqlExporter{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -123,22 +126,27 @@ func TestProxySQLExporter(t *testing.T) { }, }, changeProxySQLExporterOK) - changeProxySQLExporterOK, err = client.Default.AgentsService.ChangeProxySQLExporter(&agents.ChangeProxySQLExporterParams{ - Body: agents.ChangeProxySQLExporterBody{ - AgentID: agentID, - Common: &agents.ChangeProxySQLExporterParamsBodyCommon{ - Enable: true, - CustomLabels: map[string]string{ - "new_label": "proxysql_exporter", + changeProxySQLExporterOK, err = client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + ProxysqlExporter: &agents.ChangeAgentParamsBodyProxysqlExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyProxysqlExporterCommon{ + Enable: pointer.ToBool(true), + CustomLabels: &agents.ChangeAgentParamsBodyProxysqlExporterCommonCustomLabels{ + Values: map[string]string{ + "new_label": "proxysql_exporter", + }, + }, + }, }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeProxySQLExporterOK{ - Payload: &agents.ChangeProxySQLExporterOKBody{ - ProxysqlExporter: &agents.ChangeProxySQLExporterOKBodyProxysqlExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + ProxysqlExporter: &agents.ChangeAgentOKBodyProxysqlExporter{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -175,7 +183,7 @@ func TestProxySQLExporter(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.ServiceId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddProxySQLExporterParams.ServiceId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.ProxysqlExporter.AgentID) } @@ -210,7 +218,7 @@ func TestProxySQLExporter(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.PmmAgentId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddProxySQLExporterParams.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.ProxysqlExporter.AgentID) } @@ -341,19 +349,21 @@ func TestProxySQLExporter(t *testing.T) { }, getAgentRes) // Test change API. - changeProxySQLExporterOK, err := client.Default.AgentsService.ChangeProxySQLExporter(&agents.ChangeProxySQLExporterParams{ - Body: agents.ChangeProxySQLExporterBody{ - AgentID: agentID, - Common: &agents.ChangeProxySQLExporterParamsBodyCommon{ - EnablePushMetrics: true, + changeProxySQLExporterOK, err := client.Default.AgentsService.ChangeAgent(&agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + ProxysqlExporter: &agents.ChangeAgentParamsBodyProxysqlExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyProxysqlExporterCommon{ + EnablePushMetrics: pointer.ToBool(true), + }, }, }, Context: pmmapitests.Context, }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeProxySQLExporterOK{ - Payload: &agents.ChangeProxySQLExporterOKBody{ - ProxysqlExporter: &agents.ChangeProxySQLExporterOKBodyProxysqlExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + ProxysqlExporter: &agents.ChangeAgentOKBodyProxysqlExporter{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -369,19 +379,22 @@ func TestProxySQLExporter(t *testing.T) { }, }, changeProxySQLExporterOK) - changeProxySQLExporterOK, err = client.Default.AgentsService.ChangeProxySQLExporter(&agents.ChangeProxySQLExporterParams{ - Body: agents.ChangeProxySQLExporterBody{ - AgentID: agentID, - Common: &agents.ChangeProxySQLExporterParamsBodyCommon{ - DisablePushMetrics: true, + changeProxySQLExporterOK, err = client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + ProxysqlExporter: &agents.ChangeAgentParamsBodyProxysqlExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyProxysqlExporterCommon{ + EnablePushMetrics: pointer.ToBool(false), + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeProxySQLExporterOK{ - Payload: &agents.ChangeProxySQLExporterOKBody{ - ProxysqlExporter: &agents.ChangeProxySQLExporterOKBodyProxysqlExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + ProxysqlExporter: &agents.ChangeAgentOKBodyProxysqlExporter{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -395,17 +408,5 @@ func TestProxySQLExporter(t *testing.T) { }, }, }, changeProxySQLExporterOK) - - _, err = client.Default.AgentsService.ChangeProxySQLExporter(&agents.ChangeProxySQLExporterParams{ - Body: agents.ChangeProxySQLExporterBody{ - AgentID: agentID, - Common: &agents.ChangeProxySQLExporterParamsBodyCommon{ - EnablePushMetrics: true, - DisablePushMetrics: true, - }, - }, - Context: pmmapitests.Context, - }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "expected one of param: enable_push_metrics or disable_push_metrics") }) } diff --git a/api-tests/inventory/agents_rds_exporter_test.go b/api-tests/inventory/agents_rds_exporter_test.go index 7ac1e1c236..20817b2794 100644 --- a/api-tests/inventory/agents_rds_exporter_test.go +++ b/api-tests/inventory/agents_rds_exporter_test.go @@ -82,20 +82,23 @@ func TestRDSExporter(t *testing.T) { }, getAgentRes) // Test change API. - changeRDSExporterOK, err := client.Default.AgentsService.ChangeRDSExporter(&agents.ChangeRDSExporterParams{ - Body: agents.ChangeRDSExporterBody{ - AgentID: agentID, - Common: &agents.ChangeRDSExporterParamsBodyCommon{ - Disable: true, - RemoveCustomLabels: true, + changeRDSExporterOK, err := client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + RDSExporter: &agents.ChangeAgentParamsBodyRDSExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyRDSExporterCommon{ + Enable: pointer.ToBool(false), + CustomLabels: &agents.ChangeAgentParamsBodyRDSExporterCommonCustomLabels{}, + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeRDSExporterOK{ - Payload: &agents.ChangeRDSExporterOKBody{ - RDSExporter: &agents.ChangeRDSExporterOKBodyRDSExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + RDSExporter: &agents.ChangeAgentOKBodyRDSExporter{ NodeID: nodeID, AgentID: agentID, PMMAgentID: pmmAgentID, @@ -109,22 +112,27 @@ func TestRDSExporter(t *testing.T) { }, }, changeRDSExporterOK) - changeRDSExporterOK, err = client.Default.AgentsService.ChangeRDSExporter(&agents.ChangeRDSExporterParams{ - Body: agents.ChangeRDSExporterBody{ - AgentID: agentID, - Common: &agents.ChangeRDSExporterParamsBodyCommon{ - Enable: true, - CustomLabels: map[string]string{ - "new_label": "rds_exporter", + changeRDSExporterOK, err = client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + RDSExporter: &agents.ChangeAgentParamsBodyRDSExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyRDSExporterCommon{ + Enable: pointer.ToBool(true), + CustomLabels: &agents.ChangeAgentParamsBodyRDSExporterCommonCustomLabels{ + Values: map[string]string{ + "new_label": "rds_exporter", + }, + }, + }, }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeRDSExporterOK{ - Payload: &agents.ChangeRDSExporterOKBody{ - RDSExporter: &agents.ChangeRDSExporterOKBodyRDSExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + RDSExporter: &agents.ChangeAgentOKBodyRDSExporter{ NodeID: nodeID, AgentID: agentID, PMMAgentID: pmmAgentID, @@ -161,7 +169,7 @@ func TestRDSExporter(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.NodeId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddRDSExporterParams.NodeId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.RDSExporter.AgentID) } @@ -242,10 +250,11 @@ func TestRDSExporter(t *testing.T) { agentID := rdsExporter.RDSExporter.AgentID defer pmmapitests.RemoveAgents(t, agentID) - getAgentRes, err := client.Default.AgentsService.GetAgent(&agents.GetAgentParams{ - Body: agents.GetAgentBody{AgentID: agentID}, - Context: pmmapitests.Context, - }) + getAgentRes, err := client.Default.AgentsService.GetAgent( + &agents.GetAgentParams{ + Body: agents.GetAgentBody{AgentID: agentID}, + Context: pmmapitests.Context, + }) require.NoError(t, err) assert.Equal(t, &agents.GetAgentOK{ @@ -266,19 +275,22 @@ func TestRDSExporter(t *testing.T) { }, getAgentRes) // Test change API. - changeRDSExporterOK, err := client.Default.AgentsService.ChangeRDSExporter(&agents.ChangeRDSExporterParams{ - Body: agents.ChangeRDSExporterBody{ - AgentID: agentID, - Common: &agents.ChangeRDSExporterParamsBodyCommon{ - EnablePushMetrics: true, + changeRDSExporterOK, err := client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + RDSExporter: &agents.ChangeAgentParamsBodyRDSExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyRDSExporterCommon{ + EnablePushMetrics: pointer.ToBool(true), + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeRDSExporterOK{ - Payload: &agents.ChangeRDSExporterOKBody{ - RDSExporter: &agents.ChangeRDSExporterOKBodyRDSExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + RDSExporter: &agents.ChangeAgentOKBodyRDSExporter{ NodeID: nodeID, AgentID: agentID, PMMAgentID: pmmAgentID, @@ -294,19 +306,22 @@ func TestRDSExporter(t *testing.T) { }, }, changeRDSExporterOK) - changeRDSExporterOK, err = client.Default.AgentsService.ChangeRDSExporter(&agents.ChangeRDSExporterParams{ - Body: agents.ChangeRDSExporterBody{ - AgentID: agentID, - Common: &agents.ChangeRDSExporterParamsBodyCommon{ - DisablePushMetrics: true, + changeRDSExporterOK, err = client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + RDSExporter: &agents.ChangeAgentParamsBodyRDSExporter{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyRDSExporterCommon{ + EnablePushMetrics: pointer.ToBool(false), + }, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeRDSExporterOK{ - Payload: &agents.ChangeRDSExporterOKBody{ - RDSExporter: &agents.ChangeRDSExporterOKBodyRDSExporter{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + RDSExporter: &agents.ChangeAgentOKBodyRDSExporter{ NodeID: nodeID, AgentID: agentID, PMMAgentID: pmmAgentID, @@ -320,17 +335,5 @@ func TestRDSExporter(t *testing.T) { }, }, }, changeRDSExporterOK) - _, err = client.Default.AgentsService.ChangeRDSExporter(&agents.ChangeRDSExporterParams{ - Body: agents.ChangeRDSExporterBody{ - AgentID: agentID, - Common: &agents.ChangeRDSExporterParamsBodyCommon{ - EnablePushMetrics: true, - DisablePushMetrics: true, - }, - }, - Context: pmmapitests.Context, - }) - - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "expected one of param: enable_push_metrics or disable_push_metrics") }) } diff --git a/api-tests/inventory/agents_test.go b/api-tests/inventory/agents_test.go index b9c27283e8..9eb4d66f9a 100644 --- a/api-tests/inventory/agents_test.go +++ b/api-tests/inventory/agents_test.go @@ -65,11 +65,10 @@ func TestAgents(t *testing.T) { mySqldExporter := addAgent(t, agents.AddAgentBody{ MysqldExporter: &agents.AddAgentParamsBodyMysqldExporter{ - ServiceID: serviceID, - Username: "username", - Password: "password", - PMMAgentID: pmmAgentID, - + ServiceID: serviceID, + Username: "username", + Password: "password", + PMMAgentID: pmmAgentID, SkipConnectionCheck: true, }, }) @@ -308,7 +307,7 @@ func TestPMMAgent(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.RunsOnNodeId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddPMMAgentParams.RunsOnNodeId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.PMMAgent.AgentID) } @@ -554,21 +553,23 @@ func TestQanAgentExporter(t *testing.T) { }, getAgentRes) // Test change API. - changeQANMySQLPerfSchemaAgentOK, err := client.Default.AgentsService.ChangeQANMySQLPerfSchemaAgent( - &agents.ChangeQANMySQLPerfSchemaAgentParams{ - Body: agents.ChangeQANMySQLPerfSchemaAgentBody{ - AgentID: agentID, - Common: &agents.ChangeQANMySQLPerfSchemaAgentParamsBodyCommon{ - Disable: true, - RemoveCustomLabels: true, + changeQANMySQLPerfSchemaAgentOK, err := client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + QANMysqlPerfschemaAgent: &agents.ChangeAgentParamsBodyQANMysqlPerfschemaAgent{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommon{ + Enable: pointer.ToBool(false), + CustomLabels: &agents.ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommonCustomLabels{}, + }, }, }, Context: pmmapitests.Context, }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeQANMySQLPerfSchemaAgentOK{ - Payload: &agents.ChangeQANMySQLPerfSchemaAgentOKBody{ - QANMysqlPerfschemaAgent: &agents.ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + QANMysqlPerfschemaAgent: &agents.ChangeAgentOKBodyQANMysqlPerfschemaAgent{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -581,23 +582,27 @@ func TestQanAgentExporter(t *testing.T) { }, }, changeQANMySQLPerfSchemaAgentOK) - changeQANMySQLPerfSchemaAgentOK, err = client.Default.AgentsService.ChangeQANMySQLPerfSchemaAgent( - &agents.ChangeQANMySQLPerfSchemaAgentParams{ - Body: agents.ChangeQANMySQLPerfSchemaAgentBody{ - AgentID: agentID, - Common: &agents.ChangeQANMySQLPerfSchemaAgentParamsBodyCommon{ - Enable: true, - CustomLabels: map[string]string{ - "new_label": "QANMysqlPerfschemaAgent", + changeQANMySQLPerfSchemaAgentOK, err = client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + QANMysqlPerfschemaAgent: &agents.ChangeAgentParamsBodyQANMysqlPerfschemaAgent{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommon{ + Enable: pointer.ToBool(true), + CustomLabels: &agents.ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommonCustomLabels{ + Values: map[string]string{ + "new_label": "QANMysqlPerfschemaAgent", + }, + }, }, }, }, Context: pmmapitests.Context, }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeQANMySQLPerfSchemaAgentOK{ - Payload: &agents.ChangeQANMySQLPerfSchemaAgentOKBody{ - QANMysqlPerfschemaAgent: &agents.ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + QANMysqlPerfschemaAgent: &agents.ChangeAgentOKBodyQANMysqlPerfschemaAgent{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -637,7 +642,7 @@ func TestQanAgentExporter(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.ServiceId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddQANMySQLPerfSchemaAgentParams.ServiceId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.QANMysqlPerfschemaAgent.AgentID) } @@ -674,7 +679,7 @@ func TestQanAgentExporter(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.PmmAgentId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddQANMySQLPerfSchemaAgentParams.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.QANMysqlPerfschemaAgent.AgentID) } @@ -811,21 +816,23 @@ func TestPGStatStatementsQanAgent(t *testing.T) { }, getAgentRes) // Test change API. - changeQANPostgreSQLPgStatementsAgentOK, err := client.Default.AgentsService.ChangeQANPostgreSQLPgStatementsAgent( - &agents.ChangeQANPostgreSQLPgStatementsAgentParams{ - Body: agents.ChangeQANPostgreSQLPgStatementsAgentBody{ - AgentID: agentID, - Common: &agents.ChangeQANPostgreSQLPgStatementsAgentParamsBodyCommon{ - Disable: true, - RemoveCustomLabels: true, + changeQANPostgreSQLPgStatementsAgentOK, err := client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + QANPostgresqlPgstatementsAgent: &agents.ChangeAgentParamsBodyQANPostgresqlPgstatementsAgent{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommon{ + Enable: pointer.ToBool(false), + CustomLabels: &agents.ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommonCustomLabels{}, + }, }, }, Context: pmmapitests.Context, }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeQANPostgreSQLPgStatementsAgentOK{ - Payload: &agents.ChangeQANPostgreSQLPgStatementsAgentOKBody{ - QANPostgresqlPgstatementsAgent: &agents.ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + QANPostgresqlPgstatementsAgent: &agents.ChangeAgentOKBodyQANPostgresqlPgstatementsAgent{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -838,23 +845,27 @@ func TestPGStatStatementsQanAgent(t *testing.T) { }, }, changeQANPostgreSQLPgStatementsAgentOK) - changeQANPostgreSQLPgStatementsAgentOK, err = client.Default.AgentsService.ChangeQANPostgreSQLPgStatementsAgent( - &agents.ChangeQANPostgreSQLPgStatementsAgentParams{ - Body: agents.ChangeQANPostgreSQLPgStatementsAgentBody{ - AgentID: agentID, - Common: &agents.ChangeQANPostgreSQLPgStatementsAgentParamsBodyCommon{ - Enable: true, - CustomLabels: map[string]string{ - "new_label": "QANPostgreSQLPgStatementsAgent", + changeQANPostgreSQLPgStatementsAgentOK, err = client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + QANPostgresqlPgstatementsAgent: &agents.ChangeAgentParamsBodyQANPostgresqlPgstatementsAgent{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommon{ + Enable: pointer.ToBool(true), + CustomLabels: &agents.ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommonCustomLabels{ + Values: map[string]string{ + "new_label": "QANPostgreSQLPgStatementsAgent", + }, + }, }, }, }, Context: pmmapitests.Context, }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeQANPostgreSQLPgStatementsAgentOK{ - Payload: &agents.ChangeQANPostgreSQLPgStatementsAgentOKBody{ - QANPostgresqlPgstatementsAgent: &agents.ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + QANPostgresqlPgstatementsAgent: &agents.ChangeAgentOKBodyQANPostgresqlPgstatementsAgent{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -894,7 +905,7 @@ func TestPGStatStatementsQanAgent(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.ServiceId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddQANPostgreSQLPgStatementsAgentParams.ServiceId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.QANPostgresqlPgstatementsAgent.AgentID) } @@ -931,7 +942,7 @@ func TestPGStatStatementsQanAgent(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddQANPostgreSQLPgStatementsAgentRequest.PmmAgentId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddQANPostgreSQLPgStatementsAgentParams.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.QANPostgresqlPgstatementsAgent.AgentID) } @@ -1068,21 +1079,23 @@ func TestPGStatMonitorQanAgent(t *testing.T) { }, getAgentRes) // Test change API. - changeQANPostgreSQLPgStatMonitorAgentOK, err := client.Default.AgentsService.ChangeQANPostgreSQLPgStatMonitorAgent( - &agents.ChangeQANPostgreSQLPgStatMonitorAgentParams{ - Body: agents.ChangeQANPostgreSQLPgStatMonitorAgentBody{ - AgentID: agentID, - Common: &agents.ChangeQANPostgreSQLPgStatMonitorAgentParamsBodyCommon{ - Disable: true, - RemoveCustomLabels: true, + changeQANPostgreSQLPgStatMonitorAgentOK, err := client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + QANPostgresqlPgstatmonitorAgent: &agents.ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgent{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommon{ + Enable: pointer.ToBool(false), + CustomLabels: &agents.ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommonCustomLabels{}, + }, }, }, Context: pmmapitests.Context, }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeQANPostgreSQLPgStatMonitorAgentOK{ - Payload: &agents.ChangeQANPostgreSQLPgStatMonitorAgentOKBody{ - QANPostgresqlPgstatmonitorAgent: &agents.ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + QANPostgresqlPgstatmonitorAgent: &agents.ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgent{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -1095,23 +1108,27 @@ func TestPGStatMonitorQanAgent(t *testing.T) { }, }, changeQANPostgreSQLPgStatMonitorAgentOK) - changeQANPostgreSQLPgStatMonitorAgentOK, err = client.Default.AgentsService.ChangeQANPostgreSQLPgStatMonitorAgent( - &agents.ChangeQANPostgreSQLPgStatMonitorAgentParams{ - Body: agents.ChangeQANPostgreSQLPgStatMonitorAgentBody{ - AgentID: agentID, - Common: &agents.ChangeQANPostgreSQLPgStatMonitorAgentParamsBodyCommon{ - Enable: true, - CustomLabels: map[string]string{ - "new_label": "QANPostgreSQLPgStatMonitorAgent", + changeQANPostgreSQLPgStatMonitorAgentOK, err = client.Default.AgentsService.ChangeAgent( + &agents.ChangeAgentParams{ + Body: agents.ChangeAgentBody{ + QANPostgresqlPgstatmonitorAgent: &agents.ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgent{ + AgentID: agentID, + Common: &agents.ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommon{ + Enable: pointer.ToBool(true), + CustomLabels: &agents.ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommonCustomLabels{ + Values: map[string]string{ + "new_label": "QANPostgreSQLPgStatMonitorAgent", + }, + }, }, }, }, Context: pmmapitests.Context, }) assert.NoError(t, err) - assert.Equal(t, &agents.ChangeQANPostgreSQLPgStatMonitorAgentOK{ - Payload: &agents.ChangeQANPostgreSQLPgStatMonitorAgentOKBody{ - QANPostgresqlPgstatmonitorAgent: &agents.ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent{ + assert.Equal(t, &agents.ChangeAgentOK{ + Payload: &agents.ChangeAgentOKBody{ + QANPostgresqlPgstatmonitorAgent: &agents.ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgent{ AgentID: agentID, ServiceID: serviceID, Username: "username", @@ -1218,7 +1235,7 @@ func TestPGStatMonitorQanAgent(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.ServiceId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddQANPostgreSQLPgStatMonitorAgentParams.ServiceId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.QANPostgresqlPgstatmonitorAgent.AgentID) } @@ -1255,7 +1272,7 @@ func TestPGStatMonitorQanAgent(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.PmmAgentId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddQANPostgreSQLPgStatMonitorAgentParams.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.QANPostgresqlPgstatmonitorAgent.AgentID) } diff --git a/api-tests/management/action/explain_test.go b/api-tests/management/action/explain_test.go index 2049d8f0ad..04156ca2bf 100644 --- a/api-tests/management/action/explain_test.go +++ b/api-tests/management/action/explain_test.go @@ -31,31 +31,6 @@ import ( func TestRunExplain(t *testing.T) { t.Skip("not implemented yet") - t.Run("ByQuery", func(t *testing.T) { - explainActionOK, err := client.Default.ActionsService.StartMySQLExplainAction(&actions.StartMySQLExplainActionParams{ - Context: pmmapitests.Context, - Body: actions.StartMySQLExplainActionBody{ - // PMMAgentID: "/agent_id/f235005b-9cca-4b73-bbbd-1251067c3138", - ServiceID: "/service_id/5a9a7aa6-7af4-47be-817c-6d88e955bff2", - Query: "SELECT `t` . * FROM `test` . `key_value` `t`", - }, - }) - require.NoError(t, err) - require.NotEmpty(t, explainActionOK.Payload.ActionID) - - time.Sleep(2 * time.Second) - - actionOK, err := client.Default.ActionsService.GetAction(&actions.GetActionParams{ - Context: pmmapitests.Context, - Body: actions.GetActionBody{ - ActionID: explainActionOK.Payload.ActionID, - }, - }) - require.NoError(t, err) - require.Empty(t, actionOK.Payload.Error) - t.Log(actionOK.Payload.Output) - }) - t.Run("ByQueryID", func(t *testing.T) { explainActionOK, err := client.Default.ActionsService.StartMySQLExplainAction(&actions.StartMySQLExplainActionParams{ Context: pmmapitests.Context, diff --git a/api-tests/server/platform_test.go b/api-tests/server/platform_test.go index 5dc6df7919..56452eacbb 100644 --- a/api-tests/server/platform_test.go +++ b/api-tests/server/platform_test.go @@ -17,7 +17,6 @@ package server import ( "net/http" - "os" "testing" "github.com/AlekSi/pointer" @@ -36,18 +35,16 @@ func TestPlatform(t *testing.T) { client := platformClient.Default.PlatformService serverClient := serverClient.Default.ServerService + // TODO: provide a real PersonalAccessToken for the dev environment so this test can be run. + // The one below is a fake, it is there to fix the test compilation. + const serverName = string("my PMM") - username, password := os.Getenv("PERCONA_TEST_PORTAL_USERNAME"), os.Getenv("PERCONA_TEST_PORTAL_PASSWORD") t.Run("connect and disconnect", func(t *testing.T) { - if username == "" || password == "" { - t.Skip("Environment variables PERCONA_TEST_PORTAL_USERNAME, PERCONA_TEST_PORTAL_PASSWORD not set.") - } t.Run("PMM server does not have address set", func(t *testing.T) { _, err := client.Connect(&platform.ConnectParams{ Body: platform.ConnectBody{ - Email: "wrong@example.com", - Password: password, - ServerName: serverName, + PersonalAccessToken: "JReeZA5EqM4b6bZMxBOEaAxoc4rWd5teK7HF", + ServerName: serverName, }, Context: pmmapitests.Context, }) @@ -64,60 +61,22 @@ func TestPlatform(t *testing.T) { require.NoError(t, err) assert.Equal(t, "localhost", res.Payload.Settings.PMMPublicAddress) - t.Run("wrong email", func(t *testing.T) { + t.Run("empty access token", func(t *testing.T) { _, err := client.Connect(&platform.ConnectParams{ Body: platform.ConnectBody{ - Email: "wrong@example.com", - Password: password, - ServerName: serverName, + PersonalAccessToken: "", + ServerName: serverName, }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, http.StatusUnauthorized, codes.Unauthenticated, "Incorrect username or password.") - }) - - t.Run("wrong password", func(t *testing.T) { - _, err := client.Connect(&platform.ConnectParams{ - Body: platform.ConnectBody{ - Email: username, - Password: "WrongPassword12345", - ServerName: serverName, - }, - Context: pmmapitests.Context, - }) - pmmapitests.AssertAPIErrorf(t, err, http.StatusUnauthorized, codes.Unauthenticated, "Incorrect username or password.") - }) - - t.Run("empty email", func(t *testing.T) { - _, err := client.Connect(&platform.ConnectParams{ - Body: platform.ConnectBody{ - Email: "", - Password: password, - ServerName: serverName, - }, - Context: pmmapitests.Context, - }) - pmmapitests.AssertAPIErrorf(t, err, http.StatusBadRequest, codes.InvalidArgument, "invalid field Email: value '' must not be an empty string") - }) - - t.Run("empty password", func(t *testing.T) { - _, err := client.Connect(&platform.ConnectParams{ - Body: platform.ConnectBody{ - Email: username, - ServerName: serverName, - Password: "", - }, - Context: pmmapitests.Context, - }) - pmmapitests.AssertAPIErrorf(t, err, http.StatusBadRequest, codes.InvalidArgument, "invalid field Password: value '' must not be an empty string") + pmmapitests.AssertAPIErrorf(t, err, http.StatusBadRequest, codes.InvalidArgument, "invalid field PersonalAccessToken: value '' must not be an empty string") }) t.Run("empty server name", func(t *testing.T) { _, err := client.Connect(&platform.ConnectParams{ Body: platform.ConnectBody{ - Email: username, - Password: password, - ServerName: "", + PersonalAccessToken: "JReeZA5EqM4b6bZMxBOEaAxoc4rWd5teK7HF", + ServerName: "", }, Context: pmmapitests.Context, }) @@ -127,9 +86,8 @@ func TestPlatform(t *testing.T) { t.Run("successful connect and disconnect", func(t *testing.T) { _, err := client.Connect(&platform.ConnectParams{ Body: platform.ConnectBody{ - ServerName: serverName, - Email: username, - Password: password, + ServerName: serverName, + PersonalAccessToken: "JReeZA5EqM4b6bZMxBOEaAxoc4rWd5teK7HF", }, Context: pmmapitests.Context, }) @@ -155,16 +113,11 @@ func TestPlatform(t *testing.T) { }) t.Run("search tickets", func(t *testing.T) { - if username == "" || password == "" { - t.Skip("Environment variables PERCONA_TEST_PORTAL_USERNAME, PERCONA_TEST_PORTAL_PASSWORD not set.") - } - t.Run("success", func(t *testing.T) { _, err := client.Connect(&platform.ConnectParams{ Body: platform.ConnectBody{ - ServerName: serverName, - Email: username, - Password: password, + ServerName: serverName, + PersonalAccessToken: "JReeZA5EqM4b6bZMxBOEaAxoc4rWd5teK7HF", }, Context: pmmapitests.Context, }) @@ -183,16 +136,11 @@ func TestPlatform(t *testing.T) { }) t.Run("search entitlements", func(t *testing.T) { //nolint:dupl - if username == "" || password == "" { - t.Skip("Environment variables PERCONA_TEST_PORTAL_USERNAME, PERCONA_TEST_PORTAL_PASSWORD not set.") - } - t.Run("success", func(t *testing.T) { _, err := client.Connect(&platform.ConnectParams{ Body: platform.ConnectBody{ - ServerName: serverName, - Email: username, - Password: password, + ServerName: serverName, + PersonalAccessToken: "JReeZA5EqM4b6bZMxBOEaAxoc4rWd5teK7HF", }, Context: pmmapitests.Context, }) @@ -211,16 +159,11 @@ func TestPlatform(t *testing.T) { }) t.Run("get contact information", func(t *testing.T) { //nolint:dupl - if username == "" || password == "" { - t.Skip("Environment variables PERCONA_TEST_PORTAL_USERNAME, PERCONA_TEST_PORTAL_PASSWORD not set.") - } - t.Run("success", func(t *testing.T) { _, err := client.Connect(&platform.ConnectParams{ Body: platform.ConnectBody{ - ServerName: serverName, - Email: username, - Password: password, + ServerName: serverName, + PersonalAccessToken: "JReeZA5EqM4b6bZMxBOEaAxoc4rWd5teK7HF", }, Context: pmmapitests.Context, }) diff --git a/api-tests/server/settings_test.go b/api-tests/server/settings_test.go index 52953a5eb5..dbf17b5ada 100644 --- a/api-tests/server/settings_test.go +++ b/api-tests/server/settings_test.go @@ -39,7 +39,7 @@ func TestSettings(t *testing.T) { res, err := serverClient.Default.ServerService.GetSettings(nil) require.NoError(t, err) assert.True(t, res.Payload.Settings.TelemetryEnabled) - assert.True(t, res.Payload.Settings.SttEnabled) + assert.True(t, res.Payload.Settings.AdvisorEnabled) expected := &server.GetSettingsOKBodySettingsMetricsResolutions{ Hr: "5s", Mr: "10s", @@ -109,19 +109,19 @@ func TestSettings(t *testing.T) { res, err := serverClient.Default.ServerService.ChangeSettings(&server.ChangeSettingsParams{ Body: server.ChangeSettingsBody{ - EnableStt: pointer.ToBool(true), + EnableAdvisor: pointer.ToBool(true), EnableTelemetry: pointer.ToBool(true), }, Context: pmmapitests.Context, }) require.NoError(t, err) - assert.True(t, res.Payload.Settings.SttEnabled) + assert.True(t, res.Payload.Settings.AdvisorEnabled) assert.True(t, res.Payload.Settings.TelemetryEnabled) resg, err := serverClient.Default.ServerService.GetSettings(nil) require.NoError(t, err) assert.True(t, resg.Payload.Settings.TelemetryEnabled) - assert.True(t, resg.Payload.Settings.SttEnabled) + assert.True(t, resg.Payload.Settings.AdvisorEnabled) }) t.Run("EnableAdvisorsAndDisableTelemetry", func(t *testing.T) { @@ -129,13 +129,13 @@ func TestSettings(t *testing.T) { res, err := serverClient.Default.ServerService.ChangeSettings(&server.ChangeSettingsParams{ Body: server.ChangeSettingsBody{ - EnableStt: pointer.ToBool(true), + EnableAdvisor: pointer.ToBool(true), EnableTelemetry: pointer.ToBool(false), }, Context: pmmapitests.Context, }) require.NoError(t, err) - assert.True(t, res.Payload.Settings.SttEnabled) + assert.True(t, res.Payload.Settings.AdvisorEnabled) assert.False(t, res.Payload.Settings.TelemetryEnabled) }) @@ -144,19 +144,19 @@ func TestSettings(t *testing.T) { res, err := serverClient.Default.ServerService.ChangeSettings(&server.ChangeSettingsParams{ Body: server.ChangeSettingsBody{ - EnableStt: pointer.ToBool(false), + EnableAdvisor: pointer.ToBool(false), EnableTelemetry: pointer.ToBool(true), }, Context: pmmapitests.Context, }) require.NoError(t, err) - assert.False(t, res.Payload.Settings.SttEnabled) + assert.False(t, res.Payload.Settings.AdvisorEnabled) assert.True(t, res.Payload.Settings.TelemetryEnabled) resg, err := serverClient.Default.ServerService.GetSettings(nil) require.NoError(t, err) assert.True(t, resg.Payload.Settings.TelemetryEnabled) - assert.False(t, resg.Payload.Settings.SttEnabled) + assert.False(t, resg.Payload.Settings.AdvisorEnabled) }) t.Run("DisableAdvisorsAndDisableTelemetry", func(t *testing.T) { @@ -164,19 +164,19 @@ func TestSettings(t *testing.T) { res, err := serverClient.Default.ServerService.ChangeSettings(&server.ChangeSettingsParams{ Body: server.ChangeSettingsBody{ - EnableStt: pointer.ToBool(false), + EnableAdvisor: pointer.ToBool(false), EnableTelemetry: pointer.ToBool(false), }, Context: pmmapitests.Context, }) require.NoError(t, err) - assert.False(t, res.Payload.Settings.SttEnabled) + assert.False(t, res.Payload.Settings.AdvisorEnabled) assert.False(t, res.Payload.Settings.TelemetryEnabled) resg, err := serverClient.Default.ServerService.GetSettings(nil) require.NoError(t, err) assert.False(t, resg.Payload.Settings.TelemetryEnabled) - assert.False(t, resg.Payload.Settings.SttEnabled) + assert.False(t, resg.Payload.Settings.AdvisorEnabled) }) t.Run("EnableAdvisorsWhileTelemetryEnabled", func(t *testing.T) { @@ -194,17 +194,17 @@ func TestSettings(t *testing.T) { res, err = serverClient.Default.ServerService.ChangeSettings(&server.ChangeSettingsParams{ Body: server.ChangeSettingsBody{ - EnableStt: pointer.ToBool(true), + EnableAdvisor: pointer.ToBool(true), }, Context: pmmapitests.Context, }) require.NoError(t, err) - assert.True(t, res.Payload.Settings.SttEnabled) + assert.True(t, res.Payload.Settings.AdvisorEnabled) resg, err := serverClient.Default.ServerService.GetSettings(nil) require.NoError(t, err) assert.True(t, resg.Payload.Settings.TelemetryEnabled) - assert.True(t, resg.Payload.Settings.SttEnabled) + assert.True(t, resg.Payload.Settings.AdvisorEnabled) }) t.Run("DisableAdvisorsWhileItIsDisabled", func(t *testing.T) { @@ -212,17 +212,17 @@ func TestSettings(t *testing.T) { res, err := serverClient.Default.ServerService.ChangeSettings(&server.ChangeSettingsParams{ Body: server.ChangeSettingsBody{ - EnableStt: pointer.ToBool(false), + EnableAdvisor: pointer.ToBool(false), }, Context: pmmapitests.Context, }) require.NoError(t, err) - assert.False(t, res.Payload.Settings.SttEnabled) + assert.False(t, res.Payload.Settings.AdvisorEnabled) resg, err := serverClient.Default.ServerService.GetSettings(nil) require.NoError(t, err) assert.True(t, resg.Payload.Settings.TelemetryEnabled) - assert.False(t, resg.Payload.Settings.SttEnabled) + assert.False(t, resg.Payload.Settings.AdvisorEnabled) }) t.Run("AdvisorsEnabledState", func(t *testing.T) { @@ -230,33 +230,33 @@ func TestSettings(t *testing.T) { res, err := serverClient.Default.ServerService.ChangeSettings(&server.ChangeSettingsParams{ Body: server.ChangeSettingsBody{ - EnableStt: pointer.ToBool(true), + EnableAdvisor: pointer.ToBool(true), }, Context: pmmapitests.Context, }) require.NoError(t, err) - assert.True(t, res.Payload.Settings.SttEnabled) + assert.True(t, res.Payload.Settings.AdvisorEnabled) resg, err := serverClient.Default.ServerService.GetSettings(nil) require.NoError(t, err) assert.True(t, resg.Payload.Settings.TelemetryEnabled) - assert.True(t, resg.Payload.Settings.SttEnabled) + assert.True(t, resg.Payload.Settings.AdvisorEnabled) t.Run("EnableAdvisorsWhileItIsEnabled", func(t *testing.T) { res, err := serverClient.Default.ServerService.ChangeSettings(&server.ChangeSettingsParams{ Body: server.ChangeSettingsBody{ - EnableStt: pointer.ToBool(true), + EnableAdvisor: pointer.ToBool(true), }, Context: pmmapitests.Context, }) require.NoError(t, err) - assert.True(t, res.Payload.Settings.SttEnabled) + assert.True(t, res.Payload.Settings.AdvisorEnabled) resg, err := serverClient.Default.ServerService.GetSettings(nil) require.NoError(t, err) assert.True(t, resg.Payload.Settings.TelemetryEnabled) - assert.True(t, resg.Payload.Settings.SttEnabled) + assert.True(t, resg.Payload.Settings.AdvisorEnabled) }) t.Run("DisableTelemetryWhileAdvisorsEnabled", func(t *testing.T) { @@ -267,7 +267,7 @@ func TestSettings(t *testing.T) { Context: pmmapitests.Context, }) require.NoError(t, err) - assert.True(t, res.Payload.Settings.SttEnabled) + assert.True(t, res.Payload.Settings.AdvisorEnabled) assert.False(t, res.Payload.Settings.TelemetryEnabled) }) }) @@ -288,24 +288,24 @@ func TestSettings(t *testing.T) { resg, err := serverClient.Default.ServerService.GetSettings(nil) require.NoError(t, err) assert.False(t, resg.Payload.Settings.TelemetryEnabled) - assert.True(t, resg.Payload.Settings.SttEnabled) + assert.True(t, resg.Payload.Settings.AdvisorEnabled) t.Run("EnableAdvisorsWhileTelemetryDisabled", func(t *testing.T) { defer restoreSettingsDefaults(t) res, err := serverClient.Default.ServerService.ChangeSettings(&server.ChangeSettingsParams{ Body: server.ChangeSettingsBody{ - EnableStt: pointer.ToBool(true), + EnableAdvisor: pointer.ToBool(true), }, Context: pmmapitests.Context, }) require.NoError(t, err) - assert.True(t, res.Payload.Settings.SttEnabled) + assert.True(t, res.Payload.Settings.AdvisorEnabled) assert.False(t, res.Payload.Settings.TelemetryEnabled) resg, err := serverClient.Default.ServerService.GetSettings(nil) require.NoError(t, err) - assert.True(t, resg.Payload.Settings.SttEnabled) + assert.True(t, resg.Payload.Settings.AdvisorEnabled) assert.False(t, resg.Payload.Settings.TelemetryEnabled) }) @@ -324,7 +324,7 @@ func TestSettings(t *testing.T) { resg, err := serverClient.Default.ServerService.GetSettings(nil) require.NoError(t, err) assert.True(t, resg.Payload.Settings.TelemetryEnabled) - assert.True(t, resg.Payload.Settings.SttEnabled) + assert.True(t, resg.Payload.Settings.AdvisorEnabled) }) }) @@ -410,7 +410,7 @@ func TestSettings(t *testing.T) { res, err := serverClient.Default.ServerService.ChangeSettings(&server.ChangeSettingsParams{ Body: server.ChangeSettingsBody{ - SttCheckIntervals: &server.ChangeSettingsParamsBodySttCheckIntervals{ + AdvisorRunIntervals: &server.ChangeSettingsParamsBodyAdvisorRunIntervals{ FrequentInterval: "1", }, }, @@ -426,7 +426,7 @@ func TestSettings(t *testing.T) { res, err := serverClient.Default.ServerService.ChangeSettings(&server.ChangeSettingsParams{ Body: server.ChangeSettingsBody{ - SttCheckIntervals: &server.ChangeSettingsParamsBodySttCheckIntervals{ + AdvisorRunIntervals: &server.ChangeSettingsParamsBodyAdvisorRunIntervals{ StandardInterval: "0.9s", }, }, @@ -442,7 +442,7 @@ func TestSettings(t *testing.T) { res, err := serverClient.Default.ServerService.ChangeSettings(&server.ChangeSettingsParams{ Body: server.ChangeSettingsBody{ - SttCheckIntervals: &server.ChangeSettingsParamsBodySttCheckIntervals{ + AdvisorRunIntervals: &server.ChangeSettingsParamsBodyAdvisorRunIntervals{ RareInterval: "1.5s", }, }, @@ -601,7 +601,7 @@ func TestSettings(t *testing.T) { res, err := serverClient.Default.ServerService.ChangeSettings(&server.ChangeSettingsParams{ Body: server.ChangeSettingsBody{ - SttCheckIntervals: &server.ChangeSettingsParamsBodySttCheckIntervals{ + AdvisorRunIntervals: &server.ChangeSettingsParamsBodyAdvisorRunIntervals{ RareInterval: "28800s", // 8 hours StandardInterval: "1800s", // 30 minutes FrequentInterval: "20s", @@ -610,21 +610,21 @@ func TestSettings(t *testing.T) { Context: pmmapitests.Context, }) require.NoError(t, err) - expected := &server.ChangeSettingsOKBodySettingsSttCheckIntervals{ + expected := &server.ChangeSettingsOKBodySettingsAdvisorRunIntervals{ RareInterval: "28800s", StandardInterval: "1800s", FrequentInterval: "20s", } - assert.Equal(t, expected, res.Payload.Settings.SttCheckIntervals) + assert.Equal(t, expected, res.Payload.Settings.AdvisorRunIntervals) getRes, err := serverClient.Default.ServerService.GetSettings(nil) require.NoError(t, err) - getExpected := &server.GetSettingsOKBodySettingsSttCheckIntervals{ + getExpected := &server.ChangeSettingsOKBodySettingsAdvisorRunIntervals{ RareInterval: "28800s", StandardInterval: "1800s", FrequentInterval: "20s", } - assert.Equal(t, getExpected, getRes.Payload.Settings.SttCheckIntervals) + assert.Equal(t, getExpected, getRes.Payload.Settings.AdvisorRunIntervals) t.Run("DefaultsAreNotRestored", func(t *testing.T) { defer restoreSettingsDefaults(t) @@ -634,22 +634,22 @@ func TestSettings(t *testing.T) { Context: pmmapitests.Context, }) require.NoError(t, err) - expected := &server.ChangeSettingsOKBodySettingsSttCheckIntervals{ + expected := &server.ChangeSettingsOKBodySettingsAdvisorRunIntervals{ RareInterval: "28800s", StandardInterval: "1800s", FrequentInterval: "20s", } - assert.Equal(t, expected, res.Payload.Settings.SttCheckIntervals) + assert.Equal(t, expected, res.Payload.Settings.AdvisorRunIntervals) // Check if the values were persisted getRes, err := serverClient.Default.ServerService.GetSettings(nil) require.NoError(t, err) - getExpected := &server.GetSettingsOKBodySettingsSttCheckIntervals{ + getExpected := &server.ChangeSettingsOKBodySettingsAdvisorRunIntervals{ RareInterval: "28800s", StandardInterval: "1800s", FrequentInterval: "20s", } - assert.Equal(t, getExpected, getRes.Payload.Settings.SttCheckIntervals) + assert.Equal(t, getExpected, getRes.Payload.Settings.AdvisorRunIntervals) }) }) diff --git a/api/common/common.pb.go b/api/common/common.pb.go index 2426f03a9f..4d9495b672 100644 --- a/api/common/common.pb.go +++ b/api/common/common.pb.go @@ -69,6 +69,54 @@ func (x *StringArray) GetValues() []string { return nil } +// A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value. +type StringMap struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Values map[string]string `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` +} + +func (x *StringMap) Reset() { + *x = StringMap{} + if protoimpl.UnsafeEnabled { + mi := &file_common_common_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *StringMap) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*StringMap) ProtoMessage() {} + +func (x *StringMap) ProtoReflect() protoreflect.Message { + mi := &file_common_common_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use StringMap.ProtoReflect.Descriptor instead. +func (*StringMap) Descriptor() ([]byte, []int) { + return file_common_common_proto_rawDescGZIP(), []int{1} +} + +func (x *StringMap) GetValues() map[string]string { + if x != nil { + return x.Values + } + return nil +} + var File_common_common_proto protoreflect.FileDescriptor var file_common_common_proto_rawDesc = []byte{ @@ -76,15 +124,23 @@ var file_common_common_proto_rawDesc = []byte{ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x22, 0x25, 0x0a, 0x0b, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x41, 0x72, 0x72, 0x61, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x73, 0x42, 0x74, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x42, 0x0b, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, - 0x01, 0x5a, 0x21, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x65, - 0x72, 0x63, 0x6f, 0x6e, 0x61, 0x2f, 0x70, 0x6d, 0x6d, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, - 0x6d, 0x6d, 0x6f, 0x6e, 0xa2, 0x02, 0x03, 0x43, 0x58, 0x58, 0xaa, 0x02, 0x06, 0x43, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0xca, 0x02, 0x06, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0xe2, 0x02, 0x12, 0x43, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0xea, 0x02, 0x06, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x33, + 0x6c, 0x75, 0x65, 0x73, 0x22, 0x7d, 0x0a, 0x09, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4d, 0x61, + 0x70, 0x12, 0x35, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, + 0x67, 0x4d, 0x61, 0x70, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, + 0x02, 0x38, 0x01, 0x42, 0x74, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x42, 0x0b, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, + 0x5a, 0x21, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x65, 0x72, + 0x63, 0x6f, 0x6e, 0x61, 0x2f, 0x70, 0x6d, 0x6d, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0xa2, 0x02, 0x03, 0x43, 0x58, 0x58, 0xaa, 0x02, 0x06, 0x43, 0x6f, 0x6d, 0x6d, + 0x6f, 0x6e, 0xca, 0x02, 0x06, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0xe2, 0x02, 0x12, 0x43, 0x6f, + 0x6d, 0x6d, 0x6f, 0x6e, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0xea, 0x02, 0x06, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x33, } var ( @@ -100,18 +156,21 @@ func file_common_common_proto_rawDescGZIP() []byte { } var ( - file_common_common_proto_msgTypes = make([]protoimpl.MessageInfo, 1) + file_common_common_proto_msgTypes = make([]protoimpl.MessageInfo, 3) file_common_common_proto_goTypes = []interface{}{ (*StringArray)(nil), // 0: common.StringArray + (*StringMap)(nil), // 1: common.StringMap + nil, // 2: common.StringMap.ValuesEntry } ) var file_common_common_proto_depIdxs = []int32{ - 0, // [0:0] is the sub-list for method output_type - 0, // [0:0] is the sub-list for method input_type - 0, // [0:0] is the sub-list for extension type_name - 0, // [0:0] is the sub-list for extension extendee - 0, // [0:0] is the sub-list for field type_name + 2, // 0: common.StringMap.values:type_name -> common.StringMap.ValuesEntry + 1, // [1:1] is the sub-list for method output_type + 1, // [1:1] is the sub-list for method input_type + 1, // [1:1] is the sub-list for extension type_name + 1, // [1:1] is the sub-list for extension extendee + 0, // [0:1] is the sub-list for field type_name } func init() { file_common_common_proto_init() } @@ -132,6 +191,18 @@ func file_common_common_proto_init() { return nil } } + file_common_common_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*StringMap); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } type x struct{} out := protoimpl.TypeBuilder{ @@ -139,7 +210,7 @@ func file_common_common_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_common_common_proto_rawDesc, NumEnums: 0, - NumMessages: 1, + NumMessages: 3, NumExtensions: 0, NumServices: 0, }, diff --git a/api/common/common.pb.validate.go b/api/common/common.pb.validate.go index 1c35c6ce91..5c76854986 100644 --- a/api/common/common.pb.validate.go +++ b/api/common/common.pb.validate.go @@ -133,3 +133,104 @@ var _ interface { Cause() error ErrorName() string } = StringArrayValidationError{} + +// Validate checks the field values on StringMap with the rules defined in the +// proto definition for this message. If any rules are violated, the first +// error encountered is returned, or nil if there are no violations. +func (m *StringMap) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on StringMap with the rules defined in +// the proto definition for this message. If any rules are violated, the +// result is a list of violation errors wrapped in StringMapMultiError, or nil +// if none found. +func (m *StringMap) ValidateAll() error { + return m.validate(true) +} + +func (m *StringMap) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Values + + if len(errors) > 0 { + return StringMapMultiError(errors) + } + + return nil +} + +// StringMapMultiError is an error wrapping multiple validation errors returned +// by StringMap.ValidateAll() if the designated constraints aren't met. +type StringMapMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m StringMapMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m StringMapMultiError) AllErrors() []error { return m } + +// StringMapValidationError is the validation error returned by +// StringMap.Validate if the designated constraints aren't met. +type StringMapValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e StringMapValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e StringMapValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e StringMapValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e StringMapValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e StringMapValidationError) ErrorName() string { return "StringMapValidationError" } + +// Error satisfies the builtin error interface +func (e StringMapValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sStringMap.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = StringMapValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = StringMapValidationError{} diff --git a/api/common/common.proto b/api/common/common.proto index c3c1547cee..55265f25cd 100644 --- a/api/common/common.proto +++ b/api/common/common.proto @@ -6,3 +6,8 @@ package common; message StringArray { repeated string values = 1; } + +// A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value. +message StringMap { + map values = 1; +} diff --git a/api/inventory/v1/agents.pb.go b/api/inventory/v1/agents.pb.go index 7d232fbe85..b7cf6c7e61 100644 --- a/api/inventory/v1/agents.pb.go +++ b/api/inventory/v1/agents.pb.go @@ -15,6 +15,8 @@ import ( _ "google.golang.org/genproto/googleapis/api/annotations" protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" + + common "github.com/percona/pmm/api/common" ) const ( @@ -460,6 +462,8 @@ type MySQLdExporter struct { PushMetricsEnabled bool `protobuf:"varint,13,opt,name=push_metrics_enabled,json=pushMetricsEnabled,proto3" json:"push_metrics_enabled,omitempty"` // List of disabled collector names. DisabledCollectors []string `protobuf:"bytes,14,rep,name=disabled_collectors,json=disabledCollectors,proto3" json:"disabled_collectors,omitempty"` + // Actual table count at the moment of adding. + TableCount int32 `protobuf:"varint,15,opt,name=table_count,json=tableCount,proto3" json:"table_count,omitempty"` // Actual Agent status. Status AgentStatus `protobuf:"varint,20,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Listen port for scraping metrics. @@ -604,6 +608,13 @@ func (x *MySQLdExporter) GetDisabledCollectors() []string { return nil } +func (x *MySQLdExporter) GetTableCount() int32 { + if x != nil { + return x.TableCount + } + return 0 +} + func (x *MySQLdExporter) GetStatus() AgentStatus { if x != nil { return x.Status @@ -2533,19 +2544,12 @@ type ChangeCommonAgentParams struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // Enable this Agent. Can't be used with disabled. - Enable bool `protobuf:"varint,1,opt,name=enable,proto3" json:"enable,omitempty"` - // Disable this Agent. Can't be used with enabled. - Disable bool `protobuf:"varint,2,opt,name=disable,proto3" json:"disable,omitempty"` + // Enable this Agent. Agents are enabled by default when they get added. + Enable *bool `protobuf:"varint,1,opt,name=enable,proto3,oneof" json:"enable,omitempty"` // Replace all custom user-assigned labels. - CustomLabels map[string]string `protobuf:"bytes,3,rep,name=custom_labels,json=customLabels,proto3" json:"custom_labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - // Remove all custom user-assigned labels. - RemoveCustomLabels bool `protobuf:"varint,4,opt,name=remove_custom_labels,json=removeCustomLabels,proto3" json:"remove_custom_labels,omitempty"` - // Enables push metrics with vmagent, can't be used with disable_push_metrics. - // Can't be used with agent version lower then 2.12 and unsupported agents. - EnablePushMetrics bool `protobuf:"varint,5,opt,name=enable_push_metrics,json=enablePushMetrics,proto3" json:"enable_push_metrics,omitempty"` - // Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics. - DisablePushMetrics bool `protobuf:"varint,6,opt,name=disable_push_metrics,json=disablePushMetrics,proto3" json:"disable_push_metrics,omitempty"` + CustomLabels *common.StringMap `protobuf:"bytes,2,opt,name=custom_labels,json=customLabels,proto3,oneof" json:"custom_labels,omitempty"` + // Enables push metrics with vmagent. + EnablePushMetrics *bool `protobuf:"varint,3,opt,name=enable_push_metrics,json=enablePushMetrics,proto3,oneof" json:"enable_push_metrics,omitempty"` } func (x *ChangeCommonAgentParams) Reset() { @@ -2581,43 +2585,22 @@ func (*ChangeCommonAgentParams) Descriptor() ([]byte, []int) { } func (x *ChangeCommonAgentParams) GetEnable() bool { - if x != nil { - return x.Enable - } - return false -} - -func (x *ChangeCommonAgentParams) GetDisable() bool { - if x != nil { - return x.Disable + if x != nil && x.Enable != nil { + return *x.Enable } return false } -func (x *ChangeCommonAgentParams) GetCustomLabels() map[string]string { +func (x *ChangeCommonAgentParams) GetCustomLabels() *common.StringMap { if x != nil { return x.CustomLabels } return nil } -func (x *ChangeCommonAgentParams) GetRemoveCustomLabels() bool { - if x != nil { - return x.RemoveCustomLabels - } - return false -} - func (x *ChangeCommonAgentParams) GetEnablePushMetrics() bool { - if x != nil { - return x.EnablePushMetrics - } - return false -} - -func (x *ChangeCommonAgentParams) GetDisablePushMetrics() bool { - if x != nil { - return x.DisablePushMetrics + if x != nil && x.EnablePushMetrics != nil { + return *x.EnablePushMetrics } return false } @@ -3282,69 +3265,12 @@ func (x *GetAgentLogsResponse) GetAgentConfigLogLinesCount() uint32 { return 0 } -type AddPMMAgentParams struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Node identifier where this instance runs. - RunsOnNodeId string `protobuf:"bytes,1,opt,name=runs_on_node_id,json=runsOnNodeId,proto3" json:"runs_on_node_id,omitempty"` - // Custom user-assigned labels. - CustomLabels map[string]string `protobuf:"bytes,2,rep,name=custom_labels,json=customLabels,proto3" json:"custom_labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` -} - -func (x *AddPMMAgentParams) Reset() { - *x = AddPMMAgentParams{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AddPMMAgentParams) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AddPMMAgentParams) ProtoMessage() {} - -func (x *AddPMMAgentParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[22] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use AddPMMAgentParams.ProtoReflect.Descriptor instead. -func (*AddPMMAgentParams) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{22} -} - -func (x *AddPMMAgentParams) GetRunsOnNodeId() string { - if x != nil { - return x.RunsOnNodeId - } - return "" -} - -func (x *AddPMMAgentParams) GetCustomLabels() map[string]string { - if x != nil { - return x.CustomLabels - } - return nil -} - type AddAgentRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // Types that are assignable to Exporter: + // Types that are assignable to Agent: // // *AddAgentRequest_PmmAgent // *AddAgentRequest_NodeExporter @@ -3360,13 +3286,13 @@ type AddAgentRequest struct { // *AddAgentRequest_QanMongodbProfilerAgent // *AddAgentRequest_QanPostgresqlPgstatementsAgent // *AddAgentRequest_QanPostgresqlPgstatmonitorAgent - Exporter isAddAgentRequest_Exporter `protobuf_oneof:"exporter"` + Agent isAddAgentRequest_Agent `protobuf_oneof:"agent"` } func (x *AddAgentRequest) Reset() { *x = AddAgentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[23] + mi := &file_inventory_v1_agents_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3379,7 +3305,7 @@ func (x *AddAgentRequest) String() string { func (*AddAgentRequest) ProtoMessage() {} func (x *AddAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[23] + mi := &file_inventory_v1_agents_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3392,116 +3318,116 @@ func (x *AddAgentRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use AddAgentRequest.ProtoReflect.Descriptor instead. func (*AddAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{23} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{22} } -func (m *AddAgentRequest) GetExporter() isAddAgentRequest_Exporter { +func (m *AddAgentRequest) GetAgent() isAddAgentRequest_Agent { if m != nil { - return m.Exporter + return m.Agent } return nil } func (x *AddAgentRequest) GetPmmAgent() *AddPMMAgentParams { - if x, ok := x.GetExporter().(*AddAgentRequest_PmmAgent); ok { + if x, ok := x.GetAgent().(*AddAgentRequest_PmmAgent); ok { return x.PmmAgent } return nil } func (x *AddAgentRequest) GetNodeExporter() *AddNodeExporterParams { - if x, ok := x.GetExporter().(*AddAgentRequest_NodeExporter); ok { + if x, ok := x.GetAgent().(*AddAgentRequest_NodeExporter); ok { return x.NodeExporter } return nil } func (x *AddAgentRequest) GetMysqldExporter() *AddMySQLdExporterParams { - if x, ok := x.GetExporter().(*AddAgentRequest_MysqldExporter); ok { + if x, ok := x.GetAgent().(*AddAgentRequest_MysqldExporter); ok { return x.MysqldExporter } return nil } func (x *AddAgentRequest) GetMongodbExporter() *AddMongoDBExporterParams { - if x, ok := x.GetExporter().(*AddAgentRequest_MongodbExporter); ok { + if x, ok := x.GetAgent().(*AddAgentRequest_MongodbExporter); ok { return x.MongodbExporter } return nil } func (x *AddAgentRequest) GetPostgresExporter() *AddPostgresExporterParams { - if x, ok := x.GetExporter().(*AddAgentRequest_PostgresExporter); ok { + if x, ok := x.GetAgent().(*AddAgentRequest_PostgresExporter); ok { return x.PostgresExporter } return nil } func (x *AddAgentRequest) GetProxysqlExporter() *AddProxySQLExporterParams { - if x, ok := x.GetExporter().(*AddAgentRequest_ProxysqlExporter); ok { + if x, ok := x.GetAgent().(*AddAgentRequest_ProxysqlExporter); ok { return x.ProxysqlExporter } return nil } func (x *AddAgentRequest) GetExternalExporter() *AddExternalExporterParams { - if x, ok := x.GetExporter().(*AddAgentRequest_ExternalExporter); ok { + if x, ok := x.GetAgent().(*AddAgentRequest_ExternalExporter); ok { return x.ExternalExporter } return nil } func (x *AddAgentRequest) GetRdsExporter() *AddRDSExporterParams { - if x, ok := x.GetExporter().(*AddAgentRequest_RdsExporter); ok { + if x, ok := x.GetAgent().(*AddAgentRequest_RdsExporter); ok { return x.RdsExporter } return nil } func (x *AddAgentRequest) GetAzureDatabaseExporter() *AddAzureDatabaseExporterParams { - if x, ok := x.GetExporter().(*AddAgentRequest_AzureDatabaseExporter); ok { + if x, ok := x.GetAgent().(*AddAgentRequest_AzureDatabaseExporter); ok { return x.AzureDatabaseExporter } return nil } func (x *AddAgentRequest) GetQanMysqlPerfschemaAgent() *AddQANMySQLPerfSchemaAgentParams { - if x, ok := x.GetExporter().(*AddAgentRequest_QanMysqlPerfschemaAgent); ok { + if x, ok := x.GetAgent().(*AddAgentRequest_QanMysqlPerfschemaAgent); ok { return x.QanMysqlPerfschemaAgent } return nil } func (x *AddAgentRequest) GetQanMysqlSlowlogAgent() *AddQANMySQLSlowlogAgentParams { - if x, ok := x.GetExporter().(*AddAgentRequest_QanMysqlSlowlogAgent); ok { + if x, ok := x.GetAgent().(*AddAgentRequest_QanMysqlSlowlogAgent); ok { return x.QanMysqlSlowlogAgent } return nil } func (x *AddAgentRequest) GetQanMongodbProfilerAgent() *AddQANMongoDBProfilerAgentParams { - if x, ok := x.GetExporter().(*AddAgentRequest_QanMongodbProfilerAgent); ok { + if x, ok := x.GetAgent().(*AddAgentRequest_QanMongodbProfilerAgent); ok { return x.QanMongodbProfilerAgent } return nil } func (x *AddAgentRequest) GetQanPostgresqlPgstatementsAgent() *AddQANPostgreSQLPgStatementsAgentParams { - if x, ok := x.GetExporter().(*AddAgentRequest_QanPostgresqlPgstatementsAgent); ok { + if x, ok := x.GetAgent().(*AddAgentRequest_QanPostgresqlPgstatementsAgent); ok { return x.QanPostgresqlPgstatementsAgent } return nil } func (x *AddAgentRequest) GetQanPostgresqlPgstatmonitorAgent() *AddQANPostgreSQLPgStatMonitorAgentParams { - if x, ok := x.GetExporter().(*AddAgentRequest_QanPostgresqlPgstatmonitorAgent); ok { + if x, ok := x.GetAgent().(*AddAgentRequest_QanPostgresqlPgstatmonitorAgent); ok { return x.QanPostgresqlPgstatmonitorAgent } return nil } -type isAddAgentRequest_Exporter interface { - isAddAgentRequest_Exporter() +type isAddAgentRequest_Agent interface { + isAddAgentRequest_Agent() } type AddAgentRequest_PmmAgent struct { @@ -3560,40 +3486,40 @@ type AddAgentRequest_QanPostgresqlPgstatmonitorAgent struct { QanPostgresqlPgstatmonitorAgent *AddQANPostgreSQLPgStatMonitorAgentParams `protobuf:"bytes,14,opt,name=qan_postgresql_pgstatmonitor_agent,json=qanPostgresqlPgstatmonitorAgent,proto3,oneof"` } -func (*AddAgentRequest_PmmAgent) isAddAgentRequest_Exporter() {} +func (*AddAgentRequest_PmmAgent) isAddAgentRequest_Agent() {} -func (*AddAgentRequest_NodeExporter) isAddAgentRequest_Exporter() {} +func (*AddAgentRequest_NodeExporter) isAddAgentRequest_Agent() {} -func (*AddAgentRequest_MysqldExporter) isAddAgentRequest_Exporter() {} +func (*AddAgentRequest_MysqldExporter) isAddAgentRequest_Agent() {} -func (*AddAgentRequest_MongodbExporter) isAddAgentRequest_Exporter() {} +func (*AddAgentRequest_MongodbExporter) isAddAgentRequest_Agent() {} -func (*AddAgentRequest_PostgresExporter) isAddAgentRequest_Exporter() {} +func (*AddAgentRequest_PostgresExporter) isAddAgentRequest_Agent() {} -func (*AddAgentRequest_ProxysqlExporter) isAddAgentRequest_Exporter() {} +func (*AddAgentRequest_ProxysqlExporter) isAddAgentRequest_Agent() {} -func (*AddAgentRequest_ExternalExporter) isAddAgentRequest_Exporter() {} +func (*AddAgentRequest_ExternalExporter) isAddAgentRequest_Agent() {} -func (*AddAgentRequest_RdsExporter) isAddAgentRequest_Exporter() {} +func (*AddAgentRequest_RdsExporter) isAddAgentRequest_Agent() {} -func (*AddAgentRequest_AzureDatabaseExporter) isAddAgentRequest_Exporter() {} +func (*AddAgentRequest_AzureDatabaseExporter) isAddAgentRequest_Agent() {} -func (*AddAgentRequest_QanMysqlPerfschemaAgent) isAddAgentRequest_Exporter() {} +func (*AddAgentRequest_QanMysqlPerfschemaAgent) isAddAgentRequest_Agent() {} -func (*AddAgentRequest_QanMysqlSlowlogAgent) isAddAgentRequest_Exporter() {} +func (*AddAgentRequest_QanMysqlSlowlogAgent) isAddAgentRequest_Agent() {} -func (*AddAgentRequest_QanMongodbProfilerAgent) isAddAgentRequest_Exporter() {} +func (*AddAgentRequest_QanMongodbProfilerAgent) isAddAgentRequest_Agent() {} -func (*AddAgentRequest_QanPostgresqlPgstatementsAgent) isAddAgentRequest_Exporter() {} +func (*AddAgentRequest_QanPostgresqlPgstatementsAgent) isAddAgentRequest_Agent() {} -func (*AddAgentRequest_QanPostgresqlPgstatmonitorAgent) isAddAgentRequest_Exporter() {} +func (*AddAgentRequest_QanPostgresqlPgstatmonitorAgent) isAddAgentRequest_Agent() {} type AddAgentResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // Types that are assignable to Exporter: + // Types that are assignable to Agent: // // *AddAgentResponse_PmmAgent // *AddAgentResponse_NodeExporter @@ -3609,15 +3535,13 @@ type AddAgentResponse struct { // *AddAgentResponse_QanMongodbProfilerAgent // *AddAgentResponse_QanPostgresqlPgstatementsAgent // *AddAgentResponse_QanPostgresqlPgstatmonitorAgent - Exporter isAddAgentResponse_Exporter `protobuf_oneof:"exporter"` - // Actual table count for SQL databases at the moment of adding. - TableCount int32 `protobuf:"varint,20,opt,name=table_count,json=tableCount,proto3" json:"table_count,omitempty"` + Agent isAddAgentResponse_Agent `protobuf_oneof:"agent"` } func (x *AddAgentResponse) Reset() { *x = AddAgentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[24] + mi := &file_inventory_v1_agents_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3630,7 +3554,7 @@ func (x *AddAgentResponse) String() string { func (*AddAgentResponse) ProtoMessage() {} func (x *AddAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[24] + mi := &file_inventory_v1_agents_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3643,123 +3567,116 @@ func (x *AddAgentResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use AddAgentResponse.ProtoReflect.Descriptor instead. func (*AddAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{24} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{23} } -func (m *AddAgentResponse) GetExporter() isAddAgentResponse_Exporter { +func (m *AddAgentResponse) GetAgent() isAddAgentResponse_Agent { if m != nil { - return m.Exporter + return m.Agent } return nil } func (x *AddAgentResponse) GetPmmAgent() *PMMAgent { - if x, ok := x.GetExporter().(*AddAgentResponse_PmmAgent); ok { + if x, ok := x.GetAgent().(*AddAgentResponse_PmmAgent); ok { return x.PmmAgent } return nil } func (x *AddAgentResponse) GetNodeExporter() *NodeExporter { - if x, ok := x.GetExporter().(*AddAgentResponse_NodeExporter); ok { + if x, ok := x.GetAgent().(*AddAgentResponse_NodeExporter); ok { return x.NodeExporter } return nil } func (x *AddAgentResponse) GetMysqldExporter() *MySQLdExporter { - if x, ok := x.GetExporter().(*AddAgentResponse_MysqldExporter); ok { + if x, ok := x.GetAgent().(*AddAgentResponse_MysqldExporter); ok { return x.MysqldExporter } return nil } func (x *AddAgentResponse) GetMongodbExporter() *MongoDBExporter { - if x, ok := x.GetExporter().(*AddAgentResponse_MongodbExporter); ok { + if x, ok := x.GetAgent().(*AddAgentResponse_MongodbExporter); ok { return x.MongodbExporter } return nil } func (x *AddAgentResponse) GetPostgresExporter() *PostgresExporter { - if x, ok := x.GetExporter().(*AddAgentResponse_PostgresExporter); ok { + if x, ok := x.GetAgent().(*AddAgentResponse_PostgresExporter); ok { return x.PostgresExporter } return nil } func (x *AddAgentResponse) GetProxysqlExporter() *ProxySQLExporter { - if x, ok := x.GetExporter().(*AddAgentResponse_ProxysqlExporter); ok { + if x, ok := x.GetAgent().(*AddAgentResponse_ProxysqlExporter); ok { return x.ProxysqlExporter } return nil } func (x *AddAgentResponse) GetExternalExporter() *ExternalExporter { - if x, ok := x.GetExporter().(*AddAgentResponse_ExternalExporter); ok { + if x, ok := x.GetAgent().(*AddAgentResponse_ExternalExporter); ok { return x.ExternalExporter } return nil } func (x *AddAgentResponse) GetRdsExporter() *RDSExporter { - if x, ok := x.GetExporter().(*AddAgentResponse_RdsExporter); ok { + if x, ok := x.GetAgent().(*AddAgentResponse_RdsExporter); ok { return x.RdsExporter } return nil } func (x *AddAgentResponse) GetAzureDatabaseExporter() *AzureDatabaseExporter { - if x, ok := x.GetExporter().(*AddAgentResponse_AzureDatabaseExporter); ok { + if x, ok := x.GetAgent().(*AddAgentResponse_AzureDatabaseExporter); ok { return x.AzureDatabaseExporter } return nil } func (x *AddAgentResponse) GetQanMysqlPerfschemaAgent() *QANMySQLPerfSchemaAgent { - if x, ok := x.GetExporter().(*AddAgentResponse_QanMysqlPerfschemaAgent); ok { + if x, ok := x.GetAgent().(*AddAgentResponse_QanMysqlPerfschemaAgent); ok { return x.QanMysqlPerfschemaAgent } return nil } func (x *AddAgentResponse) GetQanMysqlSlowlogAgent() *QANMySQLSlowlogAgent { - if x, ok := x.GetExporter().(*AddAgentResponse_QanMysqlSlowlogAgent); ok { + if x, ok := x.GetAgent().(*AddAgentResponse_QanMysqlSlowlogAgent); ok { return x.QanMysqlSlowlogAgent } return nil } func (x *AddAgentResponse) GetQanMongodbProfilerAgent() *QANMongoDBProfilerAgent { - if x, ok := x.GetExporter().(*AddAgentResponse_QanMongodbProfilerAgent); ok { + if x, ok := x.GetAgent().(*AddAgentResponse_QanMongodbProfilerAgent); ok { return x.QanMongodbProfilerAgent } return nil } func (x *AddAgentResponse) GetQanPostgresqlPgstatementsAgent() *QANPostgreSQLPgStatementsAgent { - if x, ok := x.GetExporter().(*AddAgentResponse_QanPostgresqlPgstatementsAgent); ok { + if x, ok := x.GetAgent().(*AddAgentResponse_QanPostgresqlPgstatementsAgent); ok { return x.QanPostgresqlPgstatementsAgent } return nil } func (x *AddAgentResponse) GetQanPostgresqlPgstatmonitorAgent() *QANPostgreSQLPgStatMonitorAgent { - if x, ok := x.GetExporter().(*AddAgentResponse_QanPostgresqlPgstatmonitorAgent); ok { + if x, ok := x.GetAgent().(*AddAgentResponse_QanPostgresqlPgstatmonitorAgent); ok { return x.QanPostgresqlPgstatmonitorAgent } return nil } -func (x *AddAgentResponse) GetTableCount() int32 { - if x != nil { - return x.TableCount - } - return 0 -} - -type isAddAgentResponse_Exporter interface { - isAddAgentResponse_Exporter() +type isAddAgentResponse_Agent interface { + isAddAgentResponse_Agent() } type AddAgentResponse_PmmAgent struct { @@ -3818,70 +3735,74 @@ type AddAgentResponse_QanPostgresqlPgstatmonitorAgent struct { QanPostgresqlPgstatmonitorAgent *QANPostgreSQLPgStatMonitorAgent `protobuf:"bytes,14,opt,name=qan_postgresql_pgstatmonitor_agent,json=qanPostgresqlPgstatmonitorAgent,proto3,oneof"` } -func (*AddAgentResponse_PmmAgent) isAddAgentResponse_Exporter() {} +func (*AddAgentResponse_PmmAgent) isAddAgentResponse_Agent() {} -func (*AddAgentResponse_NodeExporter) isAddAgentResponse_Exporter() {} +func (*AddAgentResponse_NodeExporter) isAddAgentResponse_Agent() {} -func (*AddAgentResponse_MysqldExporter) isAddAgentResponse_Exporter() {} +func (*AddAgentResponse_MysqldExporter) isAddAgentResponse_Agent() {} -func (*AddAgentResponse_MongodbExporter) isAddAgentResponse_Exporter() {} +func (*AddAgentResponse_MongodbExporter) isAddAgentResponse_Agent() {} -func (*AddAgentResponse_PostgresExporter) isAddAgentResponse_Exporter() {} +func (*AddAgentResponse_PostgresExporter) isAddAgentResponse_Agent() {} -func (*AddAgentResponse_ProxysqlExporter) isAddAgentResponse_Exporter() {} +func (*AddAgentResponse_ProxysqlExporter) isAddAgentResponse_Agent() {} -func (*AddAgentResponse_ExternalExporter) isAddAgentResponse_Exporter() {} +func (*AddAgentResponse_ExternalExporter) isAddAgentResponse_Agent() {} -func (*AddAgentResponse_RdsExporter) isAddAgentResponse_Exporter() {} +func (*AddAgentResponse_RdsExporter) isAddAgentResponse_Agent() {} -func (*AddAgentResponse_AzureDatabaseExporter) isAddAgentResponse_Exporter() {} +func (*AddAgentResponse_AzureDatabaseExporter) isAddAgentResponse_Agent() {} -func (*AddAgentResponse_QanMysqlPerfschemaAgent) isAddAgentResponse_Exporter() {} +func (*AddAgentResponse_QanMysqlPerfschemaAgent) isAddAgentResponse_Agent() {} -func (*AddAgentResponse_QanMysqlSlowlogAgent) isAddAgentResponse_Exporter() {} +func (*AddAgentResponse_QanMysqlSlowlogAgent) isAddAgentResponse_Agent() {} -func (*AddAgentResponse_QanMongodbProfilerAgent) isAddAgentResponse_Exporter() {} +func (*AddAgentResponse_QanMongodbProfilerAgent) isAddAgentResponse_Agent() {} -func (*AddAgentResponse_QanPostgresqlPgstatementsAgent) isAddAgentResponse_Exporter() {} +func (*AddAgentResponse_QanPostgresqlPgstatementsAgent) isAddAgentResponse_Agent() {} -func (*AddAgentResponse_QanPostgresqlPgstatmonitorAgent) isAddAgentResponse_Exporter() {} +func (*AddAgentResponse_QanPostgresqlPgstatmonitorAgent) isAddAgentResponse_Agent() {} -type AddNodeExporterParams struct { +type ChangeAgentRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - // The pmm-agent identifier which runs this instance. - PmmAgentId string `protobuf:"bytes,1,opt,name=pmm_agent_id,json=pmmAgentId,proto3" json:"pmm_agent_id,omitempty"` - // Custom user-assigned labels. - CustomLabels map[string]string `protobuf:"bytes,2,rep,name=custom_labels,json=customLabels,proto3" json:"custom_labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - // Enables push metrics mode for exporter. - PushMetrics bool `protobuf:"varint,3,opt,name=push_metrics,json=pushMetrics,proto3" json:"push_metrics,omitempty"` - // List of collector names to disable in this exporter. - DisableCollectors []string `protobuf:"bytes,4,rep,name=disable_collectors,json=disableCollectors,proto3" json:"disable_collectors,omitempty"` - // Log level for exporter. - LogLevel LogLevel `protobuf:"varint,5,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` - // Expose the node_exporter process on all public interfaces - ExposeExporter bool `protobuf:"varint,6,opt,name=expose_exporter,json=exposeExporter,proto3" json:"expose_exporter,omitempty"` -} - -func (x *AddNodeExporterParams) Reset() { - *x = AddNodeExporterParams{} + // Types that are assignable to Agent: + // + // *ChangeAgentRequest_NodeExporter + // *ChangeAgentRequest_MysqldExporter + // *ChangeAgentRequest_MongodbExporter + // *ChangeAgentRequest_PostgresExporter + // *ChangeAgentRequest_ProxysqlExporter + // *ChangeAgentRequest_ExternalExporter + // *ChangeAgentRequest_RdsExporter + // *ChangeAgentRequest_AzureDatabaseExporter + // *ChangeAgentRequest_QanMysqlPerfschemaAgent + // *ChangeAgentRequest_QanMysqlSlowlogAgent + // *ChangeAgentRequest_QanMongodbProfilerAgent + // *ChangeAgentRequest_QanPostgresqlPgstatementsAgent + // *ChangeAgentRequest_QanPostgresqlPgstatmonitorAgent + Agent isChangeAgentRequest_Agent `protobuf_oneof:"agent"` +} + +func (x *ChangeAgentRequest) Reset() { + *x = ChangeAgentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[25] + mi := &file_inventory_v1_agents_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AddNodeExporterParams) String() string { +func (x *ChangeAgentRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddNodeExporterParams) ProtoMessage() {} +func (*ChangeAgentRequest) ProtoMessage() {} -func (x *AddNodeExporterParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[25] +func (x *ChangeAgentRequest) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3892,215 +3813,231 @@ func (x *AddNodeExporterParams) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AddNodeExporterParams.ProtoReflect.Descriptor instead. -func (*AddNodeExporterParams) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{25} +// Deprecated: Use ChangeAgentRequest.ProtoReflect.Descriptor instead. +func (*ChangeAgentRequest) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{24} } -func (x *AddNodeExporterParams) GetPmmAgentId() string { - if x != nil { - return x.PmmAgentId +func (m *ChangeAgentRequest) GetAgent() isChangeAgentRequest_Agent { + if m != nil { + return m.Agent } - return "" + return nil } -func (x *AddNodeExporterParams) GetCustomLabels() map[string]string { - if x != nil { - return x.CustomLabels +func (x *ChangeAgentRequest) GetNodeExporter() *ChangeNodeExporterParams { + if x, ok := x.GetAgent().(*ChangeAgentRequest_NodeExporter); ok { + return x.NodeExporter } return nil } -func (x *AddNodeExporterParams) GetPushMetrics() bool { - if x != nil { - return x.PushMetrics +func (x *ChangeAgentRequest) GetMysqldExporter() *ChangeMySQLdExporterParams { + if x, ok := x.GetAgent().(*ChangeAgentRequest_MysqldExporter); ok { + return x.MysqldExporter } - return false + return nil } -func (x *AddNodeExporterParams) GetDisableCollectors() []string { - if x != nil { - return x.DisableCollectors +func (x *ChangeAgentRequest) GetMongodbExporter() *ChangeMongoDBExporterParams { + if x, ok := x.GetAgent().(*ChangeAgentRequest_MongodbExporter); ok { + return x.MongodbExporter } return nil } -func (x *AddNodeExporterParams) GetLogLevel() LogLevel { - if x != nil { - return x.LogLevel +func (x *ChangeAgentRequest) GetPostgresExporter() *ChangePostgresExporterParams { + if x, ok := x.GetAgent().(*ChangeAgentRequest_PostgresExporter); ok { + return x.PostgresExporter } - return LogLevel_LOG_LEVEL_UNSPECIFIED + return nil } -func (x *AddNodeExporterParams) GetExposeExporter() bool { - if x != nil { - return x.ExposeExporter +func (x *ChangeAgentRequest) GetProxysqlExporter() *ChangeProxySQLExporterParams { + if x, ok := x.GetAgent().(*ChangeAgentRequest_ProxysqlExporter); ok { + return x.ProxysqlExporter } - return false + return nil } -type ChangeNodeExporterRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - AgentId string `protobuf:"bytes,1,opt,name=agent_id,json=agentId,proto3" json:"agent_id,omitempty"` - Common *ChangeCommonAgentParams `protobuf:"bytes,2,opt,name=common,proto3" json:"common,omitempty"` +func (x *ChangeAgentRequest) GetExternalExporter() *ChangeExternalExporterParams { + if x, ok := x.GetAgent().(*ChangeAgentRequest_ExternalExporter); ok { + return x.ExternalExporter + } + return nil } -func (x *ChangeNodeExporterRequest) Reset() { - *x = ChangeNodeExporterRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[26] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *ChangeAgentRequest) GetRdsExporter() *ChangeRDSExporterParams { + if x, ok := x.GetAgent().(*ChangeAgentRequest_RdsExporter); ok { + return x.RdsExporter } + return nil } -func (x *ChangeNodeExporterRequest) String() string { - return protoimpl.X.MessageStringOf(x) +func (x *ChangeAgentRequest) GetAzureDatabaseExporter() *ChangeAzureDatabaseExporterParams { + if x, ok := x.GetAgent().(*ChangeAgentRequest_AzureDatabaseExporter); ok { + return x.AzureDatabaseExporter + } + return nil } -func (*ChangeNodeExporterRequest) ProtoMessage() {} +func (x *ChangeAgentRequest) GetQanMysqlPerfschemaAgent() *ChangeQANMySQLPerfSchemaAgentParams { + if x, ok := x.GetAgent().(*ChangeAgentRequest_QanMysqlPerfschemaAgent); ok { + return x.QanMysqlPerfschemaAgent + } + return nil +} -func (x *ChangeNodeExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[26] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms +func (x *ChangeAgentRequest) GetQanMysqlSlowlogAgent() *ChangeQANMySQLSlowlogAgentParams { + if x, ok := x.GetAgent().(*ChangeAgentRequest_QanMysqlSlowlogAgent); ok { + return x.QanMysqlSlowlogAgent } - return mi.MessageOf(x) + return nil } -// Deprecated: Use ChangeNodeExporterRequest.ProtoReflect.Descriptor instead. -func (*ChangeNodeExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{26} +func (x *ChangeAgentRequest) GetQanMongodbProfilerAgent() *ChangeQANMongoDBProfilerAgentParams { + if x, ok := x.GetAgent().(*ChangeAgentRequest_QanMongodbProfilerAgent); ok { + return x.QanMongodbProfilerAgent + } + return nil } -func (x *ChangeNodeExporterRequest) GetAgentId() string { - if x != nil { - return x.AgentId +func (x *ChangeAgentRequest) GetQanPostgresqlPgstatementsAgent() *ChangeQANPostgreSQLPgStatementsAgentParams { + if x, ok := x.GetAgent().(*ChangeAgentRequest_QanPostgresqlPgstatementsAgent); ok { + return x.QanPostgresqlPgstatementsAgent } - return "" + return nil } -func (x *ChangeNodeExporterRequest) GetCommon() *ChangeCommonAgentParams { - if x != nil { - return x.Common +func (x *ChangeAgentRequest) GetQanPostgresqlPgstatmonitorAgent() *ChangeQANPostgreSQLPgStatMonitorAgentParams { + if x, ok := x.GetAgent().(*ChangeAgentRequest_QanPostgresqlPgstatmonitorAgent); ok { + return x.QanPostgresqlPgstatmonitorAgent } return nil } -type ChangeNodeExporterResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields +type isChangeAgentRequest_Agent interface { + isChangeAgentRequest_Agent() +} - NodeExporter *NodeExporter `protobuf:"bytes,1,opt,name=node_exporter,json=nodeExporter,proto3" json:"node_exporter,omitempty"` +type ChangeAgentRequest_NodeExporter struct { + NodeExporter *ChangeNodeExporterParams `protobuf:"bytes,2,opt,name=node_exporter,json=nodeExporter,proto3,oneof"` } -func (x *ChangeNodeExporterResponse) Reset() { - *x = ChangeNodeExporterResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[27] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } +type ChangeAgentRequest_MysqldExporter struct { + MysqldExporter *ChangeMySQLdExporterParams `protobuf:"bytes,3,opt,name=mysqld_exporter,json=mysqldExporter,proto3,oneof"` } -func (x *ChangeNodeExporterResponse) String() string { - return protoimpl.X.MessageStringOf(x) +type ChangeAgentRequest_MongodbExporter struct { + MongodbExporter *ChangeMongoDBExporterParams `protobuf:"bytes,4,opt,name=mongodb_exporter,json=mongodbExporter,proto3,oneof"` } -func (*ChangeNodeExporterResponse) ProtoMessage() {} +type ChangeAgentRequest_PostgresExporter struct { + PostgresExporter *ChangePostgresExporterParams `protobuf:"bytes,5,opt,name=postgres_exporter,json=postgresExporter,proto3,oneof"` +} -func (x *ChangeNodeExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[27] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +type ChangeAgentRequest_ProxysqlExporter struct { + ProxysqlExporter *ChangeProxySQLExporterParams `protobuf:"bytes,6,opt,name=proxysql_exporter,json=proxysqlExporter,proto3,oneof"` } -// Deprecated: Use ChangeNodeExporterResponse.ProtoReflect.Descriptor instead. -func (*ChangeNodeExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{27} +type ChangeAgentRequest_ExternalExporter struct { + ExternalExporter *ChangeExternalExporterParams `protobuf:"bytes,7,opt,name=external_exporter,json=externalExporter,proto3,oneof"` } -func (x *ChangeNodeExporterResponse) GetNodeExporter() *NodeExporter { - if x != nil { - return x.NodeExporter - } - return nil +type ChangeAgentRequest_RdsExporter struct { + RdsExporter *ChangeRDSExporterParams `protobuf:"bytes,8,opt,name=rds_exporter,json=rdsExporter,proto3,oneof"` } -type AddMySQLdExporterParams struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields +type ChangeAgentRequest_AzureDatabaseExporter struct { + AzureDatabaseExporter *ChangeAzureDatabaseExporterParams `protobuf:"bytes,9,opt,name=azure_database_exporter,json=azureDatabaseExporter,proto3,oneof"` +} - // The pmm-agent identifier which runs this instance. - PmmAgentId string `protobuf:"bytes,1,opt,name=pmm_agent_id,json=pmmAgentId,proto3" json:"pmm_agent_id,omitempty"` - // Service identifier. - ServiceId string `protobuf:"bytes,2,opt,name=service_id,json=serviceId,proto3" json:"service_id,omitempty"` - // MySQL username for scraping metrics. - Username string `protobuf:"bytes,3,opt,name=username,proto3" json:"username,omitempty"` - // MySQL password for scraping metrics. - Password string `protobuf:"bytes,4,opt,name=password,proto3" json:"password,omitempty"` - // Use TLS for database connections. - Tls bool `protobuf:"varint,5,opt,name=tls,proto3" json:"tls,omitempty"` - // Skip TLS certificate and hostname validation. - TlsSkipVerify bool `protobuf:"varint,6,opt,name=tls_skip_verify,json=tlsSkipVerify,proto3" json:"tls_skip_verify,omitempty"` - // Certificate Authority certificate chain. - TlsCa string `protobuf:"bytes,7,opt,name=tls_ca,json=tlsCa,proto3" json:"tls_ca,omitempty"` - // Client certificate. - TlsCert string `protobuf:"bytes,8,opt,name=tls_cert,json=tlsCert,proto3" json:"tls_cert,omitempty"` - // Password for decrypting tls_cert. - TlsKey string `protobuf:"bytes,9,opt,name=tls_key,json=tlsKey,proto3" json:"tls_key,omitempty"` - // Tablestats group collectors will be disabled if there are more than that number of tables. - // 0 means tablestats group collectors are always enabled (no limit). - // Negative value means tablestats group collectors are always disabled. - TablestatsGroupTableLimit int32 `protobuf:"varint,10,opt,name=tablestats_group_table_limit,json=tablestatsGroupTableLimit,proto3" json:"tablestats_group_table_limit,omitempty"` - // Custom user-assigned labels. - CustomLabels map[string]string `protobuf:"bytes,11,rep,name=custom_labels,json=customLabels,proto3" json:"custom_labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - // Skip connection check. - SkipConnectionCheck bool `protobuf:"varint,12,opt,name=skip_connection_check,json=skipConnectionCheck,proto3" json:"skip_connection_check,omitempty"` - // Enables push metrics mode for exporter. - PushMetrics bool `protobuf:"varint,13,opt,name=push_metrics,json=pushMetrics,proto3" json:"push_metrics,omitempty"` - // List of collector names to disable in this exporter. - DisableCollectors []string `protobuf:"bytes,14,rep,name=disable_collectors,json=disableCollectors,proto3" json:"disable_collectors,omitempty"` - // Custom password for exporter endpoint /metrics. - AgentPassword string `protobuf:"bytes,15,opt,name=agent_password,json=agentPassword,proto3" json:"agent_password,omitempty"` - // Log level for exporter. - LogLevel LogLevel `protobuf:"varint,16,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` - // Optionally expose the exporter process on all public interfaces - ExposeExporter bool `protobuf:"varint,17,opt,name=expose_exporter,json=exposeExporter,proto3" json:"expose_exporter,omitempty"` +type ChangeAgentRequest_QanMysqlPerfschemaAgent struct { + QanMysqlPerfschemaAgent *ChangeQANMySQLPerfSchemaAgentParams `protobuf:"bytes,10,opt,name=qan_mysql_perfschema_agent,json=qanMysqlPerfschemaAgent,proto3,oneof"` } -func (x *AddMySQLdExporterParams) Reset() { - *x = AddMySQLdExporterParams{} +type ChangeAgentRequest_QanMysqlSlowlogAgent struct { + QanMysqlSlowlogAgent *ChangeQANMySQLSlowlogAgentParams `protobuf:"bytes,11,opt,name=qan_mysql_slowlog_agent,json=qanMysqlSlowlogAgent,proto3,oneof"` +} + +type ChangeAgentRequest_QanMongodbProfilerAgent struct { + QanMongodbProfilerAgent *ChangeQANMongoDBProfilerAgentParams `protobuf:"bytes,12,opt,name=qan_mongodb_profiler_agent,json=qanMongodbProfilerAgent,proto3,oneof"` +} + +type ChangeAgentRequest_QanPostgresqlPgstatementsAgent struct { + QanPostgresqlPgstatementsAgent *ChangeQANPostgreSQLPgStatementsAgentParams `protobuf:"bytes,13,opt,name=qan_postgresql_pgstatements_agent,json=qanPostgresqlPgstatementsAgent,proto3,oneof"` +} + +type ChangeAgentRequest_QanPostgresqlPgstatmonitorAgent struct { + QanPostgresqlPgstatmonitorAgent *ChangeQANPostgreSQLPgStatMonitorAgentParams `protobuf:"bytes,14,opt,name=qan_postgresql_pgstatmonitor_agent,json=qanPostgresqlPgstatmonitorAgent,proto3,oneof"` +} + +func (*ChangeAgentRequest_NodeExporter) isChangeAgentRequest_Agent() {} + +func (*ChangeAgentRequest_MysqldExporter) isChangeAgentRequest_Agent() {} + +func (*ChangeAgentRequest_MongodbExporter) isChangeAgentRequest_Agent() {} + +func (*ChangeAgentRequest_PostgresExporter) isChangeAgentRequest_Agent() {} + +func (*ChangeAgentRequest_ProxysqlExporter) isChangeAgentRequest_Agent() {} + +func (*ChangeAgentRequest_ExternalExporter) isChangeAgentRequest_Agent() {} + +func (*ChangeAgentRequest_RdsExporter) isChangeAgentRequest_Agent() {} + +func (*ChangeAgentRequest_AzureDatabaseExporter) isChangeAgentRequest_Agent() {} + +func (*ChangeAgentRequest_QanMysqlPerfschemaAgent) isChangeAgentRequest_Agent() {} + +func (*ChangeAgentRequest_QanMysqlSlowlogAgent) isChangeAgentRequest_Agent() {} + +func (*ChangeAgentRequest_QanMongodbProfilerAgent) isChangeAgentRequest_Agent() {} + +func (*ChangeAgentRequest_QanPostgresqlPgstatementsAgent) isChangeAgentRequest_Agent() {} + +func (*ChangeAgentRequest_QanPostgresqlPgstatmonitorAgent) isChangeAgentRequest_Agent() {} + +type ChangeAgentResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to Agent: + // + // *ChangeAgentResponse_NodeExporter + // *ChangeAgentResponse_MysqldExporter + // *ChangeAgentResponse_MongodbExporter + // *ChangeAgentResponse_PostgresExporter + // *ChangeAgentResponse_ProxysqlExporter + // *ChangeAgentResponse_ExternalExporter + // *ChangeAgentResponse_RdsExporter + // *ChangeAgentResponse_AzureDatabaseExporter + // *ChangeAgentResponse_QanMysqlPerfschemaAgent + // *ChangeAgentResponse_QanMysqlSlowlogAgent + // *ChangeAgentResponse_QanMongodbProfilerAgent + // *ChangeAgentResponse_QanPostgresqlPgstatementsAgent + // *ChangeAgentResponse_QanPostgresqlPgstatmonitorAgent + Agent isChangeAgentResponse_Agent `protobuf_oneof:"agent"` +} + +func (x *ChangeAgentResponse) Reset() { + *x = ChangeAgentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[28] + mi := &file_inventory_v1_agents_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AddMySQLdExporterParams) String() string { +func (x *ChangeAgentResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddMySQLdExporterParams) ProtoMessage() {} +func (*ChangeAgentResponse) ProtoMessage() {} -func (x *AddMySQLdExporterParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[28] +func (x *ChangeAgentResponse) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4111,156 +4048,219 @@ func (x *AddMySQLdExporterParams) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AddMySQLdExporterParams.ProtoReflect.Descriptor instead. -func (*AddMySQLdExporterParams) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{28} +// Deprecated: Use ChangeAgentResponse.ProtoReflect.Descriptor instead. +func (*ChangeAgentResponse) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{25} } -func (x *AddMySQLdExporterParams) GetPmmAgentId() string { - if x != nil { - return x.PmmAgentId +func (m *ChangeAgentResponse) GetAgent() isChangeAgentResponse_Agent { + if m != nil { + return m.Agent } - return "" + return nil } -func (x *AddMySQLdExporterParams) GetServiceId() string { - if x != nil { - return x.ServiceId +func (x *ChangeAgentResponse) GetNodeExporter() *NodeExporter { + if x, ok := x.GetAgent().(*ChangeAgentResponse_NodeExporter); ok { + return x.NodeExporter } - return "" + return nil } -func (x *AddMySQLdExporterParams) GetUsername() string { - if x != nil { - return x.Username +func (x *ChangeAgentResponse) GetMysqldExporter() *MySQLdExporter { + if x, ok := x.GetAgent().(*ChangeAgentResponse_MysqldExporter); ok { + return x.MysqldExporter } - return "" + return nil } -func (x *AddMySQLdExporterParams) GetPassword() string { - if x != nil { - return x.Password +func (x *ChangeAgentResponse) GetMongodbExporter() *MongoDBExporter { + if x, ok := x.GetAgent().(*ChangeAgentResponse_MongodbExporter); ok { + return x.MongodbExporter } - return "" + return nil } -func (x *AddMySQLdExporterParams) GetTls() bool { - if x != nil { - return x.Tls +func (x *ChangeAgentResponse) GetPostgresExporter() *PostgresExporter { + if x, ok := x.GetAgent().(*ChangeAgentResponse_PostgresExporter); ok { + return x.PostgresExporter } - return false + return nil } -func (x *AddMySQLdExporterParams) GetTlsSkipVerify() bool { - if x != nil { - return x.TlsSkipVerify +func (x *ChangeAgentResponse) GetProxysqlExporter() *ProxySQLExporter { + if x, ok := x.GetAgent().(*ChangeAgentResponse_ProxysqlExporter); ok { + return x.ProxysqlExporter } - return false + return nil } -func (x *AddMySQLdExporterParams) GetTlsCa() string { - if x != nil { - return x.TlsCa +func (x *ChangeAgentResponse) GetExternalExporter() *ExternalExporter { + if x, ok := x.GetAgent().(*ChangeAgentResponse_ExternalExporter); ok { + return x.ExternalExporter } - return "" + return nil } -func (x *AddMySQLdExporterParams) GetTlsCert() string { - if x != nil { - return x.TlsCert +func (x *ChangeAgentResponse) GetRdsExporter() *RDSExporter { + if x, ok := x.GetAgent().(*ChangeAgentResponse_RdsExporter); ok { + return x.RdsExporter } - return "" + return nil } -func (x *AddMySQLdExporterParams) GetTlsKey() string { - if x != nil { - return x.TlsKey +func (x *ChangeAgentResponse) GetAzureDatabaseExporter() *AzureDatabaseExporter { + if x, ok := x.GetAgent().(*ChangeAgentResponse_AzureDatabaseExporter); ok { + return x.AzureDatabaseExporter } - return "" + return nil } -func (x *AddMySQLdExporterParams) GetTablestatsGroupTableLimit() int32 { - if x != nil { - return x.TablestatsGroupTableLimit +func (x *ChangeAgentResponse) GetQanMysqlPerfschemaAgent() *QANMySQLPerfSchemaAgent { + if x, ok := x.GetAgent().(*ChangeAgentResponse_QanMysqlPerfschemaAgent); ok { + return x.QanMysqlPerfschemaAgent } - return 0 + return nil } -func (x *AddMySQLdExporterParams) GetCustomLabels() map[string]string { - if x != nil { - return x.CustomLabels +func (x *ChangeAgentResponse) GetQanMysqlSlowlogAgent() *QANMySQLSlowlogAgent { + if x, ok := x.GetAgent().(*ChangeAgentResponse_QanMysqlSlowlogAgent); ok { + return x.QanMysqlSlowlogAgent } return nil } -func (x *AddMySQLdExporterParams) GetSkipConnectionCheck() bool { - if x != nil { - return x.SkipConnectionCheck +func (x *ChangeAgentResponse) GetQanMongodbProfilerAgent() *QANMongoDBProfilerAgent { + if x, ok := x.GetAgent().(*ChangeAgentResponse_QanMongodbProfilerAgent); ok { + return x.QanMongodbProfilerAgent } - return false + return nil } -func (x *AddMySQLdExporterParams) GetPushMetrics() bool { - if x != nil { - return x.PushMetrics +func (x *ChangeAgentResponse) GetQanPostgresqlPgstatementsAgent() *QANPostgreSQLPgStatementsAgent { + if x, ok := x.GetAgent().(*ChangeAgentResponse_QanPostgresqlPgstatementsAgent); ok { + return x.QanPostgresqlPgstatementsAgent } - return false + return nil } -func (x *AddMySQLdExporterParams) GetDisableCollectors() []string { - if x != nil { - return x.DisableCollectors +func (x *ChangeAgentResponse) GetQanPostgresqlPgstatmonitorAgent() *QANPostgreSQLPgStatMonitorAgent { + if x, ok := x.GetAgent().(*ChangeAgentResponse_QanPostgresqlPgstatmonitorAgent); ok { + return x.QanPostgresqlPgstatmonitorAgent } return nil } -func (x *AddMySQLdExporterParams) GetAgentPassword() string { - if x != nil { - return x.AgentPassword - } - return "" +type isChangeAgentResponse_Agent interface { + isChangeAgentResponse_Agent() } -func (x *AddMySQLdExporterParams) GetLogLevel() LogLevel { - if x != nil { - return x.LogLevel - } - return LogLevel_LOG_LEVEL_UNSPECIFIED +type ChangeAgentResponse_NodeExporter struct { + NodeExporter *NodeExporter `protobuf:"bytes,2,opt,name=node_exporter,json=nodeExporter,proto3,oneof"` } -func (x *AddMySQLdExporterParams) GetExposeExporter() bool { - if x != nil { - return x.ExposeExporter - } - return false +type ChangeAgentResponse_MysqldExporter struct { + MysqldExporter *MySQLdExporter `protobuf:"bytes,3,opt,name=mysqld_exporter,json=mysqldExporter,proto3,oneof"` +} + +type ChangeAgentResponse_MongodbExporter struct { + MongodbExporter *MongoDBExporter `protobuf:"bytes,4,opt,name=mongodb_exporter,json=mongodbExporter,proto3,oneof"` +} + +type ChangeAgentResponse_PostgresExporter struct { + PostgresExporter *PostgresExporter `protobuf:"bytes,5,opt,name=postgres_exporter,json=postgresExporter,proto3,oneof"` +} + +type ChangeAgentResponse_ProxysqlExporter struct { + ProxysqlExporter *ProxySQLExporter `protobuf:"bytes,6,opt,name=proxysql_exporter,json=proxysqlExporter,proto3,oneof"` +} + +type ChangeAgentResponse_ExternalExporter struct { + ExternalExporter *ExternalExporter `protobuf:"bytes,7,opt,name=external_exporter,json=externalExporter,proto3,oneof"` +} + +type ChangeAgentResponse_RdsExporter struct { + RdsExporter *RDSExporter `protobuf:"bytes,8,opt,name=rds_exporter,json=rdsExporter,proto3,oneof"` +} + +type ChangeAgentResponse_AzureDatabaseExporter struct { + AzureDatabaseExporter *AzureDatabaseExporter `protobuf:"bytes,9,opt,name=azure_database_exporter,json=azureDatabaseExporter,proto3,oneof"` +} + +type ChangeAgentResponse_QanMysqlPerfschemaAgent struct { + QanMysqlPerfschemaAgent *QANMySQLPerfSchemaAgent `protobuf:"bytes,10,opt,name=qan_mysql_perfschema_agent,json=qanMysqlPerfschemaAgent,proto3,oneof"` +} + +type ChangeAgentResponse_QanMysqlSlowlogAgent struct { + QanMysqlSlowlogAgent *QANMySQLSlowlogAgent `protobuf:"bytes,11,opt,name=qan_mysql_slowlog_agent,json=qanMysqlSlowlogAgent,proto3,oneof"` +} + +type ChangeAgentResponse_QanMongodbProfilerAgent struct { + QanMongodbProfilerAgent *QANMongoDBProfilerAgent `protobuf:"bytes,12,opt,name=qan_mongodb_profiler_agent,json=qanMongodbProfilerAgent,proto3,oneof"` +} + +type ChangeAgentResponse_QanPostgresqlPgstatementsAgent struct { + QanPostgresqlPgstatementsAgent *QANPostgreSQLPgStatementsAgent `protobuf:"bytes,13,opt,name=qan_postgresql_pgstatements_agent,json=qanPostgresqlPgstatementsAgent,proto3,oneof"` +} + +type ChangeAgentResponse_QanPostgresqlPgstatmonitorAgent struct { + QanPostgresqlPgstatmonitorAgent *QANPostgreSQLPgStatMonitorAgent `protobuf:"bytes,14,opt,name=qan_postgresql_pgstatmonitor_agent,json=qanPostgresqlPgstatmonitorAgent,proto3,oneof"` } -type ChangeMySQLdExporterRequest struct { +func (*ChangeAgentResponse_NodeExporter) isChangeAgentResponse_Agent() {} + +func (*ChangeAgentResponse_MysqldExporter) isChangeAgentResponse_Agent() {} + +func (*ChangeAgentResponse_MongodbExporter) isChangeAgentResponse_Agent() {} + +func (*ChangeAgentResponse_PostgresExporter) isChangeAgentResponse_Agent() {} + +func (*ChangeAgentResponse_ProxysqlExporter) isChangeAgentResponse_Agent() {} + +func (*ChangeAgentResponse_ExternalExporter) isChangeAgentResponse_Agent() {} + +func (*ChangeAgentResponse_RdsExporter) isChangeAgentResponse_Agent() {} + +func (*ChangeAgentResponse_AzureDatabaseExporter) isChangeAgentResponse_Agent() {} + +func (*ChangeAgentResponse_QanMysqlPerfschemaAgent) isChangeAgentResponse_Agent() {} + +func (*ChangeAgentResponse_QanMysqlSlowlogAgent) isChangeAgentResponse_Agent() {} + +func (*ChangeAgentResponse_QanMongodbProfilerAgent) isChangeAgentResponse_Agent() {} + +func (*ChangeAgentResponse_QanPostgresqlPgstatementsAgent) isChangeAgentResponse_Agent() {} + +func (*ChangeAgentResponse_QanPostgresqlPgstatmonitorAgent) isChangeAgentResponse_Agent() {} + +type AddPMMAgentParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - AgentId string `protobuf:"bytes,1,opt,name=agent_id,json=agentId,proto3" json:"agent_id,omitempty"` - Common *ChangeCommonAgentParams `protobuf:"bytes,2,opt,name=common,proto3" json:"common,omitempty"` + // Node identifier where this instance runs. + RunsOnNodeId string `protobuf:"bytes,1,opt,name=runs_on_node_id,json=runsOnNodeId,proto3" json:"runs_on_node_id,omitempty"` + // Custom user-assigned labels. + CustomLabels map[string]string `protobuf:"bytes,2,rep,name=custom_labels,json=customLabels,proto3" json:"custom_labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } -func (x *ChangeMySQLdExporterRequest) Reset() { - *x = ChangeMySQLdExporterRequest{} +func (x *AddPMMAgentParams) Reset() { + *x = AddPMMAgentParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[29] + mi := &file_inventory_v1_agents_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ChangeMySQLdExporterRequest) String() string { +func (x *AddPMMAgentParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ChangeMySQLdExporterRequest) ProtoMessage() {} +func (*AddPMMAgentParams) ProtoMessage() {} -func (x *ChangeMySQLdExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[29] +func (x *AddPMMAgentParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4271,50 +4271,61 @@ func (x *ChangeMySQLdExporterRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ChangeMySQLdExporterRequest.ProtoReflect.Descriptor instead. -func (*ChangeMySQLdExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{29} +// Deprecated: Use AddPMMAgentParams.ProtoReflect.Descriptor instead. +func (*AddPMMAgentParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{26} } -func (x *ChangeMySQLdExporterRequest) GetAgentId() string { +func (x *AddPMMAgentParams) GetRunsOnNodeId() string { if x != nil { - return x.AgentId + return x.RunsOnNodeId } return "" } -func (x *ChangeMySQLdExporterRequest) GetCommon() *ChangeCommonAgentParams { +func (x *AddPMMAgentParams) GetCustomLabels() map[string]string { if x != nil { - return x.Common + return x.CustomLabels } return nil } -type ChangeMySQLdExporterResponse struct { +type AddNodeExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - MysqldExporter *MySQLdExporter `protobuf:"bytes,1,opt,name=mysqld_exporter,json=mysqldExporter,proto3" json:"mysqld_exporter,omitempty"` + // The pmm-agent identifier which runs this instance. + PmmAgentId string `protobuf:"bytes,1,opt,name=pmm_agent_id,json=pmmAgentId,proto3" json:"pmm_agent_id,omitempty"` + // Custom user-assigned labels. + CustomLabels map[string]string `protobuf:"bytes,2,rep,name=custom_labels,json=customLabels,proto3" json:"custom_labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // Enables push metrics mode for exporter. + PushMetrics bool `protobuf:"varint,3,opt,name=push_metrics,json=pushMetrics,proto3" json:"push_metrics,omitempty"` + // List of collector names to disable in this exporter. + DisableCollectors []string `protobuf:"bytes,4,rep,name=disable_collectors,json=disableCollectors,proto3" json:"disable_collectors,omitempty"` + // Log level for exporter. + LogLevel LogLevel `protobuf:"varint,5,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` + // Expose the node_exporter process on all public interfaces + ExposeExporter bool `protobuf:"varint,6,opt,name=expose_exporter,json=exposeExporter,proto3" json:"expose_exporter,omitempty"` } -func (x *ChangeMySQLdExporterResponse) Reset() { - *x = ChangeMySQLdExporterResponse{} +func (x *AddNodeExporterParams) Reset() { + *x = AddNodeExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[30] + mi := &file_inventory_v1_agents_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ChangeMySQLdExporterResponse) String() string { +func (x *AddNodeExporterParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ChangeMySQLdExporterResponse) ProtoMessage() {} +func (*AddNodeExporterParams) ProtoMessage() {} -func (x *ChangeMySQLdExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[30] +func (x *AddNodeExporterParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4325,19 +4336,109 @@ func (x *ChangeMySQLdExporterResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ChangeMySQLdExporterResponse.ProtoReflect.Descriptor instead. -func (*ChangeMySQLdExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{30} -} +// Deprecated: Use AddNodeExporterParams.ProtoReflect.Descriptor instead. +func (*AddNodeExporterParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{27} +} -func (x *ChangeMySQLdExporterResponse) GetMysqldExporter() *MySQLdExporter { +func (x *AddNodeExporterParams) GetPmmAgentId() string { if x != nil { - return x.MysqldExporter + return x.PmmAgentId + } + return "" +} + +func (x *AddNodeExporterParams) GetCustomLabels() map[string]string { + if x != nil { + return x.CustomLabels } return nil } -type AddMongoDBExporterParams struct { +func (x *AddNodeExporterParams) GetPushMetrics() bool { + if x != nil { + return x.PushMetrics + } + return false +} + +func (x *AddNodeExporterParams) GetDisableCollectors() []string { + if x != nil { + return x.DisableCollectors + } + return nil +} + +func (x *AddNodeExporterParams) GetLogLevel() LogLevel { + if x != nil { + return x.LogLevel + } + return LogLevel_LOG_LEVEL_UNSPECIFIED +} + +func (x *AddNodeExporterParams) GetExposeExporter() bool { + if x != nil { + return x.ExposeExporter + } + return false +} + +type ChangeNodeExporterParams struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AgentId string `protobuf:"bytes,1,opt,name=agent_id,json=agentId,proto3" json:"agent_id,omitempty"` + Common *ChangeCommonAgentParams `protobuf:"bytes,2,opt,name=common,proto3" json:"common,omitempty"` +} + +func (x *ChangeNodeExporterParams) Reset() { + *x = ChangeNodeExporterParams{} + if protoimpl.UnsafeEnabled { + mi := &file_inventory_v1_agents_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ChangeNodeExporterParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ChangeNodeExporterParams) ProtoMessage() {} + +func (x *ChangeNodeExporterParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[28] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ChangeNodeExporterParams.ProtoReflect.Descriptor instead. +func (*ChangeNodeExporterParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{28} +} + +func (x *ChangeNodeExporterParams) GetAgentId() string { + if x != nil { + return x.AgentId + } + return "" +} + +func (x *ChangeNodeExporterParams) GetCommon() *ChangeCommonAgentParams { + if x != nil { + return x.Common + } + return nil +} + +type AddMySQLdExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -4346,64 +4447,57 @@ type AddMongoDBExporterParams struct { PmmAgentId string `protobuf:"bytes,1,opt,name=pmm_agent_id,json=pmmAgentId,proto3" json:"pmm_agent_id,omitempty"` // Service identifier. ServiceId string `protobuf:"bytes,2,opt,name=service_id,json=serviceId,proto3" json:"service_id,omitempty"` - // MongoDB username for scraping metrics. + // MySQL username for scraping metrics. Username string `protobuf:"bytes,3,opt,name=username,proto3" json:"username,omitempty"` - // MongoDB password for scraping metrics. + // MySQL password for scraping metrics. Password string `protobuf:"bytes,4,opt,name=password,proto3" json:"password,omitempty"` // Use TLS for database connections. Tls bool `protobuf:"varint,5,opt,name=tls,proto3" json:"tls,omitempty"` // Skip TLS certificate and hostname validation. TlsSkipVerify bool `protobuf:"varint,6,opt,name=tls_skip_verify,json=tlsSkipVerify,proto3" json:"tls_skip_verify,omitempty"` - // Client certificate and key. - TlsCertificateKey string `protobuf:"bytes,7,opt,name=tls_certificate_key,json=tlsCertificateKey,proto3" json:"tls_certificate_key,omitempty"` - // Password for decrypting tls_certificate_key. - TlsCertificateKeyFilePassword string `protobuf:"bytes,8,opt,name=tls_certificate_key_file_password,json=tlsCertificateKeyFilePassword,proto3" json:"tls_certificate_key_file_password,omitempty"` // Certificate Authority certificate chain. - TlsCa string `protobuf:"bytes,9,opt,name=tls_ca,json=tlsCa,proto3" json:"tls_ca,omitempty"` + TlsCa string `protobuf:"bytes,7,opt,name=tls_ca,json=tlsCa,proto3" json:"tls_ca,omitempty"` + // Client certificate. + TlsCert string `protobuf:"bytes,8,opt,name=tls_cert,json=tlsCert,proto3" json:"tls_cert,omitempty"` + // Password for decrypting tls_cert. + TlsKey string `protobuf:"bytes,9,opt,name=tls_key,json=tlsKey,proto3" json:"tls_key,omitempty"` + // Tablestats group collectors will be disabled if there are more than that number of tables. + // 0 means tablestats group collectors are always enabled (no limit). + // Negative value means tablestats group collectors are always disabled. + TablestatsGroupTableLimit int32 `protobuf:"varint,10,opt,name=tablestats_group_table_limit,json=tablestatsGroupTableLimit,proto3" json:"tablestats_group_table_limit,omitempty"` // Custom user-assigned labels. - CustomLabels map[string]string `protobuf:"bytes,10,rep,name=custom_labels,json=customLabels,proto3" json:"custom_labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + CustomLabels map[string]string `protobuf:"bytes,11,rep,name=custom_labels,json=customLabels,proto3" json:"custom_labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // Skip connection check. - SkipConnectionCheck bool `protobuf:"varint,11,opt,name=skip_connection_check,json=skipConnectionCheck,proto3" json:"skip_connection_check,omitempty"` + SkipConnectionCheck bool `protobuf:"varint,12,opt,name=skip_connection_check,json=skipConnectionCheck,proto3" json:"skip_connection_check,omitempty"` // Enables push metrics mode for exporter. - PushMetrics bool `protobuf:"varint,12,opt,name=push_metrics,json=pushMetrics,proto3" json:"push_metrics,omitempty"` + PushMetrics bool `protobuf:"varint,13,opt,name=push_metrics,json=pushMetrics,proto3" json:"push_metrics,omitempty"` // List of collector names to disable in this exporter. - DisableCollectors []string `protobuf:"bytes,13,rep,name=disable_collectors,json=disableCollectors,proto3" json:"disable_collectors,omitempty"` - // Authentication mechanism. - // See https://docs.mongodb.com/manual/reference/connection-string/#mongodb-urioption-urioption.authMechanism - // for details. - AuthenticationMechanism string `protobuf:"bytes,14,opt,name=authentication_mechanism,json=authenticationMechanism,proto3" json:"authentication_mechanism,omitempty"` - // Authentication database. - AuthenticationDatabase string `protobuf:"bytes,15,opt,name=authentication_database,json=authenticationDatabase,proto3" json:"authentication_database,omitempty"` + DisableCollectors []string `protobuf:"bytes,14,rep,name=disable_collectors,json=disableCollectors,proto3" json:"disable_collectors,omitempty"` // Custom password for exporter endpoint /metrics. - AgentPassword string `protobuf:"bytes,16,opt,name=agent_password,json=agentPassword,proto3" json:"agent_password,omitempty"` - // List of colletions to get stats from. Can use * - StatsCollections []string `protobuf:"bytes,17,rep,name=stats_collections,json=statsCollections,proto3" json:"stats_collections,omitempty"` - // Collections limit. Only get Databases and collection stats if the total number of collections in the server - // is less than this value. 0: no limit - CollectionsLimit int32 `protobuf:"varint,18,opt,name=collections_limit,json=collectionsLimit,proto3" json:"collections_limit,omitempty"` + AgentPassword string `protobuf:"bytes,15,opt,name=agent_password,json=agentPassword,proto3" json:"agent_password,omitempty"` // Log level for exporter. - LogLevel LogLevel `protobuf:"varint,19,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` + LogLevel LogLevel `protobuf:"varint,16,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` // Optionally expose the exporter process on all public interfaces - ExposeExporter bool `protobuf:"varint,20,opt,name=expose_exporter,json=exposeExporter,proto3" json:"expose_exporter,omitempty"` + ExposeExporter bool `protobuf:"varint,17,opt,name=expose_exporter,json=exposeExporter,proto3" json:"expose_exporter,omitempty"` } -func (x *AddMongoDBExporterParams) Reset() { - *x = AddMongoDBExporterParams{} +func (x *AddMySQLdExporterParams) Reset() { + *x = AddMySQLdExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[31] + mi := &file_inventory_v1_agents_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AddMongoDBExporterParams) String() string { +func (x *AddMySQLdExporterParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddMongoDBExporterParams) ProtoMessage() {} +func (*AddMySQLdExporterParams) ProtoMessage() {} -func (x *AddMongoDBExporterParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[31] +func (x *AddMySQLdExporterParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4414,152 +4508,131 @@ func (x *AddMongoDBExporterParams) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AddMongoDBExporterParams.ProtoReflect.Descriptor instead. -func (*AddMongoDBExporterParams) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{31} +// Deprecated: Use AddMySQLdExporterParams.ProtoReflect.Descriptor instead. +func (*AddMySQLdExporterParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{29} } -func (x *AddMongoDBExporterParams) GetPmmAgentId() string { +func (x *AddMySQLdExporterParams) GetPmmAgentId() string { if x != nil { return x.PmmAgentId } return "" } -func (x *AddMongoDBExporterParams) GetServiceId() string { +func (x *AddMySQLdExporterParams) GetServiceId() string { if x != nil { return x.ServiceId } return "" } -func (x *AddMongoDBExporterParams) GetUsername() string { +func (x *AddMySQLdExporterParams) GetUsername() string { if x != nil { return x.Username } return "" } -func (x *AddMongoDBExporterParams) GetPassword() string { +func (x *AddMySQLdExporterParams) GetPassword() string { if x != nil { return x.Password } return "" } -func (x *AddMongoDBExporterParams) GetTls() bool { +func (x *AddMySQLdExporterParams) GetTls() bool { if x != nil { return x.Tls } return false } -func (x *AddMongoDBExporterParams) GetTlsSkipVerify() bool { +func (x *AddMySQLdExporterParams) GetTlsSkipVerify() bool { if x != nil { return x.TlsSkipVerify } return false } -func (x *AddMongoDBExporterParams) GetTlsCertificateKey() string { +func (x *AddMySQLdExporterParams) GetTlsCa() string { if x != nil { - return x.TlsCertificateKey + return x.TlsCa } return "" } -func (x *AddMongoDBExporterParams) GetTlsCertificateKeyFilePassword() string { +func (x *AddMySQLdExporterParams) GetTlsCert() string { if x != nil { - return x.TlsCertificateKeyFilePassword + return x.TlsCert } return "" } -func (x *AddMongoDBExporterParams) GetTlsCa() string { +func (x *AddMySQLdExporterParams) GetTlsKey() string { if x != nil { - return x.TlsCa + return x.TlsKey } return "" } -func (x *AddMongoDBExporterParams) GetCustomLabels() map[string]string { +func (x *AddMySQLdExporterParams) GetTablestatsGroupTableLimit() int32 { + if x != nil { + return x.TablestatsGroupTableLimit + } + return 0 +} + +func (x *AddMySQLdExporterParams) GetCustomLabels() map[string]string { if x != nil { return x.CustomLabels } return nil } -func (x *AddMongoDBExporterParams) GetSkipConnectionCheck() bool { +func (x *AddMySQLdExporterParams) GetSkipConnectionCheck() bool { if x != nil { return x.SkipConnectionCheck } return false } -func (x *AddMongoDBExporterParams) GetPushMetrics() bool { +func (x *AddMySQLdExporterParams) GetPushMetrics() bool { if x != nil { return x.PushMetrics } return false } -func (x *AddMongoDBExporterParams) GetDisableCollectors() []string { +func (x *AddMySQLdExporterParams) GetDisableCollectors() []string { if x != nil { return x.DisableCollectors } return nil } -func (x *AddMongoDBExporterParams) GetAuthenticationMechanism() string { - if x != nil { - return x.AuthenticationMechanism - } - return "" -} - -func (x *AddMongoDBExporterParams) GetAuthenticationDatabase() string { - if x != nil { - return x.AuthenticationDatabase - } - return "" -} - -func (x *AddMongoDBExporterParams) GetAgentPassword() string { +func (x *AddMySQLdExporterParams) GetAgentPassword() string { if x != nil { return x.AgentPassword } return "" } -func (x *AddMongoDBExporterParams) GetStatsCollections() []string { - if x != nil { - return x.StatsCollections - } - return nil -} - -func (x *AddMongoDBExporterParams) GetCollectionsLimit() int32 { - if x != nil { - return x.CollectionsLimit - } - return 0 -} - -func (x *AddMongoDBExporterParams) GetLogLevel() LogLevel { +func (x *AddMySQLdExporterParams) GetLogLevel() LogLevel { if x != nil { return x.LogLevel } return LogLevel_LOG_LEVEL_UNSPECIFIED } -func (x *AddMongoDBExporterParams) GetExposeExporter() bool { +func (x *AddMySQLdExporterParams) GetExposeExporter() bool { if x != nil { return x.ExposeExporter } return false } -type ChangeMongoDBExporterRequest struct { +type ChangeMySQLdExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -4568,23 +4641,23 @@ type ChangeMongoDBExporterRequest struct { Common *ChangeCommonAgentParams `protobuf:"bytes,2,opt,name=common,proto3" json:"common,omitempty"` } -func (x *ChangeMongoDBExporterRequest) Reset() { - *x = ChangeMongoDBExporterRequest{} +func (x *ChangeMySQLdExporterParams) Reset() { + *x = ChangeMySQLdExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[32] + mi := &file_inventory_v1_agents_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ChangeMongoDBExporterRequest) String() string { +func (x *ChangeMySQLdExporterParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ChangeMongoDBExporterRequest) ProtoMessage() {} +func (*ChangeMySQLdExporterParams) ProtoMessage() {} -func (x *ChangeMongoDBExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[32] +func (x *ChangeMySQLdExporterParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4595,73 +4668,26 @@ func (x *ChangeMongoDBExporterRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ChangeMongoDBExporterRequest.ProtoReflect.Descriptor instead. -func (*ChangeMongoDBExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{32} +// Deprecated: Use ChangeMySQLdExporterParams.ProtoReflect.Descriptor instead. +func (*ChangeMySQLdExporterParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{30} } -func (x *ChangeMongoDBExporterRequest) GetAgentId() string { +func (x *ChangeMySQLdExporterParams) GetAgentId() string { if x != nil { return x.AgentId } return "" } -func (x *ChangeMongoDBExporterRequest) GetCommon() *ChangeCommonAgentParams { +func (x *ChangeMySQLdExporterParams) GetCommon() *ChangeCommonAgentParams { if x != nil { return x.Common } return nil } -type ChangeMongoDBExporterResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - MongodbExporter *MongoDBExporter `protobuf:"bytes,1,opt,name=mongodb_exporter,json=mongodbExporter,proto3" json:"mongodb_exporter,omitempty"` -} - -func (x *ChangeMongoDBExporterResponse) Reset() { - *x = ChangeMongoDBExporterResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[33] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ChangeMongoDBExporterResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ChangeMongoDBExporterResponse) ProtoMessage() {} - -func (x *ChangeMongoDBExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[33] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ChangeMongoDBExporterResponse.ProtoReflect.Descriptor instead. -func (*ChangeMongoDBExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{33} -} - -func (x *ChangeMongoDBExporterResponse) GetMongodbExporter() *MongoDBExporter { - if x != nil { - return x.MongodbExporter - } - return nil -} - -type AddPostgresExporterParams struct { +type AddMongoDBExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -4670,55 +4696,64 @@ type AddPostgresExporterParams struct { PmmAgentId string `protobuf:"bytes,1,opt,name=pmm_agent_id,json=pmmAgentId,proto3" json:"pmm_agent_id,omitempty"` // Service identifier. ServiceId string `protobuf:"bytes,2,opt,name=service_id,json=serviceId,proto3" json:"service_id,omitempty"` - // PostgreSQL username for scraping metrics. + // MongoDB username for scraping metrics. Username string `protobuf:"bytes,3,opt,name=username,proto3" json:"username,omitempty"` - // PostgreSQL password for scraping metrics. + // MongoDB password for scraping metrics. Password string `protobuf:"bytes,4,opt,name=password,proto3" json:"password,omitempty"` // Use TLS for database connections. Tls bool `protobuf:"varint,5,opt,name=tls,proto3" json:"tls,omitempty"` - // Skip TLS certificate and hostname validation. Uses sslmode=required instead of verify-full. + // Skip TLS certificate and hostname validation. TlsSkipVerify bool `protobuf:"varint,6,opt,name=tls_skip_verify,json=tlsSkipVerify,proto3" json:"tls_skip_verify,omitempty"` + // Client certificate and key. + TlsCertificateKey string `protobuf:"bytes,7,opt,name=tls_certificate_key,json=tlsCertificateKey,proto3" json:"tls_certificate_key,omitempty"` + // Password for decrypting tls_certificate_key. + TlsCertificateKeyFilePassword string `protobuf:"bytes,8,opt,name=tls_certificate_key_file_password,json=tlsCertificateKeyFilePassword,proto3" json:"tls_certificate_key_file_password,omitempty"` + // Certificate Authority certificate chain. + TlsCa string `protobuf:"bytes,9,opt,name=tls_ca,json=tlsCa,proto3" json:"tls_ca,omitempty"` // Custom user-assigned labels. - CustomLabels map[string]string `protobuf:"bytes,7,rep,name=custom_labels,json=customLabels,proto3" json:"custom_labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + CustomLabels map[string]string `protobuf:"bytes,10,rep,name=custom_labels,json=customLabels,proto3" json:"custom_labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // Skip connection check. - SkipConnectionCheck bool `protobuf:"varint,8,opt,name=skip_connection_check,json=skipConnectionCheck,proto3" json:"skip_connection_check,omitempty"` + SkipConnectionCheck bool `protobuf:"varint,11,opt,name=skip_connection_check,json=skipConnectionCheck,proto3" json:"skip_connection_check,omitempty"` // Enables push metrics mode for exporter. - PushMetrics bool `protobuf:"varint,9,opt,name=push_metrics,json=pushMetrics,proto3" json:"push_metrics,omitempty"` + PushMetrics bool `protobuf:"varint,12,opt,name=push_metrics,json=pushMetrics,proto3" json:"push_metrics,omitempty"` // List of collector names to disable in this exporter. - DisableCollectors []string `protobuf:"bytes,10,rep,name=disable_collectors,json=disableCollectors,proto3" json:"disable_collectors,omitempty"` - // TLS CA certificate. - TlsCa string `protobuf:"bytes,11,opt,name=tls_ca,json=tlsCa,proto3" json:"tls_ca,omitempty"` - // TLS Certifcate. - TlsCert string `protobuf:"bytes,12,opt,name=tls_cert,json=tlsCert,proto3" json:"tls_cert,omitempty"` - // TLS Certificate Key. - TlsKey string `protobuf:"bytes,13,opt,name=tls_key,json=tlsKey,proto3" json:"tls_key,omitempty"` + DisableCollectors []string `protobuf:"bytes,13,rep,name=disable_collectors,json=disableCollectors,proto3" json:"disable_collectors,omitempty"` + // Authentication mechanism. + // See https://docs.mongodb.com/manual/reference/connection-string/#mongodb-urioption-urioption.authMechanism + // for details. + AuthenticationMechanism string `protobuf:"bytes,14,opt,name=authentication_mechanism,json=authenticationMechanism,proto3" json:"authentication_mechanism,omitempty"` + // Authentication database. + AuthenticationDatabase string `protobuf:"bytes,15,opt,name=authentication_database,json=authenticationDatabase,proto3" json:"authentication_database,omitempty"` // Custom password for exporter endpoint /metrics. - AgentPassword string `protobuf:"bytes,14,opt,name=agent_password,json=agentPassword,proto3" json:"agent_password,omitempty"` + AgentPassword string `protobuf:"bytes,16,opt,name=agent_password,json=agentPassword,proto3" json:"agent_password,omitempty"` + // List of colletions to get stats from. Can use * + StatsCollections []string `protobuf:"bytes,17,rep,name=stats_collections,json=statsCollections,proto3" json:"stats_collections,omitempty"` + // Collections limit. Only get Databases and collection stats if the total number of collections in the server + // is less than this value. 0: no limit + CollectionsLimit int32 `protobuf:"varint,18,opt,name=collections_limit,json=collectionsLimit,proto3" json:"collections_limit,omitempty"` // Log level for exporter. - LogLevel LogLevel `protobuf:"varint,15,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` - // Limit of databases for auto-discovery. - AutoDiscoveryLimit int32 `protobuf:"varint,16,opt,name=auto_discovery_limit,json=autoDiscoveryLimit,proto3" json:"auto_discovery_limit,omitempty"` + LogLevel LogLevel `protobuf:"varint,19,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` // Optionally expose the exporter process on all public interfaces - ExposeExporter bool `protobuf:"varint,17,opt,name=expose_exporter,json=exposeExporter,proto3" json:"expose_exporter,omitempty"` + ExposeExporter bool `protobuf:"varint,20,opt,name=expose_exporter,json=exposeExporter,proto3" json:"expose_exporter,omitempty"` } -func (x *AddPostgresExporterParams) Reset() { - *x = AddPostgresExporterParams{} +func (x *AddMongoDBExporterParams) Reset() { + *x = AddMongoDBExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[34] + mi := &file_inventory_v1_agents_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AddPostgresExporterParams) String() string { +func (x *AddMongoDBExporterParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddPostgresExporterParams) ProtoMessage() {} +func (*AddMongoDBExporterParams) ProtoMessage() {} -func (x *AddPostgresExporterParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[34] +func (x *AddMongoDBExporterParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4729,131 +4764,152 @@ func (x *AddPostgresExporterParams) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AddPostgresExporterParams.ProtoReflect.Descriptor instead. -func (*AddPostgresExporterParams) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{34} +// Deprecated: Use AddMongoDBExporterParams.ProtoReflect.Descriptor instead. +func (*AddMongoDBExporterParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{31} } -func (x *AddPostgresExporterParams) GetPmmAgentId() string { +func (x *AddMongoDBExporterParams) GetPmmAgentId() string { if x != nil { return x.PmmAgentId } return "" } -func (x *AddPostgresExporterParams) GetServiceId() string { +func (x *AddMongoDBExporterParams) GetServiceId() string { if x != nil { return x.ServiceId } return "" } -func (x *AddPostgresExporterParams) GetUsername() string { +func (x *AddMongoDBExporterParams) GetUsername() string { if x != nil { return x.Username } return "" } -func (x *AddPostgresExporterParams) GetPassword() string { +func (x *AddMongoDBExporterParams) GetPassword() string { if x != nil { return x.Password } return "" } -func (x *AddPostgresExporterParams) GetTls() bool { +func (x *AddMongoDBExporterParams) GetTls() bool { if x != nil { return x.Tls } return false } -func (x *AddPostgresExporterParams) GetTlsSkipVerify() bool { +func (x *AddMongoDBExporterParams) GetTlsSkipVerify() bool { if x != nil { return x.TlsSkipVerify } return false } -func (x *AddPostgresExporterParams) GetCustomLabels() map[string]string { +func (x *AddMongoDBExporterParams) GetTlsCertificateKey() string { + if x != nil { + return x.TlsCertificateKey + } + return "" +} + +func (x *AddMongoDBExporterParams) GetTlsCertificateKeyFilePassword() string { + if x != nil { + return x.TlsCertificateKeyFilePassword + } + return "" +} + +func (x *AddMongoDBExporterParams) GetTlsCa() string { + if x != nil { + return x.TlsCa + } + return "" +} + +func (x *AddMongoDBExporterParams) GetCustomLabels() map[string]string { if x != nil { return x.CustomLabels } return nil } -func (x *AddPostgresExporterParams) GetSkipConnectionCheck() bool { +func (x *AddMongoDBExporterParams) GetSkipConnectionCheck() bool { if x != nil { return x.SkipConnectionCheck } return false } -func (x *AddPostgresExporterParams) GetPushMetrics() bool { +func (x *AddMongoDBExporterParams) GetPushMetrics() bool { if x != nil { return x.PushMetrics } return false } -func (x *AddPostgresExporterParams) GetDisableCollectors() []string { +func (x *AddMongoDBExporterParams) GetDisableCollectors() []string { if x != nil { return x.DisableCollectors } return nil } -func (x *AddPostgresExporterParams) GetTlsCa() string { +func (x *AddMongoDBExporterParams) GetAuthenticationMechanism() string { if x != nil { - return x.TlsCa + return x.AuthenticationMechanism } return "" } -func (x *AddPostgresExporterParams) GetTlsCert() string { +func (x *AddMongoDBExporterParams) GetAuthenticationDatabase() string { if x != nil { - return x.TlsCert + return x.AuthenticationDatabase } return "" } -func (x *AddPostgresExporterParams) GetTlsKey() string { +func (x *AddMongoDBExporterParams) GetAgentPassword() string { if x != nil { - return x.TlsKey + return x.AgentPassword } return "" } -func (x *AddPostgresExporterParams) GetAgentPassword() string { +func (x *AddMongoDBExporterParams) GetStatsCollections() []string { if x != nil { - return x.AgentPassword + return x.StatsCollections } - return "" + return nil } -func (x *AddPostgresExporterParams) GetLogLevel() LogLevel { +func (x *AddMongoDBExporterParams) GetCollectionsLimit() int32 { if x != nil { - return x.LogLevel + return x.CollectionsLimit } - return LogLevel_LOG_LEVEL_UNSPECIFIED + return 0 } -func (x *AddPostgresExporterParams) GetAutoDiscoveryLimit() int32 { +func (x *AddMongoDBExporterParams) GetLogLevel() LogLevel { if x != nil { - return x.AutoDiscoveryLimit + return x.LogLevel } - return 0 + return LogLevel_LOG_LEVEL_UNSPECIFIED } -func (x *AddPostgresExporterParams) GetExposeExporter() bool { +func (x *AddMongoDBExporterParams) GetExposeExporter() bool { if x != nil { return x.ExposeExporter } return false } -type ChangePostgresExporterRequest struct { +type ChangeMongoDBExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -4862,23 +4918,23 @@ type ChangePostgresExporterRequest struct { Common *ChangeCommonAgentParams `protobuf:"bytes,2,opt,name=common,proto3" json:"common,omitempty"` } -func (x *ChangePostgresExporterRequest) Reset() { - *x = ChangePostgresExporterRequest{} +func (x *ChangeMongoDBExporterParams) Reset() { + *x = ChangeMongoDBExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[35] + mi := &file_inventory_v1_agents_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ChangePostgresExporterRequest) String() string { +func (x *ChangeMongoDBExporterParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ChangePostgresExporterRequest) ProtoMessage() {} +func (*ChangeMongoDBExporterParams) ProtoMessage() {} -func (x *ChangePostgresExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[35] +func (x *ChangeMongoDBExporterParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4889,73 +4945,26 @@ func (x *ChangePostgresExporterRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ChangePostgresExporterRequest.ProtoReflect.Descriptor instead. -func (*ChangePostgresExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{35} +// Deprecated: Use ChangeMongoDBExporterParams.ProtoReflect.Descriptor instead. +func (*ChangeMongoDBExporterParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{32} } -func (x *ChangePostgresExporterRequest) GetAgentId() string { +func (x *ChangeMongoDBExporterParams) GetAgentId() string { if x != nil { return x.AgentId } return "" } -func (x *ChangePostgresExporterRequest) GetCommon() *ChangeCommonAgentParams { +func (x *ChangeMongoDBExporterParams) GetCommon() *ChangeCommonAgentParams { if x != nil { return x.Common } return nil } -type ChangePostgresExporterResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - PostgresExporter *PostgresExporter `protobuf:"bytes,1,opt,name=postgres_exporter,json=postgresExporter,proto3" json:"postgres_exporter,omitempty"` -} - -func (x *ChangePostgresExporterResponse) Reset() { - *x = ChangePostgresExporterResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[36] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ChangePostgresExporterResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ChangePostgresExporterResponse) ProtoMessage() {} - -func (x *ChangePostgresExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[36] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ChangePostgresExporterResponse.ProtoReflect.Descriptor instead. -func (*ChangePostgresExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{36} -} - -func (x *ChangePostgresExporterResponse) GetPostgresExporter() *PostgresExporter { - if x != nil { - return x.PostgresExporter - } - return nil -} - -type AddProxySQLExporterParams struct { +type AddPostgresExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -4964,13 +4973,13 @@ type AddProxySQLExporterParams struct { PmmAgentId string `protobuf:"bytes,1,opt,name=pmm_agent_id,json=pmmAgentId,proto3" json:"pmm_agent_id,omitempty"` // Service identifier. ServiceId string `protobuf:"bytes,2,opt,name=service_id,json=serviceId,proto3" json:"service_id,omitempty"` - // ProxySQL username for scraping metrics. + // PostgreSQL username for scraping metrics. Username string `protobuf:"bytes,3,opt,name=username,proto3" json:"username,omitempty"` - // ProxySQL password for scraping metrics. + // PostgreSQL password for scraping metrics. Password string `protobuf:"bytes,4,opt,name=password,proto3" json:"password,omitempty"` // Use TLS for database connections. Tls bool `protobuf:"varint,5,opt,name=tls,proto3" json:"tls,omitempty"` - // Skip TLS certificate and hostname validation. + // Skip TLS certificate and hostname validation. Uses sslmode=required instead of verify-full. TlsSkipVerify bool `protobuf:"varint,6,opt,name=tls_skip_verify,json=tlsSkipVerify,proto3" json:"tls_skip_verify,omitempty"` // Custom user-assigned labels. CustomLabels map[string]string `protobuf:"bytes,7,rep,name=custom_labels,json=customLabels,proto3" json:"custom_labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` @@ -4980,31 +4989,39 @@ type AddProxySQLExporterParams struct { PushMetrics bool `protobuf:"varint,9,opt,name=push_metrics,json=pushMetrics,proto3" json:"push_metrics,omitempty"` // List of collector names to disable in this exporter. DisableCollectors []string `protobuf:"bytes,10,rep,name=disable_collectors,json=disableCollectors,proto3" json:"disable_collectors,omitempty"` + // TLS CA certificate. + TlsCa string `protobuf:"bytes,11,opt,name=tls_ca,json=tlsCa,proto3" json:"tls_ca,omitempty"` + // TLS Certifcate. + TlsCert string `protobuf:"bytes,12,opt,name=tls_cert,json=tlsCert,proto3" json:"tls_cert,omitempty"` + // TLS Certificate Key. + TlsKey string `protobuf:"bytes,13,opt,name=tls_key,json=tlsKey,proto3" json:"tls_key,omitempty"` // Custom password for exporter endpoint /metrics. - AgentPassword string `protobuf:"bytes,11,opt,name=agent_password,json=agentPassword,proto3" json:"agent_password,omitempty"` + AgentPassword string `protobuf:"bytes,14,opt,name=agent_password,json=agentPassword,proto3" json:"agent_password,omitempty"` // Log level for exporter. - LogLevel LogLevel `protobuf:"varint,12,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` + LogLevel LogLevel `protobuf:"varint,15,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` + // Limit of databases for auto-discovery. + AutoDiscoveryLimit int32 `protobuf:"varint,16,opt,name=auto_discovery_limit,json=autoDiscoveryLimit,proto3" json:"auto_discovery_limit,omitempty"` // Optionally expose the exporter process on all public interfaces - ExposeExporter bool `protobuf:"varint,13,opt,name=expose_exporter,json=exposeExporter,proto3" json:"expose_exporter,omitempty"` + ExposeExporter bool `protobuf:"varint,17,opt,name=expose_exporter,json=exposeExporter,proto3" json:"expose_exporter,omitempty"` } -func (x *AddProxySQLExporterParams) Reset() { - *x = AddProxySQLExporterParams{} +func (x *AddPostgresExporterParams) Reset() { + *x = AddPostgresExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[37] + mi := &file_inventory_v1_agents_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AddProxySQLExporterParams) String() string { +func (x *AddPostgresExporterParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddProxySQLExporterParams) ProtoMessage() {} +func (*AddPostgresExporterParams) ProtoMessage() {} -func (x *AddProxySQLExporterParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[37] +func (x *AddPostgresExporterParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5015,103 +5032,131 @@ func (x *AddProxySQLExporterParams) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AddProxySQLExporterParams.ProtoReflect.Descriptor instead. -func (*AddProxySQLExporterParams) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{37} +// Deprecated: Use AddPostgresExporterParams.ProtoReflect.Descriptor instead. +func (*AddPostgresExporterParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{33} } -func (x *AddProxySQLExporterParams) GetPmmAgentId() string { +func (x *AddPostgresExporterParams) GetPmmAgentId() string { if x != nil { return x.PmmAgentId } return "" } -func (x *AddProxySQLExporterParams) GetServiceId() string { +func (x *AddPostgresExporterParams) GetServiceId() string { if x != nil { return x.ServiceId } return "" } -func (x *AddProxySQLExporterParams) GetUsername() string { +func (x *AddPostgresExporterParams) GetUsername() string { if x != nil { return x.Username } return "" } -func (x *AddProxySQLExporterParams) GetPassword() string { +func (x *AddPostgresExporterParams) GetPassword() string { if x != nil { return x.Password } return "" } -func (x *AddProxySQLExporterParams) GetTls() bool { +func (x *AddPostgresExporterParams) GetTls() bool { if x != nil { return x.Tls } return false } -func (x *AddProxySQLExporterParams) GetTlsSkipVerify() bool { +func (x *AddPostgresExporterParams) GetTlsSkipVerify() bool { if x != nil { return x.TlsSkipVerify } return false } -func (x *AddProxySQLExporterParams) GetCustomLabels() map[string]string { +func (x *AddPostgresExporterParams) GetCustomLabels() map[string]string { if x != nil { return x.CustomLabels } return nil } -func (x *AddProxySQLExporterParams) GetSkipConnectionCheck() bool { +func (x *AddPostgresExporterParams) GetSkipConnectionCheck() bool { if x != nil { return x.SkipConnectionCheck } return false } -func (x *AddProxySQLExporterParams) GetPushMetrics() bool { +func (x *AddPostgresExporterParams) GetPushMetrics() bool { if x != nil { return x.PushMetrics } return false } -func (x *AddProxySQLExporterParams) GetDisableCollectors() []string { +func (x *AddPostgresExporterParams) GetDisableCollectors() []string { if x != nil { return x.DisableCollectors } return nil } -func (x *AddProxySQLExporterParams) GetAgentPassword() string { +func (x *AddPostgresExporterParams) GetTlsCa() string { + if x != nil { + return x.TlsCa + } + return "" +} + +func (x *AddPostgresExporterParams) GetTlsCert() string { + if x != nil { + return x.TlsCert + } + return "" +} + +func (x *AddPostgresExporterParams) GetTlsKey() string { + if x != nil { + return x.TlsKey + } + return "" +} + +func (x *AddPostgresExporterParams) GetAgentPassword() string { if x != nil { return x.AgentPassword } return "" } -func (x *AddProxySQLExporterParams) GetLogLevel() LogLevel { +func (x *AddPostgresExporterParams) GetLogLevel() LogLevel { if x != nil { return x.LogLevel } return LogLevel_LOG_LEVEL_UNSPECIFIED } -func (x *AddProxySQLExporterParams) GetExposeExporter() bool { +func (x *AddPostgresExporterParams) GetAutoDiscoveryLimit() int32 { + if x != nil { + return x.AutoDiscoveryLimit + } + return 0 +} + +func (x *AddPostgresExporterParams) GetExposeExporter() bool { if x != nil { return x.ExposeExporter } return false } -type ChangeProxySQLExporterRequest struct { +type ChangePostgresExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -5120,23 +5165,23 @@ type ChangeProxySQLExporterRequest struct { Common *ChangeCommonAgentParams `protobuf:"bytes,2,opt,name=common,proto3" json:"common,omitempty"` } -func (x *ChangeProxySQLExporterRequest) Reset() { - *x = ChangeProxySQLExporterRequest{} +func (x *ChangePostgresExporterParams) Reset() { + *x = ChangePostgresExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[38] + mi := &file_inventory_v1_agents_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ChangeProxySQLExporterRequest) String() string { +func (x *ChangePostgresExporterParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ChangeProxySQLExporterRequest) ProtoMessage() {} +func (*ChangePostgresExporterParams) ProtoMessage() {} -func (x *ChangeProxySQLExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[38] +func (x *ChangePostgresExporterParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5147,50 +5192,75 @@ func (x *ChangeProxySQLExporterRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ChangeProxySQLExporterRequest.ProtoReflect.Descriptor instead. -func (*ChangeProxySQLExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{38} +// Deprecated: Use ChangePostgresExporterParams.ProtoReflect.Descriptor instead. +func (*ChangePostgresExporterParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{34} } -func (x *ChangeProxySQLExporterRequest) GetAgentId() string { +func (x *ChangePostgresExporterParams) GetAgentId() string { if x != nil { return x.AgentId } return "" } -func (x *ChangeProxySQLExporterRequest) GetCommon() *ChangeCommonAgentParams { +func (x *ChangePostgresExporterParams) GetCommon() *ChangeCommonAgentParams { if x != nil { return x.Common } return nil } -type ChangeProxySQLExporterResponse struct { +type AddProxySQLExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ProxysqlExporter *ProxySQLExporter `protobuf:"bytes,1,opt,name=proxysql_exporter,json=proxysqlExporter,proto3" json:"proxysql_exporter,omitempty"` + // The pmm-agent identifier which runs this instance. + PmmAgentId string `protobuf:"bytes,1,opt,name=pmm_agent_id,json=pmmAgentId,proto3" json:"pmm_agent_id,omitempty"` + // Service identifier. + ServiceId string `protobuf:"bytes,2,opt,name=service_id,json=serviceId,proto3" json:"service_id,omitempty"` + // ProxySQL username for scraping metrics. + Username string `protobuf:"bytes,3,opt,name=username,proto3" json:"username,omitempty"` + // ProxySQL password for scraping metrics. + Password string `protobuf:"bytes,4,opt,name=password,proto3" json:"password,omitempty"` + // Use TLS for database connections. + Tls bool `protobuf:"varint,5,opt,name=tls,proto3" json:"tls,omitempty"` + // Skip TLS certificate and hostname validation. + TlsSkipVerify bool `protobuf:"varint,6,opt,name=tls_skip_verify,json=tlsSkipVerify,proto3" json:"tls_skip_verify,omitempty"` + // Custom user-assigned labels. + CustomLabels map[string]string `protobuf:"bytes,7,rep,name=custom_labels,json=customLabels,proto3" json:"custom_labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // Skip connection check. + SkipConnectionCheck bool `protobuf:"varint,8,opt,name=skip_connection_check,json=skipConnectionCheck,proto3" json:"skip_connection_check,omitempty"` + // Enables push metrics mode for exporter. + PushMetrics bool `protobuf:"varint,9,opt,name=push_metrics,json=pushMetrics,proto3" json:"push_metrics,omitempty"` + // List of collector names to disable in this exporter. + DisableCollectors []string `protobuf:"bytes,10,rep,name=disable_collectors,json=disableCollectors,proto3" json:"disable_collectors,omitempty"` + // Custom password for exporter endpoint /metrics. + AgentPassword string `protobuf:"bytes,11,opt,name=agent_password,json=agentPassword,proto3" json:"agent_password,omitempty"` + // Log level for exporter. + LogLevel LogLevel `protobuf:"varint,12,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` + // Optionally expose the exporter process on all public interfaces + ExposeExporter bool `protobuf:"varint,13,opt,name=expose_exporter,json=exposeExporter,proto3" json:"expose_exporter,omitempty"` } -func (x *ChangeProxySQLExporterResponse) Reset() { - *x = ChangeProxySQLExporterResponse{} +func (x *AddProxySQLExporterParams) Reset() { + *x = AddProxySQLExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[39] + mi := &file_inventory_v1_agents_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ChangeProxySQLExporterResponse) String() string { +func (x *AddProxySQLExporterParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ChangeProxySQLExporterResponse) ProtoMessage() {} +func (*AddProxySQLExporterParams) ProtoMessage() {} -func (x *ChangeProxySQLExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[39] +func (x *AddProxySQLExporterParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5201,14 +5271,153 @@ func (x *ChangeProxySQLExporterResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ChangeProxySQLExporterResponse.ProtoReflect.Descriptor instead. -func (*ChangeProxySQLExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{39} +// Deprecated: Use AddProxySQLExporterParams.ProtoReflect.Descriptor instead. +func (*AddProxySQLExporterParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{35} } -func (x *ChangeProxySQLExporterResponse) GetProxysqlExporter() *ProxySQLExporter { +func (x *AddProxySQLExporterParams) GetPmmAgentId() string { if x != nil { - return x.ProxysqlExporter + return x.PmmAgentId + } + return "" +} + +func (x *AddProxySQLExporterParams) GetServiceId() string { + if x != nil { + return x.ServiceId + } + return "" +} + +func (x *AddProxySQLExporterParams) GetUsername() string { + if x != nil { + return x.Username + } + return "" +} + +func (x *AddProxySQLExporterParams) GetPassword() string { + if x != nil { + return x.Password + } + return "" +} + +func (x *AddProxySQLExporterParams) GetTls() bool { + if x != nil { + return x.Tls + } + return false +} + +func (x *AddProxySQLExporterParams) GetTlsSkipVerify() bool { + if x != nil { + return x.TlsSkipVerify + } + return false +} + +func (x *AddProxySQLExporterParams) GetCustomLabels() map[string]string { + if x != nil { + return x.CustomLabels + } + return nil +} + +func (x *AddProxySQLExporterParams) GetSkipConnectionCheck() bool { + if x != nil { + return x.SkipConnectionCheck + } + return false +} + +func (x *AddProxySQLExporterParams) GetPushMetrics() bool { + if x != nil { + return x.PushMetrics + } + return false +} + +func (x *AddProxySQLExporterParams) GetDisableCollectors() []string { + if x != nil { + return x.DisableCollectors + } + return nil +} + +func (x *AddProxySQLExporterParams) GetAgentPassword() string { + if x != nil { + return x.AgentPassword + } + return "" +} + +func (x *AddProxySQLExporterParams) GetLogLevel() LogLevel { + if x != nil { + return x.LogLevel + } + return LogLevel_LOG_LEVEL_UNSPECIFIED +} + +func (x *AddProxySQLExporterParams) GetExposeExporter() bool { + if x != nil { + return x.ExposeExporter + } + return false +} + +type ChangeProxySQLExporterParams struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AgentId string `protobuf:"bytes,1,opt,name=agent_id,json=agentId,proto3" json:"agent_id,omitempty"` + Common *ChangeCommonAgentParams `protobuf:"bytes,2,opt,name=common,proto3" json:"common,omitempty"` +} + +func (x *ChangeProxySQLExporterParams) Reset() { + *x = ChangeProxySQLExporterParams{} + if protoimpl.UnsafeEnabled { + mi := &file_inventory_v1_agents_proto_msgTypes[36] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ChangeProxySQLExporterParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ChangeProxySQLExporterParams) ProtoMessage() {} + +func (x *ChangeProxySQLExporterParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[36] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ChangeProxySQLExporterParams.ProtoReflect.Descriptor instead. +func (*ChangeProxySQLExporterParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{36} +} + +func (x *ChangeProxySQLExporterParams) GetAgentId() string { + if x != nil { + return x.AgentId + } + return "" +} + +func (x *ChangeProxySQLExporterParams) GetCommon() *ChangeCommonAgentParams { + if x != nil { + return x.Common } return nil } @@ -5253,7 +5462,7 @@ type AddQANMySQLPerfSchemaAgentParams struct { func (x *AddQANMySQLPerfSchemaAgentParams) Reset() { *x = AddQANMySQLPerfSchemaAgentParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[40] + mi := &file_inventory_v1_agents_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5266,7 +5475,7 @@ func (x *AddQANMySQLPerfSchemaAgentParams) String() string { func (*AddQANMySQLPerfSchemaAgentParams) ProtoMessage() {} func (x *AddQANMySQLPerfSchemaAgentParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[40] + mi := &file_inventory_v1_agents_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5279,7 +5488,7 @@ func (x *AddQANMySQLPerfSchemaAgentParams) ProtoReflect() protoreflect.Message { // Deprecated: Use AddQANMySQLPerfSchemaAgentParams.ProtoReflect.Descriptor instead. func (*AddQANMySQLPerfSchemaAgentParams) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{40} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{37} } func (x *AddQANMySQLPerfSchemaAgentParams) GetPmmAgentId() string { @@ -5387,7 +5596,7 @@ func (x *AddQANMySQLPerfSchemaAgentParams) GetLogLevel() LogLevel { return LogLevel_LOG_LEVEL_UNSPECIFIED } -type ChangeQANMySQLPerfSchemaAgentRequest struct { +type ChangeQANMySQLPerfSchemaAgentParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -5396,23 +5605,23 @@ type ChangeQANMySQLPerfSchemaAgentRequest struct { Common *ChangeCommonAgentParams `protobuf:"bytes,2,opt,name=common,proto3" json:"common,omitempty"` } -func (x *ChangeQANMySQLPerfSchemaAgentRequest) Reset() { - *x = ChangeQANMySQLPerfSchemaAgentRequest{} +func (x *ChangeQANMySQLPerfSchemaAgentParams) Reset() { + *x = ChangeQANMySQLPerfSchemaAgentParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[41] + mi := &file_inventory_v1_agents_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ChangeQANMySQLPerfSchemaAgentRequest) String() string { +func (x *ChangeQANMySQLPerfSchemaAgentParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ChangeQANMySQLPerfSchemaAgentRequest) ProtoMessage() {} +func (*ChangeQANMySQLPerfSchemaAgentParams) ProtoMessage() {} -func (x *ChangeQANMySQLPerfSchemaAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[41] +func (x *ChangeQANMySQLPerfSchemaAgentParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5423,73 +5632,26 @@ func (x *ChangeQANMySQLPerfSchemaAgentRequest) ProtoReflect() protoreflect.Messa return mi.MessageOf(x) } -// Deprecated: Use ChangeQANMySQLPerfSchemaAgentRequest.ProtoReflect.Descriptor instead. -func (*ChangeQANMySQLPerfSchemaAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{41} +// Deprecated: Use ChangeQANMySQLPerfSchemaAgentParams.ProtoReflect.Descriptor instead. +func (*ChangeQANMySQLPerfSchemaAgentParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{38} } -func (x *ChangeQANMySQLPerfSchemaAgentRequest) GetAgentId() string { +func (x *ChangeQANMySQLPerfSchemaAgentParams) GetAgentId() string { if x != nil { return x.AgentId } return "" } -func (x *ChangeQANMySQLPerfSchemaAgentRequest) GetCommon() *ChangeCommonAgentParams { +func (x *ChangeQANMySQLPerfSchemaAgentParams) GetCommon() *ChangeCommonAgentParams { if x != nil { return x.Common } return nil } -type ChangeQANMySQLPerfSchemaAgentResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - QanMysqlPerfschemaAgent *QANMySQLPerfSchemaAgent `protobuf:"bytes,1,opt,name=qan_mysql_perfschema_agent,json=qanMysqlPerfschemaAgent,proto3" json:"qan_mysql_perfschema_agent,omitempty"` -} - -func (x *ChangeQANMySQLPerfSchemaAgentResponse) Reset() { - *x = ChangeQANMySQLPerfSchemaAgentResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[42] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ChangeQANMySQLPerfSchemaAgentResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ChangeQANMySQLPerfSchemaAgentResponse) ProtoMessage() {} - -func (x *ChangeQANMySQLPerfSchemaAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[42] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ChangeQANMySQLPerfSchemaAgentResponse.ProtoReflect.Descriptor instead. -func (*ChangeQANMySQLPerfSchemaAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{42} -} - -func (x *ChangeQANMySQLPerfSchemaAgentResponse) GetQanMysqlPerfschemaAgent() *QANMySQLPerfSchemaAgent { - if x != nil { - return x.QanMysqlPerfschemaAgent - } - return nil -} - -type AddQANMySQLSlowlogAgentParams struct { +type AddQANMySQLSlowlogAgentParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -5532,7 +5694,7 @@ type AddQANMySQLSlowlogAgentParams struct { func (x *AddQANMySQLSlowlogAgentParams) Reset() { *x = AddQANMySQLSlowlogAgentParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[43] + mi := &file_inventory_v1_agents_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5545,7 +5707,7 @@ func (x *AddQANMySQLSlowlogAgentParams) String() string { func (*AddQANMySQLSlowlogAgentParams) ProtoMessage() {} func (x *AddQANMySQLSlowlogAgentParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[43] + mi := &file_inventory_v1_agents_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5558,7 +5720,7 @@ func (x *AddQANMySQLSlowlogAgentParams) ProtoReflect() protoreflect.Message { // Deprecated: Use AddQANMySQLSlowlogAgentParams.ProtoReflect.Descriptor instead. func (*AddQANMySQLSlowlogAgentParams) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{43} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{39} } func (x *AddQANMySQLSlowlogAgentParams) GetPmmAgentId() string { @@ -5673,7 +5835,7 @@ func (x *AddQANMySQLSlowlogAgentParams) GetLogLevel() LogLevel { return LogLevel_LOG_LEVEL_UNSPECIFIED } -type ChangeQANMySQLSlowlogAgentRequest struct { +type ChangeQANMySQLSlowlogAgentParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -5682,23 +5844,23 @@ type ChangeQANMySQLSlowlogAgentRequest struct { Common *ChangeCommonAgentParams `protobuf:"bytes,2,opt,name=common,proto3" json:"common,omitempty"` } -func (x *ChangeQANMySQLSlowlogAgentRequest) Reset() { - *x = ChangeQANMySQLSlowlogAgentRequest{} +func (x *ChangeQANMySQLSlowlogAgentParams) Reset() { + *x = ChangeQANMySQLSlowlogAgentParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[44] + mi := &file_inventory_v1_agents_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ChangeQANMySQLSlowlogAgentRequest) String() string { +func (x *ChangeQANMySQLSlowlogAgentParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ChangeQANMySQLSlowlogAgentRequest) ProtoMessage() {} +func (*ChangeQANMySQLSlowlogAgentParams) ProtoMessage() {} -func (x *ChangeQANMySQLSlowlogAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[44] +func (x *ChangeQANMySQLSlowlogAgentParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5709,72 +5871,25 @@ func (x *ChangeQANMySQLSlowlogAgentRequest) ProtoReflect() protoreflect.Message return mi.MessageOf(x) } -// Deprecated: Use ChangeQANMySQLSlowlogAgentRequest.ProtoReflect.Descriptor instead. -func (*ChangeQANMySQLSlowlogAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{44} +// Deprecated: Use ChangeQANMySQLSlowlogAgentParams.ProtoReflect.Descriptor instead. +func (*ChangeQANMySQLSlowlogAgentParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{40} } -func (x *ChangeQANMySQLSlowlogAgentRequest) GetAgentId() string { +func (x *ChangeQANMySQLSlowlogAgentParams) GetAgentId() string { if x != nil { return x.AgentId } return "" } -func (x *ChangeQANMySQLSlowlogAgentRequest) GetCommon() *ChangeCommonAgentParams { +func (x *ChangeQANMySQLSlowlogAgentParams) GetCommon() *ChangeCommonAgentParams { if x != nil { return x.Common } return nil } -type ChangeQANMySQLSlowlogAgentResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - QanMysqlSlowlogAgent *QANMySQLSlowlogAgent `protobuf:"bytes,1,opt,name=qan_mysql_slowlog_agent,json=qanMysqlSlowlogAgent,proto3" json:"qan_mysql_slowlog_agent,omitempty"` -} - -func (x *ChangeQANMySQLSlowlogAgentResponse) Reset() { - *x = ChangeQANMySQLSlowlogAgentResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[45] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ChangeQANMySQLSlowlogAgentResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ChangeQANMySQLSlowlogAgentResponse) ProtoMessage() {} - -func (x *ChangeQANMySQLSlowlogAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[45] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ChangeQANMySQLSlowlogAgentResponse.ProtoReflect.Descriptor instead. -func (*ChangeQANMySQLSlowlogAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{45} -} - -func (x *ChangeQANMySQLSlowlogAgentResponse) GetQanMysqlSlowlogAgent() *QANMySQLSlowlogAgent { - if x != nil { - return x.QanMysqlSlowlogAgent - } - return nil -} - type AddQANMongoDBProfilerAgentParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -5817,7 +5932,7 @@ type AddQANMongoDBProfilerAgentParams struct { func (x *AddQANMongoDBProfilerAgentParams) Reset() { *x = AddQANMongoDBProfilerAgentParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[46] + mi := &file_inventory_v1_agents_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5830,7 +5945,7 @@ func (x *AddQANMongoDBProfilerAgentParams) String() string { func (*AddQANMongoDBProfilerAgentParams) ProtoMessage() {} func (x *AddQANMongoDBProfilerAgentParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[46] + mi := &file_inventory_v1_agents_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5843,7 +5958,7 @@ func (x *AddQANMongoDBProfilerAgentParams) ProtoReflect() protoreflect.Message { // Deprecated: Use AddQANMongoDBProfilerAgentParams.ProtoReflect.Descriptor instead. func (*AddQANMongoDBProfilerAgentParams) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{46} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{41} } func (x *AddQANMongoDBProfilerAgentParams) GetPmmAgentId() string { @@ -5951,7 +6066,7 @@ func (x *AddQANMongoDBProfilerAgentParams) GetLogLevel() LogLevel { return LogLevel_LOG_LEVEL_UNSPECIFIED } -type ChangeQANMongoDBProfilerAgentRequest struct { +type ChangeQANMongoDBProfilerAgentParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -5960,23 +6075,23 @@ type ChangeQANMongoDBProfilerAgentRequest struct { Common *ChangeCommonAgentParams `protobuf:"bytes,2,opt,name=common,proto3" json:"common,omitempty"` } -func (x *ChangeQANMongoDBProfilerAgentRequest) Reset() { - *x = ChangeQANMongoDBProfilerAgentRequest{} +func (x *ChangeQANMongoDBProfilerAgentParams) Reset() { + *x = ChangeQANMongoDBProfilerAgentParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[47] + mi := &file_inventory_v1_agents_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ChangeQANMongoDBProfilerAgentRequest) String() string { +func (x *ChangeQANMongoDBProfilerAgentParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ChangeQANMongoDBProfilerAgentRequest) ProtoMessage() {} +func (*ChangeQANMongoDBProfilerAgentParams) ProtoMessage() {} -func (x *ChangeQANMongoDBProfilerAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[47] +func (x *ChangeQANMongoDBProfilerAgentParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5987,72 +6102,25 @@ func (x *ChangeQANMongoDBProfilerAgentRequest) ProtoReflect() protoreflect.Messa return mi.MessageOf(x) } -// Deprecated: Use ChangeQANMongoDBProfilerAgentRequest.ProtoReflect.Descriptor instead. -func (*ChangeQANMongoDBProfilerAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{47} +// Deprecated: Use ChangeQANMongoDBProfilerAgentParams.ProtoReflect.Descriptor instead. +func (*ChangeQANMongoDBProfilerAgentParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{42} } -func (x *ChangeQANMongoDBProfilerAgentRequest) GetAgentId() string { +func (x *ChangeQANMongoDBProfilerAgentParams) GetAgentId() string { if x != nil { return x.AgentId } return "" } -func (x *ChangeQANMongoDBProfilerAgentRequest) GetCommon() *ChangeCommonAgentParams { +func (x *ChangeQANMongoDBProfilerAgentParams) GetCommon() *ChangeCommonAgentParams { if x != nil { return x.Common } return nil } -type ChangeQANMongoDBProfilerAgentResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - QanMongodbProfilerAgent *QANMongoDBProfilerAgent `protobuf:"bytes,1,opt,name=qan_mongodb_profiler_agent,json=qanMongodbProfilerAgent,proto3" json:"qan_mongodb_profiler_agent,omitempty"` -} - -func (x *ChangeQANMongoDBProfilerAgentResponse) Reset() { - *x = ChangeQANMongoDBProfilerAgentResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[48] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ChangeQANMongoDBProfilerAgentResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ChangeQANMongoDBProfilerAgentResponse) ProtoMessage() {} - -func (x *ChangeQANMongoDBProfilerAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[48] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ChangeQANMongoDBProfilerAgentResponse.ProtoReflect.Descriptor instead. -func (*ChangeQANMongoDBProfilerAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{48} -} - -func (x *ChangeQANMongoDBProfilerAgentResponse) GetQanMongodbProfilerAgent() *QANMongoDBProfilerAgent { - if x != nil { - return x.QanMongodbProfilerAgent - } - return nil -} - type AddQANPostgreSQLPgStatementsAgentParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -6091,7 +6159,7 @@ type AddQANPostgreSQLPgStatementsAgentParams struct { func (x *AddQANPostgreSQLPgStatementsAgentParams) Reset() { *x = AddQANPostgreSQLPgStatementsAgentParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[49] + mi := &file_inventory_v1_agents_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6104,7 +6172,7 @@ func (x *AddQANPostgreSQLPgStatementsAgentParams) String() string { func (*AddQANPostgreSQLPgStatementsAgentParams) ProtoMessage() {} func (x *AddQANPostgreSQLPgStatementsAgentParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[49] + mi := &file_inventory_v1_agents_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6117,7 +6185,7 @@ func (x *AddQANPostgreSQLPgStatementsAgentParams) ProtoReflect() protoreflect.Me // Deprecated: Use AddQANPostgreSQLPgStatementsAgentParams.ProtoReflect.Descriptor instead. func (*AddQANPostgreSQLPgStatementsAgentParams) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{49} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{43} } func (x *AddQANPostgreSQLPgStatementsAgentParams) GetPmmAgentId() string { @@ -6218,7 +6286,7 @@ func (x *AddQANPostgreSQLPgStatementsAgentParams) GetLogLevel() LogLevel { return LogLevel_LOG_LEVEL_UNSPECIFIED } -type ChangeQANPostgreSQLPgStatementsAgentRequest struct { +type ChangeQANPostgreSQLPgStatementsAgentParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -6227,23 +6295,23 @@ type ChangeQANPostgreSQLPgStatementsAgentRequest struct { Common *ChangeCommonAgentParams `protobuf:"bytes,2,opt,name=common,proto3" json:"common,omitempty"` } -func (x *ChangeQANPostgreSQLPgStatementsAgentRequest) Reset() { - *x = ChangeQANPostgreSQLPgStatementsAgentRequest{} +func (x *ChangeQANPostgreSQLPgStatementsAgentParams) Reset() { + *x = ChangeQANPostgreSQLPgStatementsAgentParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[50] + mi := &file_inventory_v1_agents_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ChangeQANPostgreSQLPgStatementsAgentRequest) String() string { +func (x *ChangeQANPostgreSQLPgStatementsAgentParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ChangeQANPostgreSQLPgStatementsAgentRequest) ProtoMessage() {} +func (*ChangeQANPostgreSQLPgStatementsAgentParams) ProtoMessage() {} -func (x *ChangeQANPostgreSQLPgStatementsAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[50] +func (x *ChangeQANPostgreSQLPgStatementsAgentParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6254,72 +6322,25 @@ func (x *ChangeQANPostgreSQLPgStatementsAgentRequest) ProtoReflect() protoreflec return mi.MessageOf(x) } -// Deprecated: Use ChangeQANPostgreSQLPgStatementsAgentRequest.ProtoReflect.Descriptor instead. -func (*ChangeQANPostgreSQLPgStatementsAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{50} +// Deprecated: Use ChangeQANPostgreSQLPgStatementsAgentParams.ProtoReflect.Descriptor instead. +func (*ChangeQANPostgreSQLPgStatementsAgentParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{44} } -func (x *ChangeQANPostgreSQLPgStatementsAgentRequest) GetAgentId() string { +func (x *ChangeQANPostgreSQLPgStatementsAgentParams) GetAgentId() string { if x != nil { return x.AgentId } return "" } -func (x *ChangeQANPostgreSQLPgStatementsAgentRequest) GetCommon() *ChangeCommonAgentParams { +func (x *ChangeQANPostgreSQLPgStatementsAgentParams) GetCommon() *ChangeCommonAgentParams { if x != nil { return x.Common } return nil } -type ChangeQANPostgreSQLPgStatementsAgentResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - QanPostgresqlPgstatementsAgent *QANPostgreSQLPgStatementsAgent `protobuf:"bytes,1,opt,name=qan_postgresql_pgstatements_agent,json=qanPostgresqlPgstatementsAgent,proto3" json:"qan_postgresql_pgstatements_agent,omitempty"` -} - -func (x *ChangeQANPostgreSQLPgStatementsAgentResponse) Reset() { - *x = ChangeQANPostgreSQLPgStatementsAgentResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[51] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ChangeQANPostgreSQLPgStatementsAgentResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ChangeQANPostgreSQLPgStatementsAgentResponse) ProtoMessage() {} - -func (x *ChangeQANPostgreSQLPgStatementsAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[51] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ChangeQANPostgreSQLPgStatementsAgentResponse.ProtoReflect.Descriptor instead. -func (*ChangeQANPostgreSQLPgStatementsAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{51} -} - -func (x *ChangeQANPostgreSQLPgStatementsAgentResponse) GetQanPostgresqlPgstatementsAgent() *QANPostgreSQLPgStatementsAgent { - if x != nil { - return x.QanPostgresqlPgstatementsAgent - } - return nil -} - type AddQANPostgreSQLPgStatMonitorAgentParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -6360,7 +6381,7 @@ type AddQANPostgreSQLPgStatMonitorAgentParams struct { func (x *AddQANPostgreSQLPgStatMonitorAgentParams) Reset() { *x = AddQANPostgreSQLPgStatMonitorAgentParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[52] + mi := &file_inventory_v1_agents_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6373,7 +6394,7 @@ func (x *AddQANPostgreSQLPgStatMonitorAgentParams) String() string { func (*AddQANPostgreSQLPgStatMonitorAgentParams) ProtoMessage() {} func (x *AddQANPostgreSQLPgStatMonitorAgentParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[52] + mi := &file_inventory_v1_agents_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6386,7 +6407,7 @@ func (x *AddQANPostgreSQLPgStatMonitorAgentParams) ProtoReflect() protoreflect.M // Deprecated: Use AddQANPostgreSQLPgStatMonitorAgentParams.ProtoReflect.Descriptor instead. func (*AddQANPostgreSQLPgStatMonitorAgentParams) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{52} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{45} } func (x *AddQANPostgreSQLPgStatMonitorAgentParams) GetPmmAgentId() string { @@ -6494,7 +6515,7 @@ func (x *AddQANPostgreSQLPgStatMonitorAgentParams) GetLogLevel() LogLevel { return LogLevel_LOG_LEVEL_UNSPECIFIED } -type ChangeQANPostgreSQLPgStatMonitorAgentRequest struct { +type ChangeQANPostgreSQLPgStatMonitorAgentParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -6503,23 +6524,23 @@ type ChangeQANPostgreSQLPgStatMonitorAgentRequest struct { Common *ChangeCommonAgentParams `protobuf:"bytes,2,opt,name=common,proto3" json:"common,omitempty"` } -func (x *ChangeQANPostgreSQLPgStatMonitorAgentRequest) Reset() { - *x = ChangeQANPostgreSQLPgStatMonitorAgentRequest{} +func (x *ChangeQANPostgreSQLPgStatMonitorAgentParams) Reset() { + *x = ChangeQANPostgreSQLPgStatMonitorAgentParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[53] + mi := &file_inventory_v1_agents_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ChangeQANPostgreSQLPgStatMonitorAgentRequest) String() string { +func (x *ChangeQANPostgreSQLPgStatMonitorAgentParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ChangeQANPostgreSQLPgStatMonitorAgentRequest) ProtoMessage() {} +func (*ChangeQANPostgreSQLPgStatMonitorAgentParams) ProtoMessage() {} -func (x *ChangeQANPostgreSQLPgStatMonitorAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[53] +func (x *ChangeQANPostgreSQLPgStatMonitorAgentParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6530,72 +6551,25 @@ func (x *ChangeQANPostgreSQLPgStatMonitorAgentRequest) ProtoReflect() protorefle return mi.MessageOf(x) } -// Deprecated: Use ChangeQANPostgreSQLPgStatMonitorAgentRequest.ProtoReflect.Descriptor instead. -func (*ChangeQANPostgreSQLPgStatMonitorAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{53} +// Deprecated: Use ChangeQANPostgreSQLPgStatMonitorAgentParams.ProtoReflect.Descriptor instead. +func (*ChangeQANPostgreSQLPgStatMonitorAgentParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{46} } -func (x *ChangeQANPostgreSQLPgStatMonitorAgentRequest) GetAgentId() string { +func (x *ChangeQANPostgreSQLPgStatMonitorAgentParams) GetAgentId() string { if x != nil { return x.AgentId } return "" } -func (x *ChangeQANPostgreSQLPgStatMonitorAgentRequest) GetCommon() *ChangeCommonAgentParams { +func (x *ChangeQANPostgreSQLPgStatMonitorAgentParams) GetCommon() *ChangeCommonAgentParams { if x != nil { return x.Common } return nil } -type ChangeQANPostgreSQLPgStatMonitorAgentResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - QanPostgresqlPgstatmonitorAgent *QANPostgreSQLPgStatMonitorAgent `protobuf:"bytes,1,opt,name=qan_postgresql_pgstatmonitor_agent,json=qanPostgresqlPgstatmonitorAgent,proto3" json:"qan_postgresql_pgstatmonitor_agent,omitempty"` -} - -func (x *ChangeQANPostgreSQLPgStatMonitorAgentResponse) Reset() { - *x = ChangeQANPostgreSQLPgStatMonitorAgentResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[54] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ChangeQANPostgreSQLPgStatMonitorAgentResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ChangeQANPostgreSQLPgStatMonitorAgentResponse) ProtoMessage() {} - -func (x *ChangeQANPostgreSQLPgStatMonitorAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[54] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ChangeQANPostgreSQLPgStatMonitorAgentResponse.ProtoReflect.Descriptor instead. -func (*ChangeQANPostgreSQLPgStatMonitorAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{54} -} - -func (x *ChangeQANPostgreSQLPgStatMonitorAgentResponse) GetQanPostgresqlPgstatmonitorAgent() *QANPostgreSQLPgStatMonitorAgent { - if x != nil { - return x.QanPostgresqlPgstatmonitorAgent - } - return nil -} - type AddRDSExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -6626,7 +6600,7 @@ type AddRDSExporterParams struct { func (x *AddRDSExporterParams) Reset() { *x = AddRDSExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[55] + mi := &file_inventory_v1_agents_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6639,7 +6613,7 @@ func (x *AddRDSExporterParams) String() string { func (*AddRDSExporterParams) ProtoMessage() {} func (x *AddRDSExporterParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[55] + mi := &file_inventory_v1_agents_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6652,7 +6626,7 @@ func (x *AddRDSExporterParams) ProtoReflect() protoreflect.Message { // Deprecated: Use AddRDSExporterParams.ProtoReflect.Descriptor instead. func (*AddRDSExporterParams) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{55} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{47} } func (x *AddRDSExporterParams) GetPmmAgentId() string { @@ -6725,7 +6699,7 @@ func (x *AddRDSExporterParams) GetLogLevel() LogLevel { return LogLevel_LOG_LEVEL_UNSPECIFIED } -type ChangeRDSExporterRequest struct { +type ChangeRDSExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -6734,23 +6708,23 @@ type ChangeRDSExporterRequest struct { Common *ChangeCommonAgentParams `protobuf:"bytes,2,opt,name=common,proto3" json:"common,omitempty"` } -func (x *ChangeRDSExporterRequest) Reset() { - *x = ChangeRDSExporterRequest{} +func (x *ChangeRDSExporterParams) Reset() { + *x = ChangeRDSExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[56] + mi := &file_inventory_v1_agents_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ChangeRDSExporterRequest) String() string { +func (x *ChangeRDSExporterParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ChangeRDSExporterRequest) ProtoMessage() {} +func (*ChangeRDSExporterParams) ProtoMessage() {} -func (x *ChangeRDSExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[56] +func (x *ChangeRDSExporterParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6761,72 +6735,25 @@ func (x *ChangeRDSExporterRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ChangeRDSExporterRequest.ProtoReflect.Descriptor instead. -func (*ChangeRDSExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{56} +// Deprecated: Use ChangeRDSExporterParams.ProtoReflect.Descriptor instead. +func (*ChangeRDSExporterParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{48} } -func (x *ChangeRDSExporterRequest) GetAgentId() string { +func (x *ChangeRDSExporterParams) GetAgentId() string { if x != nil { return x.AgentId } return "" } -func (x *ChangeRDSExporterRequest) GetCommon() *ChangeCommonAgentParams { +func (x *ChangeRDSExporterParams) GetCommon() *ChangeCommonAgentParams { if x != nil { return x.Common } return nil } -type ChangeRDSExporterResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - RdsExporter *RDSExporter `protobuf:"bytes,1,opt,name=rds_exporter,json=rdsExporter,proto3" json:"rds_exporter,omitempty"` -} - -func (x *ChangeRDSExporterResponse) Reset() { - *x = ChangeRDSExporterResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[57] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ChangeRDSExporterResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ChangeRDSExporterResponse) ProtoMessage() {} - -func (x *ChangeRDSExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[57] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ChangeRDSExporterResponse.ProtoReflect.Descriptor instead. -func (*ChangeRDSExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{57} -} - -func (x *ChangeRDSExporterResponse) GetRdsExporter() *RDSExporter { - if x != nil { - return x.RdsExporter - } - return nil -} - type AddExternalExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -6855,7 +6782,7 @@ type AddExternalExporterParams struct { func (x *AddExternalExporterParams) Reset() { *x = AddExternalExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[58] + mi := &file_inventory_v1_agents_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6868,7 +6795,7 @@ func (x *AddExternalExporterParams) String() string { func (*AddExternalExporterParams) ProtoMessage() {} func (x *AddExternalExporterParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[58] + mi := &file_inventory_v1_agents_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6881,7 +6808,7 @@ func (x *AddExternalExporterParams) ProtoReflect() protoreflect.Message { // Deprecated: Use AddExternalExporterParams.ProtoReflect.Descriptor instead. func (*AddExternalExporterParams) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{58} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{49} } func (x *AddExternalExporterParams) GetRunsOnNodeId() string { @@ -6947,7 +6874,7 @@ func (x *AddExternalExporterParams) GetPushMetrics() bool { return false } -type ChangeExternalExporterRequest struct { +type ChangeExternalExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -6956,23 +6883,23 @@ type ChangeExternalExporterRequest struct { Common *ChangeCommonAgentParams `protobuf:"bytes,2,opt,name=common,proto3" json:"common,omitempty"` } -func (x *ChangeExternalExporterRequest) Reset() { - *x = ChangeExternalExporterRequest{} +func (x *ChangeExternalExporterParams) Reset() { + *x = ChangeExternalExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[59] + mi := &file_inventory_v1_agents_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ChangeExternalExporterRequest) String() string { +func (x *ChangeExternalExporterParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ChangeExternalExporterRequest) ProtoMessage() {} +func (*ChangeExternalExporterParams) ProtoMessage() {} -func (x *ChangeExternalExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[59] +func (x *ChangeExternalExporterParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6983,73 +6910,26 @@ func (x *ChangeExternalExporterRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ChangeExternalExporterRequest.ProtoReflect.Descriptor instead. -func (*ChangeExternalExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{59} +// Deprecated: Use ChangeExternalExporterParams.ProtoReflect.Descriptor instead. +func (*ChangeExternalExporterParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{50} } -func (x *ChangeExternalExporterRequest) GetAgentId() string { +func (x *ChangeExternalExporterParams) GetAgentId() string { if x != nil { return x.AgentId } return "" } -func (x *ChangeExternalExporterRequest) GetCommon() *ChangeCommonAgentParams { +func (x *ChangeExternalExporterParams) GetCommon() *ChangeCommonAgentParams { if x != nil { return x.Common } return nil } -type ChangeExternalExporterResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ExternalExporter *ExternalExporter `protobuf:"bytes,1,opt,name=external_exporter,json=externalExporter,proto3" json:"external_exporter,omitempty"` -} - -func (x *ChangeExternalExporterResponse) Reset() { - *x = ChangeExternalExporterResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[60] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ChangeExternalExporterResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ChangeExternalExporterResponse) ProtoMessage() {} - -func (x *ChangeExternalExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[60] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ChangeExternalExporterResponse.ProtoReflect.Descriptor instead. -func (*ChangeExternalExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{60} -} - -func (x *ChangeExternalExporterResponse) GetExternalExporter() *ExternalExporter { - if x != nil { - return x.ExternalExporter - } - return nil -} - -type AddAzureDatabaseExporterParams struct { +type AddAzureDatabaseExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -7083,7 +6963,7 @@ type AddAzureDatabaseExporterParams struct { func (x *AddAzureDatabaseExporterParams) Reset() { *x = AddAzureDatabaseExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[61] + mi := &file_inventory_v1_agents_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7096,7 +6976,7 @@ func (x *AddAzureDatabaseExporterParams) String() string { func (*AddAzureDatabaseExporterParams) ProtoMessage() {} func (x *AddAzureDatabaseExporterParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[61] + mi := &file_inventory_v1_agents_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7109,7 +6989,7 @@ func (x *AddAzureDatabaseExporterParams) ProtoReflect() protoreflect.Message { // Deprecated: Use AddAzureDatabaseExporterParams.ProtoReflect.Descriptor instead. func (*AddAzureDatabaseExporterParams) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{61} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{51} } func (x *AddAzureDatabaseExporterParams) GetPmmAgentId() string { @@ -7196,7 +7076,7 @@ func (x *AddAzureDatabaseExporterParams) GetLogLevel() LogLevel { return LogLevel_LOG_LEVEL_UNSPECIFIED } -type ChangeAzureDatabaseExporterRequest struct { +type ChangeAzureDatabaseExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -7205,23 +7085,23 @@ type ChangeAzureDatabaseExporterRequest struct { Common *ChangeCommonAgentParams `protobuf:"bytes,2,opt,name=common,proto3" json:"common,omitempty"` } -func (x *ChangeAzureDatabaseExporterRequest) Reset() { - *x = ChangeAzureDatabaseExporterRequest{} +func (x *ChangeAzureDatabaseExporterParams) Reset() { + *x = ChangeAzureDatabaseExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[62] + mi := &file_inventory_v1_agents_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ChangeAzureDatabaseExporterRequest) String() string { +func (x *ChangeAzureDatabaseExporterParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ChangeAzureDatabaseExporterRequest) ProtoMessage() {} +func (*ChangeAzureDatabaseExporterParams) ProtoMessage() {} -func (x *ChangeAzureDatabaseExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[62] +func (x *ChangeAzureDatabaseExporterParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7232,72 +7112,25 @@ func (x *ChangeAzureDatabaseExporterRequest) ProtoReflect() protoreflect.Message return mi.MessageOf(x) } -// Deprecated: Use ChangeAzureDatabaseExporterRequest.ProtoReflect.Descriptor instead. -func (*ChangeAzureDatabaseExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{62} +// Deprecated: Use ChangeAzureDatabaseExporterParams.ProtoReflect.Descriptor instead. +func (*ChangeAzureDatabaseExporterParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{52} } -func (x *ChangeAzureDatabaseExporterRequest) GetAgentId() string { +func (x *ChangeAzureDatabaseExporterParams) GetAgentId() string { if x != nil { return x.AgentId } return "" } -func (x *ChangeAzureDatabaseExporterRequest) GetCommon() *ChangeCommonAgentParams { +func (x *ChangeAzureDatabaseExporterParams) GetCommon() *ChangeCommonAgentParams { if x != nil { return x.Common } return nil } -type ChangeAzureDatabaseExporterResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - AzureDatabaseExporter *AzureDatabaseExporter `protobuf:"bytes,1,opt,name=azure_database_exporter,json=azureDatabaseExporter,proto3" json:"azure_database_exporter,omitempty"` -} - -func (x *ChangeAzureDatabaseExporterResponse) Reset() { - *x = ChangeAzureDatabaseExporterResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[63] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ChangeAzureDatabaseExporterResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ChangeAzureDatabaseExporterResponse) ProtoMessage() {} - -func (x *ChangeAzureDatabaseExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[63] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ChangeAzureDatabaseExporterResponse.ProtoReflect.Descriptor instead. -func (*ChangeAzureDatabaseExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{63} -} - -func (x *ChangeAzureDatabaseExporterResponse) GetAzureDatabaseExporter() *AzureDatabaseExporter { - if x != nil { - return x.AzureDatabaseExporter - } - return nil -} - type RemoveAgentRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -7311,7 +7144,7 @@ type RemoveAgentRequest struct { func (x *RemoveAgentRequest) Reset() { *x = RemoveAgentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[64] + mi := &file_inventory_v1_agents_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7324,7 +7157,7 @@ func (x *RemoveAgentRequest) String() string { func (*RemoveAgentRequest) ProtoMessage() {} func (x *RemoveAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[64] + mi := &file_inventory_v1_agents_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7337,7 +7170,7 @@ func (x *RemoveAgentRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use RemoveAgentRequest.ProtoReflect.Descriptor instead. func (*RemoveAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{64} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{53} } func (x *RemoveAgentRequest) GetAgentId() string { @@ -7363,7 +7196,7 @@ type RemoveAgentResponse struct { func (x *RemoveAgentResponse) Reset() { *x = RemoveAgentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[65] + mi := &file_inventory_v1_agents_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7376,7 +7209,7 @@ func (x *RemoveAgentResponse) String() string { func (*RemoveAgentResponse) ProtoMessage() {} func (x *RemoveAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[65] + mi := &file_inventory_v1_agents_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7389,7 +7222,7 @@ func (x *RemoveAgentResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use RemoveAgentResponse.ProtoReflect.Descriptor instead. func (*RemoveAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{65} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{54} } var File_inventory_v1_agents_proto protoreflect.FileDescriptor @@ -7397,85 +7230,197 @@ var File_inventory_v1_agents_proto protoreflect.FileDescriptor var file_inventory_v1_agents_proto_rawDesc = []byte{ 0x0a, 0x19, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c, 0x69, 0x6e, 0x76, - 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, - 0x72, 0x79, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2f, 0x76, 0x31, 0x2f, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x2d, 0x67, - 0x65, 0x6e, 0x2d, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x70, 0x69, 0x76, 0x32, 0x2f, 0x6f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, - 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, - 0xa6, 0x02, 0x0a, 0x08, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, - 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0f, 0x72, 0x75, 0x6e, 0x73, 0x5f, - 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x72, 0x75, 0x6e, 0x73, 0x4f, 0x6e, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x4d, - 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, - 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x43, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, - 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x1c, 0x0a, - 0x09, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x70, + 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x1a, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x69, 0x6e, + 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, + 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x69, + 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x76, 0x31, 0x2f, 0x6c, 0x6f, 0x67, 0x5f, + 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x63, 0x2d, 0x67, 0x65, 0x6e, 0x2d, 0x6f, 0x70, 0x65, 0x6e, 0x61, 0x70, 0x69, 0x76, + 0x32, 0x2f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa6, 0x02, 0x0a, 0x08, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0f, + 0x72, 0x75, 0x6e, 0x73, 0x5f, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x75, 0x6e, 0x73, 0x4f, 0x6e, 0x4e, 0x6f, 0x64, + 0x65, 0x49, 0x64, 0x12, 0x4d, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x69, 0x6e, 0x76, + 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, + 0x6e, 0x74, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, + 0x6c, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, + 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x65, 0x78, 0x65, 0x63, + 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, + 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, 0x68, 0x1a, 0x3f, 0x0a, 0x11, + 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, + 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xc6, 0x01, + 0x0a, 0x07, 0x56, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, + 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, + 0x63, 0x65, 0x73, 0x73, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, + 0x63, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x5f, + 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, + 0x65, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x22, 0xbc, 0x04, 0x0a, 0x0c, 0x4e, 0x6f, 0x64, 0x65, 0x45, + 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x12, 0x51, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, + 0x74, 0x65, 0x72, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, + 0x65, 0x6c, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, + 0x69, 0x63, 0x73, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x12, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x45, 0x6e, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2f, 0x0a, 0x13, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, + 0x64, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x06, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x12, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x43, 0x6f, 0x6c, 0x6c, + 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, + 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, + 0x74, 0x65, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, + 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, + 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, + 0x65, 0x63, 0x50, 0x61, 0x74, 0x68, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, + 0x76, 0x65, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, + 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x27, 0x0a, 0x0f, 0x65, + 0x78, 0x70, 0x6f, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x0e, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, + 0x72, 0x74, 0x65, 0x72, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, + 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x9e, 0x07, 0x0a, 0x0e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x64, + 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, + 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, + 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, + 0x74, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, + 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, + 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, + 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, + 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x74, 0x6c, 0x73, 0x43, 0x65, 0x72, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x6c, 0x73, 0x5f, + 0x6b, 0x65, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x6c, 0x73, 0x4b, 0x65, + 0x79, 0x12, 0x3f, 0x0a, 0x1c, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, + 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, + 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x19, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x74, + 0x61, 0x74, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x69, 0x6d, + 0x69, 0x74, 0x12, 0x53, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x69, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x64, 0x45, + 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, + 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x75, 0x73, 0x68, 0x5f, + 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, + 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, + 0x63, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2f, 0x0a, 0x13, 0x64, 0x69, 0x73, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, + 0x18, 0x0e, 0x20, 0x03, 0x28, 0x09, 0x52, 0x12, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, + 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x06, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, + 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, + 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x15, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, + 0x3a, 0x0a, 0x19, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x67, 0x72, + 0x6f, 0x75, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x16, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x17, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x74, 0x61, 0x74, 0x73, 0x47, 0x72, + 0x6f, 0x75, 0x70, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, - 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, 0x68, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, - 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, - 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xc6, 0x01, 0x0a, 0x07, 0x56, 0x4d, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x20, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, - 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, - 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, 0x68, - 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, - 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x50, 0x6f, 0x72, - 0x74, 0x22, 0xbc, 0x04, 0x0a, 0x0c, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, - 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x51, 0x0a, 0x0d, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, - 0x31, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x2e, 0x43, + 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, + 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, 0x68, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, + 0x65, 0x76, 0x65, 0x6c, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, + 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, + 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x27, 0x0a, 0x0f, + 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, + 0x19, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x45, 0x78, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, + 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xc5, 0x06, 0x0a, 0x0f, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, + 0x44, 0x42, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, + 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6d, 0x6d, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, + 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, + 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, + 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, + 0x69, 0x66, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, + 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x54, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x2f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4d, + 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x65, - 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x70, 0x75, + 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2f, 0x0a, 0x13, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6c, - 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x12, 0x64, + 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x12, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, - 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x5f, 0x70, - 0x6f, 0x72, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x65, - 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, - 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, - 0x68, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0d, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, - 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, - 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0e, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, - 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, - 0x22, 0xfd, 0x06, 0x0a, 0x0e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, + 0x6f, 0x72, 0x74, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x65, + 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x63, + 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x16, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, 0x73, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x63, + 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, + 0x32, 0x0a, 0x15, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0x63, 0x6f, + 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x18, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, + 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, + 0x6f, 0x72, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x65, + 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, + 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, 0x68, 0x12, + 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x1a, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, + 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, + 0x65, 0x76, 0x65, 0x6c, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x5f, 0x65, + 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x65, + 0x78, 0x70, 0x6f, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x3f, 0x0a, + 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xeb, + 0x05, 0x0a, 0x10, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, @@ -7489,65 +7434,9 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, - 0x79, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, - 0x63, 0x65, 0x72, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x6c, 0x73, 0x43, - 0x65, 0x72, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x6c, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x0a, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x6c, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x3f, 0x0a, 0x1c, - 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x19, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x74, 0x61, 0x74, 0x73, 0x47, 0x72, - 0x6f, 0x75, 0x70, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x53, 0x0a, - 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0c, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x72, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, - 0x6c, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, - 0x63, 0x73, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x12, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x45, 0x6e, 0x61, - 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2f, 0x0a, 0x13, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, - 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x12, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x43, 0x6f, 0x6c, 0x6c, 0x65, - 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, - 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, - 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, - 0x65, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, - 0x69, 0x73, 0x74, 0x65, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x3a, 0x0a, 0x19, 0x74, 0x61, 0x62, - 0x6c, 0x65, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x64, 0x69, - 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x74, 0x61, - 0x62, 0x6c, 0x65, 0x73, 0x74, 0x61, 0x74, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x44, 0x69, 0x73, - 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, - 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, - 0x68, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x18, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, - 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, - 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x19, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0e, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, - 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, - 0x22, 0xc5, 0x06, 0x0a, 0x0f, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x45, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x20, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1d, 0x0a, - 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, - 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, - 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, - 0x66, 0x79, 0x12, 0x54, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, - 0x65, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x69, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, + 0x79, 0x12, 0x55, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, + 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x75, 0x73, 0x68, @@ -7562,628 +7451,914 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, - 0x2b, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x16, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, - 0x73, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2b, 0x0a, 0x11, - 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x6c, 0x69, 0x6d, 0x69, - 0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x32, 0x0a, 0x15, 0x65, 0x6e, 0x61, - 0x62, 0x6c, 0x65, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, - 0x72, 0x73, 0x18, 0x18, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, - 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x2a, 0x0a, + 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, + 0x70, 0x61, 0x74, 0x68, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, + 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, 0x68, 0x12, 0x33, 0x0a, 0x09, 0x6c, + 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, + 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, + 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, + 0x12, 0x30, 0x0a, 0x14, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, + 0x72, 0x79, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x18, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, + 0x61, 0x75, 0x74, 0x6f, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x4c, 0x69, 0x6d, + 0x69, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x19, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x65, 0x78, 0x70, + 0x6f, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x3f, 0x0a, 0x11, 0x43, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xb9, 0x05, 0x0a, + 0x10, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x72, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, + 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, + 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, + 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, + 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, + 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, + 0x55, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, + 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, + 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 0x45, 0x78, + 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, + 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, + 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, + 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2f, 0x0a, 0x13, 0x64, 0x69, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, + 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x12, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x43, + 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x0b, + 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x15, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, - 0x74, 0x68, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, + 0x74, 0x68, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, 0x68, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, - 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, + 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x45, + 0x72, 0x18, 0x18, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xeb, 0x05, 0x0a, 0x10, 0x50, 0x6f, 0x73, - 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x19, 0x0a, - 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, - 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, - 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x69, - 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, - 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, - 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, - 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, - 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x55, 0x0a, 0x0d, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, - 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x72, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, - 0x6c, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, - 0x63, 0x73, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x12, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x45, 0x6e, 0x61, - 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2f, 0x0a, 0x13, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, - 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x12, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x43, 0x6f, 0x6c, 0x6c, 0x65, - 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, - 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, - 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, - 0x65, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, - 0x69, 0x73, 0x74, 0x65, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, - 0x63, 0x65, 0x73, 0x73, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x16, + 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x81, 0x06, 0x0a, 0x17, 0x51, 0x41, 0x4e, + 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x20, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1d, 0x0a, + 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, + 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, + 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, + 0x66, 0x79, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, + 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x6c, 0x73, + 0x43, 0x65, 0x72, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x6c, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x6c, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x38, 0x0a, + 0x18, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x73, 0x5f, 0x70, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x50, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0c, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x12, 0x36, 0x0a, 0x17, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x65, 0x78, 0x61, 0x6d, 0x70, + 0x6c, 0x65, 0x73, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x15, 0x71, 0x75, 0x65, 0x72, 0x79, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, + 0x73, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x5c, 0x0a, 0x0d, 0x63, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x37, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, + 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, + 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, + 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, + 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, + 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, + 0x65, 0x63, 0x50, 0x61, 0x74, 0x68, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, + 0x76, 0x65, 0x6c, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, + 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x1a, 0x3f, 0x0a, 0x11, 0x43, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xae, 0x06, 0x0a, + 0x14, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1d, + 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, + 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, + 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, + 0x69, 0x66, 0x79, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, + 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x6c, + 0x73, 0x43, 0x65, 0x72, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x6c, 0x73, 0x5f, 0x6b, 0x65, 0x79, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x6c, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x38, + 0x0a, 0x18, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x5f, 0x70, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x73, 0x50, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, + 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0c, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x12, 0x36, 0x0a, 0x17, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x65, 0x78, 0x61, 0x6d, + 0x70, 0x6c, 0x65, 0x73, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0d, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x15, 0x71, 0x75, 0x65, 0x72, 0x79, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, + 0x65, 0x73, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x31, 0x0a, 0x15, 0x6d, 0x61, + 0x78, 0x5f, 0x73, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x73, + 0x69, 0x7a, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x53, 0x6c, + 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x59, 0x0a, + 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0f, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, + 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, + 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, + 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, + 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x70, + 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, + 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, + 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, 0x68, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, + 0x65, 0x76, 0x65, 0x6c, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, + 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, + 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x1a, 0x3f, 0x0a, 0x11, + 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, + 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xe3, 0x04, + 0x0a, 0x17, 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x50, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, + 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, + 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, + 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, + 0x03, 0x74, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, + 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, + 0x66, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, + 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, + 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x12, 0x5c, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, + 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, + 0x44, 0x42, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, + 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, + 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x65, 0x78, + 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, + 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, 0x68, 0x12, 0x33, + 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x16, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, + 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, + 0x76, 0x65, 0x6c, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, + 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3a, 0x02, 0x38, 0x01, 0x4a, 0x04, 0x08, 0x08, 0x10, 0x09, 0x52, 0x17, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x5f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x22, 0x8c, 0x05, 0x0a, 0x1e, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, + 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, + 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, + 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, + 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x18, 0x64, 0x69, + 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x70, + 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x64, 0x69, + 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x50, 0x61, 0x72, + 0x73, 0x69, 0x6e, 0x67, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, + 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x10, + 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, + 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, + 0x69, 0x66, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, + 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x63, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x3e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, + 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, + 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x43, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, + 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x31, 0x0a, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, + 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x67, 0x65, + 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x65, 0x78, 0x65, 0x63, + 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, + 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, 0x68, 0x12, 0x33, 0x0a, 0x09, + 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, + 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, + 0x6c, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, + 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, + 0x38, 0x01, 0x22, 0xc6, 0x05, 0x0a, 0x1f, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, + 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, + 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, + 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, + 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, + 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, + 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, + 0x72, 0x69, 0x66, 0x79, 0x12, 0x38, 0x0a, 0x18, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x70, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x50, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x12, 0x28, + 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x36, 0x0a, 0x17, 0x71, 0x75, 0x65, 0x72, + 0x79, 0x5f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, + 0x12, 0x64, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, + 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, + 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, + 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, + 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, + 0x63, 0x65, 0x73, 0x73, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, 0x68, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, - 0x65, 0x6c, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, + 0x65, 0x6c, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, - 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x30, 0x0a, 0x14, 0x61, 0x75, - 0x74, 0x6f, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x69, 0x6d, - 0x69, 0x74, 0x18, 0x18, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x61, 0x75, 0x74, 0x6f, 0x44, 0x69, - 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x27, 0x0a, 0x0f, - 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, - 0x19, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x45, 0x78, 0x70, - 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, - 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, - 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xb9, 0x05, 0x0a, 0x10, 0x50, 0x72, 0x6f, 0x78, 0x79, - 0x53, 0x51, 0x4c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x61, + 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, + 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, + 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xc3, 0x05, 0x0a, 0x0b, + 0x52, 0x44, 0x53, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x24, 0x0a, + 0x0e, 0x61, 0x77, 0x73, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x77, 0x73, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x4b, 0x65, 0x79, 0x12, 0x50, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x69, 0x6e, 0x76, + 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x44, 0x53, 0x45, 0x78, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x72, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, + 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, + 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, + 0x65, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, + 0x69, 0x73, 0x74, 0x65, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x34, 0x0a, 0x16, 0x62, 0x61, 0x73, + 0x69, 0x63, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x62, 0x61, 0x73, 0x69, 0x63, + 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, + 0x3a, 0x0a, 0x19, 0x65, 0x6e, 0x68, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x74, 0x72, + 0x69, 0x63, 0x73, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x15, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x17, 0x65, 0x6e, 0x68, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x4d, 0x65, 0x74, 0x72, + 0x69, 0x63, 0x73, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x70, + 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x65, 0x6e, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x70, 0x75, 0x73, 0x68, 0x4d, + 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2a, 0x0a, + 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, + 0x74, 0x68, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, + 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, 0x68, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, + 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, + 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, + 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x30, + 0x0a, 0x14, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, + 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x19, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x61, 0x75, + 0x74, 0x6f, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x4c, 0x69, 0x6d, 0x69, 0x74, + 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, + 0x01, 0x22, 0xfd, 0x03, 0x0a, 0x10, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, + 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x25, 0x0a, 0x0f, 0x72, 0x75, 0x6e, 0x73, 0x5f, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x64, + 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x75, 0x6e, 0x73, + 0x4f, 0x6e, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, - 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, - 0x72, 0x69, 0x66, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, - 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x55, 0x0a, 0x0d, 0x63, 0x75, 0x73, - 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x30, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, - 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, - 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, - 0x12, 0x30, 0x0a, 0x14, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, - 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, - 0x70, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, - 0x65, 0x64, 0x12, 0x2f, 0x0a, 0x13, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x63, - 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x12, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, - 0x6f, 0x72, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x14, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, - 0x76, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, - 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, - 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, - 0x74, 0x65, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, - 0x73, 0x73, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x16, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, - 0x61, 0x74, 0x68, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, - 0x18, 0x17, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, - 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, - 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x6f, - 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x18, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, - 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x22, 0x81, 0x06, 0x0a, 0x17, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x50, - 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x19, - 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, - 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, - 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, - 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, - 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, - 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, - 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x15, 0x0a, 0x06, - 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, - 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, - 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x6c, 0x73, 0x43, 0x65, 0x72, 0x74, 0x12, 0x17, - 0x0a, 0x07, 0x74, 0x6c, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x74, 0x6c, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x38, 0x0a, 0x18, 0x64, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x70, 0x61, 0x72, 0x73, - 0x69, 0x6e, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x50, 0x61, 0x72, 0x73, 0x69, 0x6e, - 0x67, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, - 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, - 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x36, 0x0a, 0x17, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x5f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x5f, 0x64, 0x69, - 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x44, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x12, 0x5c, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, - 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x69, 0x6e, 0x76, - 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, - 0x51, 0x4c, 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, + 0x16, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x74, 0x72, 0x69, + 0x63, 0x73, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, + 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x50, 0x61, 0x74, 0x68, 0x12, 0x55, 0x0a, 0x0d, 0x63, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, + 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x72, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, - 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, - 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, - 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x50, 0x6f, + 0x72, 0x74, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, + 0x63, 0x73, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x12, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x45, 0x6e, 0x61, + 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, + 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, 0x68, - 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x16, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, - 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, - 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, - 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, - 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xae, 0x06, 0x0a, 0x14, 0x51, 0x41, 0x4e, 0x4d, 0x79, - 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, - 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6d, - 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, - 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, - 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, - 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, - 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, - 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, - 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x15, 0x0a, - 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, - 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x6c, 0x73, 0x43, 0x65, 0x72, 0x74, 0x12, - 0x17, 0x0a, 0x07, 0x74, 0x6c, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x74, 0x6c, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x38, 0x0a, 0x18, 0x64, 0x69, 0x73, 0x61, - 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x70, 0x61, 0x72, - 0x73, 0x69, 0x6e, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x64, 0x69, 0x73, 0x61, - 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x50, 0x61, 0x72, 0x73, 0x69, - 0x6e, 0x67, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, - 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, - 0x78, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x36, 0x0a, 0x17, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x5f, 0x64, - 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x44, 0x69, 0x73, 0x61, - 0x62, 0x6c, 0x65, 0x64, 0x12, 0x31, 0x0a, 0x15, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x6c, 0x6f, 0x77, - 0x6c, 0x6f, 0x67, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x0e, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x46, - 0x69, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x59, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, - 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, - 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, - 0x6c, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x14, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, - 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, - 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, + 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, + 0x01, 0x22, 0x93, 0x05, 0x0a, 0x15, 0x41, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, + 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x61, + 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, + 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, + 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6d, + 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x43, 0x0a, + 0x1e, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, + 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1b, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, + 0x62, 0x61, 0x73, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x49, 0x64, 0x12, 0x3f, 0x0a, 0x1c, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, + 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x19, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x44, + 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x5a, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x69, 0x6e, 0x76, + 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x7a, 0x75, 0x72, 0x65, 0x44, + 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x2e, + 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, + 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x5f, 0x70, 0x6f, 0x72, + 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x50, + 0x6f, 0x72, 0x74, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, + 0x69, 0x63, 0x73, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x12, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x45, 0x6e, + 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, + 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, - 0x68, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x16, + 0x68, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xe3, 0x04, 0x0a, 0x17, 0x51, 0x41, 0x4e, 0x4d, + 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xdd, 0x01, 0x0a, 0x17, 0x43, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, + 0x61, 0x6d, 0x73, 0x12, 0x1b, 0x0a, 0x06, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x06, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x88, 0x01, 0x01, + 0x12, 0x3b, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4d, 0x61, 0x70, 0x48, 0x01, 0x52, 0x0c, 0x63, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x88, 0x01, 0x01, 0x12, 0x33, 0x0a, + 0x13, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, + 0x72, 0x69, 0x63, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x02, 0x52, 0x11, 0x65, 0x6e, + 0x61, 0x62, 0x6c, 0x65, 0x50, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x88, + 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x10, 0x0a, + 0x0e, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x42, + 0x16, 0x0a, 0x14, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x5f, + 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x22, 0xa5, 0x01, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, + 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x17, 0x0a, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, + 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x36, 0x0a, 0x0a, 0x61, 0x67, 0x65, 0x6e, 0x74, + 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x69, 0x6e, + 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, + 0xe7, 0x09, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x09, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, + 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x52, 0x08, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x30, 0x0a, 0x08, 0x76, + 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, + 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x4d, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x76, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x3f, 0x0a, + 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x03, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, + 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, + 0x52, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x45, + 0x0a, 0x0f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x64, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x72, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x64, 0x45, 0x78, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x0e, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x64, 0x45, 0x78, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x48, 0x0a, 0x10, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, + 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x1d, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4d, + 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x0f, + 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, + 0x4b, 0x0a, 0x11, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, + 0x72, 0x74, 0x65, 0x72, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x76, + 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, + 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x10, 0x70, 0x6f, 0x73, 0x74, + 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x4b, 0x0a, 0x11, + 0x70, 0x72, 0x6f, 0x78, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x72, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 0x45, + 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x10, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x73, 0x71, + 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x62, 0x0a, 0x1a, 0x71, 0x61, 0x6e, + 0x5f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x70, 0x65, 0x72, 0x66, 0x73, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, + 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, + 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x52, 0x17, 0x71, 0x61, 0x6e, 0x4d, 0x79, 0x73, 0x71, 0x6c, 0x50, 0x65, + 0x72, 0x66, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x59, 0x0a, + 0x17, 0x71, 0x61, 0x6e, 0x5f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x73, 0x6c, 0x6f, 0x77, 0x6c, + 0x6f, 0x67, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, + 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, + 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, + 0x6e, 0x74, 0x52, 0x14, 0x71, 0x61, 0x6e, 0x4d, 0x79, 0x73, 0x71, 0x6c, 0x53, 0x6c, 0x6f, 0x77, + 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x62, 0x0a, 0x1a, 0x71, 0x61, 0x6e, 0x5f, + 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, + 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, + 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, - 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, - 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, - 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, - 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, - 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, - 0x79, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, - 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, - 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x5c, 0x0a, 0x0d, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0a, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, - 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x50, 0x72, 0x6f, 0x66, - 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, - 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x11, - 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, - 0x68, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, - 0x45, 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, 0x68, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, - 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, - 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, - 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x1a, 0x3f, 0x0a, - 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x4a, 0x04, - 0x08, 0x08, 0x10, 0x09, 0x52, 0x17, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x65, 0x78, 0x61, 0x6d, - 0x70, 0x6c, 0x65, 0x73, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x8c, 0x05, - 0x0a, 0x1e, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, - 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x70, - 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, - 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x18, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, - 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x70, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, - 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x50, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x12, 0x28, - 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, - 0x74, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, - 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, - 0x66, 0x79, 0x12, 0x63, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, - 0x65, 0x6c, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x69, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, - 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, - 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, - 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, - 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, - 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, - 0x65, 0x63, 0x50, 0x61, 0x74, 0x68, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, - 0x76, 0x65, 0x6c, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, - 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x1a, 0x3f, 0x0a, 0x11, 0x43, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, - 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, - 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xc6, 0x05, 0x0a, - 0x1f, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, - 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x70, - 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, - 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, - 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x38, - 0x0a, 0x18, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x74, 0x73, 0x5f, 0x70, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, - 0x73, 0x50, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x09, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x65, 0x6e, 0x67, - 0x74, 0x68, 0x12, 0x36, 0x0a, 0x17, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x65, 0x78, 0x61, 0x6d, - 0x70, 0x6c, 0x65, 0x73, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x15, 0x71, 0x75, 0x65, 0x72, 0x79, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, - 0x65, 0x73, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x64, 0x0a, 0x0d, 0x63, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x3f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, + 0x65, 0x6e, 0x74, 0x52, 0x17, 0x71, 0x61, 0x6e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x50, + 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x77, 0x0a, 0x21, + 0x71, 0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x5f, 0x70, + 0x67, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x61, 0x67, 0x65, 0x6e, + 0x74, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, + 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x1e, 0x71, 0x61, 0x6e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, + 0x65, 0x73, 0x71, 0x6c, 0x50, 0x67, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x7a, 0x0a, 0x22, 0x71, 0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x73, + 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x5f, 0x70, 0x67, 0x73, 0x74, 0x61, 0x74, 0x6d, 0x6f, + 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x2d, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, - 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x65, - 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, - 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, 0x68, 0x12, - 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x16, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, - 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, - 0x65, 0x76, 0x65, 0x6c, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, - 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xc3, 0x05, 0x0a, 0x0b, 0x52, 0x44, 0x53, 0x45, 0x78, 0x70, - 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x17, - 0x0a, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x77, 0x73, 0x5f, 0x61, - 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0c, 0x61, 0x77, 0x73, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x50, 0x0a, - 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x06, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x44, 0x53, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x2e, - 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, - 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x5f, 0x70, 0x6f, 0x72, - 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x50, - 0x6f, 0x72, 0x74, 0x12, 0x34, 0x0a, 0x16, 0x62, 0x61, 0x73, 0x69, 0x63, 0x5f, 0x6d, 0x65, 0x74, - 0x72, 0x69, 0x63, 0x73, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x14, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x14, 0x62, 0x61, 0x73, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, - 0x73, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x3a, 0x0a, 0x19, 0x65, 0x6e, 0x68, - 0x61, 0x6e, 0x63, 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x64, 0x69, - 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x65, 0x6e, - 0x68, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x69, 0x73, - 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, - 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x16, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x12, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, - 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, - 0x73, 0x73, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x17, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, - 0x61, 0x74, 0x68, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, - 0x18, 0x18, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, - 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, - 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x30, 0x0a, 0x14, 0x61, 0x75, 0x74, 0x6f, - 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, - 0x18, 0x19, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x61, 0x75, 0x74, 0x6f, 0x44, 0x69, 0x73, 0x63, - 0x6f, 0x76, 0x65, 0x72, 0x79, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, - 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, - 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xfd, 0x03, 0x0a, 0x10, + 0x52, 0x1f, 0x71, 0x61, 0x6e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x50, + 0x67, 0x73, 0x74, 0x61, 0x74, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x12, 0x4b, 0x0a, 0x11, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x65, 0x78, + 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, + 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x78, 0x74, 0x65, + 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x10, 0x65, 0x78, + 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x3c, + 0x0a, 0x0c, 0x72, 0x64, 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x0e, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, + 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x44, 0x53, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, + 0x0b, 0x72, 0x64, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x5b, 0x0a, 0x17, + 0x61, 0x7a, 0x75, 0x72, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x65, + 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, + 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x7a, 0x75, + 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, + 0x65, 0x72, 0x52, 0x15, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, + 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x22, 0x35, 0x0a, 0x0f, 0x47, 0x65, 0x74, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x08, + 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, + 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x22, 0x8b, 0x0a, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x09, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, + 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, + 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x48, 0x00, 0x52, 0x08, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x07, + 0x76, 0x6d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, + 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x4d, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x07, 0x76, 0x6d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x12, + 0x41, 0x0a, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, + 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, + 0x65, 0x72, 0x48, 0x00, 0x52, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, + 0x65, 0x72, 0x12, 0x47, 0x0a, 0x0f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x64, 0x5f, 0x65, 0x78, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x69, 0x6e, + 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x79, 0x53, 0x51, 0x4c, + 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0e, 0x6d, 0x79, 0x73, + 0x71, 0x6c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x4a, 0x0a, 0x10, 0x6d, + 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x45, 0x78, 0x70, 0x6f, + 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0f, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x45, + 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x11, 0x70, 0x6f, 0x73, 0x74, 0x67, + 0x72, 0x65, 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, + 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, + 0x65, 0x72, 0x48, 0x00, 0x52, 0x10, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, + 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x73, + 0x71, 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, + 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x72, 0x48, 0x00, 0x52, 0x10, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x73, 0x71, 0x6c, 0x45, 0x78, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x64, 0x0a, 0x1a, 0x71, 0x61, 0x6e, 0x5f, 0x6d, 0x79, 0x73, + 0x71, 0x6c, 0x5f, 0x70, 0x65, 0x72, 0x66, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x61, 0x67, + 0x65, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, + 0x4c, 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x48, 0x00, 0x52, 0x17, 0x71, 0x61, 0x6e, 0x4d, 0x79, 0x73, 0x71, 0x6c, 0x50, 0x65, 0x72, 0x66, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x5b, 0x0a, 0x17, 0x71, + 0x61, 0x6e, 0x5f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x73, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, + 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x69, + 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, + 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x48, 0x00, 0x52, 0x14, 0x71, 0x61, 0x6e, 0x4d, 0x79, 0x73, 0x71, 0x6c, 0x53, 0x6c, 0x6f, 0x77, + 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x64, 0x0a, 0x1a, 0x71, 0x61, 0x6e, 0x5f, + 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, + 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, + 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, + 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, + 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x17, 0x71, 0x61, 0x6e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, + 0x62, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x79, + 0x0a, 0x21, 0x71, 0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, + 0x5f, 0x70, 0x67, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x61, 0x67, + 0x65, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x69, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, + 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x1e, 0x71, 0x61, 0x6e, 0x50, 0x6f, + 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x50, 0x67, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x7c, 0x0a, 0x22, 0x71, 0x61, 0x6e, + 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x5f, 0x70, 0x67, 0x73, 0x74, + 0x61, 0x74, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, + 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, + 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x1f, 0x71, 0x61, 0x6e, 0x50, 0x6f, 0x73, 0x74, 0x67, + 0x72, 0x65, 0x73, 0x71, 0x6c, 0x50, 0x67, 0x73, 0x74, 0x61, 0x74, 0x6d, 0x6f, 0x6e, 0x69, 0x74, + 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x4d, 0x0a, 0x11, 0x65, 0x78, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x0d, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, + 0x31, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, + 0x65, 0x72, 0x48, 0x00, 0x52, 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, + 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x3e, 0x0a, 0x0c, 0x72, 0x64, 0x73, 0x5f, 0x65, 0x78, + 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x69, + 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x44, 0x53, 0x45, + 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0b, 0x72, 0x64, 0x73, 0x45, 0x78, + 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x5d, 0x0a, 0x17, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x5f, + 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x72, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, + 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x15, + 0x61, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x72, 0x42, 0x07, 0x0a, 0x05, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x22, 0x4f, + 0x0a, 0x13, 0x47, 0x65, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, + 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, + 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, + 0x6a, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x12, 0x3e, 0x0a, 0x1c, 0x61, + 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, + 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x18, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4c, 0x6f, + 0x67, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xd7, 0x0a, 0x0a, 0x0f, + 0x41, 0x64, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x3e, 0x0a, 0x09, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, + 0x31, 0x2e, 0x41, 0x64, 0x64, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, + 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x08, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, + 0x4a, 0x0a, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, + 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x0c, 0x6e, + 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x50, 0x0a, 0x0f, 0x6d, + 0x79, 0x73, 0x71, 0x6c, 0x64, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, + 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x64, 0x45, 0x78, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x0e, 0x6d, + 0x79, 0x73, 0x71, 0x6c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x53, 0x0a, + 0x10, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, + 0x42, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, + 0x00, 0x52, 0x0f, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, + 0x65, 0x72, 0x12, 0x56, 0x0a, 0x11, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x5f, 0x65, + 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, + 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, + 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x10, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, + 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x56, 0x0a, 0x11, 0x70, 0x72, + 0x6f, 0x78, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, + 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, + 0x52, 0x10, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x73, 0x71, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, + 0x65, 0x72, 0x12, 0x56, 0x0a, 0x11, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x65, + 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, + 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, - 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0f, 0x72, - 0x75, 0x6e, 0x73, 0x5f, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x75, 0x6e, 0x73, 0x4f, 0x6e, 0x4e, 0x6f, 0x64, 0x65, - 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1d, - 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, - 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x68, - 0x65, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, - 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x70, 0x61, 0x74, - 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, - 0x50, 0x61, 0x74, 0x68, 0x12, 0x55, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, - 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, 0x6e, - 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, - 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x2e, 0x43, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, - 0x69, 0x73, 0x74, 0x65, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x30, 0x0a, 0x14, - 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x65, 0x6e, 0x61, - 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x70, 0x75, 0x73, 0x68, - 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2a, - 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, - 0x61, 0x74, 0x68, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, - 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, 0x68, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, - 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, - 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x93, 0x05, 0x0a, 0x15, - 0x41, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, - 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x17, - 0x0a, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x43, 0x0a, 0x1e, 0x61, 0x7a, 0x75, 0x72, 0x65, - 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, - 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x1b, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x53, 0x75, - 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x3f, 0x0a, 0x1c, - 0x61, 0x7a, 0x75, 0x72, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x19, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, - 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x5a, 0x0a, - 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, - 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, - 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x0b, - 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x30, 0x0a, - 0x14, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x65, 0x6e, - 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x70, 0x75, 0x73, - 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, - 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, - 0x70, 0x61, 0x74, 0x68, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, - 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, 0x68, 0x12, 0x33, 0x0a, 0x09, 0x6c, - 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, - 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, - 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, - 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, - 0x01, 0x22, 0xfe, 0x02, 0x0a, 0x17, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x16, 0x0a, - 0x06, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x65, - 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x12, - 0x5c, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, - 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x43, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, - 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x30, 0x0a, - 0x14, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, - 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x72, 0x65, 0x6d, - 0x6f, 0x76, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, - 0x2e, 0x0a, 0x13, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, - 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x65, 0x6e, - 0x61, 0x62, 0x6c, 0x65, 0x50, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, - 0x30, 0x0a, 0x14, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x70, 0x75, 0x73, 0x68, 0x5f, - 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x64, - 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, - 0x73, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, - 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x22, 0xa5, 0x01, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, - 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x6e, 0x6f, - 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6e, 0x6f, 0x64, - 0x65, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, - 0x49, 0x64, 0x12, 0x36, 0x0a, 0x0a, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, - 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, - 0x09, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0xe7, 0x09, 0x0a, 0x12, 0x4c, - 0x69, 0x73, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x33, 0x0a, 0x09, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x70, 0x6d, - 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x30, 0x0a, 0x08, 0x76, 0x6d, 0x5f, 0x61, 0x67, 0x65, - 0x6e, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, - 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, - 0x07, 0x76, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x3f, 0x0a, 0x0d, 0x6e, 0x6f, 0x64, 0x65, - 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x1a, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4e, - 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x0c, 0x6e, 0x6f, 0x64, - 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x45, 0x0a, 0x0f, 0x6d, 0x79, 0x73, - 0x71, 0x6c, 0x64, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, - 0x31, 0x2e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, - 0x52, 0x0e, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, - 0x12, 0x48, 0x0a, 0x10, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x5f, 0x65, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x69, 0x6e, 0x76, - 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, - 0x42, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x0f, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, - 0x64, 0x62, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x4b, 0x0a, 0x11, 0x70, 0x6f, - 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, - 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, - 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, - 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x10, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x4b, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x78, 0x79, - 0x73, 0x71, 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x07, 0x20, 0x03, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, + 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x47, 0x0a, 0x0c, 0x72, 0x64, + 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x22, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, + 0x41, 0x64, 0x64, 0x52, 0x44, 0x53, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, + 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x0b, 0x72, 0x64, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, + 0x74, 0x65, 0x72, 0x12, 0x66, 0x0a, 0x17, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x5f, 0x64, 0x61, 0x74, + 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, + 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x41, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, + 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x48, 0x00, 0x52, 0x15, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, + 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x6d, 0x0a, 0x1a, 0x71, + 0x61, 0x6e, 0x5f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x70, 0x65, 0x72, 0x66, 0x73, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x2e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, + 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, + 0x00, 0x52, 0x17, 0x71, 0x61, 0x6e, 0x4d, 0x79, 0x73, 0x71, 0x6c, 0x50, 0x65, 0x72, 0x66, 0x73, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x64, 0x0a, 0x17, 0x71, 0x61, + 0x6e, 0x5f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x73, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x5f, + 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x69, 0x6e, + 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x51, 0x41, + 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, + 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x14, 0x71, 0x61, 0x6e, 0x4d, + 0x79, 0x73, 0x71, 0x6c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x12, 0x6d, 0x0a, 0x1a, 0x71, 0x61, 0x6e, 0x5f, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x5f, + 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0c, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, + 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, + 0x42, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, + 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x17, 0x71, 0x61, 0x6e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, + 0x64, 0x62, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, + 0x82, 0x01, 0x0a, 0x21, 0x71, 0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, + 0x71, 0x6c, 0x5f, 0x70, 0x67, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, + 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x69, 0x6e, + 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x51, 0x41, + 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, + 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x48, 0x00, 0x52, 0x1e, 0x71, 0x61, 0x6e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, + 0x73, 0x71, 0x6c, 0x50, 0x67, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x12, 0x85, 0x01, 0x0a, 0x22, 0x71, 0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x73, + 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x5f, 0x70, 0x67, 0x73, 0x74, 0x61, 0x74, 0x6d, 0x6f, + 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x36, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, + 0x2e, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, + 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, + 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x1f, 0x71, 0x61, 0x6e, + 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x50, 0x67, 0x73, 0x74, 0x61, 0x74, + 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x42, 0x07, 0x0a, 0x05, + 0x61, 0x67, 0x65, 0x6e, 0x74, 0x22, 0xd8, 0x09, 0x0a, 0x10, 0x41, 0x64, 0x64, 0x41, 0x67, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x09, 0x70, 0x6d, + 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, + 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x4d, 0x4d, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x08, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x12, 0x41, 0x0a, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, + 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, + 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, + 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, + 0x72, 0x74, 0x65, 0x72, 0x12, 0x47, 0x0a, 0x0f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x64, 0x5f, 0x65, + 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, + 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x79, 0x53, + 0x51, 0x4c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0e, 0x6d, + 0x79, 0x73, 0x71, 0x6c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x4a, 0x0a, + 0x10, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x45, 0x78, + 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0f, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, + 0x62, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x11, 0x70, 0x6f, 0x73, + 0x74, 0x67, 0x72, 0x65, 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, + 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, + 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x10, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, + 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x78, + 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, + 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 0x45, 0x78, 0x70, 0x6f, 0x72, + 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x10, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x73, 0x71, 0x6c, 0x45, + 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x11, 0x65, 0x78, 0x74, 0x65, 0x72, + 0x6e, 0x61, 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, - 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x72, 0x52, 0x10, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x73, 0x71, 0x6c, 0x45, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x12, 0x62, 0x0a, 0x1a, 0x71, 0x61, 0x6e, 0x5f, 0x6d, 0x79, 0x73, 0x71, - 0x6c, 0x5f, 0x70, 0x65, 0x72, 0x66, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x61, 0x67, 0x65, - 0x6e, 0x74, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, - 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, - 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, - 0x17, 0x71, 0x61, 0x6e, 0x4d, 0x79, 0x73, 0x71, 0x6c, 0x50, 0x65, 0x72, 0x66, 0x73, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x59, 0x0a, 0x17, 0x71, 0x61, 0x6e, 0x5f, - 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x73, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x5f, 0x61, 0x67, - 0x65, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x69, 0x6e, 0x76, 0x65, + 0x31, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, + 0x65, 0x72, 0x48, 0x00, 0x52, 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, + 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x3e, 0x0a, 0x0c, 0x72, 0x64, 0x73, 0x5f, 0x65, 0x78, + 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x69, + 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x44, 0x53, 0x45, + 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0b, 0x72, 0x64, 0x73, 0x45, 0x78, + 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x5d, 0x0a, 0x17, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x5f, + 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, + 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x15, + 0x61, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x64, 0x0a, 0x1a, 0x71, 0x61, 0x6e, 0x5f, 0x6d, 0x79, 0x73, + 0x71, 0x6c, 0x5f, 0x70, 0x65, 0x72, 0x66, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x61, 0x67, + 0x65, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, - 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x14, 0x71, - 0x61, 0x6e, 0x4d, 0x79, 0x73, 0x71, 0x6c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x12, 0x62, 0x0a, 0x1a, 0x71, 0x61, 0x6e, 0x5f, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, - 0x64, 0x62, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x5f, 0x61, 0x67, 0x65, 0x6e, - 0x74, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, - 0x42, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x17, - 0x71, 0x61, 0x6e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, - 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x77, 0x0a, 0x21, 0x71, 0x61, 0x6e, 0x5f, 0x70, - 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x5f, 0x70, 0x67, 0x73, 0x74, 0x61, 0x74, - 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, - 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, - 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x4c, 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x48, 0x00, 0x52, 0x17, 0x71, 0x61, 0x6e, 0x4d, 0x79, 0x73, 0x71, 0x6c, 0x50, 0x65, 0x72, 0x66, + 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x5b, 0x0a, 0x17, 0x71, + 0x61, 0x6e, 0x5f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x73, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, + 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x69, + 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, + 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x48, 0x00, 0x52, 0x14, 0x71, 0x61, 0x6e, 0x4d, 0x79, 0x73, 0x71, 0x6c, 0x53, 0x6c, 0x6f, 0x77, + 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x64, 0x0a, 0x1a, 0x71, 0x61, 0x6e, 0x5f, + 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, + 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, + 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, + 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, + 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x17, 0x71, 0x61, 0x6e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, + 0x62, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x79, + 0x0a, 0x21, 0x71, 0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, + 0x5f, 0x70, 0x67, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x61, 0x67, + 0x65, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x69, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, + 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x1e, 0x71, 0x61, 0x6e, 0x50, 0x6f, + 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x50, 0x67, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x7c, 0x0a, 0x22, 0x71, 0x61, 0x6e, + 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x5f, 0x70, 0x67, 0x73, 0x74, + 0x61, 0x74, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, + 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, + 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x1f, 0x71, 0x61, 0x6e, 0x50, 0x6f, 0x73, 0x74, 0x67, + 0x72, 0x65, 0x73, 0x71, 0x6c, 0x50, 0x67, 0x73, 0x74, 0x61, 0x74, 0x6d, 0x6f, 0x6e, 0x69, 0x74, + 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x61, 0x67, 0x65, 0x6e, 0x74, + 0x22, 0xc1, 0x0a, 0x0a, 0x12, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4d, 0x0a, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x5f, + 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, + 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, + 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x45, 0x78, + 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x53, 0x0a, 0x0f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x64, + 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x28, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, + 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x0e, 0x6d, 0x79, 0x73, + 0x71, 0x6c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x56, 0x0a, 0x10, 0x6d, + 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, + 0x44, 0x42, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, + 0x48, 0x00, 0x52, 0x0f, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x45, 0x78, 0x70, 0x6f, 0x72, + 0x74, 0x65, 0x72, 0x12, 0x59, 0x0a, 0x11, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x5f, + 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, + 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, + 0x61, 0x6e, 0x67, 0x65, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, + 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x10, 0x70, 0x6f, + 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x59, + 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, + 0x74, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x69, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, + 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, + 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x10, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x73, 0x71, + 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x59, 0x0a, 0x11, 0x65, 0x78, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, + 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, + 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, + 0x48, 0x00, 0x52, 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, + 0x72, 0x74, 0x65, 0x72, 0x12, 0x4a, 0x0a, 0x0c, 0x72, 0x64, 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, + 0x72, 0x74, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, + 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x52, 0x44, 0x53, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, + 0x73, 0x48, 0x00, 0x52, 0x0b, 0x72, 0x64, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, + 0x12, 0x69, 0x0a, 0x17, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, + 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x2f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, + 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x41, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, + 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x48, 0x00, 0x52, 0x15, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, + 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x70, 0x0a, 0x1a, 0x71, + 0x61, 0x6e, 0x5f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x70, 0x65, 0x72, 0x66, 0x73, 0x63, 0x68, + 0x65, 0x6d, 0x61, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x31, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x50, 0x65, 0x72, + 0x66, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x48, 0x00, 0x52, 0x17, 0x71, 0x61, 0x6e, 0x4d, 0x79, 0x73, 0x71, 0x6c, 0x50, 0x65, + 0x72, 0x66, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x67, 0x0a, + 0x17, 0x71, 0x61, 0x6e, 0x5f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x73, 0x6c, 0x6f, 0x77, 0x6c, + 0x6f, 0x67, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, + 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, + 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, + 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, + 0x52, 0x14, 0x71, 0x61, 0x6e, 0x4d, 0x79, 0x73, 0x71, 0x6c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, + 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x70, 0x0a, 0x1a, 0x71, 0x61, 0x6e, 0x5f, 0x6d, 0x6f, + 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x5f, 0x61, + 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x69, 0x6e, 0x76, + 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, + 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, + 0x17, 0x71, 0x61, 0x6e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x50, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x85, 0x01, 0x0a, 0x21, 0x71, 0x61, 0x6e, + 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x5f, 0x70, 0x67, 0x73, 0x74, + 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0d, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, + 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, + 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x1e, 0x71, 0x61, 0x6e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x50, 0x67, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x12, 0x7a, 0x0a, 0x22, 0x71, 0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, - 0x71, 0x6c, 0x5f, 0x70, 0x67, 0x73, 0x74, 0x61, 0x74, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, - 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x69, - 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x50, - 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x4d, - 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x1f, 0x71, 0x61, 0x6e, - 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x50, 0x67, 0x73, 0x74, 0x61, 0x74, - 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x4b, 0x0a, 0x11, - 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, - 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x3c, 0x0a, 0x0c, 0x72, 0x64, 0x73, - 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x52, - 0x44, 0x53, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x0b, 0x72, 0x64, 0x73, 0x45, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x5b, 0x0a, 0x17, 0x61, 0x7a, 0x75, 0x72, 0x65, - 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x72, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, - 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, - 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x15, 0x61, - 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x22, 0x35, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, - 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x8b, 0x0a, 0x0a, 0x10, - 0x47, 0x65, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x35, 0x0a, 0x09, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, - 0x76, 0x31, 0x2e, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x08, 0x70, - 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x07, 0x76, 0x6d, 0x61, 0x67, 0x65, - 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, - 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, - 0x00, 0x52, 0x07, 0x76, 0x6d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x41, 0x0a, 0x0d, 0x6e, 0x6f, - 0x64, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1a, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, - 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, - 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x47, 0x0a, - 0x0f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x64, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, - 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x64, 0x45, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0e, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x64, 0x45, 0x78, - 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x4a, 0x0a, 0x10, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, - 0x62, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1d, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, - 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, - 0x00, 0x52, 0x0f, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x11, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x5f, 0x65, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, - 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x73, - 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, - 0x10, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x12, 0x4d, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x65, 0x78, - 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, - 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x78, - 0x79, 0x53, 0x51, 0x4c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x10, - 0x70, 0x72, 0x6f, 0x78, 0x79, 0x73, 0x71, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, + 0x12, 0x88, 0x01, 0x0a, 0x22, 0x71, 0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, + 0x73, 0x71, 0x6c, 0x5f, 0x70, 0x67, 0x73, 0x74, 0x61, 0x74, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, + 0x72, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, + 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, + 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, + 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x1f, 0x71, 0x61, 0x6e, 0x50, + 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x50, 0x67, 0x73, 0x74, 0x61, 0x74, 0x6d, + 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x61, + 0x67, 0x65, 0x6e, 0x74, 0x22, 0xa4, 0x09, 0x0a, 0x13, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x0d, + 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, + 0x76, 0x31, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, + 0x00, 0x52, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, + 0x47, 0x0a, 0x0f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x64, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, + 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, + 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x64, 0x45, 0x78, + 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0e, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x64, + 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x4a, 0x0a, 0x10, 0x6d, 0x6f, 0x6e, 0x67, + 0x6f, 0x64, 0x62, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, + 0x31, 0x2e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x72, 0x48, 0x00, 0x52, 0x0f, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x45, 0x78, 0x70, 0x6f, + 0x72, 0x74, 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x11, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, + 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x50, + 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, + 0x00, 0x52, 0x10, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, + 0x74, 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x73, 0x71, 0x6c, 0x5f, + 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, + 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, + 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, + 0x52, 0x10, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x73, 0x71, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, + 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x11, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x65, + 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, + 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x78, 0x74, + 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, + 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x72, 0x12, 0x3e, 0x0a, 0x0c, 0x72, 0x64, 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x44, 0x53, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, + 0x65, 0x72, 0x48, 0x00, 0x52, 0x0b, 0x72, 0x64, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x72, 0x12, 0x5d, 0x0a, 0x17, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, + 0x61, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, + 0x31, 0x2e, 0x41, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, + 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x15, 0x61, 0x7a, 0x75, 0x72, 0x65, + 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x64, 0x0a, 0x1a, 0x71, 0x61, 0x6e, 0x5f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x70, 0x65, - 0x72, 0x66, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x08, + 0x72, 0x66, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x17, 0x71, 0x61, 0x6e, 0x4d, 0x79, 0x73, 0x71, 0x6c, 0x50, 0x65, 0x72, 0x66, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x5b, 0x0a, 0x17, 0x71, 0x61, 0x6e, 0x5f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x73, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x5f, 0x61, 0x67, 0x65, 0x6e, - 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x14, 0x71, 0x61, 0x6e, 0x4d, 0x79, 0x73, 0x71, 0x6c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x64, 0x0a, 0x1a, 0x71, 0x61, 0x6e, 0x5f, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x5f, 0x61, 0x67, 0x65, 0x6e, - 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x17, 0x71, 0x61, 0x6e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x79, 0x0a, 0x21, 0x71, 0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x5f, 0x70, 0x67, 0x73, 0x74, - 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0b, + 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, @@ -8191,323 +8366,118 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 0x73, 0x71, 0x6c, 0x50, 0x67, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x7c, 0x0a, 0x22, 0x71, 0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x5f, 0x70, 0x67, 0x73, 0x74, 0x61, 0x74, 0x6d, 0x6f, 0x6e, - 0x69, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, + 0x69, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x1f, 0x71, 0x61, 0x6e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x50, 0x67, 0x73, 0x74, 0x61, 0x74, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x12, 0x4d, 0x0a, 0x11, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x65, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, - 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x78, 0x74, - 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, - 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x12, 0x3e, 0x0a, 0x0c, 0x72, 0x64, 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x44, 0x53, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x72, 0x48, 0x00, 0x52, 0x0b, 0x72, 0x64, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x12, 0x5d, 0x0a, 0x17, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, - 0x61, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x0f, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, - 0x31, 0x2e, 0x41, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x15, 0x61, 0x7a, 0x75, 0x72, 0x65, - 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, - 0x42, 0x07, 0x0a, 0x05, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x22, 0x4f, 0x0a, 0x13, 0x47, 0x65, 0x74, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x6a, 0x0a, 0x14, 0x47, 0x65, - 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x04, 0x6c, 0x6f, 0x67, 0x73, 0x12, 0x3e, 0x0a, 0x1c, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, - 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x73, - 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18, 0x61, 0x67, - 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4c, 0x6f, 0x67, 0x4c, 0x69, 0x6e, 0x65, - 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xdc, 0x01, 0x0a, 0x11, 0x41, 0x64, 0x64, 0x50, 0x4d, - 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x2e, 0x0a, 0x0f, - 0x72, 0x75, 0x6e, 0x73, 0x5f, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0c, - 0x72, 0x75, 0x6e, 0x73, 0x4f, 0x6e, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x56, 0x0a, 0x0d, - 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, - 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, - 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, - 0x62, 0x65, 0x6c, 0x73, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, - 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xda, 0x0a, 0x0a, 0x0f, 0x41, 0x64, 0x64, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3e, 0x0a, 0x09, 0x70, 0x6d, 0x6d, - 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x69, - 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x50, - 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, - 0x08, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x4a, 0x0a, 0x0d, 0x6e, 0x6f, 0x64, - 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, - 0x41, 0x64, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, - 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x50, 0x0a, 0x0f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x64, 0x5f, - 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, - 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, - 0x64, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x0e, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x64, 0x45, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x53, 0x0a, 0x10, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, - 0x64, 0x62, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x26, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, - 0x2e, 0x41, 0x64, 0x64, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x45, 0x78, 0x70, 0x6f, 0x72, - 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x0f, 0x6d, 0x6f, 0x6e, - 0x67, 0x6f, 0x64, 0x62, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x56, 0x0a, 0x11, - 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, - 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x48, 0x00, 0x52, 0x10, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x12, 0x56, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x73, 0x71, 0x6c, - 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x27, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, - 0x64, 0x64, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x10, 0x70, 0x72, 0x6f, 0x78, - 0x79, 0x73, 0x71, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x56, 0x0a, 0x11, - 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, - 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x48, 0x00, 0x52, 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x12, 0x47, 0x0a, 0x0c, 0x72, 0x64, 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x69, 0x6e, 0x76, - 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x52, 0x44, 0x53, - 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, - 0x52, 0x0b, 0x72, 0x64, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x66, 0x0a, - 0x17, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, - 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, - 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, - 0x64, 0x41, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, - 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x15, - 0x61, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, - 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x6d, 0x0a, 0x1a, 0x71, 0x61, 0x6e, 0x5f, 0x6d, 0x79, 0x73, - 0x71, 0x6c, 0x5f, 0x70, 0x65, 0x72, 0x66, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x61, 0x67, - 0x65, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x69, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, - 0x79, 0x53, 0x51, 0x4c, 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x17, 0x71, 0x61, 0x6e, - 0x4d, 0x79, 0x73, 0x71, 0x6c, 0x50, 0x65, 0x72, 0x66, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x12, 0x64, 0x0a, 0x17, 0x71, 0x61, 0x6e, 0x5f, 0x6d, 0x79, 0x73, 0x71, - 0x6c, 0x5f, 0x73, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, - 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, - 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, - 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x48, 0x00, 0x52, 0x14, 0x71, 0x61, 0x6e, 0x4d, 0x79, 0x73, 0x71, 0x6c, 0x53, 0x6c, - 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x6d, 0x0a, 0x1a, 0x71, 0x61, - 0x6e, 0x5f, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, - 0x65, 0x72, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, - 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, - 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x50, 0x72, 0x6f, 0x66, 0x69, - 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, - 0x52, 0x17, 0x71, 0x61, 0x6e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x50, 0x72, 0x6f, 0x66, - 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x82, 0x01, 0x0a, 0x21, 0x71, 0x61, - 0x6e, 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x5f, 0x70, 0x67, 0x73, - 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, - 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, - 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, - 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, - 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x1e, - 0x71, 0x61, 0x6e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x50, 0x67, 0x73, - 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x85, - 0x01, 0x0a, 0x22, 0x71, 0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, - 0x6c, 0x5f, 0x70, 0x67, 0x73, 0x74, 0x61, 0x74, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x5f, - 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x69, 0x6e, - 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x51, 0x41, - 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, - 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x48, 0x00, 0x52, 0x1f, 0x71, 0x61, 0x6e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, - 0x65, 0x73, 0x71, 0x6c, 0x50, 0x67, 0x73, 0x74, 0x61, 0x74, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, - 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x72, 0x22, 0xfc, 0x09, 0x0a, 0x10, 0x41, 0x64, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x09, 0x70, 0x6d, 0x6d, 0x5f, 0x61, - 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, - 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x48, 0x00, 0x52, 0x08, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x41, - 0x0a, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, - 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x48, 0x00, 0x52, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x12, 0x47, 0x0a, 0x0f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x64, 0x5f, 0x65, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x69, 0x6e, 0x76, - 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x64, - 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0e, 0x6d, 0x79, 0x73, 0x71, - 0x6c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x4a, 0x0a, 0x10, 0x6d, 0x6f, - 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x45, 0x78, 0x70, 0x6f, 0x72, - 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0f, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x45, 0x78, - 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x11, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, - 0x65, 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, - 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x48, 0x00, 0x52, 0x10, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, - 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x73, 0x71, - 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, - 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, - 0x48, 0x00, 0x52, 0x10, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x73, 0x71, 0x6c, 0x45, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x12, 0x4d, 0x0a, 0x11, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, - 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x45, - 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, - 0x00, 0x52, 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, - 0x74, 0x65, 0x72, 0x12, 0x3e, 0x0a, 0x0c, 0x72, 0x64, 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, - 0x74, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x44, 0x53, 0x45, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0b, 0x72, 0x64, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, - 0x74, 0x65, 0x72, 0x12, 0x5d, 0x0a, 0x17, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x5f, 0x64, 0x61, 0x74, - 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, - 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x15, 0x61, 0x7a, 0x75, - 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x72, 0x12, 0x64, 0x0a, 0x1a, 0x71, 0x61, 0x6e, 0x5f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x5f, - 0x70, 0x65, 0x72, 0x66, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, - 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x50, 0x65, - 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, - 0x17, 0x71, 0x61, 0x6e, 0x4d, 0x79, 0x73, 0x71, 0x6c, 0x50, 0x65, 0x72, 0x66, 0x73, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x5b, 0x0a, 0x17, 0x71, 0x61, 0x6e, 0x5f, - 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x73, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x5f, 0x61, 0x67, - 0x65, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x69, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, - 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, - 0x14, 0x71, 0x61, 0x6e, 0x4d, 0x79, 0x73, 0x71, 0x6c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x64, 0x0a, 0x1a, 0x71, 0x61, 0x6e, 0x5f, 0x6d, 0x6f, 0x6e, - 0x67, 0x6f, 0x64, 0x62, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x5f, 0x61, 0x67, - 0x65, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, 0x67, - 0x6f, 0x44, 0x42, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x48, 0x00, 0x52, 0x17, 0x71, 0x61, 0x6e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x50, 0x72, - 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x79, 0x0a, 0x21, 0x71, - 0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x5f, 0x70, 0x67, - 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, - 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, - 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, - 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x1e, 0x71, 0x61, 0x6e, 0x50, 0x6f, 0x73, 0x74, 0x67, - 0x72, 0x65, 0x73, 0x71, 0x6c, 0x50, 0x67, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, - 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x7c, 0x0a, 0x22, 0x71, 0x61, 0x6e, 0x5f, 0x70, 0x6f, - 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x5f, 0x70, 0x67, 0x73, 0x74, 0x61, 0x74, 0x6d, - 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, - 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, - 0x67, 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x48, 0x00, 0x52, 0x1f, 0x71, 0x61, 0x6e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, - 0x71, 0x6c, 0x50, 0x67, 0x73, 0x74, 0x61, 0x74, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x22, 0x8f, 0x03, 0x0a, 0x15, 0x41, 0x64, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, - 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x29, 0x0a, 0x0c, 0x70, - 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x5a, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, - 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, - 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, - 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, - 0x63, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x65, - 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x2d, 0x0a, 0x12, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, - 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x11, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, - 0x74, 0x6f, 0x72, 0x73, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, - 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, - 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x70, - 0x6f, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x72, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, - 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, - 0x02, 0x38, 0x01, 0x22, 0x7e, 0x0a, 0x19, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x64, - 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x22, 0x5d, 0x0a, 0x1a, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x64, - 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x3f, 0x0a, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, - 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x52, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x72, 0x22, 0x9d, 0x06, 0x0a, 0x17, 0x41, 0x64, 0x64, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x64, - 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x29, - 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, 0x70, - 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0a, 0x73, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, - 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, - 0x64, 0x12, 0x23, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x08, 0x75, 0x73, - 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, - 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, - 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, - 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, - 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x15, 0x0a, 0x06, - 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, - 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x6c, 0x73, 0x43, 0x65, 0x72, 0x74, 0x12, 0x17, - 0x0a, 0x07, 0x74, 0x6c, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x74, 0x6c, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x3f, 0x0a, 0x1c, 0x74, 0x61, 0x62, 0x6c, 0x65, - 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x74, 0x61, 0x62, 0x6c, - 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x19, 0x74, - 0x61, 0x62, 0x6c, 0x65, 0x73, 0x74, 0x61, 0x74, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x54, 0x61, - 0x62, 0x6c, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x5c, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x37, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, - 0x64, 0x64, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, - 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, - 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x63, - 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, - 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x73, 0x6b, 0x69, 0x70, 0x43, 0x6f, 0x6e, 0x6e, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x75, - 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0b, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x2d, 0x0a, - 0x12, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, - 0x6f, 0x72, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x64, 0x69, 0x73, 0x61, 0x62, - 0x6c, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x25, 0x0a, 0x0e, - 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x0f, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, - 0x6f, 0x72, 0x64, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, - 0x18, 0x10, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, - 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, - 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x6f, - 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x11, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, - 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x22, 0x80, 0x01, 0x0a, 0x1b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x79, 0x53, - 0x51, 0x4c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, - 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, - 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x22, 0x65, 0x0a, 0x1c, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4d, - 0x79, 0x53, 0x51, 0x4c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x0f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x64, 0x5f, - 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, - 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x79, - 0x53, 0x51, 0x4c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x0e, 0x6d, 0x79, - 0x73, 0x71, 0x6c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x22, 0xe9, 0x07, 0x0a, + 0x6e, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x22, 0xdc, 0x01, 0x0a, 0x11, + 0x41, 0x64, 0x64, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, + 0x73, 0x12, 0x2e, 0x0a, 0x0f, 0x72, 0x75, 0x6e, 0x73, 0x5f, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x64, + 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, + 0x02, 0x10, 0x01, 0x52, 0x0c, 0x72, 0x75, 0x6e, 0x73, 0x4f, 0x6e, 0x4e, 0x6f, 0x64, 0x65, 0x49, + 0x64, 0x12, 0x56, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, + 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x50, 0x4d, 0x4d, 0x41, 0x67, + 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, + 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, + 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x8f, 0x03, 0x0a, 0x15, 0x41, + 0x64, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, + 0x72, 0x61, 0x6d, 0x73, 0x12, 0x29, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, + 0x02, 0x10, 0x01, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x5a, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, + 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x43, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, + 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0b, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x2d, + 0x0a, 0x12, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, + 0x74, 0x6f, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x64, 0x69, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x33, 0x0a, + 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, + 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, + 0x65, 0x6c, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x65, 0x78, 0x70, + 0x6f, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x3f, 0x0a, 0x11, 0x43, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x7d, 0x0a, 0x18, + 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, + 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, + 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x06, + 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, + 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, + 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x22, 0x9d, 0x06, 0x0a, 0x17, + 0x41, 0x64, 0x64, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x29, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, + 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, + 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, + 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x08, 0x75, 0x73, + 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, + 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x74, + 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, + 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, + 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, + 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x74, 0x6c, 0x73, 0x43, 0x65, 0x72, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x6c, 0x73, 0x5f, 0x6b, + 0x65, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x6c, 0x73, 0x4b, 0x65, 0x79, + 0x12, 0x3f, 0x0a, 0x1c, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x67, + 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x19, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x74, 0x61, + 0x74, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x69, 0x6d, 0x69, + 0x74, 0x12, 0x5c, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, + 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x4d, 0x79, 0x53, 0x51, 0x4c, + 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, + 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, + 0x32, 0x0a, 0x15, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, + 0x73, 0x6b, 0x69, 0x70, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, + 0x65, 0x63, 0x6b, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, + 0x69, 0x63, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x75, 0x73, 0x68, 0x4d, + 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x2d, 0x0a, 0x12, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, + 0x65, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x0e, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x11, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, + 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x70, + 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, + 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x33, 0x0a, 0x09, + 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, + 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, + 0x6c, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, + 0x72, 0x74, 0x65, 0x72, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x6f, + 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, + 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, + 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x7f, 0x0a, 0x1a, 0x43, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, + 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, + 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3d, 0x0a, + 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, + 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, + 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x22, 0xe9, 0x07, 0x0a, 0x18, 0x41, 0x64, 0x64, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x29, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, @@ -8570,23 +8540,124 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x81, 0x01, 0x0a, 0x1c, 0x43, 0x68, 0x61, + 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x80, 0x01, 0x0a, 0x1b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, - 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, - 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3d, 0x0a, - 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, - 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x22, 0x69, 0x0a, 0x1d, - 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x45, 0x78, 0x70, - 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, - 0x10, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x45, 0x78, - 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x0f, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x45, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x22, 0x92, 0x06, 0x0a, 0x19, 0x41, 0x64, 0x64, 0x50, - 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, + 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, + 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x06, + 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, + 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, + 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, + 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x22, 0x92, 0x06, 0x0a, 0x19, + 0x41, 0x64, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, + 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x29, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, + 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, + 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, + 0x01, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x08, + 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, + 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x10, 0x0a, + 0x03, 0x74, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, + 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, + 0x66, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, + 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x5e, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, + 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, + 0x64, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, + 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x6b, 0x69, 0x70, 0x5f, + 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x73, 0x6b, 0x69, 0x70, 0x43, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x21, 0x0a, 0x0c, 0x70, + 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0b, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x2d, + 0x0a, 0x12, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, + 0x74, 0x6f, 0x72, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x64, 0x69, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x15, 0x0a, + 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, + 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, + 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x6c, 0x73, 0x43, 0x65, 0x72, 0x74, 0x12, + 0x17, 0x0a, 0x07, 0x74, 0x6c, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x74, 0x6c, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x67, 0x65, 0x6e, + 0x74, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, + 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0f, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, + 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, + 0x65, 0x76, 0x65, 0x6c, 0x12, 0x30, 0x0a, 0x14, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x64, 0x69, 0x73, + 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x10, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x12, 0x61, 0x75, 0x74, 0x6f, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, + 0x79, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, + 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0e, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, + 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, + 0x22, 0x81, 0x01, 0x0a, 0x1c, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x6f, 0x73, 0x74, 0x67, + 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, + 0x73, 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, 0x6f, + 0x6d, 0x6d, 0x6f, 0x6e, 0x22, 0x95, 0x05, 0x0a, 0x19, 0x41, 0x64, 0x64, 0x50, 0x72, 0x6f, 0x78, + 0x79, 0x53, 0x51, 0x4c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x12, 0x29, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, + 0x01, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x26, 0x0a, + 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, + 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, + 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, + 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, + 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, + 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, + 0x12, 0x5e, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, + 0x51, 0x4c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, + 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, + 0x12, 0x32, 0x0a, 0x15, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x13, 0x73, 0x6b, 0x69, 0x70, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, + 0x68, 0x65, 0x63, 0x6b, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, + 0x72, 0x69, 0x63, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x75, 0x73, 0x68, + 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x2d, 0x0a, 0x12, 0x64, 0x69, 0x73, 0x61, 0x62, + 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x0a, 0x20, + 0x03, 0x28, 0x09, 0x52, 0x11, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6c, 0x6c, + 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, + 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, + 0x61, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x33, 0x0a, + 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, + 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, + 0x65, 0x6c, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, + 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x65, 0x78, 0x70, + 0x6f, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x3f, 0x0a, 0x11, 0x43, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x81, 0x01, 0x0a, + 0x1c, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 0x45, + 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x22, 0x0a, + 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, + 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x3d, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, + 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x41, 0x67, 0x65, + 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x22, 0xe6, 0x05, 0x0a, 0x20, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, + 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x29, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, @@ -8600,923 +8671,536 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, - 0x69, 0x66, 0x79, 0x12, 0x5e, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, - 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x69, 0x6e, 0x76, - 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x50, 0x6f, 0x73, - 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, - 0x65, 0x6c, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x13, 0x73, 0x6b, 0x69, 0x70, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x75, 0x73, 0x68, 0x5f, - 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, - 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x2d, 0x0a, 0x12, 0x64, 0x69, - 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, - 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, - 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, - 0x5f, 0x63, 0x61, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, - 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x0c, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x74, 0x6c, 0x73, 0x43, 0x65, 0x72, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, - 0x6c, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x6c, - 0x73, 0x4b, 0x65, 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x61, - 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x67, - 0x65, 0x6e, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x33, 0x0a, 0x09, 0x6c, - 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, - 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, - 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, - 0x12, 0x30, 0x0a, 0x14, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, - 0x72, 0x79, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, - 0x61, 0x75, 0x74, 0x6f, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x4c, 0x69, 0x6d, - 0x69, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, - 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x65, 0x78, 0x70, - 0x6f, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x3f, 0x0a, 0x11, 0x43, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, - 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, - 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x82, 0x01, 0x0a, - 0x1d, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, - 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, - 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x22, 0x6d, 0x0a, 0x1e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x6f, 0x73, 0x74, 0x67, - 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x11, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x5f, - 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, - 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, - 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x10, - 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, - 0x22, 0x95, 0x05, 0x0a, 0x19, 0x41, 0x64, 0x64, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, - 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x29, - 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, 0x70, - 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0a, 0x73, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, - 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, - 0x64, 0x12, 0x23, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x08, 0x75, 0x73, - 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, - 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, - 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, - 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, - 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x5e, 0x0a, 0x0d, - 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, - 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 0x45, 0x78, - 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x43, 0x75, 0x73, - 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, - 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x32, 0x0a, 0x15, - 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x73, 0x6b, 0x69, - 0x70, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, - 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, - 0x69, 0x63, 0x73, 0x12, 0x2d, 0x0a, 0x12, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, - 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x11, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, - 0x72, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x73, 0x73, - 0x77, 0x6f, 0x72, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x67, 0x65, 0x6e, - 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, - 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, - 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, - 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x27, - 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x45, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, - 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, - 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x82, 0x01, 0x0a, 0x1d, 0x43, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 0x45, 0x78, 0x70, 0x6f, 0x72, - 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, - 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, - 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3d, - 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, - 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x22, 0x6d, 0x0a, - 0x1e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 0x45, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x4b, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x76, - 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, - 0x51, 0x4c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x10, 0x70, 0x72, 0x6f, 0x78, - 0x79, 0x73, 0x71, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x22, 0xe6, 0x05, 0x0a, - 0x20, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x50, 0x65, 0x72, 0x66, - 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x12, 0x29, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, - 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0a, - 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, - 0x63, 0x65, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, - 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, - 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, - 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, - 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, - 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, - 0x72, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x6c, 0x73, 0x43, 0x65, 0x72, - 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x6c, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x09, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x74, 0x6c, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, - 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0a, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x65, - 0x6e, 0x67, 0x74, 0x68, 0x12, 0x34, 0x0a, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x18, 0x0b, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x12, 0x65, 0x0a, 0x0d, 0x63, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x40, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, - 0x2e, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x50, 0x65, 0x72, 0x66, - 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, - 0x73, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x13, 0x73, 0x6b, 0x69, 0x70, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x38, 0x0a, 0x18, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, - 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x70, 0x61, 0x72, 0x73, 0x69, 0x6e, - 0x67, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, - 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x50, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x12, - 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0f, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, - 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, - 0x65, 0x76, 0x65, 0x6c, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, - 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x89, 0x01, 0x0a, 0x24, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, - 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, - 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x22, 0x8b, 0x01, 0x0a, 0x25, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x4d, - 0x79, 0x53, 0x51, 0x4c, 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x62, 0x0a, 0x1a, 0x71, - 0x61, 0x6e, 0x5f, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x70, 0x65, 0x72, 0x66, 0x73, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, - 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x17, 0x71, 0x61, 0x6e, 0x4d, 0x79, 0x73, 0x71, 0x6c, - 0x50, 0x65, 0x72, 0x66, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x22, - 0x93, 0x06, 0x0a, 0x1d, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, - 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x12, 0x29, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, - 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0a, - 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, - 0x63, 0x65, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, - 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, - 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, - 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, - 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, - 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, - 0x72, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x6c, 0x73, 0x43, 0x65, 0x72, - 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x6c, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x09, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x74, 0x6c, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, - 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0a, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x65, - 0x6e, 0x67, 0x74, 0x68, 0x12, 0x34, 0x0a, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, - 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x18, 0x0b, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x12, 0x31, 0x0a, 0x15, 0x6d, 0x61, - 0x78, 0x5f, 0x73, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x73, - 0x69, 0x7a, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x53, 0x6c, - 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x62, 0x0a, - 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0d, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, - 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, - 0x73, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x13, 0x73, 0x6b, 0x69, 0x70, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x38, 0x0a, 0x18, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, - 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x70, 0x61, 0x72, 0x73, 0x69, 0x6e, - 0x67, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, - 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x50, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x12, - 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x10, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, - 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, - 0x65, 0x76, 0x65, 0x6c, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, - 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x86, 0x01, 0x0a, 0x21, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x08, 0x61, - 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, - 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x3d, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x22, 0x7f, - 0x0a, 0x22, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, - 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x59, 0x0a, 0x17, 0x71, 0x61, 0x6e, 0x5f, 0x6d, 0x79, 0x73, 0x71, - 0x6c, 0x5f, 0x73, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, - 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, - 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x14, 0x71, 0x61, 0x6e, 0x4d, 0x79, - 0x73, 0x71, 0x6c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x22, - 0xa7, 0x06, 0x0a, 0x20, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, - 0x42, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x12, 0x29, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, - 0x02, 0x10, 0x01, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x26, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x09, 0x73, 0x65, - 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, - 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, - 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, - 0x72, 0x69, 0x66, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, - 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x2e, 0x0a, 0x13, 0x74, 0x6c, 0x73, - 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x6b, 0x65, 0x79, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x74, 0x6c, 0x73, 0x43, 0x65, 0x72, 0x74, 0x69, - 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x48, 0x0a, 0x21, 0x74, 0x6c, 0x73, - 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x6b, 0x65, 0x79, - 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x08, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x1d, 0x74, 0x6c, 0x73, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, - 0x63, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x73, 0x73, 0x77, - 0x6f, 0x72, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, - 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0a, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x65, - 0x6e, 0x67, 0x74, 0x68, 0x12, 0x65, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, - 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x69, 0x6e, - 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x51, 0x41, - 0x4e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x43, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x73, - 0x6b, 0x69, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, - 0x68, 0x65, 0x63, 0x6b, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x73, 0x6b, 0x69, 0x70, - 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, - 0x39, 0x0a, 0x18, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x17, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x4d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x12, 0x37, 0x0a, 0x17, 0x61, 0x75, - 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x61, 0x74, - 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x61, 0x75, 0x74, - 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x62, - 0x61, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, + 0x69, 0x66, 0x79, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, + 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x6c, + 0x73, 0x43, 0x65, 0x72, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x6c, 0x73, 0x5f, 0x6b, 0x65, 0x79, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x6c, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x28, + 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x34, 0x0a, 0x16, 0x64, 0x69, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, + 0x65, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, + 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x12, 0x65, + 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, + 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, + 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, + 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, + 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, + 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x63, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x0d, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x73, 0x6b, 0x69, 0x70, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x38, 0x0a, 0x18, 0x64, 0x69, 0x73, + 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x70, 0x61, + 0x72, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x64, 0x69, 0x73, + 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x50, 0x61, 0x72, 0x73, + 0x69, 0x6e, 0x67, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x89, 0x01, 0x0a, 0x24, 0x43, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x50, 0x72, - 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, - 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, - 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x22, 0x8b, 0x01, 0x0a, 0x25, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, - 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x62, 0x0a, 0x1a, 0x71, 0x61, 0x6e, 0x5f, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x5f, 0x70, - 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x88, 0x01, 0x0a, 0x23, 0x43, 0x68, + 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x50, 0x65, 0x72, 0x66, + 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, + 0x73, 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, 0x6f, + 0x6d, 0x6d, 0x6f, 0x6e, 0x22, 0x93, 0x06, 0x0a, 0x1d, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, + 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x29, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, + 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, + 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x26, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x09, + 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x08, 0x75, 0x73, 0x65, + 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, + 0x72, 0x02, 0x10, 0x01, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, + 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, + 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, + 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, + 0x72, 0x69, 0x66, 0x79, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, + 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, + 0x6c, 0x73, 0x43, 0x65, 0x72, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x6c, 0x73, 0x5f, 0x6b, 0x65, + 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x6c, 0x73, 0x4b, 0x65, 0x79, 0x12, + 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, + 0x67, 0x74, 0x68, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x34, 0x0a, 0x16, 0x64, 0x69, 0x73, + 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x65, 0x78, 0x61, 0x6d, 0x70, + 0x6c, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x64, 0x69, 0x73, 0x61, 0x62, + 0x6c, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x12, + 0x31, 0x0a, 0x15, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x5f, 0x66, + 0x69, 0x6c, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, + 0x6d, 0x61, 0x78, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x53, 0x69, + 0x7a, 0x65, 0x12, 0x62, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x69, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, + 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, + 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x63, + 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, + 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x73, 0x6b, 0x69, 0x70, 0x43, 0x6f, 0x6e, 0x6e, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x38, 0x0a, 0x18, 0x64, 0x69, + 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x70, + 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x64, 0x69, + 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x50, 0x61, 0x72, + 0x73, 0x69, 0x6e, 0x67, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, + 0x6c, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, + 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, + 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, + 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x85, 0x01, 0x0a, 0x20, 0x43, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, + 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, + 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, - 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x50, 0x72, 0x6f, - 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x17, 0x71, 0x61, 0x6e, 0x4d, - 0x6f, 0x6e, 0x67, 0x6f, 0x64, 0x62, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x22, 0xbe, 0x05, 0x0a, 0x27, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x50, 0x6f, - 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, - 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, - 0x29, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, - 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0a, 0x73, 0x65, - 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, - 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, - 0x49, 0x64, 0x12, 0x23, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x08, 0x75, - 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, - 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, - 0x6f, 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, - 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, - 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x6c, 0x0a, - 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, - 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x43, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x73, - 0x6b, 0x69, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, - 0x68, 0x65, 0x63, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x73, 0x6b, 0x69, 0x70, - 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, - 0x38, 0x0a, 0x18, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x73, 0x5f, 0x70, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x74, 0x73, 0x50, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x65, 0x6e, - 0x67, 0x74, 0x68, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, 0x0b, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, - 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x6c, - 0x73, 0x43, 0x65, 0x72, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x6c, 0x73, 0x5f, 0x6b, 0x65, 0x79, - 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x6c, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x33, - 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, - 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, - 0x76, 0x65, 0x6c, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, - 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x3a, 0x02, 0x38, 0x01, 0x22, 0x90, 0x01, 0x0a, 0x2b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, - 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, + 0x6f, 0x6e, 0x22, 0xa7, 0x06, 0x0a, 0x20, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, + 0x67, 0x6f, 0x44, 0x42, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x29, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, + 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, + 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, + 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, + 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, + 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, + 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, + 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, + 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, + 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x2e, 0x0a, 0x13, + 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x5f, + 0x6b, 0x65, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x74, 0x6c, 0x73, 0x43, 0x65, + 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x48, 0x0a, 0x21, + 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x5f, + 0x6b, 0x65, 0x79, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, + 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1d, 0x74, 0x6c, 0x73, 0x43, 0x65, 0x72, 0x74, + 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61, + 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x28, 0x0a, + 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x65, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, + 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, + 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x50, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x43, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x32, + 0x0a, 0x15, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x73, + 0x6b, 0x69, 0x70, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x65, + 0x63, 0x6b, 0x12, 0x39, 0x0a, 0x18, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x18, 0x0d, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x17, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x12, 0x37, 0x0a, + 0x17, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, + 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, + 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, + 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, + 0x76, 0x65, 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, + 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x1a, 0x3f, 0x0a, 0x11, 0x43, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x88, 0x01, 0x0a, + 0x23, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, + 0x42, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, + 0x72, 0x61, 0x6d, 0x73, 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, - 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x22, 0xa7, 0x01, 0x0a, 0x2c, 0x43, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, - 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x77, 0x0a, 0x21, 0x71, 0x61, 0x6e, 0x5f, - 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x5f, 0x70, 0x67, 0x73, 0x74, 0x61, - 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, - 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, + 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x22, 0xbe, 0x05, 0x0a, 0x27, 0x41, 0x64, 0x64, 0x51, + 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, + 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, + 0x61, 0x6d, 0x73, 0x12, 0x29, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, + 0x10, 0x01, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x26, + 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x09, 0x73, 0x65, 0x72, + 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, + 0x01, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, + 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, + 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, + 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, + 0x79, 0x12, 0x6c, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, + 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x50, 0x6f, + 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, + 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, + 0x32, 0x0a, 0x15, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, + 0x73, 0x6b, 0x69, 0x70, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, + 0x65, 0x63, 0x6b, 0x12, 0x38, 0x0a, 0x18, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x70, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x50, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x12, 0x28, 0x0a, + 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, + 0x61, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, + 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x74, 0x6c, 0x73, 0x43, 0x65, 0x72, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x6c, 0x73, + 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x6c, 0x73, 0x4b, + 0x65, 0x79, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, + 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, + 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x8f, 0x01, 0x0a, 0x2a, 0x43, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x52, 0x1e, 0x71, 0x61, 0x6e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, - 0x50, 0x67, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x22, 0xf6, 0x05, 0x0a, 0x28, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, - 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x6e, 0x69, - 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x29, - 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, 0x70, - 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0a, 0x73, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, - 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, - 0x64, 0x12, 0x23, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x08, 0x75, 0x73, - 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, - 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, - 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, - 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, - 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x28, 0x0a, 0x10, - 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, 0x79, - 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x34, 0x0a, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, - 0x65, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x51, - 0x75, 0x65, 0x72, 0x79, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x12, 0x6d, 0x0a, 0x0d, - 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x09, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x48, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, - 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, - 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x43, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x73, - 0x6b, 0x69, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, - 0x68, 0x65, 0x63, 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x73, 0x6b, 0x69, 0x70, - 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, - 0x38, 0x0a, 0x18, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x73, 0x5f, 0x70, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x74, 0x73, 0x50, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, - 0x5f, 0x63, 0x61, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, - 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x0d, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x74, 0x6c, 0x73, 0x43, 0x65, 0x72, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, - 0x6c, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x6c, - 0x73, 0x4b, 0x65, 0x79, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, - 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, - 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, - 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, - 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, - 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x91, 0x01, 0x0a, 0x2c, 0x43, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, - 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x08, 0x61, + 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, + 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x06, 0x63, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, + 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, + 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, + 0x6d, 0x73, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x22, 0xf6, 0x05, 0x0a, 0x28, 0x41, + 0x64, 0x64, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, + 0x67, 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x29, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, - 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x3d, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x22, 0xab, - 0x01, 0x0a, 0x2d, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, - 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x6e, 0x69, - 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x7a, 0x0a, 0x22, 0x71, 0x61, 0x6e, 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, - 0x71, 0x6c, 0x5f, 0x70, 0x67, 0x73, 0x74, 0x61, 0x74, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, - 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x69, - 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x41, 0x4e, 0x50, - 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x4d, - 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x1f, 0x71, 0x61, 0x6e, - 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x71, 0x6c, 0x50, 0x67, 0x73, 0x74, 0x61, 0x74, - 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x22, 0xc5, 0x04, 0x0a, - 0x14, 0x41, 0x64, 0x64, 0x52, 0x44, 0x53, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, + 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, + 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x08, 0x75, 0x73, + 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, + 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x74, + 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x74, 0x6c, 0x73, 0x12, 0x26, 0x0a, + 0x0f, 0x74, 0x6c, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x74, 0x6c, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x56, + 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, + 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, + 0x34, 0x0a, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x5f, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x14, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x45, 0x78, 0x61, + 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x12, 0x6d, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x48, 0x2e, 0x69, + 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x51, + 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, + 0x61, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, + 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, + 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, + 0x62, 0x65, 0x6c, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x63, 0x6f, 0x6e, + 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x13, 0x73, 0x6b, 0x69, 0x70, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x38, 0x0a, 0x18, 0x64, 0x69, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x70, 0x61, 0x72, + 0x73, 0x69, 0x6e, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x64, 0x69, 0x73, 0x61, + 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x50, 0x61, 0x72, 0x73, 0x69, + 0x6e, 0x67, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, 0x0c, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, + 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x6c, 0x73, + 0x43, 0x65, 0x72, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x6c, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, + 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x6c, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x33, 0x0a, + 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, + 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, + 0x65, 0x6c, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, + 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, + 0x02, 0x38, 0x01, 0x22, 0x90, 0x01, 0x0a, 0x2b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, + 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, + 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, + 0x61, 0x6d, 0x73, 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, + 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, + 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x22, 0xc5, 0x04, 0x0a, 0x14, 0x41, 0x64, 0x64, 0x52, 0x44, + 0x53, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, + 0x29, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, + 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x07, 0x6e, 0x6f, + 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, + 0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, + 0x61, 0x77, 0x73, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x77, 0x73, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x4b, + 0x65, 0x79, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x77, 0x73, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, + 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x77, 0x73, 0x53, + 0x65, 0x63, 0x72, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x59, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x34, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, + 0x64, 0x64, 0x52, 0x44, 0x53, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, + 0x61, 0x6d, 0x73, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, + 0x65, 0x6c, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x13, 0x73, 0x6b, 0x69, 0x70, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x32, 0x0a, 0x15, 0x64, 0x69, 0x73, 0x61, 0x62, + 0x6c, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x69, 0x63, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x42, + 0x61, 0x73, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x38, 0x0a, 0x18, 0x64, + 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x65, 0x6e, 0x68, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x5f, + 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x64, + 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x45, 0x6e, 0x68, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x4d, 0x65, + 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, + 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x75, 0x73, + 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, + 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, + 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, + 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x1a, 0x3f, 0x0a, + 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x7c, + 0x0a, 0x17, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x44, 0x53, 0x45, 0x78, 0x70, 0x6f, 0x72, + 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, + 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3d, 0x0a, + 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, + 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, + 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, + 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x22, 0xcf, 0x03, 0x0a, + 0x19, 0x41, 0x64, 0x64, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, + 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x2e, 0x0a, 0x0f, 0x72, 0x75, + 0x6e, 0x73, 0x5f, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0c, 0x72, 0x75, + 0x6e, 0x73, 0x4f, 0x6e, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, + 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, + 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, + 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, + 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x74, + 0x72, 0x69, 0x63, 0x73, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x50, 0x61, 0x74, 0x68, 0x12, 0x2c, 0x0a, 0x0b, + 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x0d, 0x42, 0x0b, 0xfa, 0x42, 0x08, 0x2a, 0x06, 0x10, 0x80, 0x80, 0x04, 0x20, 0x00, 0x52, 0x0a, + 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x5e, 0x0a, 0x0d, 0x63, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x39, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, + 0x2e, 0x41, 0x64, 0x64, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, + 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x75, + 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0b, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x1a, 0x3f, 0x0a, + 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x81, + 0x01, 0x0a, 0x1c, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, + 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, + 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, + 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, + 0x6f, 0x6e, 0x22, 0xcf, 0x05, 0x0a, 0x1e, 0x41, 0x64, 0x64, 0x41, 0x7a, 0x75, 0x72, 0x65, 0x44, + 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x29, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, - 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x77, 0x73, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x77, 0x73, 0x41, - 0x63, 0x63, 0x65, 0x73, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x24, 0x0a, 0x0e, 0x61, 0x77, 0x73, 0x5f, - 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x61, 0x77, 0x73, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x59, - 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, - 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, - 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x52, 0x44, 0x53, 0x45, 0x78, 0x70, 0x6f, 0x72, - 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, - 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x6b, 0x69, - 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x65, - 0x63, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x73, 0x6b, 0x69, 0x70, 0x43, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x32, 0x0a, - 0x15, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x69, 0x63, 0x5f, 0x6d, - 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x64, 0x69, - 0x73, 0x61, 0x62, 0x6c, 0x65, 0x42, 0x61, 0x73, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, - 0x73, 0x12, 0x38, 0x0a, 0x18, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x65, 0x6e, 0x68, - 0x61, 0x6e, 0x63, 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x45, 0x6e, 0x68, 0x61, - 0x6e, 0x63, 0x65, 0x64, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, - 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x7a, 0x75, + 0x72, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x61, 0x7a, + 0x75, 0x72, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, + 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x43, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x61, 0x7a, + 0x75, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x5f, 0x73, 0x75, 0x62, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x13, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x5f, + 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x48, 0x0a, 0x1c, 0x61, 0x7a, 0x75, 0x72, + 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, + 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x19, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, + 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x63, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x69, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x41, 0x7a, 0x75, 0x72, + 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, + 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x6b, 0x69, 0x70, 0x5f, + 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x73, 0x6b, 0x69, 0x70, 0x43, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x21, 0x0a, 0x0c, 0x70, + 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x33, - 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x3a, 0x02, 0x38, 0x01, 0x22, 0x7d, 0x0a, 0x18, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x44, - 0x53, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x22, 0x59, 0x0a, 0x19, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x44, 0x53, - 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x3c, 0x0a, 0x0c, 0x72, 0x64, 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, - 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x44, 0x53, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x52, 0x0b, 0x72, 0x64, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x22, 0xcf, - 0x03, 0x0a, 0x19, 0x41, 0x64, 0x64, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, - 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x2e, 0x0a, 0x0f, - 0x72, 0x75, 0x6e, 0x73, 0x5f, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0c, - 0x72, 0x75, 0x6e, 0x73, 0x4f, 0x6e, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, - 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, - 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, - 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, - 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, - 0x6f, 0x72, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, - 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x50, 0x61, 0x74, 0x68, 0x12, 0x2c, - 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x0d, 0x42, 0x0b, 0xfa, 0x42, 0x08, 0x2a, 0x06, 0x10, 0x80, 0x80, 0x04, 0x20, 0x00, - 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x5e, 0x0a, 0x0d, - 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0a, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, - 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, - 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x43, 0x75, 0x73, - 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, - 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x21, 0x0a, 0x0c, - 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0b, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x1a, - 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, - 0x22, 0x82, 0x01, 0x0a, 0x1d, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x45, 0x78, 0x74, 0x65, 0x72, - 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, - 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, - 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x22, 0x6d, 0x0a, 0x1e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x45, - 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x11, 0x65, 0x78, 0x74, 0x65, 0x72, - 0x6e, 0x61, 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, - 0x31, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x72, 0x52, 0x10, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x22, 0xcf, 0x05, 0x0a, 0x1e, 0x41, 0x64, 0x64, 0x41, 0x7a, 0x75, 0x72, - 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x29, 0x0a, 0x0c, 0x70, 0x6d, 0x6d, 0x5f, 0x61, - 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, - 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x0a, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x20, 0x0a, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x06, 0x6e, 0x6f, - 0x64, 0x65, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x5f, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, - 0x7a, 0x75, 0x72, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x13, - 0x61, 0x7a, 0x75, 0x72, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x63, - 0x72, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x61, 0x7a, 0x75, 0x72, 0x65, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x26, 0x0a, 0x0f, - 0x61, 0x7a, 0x75, 0x72, 0x65, 0x5f, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x54, 0x65, 0x6e, 0x61, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x5f, 0x73, 0x75, - 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x13, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, - 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x61, 0x7a, 0x75, 0x72, - 0x65, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x52, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x48, 0x0a, 0x1c, 0x61, 0x7a, - 0x75, 0x72, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x19, 0x61, 0x7a, 0x75, 0x72, 0x65, - 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x54, 0x79, 0x70, 0x65, 0x12, 0x63, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, - 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x69, 0x6e, - 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x41, 0x7a, - 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, - 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x63, 0x75, 0x73, - 0x74, 0x6f, 0x6d, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x6b, 0x69, - 0x70, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x65, - 0x63, 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x73, 0x6b, 0x69, 0x70, 0x43, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x12, 0x21, 0x0a, - 0x0c, 0x70, 0x75, 0x73, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x0b, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, - 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, - 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x08, 0x6c, 0x6f, 0x67, - 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x1a, 0x3f, 0x0a, 0x11, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4c, - 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, - 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x87, 0x01, 0x0a, 0x22, 0x43, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x41, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, - 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, - 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x3d, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, - 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x22, 0x82, 0x01, 0x0a, 0x23, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x41, 0x7a, 0x75, 0x72, 0x65, - 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5b, 0x0a, 0x17, 0x61, 0x7a, 0x75, 0x72, - 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, - 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, - 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x15, - 0x61, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, - 0x6f, 0x72, 0x74, 0x65, 0x72, 0x22, 0x4e, 0x0a, 0x12, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x08, 0x61, - 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, - 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x14, 0x0a, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, - 0x66, 0x6f, 0x72, 0x63, 0x65, 0x22, 0x15, 0x0a, 0x13, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2a, 0xc7, 0x04, 0x0a, - 0x09, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x16, 0x41, 0x47, - 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, - 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, - 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x4d, 0x4d, 0x5f, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x10, 0x01, - 0x12, 0x17, 0x0a, 0x13, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x56, - 0x4d, 0x5f, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x10, 0x02, 0x12, 0x1c, 0x0a, 0x18, 0x41, 0x47, 0x45, - 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x45, 0x58, 0x50, - 0x4f, 0x52, 0x54, 0x45, 0x52, 0x10, 0x03, 0x12, 0x1e, 0x0a, 0x1a, 0x41, 0x47, 0x45, 0x4e, 0x54, - 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x44, 0x5f, 0x45, 0x58, 0x50, - 0x4f, 0x52, 0x54, 0x45, 0x52, 0x10, 0x04, 0x12, 0x1f, 0x0a, 0x1b, 0x41, 0x47, 0x45, 0x4e, 0x54, - 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x4f, 0x4e, 0x47, 0x4f, 0x44, 0x42, 0x5f, 0x45, 0x58, - 0x50, 0x4f, 0x52, 0x54, 0x45, 0x52, 0x10, 0x05, 0x12, 0x20, 0x0a, 0x1c, 0x41, 0x47, 0x45, 0x4e, - 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x4f, 0x53, 0x54, 0x47, 0x52, 0x45, 0x53, 0x5f, - 0x45, 0x58, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x52, 0x10, 0x06, 0x12, 0x20, 0x0a, 0x1c, 0x41, 0x47, - 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x58, 0x59, 0x53, 0x51, - 0x4c, 0x5f, 0x45, 0x58, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x52, 0x10, 0x07, 0x12, 0x29, 0x0a, 0x25, - 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x51, 0x41, 0x4e, 0x5f, 0x4d, - 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x50, 0x45, 0x52, 0x46, 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x5f, - 0x41, 0x47, 0x45, 0x4e, 0x54, 0x10, 0x08, 0x12, 0x26, 0x0a, 0x22, 0x41, 0x47, 0x45, 0x4e, 0x54, - 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x51, 0x41, 0x4e, 0x5f, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, - 0x53, 0x4c, 0x4f, 0x57, 0x4c, 0x4f, 0x47, 0x5f, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x10, 0x09, 0x12, - 0x29, 0x0a, 0x25, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x51, 0x41, - 0x4e, 0x5f, 0x4d, 0x4f, 0x4e, 0x47, 0x4f, 0x44, 0x42, 0x5f, 0x50, 0x52, 0x4f, 0x46, 0x49, 0x4c, - 0x45, 0x52, 0x5f, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x10, 0x0a, 0x12, 0x30, 0x0a, 0x2c, 0x41, 0x47, - 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x51, 0x41, 0x4e, 0x5f, 0x50, 0x4f, 0x53, - 0x54, 0x47, 0x52, 0x45, 0x53, 0x51, 0x4c, 0x5f, 0x50, 0x47, 0x53, 0x54, 0x41, 0x54, 0x45, 0x4d, - 0x45, 0x4e, 0x54, 0x53, 0x5f, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x10, 0x0b, 0x12, 0x31, 0x0a, 0x2d, - 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x51, 0x41, 0x4e, 0x5f, 0x50, - 0x4f, 0x53, 0x54, 0x47, 0x52, 0x45, 0x53, 0x51, 0x4c, 0x5f, 0x50, 0x47, 0x53, 0x54, 0x41, 0x54, - 0x4d, 0x4f, 0x4e, 0x49, 0x54, 0x4f, 0x52, 0x5f, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x10, 0x0c, 0x12, - 0x20, 0x0a, 0x1c, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x45, 0x58, - 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x5f, 0x45, 0x58, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x52, 0x10, - 0x0d, 0x12, 0x1b, 0x0a, 0x17, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, - 0x52, 0x44, 0x53, 0x5f, 0x45, 0x58, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x52, 0x10, 0x0e, 0x12, 0x26, - 0x0a, 0x22, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x5a, 0x55, - 0x52, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x45, 0x58, 0x50, 0x4f, - 0x52, 0x54, 0x45, 0x52, 0x10, 0x0f, 0x32, 0xca, 0x21, 0x0a, 0x0d, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xa4, 0x01, 0x0a, 0x0a, 0x4c, 0x69, 0x73, - 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, - 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x53, 0x92, 0x41, 0x2c, 0x12, - 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x1d, 0x52, 0x65, - 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x61, 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, - 0x61, 0x6c, 0x6c, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, - 0x1e, 0x3a, 0x01, 0x2a, 0x22, 0x19, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x4c, 0x69, 0x73, 0x74, 0x12, - 0x9b, 0x01, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x2e, 0x69, - 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x69, 0x6e, - 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x50, 0x92, 0x41, 0x2a, - 0x12, 0x09, 0x47, 0x65, 0x74, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x1d, 0x52, 0x65, 0x74, - 0x75, 0x72, 0x6e, 0x73, 0x20, 0x61, 0x20, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1d, - 0x3a, 0x01, 0x2a, 0x22, 0x18, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, - 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x47, 0x65, 0x74, 0x12, 0xac, 0x01, - 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x21, - 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, - 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x22, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, - 0x2e, 0x47, 0x65, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x55, 0x92, 0x41, 0x2b, 0x12, 0x0e, 0x47, 0x65, 0x74, 0x20, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x20, 0x6c, 0x6f, 0x67, 0x73, 0x1a, 0x19, 0x52, 0x65, 0x74, 0x75, - 0x72, 0x6e, 0x73, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x20, 0x6c, 0x6f, 0x67, 0x73, 0x20, 0x62, - 0x79, 0x20, 0x49, 0x44, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x21, 0x3a, 0x01, 0x2a, 0x22, 0x1c, - 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0xab, 0x01, 0x0a, - 0x08, 0x41, 0x64, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x2e, 0x69, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, - 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x60, 0x92, 0x41, 0x3a, 0x12, 0x19, 0x41, - 0x64, 0x64, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x6f, 0x20, 0x49, - 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x1a, 0x1d, 0x41, 0x64, 0x64, 0x73, 0x20, 0x61, - 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x49, 0x6e, 0x76, - 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1d, 0x3a, 0x01, 0x2a, - 0x22, 0x18, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, 0x12, 0xd2, 0x01, 0x0a, 0x12, 0x43, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x12, 0x27, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, - 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, - 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x69, 0x6e, 0x76, - 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x69, 0x92, 0x41, 0x34, 0x12, 0x14, 0x43, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x20, 0x4e, 0x6f, 0x64, 0x65, 0x20, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, - 0x1c, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x20, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x65, 0x78, - 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, 0xe4, - 0x93, 0x02, 0x2c, 0x3a, 0x01, 0x2a, 0x22, 0x27, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x43, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, - 0xde, 0x01, 0x0a, 0x14, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x64, - 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x29, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, - 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x79, - 0x53, 0x51, 0x4c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, - 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x64, 0x45, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x6f, 0x92, 0x41, 0x38, 0x12, 0x16, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x6d, 0x79, 0x73, - 0x71, 0x6c, 0x64, 0x20, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x1e, 0x43, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x73, 0x20, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x64, 0x5f, 0x65, 0x78, 0x70, - 0x6f, 0x72, 0x74, 0x65, 0x72, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x2e, 0x3a, 0x01, 0x2a, 0x22, 0x29, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, - 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x43, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, - 0x12, 0xe4, 0x01, 0x0a, 0x15, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, - 0x44, 0x42, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x2a, 0x2e, 0x69, 0x6e, 0x76, - 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, - 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x6f, 0x6e, 0x67, - 0x6f, 0x44, 0x42, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0x72, 0x92, 0x41, 0x3a, 0x12, 0x17, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x20, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x20, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x1a, 0x1f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x20, 0x6d, 0x6f, 0x6e, 0x67, 0x6f, - 0x64, 0x62, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x20, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2f, 0x3a, 0x01, 0x2a, 0x22, 0x2a, 0x2f, 0x76, 0x31, - 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x73, 0x2f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x45, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0xea, 0x01, 0x0a, 0x16, 0x43, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x72, 0x12, 0x2b, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, - 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, - 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x2c, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, - 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x75, 0x92, - 0x41, 0x3c, 0x12, 0x18, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x50, 0x6f, 0x73, 0x74, 0x67, - 0x72, 0x65, 0x73, 0x20, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x20, 0x43, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x73, 0x20, 0x70, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x5f, 0x65, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, - 0xe4, 0x93, 0x02, 0x30, 0x3a, 0x01, 0x2a, 0x22, 0x2b, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, - 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x43, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x12, 0xea, 0x01, 0x0a, 0x16, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, - 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, - 0x2b, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, - 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 0x45, 0x78, 0x70, - 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x69, - 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x75, 0x92, 0x41, 0x3c, 0x12, - 0x18, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, - 0x20, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x20, 0x43, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x73, 0x20, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x73, 0x71, 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, - 0x30, 0x3a, 0x01, 0x2a, 0x22, 0x2b, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x43, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x12, 0xa3, 0x02, 0x0a, 0x1d, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x4d, - 0x79, 0x53, 0x51, 0x4c, 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x12, 0x32, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, - 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, - 0x4c, 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, - 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x98, 0x01, 0x92, - 0x41, 0x58, 0x12, 0x23, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x27, 0x51, 0x41, 0x4e, 0x20, - 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x20, 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, - 0x27, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x31, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, - 0x20, 0x27, 0x51, 0x75, 0x65, 0x72, 0x79, 0x20, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, - 0x73, 0x20, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x20, 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x27, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x37, - 0x3a, 0x01, 0x2a, 0x22, 0x32, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, - 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x91, 0x02, 0x0a, 0x1a, 0x43, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, - 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x2f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, - 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x4d, - 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, - 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8f, 0x01, 0x92, 0x41, 0x52, 0x12, - 0x20, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x27, 0x51, 0x41, 0x4e, 0x20, 0x4d, 0x79, 0x53, - 0x51, 0x4c, 0x20, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x27, 0x20, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x1a, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x20, 0x27, 0x51, 0x75, 0x65, 0x72, - 0x79, 0x20, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x20, 0x4d, 0x79, 0x53, 0x51, - 0x4c, 0x20, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x27, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x34, 0x3a, 0x01, 0x2a, 0x22, 0x2f, 0x2f, 0x76, 0x31, 0x2f, - 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, - 0x2f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, - 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0xa3, 0x02, 0x0a, 0x1d, - 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, - 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x32, 0x2e, - 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x50, 0x72, 0x6f, - 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x33, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, - 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, - 0x42, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x98, 0x01, 0x92, 0x41, 0x58, 0x12, 0x23, 0x43, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x20, 0x27, 0x51, 0x41, 0x4e, 0x20, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, - 0x42, 0x20, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x27, 0x20, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x1a, 0x31, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x20, 0x27, 0x51, 0x75, 0x65, 0x72, - 0x79, 0x20, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x20, 0x4d, 0x6f, 0x6e, 0x67, - 0x6f, 0x44, 0x42, 0x20, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x27, 0x20, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x37, 0x3a, 0x01, 0x2a, 0x22, 0x32, 0x2f, - 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x73, 0x2f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, - 0x67, 0x6f, 0x44, 0x42, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x12, 0xd9, 0x02, 0x0a, 0x24, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x50, - 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, - 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x39, 0x2e, 0x69, 0x6e, 0x76, - 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, - 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, - 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x50, 0x6f, - 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6d, - 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0xb9, 0x01, 0x92, 0x41, 0x72, 0x12, 0x30, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, - 0x27, 0x51, 0x41, 0x4e, 0x20, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x20, - 0x70, 0x67, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, - 0x74, 0x73, 0x27, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x3e, 0x43, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x73, 0x20, 0x27, 0x51, 0x75, 0x65, 0x72, 0x79, 0x20, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, - 0x69, 0x63, 0x73, 0x20, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x20, 0x70, - 0x67, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, - 0x73, 0x27, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3e, 0x3a, - 0x01, 0x2a, 0x22, 0x39, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, - 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, - 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0xd7, 0x02, - 0x0a, 0x25, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, - 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, - 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x3a, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, - 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, - 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, - 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, - 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x6e, 0x69, - 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0xb4, 0x01, 0x92, 0x41, 0x6c, 0x12, 0x2d, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x27, - 0x51, 0x41, 0x4e, 0x20, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x20, 0x70, - 0x67, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x27, 0x20, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x3b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x20, 0x27, - 0x51, 0x75, 0x65, 0x72, 0x79, 0x20, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x20, - 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x53, 0x51, 0x4c, 0x20, 0x70, 0x67, 0x5f, 0x73, 0x74, - 0x61, 0x74, 0x5f, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x27, 0x20, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3f, 0x3a, 0x01, 0x2a, 0x22, 0x3a, 0x2f, 0x76, 0x31, - 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x73, 0x2f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, - 0x72, 0x65, 0x53, 0x51, 0x4c, 0x50, 0x67, 0x53, 0x74, 0x61, 0x74, 0x4d, 0x6f, 0x6e, 0x69, 0x74, - 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0xcc, 0x01, 0x0a, 0x11, 0x43, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x52, 0x44, 0x53, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x26, 0x2e, - 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x52, 0x44, 0x53, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, - 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x44, 0x53, 0x45, 0x78, - 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x66, - 0x92, 0x41, 0x32, 0x12, 0x13, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x52, 0x44, 0x53, 0x20, - 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x1b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, - 0x73, 0x20, 0x72, 0x64, 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x20, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2b, 0x3a, 0x01, 0x2a, 0x22, 0x26, - 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x44, 0x53, 0x45, 0x78, - 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0xea, 0x01, 0x0a, 0x16, 0x43, 0x68, 0x61, 0x6e, 0x67, - 0x65, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x12, 0x2b, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, - 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, + 0x3a, 0x02, 0x38, 0x01, 0x22, 0x86, 0x01, 0x0a, 0x21, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x41, + 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, + 0x72, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, + 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, + 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3d, + 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, - 0x61, 0x6e, 0x67, 0x65, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x75, 0x92, 0x41, - 0x3c, 0x12, 0x18, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, - 0x61, 0x6c, 0x20, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x20, 0x43, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x73, 0x20, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x65, 0x78, - 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, 0xe4, - 0x93, 0x02, 0x30, 0x3a, 0x01, 0x2a, 0x22, 0x2b, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x43, 0x68, 0x61, - 0x6e, 0x67, 0x65, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, - 0x74, 0x65, 0x72, 0x12, 0x8b, 0x02, 0x0a, 0x1b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x41, 0x7a, - 0x75, 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, - 0x74, 0x65, 0x72, 0x12, 0x30, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, - 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x41, 0x7a, 0x75, 0x72, 0x65, 0x44, 0x61, - 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, - 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x41, 0x7a, 0x75, 0x72, 0x65, - 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x86, 0x01, 0x92, 0x41, 0x48, 0x12, 0x1e, - 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x41, 0x7a, 0x75, 0x72, 0x65, 0x20, 0x44, 0x61, 0x74, - 0x61, 0x62, 0x61, 0x73, 0x65, 0x20, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x26, - 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x20, 0x61, 0x7a, 0x75, 0x72, 0x65, 0x5f, 0x64, 0x61, - 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x20, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x35, 0x3a, 0x01, 0x2a, 0x22, - 0x30, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x41, 0x7a, 0x75, 0x72, - 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 0x12, 0xbf, 0x01, 0x0a, 0x0b, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x12, 0x20, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, - 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, - 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x6b, 0x92, 0x41, 0x42, 0x12, 0x1e, 0x52, 0x65, 0x6d, - 0x6f, 0x76, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x20, 0x66, 0x72, 0x6f, - 0x6d, 0x20, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x1a, 0x20, 0x52, 0x65, 0x6d, - 0x6f, 0x76, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x20, 0x66, 0x72, - 0x6f, 0x6d, 0x20, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x82, 0xd3, 0xe4, - 0x93, 0x02, 0x20, 0x3a, 0x01, 0x2a, 0x22, 0x1b, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x52, 0x65, 0x6d, - 0x6f, 0x76, 0x65, 0x42, 0xa5, 0x01, 0x0a, 0x10, 0x63, 0x6f, 0x6d, 0x2e, 0x69, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x42, 0x0b, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, - 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x33, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, - 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x65, 0x72, 0x63, 0x6f, 0x6e, 0x61, 0x2f, 0x70, 0x6d, 0x6d, 0x2f, - 0x61, 0x70, 0x69, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x76, 0x31, - 0x3b, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x49, - 0x58, 0x58, 0xaa, 0x02, 0x0c, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x56, - 0x31, 0xca, 0x02, 0x0c, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x5c, 0x56, 0x31, - 0xe2, 0x02, 0x18, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x5c, 0x56, 0x31, 0x5c, - 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x0d, 0x49, 0x6e, - 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x33, + 0x61, 0x6e, 0x67, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, + 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x22, 0x4e, 0x0a, + 0x12, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x07, 0xfa, 0x42, 0x04, 0x72, 0x02, 0x10, 0x01, 0x52, 0x07, + 0x61, 0x67, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x22, 0x15, 0x0a, + 0x13, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x2a, 0xc7, 0x04, 0x0a, 0x09, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x16, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, + 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x18, + 0x0a, 0x14, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, 0x4d, 0x4d, + 0x5f, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x47, 0x45, 0x4e, + 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x56, 0x4d, 0x5f, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x10, + 0x02, 0x12, 0x1c, 0x0a, 0x18, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, + 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x45, 0x58, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x52, 0x10, 0x03, 0x12, + 0x1e, 0x0a, 0x1a, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x59, + 0x53, 0x51, 0x4c, 0x44, 0x5f, 0x45, 0x58, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x52, 0x10, 0x04, 0x12, + 0x1f, 0x0a, 0x1b, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x4f, + 0x4e, 0x47, 0x4f, 0x44, 0x42, 0x5f, 0x45, 0x58, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x52, 0x10, 0x05, + 0x12, 0x20, 0x0a, 0x1c, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x50, + 0x4f, 0x53, 0x54, 0x47, 0x52, 0x45, 0x53, 0x5f, 0x45, 0x58, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x52, + 0x10, 0x06, 0x12, 0x20, 0x0a, 0x1c, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, + 0x5f, 0x50, 0x52, 0x4f, 0x58, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x45, 0x58, 0x50, 0x4f, 0x52, 0x54, + 0x45, 0x52, 0x10, 0x07, 0x12, 0x29, 0x0a, 0x25, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, + 0x50, 0x45, 0x5f, 0x51, 0x41, 0x4e, 0x5f, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x50, 0x45, 0x52, + 0x46, 0x53, 0x43, 0x48, 0x45, 0x4d, 0x41, 0x5f, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x10, 0x08, 0x12, + 0x26, 0x0a, 0x22, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x51, 0x41, + 0x4e, 0x5f, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x53, 0x4c, 0x4f, 0x57, 0x4c, 0x4f, 0x47, 0x5f, + 0x41, 0x47, 0x45, 0x4e, 0x54, 0x10, 0x09, 0x12, 0x29, 0x0a, 0x25, 0x41, 0x47, 0x45, 0x4e, 0x54, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x51, 0x41, 0x4e, 0x5f, 0x4d, 0x4f, 0x4e, 0x47, 0x4f, 0x44, + 0x42, 0x5f, 0x50, 0x52, 0x4f, 0x46, 0x49, 0x4c, 0x45, 0x52, 0x5f, 0x41, 0x47, 0x45, 0x4e, 0x54, + 0x10, 0x0a, 0x12, 0x30, 0x0a, 0x2c, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, + 0x5f, 0x51, 0x41, 0x4e, 0x5f, 0x50, 0x4f, 0x53, 0x54, 0x47, 0x52, 0x45, 0x53, 0x51, 0x4c, 0x5f, + 0x50, 0x47, 0x53, 0x54, 0x41, 0x54, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x53, 0x5f, 0x41, 0x47, 0x45, + 0x4e, 0x54, 0x10, 0x0b, 0x12, 0x31, 0x0a, 0x2d, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x54, 0x59, + 0x50, 0x45, 0x5f, 0x51, 0x41, 0x4e, 0x5f, 0x50, 0x4f, 0x53, 0x54, 0x47, 0x52, 0x45, 0x53, 0x51, + 0x4c, 0x5f, 0x50, 0x47, 0x53, 0x54, 0x41, 0x54, 0x4d, 0x4f, 0x4e, 0x49, 0x54, 0x4f, 0x52, 0x5f, + 0x41, 0x47, 0x45, 0x4e, 0x54, 0x10, 0x0c, 0x12, 0x20, 0x0a, 0x1c, 0x41, 0x47, 0x45, 0x4e, 0x54, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x45, 0x58, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x5f, 0x45, + 0x58, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x52, 0x10, 0x0d, 0x12, 0x1b, 0x0a, 0x17, 0x41, 0x47, 0x45, + 0x4e, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x52, 0x44, 0x53, 0x5f, 0x45, 0x58, 0x50, 0x4f, + 0x52, 0x54, 0x45, 0x52, 0x10, 0x0e, 0x12, 0x26, 0x0a, 0x22, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x5f, 0x41, 0x5a, 0x55, 0x52, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, + 0x41, 0x53, 0x45, 0x5f, 0x45, 0x58, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x52, 0x10, 0x0f, 0x32, 0x8f, + 0x09, 0x0a, 0x0d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, + 0x12, 0xa4, 0x01, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, + 0x1f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, + 0x69, 0x73, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x20, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, + 0x4c, 0x69, 0x73, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x53, 0x92, 0x41, 0x2c, 0x12, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x41, 0x67, + 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x1d, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x61, 0x20, + 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x73, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1e, 0x3a, 0x01, 0x2a, 0x22, 0x19, 0x2f, 0x76, + 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x73, 0x2f, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x9b, 0x01, 0x0a, 0x08, 0x47, 0x65, 0x74, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, + 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, + 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x50, 0x92, 0x41, 0x2a, 0x12, 0x09, 0x47, 0x65, 0x74, 0x20, 0x41, 0x67, + 0x65, 0x6e, 0x74, 0x1a, 0x1d, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x61, 0x20, 0x73, + 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x20, 0x62, 0x79, 0x20, 0x49, + 0x44, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1d, 0x3a, 0x01, 0x2a, 0x22, 0x18, 0x2f, 0x76, 0x31, + 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x73, 0x2f, 0x47, 0x65, 0x74, 0x12, 0xac, 0x01, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x41, 0x67, 0x65, + 0x6e, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x21, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, + 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x4c, 0x6f, + 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x69, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x55, 0x92, + 0x41, 0x2b, 0x12, 0x0e, 0x47, 0x65, 0x74, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x20, 0x6c, 0x6f, + 0x67, 0x73, 0x1a, 0x19, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x20, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x20, 0x6c, 0x6f, 0x67, 0x73, 0x20, 0x62, 0x79, 0x20, 0x49, 0x44, 0x2e, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x21, 0x3a, 0x01, 0x2a, 0x22, 0x1c, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x47, 0x65, 0x74, + 0x4c, 0x6f, 0x67, 0x73, 0x12, 0xd9, 0x01, 0x0a, 0x08, 0x41, 0x64, 0x64, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x12, 0x1d, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, + 0x2e, 0x41, 0x64, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x1e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, + 0x41, 0x64, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x8d, 0x01, 0x92, 0x41, 0x67, 0x12, 0x19, 0x41, 0x64, 0x64, 0x20, 0x61, 0x6e, 0x20, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x6f, 0x20, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x79, 0x1a, 0x4a, 0x41, 0x64, 0x64, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x20, 0x74, 0x6f, 0x20, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x20, 0x4f, + 0x6e, 0x6c, 0x79, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x74, 0x6f, 0x70, 0x2d, 0x6c, 0x65, 0x76, 0x65, + 0x6c, 0x20, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x20, 0x73, 0x68, 0x6f, 0x75, + 0x6c, 0x64, 0x20, 0x62, 0x65, 0x20, 0x70, 0x61, 0x73, 0x73, 0x65, 0x64, 0x2e, 0x82, 0xd3, 0xe4, + 0x93, 0x02, 0x1d, 0x3a, 0x01, 0x2a, 0x22, 0x18, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, + 0x12, 0xeb, 0x01, 0x0a, 0x0b, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x12, 0x20, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, + 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, + 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x96, 0x01, 0x92, 0x41, 0x6d, 0x12, 0x1c, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x20, 0x69, 0x6e, 0x20, + 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x1a, 0x4d, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x20, 0x69, 0x6e, 0x20, 0x49, + 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x20, 0x4f, 0x6e, 0x6c, 0x79, 0x20, 0x6f, + 0x6e, 0x65, 0x20, 0x74, 0x6f, 0x70, 0x2d, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x20, 0x70, 0x61, 0x72, + 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65, + 0x20, 0x70, 0x61, 0x73, 0x73, 0x65, 0x64, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x3a, 0x01, + 0x2a, 0x22, 0x1b, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, + 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0xbf, + 0x01, 0x0a, 0x0b, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x20, + 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, + 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x21, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, + 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x6b, 0x92, 0x41, 0x42, 0x12, 0x1e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, + 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x49, + 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x1a, 0x20, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, + 0x73, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, + 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, + 0x3a, 0x01, 0x2a, 0x22, 0x1b, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, + 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, + 0x42, 0xa5, 0x01, 0x0a, 0x10, 0x63, 0x6f, 0x6d, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, + 0x72, 0x79, 0x2e, 0x76, 0x31, 0x42, 0x0b, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x33, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, + 0x2f, 0x70, 0x65, 0x72, 0x63, 0x6f, 0x6e, 0x61, 0x2f, 0x70, 0x6d, 0x6d, 0x2f, 0x61, 0x70, 0x69, + 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x76, 0x31, 0x3b, 0x69, 0x6e, + 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x49, 0x58, 0x58, 0xaa, + 0x02, 0x0c, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x56, 0x31, 0xca, 0x02, + 0x0c, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x18, + 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, + 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x0d, 0x49, 0x6e, 0x76, 0x65, 0x6e, + 0x74, 0x6f, 0x72, 0x79, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -9533,150 +9217,139 @@ func file_inventory_v1_agents_proto_rawDescGZIP() []byte { var ( file_inventory_v1_agents_proto_enumTypes = make([]protoimpl.EnumInfo, 1) - file_inventory_v1_agents_proto_msgTypes = make([]protoimpl.MessageInfo, 95) + file_inventory_v1_agents_proto_msgTypes = make([]protoimpl.MessageInfo, 83) file_inventory_v1_agents_proto_goTypes = []interface{}{ - (AgentType)(0), // 0: inventory.v1.AgentType - (*PMMAgent)(nil), // 1: inventory.v1.PMMAgent - (*VMAgent)(nil), // 2: inventory.v1.VMAgent - (*NodeExporter)(nil), // 3: inventory.v1.NodeExporter - (*MySQLdExporter)(nil), // 4: inventory.v1.MySQLdExporter - (*MongoDBExporter)(nil), // 5: inventory.v1.MongoDBExporter - (*PostgresExporter)(nil), // 6: inventory.v1.PostgresExporter - (*ProxySQLExporter)(nil), // 7: inventory.v1.ProxySQLExporter - (*QANMySQLPerfSchemaAgent)(nil), // 8: inventory.v1.QANMySQLPerfSchemaAgent - (*QANMySQLSlowlogAgent)(nil), // 9: inventory.v1.QANMySQLSlowlogAgent - (*QANMongoDBProfilerAgent)(nil), // 10: inventory.v1.QANMongoDBProfilerAgent - (*QANPostgreSQLPgStatementsAgent)(nil), // 11: inventory.v1.QANPostgreSQLPgStatementsAgent - (*QANPostgreSQLPgStatMonitorAgent)(nil), // 12: inventory.v1.QANPostgreSQLPgStatMonitorAgent - (*RDSExporter)(nil), // 13: inventory.v1.RDSExporter - (*ExternalExporter)(nil), // 14: inventory.v1.ExternalExporter - (*AzureDatabaseExporter)(nil), // 15: inventory.v1.AzureDatabaseExporter - (*ChangeCommonAgentParams)(nil), // 16: inventory.v1.ChangeCommonAgentParams - (*ListAgentsRequest)(nil), // 17: inventory.v1.ListAgentsRequest - (*ListAgentsResponse)(nil), // 18: inventory.v1.ListAgentsResponse - (*GetAgentRequest)(nil), // 19: inventory.v1.GetAgentRequest - (*GetAgentResponse)(nil), // 20: inventory.v1.GetAgentResponse - (*GetAgentLogsRequest)(nil), // 21: inventory.v1.GetAgentLogsRequest - (*GetAgentLogsResponse)(nil), // 22: inventory.v1.GetAgentLogsResponse - (*AddPMMAgentParams)(nil), // 23: inventory.v1.AddPMMAgentParams - (*AddAgentRequest)(nil), // 24: inventory.v1.AddAgentRequest - (*AddAgentResponse)(nil), // 25: inventory.v1.AddAgentResponse - (*AddNodeExporterParams)(nil), // 26: inventory.v1.AddNodeExporterParams - (*ChangeNodeExporterRequest)(nil), // 27: inventory.v1.ChangeNodeExporterRequest - (*ChangeNodeExporterResponse)(nil), // 28: inventory.v1.ChangeNodeExporterResponse - (*AddMySQLdExporterParams)(nil), // 29: inventory.v1.AddMySQLdExporterParams - (*ChangeMySQLdExporterRequest)(nil), // 30: inventory.v1.ChangeMySQLdExporterRequest - (*ChangeMySQLdExporterResponse)(nil), // 31: inventory.v1.ChangeMySQLdExporterResponse - (*AddMongoDBExporterParams)(nil), // 32: inventory.v1.AddMongoDBExporterParams - (*ChangeMongoDBExporterRequest)(nil), // 33: inventory.v1.ChangeMongoDBExporterRequest - (*ChangeMongoDBExporterResponse)(nil), // 34: inventory.v1.ChangeMongoDBExporterResponse - (*AddPostgresExporterParams)(nil), // 35: inventory.v1.AddPostgresExporterParams - (*ChangePostgresExporterRequest)(nil), // 36: inventory.v1.ChangePostgresExporterRequest - (*ChangePostgresExporterResponse)(nil), // 37: inventory.v1.ChangePostgresExporterResponse - (*AddProxySQLExporterParams)(nil), // 38: inventory.v1.AddProxySQLExporterParams - (*ChangeProxySQLExporterRequest)(nil), // 39: inventory.v1.ChangeProxySQLExporterRequest - (*ChangeProxySQLExporterResponse)(nil), // 40: inventory.v1.ChangeProxySQLExporterResponse - (*AddQANMySQLPerfSchemaAgentParams)(nil), // 41: inventory.v1.AddQANMySQLPerfSchemaAgentParams - (*ChangeQANMySQLPerfSchemaAgentRequest)(nil), // 42: inventory.v1.ChangeQANMySQLPerfSchemaAgentRequest - (*ChangeQANMySQLPerfSchemaAgentResponse)(nil), // 43: inventory.v1.ChangeQANMySQLPerfSchemaAgentResponse - (*AddQANMySQLSlowlogAgentParams)(nil), // 44: inventory.v1.AddQANMySQLSlowlogAgentParams - (*ChangeQANMySQLSlowlogAgentRequest)(nil), // 45: inventory.v1.ChangeQANMySQLSlowlogAgentRequest - (*ChangeQANMySQLSlowlogAgentResponse)(nil), // 46: inventory.v1.ChangeQANMySQLSlowlogAgentResponse - (*AddQANMongoDBProfilerAgentParams)(nil), // 47: inventory.v1.AddQANMongoDBProfilerAgentParams - (*ChangeQANMongoDBProfilerAgentRequest)(nil), // 48: inventory.v1.ChangeQANMongoDBProfilerAgentRequest - (*ChangeQANMongoDBProfilerAgentResponse)(nil), // 49: inventory.v1.ChangeQANMongoDBProfilerAgentResponse - (*AddQANPostgreSQLPgStatementsAgentParams)(nil), // 50: inventory.v1.AddQANPostgreSQLPgStatementsAgentParams - (*ChangeQANPostgreSQLPgStatementsAgentRequest)(nil), // 51: inventory.v1.ChangeQANPostgreSQLPgStatementsAgentRequest - (*ChangeQANPostgreSQLPgStatementsAgentResponse)(nil), // 52: inventory.v1.ChangeQANPostgreSQLPgStatementsAgentResponse - (*AddQANPostgreSQLPgStatMonitorAgentParams)(nil), // 53: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentParams - (*ChangeQANPostgreSQLPgStatMonitorAgentRequest)(nil), // 54: inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentRequest - (*ChangeQANPostgreSQLPgStatMonitorAgentResponse)(nil), // 55: inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentResponse - (*AddRDSExporterParams)(nil), // 56: inventory.v1.AddRDSExporterParams - (*ChangeRDSExporterRequest)(nil), // 57: inventory.v1.ChangeRDSExporterRequest - (*ChangeRDSExporterResponse)(nil), // 58: inventory.v1.ChangeRDSExporterResponse - (*AddExternalExporterParams)(nil), // 59: inventory.v1.AddExternalExporterParams - (*ChangeExternalExporterRequest)(nil), // 60: inventory.v1.ChangeExternalExporterRequest - (*ChangeExternalExporterResponse)(nil), // 61: inventory.v1.ChangeExternalExporterResponse - (*AddAzureDatabaseExporterParams)(nil), // 62: inventory.v1.AddAzureDatabaseExporterParams - (*ChangeAzureDatabaseExporterRequest)(nil), // 63: inventory.v1.ChangeAzureDatabaseExporterRequest - (*ChangeAzureDatabaseExporterResponse)(nil), // 64: inventory.v1.ChangeAzureDatabaseExporterResponse - (*RemoveAgentRequest)(nil), // 65: inventory.v1.RemoveAgentRequest - (*RemoveAgentResponse)(nil), // 66: inventory.v1.RemoveAgentResponse - nil, // 67: inventory.v1.PMMAgent.CustomLabelsEntry - nil, // 68: inventory.v1.NodeExporter.CustomLabelsEntry - nil, // 69: inventory.v1.MySQLdExporter.CustomLabelsEntry - nil, // 70: inventory.v1.MongoDBExporter.CustomLabelsEntry - nil, // 71: inventory.v1.PostgresExporter.CustomLabelsEntry - nil, // 72: inventory.v1.ProxySQLExporter.CustomLabelsEntry - nil, // 73: inventory.v1.QANMySQLPerfSchemaAgent.CustomLabelsEntry - nil, // 74: inventory.v1.QANMySQLSlowlogAgent.CustomLabelsEntry - nil, // 75: inventory.v1.QANMongoDBProfilerAgent.CustomLabelsEntry - nil, // 76: inventory.v1.QANPostgreSQLPgStatementsAgent.CustomLabelsEntry - nil, // 77: inventory.v1.QANPostgreSQLPgStatMonitorAgent.CustomLabelsEntry - nil, // 78: inventory.v1.RDSExporter.CustomLabelsEntry - nil, // 79: inventory.v1.ExternalExporter.CustomLabelsEntry - nil, // 80: inventory.v1.AzureDatabaseExporter.CustomLabelsEntry - nil, // 81: inventory.v1.ChangeCommonAgentParams.CustomLabelsEntry - nil, // 82: inventory.v1.AddPMMAgentParams.CustomLabelsEntry - nil, // 83: inventory.v1.AddNodeExporterParams.CustomLabelsEntry - nil, // 84: inventory.v1.AddMySQLdExporterParams.CustomLabelsEntry - nil, // 85: inventory.v1.AddMongoDBExporterParams.CustomLabelsEntry - nil, // 86: inventory.v1.AddPostgresExporterParams.CustomLabelsEntry - nil, // 87: inventory.v1.AddProxySQLExporterParams.CustomLabelsEntry - nil, // 88: inventory.v1.AddQANMySQLPerfSchemaAgentParams.CustomLabelsEntry - nil, // 89: inventory.v1.AddQANMySQLSlowlogAgentParams.CustomLabelsEntry - nil, // 90: inventory.v1.AddQANMongoDBProfilerAgentParams.CustomLabelsEntry - nil, // 91: inventory.v1.AddQANPostgreSQLPgStatementsAgentParams.CustomLabelsEntry - nil, // 92: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentParams.CustomLabelsEntry - nil, // 93: inventory.v1.AddRDSExporterParams.CustomLabelsEntry - nil, // 94: inventory.v1.AddExternalExporterParams.CustomLabelsEntry - nil, // 95: inventory.v1.AddAzureDatabaseExporterParams.CustomLabelsEntry - (AgentStatus)(0), // 96: inventory.v1.AgentStatus - (LogLevel)(0), // 97: inventory.v1.LogLevel + (AgentType)(0), // 0: inventory.v1.AgentType + (*PMMAgent)(nil), // 1: inventory.v1.PMMAgent + (*VMAgent)(nil), // 2: inventory.v1.VMAgent + (*NodeExporter)(nil), // 3: inventory.v1.NodeExporter + (*MySQLdExporter)(nil), // 4: inventory.v1.MySQLdExporter + (*MongoDBExporter)(nil), // 5: inventory.v1.MongoDBExporter + (*PostgresExporter)(nil), // 6: inventory.v1.PostgresExporter + (*ProxySQLExporter)(nil), // 7: inventory.v1.ProxySQLExporter + (*QANMySQLPerfSchemaAgent)(nil), // 8: inventory.v1.QANMySQLPerfSchemaAgent + (*QANMySQLSlowlogAgent)(nil), // 9: inventory.v1.QANMySQLSlowlogAgent + (*QANMongoDBProfilerAgent)(nil), // 10: inventory.v1.QANMongoDBProfilerAgent + (*QANPostgreSQLPgStatementsAgent)(nil), // 11: inventory.v1.QANPostgreSQLPgStatementsAgent + (*QANPostgreSQLPgStatMonitorAgent)(nil), // 12: inventory.v1.QANPostgreSQLPgStatMonitorAgent + (*RDSExporter)(nil), // 13: inventory.v1.RDSExporter + (*ExternalExporter)(nil), // 14: inventory.v1.ExternalExporter + (*AzureDatabaseExporter)(nil), // 15: inventory.v1.AzureDatabaseExporter + (*ChangeCommonAgentParams)(nil), // 16: inventory.v1.ChangeCommonAgentParams + (*ListAgentsRequest)(nil), // 17: inventory.v1.ListAgentsRequest + (*ListAgentsResponse)(nil), // 18: inventory.v1.ListAgentsResponse + (*GetAgentRequest)(nil), // 19: inventory.v1.GetAgentRequest + (*GetAgentResponse)(nil), // 20: inventory.v1.GetAgentResponse + (*GetAgentLogsRequest)(nil), // 21: inventory.v1.GetAgentLogsRequest + (*GetAgentLogsResponse)(nil), // 22: inventory.v1.GetAgentLogsResponse + (*AddAgentRequest)(nil), // 23: inventory.v1.AddAgentRequest + (*AddAgentResponse)(nil), // 24: inventory.v1.AddAgentResponse + (*ChangeAgentRequest)(nil), // 25: inventory.v1.ChangeAgentRequest + (*ChangeAgentResponse)(nil), // 26: inventory.v1.ChangeAgentResponse + (*AddPMMAgentParams)(nil), // 27: inventory.v1.AddPMMAgentParams + (*AddNodeExporterParams)(nil), // 28: inventory.v1.AddNodeExporterParams + (*ChangeNodeExporterParams)(nil), // 29: inventory.v1.ChangeNodeExporterParams + (*AddMySQLdExporterParams)(nil), // 30: inventory.v1.AddMySQLdExporterParams + (*ChangeMySQLdExporterParams)(nil), // 31: inventory.v1.ChangeMySQLdExporterParams + (*AddMongoDBExporterParams)(nil), // 32: inventory.v1.AddMongoDBExporterParams + (*ChangeMongoDBExporterParams)(nil), // 33: inventory.v1.ChangeMongoDBExporterParams + (*AddPostgresExporterParams)(nil), // 34: inventory.v1.AddPostgresExporterParams + (*ChangePostgresExporterParams)(nil), // 35: inventory.v1.ChangePostgresExporterParams + (*AddProxySQLExporterParams)(nil), // 36: inventory.v1.AddProxySQLExporterParams + (*ChangeProxySQLExporterParams)(nil), // 37: inventory.v1.ChangeProxySQLExporterParams + (*AddQANMySQLPerfSchemaAgentParams)(nil), // 38: inventory.v1.AddQANMySQLPerfSchemaAgentParams + (*ChangeQANMySQLPerfSchemaAgentParams)(nil), // 39: inventory.v1.ChangeQANMySQLPerfSchemaAgentParams + (*AddQANMySQLSlowlogAgentParams)(nil), // 40: inventory.v1.AddQANMySQLSlowlogAgentParams + (*ChangeQANMySQLSlowlogAgentParams)(nil), // 41: inventory.v1.ChangeQANMySQLSlowlogAgentParams + (*AddQANMongoDBProfilerAgentParams)(nil), // 42: inventory.v1.AddQANMongoDBProfilerAgentParams + (*ChangeQANMongoDBProfilerAgentParams)(nil), // 43: inventory.v1.ChangeQANMongoDBProfilerAgentParams + (*AddQANPostgreSQLPgStatementsAgentParams)(nil), // 44: inventory.v1.AddQANPostgreSQLPgStatementsAgentParams + (*ChangeQANPostgreSQLPgStatementsAgentParams)(nil), // 45: inventory.v1.ChangeQANPostgreSQLPgStatementsAgentParams + (*AddQANPostgreSQLPgStatMonitorAgentParams)(nil), // 46: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentParams + (*ChangeQANPostgreSQLPgStatMonitorAgentParams)(nil), // 47: inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentParams + (*AddRDSExporterParams)(nil), // 48: inventory.v1.AddRDSExporterParams + (*ChangeRDSExporterParams)(nil), // 49: inventory.v1.ChangeRDSExporterParams + (*AddExternalExporterParams)(nil), // 50: inventory.v1.AddExternalExporterParams + (*ChangeExternalExporterParams)(nil), // 51: inventory.v1.ChangeExternalExporterParams + (*AddAzureDatabaseExporterParams)(nil), // 52: inventory.v1.AddAzureDatabaseExporterParams + (*ChangeAzureDatabaseExporterParams)(nil), // 53: inventory.v1.ChangeAzureDatabaseExporterParams + (*RemoveAgentRequest)(nil), // 54: inventory.v1.RemoveAgentRequest + (*RemoveAgentResponse)(nil), // 55: inventory.v1.RemoveAgentResponse + nil, // 56: inventory.v1.PMMAgent.CustomLabelsEntry + nil, // 57: inventory.v1.NodeExporter.CustomLabelsEntry + nil, // 58: inventory.v1.MySQLdExporter.CustomLabelsEntry + nil, // 59: inventory.v1.MongoDBExporter.CustomLabelsEntry + nil, // 60: inventory.v1.PostgresExporter.CustomLabelsEntry + nil, // 61: inventory.v1.ProxySQLExporter.CustomLabelsEntry + nil, // 62: inventory.v1.QANMySQLPerfSchemaAgent.CustomLabelsEntry + nil, // 63: inventory.v1.QANMySQLSlowlogAgent.CustomLabelsEntry + nil, // 64: inventory.v1.QANMongoDBProfilerAgent.CustomLabelsEntry + nil, // 65: inventory.v1.QANPostgreSQLPgStatementsAgent.CustomLabelsEntry + nil, // 66: inventory.v1.QANPostgreSQLPgStatMonitorAgent.CustomLabelsEntry + nil, // 67: inventory.v1.RDSExporter.CustomLabelsEntry + nil, // 68: inventory.v1.ExternalExporter.CustomLabelsEntry + nil, // 69: inventory.v1.AzureDatabaseExporter.CustomLabelsEntry + nil, // 70: inventory.v1.AddPMMAgentParams.CustomLabelsEntry + nil, // 71: inventory.v1.AddNodeExporterParams.CustomLabelsEntry + nil, // 72: inventory.v1.AddMySQLdExporterParams.CustomLabelsEntry + nil, // 73: inventory.v1.AddMongoDBExporterParams.CustomLabelsEntry + nil, // 74: inventory.v1.AddPostgresExporterParams.CustomLabelsEntry + nil, // 75: inventory.v1.AddProxySQLExporterParams.CustomLabelsEntry + nil, // 76: inventory.v1.AddQANMySQLPerfSchemaAgentParams.CustomLabelsEntry + nil, // 77: inventory.v1.AddQANMySQLSlowlogAgentParams.CustomLabelsEntry + nil, // 78: inventory.v1.AddQANMongoDBProfilerAgentParams.CustomLabelsEntry + nil, // 79: inventory.v1.AddQANPostgreSQLPgStatementsAgentParams.CustomLabelsEntry + nil, // 80: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentParams.CustomLabelsEntry + nil, // 81: inventory.v1.AddRDSExporterParams.CustomLabelsEntry + nil, // 82: inventory.v1.AddExternalExporterParams.CustomLabelsEntry + nil, // 83: inventory.v1.AddAzureDatabaseExporterParams.CustomLabelsEntry + (AgentStatus)(0), // 84: inventory.v1.AgentStatus + (LogLevel)(0), // 85: inventory.v1.LogLevel + (*common.StringMap)(nil), // 86: common.StringMap } ) var file_inventory_v1_agents_proto_depIdxs = []int32{ - 67, // 0: inventory.v1.PMMAgent.custom_labels:type_name -> inventory.v1.PMMAgent.CustomLabelsEntry - 96, // 1: inventory.v1.VMAgent.status:type_name -> inventory.v1.AgentStatus - 68, // 2: inventory.v1.NodeExporter.custom_labels:type_name -> inventory.v1.NodeExporter.CustomLabelsEntry - 96, // 3: inventory.v1.NodeExporter.status:type_name -> inventory.v1.AgentStatus - 97, // 4: inventory.v1.NodeExporter.log_level:type_name -> inventory.v1.LogLevel - 69, // 5: inventory.v1.MySQLdExporter.custom_labels:type_name -> inventory.v1.MySQLdExporter.CustomLabelsEntry - 96, // 6: inventory.v1.MySQLdExporter.status:type_name -> inventory.v1.AgentStatus - 97, // 7: inventory.v1.MySQLdExporter.log_level:type_name -> inventory.v1.LogLevel - 70, // 8: inventory.v1.MongoDBExporter.custom_labels:type_name -> inventory.v1.MongoDBExporter.CustomLabelsEntry - 96, // 9: inventory.v1.MongoDBExporter.status:type_name -> inventory.v1.AgentStatus - 97, // 10: inventory.v1.MongoDBExporter.log_level:type_name -> inventory.v1.LogLevel - 71, // 11: inventory.v1.PostgresExporter.custom_labels:type_name -> inventory.v1.PostgresExporter.CustomLabelsEntry - 96, // 12: inventory.v1.PostgresExporter.status:type_name -> inventory.v1.AgentStatus - 97, // 13: inventory.v1.PostgresExporter.log_level:type_name -> inventory.v1.LogLevel - 72, // 14: inventory.v1.ProxySQLExporter.custom_labels:type_name -> inventory.v1.ProxySQLExporter.CustomLabelsEntry - 96, // 15: inventory.v1.ProxySQLExporter.status:type_name -> inventory.v1.AgentStatus - 97, // 16: inventory.v1.ProxySQLExporter.log_level:type_name -> inventory.v1.LogLevel - 73, // 17: inventory.v1.QANMySQLPerfSchemaAgent.custom_labels:type_name -> inventory.v1.QANMySQLPerfSchemaAgent.CustomLabelsEntry - 96, // 18: inventory.v1.QANMySQLPerfSchemaAgent.status:type_name -> inventory.v1.AgentStatus - 97, // 19: inventory.v1.QANMySQLPerfSchemaAgent.log_level:type_name -> inventory.v1.LogLevel - 74, // 20: inventory.v1.QANMySQLSlowlogAgent.custom_labels:type_name -> inventory.v1.QANMySQLSlowlogAgent.CustomLabelsEntry - 96, // 21: inventory.v1.QANMySQLSlowlogAgent.status:type_name -> inventory.v1.AgentStatus - 97, // 22: inventory.v1.QANMySQLSlowlogAgent.log_level:type_name -> inventory.v1.LogLevel - 75, // 23: inventory.v1.QANMongoDBProfilerAgent.custom_labels:type_name -> inventory.v1.QANMongoDBProfilerAgent.CustomLabelsEntry - 96, // 24: inventory.v1.QANMongoDBProfilerAgent.status:type_name -> inventory.v1.AgentStatus - 97, // 25: inventory.v1.QANMongoDBProfilerAgent.log_level:type_name -> inventory.v1.LogLevel - 76, // 26: inventory.v1.QANPostgreSQLPgStatementsAgent.custom_labels:type_name -> inventory.v1.QANPostgreSQLPgStatementsAgent.CustomLabelsEntry - 96, // 27: inventory.v1.QANPostgreSQLPgStatementsAgent.status:type_name -> inventory.v1.AgentStatus - 97, // 28: inventory.v1.QANPostgreSQLPgStatementsAgent.log_level:type_name -> inventory.v1.LogLevel - 77, // 29: inventory.v1.QANPostgreSQLPgStatMonitorAgent.custom_labels:type_name -> inventory.v1.QANPostgreSQLPgStatMonitorAgent.CustomLabelsEntry - 96, // 30: inventory.v1.QANPostgreSQLPgStatMonitorAgent.status:type_name -> inventory.v1.AgentStatus - 97, // 31: inventory.v1.QANPostgreSQLPgStatMonitorAgent.log_level:type_name -> inventory.v1.LogLevel - 78, // 32: inventory.v1.RDSExporter.custom_labels:type_name -> inventory.v1.RDSExporter.CustomLabelsEntry - 96, // 33: inventory.v1.RDSExporter.status:type_name -> inventory.v1.AgentStatus - 97, // 34: inventory.v1.RDSExporter.log_level:type_name -> inventory.v1.LogLevel - 79, // 35: inventory.v1.ExternalExporter.custom_labels:type_name -> inventory.v1.ExternalExporter.CustomLabelsEntry - 80, // 36: inventory.v1.AzureDatabaseExporter.custom_labels:type_name -> inventory.v1.AzureDatabaseExporter.CustomLabelsEntry - 96, // 37: inventory.v1.AzureDatabaseExporter.status:type_name -> inventory.v1.AgentStatus - 97, // 38: inventory.v1.AzureDatabaseExporter.log_level:type_name -> inventory.v1.LogLevel - 81, // 39: inventory.v1.ChangeCommonAgentParams.custom_labels:type_name -> inventory.v1.ChangeCommonAgentParams.CustomLabelsEntry + 56, // 0: inventory.v1.PMMAgent.custom_labels:type_name -> inventory.v1.PMMAgent.CustomLabelsEntry + 84, // 1: inventory.v1.VMAgent.status:type_name -> inventory.v1.AgentStatus + 57, // 2: inventory.v1.NodeExporter.custom_labels:type_name -> inventory.v1.NodeExporter.CustomLabelsEntry + 84, // 3: inventory.v1.NodeExporter.status:type_name -> inventory.v1.AgentStatus + 85, // 4: inventory.v1.NodeExporter.log_level:type_name -> inventory.v1.LogLevel + 58, // 5: inventory.v1.MySQLdExporter.custom_labels:type_name -> inventory.v1.MySQLdExporter.CustomLabelsEntry + 84, // 6: inventory.v1.MySQLdExporter.status:type_name -> inventory.v1.AgentStatus + 85, // 7: inventory.v1.MySQLdExporter.log_level:type_name -> inventory.v1.LogLevel + 59, // 8: inventory.v1.MongoDBExporter.custom_labels:type_name -> inventory.v1.MongoDBExporter.CustomLabelsEntry + 84, // 9: inventory.v1.MongoDBExporter.status:type_name -> inventory.v1.AgentStatus + 85, // 10: inventory.v1.MongoDBExporter.log_level:type_name -> inventory.v1.LogLevel + 60, // 11: inventory.v1.PostgresExporter.custom_labels:type_name -> inventory.v1.PostgresExporter.CustomLabelsEntry + 84, // 12: inventory.v1.PostgresExporter.status:type_name -> inventory.v1.AgentStatus + 85, // 13: inventory.v1.PostgresExporter.log_level:type_name -> inventory.v1.LogLevel + 61, // 14: inventory.v1.ProxySQLExporter.custom_labels:type_name -> inventory.v1.ProxySQLExporter.CustomLabelsEntry + 84, // 15: inventory.v1.ProxySQLExporter.status:type_name -> inventory.v1.AgentStatus + 85, // 16: inventory.v1.ProxySQLExporter.log_level:type_name -> inventory.v1.LogLevel + 62, // 17: inventory.v1.QANMySQLPerfSchemaAgent.custom_labels:type_name -> inventory.v1.QANMySQLPerfSchemaAgent.CustomLabelsEntry + 84, // 18: inventory.v1.QANMySQLPerfSchemaAgent.status:type_name -> inventory.v1.AgentStatus + 85, // 19: inventory.v1.QANMySQLPerfSchemaAgent.log_level:type_name -> inventory.v1.LogLevel + 63, // 20: inventory.v1.QANMySQLSlowlogAgent.custom_labels:type_name -> inventory.v1.QANMySQLSlowlogAgent.CustomLabelsEntry + 84, // 21: inventory.v1.QANMySQLSlowlogAgent.status:type_name -> inventory.v1.AgentStatus + 85, // 22: inventory.v1.QANMySQLSlowlogAgent.log_level:type_name -> inventory.v1.LogLevel + 64, // 23: inventory.v1.QANMongoDBProfilerAgent.custom_labels:type_name -> inventory.v1.QANMongoDBProfilerAgent.CustomLabelsEntry + 84, // 24: inventory.v1.QANMongoDBProfilerAgent.status:type_name -> inventory.v1.AgentStatus + 85, // 25: inventory.v1.QANMongoDBProfilerAgent.log_level:type_name -> inventory.v1.LogLevel + 65, // 26: inventory.v1.QANPostgreSQLPgStatementsAgent.custom_labels:type_name -> inventory.v1.QANPostgreSQLPgStatementsAgent.CustomLabelsEntry + 84, // 27: inventory.v1.QANPostgreSQLPgStatementsAgent.status:type_name -> inventory.v1.AgentStatus + 85, // 28: inventory.v1.QANPostgreSQLPgStatementsAgent.log_level:type_name -> inventory.v1.LogLevel + 66, // 29: inventory.v1.QANPostgreSQLPgStatMonitorAgent.custom_labels:type_name -> inventory.v1.QANPostgreSQLPgStatMonitorAgent.CustomLabelsEntry + 84, // 30: inventory.v1.QANPostgreSQLPgStatMonitorAgent.status:type_name -> inventory.v1.AgentStatus + 85, // 31: inventory.v1.QANPostgreSQLPgStatMonitorAgent.log_level:type_name -> inventory.v1.LogLevel + 67, // 32: inventory.v1.RDSExporter.custom_labels:type_name -> inventory.v1.RDSExporter.CustomLabelsEntry + 84, // 33: inventory.v1.RDSExporter.status:type_name -> inventory.v1.AgentStatus + 85, // 34: inventory.v1.RDSExporter.log_level:type_name -> inventory.v1.LogLevel + 68, // 35: inventory.v1.ExternalExporter.custom_labels:type_name -> inventory.v1.ExternalExporter.CustomLabelsEntry + 69, // 36: inventory.v1.AzureDatabaseExporter.custom_labels:type_name -> inventory.v1.AzureDatabaseExporter.CustomLabelsEntry + 84, // 37: inventory.v1.AzureDatabaseExporter.status:type_name -> inventory.v1.AgentStatus + 85, // 38: inventory.v1.AzureDatabaseExporter.log_level:type_name -> inventory.v1.LogLevel + 86, // 39: inventory.v1.ChangeCommonAgentParams.custom_labels:type_name -> common.StringMap 0, // 40: inventory.v1.ListAgentsRequest.agent_type:type_name -> inventory.v1.AgentType 1, // 41: inventory.v1.ListAgentsResponse.pmm_agent:type_name -> inventory.v1.PMMAgent 2, // 42: inventory.v1.ListAgentsResponse.vm_agent:type_name -> inventory.v1.VMAgent @@ -9708,127 +9381,116 @@ var file_inventory_v1_agents_proto_depIdxs = []int32{ 14, // 68: inventory.v1.GetAgentResponse.external_exporter:type_name -> inventory.v1.ExternalExporter 13, // 69: inventory.v1.GetAgentResponse.rds_exporter:type_name -> inventory.v1.RDSExporter 15, // 70: inventory.v1.GetAgentResponse.azure_database_exporter:type_name -> inventory.v1.AzureDatabaseExporter - 82, // 71: inventory.v1.AddPMMAgentParams.custom_labels:type_name -> inventory.v1.AddPMMAgentParams.CustomLabelsEntry - 23, // 72: inventory.v1.AddAgentRequest.pmm_agent:type_name -> inventory.v1.AddPMMAgentParams - 26, // 73: inventory.v1.AddAgentRequest.node_exporter:type_name -> inventory.v1.AddNodeExporterParams - 29, // 74: inventory.v1.AddAgentRequest.mysqld_exporter:type_name -> inventory.v1.AddMySQLdExporterParams - 32, // 75: inventory.v1.AddAgentRequest.mongodb_exporter:type_name -> inventory.v1.AddMongoDBExporterParams - 35, // 76: inventory.v1.AddAgentRequest.postgres_exporter:type_name -> inventory.v1.AddPostgresExporterParams - 38, // 77: inventory.v1.AddAgentRequest.proxysql_exporter:type_name -> inventory.v1.AddProxySQLExporterParams - 59, // 78: inventory.v1.AddAgentRequest.external_exporter:type_name -> inventory.v1.AddExternalExporterParams - 56, // 79: inventory.v1.AddAgentRequest.rds_exporter:type_name -> inventory.v1.AddRDSExporterParams - 62, // 80: inventory.v1.AddAgentRequest.azure_database_exporter:type_name -> inventory.v1.AddAzureDatabaseExporterParams - 41, // 81: inventory.v1.AddAgentRequest.qan_mysql_perfschema_agent:type_name -> inventory.v1.AddQANMySQLPerfSchemaAgentParams - 44, // 82: inventory.v1.AddAgentRequest.qan_mysql_slowlog_agent:type_name -> inventory.v1.AddQANMySQLSlowlogAgentParams - 47, // 83: inventory.v1.AddAgentRequest.qan_mongodb_profiler_agent:type_name -> inventory.v1.AddQANMongoDBProfilerAgentParams - 50, // 84: inventory.v1.AddAgentRequest.qan_postgresql_pgstatements_agent:type_name -> inventory.v1.AddQANPostgreSQLPgStatementsAgentParams - 53, // 85: inventory.v1.AddAgentRequest.qan_postgresql_pgstatmonitor_agent:type_name -> inventory.v1.AddQANPostgreSQLPgStatMonitorAgentParams - 1, // 86: inventory.v1.AddAgentResponse.pmm_agent:type_name -> inventory.v1.PMMAgent - 3, // 87: inventory.v1.AddAgentResponse.node_exporter:type_name -> inventory.v1.NodeExporter - 4, // 88: inventory.v1.AddAgentResponse.mysqld_exporter:type_name -> inventory.v1.MySQLdExporter - 5, // 89: inventory.v1.AddAgentResponse.mongodb_exporter:type_name -> inventory.v1.MongoDBExporter - 6, // 90: inventory.v1.AddAgentResponse.postgres_exporter:type_name -> inventory.v1.PostgresExporter - 7, // 91: inventory.v1.AddAgentResponse.proxysql_exporter:type_name -> inventory.v1.ProxySQLExporter - 14, // 92: inventory.v1.AddAgentResponse.external_exporter:type_name -> inventory.v1.ExternalExporter - 13, // 93: inventory.v1.AddAgentResponse.rds_exporter:type_name -> inventory.v1.RDSExporter - 15, // 94: inventory.v1.AddAgentResponse.azure_database_exporter:type_name -> inventory.v1.AzureDatabaseExporter - 8, // 95: inventory.v1.AddAgentResponse.qan_mysql_perfschema_agent:type_name -> inventory.v1.QANMySQLPerfSchemaAgent - 9, // 96: inventory.v1.AddAgentResponse.qan_mysql_slowlog_agent:type_name -> inventory.v1.QANMySQLSlowlogAgent - 10, // 97: inventory.v1.AddAgentResponse.qan_mongodb_profiler_agent:type_name -> inventory.v1.QANMongoDBProfilerAgent - 11, // 98: inventory.v1.AddAgentResponse.qan_postgresql_pgstatements_agent:type_name -> inventory.v1.QANPostgreSQLPgStatementsAgent - 12, // 99: inventory.v1.AddAgentResponse.qan_postgresql_pgstatmonitor_agent:type_name -> inventory.v1.QANPostgreSQLPgStatMonitorAgent - 83, // 100: inventory.v1.AddNodeExporterParams.custom_labels:type_name -> inventory.v1.AddNodeExporterParams.CustomLabelsEntry - 97, // 101: inventory.v1.AddNodeExporterParams.log_level:type_name -> inventory.v1.LogLevel - 16, // 102: inventory.v1.ChangeNodeExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 3, // 103: inventory.v1.ChangeNodeExporterResponse.node_exporter:type_name -> inventory.v1.NodeExporter - 84, // 104: inventory.v1.AddMySQLdExporterParams.custom_labels:type_name -> inventory.v1.AddMySQLdExporterParams.CustomLabelsEntry - 97, // 105: inventory.v1.AddMySQLdExporterParams.log_level:type_name -> inventory.v1.LogLevel - 16, // 106: inventory.v1.ChangeMySQLdExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 4, // 107: inventory.v1.ChangeMySQLdExporterResponse.mysqld_exporter:type_name -> inventory.v1.MySQLdExporter - 85, // 108: inventory.v1.AddMongoDBExporterParams.custom_labels:type_name -> inventory.v1.AddMongoDBExporterParams.CustomLabelsEntry - 97, // 109: inventory.v1.AddMongoDBExporterParams.log_level:type_name -> inventory.v1.LogLevel - 16, // 110: inventory.v1.ChangeMongoDBExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 5, // 111: inventory.v1.ChangeMongoDBExporterResponse.mongodb_exporter:type_name -> inventory.v1.MongoDBExporter - 86, // 112: inventory.v1.AddPostgresExporterParams.custom_labels:type_name -> inventory.v1.AddPostgresExporterParams.CustomLabelsEntry - 97, // 113: inventory.v1.AddPostgresExporterParams.log_level:type_name -> inventory.v1.LogLevel - 16, // 114: inventory.v1.ChangePostgresExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 6, // 115: inventory.v1.ChangePostgresExporterResponse.postgres_exporter:type_name -> inventory.v1.PostgresExporter - 87, // 116: inventory.v1.AddProxySQLExporterParams.custom_labels:type_name -> inventory.v1.AddProxySQLExporterParams.CustomLabelsEntry - 97, // 117: inventory.v1.AddProxySQLExporterParams.log_level:type_name -> inventory.v1.LogLevel - 16, // 118: inventory.v1.ChangeProxySQLExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 7, // 119: inventory.v1.ChangeProxySQLExporterResponse.proxysql_exporter:type_name -> inventory.v1.ProxySQLExporter - 88, // 120: inventory.v1.AddQANMySQLPerfSchemaAgentParams.custom_labels:type_name -> inventory.v1.AddQANMySQLPerfSchemaAgentParams.CustomLabelsEntry - 97, // 121: inventory.v1.AddQANMySQLPerfSchemaAgentParams.log_level:type_name -> inventory.v1.LogLevel - 16, // 122: inventory.v1.ChangeQANMySQLPerfSchemaAgentRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 8, // 123: inventory.v1.ChangeQANMySQLPerfSchemaAgentResponse.qan_mysql_perfschema_agent:type_name -> inventory.v1.QANMySQLPerfSchemaAgent - 89, // 124: inventory.v1.AddQANMySQLSlowlogAgentParams.custom_labels:type_name -> inventory.v1.AddQANMySQLSlowlogAgentParams.CustomLabelsEntry - 97, // 125: inventory.v1.AddQANMySQLSlowlogAgentParams.log_level:type_name -> inventory.v1.LogLevel - 16, // 126: inventory.v1.ChangeQANMySQLSlowlogAgentRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 9, // 127: inventory.v1.ChangeQANMySQLSlowlogAgentResponse.qan_mysql_slowlog_agent:type_name -> inventory.v1.QANMySQLSlowlogAgent - 90, // 128: inventory.v1.AddQANMongoDBProfilerAgentParams.custom_labels:type_name -> inventory.v1.AddQANMongoDBProfilerAgentParams.CustomLabelsEntry - 97, // 129: inventory.v1.AddQANMongoDBProfilerAgentParams.log_level:type_name -> inventory.v1.LogLevel - 16, // 130: inventory.v1.ChangeQANMongoDBProfilerAgentRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 10, // 131: inventory.v1.ChangeQANMongoDBProfilerAgentResponse.qan_mongodb_profiler_agent:type_name -> inventory.v1.QANMongoDBProfilerAgent - 91, // 132: inventory.v1.AddQANPostgreSQLPgStatementsAgentParams.custom_labels:type_name -> inventory.v1.AddQANPostgreSQLPgStatementsAgentParams.CustomLabelsEntry - 97, // 133: inventory.v1.AddQANPostgreSQLPgStatementsAgentParams.log_level:type_name -> inventory.v1.LogLevel - 16, // 134: inventory.v1.ChangeQANPostgreSQLPgStatementsAgentRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 11, // 135: inventory.v1.ChangeQANPostgreSQLPgStatementsAgentResponse.qan_postgresql_pgstatements_agent:type_name -> inventory.v1.QANPostgreSQLPgStatementsAgent - 92, // 136: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentParams.custom_labels:type_name -> inventory.v1.AddQANPostgreSQLPgStatMonitorAgentParams.CustomLabelsEntry - 97, // 137: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentParams.log_level:type_name -> inventory.v1.LogLevel - 16, // 138: inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 12, // 139: inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentResponse.qan_postgresql_pgstatmonitor_agent:type_name -> inventory.v1.QANPostgreSQLPgStatMonitorAgent - 93, // 140: inventory.v1.AddRDSExporterParams.custom_labels:type_name -> inventory.v1.AddRDSExporterParams.CustomLabelsEntry - 97, // 141: inventory.v1.AddRDSExporterParams.log_level:type_name -> inventory.v1.LogLevel - 16, // 142: inventory.v1.ChangeRDSExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 13, // 143: inventory.v1.ChangeRDSExporterResponse.rds_exporter:type_name -> inventory.v1.RDSExporter - 94, // 144: inventory.v1.AddExternalExporterParams.custom_labels:type_name -> inventory.v1.AddExternalExporterParams.CustomLabelsEntry - 16, // 145: inventory.v1.ChangeExternalExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 14, // 146: inventory.v1.ChangeExternalExporterResponse.external_exporter:type_name -> inventory.v1.ExternalExporter - 95, // 147: inventory.v1.AddAzureDatabaseExporterParams.custom_labels:type_name -> inventory.v1.AddAzureDatabaseExporterParams.CustomLabelsEntry - 97, // 148: inventory.v1.AddAzureDatabaseExporterParams.log_level:type_name -> inventory.v1.LogLevel - 16, // 149: inventory.v1.ChangeAzureDatabaseExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 15, // 150: inventory.v1.ChangeAzureDatabaseExporterResponse.azure_database_exporter:type_name -> inventory.v1.AzureDatabaseExporter - 17, // 151: inventory.v1.AgentsService.ListAgents:input_type -> inventory.v1.ListAgentsRequest - 19, // 152: inventory.v1.AgentsService.GetAgent:input_type -> inventory.v1.GetAgentRequest - 21, // 153: inventory.v1.AgentsService.GetAgentLogs:input_type -> inventory.v1.GetAgentLogsRequest - 24, // 154: inventory.v1.AgentsService.AddAgent:input_type -> inventory.v1.AddAgentRequest - 27, // 155: inventory.v1.AgentsService.ChangeNodeExporter:input_type -> inventory.v1.ChangeNodeExporterRequest - 30, // 156: inventory.v1.AgentsService.ChangeMySQLdExporter:input_type -> inventory.v1.ChangeMySQLdExporterRequest - 33, // 157: inventory.v1.AgentsService.ChangeMongoDBExporter:input_type -> inventory.v1.ChangeMongoDBExporterRequest - 36, // 158: inventory.v1.AgentsService.ChangePostgresExporter:input_type -> inventory.v1.ChangePostgresExporterRequest - 39, // 159: inventory.v1.AgentsService.ChangeProxySQLExporter:input_type -> inventory.v1.ChangeProxySQLExporterRequest - 42, // 160: inventory.v1.AgentsService.ChangeQANMySQLPerfSchemaAgent:input_type -> inventory.v1.ChangeQANMySQLPerfSchemaAgentRequest - 45, // 161: inventory.v1.AgentsService.ChangeQANMySQLSlowlogAgent:input_type -> inventory.v1.ChangeQANMySQLSlowlogAgentRequest - 48, // 162: inventory.v1.AgentsService.ChangeQANMongoDBProfilerAgent:input_type -> inventory.v1.ChangeQANMongoDBProfilerAgentRequest - 51, // 163: inventory.v1.AgentsService.ChangeQANPostgreSQLPgStatementsAgent:input_type -> inventory.v1.ChangeQANPostgreSQLPgStatementsAgentRequest - 54, // 164: inventory.v1.AgentsService.ChangeQANPostgreSQLPgStatMonitorAgent:input_type -> inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentRequest - 57, // 165: inventory.v1.AgentsService.ChangeRDSExporter:input_type -> inventory.v1.ChangeRDSExporterRequest - 60, // 166: inventory.v1.AgentsService.ChangeExternalExporter:input_type -> inventory.v1.ChangeExternalExporterRequest - 63, // 167: inventory.v1.AgentsService.ChangeAzureDatabaseExporter:input_type -> inventory.v1.ChangeAzureDatabaseExporterRequest - 65, // 168: inventory.v1.AgentsService.RemoveAgent:input_type -> inventory.v1.RemoveAgentRequest - 18, // 169: inventory.v1.AgentsService.ListAgents:output_type -> inventory.v1.ListAgentsResponse - 20, // 170: inventory.v1.AgentsService.GetAgent:output_type -> inventory.v1.GetAgentResponse - 22, // 171: inventory.v1.AgentsService.GetAgentLogs:output_type -> inventory.v1.GetAgentLogsResponse - 25, // 172: inventory.v1.AgentsService.AddAgent:output_type -> inventory.v1.AddAgentResponse - 28, // 173: inventory.v1.AgentsService.ChangeNodeExporter:output_type -> inventory.v1.ChangeNodeExporterResponse - 31, // 174: inventory.v1.AgentsService.ChangeMySQLdExporter:output_type -> inventory.v1.ChangeMySQLdExporterResponse - 34, // 175: inventory.v1.AgentsService.ChangeMongoDBExporter:output_type -> inventory.v1.ChangeMongoDBExporterResponse - 37, // 176: inventory.v1.AgentsService.ChangePostgresExporter:output_type -> inventory.v1.ChangePostgresExporterResponse - 40, // 177: inventory.v1.AgentsService.ChangeProxySQLExporter:output_type -> inventory.v1.ChangeProxySQLExporterResponse - 43, // 178: inventory.v1.AgentsService.ChangeQANMySQLPerfSchemaAgent:output_type -> inventory.v1.ChangeQANMySQLPerfSchemaAgentResponse - 46, // 179: inventory.v1.AgentsService.ChangeQANMySQLSlowlogAgent:output_type -> inventory.v1.ChangeQANMySQLSlowlogAgentResponse - 49, // 180: inventory.v1.AgentsService.ChangeQANMongoDBProfilerAgent:output_type -> inventory.v1.ChangeQANMongoDBProfilerAgentResponse - 52, // 181: inventory.v1.AgentsService.ChangeQANPostgreSQLPgStatementsAgent:output_type -> inventory.v1.ChangeQANPostgreSQLPgStatementsAgentResponse - 55, // 182: inventory.v1.AgentsService.ChangeQANPostgreSQLPgStatMonitorAgent:output_type -> inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentResponse - 58, // 183: inventory.v1.AgentsService.ChangeRDSExporter:output_type -> inventory.v1.ChangeRDSExporterResponse - 61, // 184: inventory.v1.AgentsService.ChangeExternalExporter:output_type -> inventory.v1.ChangeExternalExporterResponse - 64, // 185: inventory.v1.AgentsService.ChangeAzureDatabaseExporter:output_type -> inventory.v1.ChangeAzureDatabaseExporterResponse - 66, // 186: inventory.v1.AgentsService.RemoveAgent:output_type -> inventory.v1.RemoveAgentResponse - 169, // [169:187] is the sub-list for method output_type - 151, // [151:169] is the sub-list for method input_type - 151, // [151:151] is the sub-list for extension type_name - 151, // [151:151] is the sub-list for extension extendee - 0, // [0:151] is the sub-list for field type_name + 27, // 71: inventory.v1.AddAgentRequest.pmm_agent:type_name -> inventory.v1.AddPMMAgentParams + 28, // 72: inventory.v1.AddAgentRequest.node_exporter:type_name -> inventory.v1.AddNodeExporterParams + 30, // 73: inventory.v1.AddAgentRequest.mysqld_exporter:type_name -> inventory.v1.AddMySQLdExporterParams + 32, // 74: inventory.v1.AddAgentRequest.mongodb_exporter:type_name -> inventory.v1.AddMongoDBExporterParams + 34, // 75: inventory.v1.AddAgentRequest.postgres_exporter:type_name -> inventory.v1.AddPostgresExporterParams + 36, // 76: inventory.v1.AddAgentRequest.proxysql_exporter:type_name -> inventory.v1.AddProxySQLExporterParams + 50, // 77: inventory.v1.AddAgentRequest.external_exporter:type_name -> inventory.v1.AddExternalExporterParams + 48, // 78: inventory.v1.AddAgentRequest.rds_exporter:type_name -> inventory.v1.AddRDSExporterParams + 52, // 79: inventory.v1.AddAgentRequest.azure_database_exporter:type_name -> inventory.v1.AddAzureDatabaseExporterParams + 38, // 80: inventory.v1.AddAgentRequest.qan_mysql_perfschema_agent:type_name -> inventory.v1.AddQANMySQLPerfSchemaAgentParams + 40, // 81: inventory.v1.AddAgentRequest.qan_mysql_slowlog_agent:type_name -> inventory.v1.AddQANMySQLSlowlogAgentParams + 42, // 82: inventory.v1.AddAgentRequest.qan_mongodb_profiler_agent:type_name -> inventory.v1.AddQANMongoDBProfilerAgentParams + 44, // 83: inventory.v1.AddAgentRequest.qan_postgresql_pgstatements_agent:type_name -> inventory.v1.AddQANPostgreSQLPgStatementsAgentParams + 46, // 84: inventory.v1.AddAgentRequest.qan_postgresql_pgstatmonitor_agent:type_name -> inventory.v1.AddQANPostgreSQLPgStatMonitorAgentParams + 1, // 85: inventory.v1.AddAgentResponse.pmm_agent:type_name -> inventory.v1.PMMAgent + 3, // 86: inventory.v1.AddAgentResponse.node_exporter:type_name -> inventory.v1.NodeExporter + 4, // 87: inventory.v1.AddAgentResponse.mysqld_exporter:type_name -> inventory.v1.MySQLdExporter + 5, // 88: inventory.v1.AddAgentResponse.mongodb_exporter:type_name -> inventory.v1.MongoDBExporter + 6, // 89: inventory.v1.AddAgentResponse.postgres_exporter:type_name -> inventory.v1.PostgresExporter + 7, // 90: inventory.v1.AddAgentResponse.proxysql_exporter:type_name -> inventory.v1.ProxySQLExporter + 14, // 91: inventory.v1.AddAgentResponse.external_exporter:type_name -> inventory.v1.ExternalExporter + 13, // 92: inventory.v1.AddAgentResponse.rds_exporter:type_name -> inventory.v1.RDSExporter + 15, // 93: inventory.v1.AddAgentResponse.azure_database_exporter:type_name -> inventory.v1.AzureDatabaseExporter + 8, // 94: inventory.v1.AddAgentResponse.qan_mysql_perfschema_agent:type_name -> inventory.v1.QANMySQLPerfSchemaAgent + 9, // 95: inventory.v1.AddAgentResponse.qan_mysql_slowlog_agent:type_name -> inventory.v1.QANMySQLSlowlogAgent + 10, // 96: inventory.v1.AddAgentResponse.qan_mongodb_profiler_agent:type_name -> inventory.v1.QANMongoDBProfilerAgent + 11, // 97: inventory.v1.AddAgentResponse.qan_postgresql_pgstatements_agent:type_name -> inventory.v1.QANPostgreSQLPgStatementsAgent + 12, // 98: inventory.v1.AddAgentResponse.qan_postgresql_pgstatmonitor_agent:type_name -> inventory.v1.QANPostgreSQLPgStatMonitorAgent + 29, // 99: inventory.v1.ChangeAgentRequest.node_exporter:type_name -> inventory.v1.ChangeNodeExporterParams + 31, // 100: inventory.v1.ChangeAgentRequest.mysqld_exporter:type_name -> inventory.v1.ChangeMySQLdExporterParams + 33, // 101: inventory.v1.ChangeAgentRequest.mongodb_exporter:type_name -> inventory.v1.ChangeMongoDBExporterParams + 35, // 102: inventory.v1.ChangeAgentRequest.postgres_exporter:type_name -> inventory.v1.ChangePostgresExporterParams + 37, // 103: inventory.v1.ChangeAgentRequest.proxysql_exporter:type_name -> inventory.v1.ChangeProxySQLExporterParams + 51, // 104: inventory.v1.ChangeAgentRequest.external_exporter:type_name -> inventory.v1.ChangeExternalExporterParams + 49, // 105: inventory.v1.ChangeAgentRequest.rds_exporter:type_name -> inventory.v1.ChangeRDSExporterParams + 53, // 106: inventory.v1.ChangeAgentRequest.azure_database_exporter:type_name -> inventory.v1.ChangeAzureDatabaseExporterParams + 39, // 107: inventory.v1.ChangeAgentRequest.qan_mysql_perfschema_agent:type_name -> inventory.v1.ChangeQANMySQLPerfSchemaAgentParams + 41, // 108: inventory.v1.ChangeAgentRequest.qan_mysql_slowlog_agent:type_name -> inventory.v1.ChangeQANMySQLSlowlogAgentParams + 43, // 109: inventory.v1.ChangeAgentRequest.qan_mongodb_profiler_agent:type_name -> inventory.v1.ChangeQANMongoDBProfilerAgentParams + 45, // 110: inventory.v1.ChangeAgentRequest.qan_postgresql_pgstatements_agent:type_name -> inventory.v1.ChangeQANPostgreSQLPgStatementsAgentParams + 47, // 111: inventory.v1.ChangeAgentRequest.qan_postgresql_pgstatmonitor_agent:type_name -> inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentParams + 3, // 112: inventory.v1.ChangeAgentResponse.node_exporter:type_name -> inventory.v1.NodeExporter + 4, // 113: inventory.v1.ChangeAgentResponse.mysqld_exporter:type_name -> inventory.v1.MySQLdExporter + 5, // 114: inventory.v1.ChangeAgentResponse.mongodb_exporter:type_name -> inventory.v1.MongoDBExporter + 6, // 115: inventory.v1.ChangeAgentResponse.postgres_exporter:type_name -> inventory.v1.PostgresExporter + 7, // 116: inventory.v1.ChangeAgentResponse.proxysql_exporter:type_name -> inventory.v1.ProxySQLExporter + 14, // 117: inventory.v1.ChangeAgentResponse.external_exporter:type_name -> inventory.v1.ExternalExporter + 13, // 118: inventory.v1.ChangeAgentResponse.rds_exporter:type_name -> inventory.v1.RDSExporter + 15, // 119: inventory.v1.ChangeAgentResponse.azure_database_exporter:type_name -> inventory.v1.AzureDatabaseExporter + 8, // 120: inventory.v1.ChangeAgentResponse.qan_mysql_perfschema_agent:type_name -> inventory.v1.QANMySQLPerfSchemaAgent + 9, // 121: inventory.v1.ChangeAgentResponse.qan_mysql_slowlog_agent:type_name -> inventory.v1.QANMySQLSlowlogAgent + 10, // 122: inventory.v1.ChangeAgentResponse.qan_mongodb_profiler_agent:type_name -> inventory.v1.QANMongoDBProfilerAgent + 11, // 123: inventory.v1.ChangeAgentResponse.qan_postgresql_pgstatements_agent:type_name -> inventory.v1.QANPostgreSQLPgStatementsAgent + 12, // 124: inventory.v1.ChangeAgentResponse.qan_postgresql_pgstatmonitor_agent:type_name -> inventory.v1.QANPostgreSQLPgStatMonitorAgent + 70, // 125: inventory.v1.AddPMMAgentParams.custom_labels:type_name -> inventory.v1.AddPMMAgentParams.CustomLabelsEntry + 71, // 126: inventory.v1.AddNodeExporterParams.custom_labels:type_name -> inventory.v1.AddNodeExporterParams.CustomLabelsEntry + 85, // 127: inventory.v1.AddNodeExporterParams.log_level:type_name -> inventory.v1.LogLevel + 16, // 128: inventory.v1.ChangeNodeExporterParams.common:type_name -> inventory.v1.ChangeCommonAgentParams + 72, // 129: inventory.v1.AddMySQLdExporterParams.custom_labels:type_name -> inventory.v1.AddMySQLdExporterParams.CustomLabelsEntry + 85, // 130: inventory.v1.AddMySQLdExporterParams.log_level:type_name -> inventory.v1.LogLevel + 16, // 131: inventory.v1.ChangeMySQLdExporterParams.common:type_name -> inventory.v1.ChangeCommonAgentParams + 73, // 132: inventory.v1.AddMongoDBExporterParams.custom_labels:type_name -> inventory.v1.AddMongoDBExporterParams.CustomLabelsEntry + 85, // 133: inventory.v1.AddMongoDBExporterParams.log_level:type_name -> inventory.v1.LogLevel + 16, // 134: inventory.v1.ChangeMongoDBExporterParams.common:type_name -> inventory.v1.ChangeCommonAgentParams + 74, // 135: inventory.v1.AddPostgresExporterParams.custom_labels:type_name -> inventory.v1.AddPostgresExporterParams.CustomLabelsEntry + 85, // 136: inventory.v1.AddPostgresExporterParams.log_level:type_name -> inventory.v1.LogLevel + 16, // 137: inventory.v1.ChangePostgresExporterParams.common:type_name -> inventory.v1.ChangeCommonAgentParams + 75, // 138: inventory.v1.AddProxySQLExporterParams.custom_labels:type_name -> inventory.v1.AddProxySQLExporterParams.CustomLabelsEntry + 85, // 139: inventory.v1.AddProxySQLExporterParams.log_level:type_name -> inventory.v1.LogLevel + 16, // 140: inventory.v1.ChangeProxySQLExporterParams.common:type_name -> inventory.v1.ChangeCommonAgentParams + 76, // 141: inventory.v1.AddQANMySQLPerfSchemaAgentParams.custom_labels:type_name -> inventory.v1.AddQANMySQLPerfSchemaAgentParams.CustomLabelsEntry + 85, // 142: inventory.v1.AddQANMySQLPerfSchemaAgentParams.log_level:type_name -> inventory.v1.LogLevel + 16, // 143: inventory.v1.ChangeQANMySQLPerfSchemaAgentParams.common:type_name -> inventory.v1.ChangeCommonAgentParams + 77, // 144: inventory.v1.AddQANMySQLSlowlogAgentParams.custom_labels:type_name -> inventory.v1.AddQANMySQLSlowlogAgentParams.CustomLabelsEntry + 85, // 145: inventory.v1.AddQANMySQLSlowlogAgentParams.log_level:type_name -> inventory.v1.LogLevel + 16, // 146: inventory.v1.ChangeQANMySQLSlowlogAgentParams.common:type_name -> inventory.v1.ChangeCommonAgentParams + 78, // 147: inventory.v1.AddQANMongoDBProfilerAgentParams.custom_labels:type_name -> inventory.v1.AddQANMongoDBProfilerAgentParams.CustomLabelsEntry + 85, // 148: inventory.v1.AddQANMongoDBProfilerAgentParams.log_level:type_name -> inventory.v1.LogLevel + 16, // 149: inventory.v1.ChangeQANMongoDBProfilerAgentParams.common:type_name -> inventory.v1.ChangeCommonAgentParams + 79, // 150: inventory.v1.AddQANPostgreSQLPgStatementsAgentParams.custom_labels:type_name -> inventory.v1.AddQANPostgreSQLPgStatementsAgentParams.CustomLabelsEntry + 85, // 151: inventory.v1.AddQANPostgreSQLPgStatementsAgentParams.log_level:type_name -> inventory.v1.LogLevel + 16, // 152: inventory.v1.ChangeQANPostgreSQLPgStatementsAgentParams.common:type_name -> inventory.v1.ChangeCommonAgentParams + 80, // 153: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentParams.custom_labels:type_name -> inventory.v1.AddQANPostgreSQLPgStatMonitorAgentParams.CustomLabelsEntry + 85, // 154: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentParams.log_level:type_name -> inventory.v1.LogLevel + 16, // 155: inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentParams.common:type_name -> inventory.v1.ChangeCommonAgentParams + 81, // 156: inventory.v1.AddRDSExporterParams.custom_labels:type_name -> inventory.v1.AddRDSExporterParams.CustomLabelsEntry + 85, // 157: inventory.v1.AddRDSExporterParams.log_level:type_name -> inventory.v1.LogLevel + 16, // 158: inventory.v1.ChangeRDSExporterParams.common:type_name -> inventory.v1.ChangeCommonAgentParams + 82, // 159: inventory.v1.AddExternalExporterParams.custom_labels:type_name -> inventory.v1.AddExternalExporterParams.CustomLabelsEntry + 16, // 160: inventory.v1.ChangeExternalExporterParams.common:type_name -> inventory.v1.ChangeCommonAgentParams + 83, // 161: inventory.v1.AddAzureDatabaseExporterParams.custom_labels:type_name -> inventory.v1.AddAzureDatabaseExporterParams.CustomLabelsEntry + 85, // 162: inventory.v1.AddAzureDatabaseExporterParams.log_level:type_name -> inventory.v1.LogLevel + 16, // 163: inventory.v1.ChangeAzureDatabaseExporterParams.common:type_name -> inventory.v1.ChangeCommonAgentParams + 17, // 164: inventory.v1.AgentsService.ListAgents:input_type -> inventory.v1.ListAgentsRequest + 19, // 165: inventory.v1.AgentsService.GetAgent:input_type -> inventory.v1.GetAgentRequest + 21, // 166: inventory.v1.AgentsService.GetAgentLogs:input_type -> inventory.v1.GetAgentLogsRequest + 23, // 167: inventory.v1.AgentsService.AddAgent:input_type -> inventory.v1.AddAgentRequest + 25, // 168: inventory.v1.AgentsService.ChangeAgent:input_type -> inventory.v1.ChangeAgentRequest + 54, // 169: inventory.v1.AgentsService.RemoveAgent:input_type -> inventory.v1.RemoveAgentRequest + 18, // 170: inventory.v1.AgentsService.ListAgents:output_type -> inventory.v1.ListAgentsResponse + 20, // 171: inventory.v1.AgentsService.GetAgent:output_type -> inventory.v1.GetAgentResponse + 22, // 172: inventory.v1.AgentsService.GetAgentLogs:output_type -> inventory.v1.GetAgentLogsResponse + 24, // 173: inventory.v1.AgentsService.AddAgent:output_type -> inventory.v1.AddAgentResponse + 26, // 174: inventory.v1.AgentsService.ChangeAgent:output_type -> inventory.v1.ChangeAgentResponse + 55, // 175: inventory.v1.AgentsService.RemoveAgent:output_type -> inventory.v1.RemoveAgentResponse + 170, // [170:176] is the sub-list for method output_type + 164, // [164:170] is the sub-list for method input_type + 164, // [164:164] is the sub-list for extension type_name + 164, // [164:164] is the sub-list for extension extendee + 0, // [0:164] is the sub-list for field type_name } func init() { file_inventory_v1_agents_proto_init() } @@ -10104,7 +9766,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddPMMAgentParams); i { + switch v := v.(*AddAgentRequest); i { case 0: return &v.state case 1: @@ -10116,7 +9778,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddAgentRequest); i { + switch v := v.(*AddAgentResponse); i { case 0: return &v.state case 1: @@ -10128,7 +9790,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddAgentResponse); i { + switch v := v.(*ChangeAgentRequest); i { case 0: return &v.state case 1: @@ -10140,7 +9802,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddNodeExporterParams); i { + switch v := v.(*ChangeAgentResponse); i { case 0: return &v.state case 1: @@ -10152,7 +9814,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeNodeExporterRequest); i { + switch v := v.(*AddPMMAgentParams); i { case 0: return &v.state case 1: @@ -10164,7 +9826,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeNodeExporterResponse); i { + switch v := v.(*AddNodeExporterParams); i { case 0: return &v.state case 1: @@ -10176,7 +9838,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddMySQLdExporterParams); i { + switch v := v.(*ChangeNodeExporterParams); i { case 0: return &v.state case 1: @@ -10188,7 +9850,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeMySQLdExporterRequest); i { + switch v := v.(*AddMySQLdExporterParams); i { case 0: return &v.state case 1: @@ -10200,7 +9862,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeMySQLdExporterResponse); i { + switch v := v.(*ChangeMySQLdExporterParams); i { case 0: return &v.state case 1: @@ -10224,7 +9886,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeMongoDBExporterRequest); i { + switch v := v.(*ChangeMongoDBExporterParams); i { case 0: return &v.state case 1: @@ -10236,7 +9898,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeMongoDBExporterResponse); i { + switch v := v.(*AddPostgresExporterParams); i { case 0: return &v.state case 1: @@ -10248,7 +9910,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddPostgresExporterParams); i { + switch v := v.(*ChangePostgresExporterParams); i { case 0: return &v.state case 1: @@ -10260,7 +9922,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangePostgresExporterRequest); i { + switch v := v.(*AddProxySQLExporterParams); i { case 0: return &v.state case 1: @@ -10272,7 +9934,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangePostgresExporterResponse); i { + switch v := v.(*ChangeProxySQLExporterParams); i { case 0: return &v.state case 1: @@ -10284,7 +9946,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddProxySQLExporterParams); i { + switch v := v.(*AddQANMySQLPerfSchemaAgentParams); i { case 0: return &v.state case 1: @@ -10296,7 +9958,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeProxySQLExporterRequest); i { + switch v := v.(*ChangeQANMySQLPerfSchemaAgentParams); i { case 0: return &v.state case 1: @@ -10308,7 +9970,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeProxySQLExporterResponse); i { + switch v := v.(*AddQANMySQLSlowlogAgentParams); i { case 0: return &v.state case 1: @@ -10320,7 +9982,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddQANMySQLPerfSchemaAgentParams); i { + switch v := v.(*ChangeQANMySQLSlowlogAgentParams); i { case 0: return &v.state case 1: @@ -10332,7 +9994,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeQANMySQLPerfSchemaAgentRequest); i { + switch v := v.(*AddQANMongoDBProfilerAgentParams); i { case 0: return &v.state case 1: @@ -10344,7 +10006,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeQANMySQLPerfSchemaAgentResponse); i { + switch v := v.(*ChangeQANMongoDBProfilerAgentParams); i { case 0: return &v.state case 1: @@ -10356,7 +10018,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddQANMySQLSlowlogAgentParams); i { + switch v := v.(*AddQANPostgreSQLPgStatementsAgentParams); i { case 0: return &v.state case 1: @@ -10368,7 +10030,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeQANMySQLSlowlogAgentRequest); i { + switch v := v.(*ChangeQANPostgreSQLPgStatementsAgentParams); i { case 0: return &v.state case 1: @@ -10380,7 +10042,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeQANMySQLSlowlogAgentResponse); i { + switch v := v.(*AddQANPostgreSQLPgStatMonitorAgentParams); i { case 0: return &v.state case 1: @@ -10392,7 +10054,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddQANMongoDBProfilerAgentParams); i { + switch v := v.(*ChangeQANPostgreSQLPgStatMonitorAgentParams); i { case 0: return &v.state case 1: @@ -10404,7 +10066,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeQANMongoDBProfilerAgentRequest); i { + switch v := v.(*AddRDSExporterParams); i { case 0: return &v.state case 1: @@ -10416,7 +10078,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeQANMongoDBProfilerAgentResponse); i { + switch v := v.(*ChangeRDSExporterParams); i { case 0: return &v.state case 1: @@ -10428,7 +10090,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddQANPostgreSQLPgStatementsAgentParams); i { + switch v := v.(*AddExternalExporterParams); i { case 0: return &v.state case 1: @@ -10440,7 +10102,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeQANPostgreSQLPgStatementsAgentRequest); i { + switch v := v.(*ChangeExternalExporterParams); i { case 0: return &v.state case 1: @@ -10452,7 +10114,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeQANPostgreSQLPgStatementsAgentResponse); i { + switch v := v.(*AddAzureDatabaseExporterParams); i { case 0: return &v.state case 1: @@ -10464,7 +10126,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddQANPostgreSQLPgStatMonitorAgentParams); i { + switch v := v.(*ChangeAzureDatabaseExporterParams); i { case 0: return &v.state case 1: @@ -10476,138 +10138,6 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeQANPostgreSQLPgStatMonitorAgentRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_inventory_v1_agents_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeQANPostgreSQLPgStatMonitorAgentResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_inventory_v1_agents_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddRDSExporterParams); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_inventory_v1_agents_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeRDSExporterRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_inventory_v1_agents_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeRDSExporterResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_inventory_v1_agents_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddExternalExporterParams); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_inventory_v1_agents_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeExternalExporterRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_inventory_v1_agents_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeExternalExporterResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_inventory_v1_agents_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddAzureDatabaseExporterParams); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_inventory_v1_agents_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeAzureDatabaseExporterRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_inventory_v1_agents_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeAzureDatabaseExporterResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_inventory_v1_agents_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveAgentRequest); i { case 0: return &v.state @@ -10619,7 +10149,7 @@ func file_inventory_v1_agents_proto_init() { return nil } } - file_inventory_v1_agents_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { + file_inventory_v1_agents_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveAgentResponse); i { case 0: return &v.state @@ -10632,6 +10162,7 @@ func file_inventory_v1_agents_proto_init() { } } } + file_inventory_v1_agents_proto_msgTypes[15].OneofWrappers = []interface{}{} file_inventory_v1_agents_proto_msgTypes[19].OneofWrappers = []interface{}{ (*GetAgentResponse_PmmAgent)(nil), (*GetAgentResponse_Vmagent)(nil), @@ -10649,7 +10180,7 @@ func file_inventory_v1_agents_proto_init() { (*GetAgentResponse_RdsExporter)(nil), (*GetAgentResponse_AzureDatabaseExporter)(nil), } - file_inventory_v1_agents_proto_msgTypes[23].OneofWrappers = []interface{}{ + file_inventory_v1_agents_proto_msgTypes[22].OneofWrappers = []interface{}{ (*AddAgentRequest_PmmAgent)(nil), (*AddAgentRequest_NodeExporter)(nil), (*AddAgentRequest_MysqldExporter)(nil), @@ -10665,7 +10196,7 @@ func file_inventory_v1_agents_proto_init() { (*AddAgentRequest_QanPostgresqlPgstatementsAgent)(nil), (*AddAgentRequest_QanPostgresqlPgstatmonitorAgent)(nil), } - file_inventory_v1_agents_proto_msgTypes[24].OneofWrappers = []interface{}{ + file_inventory_v1_agents_proto_msgTypes[23].OneofWrappers = []interface{}{ (*AddAgentResponse_PmmAgent)(nil), (*AddAgentResponse_NodeExporter)(nil), (*AddAgentResponse_MysqldExporter)(nil), @@ -10681,13 +10212,43 @@ func file_inventory_v1_agents_proto_init() { (*AddAgentResponse_QanPostgresqlPgstatementsAgent)(nil), (*AddAgentResponse_QanPostgresqlPgstatmonitorAgent)(nil), } + file_inventory_v1_agents_proto_msgTypes[24].OneofWrappers = []interface{}{ + (*ChangeAgentRequest_NodeExporter)(nil), + (*ChangeAgentRequest_MysqldExporter)(nil), + (*ChangeAgentRequest_MongodbExporter)(nil), + (*ChangeAgentRequest_PostgresExporter)(nil), + (*ChangeAgentRequest_ProxysqlExporter)(nil), + (*ChangeAgentRequest_ExternalExporter)(nil), + (*ChangeAgentRequest_RdsExporter)(nil), + (*ChangeAgentRequest_AzureDatabaseExporter)(nil), + (*ChangeAgentRequest_QanMysqlPerfschemaAgent)(nil), + (*ChangeAgentRequest_QanMysqlSlowlogAgent)(nil), + (*ChangeAgentRequest_QanMongodbProfilerAgent)(nil), + (*ChangeAgentRequest_QanPostgresqlPgstatementsAgent)(nil), + (*ChangeAgentRequest_QanPostgresqlPgstatmonitorAgent)(nil), + } + file_inventory_v1_agents_proto_msgTypes[25].OneofWrappers = []interface{}{ + (*ChangeAgentResponse_NodeExporter)(nil), + (*ChangeAgentResponse_MysqldExporter)(nil), + (*ChangeAgentResponse_MongodbExporter)(nil), + (*ChangeAgentResponse_PostgresExporter)(nil), + (*ChangeAgentResponse_ProxysqlExporter)(nil), + (*ChangeAgentResponse_ExternalExporter)(nil), + (*ChangeAgentResponse_RdsExporter)(nil), + (*ChangeAgentResponse_AzureDatabaseExporter)(nil), + (*ChangeAgentResponse_QanMysqlPerfschemaAgent)(nil), + (*ChangeAgentResponse_QanMysqlSlowlogAgent)(nil), + (*ChangeAgentResponse_QanMongodbProfilerAgent)(nil), + (*ChangeAgentResponse_QanPostgresqlPgstatementsAgent)(nil), + (*ChangeAgentResponse_QanPostgresqlPgstatmonitorAgent)(nil), + } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_inventory_v1_agents_proto_rawDesc, NumEnums: 1, - NumMessages: 95, + NumMessages: 83, NumExtensions: 0, NumServices: 1, }, diff --git a/api/inventory/v1/agents.pb.gw.go b/api/inventory/v1/agents.pb.gw.go index c7954fee8a..e9aa11168c 100644 --- a/api/inventory/v1/agents.pb.gw.go +++ b/api/inventory/v1/agents.pb.gw.go @@ -161,8 +161,8 @@ func local_request_AgentsService_AddAgent_0(ctx context.Context, marshaler runti return msg, metadata, err } -func request_AgentsService_ChangeNodeExporter_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeNodeExporterRequest +func request_AgentsService_ChangeAgent_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ChangeAgentRequest var metadata runtime.ServerMetadata newReader, berr := utilities.IOReaderFactory(req.Body) @@ -173,12 +173,12 @@ func request_AgentsService_ChangeNodeExporter_0(ctx context.Context, marshaler r return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.ChangeNodeExporter(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.ChangeAgent(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func local_request_AgentsService_ChangeNodeExporter_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeNodeExporterRequest +func local_request_AgentsService_ChangeAgent_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq ChangeAgentRequest var metadata runtime.ServerMetadata newReader, berr := utilities.IOReaderFactory(req.Body) @@ -189,316 +189,12 @@ func local_request_AgentsService_ChangeNodeExporter_0(ctx context.Context, marsh return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := server.ChangeNodeExporter(ctx, &protoReq) + msg, err := server.ChangeAgent(ctx, &protoReq) return msg, metadata, err } -func request_AgentsService_ChangeMySQLdExporter_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeMySQLdExporterRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.ChangeMySQLdExporter(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_ChangeMySQLdExporter_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeMySQLdExporterRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.ChangeMySQLdExporter(ctx, &protoReq) - return msg, metadata, err -} - -func request_AgentsService_ChangeMongoDBExporter_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeMongoDBExporterRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.ChangeMongoDBExporter(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_ChangeMongoDBExporter_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeMongoDBExporterRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.ChangeMongoDBExporter(ctx, &protoReq) - return msg, metadata, err -} - -func request_AgentsService_ChangePostgresExporter_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangePostgresExporterRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.ChangePostgresExporter(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_ChangePostgresExporter_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangePostgresExporterRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.ChangePostgresExporter(ctx, &protoReq) - return msg, metadata, err -} - -func request_AgentsService_ChangeProxySQLExporter_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeProxySQLExporterRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.ChangeProxySQLExporter(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_ChangeProxySQLExporter_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeProxySQLExporterRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.ChangeProxySQLExporter(ctx, &protoReq) - return msg, metadata, err -} - -func request_AgentsService_ChangeQANMySQLPerfSchemaAgent_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeQANMySQLPerfSchemaAgentRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.ChangeQANMySQLPerfSchemaAgent(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_ChangeQANMySQLPerfSchemaAgent_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeQANMySQLPerfSchemaAgentRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.ChangeQANMySQLPerfSchemaAgent(ctx, &protoReq) - return msg, metadata, err -} - -func request_AgentsService_ChangeQANMySQLSlowlogAgent_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeQANMySQLSlowlogAgentRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.ChangeQANMySQLSlowlogAgent(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_ChangeQANMySQLSlowlogAgent_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeQANMySQLSlowlogAgentRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.ChangeQANMySQLSlowlogAgent(ctx, &protoReq) - return msg, metadata, err -} - -func request_AgentsService_ChangeQANMongoDBProfilerAgent_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeQANMongoDBProfilerAgentRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.ChangeQANMongoDBProfilerAgent(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_ChangeQANMongoDBProfilerAgent_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeQANMongoDBProfilerAgentRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.ChangeQANMongoDBProfilerAgent(ctx, &protoReq) - return msg, metadata, err -} - -func request_AgentsService_ChangeQANPostgreSQLPgStatementsAgent_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeQANPostgreSQLPgStatementsAgentRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.ChangeQANPostgreSQLPgStatementsAgent(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_ChangeQANPostgreSQLPgStatementsAgent_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeQANPostgreSQLPgStatementsAgentRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.ChangeQANPostgreSQLPgStatementsAgent(ctx, &protoReq) - return msg, metadata, err -} - -func request_AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeQANPostgreSQLPgStatMonitorAgentRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.ChangeQANPostgreSQLPgStatMonitorAgent(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeQANPostgreSQLPgStatMonitorAgentRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.ChangeQANPostgreSQLPgStatMonitorAgent(ctx, &protoReq) - return msg, metadata, err -} - -func request_AgentsService_ChangeRDSExporter_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeRDSExporterRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.ChangeRDSExporter(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_ChangeRDSExporter_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeRDSExporterRequest +func request_AgentsService_RemoveAgent_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq RemoveAgentRequest var metadata runtime.ServerMetadata newReader, berr := utilities.IOReaderFactory(req.Body) @@ -509,400 +205,32 @@ func local_request_AgentsService_ChangeRDSExporter_0(ctx context.Context, marsha return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := server.ChangeRDSExporter(ctx, &protoReq) + msg, err := client.RemoveAgent(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func request_AgentsService_ChangeExternalExporter_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeExternalExporterRequest +func local_request_AgentsService_RemoveAgent_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq RemoveAgentRequest var metadata runtime.ServerMetadata newReader, berr := utilities.IOReaderFactory(req.Body) if berr != nil { return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.ChangeExternalExporter(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_ChangeExternalExporter_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeExternalExporterRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.ChangeExternalExporter(ctx, &protoReq) - return msg, metadata, err -} - -func request_AgentsService_ChangeAzureDatabaseExporter_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeAzureDatabaseExporterRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.ChangeAzureDatabaseExporter(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_ChangeAzureDatabaseExporter_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq ChangeAzureDatabaseExporterRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.ChangeAzureDatabaseExporter(ctx, &protoReq) - return msg, metadata, err -} - -func request_AgentsService_RemoveAgent_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq RemoveAgentRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := client.RemoveAgent(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_RemoveAgent_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq RemoveAgentRequest - var metadata runtime.ServerMetadata - - newReader, berr := utilities.IOReaderFactory(req.Body) - if berr != nil { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) - } - if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { - return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) - } - - msg, err := server.RemoveAgent(ctx, &protoReq) - return msg, metadata, err -} - -// RegisterAgentsServiceHandlerServer registers the http handlers for service AgentsService to "mux". -// UnaryRPC :call AgentsServiceServer directly. -// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. -// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterAgentsServiceHandlerFromEndpoint instead. -func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server AgentsServiceServer) error { - mux.Handle("POST", pattern_AgentsService_ListAgents_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/ListAgents", runtime.WithHTTPPathPattern("/v1/inventory/Agents/List")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_ListAgents_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_ListAgents_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_GetAgent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/GetAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/Get")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_GetAgent_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_GetAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_GetAgentLogs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/GetAgentLogs", runtime.WithHTTPPathPattern("/v1/inventory/Agents/GetLogs")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_GetAgentLogs_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_GetAgentLogs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_AddAgent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/AddAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/Add")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_AddAgent_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_AddAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_ChangeNodeExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeNodeExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeNodeExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_ChangeNodeExporter_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_ChangeNodeExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_ChangeMySQLdExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeMySQLdExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeMySQLdExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_ChangeMySQLdExporter_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_ChangeMySQLdExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_ChangeMongoDBExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeMongoDBExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeMongoDBExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_ChangeMongoDBExporter_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_ChangeMongoDBExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_ChangePostgresExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangePostgresExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangePostgresExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_ChangePostgresExporter_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_ChangePostgresExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_ChangeProxySQLExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeProxySQLExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeProxySQLExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_ChangeProxySQLExporter_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_ChangeProxySQLExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_ChangeQANMySQLPerfSchemaAgent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeQANMySQLPerfSchemaAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeQANMySQLPerfSchemaAgent")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_ChangeQANMySQLPerfSchemaAgent_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_ChangeQANMySQLPerfSchemaAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_ChangeQANMySQLSlowlogAgent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeQANMySQLSlowlogAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeQANMySQLSlowlogAgent")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_ChangeQANMySQLSlowlogAgent_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_ChangeQANMySQLSlowlogAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_ChangeQANMongoDBProfilerAgent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - var stream runtime.ServerTransportStream - ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeQANMongoDBProfilerAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeQANMongoDBProfilerAgent")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_ChangeQANMongoDBProfilerAgent_0(annotatedContext, inboundMarshaler, server, req, pathParams) - md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } - forward_AgentsService_ChangeQANMongoDBProfilerAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) + msg, err := server.RemoveAgent(ctx, &protoReq) + return msg, metadata, err +} - mux.Handle("POST", pattern_AgentsService_ChangeQANPostgreSQLPgStatementsAgent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { +// RegisterAgentsServiceHandlerServer registers the http handlers for service AgentsService to "mux". +// UnaryRPC :call AgentsServiceServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterAgentsServiceHandlerFromEndpoint instead. +func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server AgentsServiceServer) error { + mux.Handle("POST", pattern_AgentsService_ListAgents_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() var stream runtime.ServerTransportStream @@ -910,12 +238,12 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeQANPostgreSQLPgStatementsAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeQANPostgreSQLPgStatementsAgent")) + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/ListAgents", runtime.WithHTTPPathPattern("/v1/inventory/Agents/List")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_AgentsService_ChangeQANPostgreSQLPgStatementsAgent_0(annotatedContext, inboundMarshaler, server, req, pathParams) + resp, md, err := local_request_AgentsService_ListAgents_0(annotatedContext, inboundMarshaler, server, req, pathParams) md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { @@ -923,10 +251,10 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM return } - forward_AgentsService_ChangeQANPostgreSQLPgStatementsAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_AgentsService_ListAgents_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_AgentsService_GetAgent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() var stream runtime.ServerTransportStream @@ -934,12 +262,12 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeQANPostgreSQLPgStatMonitorAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeQANPostgreSQLPgStatMonitorAgent")) + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/GetAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/Get")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_0(annotatedContext, inboundMarshaler, server, req, pathParams) + resp, md, err := local_request_AgentsService_GetAgent_0(annotatedContext, inboundMarshaler, server, req, pathParams) md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { @@ -947,10 +275,10 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM return } - forward_AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_AgentsService_GetAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_ChangeRDSExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_AgentsService_GetAgentLogs_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() var stream runtime.ServerTransportStream @@ -958,12 +286,12 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeRDSExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeRDSExporter")) + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/GetAgentLogs", runtime.WithHTTPPathPattern("/v1/inventory/Agents/GetLogs")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_AgentsService_ChangeRDSExporter_0(annotatedContext, inboundMarshaler, server, req, pathParams) + resp, md, err := local_request_AgentsService_GetAgentLogs_0(annotatedContext, inboundMarshaler, server, req, pathParams) md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { @@ -971,10 +299,10 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM return } - forward_AgentsService_ChangeRDSExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_AgentsService_GetAgentLogs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_ChangeExternalExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_AgentsService_AddAgent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() var stream runtime.ServerTransportStream @@ -982,12 +310,12 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeExternalExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeExternalExporter")) + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/AddAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/Add")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_AgentsService_ChangeExternalExporter_0(annotatedContext, inboundMarshaler, server, req, pathParams) + resp, md, err := local_request_AgentsService_AddAgent_0(annotatedContext, inboundMarshaler, server, req, pathParams) md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { @@ -995,10 +323,10 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM return } - forward_AgentsService_ChangeExternalExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_AgentsService_AddAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_ChangeAzureDatabaseExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_AgentsService_ChangeAgent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() var stream runtime.ServerTransportStream @@ -1006,12 +334,12 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeAzureDatabaseExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeAzureDatabaseExporter")) + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/Change")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_AgentsService_ChangeAzureDatabaseExporter_0(annotatedContext, inboundMarshaler, server, req, pathParams) + resp, md, err := local_request_AgentsService_ChangeAgent_0(annotatedContext, inboundMarshaler, server, req, pathParams) md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { @@ -1019,7 +347,7 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM return } - forward_AgentsService_ChangeAzureDatabaseExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_AgentsService_ChangeAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) mux.Handle("POST", pattern_AgentsService_RemoveAgent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { @@ -1170,277 +498,25 @@ func RegisterAgentsServiceHandlerClient(ctx context.Context, mux *runtime.ServeM forward_AgentsService_AddAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_ChangeNodeExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeNodeExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeNodeExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_ChangeNodeExporter_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_ChangeNodeExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_ChangeMySQLdExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeMySQLdExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeMySQLdExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_ChangeMySQLdExporter_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_ChangeMySQLdExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_ChangeMongoDBExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeMongoDBExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeMongoDBExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_ChangeMongoDBExporter_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_ChangeMongoDBExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_ChangePostgresExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangePostgresExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangePostgresExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_ChangePostgresExporter_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_ChangePostgresExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_ChangeProxySQLExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeProxySQLExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeProxySQLExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_ChangeProxySQLExporter_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_ChangeProxySQLExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_ChangeQANMySQLPerfSchemaAgent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeQANMySQLPerfSchemaAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeQANMySQLPerfSchemaAgent")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_ChangeQANMySQLPerfSchemaAgent_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_ChangeQANMySQLPerfSchemaAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_ChangeQANMySQLSlowlogAgent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeQANMySQLSlowlogAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeQANMySQLSlowlogAgent")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_ChangeQANMySQLSlowlogAgent_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_ChangeQANMySQLSlowlogAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_ChangeQANMongoDBProfilerAgent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeQANMongoDBProfilerAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeQANMongoDBProfilerAgent")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_ChangeQANMongoDBProfilerAgent_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_ChangeQANMongoDBProfilerAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_ChangeQANPostgreSQLPgStatementsAgent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeQANPostgreSQLPgStatementsAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeQANPostgreSQLPgStatementsAgent")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_ChangeQANPostgreSQLPgStatementsAgent_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_ChangeQANPostgreSQLPgStatementsAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeQANPostgreSQLPgStatMonitorAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeQANPostgreSQLPgStatMonitorAgent")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_ChangeRDSExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeRDSExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeRDSExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_ChangeRDSExporter_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_ChangeRDSExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_ChangeExternalExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { - ctx, cancel := context.WithCancel(req.Context()) - defer cancel() - inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) - var err error - var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeExternalExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeExternalExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_ChangeExternalExporter_0(annotatedContext, inboundMarshaler, client, req, pathParams) - annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) - if err != nil { - runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) - return - } - - forward_AgentsService_ChangeExternalExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) - }) - - mux.Handle("POST", pattern_AgentsService_ChangeAzureDatabaseExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_AgentsService_ChangeAgent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeAzureDatabaseExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/ChangeAzureDatabaseExporter")) + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/inventory.v1.AgentsService/ChangeAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/Change")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_AgentsService_ChangeAzureDatabaseExporter_0(annotatedContext, inboundMarshaler, client, req, pathParams) + resp, md, err := request_AgentsService_ChangeAgent_0(annotatedContext, inboundMarshaler, client, req, pathParams) annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) if err != nil { runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) return } - forward_AgentsService_ChangeAzureDatabaseExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_AgentsService_ChangeAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) mux.Handle("POST", pattern_AgentsService_RemoveAgent_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { @@ -1476,31 +552,7 @@ var ( pattern_AgentsService_AddAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "Add"}, "")) - pattern_AgentsService_ChangeNodeExporter_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "ChangeNodeExporter"}, "")) - - pattern_AgentsService_ChangeMySQLdExporter_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "ChangeMySQLdExporter"}, "")) - - pattern_AgentsService_ChangeMongoDBExporter_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "ChangeMongoDBExporter"}, "")) - - pattern_AgentsService_ChangePostgresExporter_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "ChangePostgresExporter"}, "")) - - pattern_AgentsService_ChangeProxySQLExporter_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "ChangeProxySQLExporter"}, "")) - - pattern_AgentsService_ChangeQANMySQLPerfSchemaAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "ChangeQANMySQLPerfSchemaAgent"}, "")) - - pattern_AgentsService_ChangeQANMySQLSlowlogAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "ChangeQANMySQLSlowlogAgent"}, "")) - - pattern_AgentsService_ChangeQANMongoDBProfilerAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "ChangeQANMongoDBProfilerAgent"}, "")) - - pattern_AgentsService_ChangeQANPostgreSQLPgStatementsAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "ChangeQANPostgreSQLPgStatementsAgent"}, "")) - - pattern_AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "ChangeQANPostgreSQLPgStatMonitorAgent"}, "")) - - pattern_AgentsService_ChangeRDSExporter_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "ChangeRDSExporter"}, "")) - - pattern_AgentsService_ChangeExternalExporter_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "ChangeExternalExporter"}, "")) - - pattern_AgentsService_ChangeAzureDatabaseExporter_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "ChangeAzureDatabaseExporter"}, "")) + pattern_AgentsService_ChangeAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "Change"}, "")) pattern_AgentsService_RemoveAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "Remove"}, "")) ) @@ -1514,31 +566,7 @@ var ( forward_AgentsService_AddAgent_0 = runtime.ForwardResponseMessage - forward_AgentsService_ChangeNodeExporter_0 = runtime.ForwardResponseMessage - - forward_AgentsService_ChangeMySQLdExporter_0 = runtime.ForwardResponseMessage - - forward_AgentsService_ChangeMongoDBExporter_0 = runtime.ForwardResponseMessage - - forward_AgentsService_ChangePostgresExporter_0 = runtime.ForwardResponseMessage - - forward_AgentsService_ChangeProxySQLExporter_0 = runtime.ForwardResponseMessage - - forward_AgentsService_ChangeQANMySQLPerfSchemaAgent_0 = runtime.ForwardResponseMessage - - forward_AgentsService_ChangeQANMySQLSlowlogAgent_0 = runtime.ForwardResponseMessage - - forward_AgentsService_ChangeQANMongoDBProfilerAgent_0 = runtime.ForwardResponseMessage - - forward_AgentsService_ChangeQANPostgreSQLPgStatementsAgent_0 = runtime.ForwardResponseMessage - - forward_AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_0 = runtime.ForwardResponseMessage - - forward_AgentsService_ChangeRDSExporter_0 = runtime.ForwardResponseMessage - - forward_AgentsService_ChangeExternalExporter_0 = runtime.ForwardResponseMessage - - forward_AgentsService_ChangeAzureDatabaseExporter_0 = runtime.ForwardResponseMessage + forward_AgentsService_ChangeAgent_0 = runtime.ForwardResponseMessage forward_AgentsService_RemoveAgent_0 = runtime.ForwardResponseMessage ) diff --git a/api/inventory/v1/agents.pb.validate.go b/api/inventory/v1/agents.pb.validate.go index 79556d2dc4..b29d80d82c 100644 --- a/api/inventory/v1/agents.pb.validate.go +++ b/api/inventory/v1/agents.pb.validate.go @@ -419,6 +419,8 @@ func (m *MySQLdExporter) validate(all bool) error { // no validation rules for PushMetricsEnabled + // no validation rules for TableCount + // no validation rules for Status // no validation rules for ListenPort @@ -1956,17 +1958,44 @@ func (m *ChangeCommonAgentParams) validate(all bool) error { var errors []error - // no validation rules for Enable - - // no validation rules for Disable - - // no validation rules for CustomLabels - - // no validation rules for RemoveCustomLabels + if m.Enable != nil { + // no validation rules for Enable + } - // no validation rules for EnablePushMetrics + if m.CustomLabels != nil { + if all { + switch v := interface{}(m.GetCustomLabels()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeCommonAgentParamsValidationError{ + field: "CustomLabels", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeCommonAgentParamsValidationError{ + field: "CustomLabels", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetCustomLabels()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeCommonAgentParamsValidationError{ + field: "CustomLabels", + reason: "embedded message failed validation", + cause: err, + } + } + } + } - // no validation rules for DisablePushMetrics + if m.EnablePushMetrics != nil { + // no validation rules for EnablePushMetrics + } if len(errors) > 0 { return ChangeCommonAgentParamsMultiError(errors) @@ -3820,121 +3849,6 @@ var _ interface { ErrorName() string } = GetAgentLogsResponseValidationError{} -// Validate checks the field values on AddPMMAgentParams with the rules defined -// in the proto definition for this message. If any rules are violated, the -// first error encountered is returned, or nil if there are no violations. -func (m *AddPMMAgentParams) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on AddPMMAgentParams with the rules -// defined in the proto definition for this message. If any rules are -// violated, the result is a list of violation errors wrapped in -// AddPMMAgentParamsMultiError, or nil if none found. -func (m *AddPMMAgentParams) ValidateAll() error { - return m.validate(true) -} - -func (m *AddPMMAgentParams) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - - if utf8.RuneCountInString(m.GetRunsOnNodeId()) < 1 { - err := AddPMMAgentParamsValidationError{ - field: "RunsOnNodeId", - reason: "value length must be at least 1 runes", - } - if !all { - return err - } - errors = append(errors, err) - } - - // no validation rules for CustomLabels - - if len(errors) > 0 { - return AddPMMAgentParamsMultiError(errors) - } - - return nil -} - -// AddPMMAgentParamsMultiError is an error wrapping multiple validation errors -// returned by AddPMMAgentParams.ValidateAll() if the designated constraints -// aren't met. -type AddPMMAgentParamsMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m AddPMMAgentParamsMultiError) Error() string { - var msgs []string - for _, err := range m { - msgs = append(msgs, err.Error()) - } - return strings.Join(msgs, "; ") -} - -// AllErrors returns a list of validation violation errors. -func (m AddPMMAgentParamsMultiError) AllErrors() []error { return m } - -// AddPMMAgentParamsValidationError is the validation error returned by -// AddPMMAgentParams.Validate if the designated constraints aren't met. -type AddPMMAgentParamsValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e AddPMMAgentParamsValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e AddPMMAgentParamsValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e AddPMMAgentParamsValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e AddPMMAgentParamsValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e AddPMMAgentParamsValidationError) ErrorName() string { - return "AddPMMAgentParamsValidationError" -} - -// Error satisfies the builtin error interface -func (e AddPMMAgentParamsValidationError) Error() string { - cause := "" - if e.cause != nil { - cause = fmt.Sprintf(" | caused by: %v", e.cause) - } - - key := "" - if e.key { - key = "key for " - } - - return fmt.Sprintf( - "invalid %sAddPMMAgentParams.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = AddPMMAgentParamsValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = AddPMMAgentParamsValidationError{} - // Validate checks the field values on AddAgentRequest with the rules defined // in the proto definition for this message. If any rules are violated, the // first error encountered is returned, or nil if there are no violations. @@ -3957,11 +3871,11 @@ func (m *AddAgentRequest) validate(all bool) error { var errors []error - switch v := m.Exporter.(type) { + switch v := m.Agent.(type) { case *AddAgentRequest_PmmAgent: if v == nil { err := AddAgentRequestValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4002,7 +3916,7 @@ func (m *AddAgentRequest) validate(all bool) error { case *AddAgentRequest_NodeExporter: if v == nil { err := AddAgentRequestValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4043,7 +3957,7 @@ func (m *AddAgentRequest) validate(all bool) error { case *AddAgentRequest_MysqldExporter: if v == nil { err := AddAgentRequestValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4084,7 +3998,7 @@ func (m *AddAgentRequest) validate(all bool) error { case *AddAgentRequest_MongodbExporter: if v == nil { err := AddAgentRequestValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4125,7 +4039,7 @@ func (m *AddAgentRequest) validate(all bool) error { case *AddAgentRequest_PostgresExporter: if v == nil { err := AddAgentRequestValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4166,7 +4080,7 @@ func (m *AddAgentRequest) validate(all bool) error { case *AddAgentRequest_ProxysqlExporter: if v == nil { err := AddAgentRequestValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4207,7 +4121,7 @@ func (m *AddAgentRequest) validate(all bool) error { case *AddAgentRequest_ExternalExporter: if v == nil { err := AddAgentRequestValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4248,7 +4162,7 @@ func (m *AddAgentRequest) validate(all bool) error { case *AddAgentRequest_RdsExporter: if v == nil { err := AddAgentRequestValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4289,7 +4203,7 @@ func (m *AddAgentRequest) validate(all bool) error { case *AddAgentRequest_AzureDatabaseExporter: if v == nil { err := AddAgentRequestValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4330,7 +4244,7 @@ func (m *AddAgentRequest) validate(all bool) error { case *AddAgentRequest_QanMysqlPerfschemaAgent: if v == nil { err := AddAgentRequestValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4371,7 +4285,7 @@ func (m *AddAgentRequest) validate(all bool) error { case *AddAgentRequest_QanMysqlSlowlogAgent: if v == nil { err := AddAgentRequestValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4412,7 +4326,7 @@ func (m *AddAgentRequest) validate(all bool) error { case *AddAgentRequest_QanMongodbProfilerAgent: if v == nil { err := AddAgentRequestValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4453,7 +4367,7 @@ func (m *AddAgentRequest) validate(all bool) error { case *AddAgentRequest_QanPostgresqlPgstatementsAgent: if v == nil { err := AddAgentRequestValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4494,7 +4408,7 @@ func (m *AddAgentRequest) validate(all bool) error { case *AddAgentRequest_QanPostgresqlPgstatmonitorAgent: if v == nil { err := AddAgentRequestValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4636,13 +4550,11 @@ func (m *AddAgentResponse) validate(all bool) error { var errors []error - // no validation rules for TableCount - - switch v := m.Exporter.(type) { + switch v := m.Agent.(type) { case *AddAgentResponse_PmmAgent: if v == nil { err := AddAgentResponseValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4683,7 +4595,7 @@ func (m *AddAgentResponse) validate(all bool) error { case *AddAgentResponse_NodeExporter: if v == nil { err := AddAgentResponseValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4724,7 +4636,7 @@ func (m *AddAgentResponse) validate(all bool) error { case *AddAgentResponse_MysqldExporter: if v == nil { err := AddAgentResponseValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4765,7 +4677,7 @@ func (m *AddAgentResponse) validate(all bool) error { case *AddAgentResponse_MongodbExporter: if v == nil { err := AddAgentResponseValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4806,7 +4718,7 @@ func (m *AddAgentResponse) validate(all bool) error { case *AddAgentResponse_PostgresExporter: if v == nil { err := AddAgentResponseValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4847,7 +4759,7 @@ func (m *AddAgentResponse) validate(all bool) error { case *AddAgentResponse_ProxysqlExporter: if v == nil { err := AddAgentResponseValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4888,7 +4800,7 @@ func (m *AddAgentResponse) validate(all bool) error { case *AddAgentResponse_ExternalExporter: if v == nil { err := AddAgentResponseValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4929,7 +4841,7 @@ func (m *AddAgentResponse) validate(all bool) error { case *AddAgentResponse_RdsExporter: if v == nil { err := AddAgentResponseValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -4970,7 +4882,7 @@ func (m *AddAgentResponse) validate(all bool) error { case *AddAgentResponse_AzureDatabaseExporter: if v == nil { err := AddAgentResponseValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -5011,7 +4923,7 @@ func (m *AddAgentResponse) validate(all bool) error { case *AddAgentResponse_QanMysqlPerfschemaAgent: if v == nil { err := AddAgentResponseValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -5052,7 +4964,7 @@ func (m *AddAgentResponse) validate(all bool) error { case *AddAgentResponse_QanMysqlSlowlogAgent: if v == nil { err := AddAgentResponseValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -5093,7 +5005,7 @@ func (m *AddAgentResponse) validate(all bool) error { case *AddAgentResponse_QanMongodbProfilerAgent: if v == nil { err := AddAgentResponseValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -5134,7 +5046,7 @@ func (m *AddAgentResponse) validate(all bool) error { case *AddAgentResponse_QanPostgresqlPgstatementsAgent: if v == nil { err := AddAgentResponseValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -5175,7 +5087,7 @@ func (m *AddAgentResponse) validate(all bool) error { case *AddAgentResponse_QanPostgresqlPgstatmonitorAgent: if v == nil { err := AddAgentResponseValidationError{ - field: "Exporter", + field: "Agent", reason: "oneof value cannot be a typed-nil", } if !all { @@ -5295,74 +5207,1233 @@ var _ interface { ErrorName() string } = AddAgentResponseValidationError{} -// Validate checks the field values on AddNodeExporterParams with the rules +// Validate checks the field values on ChangeAgentRequest with the rules // defined in the proto definition for this message. If any rules are // violated, the first error encountered is returned, or nil if there are no violations. -func (m *AddNodeExporterParams) Validate() error { +func (m *ChangeAgentRequest) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on AddNodeExporterParams with the rules +// ValidateAll checks the field values on ChangeAgentRequest with the rules // defined in the proto definition for this message. If any rules are // violated, the result is a list of violation errors wrapped in -// AddNodeExporterParamsMultiError, or nil if none found. -func (m *AddNodeExporterParams) ValidateAll() error { +// ChangeAgentRequestMultiError, or nil if none found. +func (m *ChangeAgentRequest) ValidateAll() error { return m.validate(true) } -func (m *AddNodeExporterParams) validate(all bool) error { +func (m *ChangeAgentRequest) validate(all bool) error { if m == nil { return nil } var errors []error - if utf8.RuneCountInString(m.GetPmmAgentId()) < 1 { - err := AddNodeExporterParamsValidationError{ - field: "PmmAgentId", - reason: "value length must be at least 1 runes", - } - if !all { - return err + switch v := m.Agent.(type) { + case *ChangeAgentRequest_NodeExporter: + if v == nil { + err := ChangeAgentRequestValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) } - errors = append(errors, err) - } - - // no validation rules for CustomLabels - - // no validation rules for PushMetrics - - // no validation rules for LogLevel - - // no validation rules for ExposeExporter - if len(errors) > 0 { - return AddNodeExporterParamsMultiError(errors) - } - - return nil -} + if all { + switch v := interface{}(m.GetNodeExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "NodeExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "NodeExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetNodeExporter()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentRequestValidationError{ + field: "NodeExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } -// AddNodeExporterParamsMultiError is an error wrapping multiple validation -// errors returned by AddNodeExporterParams.ValidateAll() if the designated -// constraints aren't met. -type AddNodeExporterParamsMultiError []error + case *ChangeAgentRequest_MysqldExporter: + if v == nil { + err := ChangeAgentRequestValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } -// Error returns a concatenation of all the error messages it wraps. -func (m AddNodeExporterParamsMultiError) Error() string { - var msgs []string - for _, err := range m { + if all { + switch v := interface{}(m.GetMysqldExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "MysqldExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "MysqldExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetMysqldExporter()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentRequestValidationError{ + field: "MysqldExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentRequest_MongodbExporter: + if v == nil { + err := ChangeAgentRequestValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetMongodbExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "MongodbExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "MongodbExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetMongodbExporter()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentRequestValidationError{ + field: "MongodbExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentRequest_PostgresExporter: + if v == nil { + err := ChangeAgentRequestValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetPostgresExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "PostgresExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "PostgresExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetPostgresExporter()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentRequestValidationError{ + field: "PostgresExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentRequest_ProxysqlExporter: + if v == nil { + err := ChangeAgentRequestValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetProxysqlExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "ProxysqlExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "ProxysqlExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetProxysqlExporter()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentRequestValidationError{ + field: "ProxysqlExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentRequest_ExternalExporter: + if v == nil { + err := ChangeAgentRequestValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetExternalExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "ExternalExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "ExternalExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetExternalExporter()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentRequestValidationError{ + field: "ExternalExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentRequest_RdsExporter: + if v == nil { + err := ChangeAgentRequestValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetRdsExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "RdsExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "RdsExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetRdsExporter()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentRequestValidationError{ + field: "RdsExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentRequest_AzureDatabaseExporter: + if v == nil { + err := ChangeAgentRequestValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetAzureDatabaseExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "AzureDatabaseExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "AzureDatabaseExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetAzureDatabaseExporter()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentRequestValidationError{ + field: "AzureDatabaseExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentRequest_QanMysqlPerfschemaAgent: + if v == nil { + err := ChangeAgentRequestValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetQanMysqlPerfschemaAgent()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "QanMysqlPerfschemaAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "QanMysqlPerfschemaAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetQanMysqlPerfschemaAgent()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentRequestValidationError{ + field: "QanMysqlPerfschemaAgent", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentRequest_QanMysqlSlowlogAgent: + if v == nil { + err := ChangeAgentRequestValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetQanMysqlSlowlogAgent()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "QanMysqlSlowlogAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "QanMysqlSlowlogAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetQanMysqlSlowlogAgent()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentRequestValidationError{ + field: "QanMysqlSlowlogAgent", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentRequest_QanMongodbProfilerAgent: + if v == nil { + err := ChangeAgentRequestValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetQanMongodbProfilerAgent()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "QanMongodbProfilerAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "QanMongodbProfilerAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetQanMongodbProfilerAgent()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentRequestValidationError{ + field: "QanMongodbProfilerAgent", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentRequest_QanPostgresqlPgstatementsAgent: + if v == nil { + err := ChangeAgentRequestValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetQanPostgresqlPgstatementsAgent()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "QanPostgresqlPgstatementsAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "QanPostgresqlPgstatementsAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetQanPostgresqlPgstatementsAgent()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentRequestValidationError{ + field: "QanPostgresqlPgstatementsAgent", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentRequest_QanPostgresqlPgstatmonitorAgent: + if v == nil { + err := ChangeAgentRequestValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetQanPostgresqlPgstatmonitorAgent()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "QanPostgresqlPgstatmonitorAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentRequestValidationError{ + field: "QanPostgresqlPgstatmonitorAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetQanPostgresqlPgstatmonitorAgent()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentRequestValidationError{ + field: "QanPostgresqlPgstatmonitorAgent", + reason: "embedded message failed validation", + cause: err, + } + } + } + + default: + _ = v // ensures v is used + } + + if len(errors) > 0 { + return ChangeAgentRequestMultiError(errors) + } + + return nil +} + +// ChangeAgentRequestMultiError is an error wrapping multiple validation errors +// returned by ChangeAgentRequest.ValidateAll() if the designated constraints +// aren't met. +type ChangeAgentRequestMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m ChangeAgentRequestMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m ChangeAgentRequestMultiError) AllErrors() []error { return m } + +// ChangeAgentRequestValidationError is the validation error returned by +// ChangeAgentRequest.Validate if the designated constraints aren't met. +type ChangeAgentRequestValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e ChangeAgentRequestValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e ChangeAgentRequestValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e ChangeAgentRequestValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e ChangeAgentRequestValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e ChangeAgentRequestValidationError) ErrorName() string { + return "ChangeAgentRequestValidationError" +} + +// Error satisfies the builtin error interface +func (e ChangeAgentRequestValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sChangeAgentRequest.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = ChangeAgentRequestValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = ChangeAgentRequestValidationError{} + +// Validate checks the field values on ChangeAgentResponse with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *ChangeAgentResponse) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on ChangeAgentResponse with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// ChangeAgentResponseMultiError, or nil if none found. +func (m *ChangeAgentResponse) ValidateAll() error { + return m.validate(true) +} + +func (m *ChangeAgentResponse) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + switch v := m.Agent.(type) { + case *ChangeAgentResponse_NodeExporter: + if v == nil { + err := ChangeAgentResponseValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetNodeExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "NodeExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "NodeExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetNodeExporter()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentResponseValidationError{ + field: "NodeExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentResponse_MysqldExporter: + if v == nil { + err := ChangeAgentResponseValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetMysqldExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "MysqldExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "MysqldExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetMysqldExporter()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentResponseValidationError{ + field: "MysqldExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentResponse_MongodbExporter: + if v == nil { + err := ChangeAgentResponseValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetMongodbExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "MongodbExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "MongodbExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetMongodbExporter()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentResponseValidationError{ + field: "MongodbExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentResponse_PostgresExporter: + if v == nil { + err := ChangeAgentResponseValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetPostgresExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "PostgresExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "PostgresExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetPostgresExporter()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentResponseValidationError{ + field: "PostgresExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentResponse_ProxysqlExporter: + if v == nil { + err := ChangeAgentResponseValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetProxysqlExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "ProxysqlExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "ProxysqlExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetProxysqlExporter()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentResponseValidationError{ + field: "ProxysqlExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentResponse_ExternalExporter: + if v == nil { + err := ChangeAgentResponseValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetExternalExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "ExternalExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "ExternalExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetExternalExporter()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentResponseValidationError{ + field: "ExternalExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentResponse_RdsExporter: + if v == nil { + err := ChangeAgentResponseValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetRdsExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "RdsExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "RdsExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetRdsExporter()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentResponseValidationError{ + field: "RdsExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentResponse_AzureDatabaseExporter: + if v == nil { + err := ChangeAgentResponseValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetAzureDatabaseExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "AzureDatabaseExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "AzureDatabaseExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetAzureDatabaseExporter()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentResponseValidationError{ + field: "AzureDatabaseExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentResponse_QanMysqlPerfschemaAgent: + if v == nil { + err := ChangeAgentResponseValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetQanMysqlPerfschemaAgent()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "QanMysqlPerfschemaAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "QanMysqlPerfschemaAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetQanMysqlPerfschemaAgent()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentResponseValidationError{ + field: "QanMysqlPerfschemaAgent", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentResponse_QanMysqlSlowlogAgent: + if v == nil { + err := ChangeAgentResponseValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetQanMysqlSlowlogAgent()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "QanMysqlSlowlogAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "QanMysqlSlowlogAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetQanMysqlSlowlogAgent()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentResponseValidationError{ + field: "QanMysqlSlowlogAgent", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentResponse_QanMongodbProfilerAgent: + if v == nil { + err := ChangeAgentResponseValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetQanMongodbProfilerAgent()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "QanMongodbProfilerAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "QanMongodbProfilerAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetQanMongodbProfilerAgent()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentResponseValidationError{ + field: "QanMongodbProfilerAgent", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentResponse_QanPostgresqlPgstatementsAgent: + if v == nil { + err := ChangeAgentResponseValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetQanPostgresqlPgstatementsAgent()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "QanPostgresqlPgstatementsAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "QanPostgresqlPgstatementsAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetQanPostgresqlPgstatementsAgent()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentResponseValidationError{ + field: "QanPostgresqlPgstatementsAgent", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ChangeAgentResponse_QanPostgresqlPgstatmonitorAgent: + if v == nil { + err := ChangeAgentResponseValidationError{ + field: "Agent", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetQanPostgresqlPgstatmonitorAgent()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "QanPostgresqlPgstatmonitorAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ChangeAgentResponseValidationError{ + field: "QanPostgresqlPgstatmonitorAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetQanPostgresqlPgstatmonitorAgent()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ChangeAgentResponseValidationError{ + field: "QanPostgresqlPgstatmonitorAgent", + reason: "embedded message failed validation", + cause: err, + } + } + } + + default: + _ = v // ensures v is used + } + + if len(errors) > 0 { + return ChangeAgentResponseMultiError(errors) + } + + return nil +} + +// ChangeAgentResponseMultiError is an error wrapping multiple validation +// errors returned by ChangeAgentResponse.ValidateAll() if the designated +// constraints aren't met. +type ChangeAgentResponseMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m ChangeAgentResponseMultiError) Error() string { + var msgs []string + for _, err := range m { msgs = append(msgs, err.Error()) } return strings.Join(msgs, "; ") } // AllErrors returns a list of validation violation errors. -func (m AddNodeExporterParamsMultiError) AllErrors() []error { return m } +func (m ChangeAgentResponseMultiError) AllErrors() []error { return m } -// AddNodeExporterParamsValidationError is the validation error returned by -// AddNodeExporterParams.Validate if the designated constraints aren't met. -type AddNodeExporterParamsValidationError struct { +// ChangeAgentResponseValidationError is the validation error returned by +// ChangeAgentResponse.Validate if the designated constraints aren't met. +type ChangeAgentResponseValidationError struct { field string reason string cause error @@ -5370,24 +6441,24 @@ type AddNodeExporterParamsValidationError struct { } // Field function returns field value. -func (e AddNodeExporterParamsValidationError) Field() string { return e.field } +func (e ChangeAgentResponseValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e AddNodeExporterParamsValidationError) Reason() string { return e.reason } +func (e ChangeAgentResponseValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e AddNodeExporterParamsValidationError) Cause() error { return e.cause } +func (e ChangeAgentResponseValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e AddNodeExporterParamsValidationError) Key() bool { return e.key } +func (e ChangeAgentResponseValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e AddNodeExporterParamsValidationError) ErrorName() string { - return "AddNodeExporterParamsValidationError" +func (e ChangeAgentResponseValidationError) ErrorName() string { + return "ChangeAgentResponseValidationError" } // Error satisfies the builtin error interface -func (e AddNodeExporterParamsValidationError) Error() string { +func (e ChangeAgentResponseValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -5399,14 +6470,14 @@ func (e AddNodeExporterParamsValidationError) Error() string { } return fmt.Sprintf( - "invalid %sAddNodeExporterParams.%s: %s%s", + "invalid %sChangeAgentResponse.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = AddNodeExporterParamsValidationError{} +var _ error = ChangeAgentResponseValidationError{} var _ interface { Field() string @@ -5414,33 +6485,33 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = AddNodeExporterParamsValidationError{} +} = ChangeAgentResponseValidationError{} -// Validate checks the field values on ChangeNodeExporterRequest with the rules -// defined in the proto definition for this message. If any rules are -// violated, the first error encountered is returned, or nil if there are no violations. -func (m *ChangeNodeExporterRequest) Validate() error { +// Validate checks the field values on AddPMMAgentParams with the rules defined +// in the proto definition for this message. If any rules are violated, the +// first error encountered is returned, or nil if there are no violations. +func (m *AddPMMAgentParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on ChangeNodeExporterRequest with the -// rules defined in the proto definition for this message. If any rules are +// ValidateAll checks the field values on AddPMMAgentParams with the rules +// defined in the proto definition for this message. If any rules are // violated, the result is a list of violation errors wrapped in -// ChangeNodeExporterRequestMultiError, or nil if none found. -func (m *ChangeNodeExporterRequest) ValidateAll() error { +// AddPMMAgentParamsMultiError, or nil if none found. +func (m *AddPMMAgentParams) ValidateAll() error { return m.validate(true) } -func (m *ChangeNodeExporterRequest) validate(all bool) error { +func (m *AddPMMAgentParams) validate(all bool) error { if m == nil { return nil } var errors []error - if utf8.RuneCountInString(m.GetAgentId()) < 1 { - err := ChangeNodeExporterRequestValidationError{ - field: "AgentId", + if utf8.RuneCountInString(m.GetRunsOnNodeId()) < 1 { + err := AddPMMAgentParamsValidationError{ + field: "RunsOnNodeId", reason: "value length must be at least 1 runes", } if !all { @@ -5449,49 +6520,143 @@ func (m *ChangeNodeExporterRequest) validate(all bool) error { errors = append(errors, err) } - if all { - switch v := interface{}(m.GetCommon()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeNodeExporterRequestValidationError{ - field: "Common", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, ChangeNodeExporterRequestValidationError{ - field: "Common", - reason: "embedded message failed validation", - cause: err, - }) - } + // no validation rules for CustomLabels + + if len(errors) > 0 { + return AddPMMAgentParamsMultiError(errors) + } + + return nil +} + +// AddPMMAgentParamsMultiError is an error wrapping multiple validation errors +// returned by AddPMMAgentParams.ValidateAll() if the designated constraints +// aren't met. +type AddPMMAgentParamsMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m AddPMMAgentParamsMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m AddPMMAgentParamsMultiError) AllErrors() []error { return m } + +// AddPMMAgentParamsValidationError is the validation error returned by +// AddPMMAgentParams.Validate if the designated constraints aren't met. +type AddPMMAgentParamsValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e AddPMMAgentParamsValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e AddPMMAgentParamsValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e AddPMMAgentParamsValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e AddPMMAgentParamsValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e AddPMMAgentParamsValidationError) ErrorName() string { + return "AddPMMAgentParamsValidationError" +} + +// Error satisfies the builtin error interface +func (e AddPMMAgentParamsValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sAddPMMAgentParams.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = AddPMMAgentParamsValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = AddPMMAgentParamsValidationError{} + +// Validate checks the field values on AddNodeExporterParams with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *AddNodeExporterParams) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on AddNodeExporterParams with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// AddNodeExporterParamsMultiError, or nil if none found. +func (m *AddNodeExporterParams) ValidateAll() error { + return m.validate(true) +} + +func (m *AddNodeExporterParams) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + if utf8.RuneCountInString(m.GetPmmAgentId()) < 1 { + err := AddNodeExporterParamsValidationError{ + field: "PmmAgentId", + reason: "value length must be at least 1 runes", } - } else if v, ok := interface{}(m.GetCommon()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return ChangeNodeExporterRequestValidationError{ - field: "Common", - reason: "embedded message failed validation", - cause: err, - } + if !all { + return err } + errors = append(errors, err) } + // no validation rules for CustomLabels + + // no validation rules for PushMetrics + + // no validation rules for LogLevel + + // no validation rules for ExposeExporter + if len(errors) > 0 { - return ChangeNodeExporterRequestMultiError(errors) + return AddNodeExporterParamsMultiError(errors) } return nil } -// ChangeNodeExporterRequestMultiError is an error wrapping multiple validation -// errors returned by ChangeNodeExporterRequest.ValidateAll() if the -// designated constraints aren't met. -type ChangeNodeExporterRequestMultiError []error +// AddNodeExporterParamsMultiError is an error wrapping multiple validation +// errors returned by AddNodeExporterParams.ValidateAll() if the designated +// constraints aren't met. +type AddNodeExporterParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m ChangeNodeExporterRequestMultiError) Error() string { +func (m AddNodeExporterParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -5500,11 +6665,11 @@ func (m ChangeNodeExporterRequestMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m ChangeNodeExporterRequestMultiError) AllErrors() []error { return m } +func (m AddNodeExporterParamsMultiError) AllErrors() []error { return m } -// ChangeNodeExporterRequestValidationError is the validation error returned by -// ChangeNodeExporterRequest.Validate if the designated constraints aren't met. -type ChangeNodeExporterRequestValidationError struct { +// AddNodeExporterParamsValidationError is the validation error returned by +// AddNodeExporterParams.Validate if the designated constraints aren't met. +type AddNodeExporterParamsValidationError struct { field string reason string cause error @@ -5512,24 +6677,24 @@ type ChangeNodeExporterRequestValidationError struct { } // Field function returns field value. -func (e ChangeNodeExporterRequestValidationError) Field() string { return e.field } +func (e AddNodeExporterParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e ChangeNodeExporterRequestValidationError) Reason() string { return e.reason } +func (e AddNodeExporterParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e ChangeNodeExporterRequestValidationError) Cause() error { return e.cause } +func (e AddNodeExporterParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e ChangeNodeExporterRequestValidationError) Key() bool { return e.key } +func (e AddNodeExporterParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e ChangeNodeExporterRequestValidationError) ErrorName() string { - return "ChangeNodeExporterRequestValidationError" +func (e AddNodeExporterParamsValidationError) ErrorName() string { + return "AddNodeExporterParamsValidationError" } // Error satisfies the builtin error interface -func (e ChangeNodeExporterRequestValidationError) Error() string { +func (e AddNodeExporterParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -5541,14 +6706,14 @@ func (e ChangeNodeExporterRequestValidationError) Error() string { } return fmt.Sprintf( - "invalid %sChangeNodeExporterRequest.%s: %s%s", + "invalid %sAddNodeExporterParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = ChangeNodeExporterRequestValidationError{} +var _ error = AddNodeExporterParamsValidationError{} var _ interface { Field() string @@ -5556,53 +6721,64 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = ChangeNodeExporterRequestValidationError{} +} = AddNodeExporterParamsValidationError{} -// Validate checks the field values on ChangeNodeExporterResponse with the -// rules defined in the proto definition for this message. If any rules are +// Validate checks the field values on ChangeNodeExporterParams with the rules +// defined in the proto definition for this message. If any rules are // violated, the first error encountered is returned, or nil if there are no violations. -func (m *ChangeNodeExporterResponse) Validate() error { +func (m *ChangeNodeExporterParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on ChangeNodeExporterResponse with the +// ValidateAll checks the field values on ChangeNodeExporterParams with the // rules defined in the proto definition for this message. If any rules are // violated, the result is a list of violation errors wrapped in -// ChangeNodeExporterResponseMultiError, or nil if none found. -func (m *ChangeNodeExporterResponse) ValidateAll() error { +// ChangeNodeExporterParamsMultiError, or nil if none found. +func (m *ChangeNodeExporterParams) ValidateAll() error { return m.validate(true) } -func (m *ChangeNodeExporterResponse) validate(all bool) error { +func (m *ChangeNodeExporterParams) validate(all bool) error { if m == nil { return nil } var errors []error + if utf8.RuneCountInString(m.GetAgentId()) < 1 { + err := ChangeNodeExporterParamsValidationError{ + field: "AgentId", + reason: "value length must be at least 1 runes", + } + if !all { + return err + } + errors = append(errors, err) + } + if all { - switch v := interface{}(m.GetNodeExporter()).(type) { + switch v := interface{}(m.GetCommon()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeNodeExporterResponseValidationError{ - field: "NodeExporter", + errors = append(errors, ChangeNodeExporterParamsValidationError{ + field: "Common", reason: "embedded message failed validation", cause: err, }) } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, ChangeNodeExporterResponseValidationError{ - field: "NodeExporter", + errors = append(errors, ChangeNodeExporterParamsValidationError{ + field: "Common", reason: "embedded message failed validation", cause: err, }) } } - } else if v, ok := interface{}(m.GetNodeExporter()).(interface{ Validate() error }); ok { + } else if v, ok := interface{}(m.GetCommon()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return ChangeNodeExporterResponseValidationError{ - field: "NodeExporter", + return ChangeNodeExporterParamsValidationError{ + field: "Common", reason: "embedded message failed validation", cause: err, } @@ -5610,19 +6786,19 @@ func (m *ChangeNodeExporterResponse) validate(all bool) error { } if len(errors) > 0 { - return ChangeNodeExporterResponseMultiError(errors) + return ChangeNodeExporterParamsMultiError(errors) } return nil } -// ChangeNodeExporterResponseMultiError is an error wrapping multiple -// validation errors returned by ChangeNodeExporterResponse.ValidateAll() if -// the designated constraints aren't met. -type ChangeNodeExporterResponseMultiError []error +// ChangeNodeExporterParamsMultiError is an error wrapping multiple validation +// errors returned by ChangeNodeExporterParams.ValidateAll() if the designated +// constraints aren't met. +type ChangeNodeExporterParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m ChangeNodeExporterResponseMultiError) Error() string { +func (m ChangeNodeExporterParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -5631,11 +6807,11 @@ func (m ChangeNodeExporterResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m ChangeNodeExporterResponseMultiError) AllErrors() []error { return m } +func (m ChangeNodeExporterParamsMultiError) AllErrors() []error { return m } -// ChangeNodeExporterResponseValidationError is the validation error returned -// by ChangeNodeExporterResponse.Validate if the designated constraints aren't met. -type ChangeNodeExporterResponseValidationError struct { +// ChangeNodeExporterParamsValidationError is the validation error returned by +// ChangeNodeExporterParams.Validate if the designated constraints aren't met. +type ChangeNodeExporterParamsValidationError struct { field string reason string cause error @@ -5643,24 +6819,24 @@ type ChangeNodeExporterResponseValidationError struct { } // Field function returns field value. -func (e ChangeNodeExporterResponseValidationError) Field() string { return e.field } +func (e ChangeNodeExporterParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e ChangeNodeExporterResponseValidationError) Reason() string { return e.reason } +func (e ChangeNodeExporterParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e ChangeNodeExporterResponseValidationError) Cause() error { return e.cause } +func (e ChangeNodeExporterParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e ChangeNodeExporterResponseValidationError) Key() bool { return e.key } +func (e ChangeNodeExporterParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e ChangeNodeExporterResponseValidationError) ErrorName() string { - return "ChangeNodeExporterResponseValidationError" +func (e ChangeNodeExporterParamsValidationError) ErrorName() string { + return "ChangeNodeExporterParamsValidationError" } // Error satisfies the builtin error interface -func (e ChangeNodeExporterResponseValidationError) Error() string { +func (e ChangeNodeExporterParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -5672,14 +6848,14 @@ func (e ChangeNodeExporterResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sChangeNodeExporterResponse.%s: %s%s", + "invalid %sChangeNodeExporterParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = ChangeNodeExporterResponseValidationError{} +var _ error = ChangeNodeExporterParamsValidationError{} var _ interface { Field() string @@ -5687,7 +6863,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = ChangeNodeExporterResponseValidationError{} +} = ChangeNodeExporterParamsValidationError{} // Validate checks the field values on AddMySQLdExporterParams with the rules // defined in the proto definition for this message. If any rules are @@ -5850,22 +7026,22 @@ var _ interface { ErrorName() string } = AddMySQLdExporterParamsValidationError{} -// Validate checks the field values on ChangeMySQLdExporterRequest with the +// Validate checks the field values on ChangeMySQLdExporterParams with the // rules defined in the proto definition for this message. If any rules are // violated, the first error encountered is returned, or nil if there are no violations. -func (m *ChangeMySQLdExporterRequest) Validate() error { +func (m *ChangeMySQLdExporterParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on ChangeMySQLdExporterRequest with the +// ValidateAll checks the field values on ChangeMySQLdExporterParams with the // rules defined in the proto definition for this message. If any rules are // violated, the result is a list of violation errors wrapped in -// ChangeMySQLdExporterRequestMultiError, or nil if none found. -func (m *ChangeMySQLdExporterRequest) ValidateAll() error { +// ChangeMySQLdExporterParamsMultiError, or nil if none found. +func (m *ChangeMySQLdExporterParams) ValidateAll() error { return m.validate(true) } -func (m *ChangeMySQLdExporterRequest) validate(all bool) error { +func (m *ChangeMySQLdExporterParams) validate(all bool) error { if m == nil { return nil } @@ -5873,7 +7049,7 @@ func (m *ChangeMySQLdExporterRequest) validate(all bool) error { var errors []error if utf8.RuneCountInString(m.GetAgentId()) < 1 { - err := ChangeMySQLdExporterRequestValidationError{ + err := ChangeMySQLdExporterParamsValidationError{ field: "AgentId", reason: "value length must be at least 1 runes", } @@ -5887,7 +7063,7 @@ func (m *ChangeMySQLdExporterRequest) validate(all bool) error { switch v := interface{}(m.GetCommon()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeMySQLdExporterRequestValidationError{ + errors = append(errors, ChangeMySQLdExporterParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -5895,7 +7071,7 @@ func (m *ChangeMySQLdExporterRequest) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, ChangeMySQLdExporterRequestValidationError{ + errors = append(errors, ChangeMySQLdExporterParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -5904,7 +7080,7 @@ func (m *ChangeMySQLdExporterRequest) validate(all bool) error { } } else if v, ok := interface{}(m.GetCommon()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return ChangeMySQLdExporterRequestValidationError{ + return ChangeMySQLdExporterParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -5913,151 +7089,19 @@ func (m *ChangeMySQLdExporterRequest) validate(all bool) error { } if len(errors) > 0 { - return ChangeMySQLdExporterRequestMultiError(errors) - } - - return nil -} - -// ChangeMySQLdExporterRequestMultiError is an error wrapping multiple -// validation errors returned by ChangeMySQLdExporterRequest.ValidateAll() if -// the designated constraints aren't met. -type ChangeMySQLdExporterRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m ChangeMySQLdExporterRequestMultiError) Error() string { - var msgs []string - for _, err := range m { - msgs = append(msgs, err.Error()) - } - return strings.Join(msgs, "; ") -} - -// AllErrors returns a list of validation violation errors. -func (m ChangeMySQLdExporterRequestMultiError) AllErrors() []error { return m } - -// ChangeMySQLdExporterRequestValidationError is the validation error returned -// by ChangeMySQLdExporterRequest.Validate if the designated constraints -// aren't met. -type ChangeMySQLdExporterRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e ChangeMySQLdExporterRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e ChangeMySQLdExporterRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e ChangeMySQLdExporterRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e ChangeMySQLdExporterRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e ChangeMySQLdExporterRequestValidationError) ErrorName() string { - return "ChangeMySQLdExporterRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e ChangeMySQLdExporterRequestValidationError) Error() string { - cause := "" - if e.cause != nil { - cause = fmt.Sprintf(" | caused by: %v", e.cause) - } - - key := "" - if e.key { - key = "key for " - } - - return fmt.Sprintf( - "invalid %sChangeMySQLdExporterRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = ChangeMySQLdExporterRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = ChangeMySQLdExporterRequestValidationError{} - -// Validate checks the field values on ChangeMySQLdExporterResponse with the -// rules defined in the proto definition for this message. If any rules are -// violated, the first error encountered is returned, or nil if there are no violations. -func (m *ChangeMySQLdExporterResponse) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on ChangeMySQLdExporterResponse with the -// rules defined in the proto definition for this message. If any rules are -// violated, the result is a list of violation errors wrapped in -// ChangeMySQLdExporterResponseMultiError, or nil if none found. -func (m *ChangeMySQLdExporterResponse) ValidateAll() error { - return m.validate(true) -} - -func (m *ChangeMySQLdExporterResponse) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - - if all { - switch v := interface{}(m.GetMysqldExporter()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeMySQLdExporterResponseValidationError{ - field: "MysqldExporter", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, ChangeMySQLdExporterResponseValidationError{ - field: "MysqldExporter", - reason: "embedded message failed validation", - cause: err, - }) - } - } - } else if v, ok := interface{}(m.GetMysqldExporter()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return ChangeMySQLdExporterResponseValidationError{ - field: "MysqldExporter", - reason: "embedded message failed validation", - cause: err, - } - } - } - - if len(errors) > 0 { - return ChangeMySQLdExporterResponseMultiError(errors) + return ChangeMySQLdExporterParamsMultiError(errors) } return nil } -// ChangeMySQLdExporterResponseMultiError is an error wrapping multiple -// validation errors returned by ChangeMySQLdExporterResponse.ValidateAll() if +// ChangeMySQLdExporterParamsMultiError is an error wrapping multiple +// validation errors returned by ChangeMySQLdExporterParams.ValidateAll() if // the designated constraints aren't met. -type ChangeMySQLdExporterResponseMultiError []error +type ChangeMySQLdExporterParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m ChangeMySQLdExporterResponseMultiError) Error() string { +func (m ChangeMySQLdExporterParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -6066,12 +7110,11 @@ func (m ChangeMySQLdExporterResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m ChangeMySQLdExporterResponseMultiError) AllErrors() []error { return m } +func (m ChangeMySQLdExporterParamsMultiError) AllErrors() []error { return m } -// ChangeMySQLdExporterResponseValidationError is the validation error returned -// by ChangeMySQLdExporterResponse.Validate if the designated constraints -// aren't met. -type ChangeMySQLdExporterResponseValidationError struct { +// ChangeMySQLdExporterParamsValidationError is the validation error returned +// by ChangeMySQLdExporterParams.Validate if the designated constraints aren't met. +type ChangeMySQLdExporterParamsValidationError struct { field string reason string cause error @@ -6079,24 +7122,24 @@ type ChangeMySQLdExporterResponseValidationError struct { } // Field function returns field value. -func (e ChangeMySQLdExporterResponseValidationError) Field() string { return e.field } +func (e ChangeMySQLdExporterParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e ChangeMySQLdExporterResponseValidationError) Reason() string { return e.reason } +func (e ChangeMySQLdExporterParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e ChangeMySQLdExporterResponseValidationError) Cause() error { return e.cause } +func (e ChangeMySQLdExporterParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e ChangeMySQLdExporterResponseValidationError) Key() bool { return e.key } +func (e ChangeMySQLdExporterParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e ChangeMySQLdExporterResponseValidationError) ErrorName() string { - return "ChangeMySQLdExporterResponseValidationError" +func (e ChangeMySQLdExporterParamsValidationError) ErrorName() string { + return "ChangeMySQLdExporterParamsValidationError" } // Error satisfies the builtin error interface -func (e ChangeMySQLdExporterResponseValidationError) Error() string { +func (e ChangeMySQLdExporterParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -6108,14 +7151,14 @@ func (e ChangeMySQLdExporterResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sChangeMySQLdExporterResponse.%s: %s%s", + "invalid %sChangeMySQLdExporterParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = ChangeMySQLdExporterResponseValidationError{} +var _ error = ChangeMySQLdExporterParamsValidationError{} var _ interface { Field() string @@ -6123,7 +7166,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = ChangeMySQLdExporterResponseValidationError{} +} = ChangeMySQLdExporterParamsValidationError{} // Validate checks the field values on AddMongoDBExporterParams with the rules // defined in the proto definition for this message. If any rules are @@ -6225,152 +7268,9 @@ func (m AddMongoDBExporterParamsMultiError) Error() string { // AllErrors returns a list of validation violation errors. func (m AddMongoDBExporterParamsMultiError) AllErrors() []error { return m } -// AddMongoDBExporterParamsValidationError is the validation error returned by -// AddMongoDBExporterParams.Validate if the designated constraints aren't met. -type AddMongoDBExporterParamsValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e AddMongoDBExporterParamsValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e AddMongoDBExporterParamsValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e AddMongoDBExporterParamsValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e AddMongoDBExporterParamsValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e AddMongoDBExporterParamsValidationError) ErrorName() string { - return "AddMongoDBExporterParamsValidationError" -} - -// Error satisfies the builtin error interface -func (e AddMongoDBExporterParamsValidationError) Error() string { - cause := "" - if e.cause != nil { - cause = fmt.Sprintf(" | caused by: %v", e.cause) - } - - key := "" - if e.key { - key = "key for " - } - - return fmt.Sprintf( - "invalid %sAddMongoDBExporterParams.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = AddMongoDBExporterParamsValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = AddMongoDBExporterParamsValidationError{} - -// Validate checks the field values on ChangeMongoDBExporterRequest with the -// rules defined in the proto definition for this message. If any rules are -// violated, the first error encountered is returned, or nil if there are no violations. -func (m *ChangeMongoDBExporterRequest) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on ChangeMongoDBExporterRequest with the -// rules defined in the proto definition for this message. If any rules are -// violated, the result is a list of violation errors wrapped in -// ChangeMongoDBExporterRequestMultiError, or nil if none found. -func (m *ChangeMongoDBExporterRequest) ValidateAll() error { - return m.validate(true) -} - -func (m *ChangeMongoDBExporterRequest) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - - if utf8.RuneCountInString(m.GetAgentId()) < 1 { - err := ChangeMongoDBExporterRequestValidationError{ - field: "AgentId", - reason: "value length must be at least 1 runes", - } - if !all { - return err - } - errors = append(errors, err) - } - - if all { - switch v := interface{}(m.GetCommon()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeMongoDBExporterRequestValidationError{ - field: "Common", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, ChangeMongoDBExporterRequestValidationError{ - field: "Common", - reason: "embedded message failed validation", - cause: err, - }) - } - } - } else if v, ok := interface{}(m.GetCommon()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return ChangeMongoDBExporterRequestValidationError{ - field: "Common", - reason: "embedded message failed validation", - cause: err, - } - } - } - - if len(errors) > 0 { - return ChangeMongoDBExporterRequestMultiError(errors) - } - - return nil -} - -// ChangeMongoDBExporterRequestMultiError is an error wrapping multiple -// validation errors returned by ChangeMongoDBExporterRequest.ValidateAll() if -// the designated constraints aren't met. -type ChangeMongoDBExporterRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m ChangeMongoDBExporterRequestMultiError) Error() string { - var msgs []string - for _, err := range m { - msgs = append(msgs, err.Error()) - } - return strings.Join(msgs, "; ") -} - -// AllErrors returns a list of validation violation errors. -func (m ChangeMongoDBExporterRequestMultiError) AllErrors() []error { return m } - -// ChangeMongoDBExporterRequestValidationError is the validation error returned -// by ChangeMongoDBExporterRequest.Validate if the designated constraints -// aren't met. -type ChangeMongoDBExporterRequestValidationError struct { +// AddMongoDBExporterParamsValidationError is the validation error returned by +// AddMongoDBExporterParams.Validate if the designated constraints aren't met. +type AddMongoDBExporterParamsValidationError struct { field string reason string cause error @@ -6378,24 +7278,24 @@ type ChangeMongoDBExporterRequestValidationError struct { } // Field function returns field value. -func (e ChangeMongoDBExporterRequestValidationError) Field() string { return e.field } +func (e AddMongoDBExporterParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e ChangeMongoDBExporterRequestValidationError) Reason() string { return e.reason } +func (e AddMongoDBExporterParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e ChangeMongoDBExporterRequestValidationError) Cause() error { return e.cause } +func (e AddMongoDBExporterParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e ChangeMongoDBExporterRequestValidationError) Key() bool { return e.key } +func (e AddMongoDBExporterParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e ChangeMongoDBExporterRequestValidationError) ErrorName() string { - return "ChangeMongoDBExporterRequestValidationError" +func (e AddMongoDBExporterParamsValidationError) ErrorName() string { + return "AddMongoDBExporterParamsValidationError" } // Error satisfies the builtin error interface -func (e ChangeMongoDBExporterRequestValidationError) Error() string { +func (e AddMongoDBExporterParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -6407,14 +7307,14 @@ func (e ChangeMongoDBExporterRequestValidationError) Error() string { } return fmt.Sprintf( - "invalid %sChangeMongoDBExporterRequest.%s: %s%s", + "invalid %sAddMongoDBExporterParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = ChangeMongoDBExporterRequestValidationError{} +var _ error = AddMongoDBExporterParamsValidationError{} var _ interface { Field() string @@ -6422,53 +7322,64 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = ChangeMongoDBExporterRequestValidationError{} +} = AddMongoDBExporterParamsValidationError{} -// Validate checks the field values on ChangeMongoDBExporterResponse with the +// Validate checks the field values on ChangeMongoDBExporterParams with the // rules defined in the proto definition for this message. If any rules are // violated, the first error encountered is returned, or nil if there are no violations. -func (m *ChangeMongoDBExporterResponse) Validate() error { +func (m *ChangeMongoDBExporterParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on ChangeMongoDBExporterResponse with -// the rules defined in the proto definition for this message. If any rules -// are violated, the result is a list of violation errors wrapped in -// ChangeMongoDBExporterResponseMultiError, or nil if none found. -func (m *ChangeMongoDBExporterResponse) ValidateAll() error { +// ValidateAll checks the field values on ChangeMongoDBExporterParams with the +// rules defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// ChangeMongoDBExporterParamsMultiError, or nil if none found. +func (m *ChangeMongoDBExporterParams) ValidateAll() error { return m.validate(true) } -func (m *ChangeMongoDBExporterResponse) validate(all bool) error { +func (m *ChangeMongoDBExporterParams) validate(all bool) error { if m == nil { return nil } var errors []error + if utf8.RuneCountInString(m.GetAgentId()) < 1 { + err := ChangeMongoDBExporterParamsValidationError{ + field: "AgentId", + reason: "value length must be at least 1 runes", + } + if !all { + return err + } + errors = append(errors, err) + } + if all { - switch v := interface{}(m.GetMongodbExporter()).(type) { + switch v := interface{}(m.GetCommon()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeMongoDBExporterResponseValidationError{ - field: "MongodbExporter", + errors = append(errors, ChangeMongoDBExporterParamsValidationError{ + field: "Common", reason: "embedded message failed validation", cause: err, }) } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, ChangeMongoDBExporterResponseValidationError{ - field: "MongodbExporter", + errors = append(errors, ChangeMongoDBExporterParamsValidationError{ + field: "Common", reason: "embedded message failed validation", cause: err, }) } } - } else if v, ok := interface{}(m.GetMongodbExporter()).(interface{ Validate() error }); ok { + } else if v, ok := interface{}(m.GetCommon()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return ChangeMongoDBExporterResponseValidationError{ - field: "MongodbExporter", + return ChangeMongoDBExporterParamsValidationError{ + field: "Common", reason: "embedded message failed validation", cause: err, } @@ -6476,19 +7387,19 @@ func (m *ChangeMongoDBExporterResponse) validate(all bool) error { } if len(errors) > 0 { - return ChangeMongoDBExporterResponseMultiError(errors) + return ChangeMongoDBExporterParamsMultiError(errors) } return nil } -// ChangeMongoDBExporterResponseMultiError is an error wrapping multiple -// validation errors returned by ChangeMongoDBExporterResponse.ValidateAll() -// if the designated constraints aren't met. -type ChangeMongoDBExporterResponseMultiError []error +// ChangeMongoDBExporterParamsMultiError is an error wrapping multiple +// validation errors returned by ChangeMongoDBExporterParams.ValidateAll() if +// the designated constraints aren't met. +type ChangeMongoDBExporterParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m ChangeMongoDBExporterResponseMultiError) Error() string { +func (m ChangeMongoDBExporterParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -6497,12 +7408,12 @@ func (m ChangeMongoDBExporterResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m ChangeMongoDBExporterResponseMultiError) AllErrors() []error { return m } +func (m ChangeMongoDBExporterParamsMultiError) AllErrors() []error { return m } -// ChangeMongoDBExporterResponseValidationError is the validation error -// returned by ChangeMongoDBExporterResponse.Validate if the designated -// constraints aren't met. -type ChangeMongoDBExporterResponseValidationError struct { +// ChangeMongoDBExporterParamsValidationError is the validation error returned +// by ChangeMongoDBExporterParams.Validate if the designated constraints +// aren't met. +type ChangeMongoDBExporterParamsValidationError struct { field string reason string cause error @@ -6510,24 +7421,24 @@ type ChangeMongoDBExporterResponseValidationError struct { } // Field function returns field value. -func (e ChangeMongoDBExporterResponseValidationError) Field() string { return e.field } +func (e ChangeMongoDBExporterParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e ChangeMongoDBExporterResponseValidationError) Reason() string { return e.reason } +func (e ChangeMongoDBExporterParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e ChangeMongoDBExporterResponseValidationError) Cause() error { return e.cause } +func (e ChangeMongoDBExporterParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e ChangeMongoDBExporterResponseValidationError) Key() bool { return e.key } +func (e ChangeMongoDBExporterParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e ChangeMongoDBExporterResponseValidationError) ErrorName() string { - return "ChangeMongoDBExporterResponseValidationError" +func (e ChangeMongoDBExporterParamsValidationError) ErrorName() string { + return "ChangeMongoDBExporterParamsValidationError" } // Error satisfies the builtin error interface -func (e ChangeMongoDBExporterResponseValidationError) Error() string { +func (e ChangeMongoDBExporterParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -6539,14 +7450,14 @@ func (e ChangeMongoDBExporterResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sChangeMongoDBExporterResponse.%s: %s%s", + "invalid %sChangeMongoDBExporterParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = ChangeMongoDBExporterResponseValidationError{} +var _ error = ChangeMongoDBExporterParamsValidationError{} var _ interface { Field() string @@ -6554,7 +7465,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = ChangeMongoDBExporterResponseValidationError{} +} = ChangeMongoDBExporterParamsValidationError{} // Validate checks the field values on AddPostgresExporterParams with the rules // defined in the proto definition for this message. If any rules are @@ -6717,22 +7628,22 @@ var _ interface { ErrorName() string } = AddPostgresExporterParamsValidationError{} -// Validate checks the field values on ChangePostgresExporterRequest with the +// Validate checks the field values on ChangePostgresExporterParams with the // rules defined in the proto definition for this message. If any rules are // violated, the first error encountered is returned, or nil if there are no violations. -func (m *ChangePostgresExporterRequest) Validate() error { +func (m *ChangePostgresExporterParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on ChangePostgresExporterRequest with -// the rules defined in the proto definition for this message. If any rules -// are violated, the result is a list of violation errors wrapped in -// ChangePostgresExporterRequestMultiError, or nil if none found. -func (m *ChangePostgresExporterRequest) ValidateAll() error { +// ValidateAll checks the field values on ChangePostgresExporterParams with the +// rules defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// ChangePostgresExporterParamsMultiError, or nil if none found. +func (m *ChangePostgresExporterParams) ValidateAll() error { return m.validate(true) } -func (m *ChangePostgresExporterRequest) validate(all bool) error { +func (m *ChangePostgresExporterParams) validate(all bool) error { if m == nil { return nil } @@ -6740,7 +7651,7 @@ func (m *ChangePostgresExporterRequest) validate(all bool) error { var errors []error if utf8.RuneCountInString(m.GetAgentId()) < 1 { - err := ChangePostgresExporterRequestValidationError{ + err := ChangePostgresExporterParamsValidationError{ field: "AgentId", reason: "value length must be at least 1 runes", } @@ -6754,7 +7665,7 @@ func (m *ChangePostgresExporterRequest) validate(all bool) error { switch v := interface{}(m.GetCommon()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangePostgresExporterRequestValidationError{ + errors = append(errors, ChangePostgresExporterParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -6762,7 +7673,7 @@ func (m *ChangePostgresExporterRequest) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, ChangePostgresExporterRequestValidationError{ + errors = append(errors, ChangePostgresExporterParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -6771,7 +7682,7 @@ func (m *ChangePostgresExporterRequest) validate(all bool) error { } } else if v, ok := interface{}(m.GetCommon()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return ChangePostgresExporterRequestValidationError{ + return ChangePostgresExporterParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -6780,151 +7691,19 @@ func (m *ChangePostgresExporterRequest) validate(all bool) error { } if len(errors) > 0 { - return ChangePostgresExporterRequestMultiError(errors) - } - - return nil -} - -// ChangePostgresExporterRequestMultiError is an error wrapping multiple -// validation errors returned by ChangePostgresExporterRequest.ValidateAll() -// if the designated constraints aren't met. -type ChangePostgresExporterRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m ChangePostgresExporterRequestMultiError) Error() string { - var msgs []string - for _, err := range m { - msgs = append(msgs, err.Error()) - } - return strings.Join(msgs, "; ") -} - -// AllErrors returns a list of validation violation errors. -func (m ChangePostgresExporterRequestMultiError) AllErrors() []error { return m } - -// ChangePostgresExporterRequestValidationError is the validation error -// returned by ChangePostgresExporterRequest.Validate if the designated -// constraints aren't met. -type ChangePostgresExporterRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e ChangePostgresExporterRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e ChangePostgresExporterRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e ChangePostgresExporterRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e ChangePostgresExporterRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e ChangePostgresExporterRequestValidationError) ErrorName() string { - return "ChangePostgresExporterRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e ChangePostgresExporterRequestValidationError) Error() string { - cause := "" - if e.cause != nil { - cause = fmt.Sprintf(" | caused by: %v", e.cause) - } - - key := "" - if e.key { - key = "key for " - } - - return fmt.Sprintf( - "invalid %sChangePostgresExporterRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = ChangePostgresExporterRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = ChangePostgresExporterRequestValidationError{} - -// Validate checks the field values on ChangePostgresExporterResponse with the -// rules defined in the proto definition for this message. If any rules are -// violated, the first error encountered is returned, or nil if there are no violations. -func (m *ChangePostgresExporterResponse) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on ChangePostgresExporterResponse with -// the rules defined in the proto definition for this message. If any rules -// are violated, the result is a list of violation errors wrapped in -// ChangePostgresExporterResponseMultiError, or nil if none found. -func (m *ChangePostgresExporterResponse) ValidateAll() error { - return m.validate(true) -} - -func (m *ChangePostgresExporterResponse) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - - if all { - switch v := interface{}(m.GetPostgresExporter()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangePostgresExporterResponseValidationError{ - field: "PostgresExporter", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, ChangePostgresExporterResponseValidationError{ - field: "PostgresExporter", - reason: "embedded message failed validation", - cause: err, - }) - } - } - } else if v, ok := interface{}(m.GetPostgresExporter()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return ChangePostgresExporterResponseValidationError{ - field: "PostgresExporter", - reason: "embedded message failed validation", - cause: err, - } - } - } - - if len(errors) > 0 { - return ChangePostgresExporterResponseMultiError(errors) + return ChangePostgresExporterParamsMultiError(errors) } return nil } -// ChangePostgresExporterResponseMultiError is an error wrapping multiple -// validation errors returned by ChangePostgresExporterResponse.ValidateAll() -// if the designated constraints aren't met. -type ChangePostgresExporterResponseMultiError []error +// ChangePostgresExporterParamsMultiError is an error wrapping multiple +// validation errors returned by ChangePostgresExporterParams.ValidateAll() if +// the designated constraints aren't met. +type ChangePostgresExporterParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m ChangePostgresExporterResponseMultiError) Error() string { +func (m ChangePostgresExporterParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -6933,12 +7712,12 @@ func (m ChangePostgresExporterResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m ChangePostgresExporterResponseMultiError) AllErrors() []error { return m } +func (m ChangePostgresExporterParamsMultiError) AllErrors() []error { return m } -// ChangePostgresExporterResponseValidationError is the validation error -// returned by ChangePostgresExporterResponse.Validate if the designated -// constraints aren't met. -type ChangePostgresExporterResponseValidationError struct { +// ChangePostgresExporterParamsValidationError is the validation error returned +// by ChangePostgresExporterParams.Validate if the designated constraints +// aren't met. +type ChangePostgresExporterParamsValidationError struct { field string reason string cause error @@ -6946,24 +7725,24 @@ type ChangePostgresExporterResponseValidationError struct { } // Field function returns field value. -func (e ChangePostgresExporterResponseValidationError) Field() string { return e.field } +func (e ChangePostgresExporterParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e ChangePostgresExporterResponseValidationError) Reason() string { return e.reason } +func (e ChangePostgresExporterParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e ChangePostgresExporterResponseValidationError) Cause() error { return e.cause } +func (e ChangePostgresExporterParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e ChangePostgresExporterResponseValidationError) Key() bool { return e.key } +func (e ChangePostgresExporterParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e ChangePostgresExporterResponseValidationError) ErrorName() string { - return "ChangePostgresExporterResponseValidationError" +func (e ChangePostgresExporterParamsValidationError) ErrorName() string { + return "ChangePostgresExporterParamsValidationError" } // Error satisfies the builtin error interface -func (e ChangePostgresExporterResponseValidationError) Error() string { +func (e ChangePostgresExporterParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -6975,14 +7754,14 @@ func (e ChangePostgresExporterResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sChangePostgresExporterResponse.%s: %s%s", + "invalid %sChangePostgresExporterParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = ChangePostgresExporterResponseValidationError{} +var _ error = ChangePostgresExporterParamsValidationError{} var _ interface { Field() string @@ -6990,7 +7769,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = ChangePostgresExporterResponseValidationError{} +} = ChangePostgresExporterParamsValidationError{} // Validate checks the field values on AddProxySQLExporterParams with the rules // defined in the proto definition for this message. If any rules are @@ -7145,22 +7924,22 @@ var _ interface { ErrorName() string } = AddProxySQLExporterParamsValidationError{} -// Validate checks the field values on ChangeProxySQLExporterRequest with the +// Validate checks the field values on ChangeProxySQLExporterParams with the // rules defined in the proto definition for this message. If any rules are // violated, the first error encountered is returned, or nil if there are no violations. -func (m *ChangeProxySQLExporterRequest) Validate() error { +func (m *ChangeProxySQLExporterParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on ChangeProxySQLExporterRequest with -// the rules defined in the proto definition for this message. If any rules -// are violated, the result is a list of violation errors wrapped in -// ChangeProxySQLExporterRequestMultiError, or nil if none found. -func (m *ChangeProxySQLExporterRequest) ValidateAll() error { +// ValidateAll checks the field values on ChangeProxySQLExporterParams with the +// rules defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// ChangeProxySQLExporterParamsMultiError, or nil if none found. +func (m *ChangeProxySQLExporterParams) ValidateAll() error { return m.validate(true) } -func (m *ChangeProxySQLExporterRequest) validate(all bool) error { +func (m *ChangeProxySQLExporterParams) validate(all bool) error { if m == nil { return nil } @@ -7168,7 +7947,7 @@ func (m *ChangeProxySQLExporterRequest) validate(all bool) error { var errors []error if utf8.RuneCountInString(m.GetAgentId()) < 1 { - err := ChangeProxySQLExporterRequestValidationError{ + err := ChangeProxySQLExporterParamsValidationError{ field: "AgentId", reason: "value length must be at least 1 runes", } @@ -7176,163 +7955,31 @@ func (m *ChangeProxySQLExporterRequest) validate(all bool) error { return err } errors = append(errors, err) - } - - if all { - switch v := interface{}(m.GetCommon()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeProxySQLExporterRequestValidationError{ - field: "Common", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, ChangeProxySQLExporterRequestValidationError{ - field: "Common", - reason: "embedded message failed validation", - cause: err, - }) - } - } - } else if v, ok := interface{}(m.GetCommon()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return ChangeProxySQLExporterRequestValidationError{ - field: "Common", - reason: "embedded message failed validation", - cause: err, - } - } - } - - if len(errors) > 0 { - return ChangeProxySQLExporterRequestMultiError(errors) - } - - return nil -} - -// ChangeProxySQLExporterRequestMultiError is an error wrapping multiple -// validation errors returned by ChangeProxySQLExporterRequest.ValidateAll() -// if the designated constraints aren't met. -type ChangeProxySQLExporterRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m ChangeProxySQLExporterRequestMultiError) Error() string { - var msgs []string - for _, err := range m { - msgs = append(msgs, err.Error()) - } - return strings.Join(msgs, "; ") -} - -// AllErrors returns a list of validation violation errors. -func (m ChangeProxySQLExporterRequestMultiError) AllErrors() []error { return m } - -// ChangeProxySQLExporterRequestValidationError is the validation error -// returned by ChangeProxySQLExporterRequest.Validate if the designated -// constraints aren't met. -type ChangeProxySQLExporterRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e ChangeProxySQLExporterRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e ChangeProxySQLExporterRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e ChangeProxySQLExporterRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e ChangeProxySQLExporterRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e ChangeProxySQLExporterRequestValidationError) ErrorName() string { - return "ChangeProxySQLExporterRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e ChangeProxySQLExporterRequestValidationError) Error() string { - cause := "" - if e.cause != nil { - cause = fmt.Sprintf(" | caused by: %v", e.cause) - } - - key := "" - if e.key { - key = "key for " - } - - return fmt.Sprintf( - "invalid %sChangeProxySQLExporterRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = ChangeProxySQLExporterRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = ChangeProxySQLExporterRequestValidationError{} - -// Validate checks the field values on ChangeProxySQLExporterResponse with the -// rules defined in the proto definition for this message. If any rules are -// violated, the first error encountered is returned, or nil if there are no violations. -func (m *ChangeProxySQLExporterResponse) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on ChangeProxySQLExporterResponse with -// the rules defined in the proto definition for this message. If any rules -// are violated, the result is a list of violation errors wrapped in -// ChangeProxySQLExporterResponseMultiError, or nil if none found. -func (m *ChangeProxySQLExporterResponse) ValidateAll() error { - return m.validate(true) -} - -func (m *ChangeProxySQLExporterResponse) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error + } if all { - switch v := interface{}(m.GetProxysqlExporter()).(type) { + switch v := interface{}(m.GetCommon()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeProxySQLExporterResponseValidationError{ - field: "ProxysqlExporter", + errors = append(errors, ChangeProxySQLExporterParamsValidationError{ + field: "Common", reason: "embedded message failed validation", cause: err, }) } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, ChangeProxySQLExporterResponseValidationError{ - field: "ProxysqlExporter", + errors = append(errors, ChangeProxySQLExporterParamsValidationError{ + field: "Common", reason: "embedded message failed validation", cause: err, }) } } - } else if v, ok := interface{}(m.GetProxysqlExporter()).(interface{ Validate() error }); ok { + } else if v, ok := interface{}(m.GetCommon()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return ChangeProxySQLExporterResponseValidationError{ - field: "ProxysqlExporter", + return ChangeProxySQLExporterParamsValidationError{ + field: "Common", reason: "embedded message failed validation", cause: err, } @@ -7340,19 +7987,19 @@ func (m *ChangeProxySQLExporterResponse) validate(all bool) error { } if len(errors) > 0 { - return ChangeProxySQLExporterResponseMultiError(errors) + return ChangeProxySQLExporterParamsMultiError(errors) } return nil } -// ChangeProxySQLExporterResponseMultiError is an error wrapping multiple -// validation errors returned by ChangeProxySQLExporterResponse.ValidateAll() -// if the designated constraints aren't met. -type ChangeProxySQLExporterResponseMultiError []error +// ChangeProxySQLExporterParamsMultiError is an error wrapping multiple +// validation errors returned by ChangeProxySQLExporterParams.ValidateAll() if +// the designated constraints aren't met. +type ChangeProxySQLExporterParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m ChangeProxySQLExporterResponseMultiError) Error() string { +func (m ChangeProxySQLExporterParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -7361,12 +8008,12 @@ func (m ChangeProxySQLExporterResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m ChangeProxySQLExporterResponseMultiError) AllErrors() []error { return m } +func (m ChangeProxySQLExporterParamsMultiError) AllErrors() []error { return m } -// ChangeProxySQLExporterResponseValidationError is the validation error -// returned by ChangeProxySQLExporterResponse.Validate if the designated -// constraints aren't met. -type ChangeProxySQLExporterResponseValidationError struct { +// ChangeProxySQLExporterParamsValidationError is the validation error returned +// by ChangeProxySQLExporterParams.Validate if the designated constraints +// aren't met. +type ChangeProxySQLExporterParamsValidationError struct { field string reason string cause error @@ -7374,24 +8021,24 @@ type ChangeProxySQLExporterResponseValidationError struct { } // Field function returns field value. -func (e ChangeProxySQLExporterResponseValidationError) Field() string { return e.field } +func (e ChangeProxySQLExporterParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e ChangeProxySQLExporterResponseValidationError) Reason() string { return e.reason } +func (e ChangeProxySQLExporterParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e ChangeProxySQLExporterResponseValidationError) Cause() error { return e.cause } +func (e ChangeProxySQLExporterParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e ChangeProxySQLExporterResponseValidationError) Key() bool { return e.key } +func (e ChangeProxySQLExporterParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e ChangeProxySQLExporterResponseValidationError) ErrorName() string { - return "ChangeProxySQLExporterResponseValidationError" +func (e ChangeProxySQLExporterParamsValidationError) ErrorName() string { + return "ChangeProxySQLExporterParamsValidationError" } // Error satisfies the builtin error interface -func (e ChangeProxySQLExporterResponseValidationError) Error() string { +func (e ChangeProxySQLExporterParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -7403,14 +8050,14 @@ func (e ChangeProxySQLExporterResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sChangeProxySQLExporterResponse.%s: %s%s", + "invalid %sChangeProxySQLExporterParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = ChangeProxySQLExporterResponseValidationError{} +var _ error = ChangeProxySQLExporterParamsValidationError{} var _ interface { Field() string @@ -7418,7 +8065,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = ChangeProxySQLExporterResponseValidationError{} +} = ChangeProxySQLExporterParamsValidationError{} // Validate checks the field values on AddQANMySQLPerfSchemaAgentParams with // the rules defined in the proto definition for this message. If any rules @@ -7582,23 +8229,23 @@ var _ interface { ErrorName() string } = AddQANMySQLPerfSchemaAgentParamsValidationError{} -// Validate checks the field values on ChangeQANMySQLPerfSchemaAgentRequest -// with the rules defined in the proto definition for this message. If any -// rules are violated, the first error encountered is returned, or nil if -// there are no violations. -func (m *ChangeQANMySQLPerfSchemaAgentRequest) Validate() error { +// Validate checks the field values on ChangeQANMySQLPerfSchemaAgentParams with +// the rules defined in the proto definition for this message. If any rules +// are violated, the first error encountered is returned, or nil if there are +// no violations. +func (m *ChangeQANMySQLPerfSchemaAgentParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on ChangeQANMySQLPerfSchemaAgentRequest +// ValidateAll checks the field values on ChangeQANMySQLPerfSchemaAgentParams // with the rules defined in the proto definition for this message. If any // rules are violated, the result is a list of violation errors wrapped in -// ChangeQANMySQLPerfSchemaAgentRequestMultiError, or nil if none found. -func (m *ChangeQANMySQLPerfSchemaAgentRequest) ValidateAll() error { +// ChangeQANMySQLPerfSchemaAgentParamsMultiError, or nil if none found. +func (m *ChangeQANMySQLPerfSchemaAgentParams) ValidateAll() error { return m.validate(true) } -func (m *ChangeQANMySQLPerfSchemaAgentRequest) validate(all bool) error { +func (m *ChangeQANMySQLPerfSchemaAgentParams) validate(all bool) error { if m == nil { return nil } @@ -7606,7 +8253,7 @@ func (m *ChangeQANMySQLPerfSchemaAgentRequest) validate(all bool) error { var errors []error if utf8.RuneCountInString(m.GetAgentId()) < 1 { - err := ChangeQANMySQLPerfSchemaAgentRequestValidationError{ + err := ChangeQANMySQLPerfSchemaAgentParamsValidationError{ field: "AgentId", reason: "value length must be at least 1 runes", } @@ -7620,7 +8267,7 @@ func (m *ChangeQANMySQLPerfSchemaAgentRequest) validate(all bool) error { switch v := interface{}(m.GetCommon()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeQANMySQLPerfSchemaAgentRequestValidationError{ + errors = append(errors, ChangeQANMySQLPerfSchemaAgentParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -7628,7 +8275,7 @@ func (m *ChangeQANMySQLPerfSchemaAgentRequest) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, ChangeQANMySQLPerfSchemaAgentRequestValidationError{ + errors = append(errors, ChangeQANMySQLPerfSchemaAgentParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -7637,7 +8284,7 @@ func (m *ChangeQANMySQLPerfSchemaAgentRequest) validate(all bool) error { } } else if v, ok := interface{}(m.GetCommon()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return ChangeQANMySQLPerfSchemaAgentRequestValidationError{ + return ChangeQANMySQLPerfSchemaAgentParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -7646,20 +8293,20 @@ func (m *ChangeQANMySQLPerfSchemaAgentRequest) validate(all bool) error { } if len(errors) > 0 { - return ChangeQANMySQLPerfSchemaAgentRequestMultiError(errors) + return ChangeQANMySQLPerfSchemaAgentParamsMultiError(errors) } return nil } -// ChangeQANMySQLPerfSchemaAgentRequestMultiError is an error wrapping multiple +// ChangeQANMySQLPerfSchemaAgentParamsMultiError is an error wrapping multiple // validation errors returned by -// ChangeQANMySQLPerfSchemaAgentRequest.ValidateAll() if the designated +// ChangeQANMySQLPerfSchemaAgentParams.ValidateAll() if the designated // constraints aren't met. -type ChangeQANMySQLPerfSchemaAgentRequestMultiError []error +type ChangeQANMySQLPerfSchemaAgentParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m ChangeQANMySQLPerfSchemaAgentRequestMultiError) Error() string { +func (m ChangeQANMySQLPerfSchemaAgentParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -7668,146 +8315,12 @@ func (m ChangeQANMySQLPerfSchemaAgentRequestMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m ChangeQANMySQLPerfSchemaAgentRequestMultiError) AllErrors() []error { return m } - -// ChangeQANMySQLPerfSchemaAgentRequestValidationError is the validation error -// returned by ChangeQANMySQLPerfSchemaAgentRequest.Validate if the designated -// constraints aren't met. -type ChangeQANMySQLPerfSchemaAgentRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e ChangeQANMySQLPerfSchemaAgentRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e ChangeQANMySQLPerfSchemaAgentRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e ChangeQANMySQLPerfSchemaAgentRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e ChangeQANMySQLPerfSchemaAgentRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e ChangeQANMySQLPerfSchemaAgentRequestValidationError) ErrorName() string { - return "ChangeQANMySQLPerfSchemaAgentRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e ChangeQANMySQLPerfSchemaAgentRequestValidationError) Error() string { - cause := "" - if e.cause != nil { - cause = fmt.Sprintf(" | caused by: %v", e.cause) - } - - key := "" - if e.key { - key = "key for " - } - - return fmt.Sprintf( - "invalid %sChangeQANMySQLPerfSchemaAgentRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = ChangeQANMySQLPerfSchemaAgentRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = ChangeQANMySQLPerfSchemaAgentRequestValidationError{} - -// Validate checks the field values on ChangeQANMySQLPerfSchemaAgentResponse -// with the rules defined in the proto definition for this message. If any -// rules are violated, the first error encountered is returned, or nil if -// there are no violations. -func (m *ChangeQANMySQLPerfSchemaAgentResponse) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on ChangeQANMySQLPerfSchemaAgentResponse -// with the rules defined in the proto definition for this message. If any -// rules are violated, the result is a list of violation errors wrapped in -// ChangeQANMySQLPerfSchemaAgentResponseMultiError, or nil if none found. -func (m *ChangeQANMySQLPerfSchemaAgentResponse) ValidateAll() error { - return m.validate(true) -} - -func (m *ChangeQANMySQLPerfSchemaAgentResponse) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - - if all { - switch v := interface{}(m.GetQanMysqlPerfschemaAgent()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeQANMySQLPerfSchemaAgentResponseValidationError{ - field: "QanMysqlPerfschemaAgent", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, ChangeQANMySQLPerfSchemaAgentResponseValidationError{ - field: "QanMysqlPerfschemaAgent", - reason: "embedded message failed validation", - cause: err, - }) - } - } - } else if v, ok := interface{}(m.GetQanMysqlPerfschemaAgent()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return ChangeQANMySQLPerfSchemaAgentResponseValidationError{ - field: "QanMysqlPerfschemaAgent", - reason: "embedded message failed validation", - cause: err, - } - } - } - - if len(errors) > 0 { - return ChangeQANMySQLPerfSchemaAgentResponseMultiError(errors) - } - - return nil -} +func (m ChangeQANMySQLPerfSchemaAgentParamsMultiError) AllErrors() []error { return m } -// ChangeQANMySQLPerfSchemaAgentResponseMultiError is an error wrapping -// multiple validation errors returned by -// ChangeQANMySQLPerfSchemaAgentResponse.ValidateAll() if the designated +// ChangeQANMySQLPerfSchemaAgentParamsValidationError is the validation error +// returned by ChangeQANMySQLPerfSchemaAgentParams.Validate if the designated // constraints aren't met. -type ChangeQANMySQLPerfSchemaAgentResponseMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m ChangeQANMySQLPerfSchemaAgentResponseMultiError) Error() string { - var msgs []string - for _, err := range m { - msgs = append(msgs, err.Error()) - } - return strings.Join(msgs, "; ") -} - -// AllErrors returns a list of validation violation errors. -func (m ChangeQANMySQLPerfSchemaAgentResponseMultiError) AllErrors() []error { return m } - -// ChangeQANMySQLPerfSchemaAgentResponseValidationError is the validation error -// returned by ChangeQANMySQLPerfSchemaAgentResponse.Validate if the -// designated constraints aren't met. -type ChangeQANMySQLPerfSchemaAgentResponseValidationError struct { +type ChangeQANMySQLPerfSchemaAgentParamsValidationError struct { field string reason string cause error @@ -7815,24 +8328,24 @@ type ChangeQANMySQLPerfSchemaAgentResponseValidationError struct { } // Field function returns field value. -func (e ChangeQANMySQLPerfSchemaAgentResponseValidationError) Field() string { return e.field } +func (e ChangeQANMySQLPerfSchemaAgentParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e ChangeQANMySQLPerfSchemaAgentResponseValidationError) Reason() string { return e.reason } +func (e ChangeQANMySQLPerfSchemaAgentParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e ChangeQANMySQLPerfSchemaAgentResponseValidationError) Cause() error { return e.cause } +func (e ChangeQANMySQLPerfSchemaAgentParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e ChangeQANMySQLPerfSchemaAgentResponseValidationError) Key() bool { return e.key } +func (e ChangeQANMySQLPerfSchemaAgentParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e ChangeQANMySQLPerfSchemaAgentResponseValidationError) ErrorName() string { - return "ChangeQANMySQLPerfSchemaAgentResponseValidationError" +func (e ChangeQANMySQLPerfSchemaAgentParamsValidationError) ErrorName() string { + return "ChangeQANMySQLPerfSchemaAgentParamsValidationError" } // Error satisfies the builtin error interface -func (e ChangeQANMySQLPerfSchemaAgentResponseValidationError) Error() string { +func (e ChangeQANMySQLPerfSchemaAgentParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -7844,14 +8357,14 @@ func (e ChangeQANMySQLPerfSchemaAgentResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sChangeQANMySQLPerfSchemaAgentResponse.%s: %s%s", + "invalid %sChangeQANMySQLPerfSchemaAgentParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = ChangeQANMySQLPerfSchemaAgentResponseValidationError{} +var _ error = ChangeQANMySQLPerfSchemaAgentParamsValidationError{} var _ interface { Field() string @@ -7859,7 +8372,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = ChangeQANMySQLPerfSchemaAgentResponseValidationError{} +} = ChangeQANMySQLPerfSchemaAgentParamsValidationError{} // Validate checks the field values on AddQANMySQLSlowlogAgentParams with the // rules defined in the proto definition for this message. If any rules are @@ -7949,158 +8462,13 @@ func (m *AddQANMySQLSlowlogAgentParams) validate(all bool) error { return nil } -// AddQANMySQLSlowlogAgentParamsMultiError is an error wrapping multiple -// validation errors returned by AddQANMySQLSlowlogAgentParams.ValidateAll() -// if the designated constraints aren't met. -type AddQANMySQLSlowlogAgentParamsMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m AddQANMySQLSlowlogAgentParamsMultiError) Error() string { - var msgs []string - for _, err := range m { - msgs = append(msgs, err.Error()) - } - return strings.Join(msgs, "; ") -} - -// AllErrors returns a list of validation violation errors. -func (m AddQANMySQLSlowlogAgentParamsMultiError) AllErrors() []error { return m } - -// AddQANMySQLSlowlogAgentParamsValidationError is the validation error -// returned by AddQANMySQLSlowlogAgentParams.Validate if the designated -// constraints aren't met. -type AddQANMySQLSlowlogAgentParamsValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e AddQANMySQLSlowlogAgentParamsValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e AddQANMySQLSlowlogAgentParamsValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e AddQANMySQLSlowlogAgentParamsValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e AddQANMySQLSlowlogAgentParamsValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e AddQANMySQLSlowlogAgentParamsValidationError) ErrorName() string { - return "AddQANMySQLSlowlogAgentParamsValidationError" -} - -// Error satisfies the builtin error interface -func (e AddQANMySQLSlowlogAgentParamsValidationError) Error() string { - cause := "" - if e.cause != nil { - cause = fmt.Sprintf(" | caused by: %v", e.cause) - } - - key := "" - if e.key { - key = "key for " - } - - return fmt.Sprintf( - "invalid %sAddQANMySQLSlowlogAgentParams.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = AddQANMySQLSlowlogAgentParamsValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = AddQANMySQLSlowlogAgentParamsValidationError{} - -// Validate checks the field values on ChangeQANMySQLSlowlogAgentRequest with -// the rules defined in the proto definition for this message. If any rules -// are violated, the first error encountered is returned, or nil if there are -// no violations. -func (m *ChangeQANMySQLSlowlogAgentRequest) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on ChangeQANMySQLSlowlogAgentRequest -// with the rules defined in the proto definition for this message. If any -// rules are violated, the result is a list of violation errors wrapped in -// ChangeQANMySQLSlowlogAgentRequestMultiError, or nil if none found. -func (m *ChangeQANMySQLSlowlogAgentRequest) ValidateAll() error { - return m.validate(true) -} - -func (m *ChangeQANMySQLSlowlogAgentRequest) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - - if utf8.RuneCountInString(m.GetAgentId()) < 1 { - err := ChangeQANMySQLSlowlogAgentRequestValidationError{ - field: "AgentId", - reason: "value length must be at least 1 runes", - } - if !all { - return err - } - errors = append(errors, err) - } - - if all { - switch v := interface{}(m.GetCommon()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeQANMySQLSlowlogAgentRequestValidationError{ - field: "Common", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, ChangeQANMySQLSlowlogAgentRequestValidationError{ - field: "Common", - reason: "embedded message failed validation", - cause: err, - }) - } - } - } else if v, ok := interface{}(m.GetCommon()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return ChangeQANMySQLSlowlogAgentRequestValidationError{ - field: "Common", - reason: "embedded message failed validation", - cause: err, - } - } - } - - if len(errors) > 0 { - return ChangeQANMySQLSlowlogAgentRequestMultiError(errors) - } - - return nil -} - -// ChangeQANMySQLSlowlogAgentRequestMultiError is an error wrapping multiple -// validation errors returned by -// ChangeQANMySQLSlowlogAgentRequest.ValidateAll() if the designated -// constraints aren't met. -type ChangeQANMySQLSlowlogAgentRequestMultiError []error +// AddQANMySQLSlowlogAgentParamsMultiError is an error wrapping multiple +// validation errors returned by AddQANMySQLSlowlogAgentParams.ValidateAll() +// if the designated constraints aren't met. +type AddQANMySQLSlowlogAgentParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m ChangeQANMySQLSlowlogAgentRequestMultiError) Error() string { +func (m AddQANMySQLSlowlogAgentParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -8109,12 +8477,12 @@ func (m ChangeQANMySQLSlowlogAgentRequestMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m ChangeQANMySQLSlowlogAgentRequestMultiError) AllErrors() []error { return m } +func (m AddQANMySQLSlowlogAgentParamsMultiError) AllErrors() []error { return m } -// ChangeQANMySQLSlowlogAgentRequestValidationError is the validation error -// returned by ChangeQANMySQLSlowlogAgentRequest.Validate if the designated +// AddQANMySQLSlowlogAgentParamsValidationError is the validation error +// returned by AddQANMySQLSlowlogAgentParams.Validate if the designated // constraints aren't met. -type ChangeQANMySQLSlowlogAgentRequestValidationError struct { +type AddQANMySQLSlowlogAgentParamsValidationError struct { field string reason string cause error @@ -8122,24 +8490,24 @@ type ChangeQANMySQLSlowlogAgentRequestValidationError struct { } // Field function returns field value. -func (e ChangeQANMySQLSlowlogAgentRequestValidationError) Field() string { return e.field } +func (e AddQANMySQLSlowlogAgentParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e ChangeQANMySQLSlowlogAgentRequestValidationError) Reason() string { return e.reason } +func (e AddQANMySQLSlowlogAgentParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e ChangeQANMySQLSlowlogAgentRequestValidationError) Cause() error { return e.cause } +func (e AddQANMySQLSlowlogAgentParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e ChangeQANMySQLSlowlogAgentRequestValidationError) Key() bool { return e.key } +func (e AddQANMySQLSlowlogAgentParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e ChangeQANMySQLSlowlogAgentRequestValidationError) ErrorName() string { - return "ChangeQANMySQLSlowlogAgentRequestValidationError" +func (e AddQANMySQLSlowlogAgentParamsValidationError) ErrorName() string { + return "AddQANMySQLSlowlogAgentParamsValidationError" } // Error satisfies the builtin error interface -func (e ChangeQANMySQLSlowlogAgentRequestValidationError) Error() string { +func (e AddQANMySQLSlowlogAgentParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -8151,14 +8519,14 @@ func (e ChangeQANMySQLSlowlogAgentRequestValidationError) Error() string { } return fmt.Sprintf( - "invalid %sChangeQANMySQLSlowlogAgentRequest.%s: %s%s", + "invalid %sAddQANMySQLSlowlogAgentParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = ChangeQANMySQLSlowlogAgentRequestValidationError{} +var _ error = AddQANMySQLSlowlogAgentParamsValidationError{} var _ interface { Field() string @@ -8166,54 +8534,65 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = ChangeQANMySQLSlowlogAgentRequestValidationError{} +} = AddQANMySQLSlowlogAgentParamsValidationError{} -// Validate checks the field values on ChangeQANMySQLSlowlogAgentResponse with +// Validate checks the field values on ChangeQANMySQLSlowlogAgentParams with // the rules defined in the proto definition for this message. If any rules // are violated, the first error encountered is returned, or nil if there are // no violations. -func (m *ChangeQANMySQLSlowlogAgentResponse) Validate() error { +func (m *ChangeQANMySQLSlowlogAgentParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on ChangeQANMySQLSlowlogAgentResponse -// with the rules defined in the proto definition for this message. If any -// rules are violated, the result is a list of violation errors wrapped in -// ChangeQANMySQLSlowlogAgentResponseMultiError, or nil if none found. -func (m *ChangeQANMySQLSlowlogAgentResponse) ValidateAll() error { +// ValidateAll checks the field values on ChangeQANMySQLSlowlogAgentParams with +// the rules defined in the proto definition for this message. If any rules +// are violated, the result is a list of violation errors wrapped in +// ChangeQANMySQLSlowlogAgentParamsMultiError, or nil if none found. +func (m *ChangeQANMySQLSlowlogAgentParams) ValidateAll() error { return m.validate(true) } -func (m *ChangeQANMySQLSlowlogAgentResponse) validate(all bool) error { +func (m *ChangeQANMySQLSlowlogAgentParams) validate(all bool) error { if m == nil { return nil } var errors []error + if utf8.RuneCountInString(m.GetAgentId()) < 1 { + err := ChangeQANMySQLSlowlogAgentParamsValidationError{ + field: "AgentId", + reason: "value length must be at least 1 runes", + } + if !all { + return err + } + errors = append(errors, err) + } + if all { - switch v := interface{}(m.GetQanMysqlSlowlogAgent()).(type) { + switch v := interface{}(m.GetCommon()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeQANMySQLSlowlogAgentResponseValidationError{ - field: "QanMysqlSlowlogAgent", + errors = append(errors, ChangeQANMySQLSlowlogAgentParamsValidationError{ + field: "Common", reason: "embedded message failed validation", cause: err, }) } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, ChangeQANMySQLSlowlogAgentResponseValidationError{ - field: "QanMysqlSlowlogAgent", + errors = append(errors, ChangeQANMySQLSlowlogAgentParamsValidationError{ + field: "Common", reason: "embedded message failed validation", cause: err, }) } } - } else if v, ok := interface{}(m.GetQanMysqlSlowlogAgent()).(interface{ Validate() error }); ok { + } else if v, ok := interface{}(m.GetCommon()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return ChangeQANMySQLSlowlogAgentResponseValidationError{ - field: "QanMysqlSlowlogAgent", + return ChangeQANMySQLSlowlogAgentParamsValidationError{ + field: "Common", reason: "embedded message failed validation", cause: err, } @@ -8221,20 +8600,20 @@ func (m *ChangeQANMySQLSlowlogAgentResponse) validate(all bool) error { } if len(errors) > 0 { - return ChangeQANMySQLSlowlogAgentResponseMultiError(errors) + return ChangeQANMySQLSlowlogAgentParamsMultiError(errors) } return nil } -// ChangeQANMySQLSlowlogAgentResponseMultiError is an error wrapping multiple +// ChangeQANMySQLSlowlogAgentParamsMultiError is an error wrapping multiple // validation errors returned by -// ChangeQANMySQLSlowlogAgentResponse.ValidateAll() if the designated +// ChangeQANMySQLSlowlogAgentParams.ValidateAll() if the designated // constraints aren't met. -type ChangeQANMySQLSlowlogAgentResponseMultiError []error +type ChangeQANMySQLSlowlogAgentParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m ChangeQANMySQLSlowlogAgentResponseMultiError) Error() string { +func (m ChangeQANMySQLSlowlogAgentParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -8243,12 +8622,12 @@ func (m ChangeQANMySQLSlowlogAgentResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m ChangeQANMySQLSlowlogAgentResponseMultiError) AllErrors() []error { return m } +func (m ChangeQANMySQLSlowlogAgentParamsMultiError) AllErrors() []error { return m } -// ChangeQANMySQLSlowlogAgentResponseValidationError is the validation error -// returned by ChangeQANMySQLSlowlogAgentResponse.Validate if the designated +// ChangeQANMySQLSlowlogAgentParamsValidationError is the validation error +// returned by ChangeQANMySQLSlowlogAgentParams.Validate if the designated // constraints aren't met. -type ChangeQANMySQLSlowlogAgentResponseValidationError struct { +type ChangeQANMySQLSlowlogAgentParamsValidationError struct { field string reason string cause error @@ -8256,24 +8635,24 @@ type ChangeQANMySQLSlowlogAgentResponseValidationError struct { } // Field function returns field value. -func (e ChangeQANMySQLSlowlogAgentResponseValidationError) Field() string { return e.field } +func (e ChangeQANMySQLSlowlogAgentParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e ChangeQANMySQLSlowlogAgentResponseValidationError) Reason() string { return e.reason } +func (e ChangeQANMySQLSlowlogAgentParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e ChangeQANMySQLSlowlogAgentResponseValidationError) Cause() error { return e.cause } +func (e ChangeQANMySQLSlowlogAgentParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e ChangeQANMySQLSlowlogAgentResponseValidationError) Key() bool { return e.key } +func (e ChangeQANMySQLSlowlogAgentParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e ChangeQANMySQLSlowlogAgentResponseValidationError) ErrorName() string { - return "ChangeQANMySQLSlowlogAgentResponseValidationError" +func (e ChangeQANMySQLSlowlogAgentParamsValidationError) ErrorName() string { + return "ChangeQANMySQLSlowlogAgentParamsValidationError" } // Error satisfies the builtin error interface -func (e ChangeQANMySQLSlowlogAgentResponseValidationError) Error() string { +func (e ChangeQANMySQLSlowlogAgentParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -8285,14 +8664,14 @@ func (e ChangeQANMySQLSlowlogAgentResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sChangeQANMySQLSlowlogAgentResponse.%s: %s%s", + "invalid %sChangeQANMySQLSlowlogAgentParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = ChangeQANMySQLSlowlogAgentResponseValidationError{} +var _ error = ChangeQANMySQLSlowlogAgentParamsValidationError{} var _ interface { Field() string @@ -8300,7 +8679,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = ChangeQANMySQLSlowlogAgentResponseValidationError{} +} = ChangeQANMySQLSlowlogAgentParamsValidationError{} // Validate checks the field values on AddQANMongoDBProfilerAgentParams with // the rules defined in the proto definition for this message. If any rules @@ -8455,23 +8834,23 @@ var _ interface { ErrorName() string } = AddQANMongoDBProfilerAgentParamsValidationError{} -// Validate checks the field values on ChangeQANMongoDBProfilerAgentRequest -// with the rules defined in the proto definition for this message. If any -// rules are violated, the first error encountered is returned, or nil if -// there are no violations. -func (m *ChangeQANMongoDBProfilerAgentRequest) Validate() error { +// Validate checks the field values on ChangeQANMongoDBProfilerAgentParams with +// the rules defined in the proto definition for this message. If any rules +// are violated, the first error encountered is returned, or nil if there are +// no violations. +func (m *ChangeQANMongoDBProfilerAgentParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on ChangeQANMongoDBProfilerAgentRequest +// ValidateAll checks the field values on ChangeQANMongoDBProfilerAgentParams // with the rules defined in the proto definition for this message. If any // rules are violated, the result is a list of violation errors wrapped in -// ChangeQANMongoDBProfilerAgentRequestMultiError, or nil if none found. -func (m *ChangeQANMongoDBProfilerAgentRequest) ValidateAll() error { +// ChangeQANMongoDBProfilerAgentParamsMultiError, or nil if none found. +func (m *ChangeQANMongoDBProfilerAgentParams) ValidateAll() error { return m.validate(true) } -func (m *ChangeQANMongoDBProfilerAgentRequest) validate(all bool) error { +func (m *ChangeQANMongoDBProfilerAgentParams) validate(all bool) error { if m == nil { return nil } @@ -8479,7 +8858,7 @@ func (m *ChangeQANMongoDBProfilerAgentRequest) validate(all bool) error { var errors []error if utf8.RuneCountInString(m.GetAgentId()) < 1 { - err := ChangeQANMongoDBProfilerAgentRequestValidationError{ + err := ChangeQANMongoDBProfilerAgentParamsValidationError{ field: "AgentId", reason: "value length must be at least 1 runes", } @@ -8493,7 +8872,7 @@ func (m *ChangeQANMongoDBProfilerAgentRequest) validate(all bool) error { switch v := interface{}(m.GetCommon()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeQANMongoDBProfilerAgentRequestValidationError{ + errors = append(errors, ChangeQANMongoDBProfilerAgentParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -8501,7 +8880,7 @@ func (m *ChangeQANMongoDBProfilerAgentRequest) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, ChangeQANMongoDBProfilerAgentRequestValidationError{ + errors = append(errors, ChangeQANMongoDBProfilerAgentParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -8510,7 +8889,7 @@ func (m *ChangeQANMongoDBProfilerAgentRequest) validate(all bool) error { } } else if v, ok := interface{}(m.GetCommon()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return ChangeQANMongoDBProfilerAgentRequestValidationError{ + return ChangeQANMongoDBProfilerAgentParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -8519,20 +8898,20 @@ func (m *ChangeQANMongoDBProfilerAgentRequest) validate(all bool) error { } if len(errors) > 0 { - return ChangeQANMongoDBProfilerAgentRequestMultiError(errors) + return ChangeQANMongoDBProfilerAgentParamsMultiError(errors) } return nil } -// ChangeQANMongoDBProfilerAgentRequestMultiError is an error wrapping multiple +// ChangeQANMongoDBProfilerAgentParamsMultiError is an error wrapping multiple // validation errors returned by -// ChangeQANMongoDBProfilerAgentRequest.ValidateAll() if the designated +// ChangeQANMongoDBProfilerAgentParams.ValidateAll() if the designated // constraints aren't met. -type ChangeQANMongoDBProfilerAgentRequestMultiError []error +type ChangeQANMongoDBProfilerAgentParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m ChangeQANMongoDBProfilerAgentRequestMultiError) Error() string { +func (m ChangeQANMongoDBProfilerAgentParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -8541,146 +8920,12 @@ func (m ChangeQANMongoDBProfilerAgentRequestMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m ChangeQANMongoDBProfilerAgentRequestMultiError) AllErrors() []error { return m } - -// ChangeQANMongoDBProfilerAgentRequestValidationError is the validation error -// returned by ChangeQANMongoDBProfilerAgentRequest.Validate if the designated -// constraints aren't met. -type ChangeQANMongoDBProfilerAgentRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e ChangeQANMongoDBProfilerAgentRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e ChangeQANMongoDBProfilerAgentRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e ChangeQANMongoDBProfilerAgentRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e ChangeQANMongoDBProfilerAgentRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e ChangeQANMongoDBProfilerAgentRequestValidationError) ErrorName() string { - return "ChangeQANMongoDBProfilerAgentRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e ChangeQANMongoDBProfilerAgentRequestValidationError) Error() string { - cause := "" - if e.cause != nil { - cause = fmt.Sprintf(" | caused by: %v", e.cause) - } - - key := "" - if e.key { - key = "key for " - } - - return fmt.Sprintf( - "invalid %sChangeQANMongoDBProfilerAgentRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = ChangeQANMongoDBProfilerAgentRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = ChangeQANMongoDBProfilerAgentRequestValidationError{} - -// Validate checks the field values on ChangeQANMongoDBProfilerAgentResponse -// with the rules defined in the proto definition for this message. If any -// rules are violated, the first error encountered is returned, or nil if -// there are no violations. -func (m *ChangeQANMongoDBProfilerAgentResponse) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on ChangeQANMongoDBProfilerAgentResponse -// with the rules defined in the proto definition for this message. If any -// rules are violated, the result is a list of violation errors wrapped in -// ChangeQANMongoDBProfilerAgentResponseMultiError, or nil if none found. -func (m *ChangeQANMongoDBProfilerAgentResponse) ValidateAll() error { - return m.validate(true) -} - -func (m *ChangeQANMongoDBProfilerAgentResponse) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - - if all { - switch v := interface{}(m.GetQanMongodbProfilerAgent()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeQANMongoDBProfilerAgentResponseValidationError{ - field: "QanMongodbProfilerAgent", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, ChangeQANMongoDBProfilerAgentResponseValidationError{ - field: "QanMongodbProfilerAgent", - reason: "embedded message failed validation", - cause: err, - }) - } - } - } else if v, ok := interface{}(m.GetQanMongodbProfilerAgent()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return ChangeQANMongoDBProfilerAgentResponseValidationError{ - field: "QanMongodbProfilerAgent", - reason: "embedded message failed validation", - cause: err, - } - } - } - - if len(errors) > 0 { - return ChangeQANMongoDBProfilerAgentResponseMultiError(errors) - } - - return nil -} +func (m ChangeQANMongoDBProfilerAgentParamsMultiError) AllErrors() []error { return m } -// ChangeQANMongoDBProfilerAgentResponseMultiError is an error wrapping -// multiple validation errors returned by -// ChangeQANMongoDBProfilerAgentResponse.ValidateAll() if the designated +// ChangeQANMongoDBProfilerAgentParamsValidationError is the validation error +// returned by ChangeQANMongoDBProfilerAgentParams.Validate if the designated // constraints aren't met. -type ChangeQANMongoDBProfilerAgentResponseMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m ChangeQANMongoDBProfilerAgentResponseMultiError) Error() string { - var msgs []string - for _, err := range m { - msgs = append(msgs, err.Error()) - } - return strings.Join(msgs, "; ") -} - -// AllErrors returns a list of validation violation errors. -func (m ChangeQANMongoDBProfilerAgentResponseMultiError) AllErrors() []error { return m } - -// ChangeQANMongoDBProfilerAgentResponseValidationError is the validation error -// returned by ChangeQANMongoDBProfilerAgentResponse.Validate if the -// designated constraints aren't met. -type ChangeQANMongoDBProfilerAgentResponseValidationError struct { +type ChangeQANMongoDBProfilerAgentParamsValidationError struct { field string reason string cause error @@ -8688,24 +8933,24 @@ type ChangeQANMongoDBProfilerAgentResponseValidationError struct { } // Field function returns field value. -func (e ChangeQANMongoDBProfilerAgentResponseValidationError) Field() string { return e.field } +func (e ChangeQANMongoDBProfilerAgentParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e ChangeQANMongoDBProfilerAgentResponseValidationError) Reason() string { return e.reason } +func (e ChangeQANMongoDBProfilerAgentParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e ChangeQANMongoDBProfilerAgentResponseValidationError) Cause() error { return e.cause } +func (e ChangeQANMongoDBProfilerAgentParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e ChangeQANMongoDBProfilerAgentResponseValidationError) Key() bool { return e.key } +func (e ChangeQANMongoDBProfilerAgentParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e ChangeQANMongoDBProfilerAgentResponseValidationError) ErrorName() string { - return "ChangeQANMongoDBProfilerAgentResponseValidationError" +func (e ChangeQANMongoDBProfilerAgentParamsValidationError) ErrorName() string { + return "ChangeQANMongoDBProfilerAgentParamsValidationError" } // Error satisfies the builtin error interface -func (e ChangeQANMongoDBProfilerAgentResponseValidationError) Error() string { +func (e ChangeQANMongoDBProfilerAgentParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -8717,14 +8962,14 @@ func (e ChangeQANMongoDBProfilerAgentResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sChangeQANMongoDBProfilerAgentResponse.%s: %s%s", + "invalid %sChangeQANMongoDBProfilerAgentParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = ChangeQANMongoDBProfilerAgentResponseValidationError{} +var _ error = ChangeQANMongoDBProfilerAgentParamsValidationError{} var _ interface { Field() string @@ -8732,7 +8977,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = ChangeQANMongoDBProfilerAgentResponseValidationError{} +} = ChangeQANMongoDBProfilerAgentParamsValidationError{} // Validate checks the field values on AddQANPostgreSQLPgStatementsAgentParams // with the rules defined in the proto definition for this message. If any @@ -8896,23 +9141,23 @@ var _ interface { } = AddQANPostgreSQLPgStatementsAgentParamsValidationError{} // Validate checks the field values on -// ChangeQANPostgreSQLPgStatementsAgentRequest with the rules defined in the +// ChangeQANPostgreSQLPgStatementsAgentParams with the rules defined in the // proto definition for this message. If any rules are violated, the first // error encountered is returned, or nil if there are no violations. -func (m *ChangeQANPostgreSQLPgStatementsAgentRequest) Validate() error { +func (m *ChangeQANPostgreSQLPgStatementsAgentParams) Validate() error { return m.validate(false) } // ValidateAll checks the field values on -// ChangeQANPostgreSQLPgStatementsAgentRequest with the rules defined in the +// ChangeQANPostgreSQLPgStatementsAgentParams with the rules defined in the // proto definition for this message. If any rules are violated, the result is // a list of violation errors wrapped in -// ChangeQANPostgreSQLPgStatementsAgentRequestMultiError, or nil if none found. -func (m *ChangeQANPostgreSQLPgStatementsAgentRequest) ValidateAll() error { +// ChangeQANPostgreSQLPgStatementsAgentParamsMultiError, or nil if none found. +func (m *ChangeQANPostgreSQLPgStatementsAgentParams) ValidateAll() error { return m.validate(true) } -func (m *ChangeQANPostgreSQLPgStatementsAgentRequest) validate(all bool) error { +func (m *ChangeQANPostgreSQLPgStatementsAgentParams) validate(all bool) error { if m == nil { return nil } @@ -8920,7 +9165,7 @@ func (m *ChangeQANPostgreSQLPgStatementsAgentRequest) validate(all bool) error { var errors []error if utf8.RuneCountInString(m.GetAgentId()) < 1 { - err := ChangeQANPostgreSQLPgStatementsAgentRequestValidationError{ + err := ChangeQANPostgreSQLPgStatementsAgentParamsValidationError{ field: "AgentId", reason: "value length must be at least 1 runes", } @@ -8931,163 +9176,28 @@ func (m *ChangeQANPostgreSQLPgStatementsAgentRequest) validate(all bool) error { } if all { - switch v := interface{}(m.GetCommon()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeQANPostgreSQLPgStatementsAgentRequestValidationError{ - field: "Common", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, ChangeQANPostgreSQLPgStatementsAgentRequestValidationError{ - field: "Common", - reason: "embedded message failed validation", - cause: err, - }) - } - } - } else if v, ok := interface{}(m.GetCommon()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return ChangeQANPostgreSQLPgStatementsAgentRequestValidationError{ - field: "Common", - reason: "embedded message failed validation", - cause: err, - } - } - } - - if len(errors) > 0 { - return ChangeQANPostgreSQLPgStatementsAgentRequestMultiError(errors) - } - - return nil -} - -// ChangeQANPostgreSQLPgStatementsAgentRequestMultiError is an error wrapping -// multiple validation errors returned by -// ChangeQANPostgreSQLPgStatementsAgentRequest.ValidateAll() if the designated -// constraints aren't met. -type ChangeQANPostgreSQLPgStatementsAgentRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m ChangeQANPostgreSQLPgStatementsAgentRequestMultiError) Error() string { - var msgs []string - for _, err := range m { - msgs = append(msgs, err.Error()) - } - return strings.Join(msgs, "; ") -} - -// AllErrors returns a list of validation violation errors. -func (m ChangeQANPostgreSQLPgStatementsAgentRequestMultiError) AllErrors() []error { return m } - -// ChangeQANPostgreSQLPgStatementsAgentRequestValidationError is the validation -// error returned by ChangeQANPostgreSQLPgStatementsAgentRequest.Validate if -// the designated constraints aren't met. -type ChangeQANPostgreSQLPgStatementsAgentRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e ChangeQANPostgreSQLPgStatementsAgentRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e ChangeQANPostgreSQLPgStatementsAgentRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e ChangeQANPostgreSQLPgStatementsAgentRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e ChangeQANPostgreSQLPgStatementsAgentRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e ChangeQANPostgreSQLPgStatementsAgentRequestValidationError) ErrorName() string { - return "ChangeQANPostgreSQLPgStatementsAgentRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e ChangeQANPostgreSQLPgStatementsAgentRequestValidationError) Error() string { - cause := "" - if e.cause != nil { - cause = fmt.Sprintf(" | caused by: %v", e.cause) - } - - key := "" - if e.key { - key = "key for " - } - - return fmt.Sprintf( - "invalid %sChangeQANPostgreSQLPgStatementsAgentRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = ChangeQANPostgreSQLPgStatementsAgentRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = ChangeQANPostgreSQLPgStatementsAgentRequestValidationError{} - -// Validate checks the field values on -// ChangeQANPostgreSQLPgStatementsAgentResponse with the rules defined in the -// proto definition for this message. If any rules are violated, the first -// error encountered is returned, or nil if there are no violations. -func (m *ChangeQANPostgreSQLPgStatementsAgentResponse) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on -// ChangeQANPostgreSQLPgStatementsAgentResponse with the rules defined in the -// proto definition for this message. If any rules are violated, the result is -// a list of violation errors wrapped in -// ChangeQANPostgreSQLPgStatementsAgentResponseMultiError, or nil if none found. -func (m *ChangeQANPostgreSQLPgStatementsAgentResponse) ValidateAll() error { - return m.validate(true) -} - -func (m *ChangeQANPostgreSQLPgStatementsAgentResponse) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - - if all { - switch v := interface{}(m.GetQanPostgresqlPgstatementsAgent()).(type) { + switch v := interface{}(m.GetCommon()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeQANPostgreSQLPgStatementsAgentResponseValidationError{ - field: "QanPostgresqlPgstatementsAgent", + errors = append(errors, ChangeQANPostgreSQLPgStatementsAgentParamsValidationError{ + field: "Common", reason: "embedded message failed validation", cause: err, }) } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, ChangeQANPostgreSQLPgStatementsAgentResponseValidationError{ - field: "QanPostgresqlPgstatementsAgent", + errors = append(errors, ChangeQANPostgreSQLPgStatementsAgentParamsValidationError{ + field: "Common", reason: "embedded message failed validation", cause: err, }) } } - } else if v, ok := interface{}(m.GetQanPostgresqlPgstatementsAgent()).(interface{ Validate() error }); ok { + } else if v, ok := interface{}(m.GetCommon()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return ChangeQANPostgreSQLPgStatementsAgentResponseValidationError{ - field: "QanPostgresqlPgstatementsAgent", + return ChangeQANPostgreSQLPgStatementsAgentParamsValidationError{ + field: "Common", reason: "embedded message failed validation", cause: err, } @@ -9095,20 +9205,20 @@ func (m *ChangeQANPostgreSQLPgStatementsAgentResponse) validate(all bool) error } if len(errors) > 0 { - return ChangeQANPostgreSQLPgStatementsAgentResponseMultiError(errors) + return ChangeQANPostgreSQLPgStatementsAgentParamsMultiError(errors) } return nil } -// ChangeQANPostgreSQLPgStatementsAgentResponseMultiError is an error wrapping +// ChangeQANPostgreSQLPgStatementsAgentParamsMultiError is an error wrapping // multiple validation errors returned by -// ChangeQANPostgreSQLPgStatementsAgentResponse.ValidateAll() if the -// designated constraints aren't met. -type ChangeQANPostgreSQLPgStatementsAgentResponseMultiError []error +// ChangeQANPostgreSQLPgStatementsAgentParams.ValidateAll() if the designated +// constraints aren't met. +type ChangeQANPostgreSQLPgStatementsAgentParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m ChangeQANPostgreSQLPgStatementsAgentResponseMultiError) Error() string { +func (m ChangeQANPostgreSQLPgStatementsAgentParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -9117,13 +9227,12 @@ func (m ChangeQANPostgreSQLPgStatementsAgentResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m ChangeQANPostgreSQLPgStatementsAgentResponseMultiError) AllErrors() []error { return m } +func (m ChangeQANPostgreSQLPgStatementsAgentParamsMultiError) AllErrors() []error { return m } -// ChangeQANPostgreSQLPgStatementsAgentResponseValidationError is the -// validation error returned by -// ChangeQANPostgreSQLPgStatementsAgentResponse.Validate if the designated -// constraints aren't met. -type ChangeQANPostgreSQLPgStatementsAgentResponseValidationError struct { +// ChangeQANPostgreSQLPgStatementsAgentParamsValidationError is the validation +// error returned by ChangeQANPostgreSQLPgStatementsAgentParams.Validate if +// the designated constraints aren't met. +type ChangeQANPostgreSQLPgStatementsAgentParamsValidationError struct { field string reason string cause error @@ -9131,24 +9240,24 @@ type ChangeQANPostgreSQLPgStatementsAgentResponseValidationError struct { } // Field function returns field value. -func (e ChangeQANPostgreSQLPgStatementsAgentResponseValidationError) Field() string { return e.field } +func (e ChangeQANPostgreSQLPgStatementsAgentParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e ChangeQANPostgreSQLPgStatementsAgentResponseValidationError) Reason() string { return e.reason } +func (e ChangeQANPostgreSQLPgStatementsAgentParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e ChangeQANPostgreSQLPgStatementsAgentResponseValidationError) Cause() error { return e.cause } +func (e ChangeQANPostgreSQLPgStatementsAgentParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e ChangeQANPostgreSQLPgStatementsAgentResponseValidationError) Key() bool { return e.key } +func (e ChangeQANPostgreSQLPgStatementsAgentParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e ChangeQANPostgreSQLPgStatementsAgentResponseValidationError) ErrorName() string { - return "ChangeQANPostgreSQLPgStatementsAgentResponseValidationError" +func (e ChangeQANPostgreSQLPgStatementsAgentParamsValidationError) ErrorName() string { + return "ChangeQANPostgreSQLPgStatementsAgentParamsValidationError" } // Error satisfies the builtin error interface -func (e ChangeQANPostgreSQLPgStatementsAgentResponseValidationError) Error() string { +func (e ChangeQANPostgreSQLPgStatementsAgentParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -9160,14 +9269,14 @@ func (e ChangeQANPostgreSQLPgStatementsAgentResponseValidationError) Error() str } return fmt.Sprintf( - "invalid %sChangeQANPostgreSQLPgStatementsAgentResponse.%s: %s%s", + "invalid %sChangeQANPostgreSQLPgStatementsAgentParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = ChangeQANPostgreSQLPgStatementsAgentResponseValidationError{} +var _ error = ChangeQANPostgreSQLPgStatementsAgentParamsValidationError{} var _ interface { Field() string @@ -9175,7 +9284,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = ChangeQANPostgreSQLPgStatementsAgentResponseValidationError{} +} = ChangeQANPostgreSQLPgStatementsAgentParamsValidationError{} // Validate checks the field values on AddQANPostgreSQLPgStatMonitorAgentParams // with the rules defined in the proto definition for this message. If any @@ -9341,23 +9450,23 @@ var _ interface { } = AddQANPostgreSQLPgStatMonitorAgentParamsValidationError{} // Validate checks the field values on -// ChangeQANPostgreSQLPgStatMonitorAgentRequest with the rules defined in the +// ChangeQANPostgreSQLPgStatMonitorAgentParams with the rules defined in the // proto definition for this message. If any rules are violated, the first // error encountered is returned, or nil if there are no violations. -func (m *ChangeQANPostgreSQLPgStatMonitorAgentRequest) Validate() error { +func (m *ChangeQANPostgreSQLPgStatMonitorAgentParams) Validate() error { return m.validate(false) } // ValidateAll checks the field values on -// ChangeQANPostgreSQLPgStatMonitorAgentRequest with the rules defined in the +// ChangeQANPostgreSQLPgStatMonitorAgentParams with the rules defined in the // proto definition for this message. If any rules are violated, the result is // a list of violation errors wrapped in -// ChangeQANPostgreSQLPgStatMonitorAgentRequestMultiError, or nil if none found. -func (m *ChangeQANPostgreSQLPgStatMonitorAgentRequest) ValidateAll() error { +// ChangeQANPostgreSQLPgStatMonitorAgentParamsMultiError, or nil if none found. +func (m *ChangeQANPostgreSQLPgStatMonitorAgentParams) ValidateAll() error { return m.validate(true) } -func (m *ChangeQANPostgreSQLPgStatMonitorAgentRequest) validate(all bool) error { +func (m *ChangeQANPostgreSQLPgStatMonitorAgentParams) validate(all bool) error { if m == nil { return nil } @@ -9365,7 +9474,7 @@ func (m *ChangeQANPostgreSQLPgStatMonitorAgentRequest) validate(all bool) error var errors []error if utf8.RuneCountInString(m.GetAgentId()) < 1 { - err := ChangeQANPostgreSQLPgStatMonitorAgentRequestValidationError{ + err := ChangeQANPostgreSQLPgStatMonitorAgentParamsValidationError{ field: "AgentId", reason: "value length must be at least 1 runes", } @@ -9379,7 +9488,7 @@ func (m *ChangeQANPostgreSQLPgStatMonitorAgentRequest) validate(all bool) error switch v := interface{}(m.GetCommon()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeQANPostgreSQLPgStatMonitorAgentRequestValidationError{ + errors = append(errors, ChangeQANPostgreSQLPgStatMonitorAgentParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -9387,7 +9496,7 @@ func (m *ChangeQANPostgreSQLPgStatMonitorAgentRequest) validate(all bool) error } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, ChangeQANPostgreSQLPgStatMonitorAgentRequestValidationError{ + errors = append(errors, ChangeQANPostgreSQLPgStatMonitorAgentParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -9396,7 +9505,7 @@ func (m *ChangeQANPostgreSQLPgStatMonitorAgentRequest) validate(all bool) error } } else if v, ok := interface{}(m.GetCommon()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return ChangeQANPostgreSQLPgStatMonitorAgentRequestValidationError{ + return ChangeQANPostgreSQLPgStatMonitorAgentParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -9405,156 +9514,20 @@ func (m *ChangeQANPostgreSQLPgStatMonitorAgentRequest) validate(all bool) error } if len(errors) > 0 { - return ChangeQANPostgreSQLPgStatMonitorAgentRequestMultiError(errors) + return ChangeQANPostgreSQLPgStatMonitorAgentParamsMultiError(errors) } return nil } -// ChangeQANPostgreSQLPgStatMonitorAgentRequestMultiError is an error wrapping +// ChangeQANPostgreSQLPgStatMonitorAgentParamsMultiError is an error wrapping // multiple validation errors returned by -// ChangeQANPostgreSQLPgStatMonitorAgentRequest.ValidateAll() if the -// designated constraints aren't met. -type ChangeQANPostgreSQLPgStatMonitorAgentRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m ChangeQANPostgreSQLPgStatMonitorAgentRequestMultiError) Error() string { - var msgs []string - for _, err := range m { - msgs = append(msgs, err.Error()) - } - return strings.Join(msgs, "; ") -} - -// AllErrors returns a list of validation violation errors. -func (m ChangeQANPostgreSQLPgStatMonitorAgentRequestMultiError) AllErrors() []error { return m } - -// ChangeQANPostgreSQLPgStatMonitorAgentRequestValidationError is the -// validation error returned by -// ChangeQANPostgreSQLPgStatMonitorAgentRequest.Validate if the designated +// ChangeQANPostgreSQLPgStatMonitorAgentParams.ValidateAll() if the designated // constraints aren't met. -type ChangeQANPostgreSQLPgStatMonitorAgentRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e ChangeQANPostgreSQLPgStatMonitorAgentRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e ChangeQANPostgreSQLPgStatMonitorAgentRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e ChangeQANPostgreSQLPgStatMonitorAgentRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e ChangeQANPostgreSQLPgStatMonitorAgentRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e ChangeQANPostgreSQLPgStatMonitorAgentRequestValidationError) ErrorName() string { - return "ChangeQANPostgreSQLPgStatMonitorAgentRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e ChangeQANPostgreSQLPgStatMonitorAgentRequestValidationError) Error() string { - cause := "" - if e.cause != nil { - cause = fmt.Sprintf(" | caused by: %v", e.cause) - } - - key := "" - if e.key { - key = "key for " - } - - return fmt.Sprintf( - "invalid %sChangeQANPostgreSQLPgStatMonitorAgentRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = ChangeQANPostgreSQLPgStatMonitorAgentRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = ChangeQANPostgreSQLPgStatMonitorAgentRequestValidationError{} - -// Validate checks the field values on -// ChangeQANPostgreSQLPgStatMonitorAgentResponse with the rules defined in the -// proto definition for this message. If any rules are violated, the first -// error encountered is returned, or nil if there are no violations. -func (m *ChangeQANPostgreSQLPgStatMonitorAgentResponse) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on -// ChangeQANPostgreSQLPgStatMonitorAgentResponse with the rules defined in the -// proto definition for this message. If any rules are violated, the result is -// a list of violation errors wrapped in -// ChangeQANPostgreSQLPgStatMonitorAgentResponseMultiError, or nil if none found. -func (m *ChangeQANPostgreSQLPgStatMonitorAgentResponse) ValidateAll() error { - return m.validate(true) -} - -func (m *ChangeQANPostgreSQLPgStatMonitorAgentResponse) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - - if all { - switch v := interface{}(m.GetQanPostgresqlPgstatmonitorAgent()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeQANPostgreSQLPgStatMonitorAgentResponseValidationError{ - field: "QanPostgresqlPgstatmonitorAgent", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, ChangeQANPostgreSQLPgStatMonitorAgentResponseValidationError{ - field: "QanPostgresqlPgstatmonitorAgent", - reason: "embedded message failed validation", - cause: err, - }) - } - } - } else if v, ok := interface{}(m.GetQanPostgresqlPgstatmonitorAgent()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return ChangeQANPostgreSQLPgStatMonitorAgentResponseValidationError{ - field: "QanPostgresqlPgstatmonitorAgent", - reason: "embedded message failed validation", - cause: err, - } - } - } - - if len(errors) > 0 { - return ChangeQANPostgreSQLPgStatMonitorAgentResponseMultiError(errors) - } - - return nil -} - -// ChangeQANPostgreSQLPgStatMonitorAgentResponseMultiError is an error wrapping -// multiple validation errors returned by -// ChangeQANPostgreSQLPgStatMonitorAgentResponse.ValidateAll() if the -// designated constraints aren't met. -type ChangeQANPostgreSQLPgStatMonitorAgentResponseMultiError []error +type ChangeQANPostgreSQLPgStatMonitorAgentParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m ChangeQANPostgreSQLPgStatMonitorAgentResponseMultiError) Error() string { +func (m ChangeQANPostgreSQLPgStatMonitorAgentParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -9563,13 +9536,12 @@ func (m ChangeQANPostgreSQLPgStatMonitorAgentResponseMultiError) Error() string } // AllErrors returns a list of validation violation errors. -func (m ChangeQANPostgreSQLPgStatMonitorAgentResponseMultiError) AllErrors() []error { return m } +func (m ChangeQANPostgreSQLPgStatMonitorAgentParamsMultiError) AllErrors() []error { return m } -// ChangeQANPostgreSQLPgStatMonitorAgentResponseValidationError is the -// validation error returned by -// ChangeQANPostgreSQLPgStatMonitorAgentResponse.Validate if the designated -// constraints aren't met. -type ChangeQANPostgreSQLPgStatMonitorAgentResponseValidationError struct { +// ChangeQANPostgreSQLPgStatMonitorAgentParamsValidationError is the validation +// error returned by ChangeQANPostgreSQLPgStatMonitorAgentParams.Validate if +// the designated constraints aren't met. +type ChangeQANPostgreSQLPgStatMonitorAgentParamsValidationError struct { field string reason string cause error @@ -9577,26 +9549,24 @@ type ChangeQANPostgreSQLPgStatMonitorAgentResponseValidationError struct { } // Field function returns field value. -func (e ChangeQANPostgreSQLPgStatMonitorAgentResponseValidationError) Field() string { return e.field } +func (e ChangeQANPostgreSQLPgStatMonitorAgentParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e ChangeQANPostgreSQLPgStatMonitorAgentResponseValidationError) Reason() string { - return e.reason -} +func (e ChangeQANPostgreSQLPgStatMonitorAgentParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e ChangeQANPostgreSQLPgStatMonitorAgentResponseValidationError) Cause() error { return e.cause } +func (e ChangeQANPostgreSQLPgStatMonitorAgentParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e ChangeQANPostgreSQLPgStatMonitorAgentResponseValidationError) Key() bool { return e.key } +func (e ChangeQANPostgreSQLPgStatMonitorAgentParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e ChangeQANPostgreSQLPgStatMonitorAgentResponseValidationError) ErrorName() string { - return "ChangeQANPostgreSQLPgStatMonitorAgentResponseValidationError" +func (e ChangeQANPostgreSQLPgStatMonitorAgentParamsValidationError) ErrorName() string { + return "ChangeQANPostgreSQLPgStatMonitorAgentParamsValidationError" } // Error satisfies the builtin error interface -func (e ChangeQANPostgreSQLPgStatMonitorAgentResponseValidationError) Error() string { +func (e ChangeQANPostgreSQLPgStatMonitorAgentParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -9608,14 +9578,14 @@ func (e ChangeQANPostgreSQLPgStatMonitorAgentResponseValidationError) Error() st } return fmt.Sprintf( - "invalid %sChangeQANPostgreSQLPgStatMonitorAgentResponse.%s: %s%s", + "invalid %sChangeQANPostgreSQLPgStatMonitorAgentParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = ChangeQANPostgreSQLPgStatMonitorAgentResponseValidationError{} +var _ error = ChangeQANPostgreSQLPgStatMonitorAgentParamsValidationError{} var _ interface { Field() string @@ -9623,7 +9593,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = ChangeQANPostgreSQLPgStatMonitorAgentResponseValidationError{} +} = ChangeQANPostgreSQLPgStatMonitorAgentParamsValidationError{} // Validate checks the field values on AddRDSExporterParams with the rules // defined in the proto definition for this message. If any rules are @@ -9679,168 +9649,26 @@ func (m *AddRDSExporterParams) validate(all bool) error { // no validation rules for DisableBasicMetrics - // no validation rules for DisableEnhancedMetrics - - // no validation rules for PushMetrics - - // no validation rules for LogLevel - - if len(errors) > 0 { - return AddRDSExporterParamsMultiError(errors) - } - - return nil -} - -// AddRDSExporterParamsMultiError is an error wrapping multiple validation -// errors returned by AddRDSExporterParams.ValidateAll() if the designated -// constraints aren't met. -type AddRDSExporterParamsMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m AddRDSExporterParamsMultiError) Error() string { - var msgs []string - for _, err := range m { - msgs = append(msgs, err.Error()) - } - return strings.Join(msgs, "; ") -} - -// AllErrors returns a list of validation violation errors. -func (m AddRDSExporterParamsMultiError) AllErrors() []error { return m } - -// AddRDSExporterParamsValidationError is the validation error returned by -// AddRDSExporterParams.Validate if the designated constraints aren't met. -type AddRDSExporterParamsValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e AddRDSExporterParamsValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e AddRDSExporterParamsValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e AddRDSExporterParamsValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e AddRDSExporterParamsValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e AddRDSExporterParamsValidationError) ErrorName() string { - return "AddRDSExporterParamsValidationError" -} - -// Error satisfies the builtin error interface -func (e AddRDSExporterParamsValidationError) Error() string { - cause := "" - if e.cause != nil { - cause = fmt.Sprintf(" | caused by: %v", e.cause) - } - - key := "" - if e.key { - key = "key for " - } - - return fmt.Sprintf( - "invalid %sAddRDSExporterParams.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = AddRDSExporterParamsValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = AddRDSExporterParamsValidationError{} - -// Validate checks the field values on ChangeRDSExporterRequest with the rules -// defined in the proto definition for this message. If any rules are -// violated, the first error encountered is returned, or nil if there are no violations. -func (m *ChangeRDSExporterRequest) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on ChangeRDSExporterRequest with the -// rules defined in the proto definition for this message. If any rules are -// violated, the result is a list of violation errors wrapped in -// ChangeRDSExporterRequestMultiError, or nil if none found. -func (m *ChangeRDSExporterRequest) ValidateAll() error { - return m.validate(true) -} - -func (m *ChangeRDSExporterRequest) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - - if utf8.RuneCountInString(m.GetAgentId()) < 1 { - err := ChangeRDSExporterRequestValidationError{ - field: "AgentId", - reason: "value length must be at least 1 runes", - } - if !all { - return err - } - errors = append(errors, err) - } - - if all { - switch v := interface{}(m.GetCommon()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeRDSExporterRequestValidationError{ - field: "Common", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, ChangeRDSExporterRequestValidationError{ - field: "Common", - reason: "embedded message failed validation", - cause: err, - }) - } - } - } else if v, ok := interface{}(m.GetCommon()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return ChangeRDSExporterRequestValidationError{ - field: "Common", - reason: "embedded message failed validation", - cause: err, - } - } - } - + // no validation rules for DisableEnhancedMetrics + + // no validation rules for PushMetrics + + // no validation rules for LogLevel + if len(errors) > 0 { - return ChangeRDSExporterRequestMultiError(errors) + return AddRDSExporterParamsMultiError(errors) } return nil } -// ChangeRDSExporterRequestMultiError is an error wrapping multiple validation -// errors returned by ChangeRDSExporterRequest.ValidateAll() if the designated +// AddRDSExporterParamsMultiError is an error wrapping multiple validation +// errors returned by AddRDSExporterParams.ValidateAll() if the designated // constraints aren't met. -type ChangeRDSExporterRequestMultiError []error +type AddRDSExporterParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m ChangeRDSExporterRequestMultiError) Error() string { +func (m AddRDSExporterParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -9849,11 +9677,11 @@ func (m ChangeRDSExporterRequestMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m ChangeRDSExporterRequestMultiError) AllErrors() []error { return m } +func (m AddRDSExporterParamsMultiError) AllErrors() []error { return m } -// ChangeRDSExporterRequestValidationError is the validation error returned by -// ChangeRDSExporterRequest.Validate if the designated constraints aren't met. -type ChangeRDSExporterRequestValidationError struct { +// AddRDSExporterParamsValidationError is the validation error returned by +// AddRDSExporterParams.Validate if the designated constraints aren't met. +type AddRDSExporterParamsValidationError struct { field string reason string cause error @@ -9861,24 +9689,24 @@ type ChangeRDSExporterRequestValidationError struct { } // Field function returns field value. -func (e ChangeRDSExporterRequestValidationError) Field() string { return e.field } +func (e AddRDSExporterParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e ChangeRDSExporterRequestValidationError) Reason() string { return e.reason } +func (e AddRDSExporterParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e ChangeRDSExporterRequestValidationError) Cause() error { return e.cause } +func (e AddRDSExporterParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e ChangeRDSExporterRequestValidationError) Key() bool { return e.key } +func (e AddRDSExporterParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e ChangeRDSExporterRequestValidationError) ErrorName() string { - return "ChangeRDSExporterRequestValidationError" +func (e AddRDSExporterParamsValidationError) ErrorName() string { + return "AddRDSExporterParamsValidationError" } // Error satisfies the builtin error interface -func (e ChangeRDSExporterRequestValidationError) Error() string { +func (e AddRDSExporterParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -9890,14 +9718,14 @@ func (e ChangeRDSExporterRequestValidationError) Error() string { } return fmt.Sprintf( - "invalid %sChangeRDSExporterRequest.%s: %s%s", + "invalid %sAddRDSExporterParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = ChangeRDSExporterRequestValidationError{} +var _ error = AddRDSExporterParamsValidationError{} var _ interface { Field() string @@ -9905,53 +9733,64 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = ChangeRDSExporterRequestValidationError{} +} = AddRDSExporterParamsValidationError{} -// Validate checks the field values on ChangeRDSExporterResponse with the rules +// Validate checks the field values on ChangeRDSExporterParams with the rules // defined in the proto definition for this message. If any rules are // violated, the first error encountered is returned, or nil if there are no violations. -func (m *ChangeRDSExporterResponse) Validate() error { +func (m *ChangeRDSExporterParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on ChangeRDSExporterResponse with the +// ValidateAll checks the field values on ChangeRDSExporterParams with the // rules defined in the proto definition for this message. If any rules are // violated, the result is a list of violation errors wrapped in -// ChangeRDSExporterResponseMultiError, or nil if none found. -func (m *ChangeRDSExporterResponse) ValidateAll() error { +// ChangeRDSExporterParamsMultiError, or nil if none found. +func (m *ChangeRDSExporterParams) ValidateAll() error { return m.validate(true) } -func (m *ChangeRDSExporterResponse) validate(all bool) error { +func (m *ChangeRDSExporterParams) validate(all bool) error { if m == nil { return nil } var errors []error + if utf8.RuneCountInString(m.GetAgentId()) < 1 { + err := ChangeRDSExporterParamsValidationError{ + field: "AgentId", + reason: "value length must be at least 1 runes", + } + if !all { + return err + } + errors = append(errors, err) + } + if all { - switch v := interface{}(m.GetRdsExporter()).(type) { + switch v := interface{}(m.GetCommon()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeRDSExporterResponseValidationError{ - field: "RdsExporter", + errors = append(errors, ChangeRDSExporterParamsValidationError{ + field: "Common", reason: "embedded message failed validation", cause: err, }) } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, ChangeRDSExporterResponseValidationError{ - field: "RdsExporter", + errors = append(errors, ChangeRDSExporterParamsValidationError{ + field: "Common", reason: "embedded message failed validation", cause: err, }) } } - } else if v, ok := interface{}(m.GetRdsExporter()).(interface{ Validate() error }); ok { + } else if v, ok := interface{}(m.GetCommon()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return ChangeRDSExporterResponseValidationError{ - field: "RdsExporter", + return ChangeRDSExporterParamsValidationError{ + field: "Common", reason: "embedded message failed validation", cause: err, } @@ -9959,19 +9798,19 @@ func (m *ChangeRDSExporterResponse) validate(all bool) error { } if len(errors) > 0 { - return ChangeRDSExporterResponseMultiError(errors) + return ChangeRDSExporterParamsMultiError(errors) } return nil } -// ChangeRDSExporterResponseMultiError is an error wrapping multiple validation -// errors returned by ChangeRDSExporterResponse.ValidateAll() if the -// designated constraints aren't met. -type ChangeRDSExporterResponseMultiError []error +// ChangeRDSExporterParamsMultiError is an error wrapping multiple validation +// errors returned by ChangeRDSExporterParams.ValidateAll() if the designated +// constraints aren't met. +type ChangeRDSExporterParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m ChangeRDSExporterResponseMultiError) Error() string { +func (m ChangeRDSExporterParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -9980,11 +9819,11 @@ func (m ChangeRDSExporterResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m ChangeRDSExporterResponseMultiError) AllErrors() []error { return m } +func (m ChangeRDSExporterParamsMultiError) AllErrors() []error { return m } -// ChangeRDSExporterResponseValidationError is the validation error returned by -// ChangeRDSExporterResponse.Validate if the designated constraints aren't met. -type ChangeRDSExporterResponseValidationError struct { +// ChangeRDSExporterParamsValidationError is the validation error returned by +// ChangeRDSExporterParams.Validate if the designated constraints aren't met. +type ChangeRDSExporterParamsValidationError struct { field string reason string cause error @@ -9992,24 +9831,24 @@ type ChangeRDSExporterResponseValidationError struct { } // Field function returns field value. -func (e ChangeRDSExporterResponseValidationError) Field() string { return e.field } +func (e ChangeRDSExporterParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e ChangeRDSExporterResponseValidationError) Reason() string { return e.reason } +func (e ChangeRDSExporterParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e ChangeRDSExporterResponseValidationError) Cause() error { return e.cause } +func (e ChangeRDSExporterParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e ChangeRDSExporterResponseValidationError) Key() bool { return e.key } +func (e ChangeRDSExporterParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e ChangeRDSExporterResponseValidationError) ErrorName() string { - return "ChangeRDSExporterResponseValidationError" +func (e ChangeRDSExporterParamsValidationError) ErrorName() string { + return "ChangeRDSExporterParamsValidationError" } // Error satisfies the builtin error interface -func (e ChangeRDSExporterResponseValidationError) Error() string { +func (e ChangeRDSExporterParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -10021,14 +9860,14 @@ func (e ChangeRDSExporterResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sChangeRDSExporterResponse.%s: %s%s", + "invalid %sChangeRDSExporterParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = ChangeRDSExporterResponseValidationError{} +var _ error = ChangeRDSExporterParamsValidationError{} var _ interface { Field() string @@ -10036,7 +9875,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = ChangeRDSExporterResponseValidationError{} +} = ChangeRDSExporterParamsValidationError{} // Validate checks the field values on AddExternalExporterParams with the rules // defined in the proto definition for this message. If any rules are @@ -10176,22 +10015,22 @@ var _ interface { ErrorName() string } = AddExternalExporterParamsValidationError{} -// Validate checks the field values on ChangeExternalExporterRequest with the +// Validate checks the field values on ChangeExternalExporterParams with the // rules defined in the proto definition for this message. If any rules are // violated, the first error encountered is returned, or nil if there are no violations. -func (m *ChangeExternalExporterRequest) Validate() error { +func (m *ChangeExternalExporterParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on ChangeExternalExporterRequest with -// the rules defined in the proto definition for this message. If any rules -// are violated, the result is a list of violation errors wrapped in -// ChangeExternalExporterRequestMultiError, or nil if none found. -func (m *ChangeExternalExporterRequest) ValidateAll() error { +// ValidateAll checks the field values on ChangeExternalExporterParams with the +// rules defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// ChangeExternalExporterParamsMultiError, or nil if none found. +func (m *ChangeExternalExporterParams) ValidateAll() error { return m.validate(true) } -func (m *ChangeExternalExporterRequest) validate(all bool) error { +func (m *ChangeExternalExporterParams) validate(all bool) error { if m == nil { return nil } @@ -10199,7 +10038,7 @@ func (m *ChangeExternalExporterRequest) validate(all bool) error { var errors []error if utf8.RuneCountInString(m.GetAgentId()) < 1 { - err := ChangeExternalExporterRequestValidationError{ + err := ChangeExternalExporterParamsValidationError{ field: "AgentId", reason: "value length must be at least 1 runes", } @@ -10213,7 +10052,7 @@ func (m *ChangeExternalExporterRequest) validate(all bool) error { switch v := interface{}(m.GetCommon()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeExternalExporterRequestValidationError{ + errors = append(errors, ChangeExternalExporterParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -10221,7 +10060,7 @@ func (m *ChangeExternalExporterRequest) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, ChangeExternalExporterRequestValidationError{ + errors = append(errors, ChangeExternalExporterParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -10230,7 +10069,7 @@ func (m *ChangeExternalExporterRequest) validate(all bool) error { } } else if v, ok := interface{}(m.GetCommon()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return ChangeExternalExporterRequestValidationError{ + return ChangeExternalExporterParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -10239,151 +10078,19 @@ func (m *ChangeExternalExporterRequest) validate(all bool) error { } if len(errors) > 0 { - return ChangeExternalExporterRequestMultiError(errors) - } - - return nil -} - -// ChangeExternalExporterRequestMultiError is an error wrapping multiple -// validation errors returned by ChangeExternalExporterRequest.ValidateAll() -// if the designated constraints aren't met. -type ChangeExternalExporterRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m ChangeExternalExporterRequestMultiError) Error() string { - var msgs []string - for _, err := range m { - msgs = append(msgs, err.Error()) - } - return strings.Join(msgs, "; ") -} - -// AllErrors returns a list of validation violation errors. -func (m ChangeExternalExporterRequestMultiError) AllErrors() []error { return m } - -// ChangeExternalExporterRequestValidationError is the validation error -// returned by ChangeExternalExporterRequest.Validate if the designated -// constraints aren't met. -type ChangeExternalExporterRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e ChangeExternalExporterRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e ChangeExternalExporterRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e ChangeExternalExporterRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e ChangeExternalExporterRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e ChangeExternalExporterRequestValidationError) ErrorName() string { - return "ChangeExternalExporterRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e ChangeExternalExporterRequestValidationError) Error() string { - cause := "" - if e.cause != nil { - cause = fmt.Sprintf(" | caused by: %v", e.cause) - } - - key := "" - if e.key { - key = "key for " - } - - return fmt.Sprintf( - "invalid %sChangeExternalExporterRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = ChangeExternalExporterRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = ChangeExternalExporterRequestValidationError{} - -// Validate checks the field values on ChangeExternalExporterResponse with the -// rules defined in the proto definition for this message. If any rules are -// violated, the first error encountered is returned, or nil if there are no violations. -func (m *ChangeExternalExporterResponse) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on ChangeExternalExporterResponse with -// the rules defined in the proto definition for this message. If any rules -// are violated, the result is a list of violation errors wrapped in -// ChangeExternalExporterResponseMultiError, or nil if none found. -func (m *ChangeExternalExporterResponse) ValidateAll() error { - return m.validate(true) -} - -func (m *ChangeExternalExporterResponse) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - - if all { - switch v := interface{}(m.GetExternalExporter()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeExternalExporterResponseValidationError{ - field: "ExternalExporter", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, ChangeExternalExporterResponseValidationError{ - field: "ExternalExporter", - reason: "embedded message failed validation", - cause: err, - }) - } - } - } else if v, ok := interface{}(m.GetExternalExporter()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return ChangeExternalExporterResponseValidationError{ - field: "ExternalExporter", - reason: "embedded message failed validation", - cause: err, - } - } - } - - if len(errors) > 0 { - return ChangeExternalExporterResponseMultiError(errors) + return ChangeExternalExporterParamsMultiError(errors) } return nil } -// ChangeExternalExporterResponseMultiError is an error wrapping multiple -// validation errors returned by ChangeExternalExporterResponse.ValidateAll() -// if the designated constraints aren't met. -type ChangeExternalExporterResponseMultiError []error +// ChangeExternalExporterParamsMultiError is an error wrapping multiple +// validation errors returned by ChangeExternalExporterParams.ValidateAll() if +// the designated constraints aren't met. +type ChangeExternalExporterParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m ChangeExternalExporterResponseMultiError) Error() string { +func (m ChangeExternalExporterParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -10392,12 +10099,12 @@ func (m ChangeExternalExporterResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m ChangeExternalExporterResponseMultiError) AllErrors() []error { return m } +func (m ChangeExternalExporterParamsMultiError) AllErrors() []error { return m } -// ChangeExternalExporterResponseValidationError is the validation error -// returned by ChangeExternalExporterResponse.Validate if the designated -// constraints aren't met. -type ChangeExternalExporterResponseValidationError struct { +// ChangeExternalExporterParamsValidationError is the validation error returned +// by ChangeExternalExporterParams.Validate if the designated constraints +// aren't met. +type ChangeExternalExporterParamsValidationError struct { field string reason string cause error @@ -10405,24 +10112,24 @@ type ChangeExternalExporterResponseValidationError struct { } // Field function returns field value. -func (e ChangeExternalExporterResponseValidationError) Field() string { return e.field } +func (e ChangeExternalExporterParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e ChangeExternalExporterResponseValidationError) Reason() string { return e.reason } +func (e ChangeExternalExporterParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e ChangeExternalExporterResponseValidationError) Cause() error { return e.cause } +func (e ChangeExternalExporterParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e ChangeExternalExporterResponseValidationError) Key() bool { return e.key } +func (e ChangeExternalExporterParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e ChangeExternalExporterResponseValidationError) ErrorName() string { - return "ChangeExternalExporterResponseValidationError" +func (e ChangeExternalExporterParamsValidationError) ErrorName() string { + return "ChangeExternalExporterParamsValidationError" } // Error satisfies the builtin error interface -func (e ChangeExternalExporterResponseValidationError) Error() string { +func (e ChangeExternalExporterParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -10434,14 +10141,14 @@ func (e ChangeExternalExporterResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sChangeExternalExporterResponse.%s: %s%s", + "invalid %sChangeExternalExporterParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = ChangeExternalExporterResponseValidationError{} +var _ error = ChangeExternalExporterParamsValidationError{} var _ interface { Field() string @@ -10449,7 +10156,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = ChangeExternalExporterResponseValidationError{} +} = ChangeExternalExporterParamsValidationError{} // Validate checks the field values on AddAzureDatabaseExporterParams with the // rules defined in the proto definition for this message. If any rules are @@ -10605,23 +10312,23 @@ var _ interface { ErrorName() string } = AddAzureDatabaseExporterParamsValidationError{} -// Validate checks the field values on ChangeAzureDatabaseExporterRequest with +// Validate checks the field values on ChangeAzureDatabaseExporterParams with // the rules defined in the proto definition for this message. If any rules // are violated, the first error encountered is returned, or nil if there are // no violations. -func (m *ChangeAzureDatabaseExporterRequest) Validate() error { +func (m *ChangeAzureDatabaseExporterParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on ChangeAzureDatabaseExporterRequest +// ValidateAll checks the field values on ChangeAzureDatabaseExporterParams // with the rules defined in the proto definition for this message. If any // rules are violated, the result is a list of violation errors wrapped in -// ChangeAzureDatabaseExporterRequestMultiError, or nil if none found. -func (m *ChangeAzureDatabaseExporterRequest) ValidateAll() error { +// ChangeAzureDatabaseExporterParamsMultiError, or nil if none found. +func (m *ChangeAzureDatabaseExporterParams) ValidateAll() error { return m.validate(true) } -func (m *ChangeAzureDatabaseExporterRequest) validate(all bool) error { +func (m *ChangeAzureDatabaseExporterParams) validate(all bool) error { if m == nil { return nil } @@ -10629,7 +10336,7 @@ func (m *ChangeAzureDatabaseExporterRequest) validate(all bool) error { var errors []error if utf8.RuneCountInString(m.GetAgentId()) < 1 { - err := ChangeAzureDatabaseExporterRequestValidationError{ + err := ChangeAzureDatabaseExporterParamsValidationError{ field: "AgentId", reason: "value length must be at least 1 runes", } @@ -10643,7 +10350,7 @@ func (m *ChangeAzureDatabaseExporterRequest) validate(all bool) error { switch v := interface{}(m.GetCommon()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeAzureDatabaseExporterRequestValidationError{ + errors = append(errors, ChangeAzureDatabaseExporterParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -10651,7 +10358,7 @@ func (m *ChangeAzureDatabaseExporterRequest) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, ChangeAzureDatabaseExporterRequestValidationError{ + errors = append(errors, ChangeAzureDatabaseExporterParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -10660,7 +10367,7 @@ func (m *ChangeAzureDatabaseExporterRequest) validate(all bool) error { } } else if v, ok := interface{}(m.GetCommon()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return ChangeAzureDatabaseExporterRequestValidationError{ + return ChangeAzureDatabaseExporterParamsValidationError{ field: "Common", reason: "embedded message failed validation", cause: err, @@ -10669,154 +10376,20 @@ func (m *ChangeAzureDatabaseExporterRequest) validate(all bool) error { } if len(errors) > 0 { - return ChangeAzureDatabaseExporterRequestMultiError(errors) - } - - return nil -} - -// ChangeAzureDatabaseExporterRequestMultiError is an error wrapping multiple -// validation errors returned by -// ChangeAzureDatabaseExporterRequest.ValidateAll() if the designated -// constraints aren't met. -type ChangeAzureDatabaseExporterRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m ChangeAzureDatabaseExporterRequestMultiError) Error() string { - var msgs []string - for _, err := range m { - msgs = append(msgs, err.Error()) - } - return strings.Join(msgs, "; ") -} - -// AllErrors returns a list of validation violation errors. -func (m ChangeAzureDatabaseExporterRequestMultiError) AllErrors() []error { return m } - -// ChangeAzureDatabaseExporterRequestValidationError is the validation error -// returned by ChangeAzureDatabaseExporterRequest.Validate if the designated -// constraints aren't met. -type ChangeAzureDatabaseExporterRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e ChangeAzureDatabaseExporterRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e ChangeAzureDatabaseExporterRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e ChangeAzureDatabaseExporterRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e ChangeAzureDatabaseExporterRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e ChangeAzureDatabaseExporterRequestValidationError) ErrorName() string { - return "ChangeAzureDatabaseExporterRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e ChangeAzureDatabaseExporterRequestValidationError) Error() string { - cause := "" - if e.cause != nil { - cause = fmt.Sprintf(" | caused by: %v", e.cause) - } - - key := "" - if e.key { - key = "key for " - } - - return fmt.Sprintf( - "invalid %sChangeAzureDatabaseExporterRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = ChangeAzureDatabaseExporterRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = ChangeAzureDatabaseExporterRequestValidationError{} - -// Validate checks the field values on ChangeAzureDatabaseExporterResponse with -// the rules defined in the proto definition for this message. If any rules -// are violated, the first error encountered is returned, or nil if there are -// no violations. -func (m *ChangeAzureDatabaseExporterResponse) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on ChangeAzureDatabaseExporterResponse -// with the rules defined in the proto definition for this message. If any -// rules are violated, the result is a list of violation errors wrapped in -// ChangeAzureDatabaseExporterResponseMultiError, or nil if none found. -func (m *ChangeAzureDatabaseExporterResponse) ValidateAll() error { - return m.validate(true) -} - -func (m *ChangeAzureDatabaseExporterResponse) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - - if all { - switch v := interface{}(m.GetAzureDatabaseExporter()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, ChangeAzureDatabaseExporterResponseValidationError{ - field: "AzureDatabaseExporter", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, ChangeAzureDatabaseExporterResponseValidationError{ - field: "AzureDatabaseExporter", - reason: "embedded message failed validation", - cause: err, - }) - } - } - } else if v, ok := interface{}(m.GetAzureDatabaseExporter()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return ChangeAzureDatabaseExporterResponseValidationError{ - field: "AzureDatabaseExporter", - reason: "embedded message failed validation", - cause: err, - } - } - } - - if len(errors) > 0 { - return ChangeAzureDatabaseExporterResponseMultiError(errors) + return ChangeAzureDatabaseExporterParamsMultiError(errors) } return nil } -// ChangeAzureDatabaseExporterResponseMultiError is an error wrapping multiple +// ChangeAzureDatabaseExporterParamsMultiError is an error wrapping multiple // validation errors returned by -// ChangeAzureDatabaseExporterResponse.ValidateAll() if the designated +// ChangeAzureDatabaseExporterParams.ValidateAll() if the designated // constraints aren't met. -type ChangeAzureDatabaseExporterResponseMultiError []error +type ChangeAzureDatabaseExporterParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m ChangeAzureDatabaseExporterResponseMultiError) Error() string { +func (m ChangeAzureDatabaseExporterParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -10825,12 +10398,12 @@ func (m ChangeAzureDatabaseExporterResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m ChangeAzureDatabaseExporterResponseMultiError) AllErrors() []error { return m } +func (m ChangeAzureDatabaseExporterParamsMultiError) AllErrors() []error { return m } -// ChangeAzureDatabaseExporterResponseValidationError is the validation error -// returned by ChangeAzureDatabaseExporterResponse.Validate if the designated +// ChangeAzureDatabaseExporterParamsValidationError is the validation error +// returned by ChangeAzureDatabaseExporterParams.Validate if the designated // constraints aren't met. -type ChangeAzureDatabaseExporterResponseValidationError struct { +type ChangeAzureDatabaseExporterParamsValidationError struct { field string reason string cause error @@ -10838,24 +10411,24 @@ type ChangeAzureDatabaseExporterResponseValidationError struct { } // Field function returns field value. -func (e ChangeAzureDatabaseExporterResponseValidationError) Field() string { return e.field } +func (e ChangeAzureDatabaseExporterParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e ChangeAzureDatabaseExporterResponseValidationError) Reason() string { return e.reason } +func (e ChangeAzureDatabaseExporterParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e ChangeAzureDatabaseExporterResponseValidationError) Cause() error { return e.cause } +func (e ChangeAzureDatabaseExporterParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e ChangeAzureDatabaseExporterResponseValidationError) Key() bool { return e.key } +func (e ChangeAzureDatabaseExporterParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e ChangeAzureDatabaseExporterResponseValidationError) ErrorName() string { - return "ChangeAzureDatabaseExporterResponseValidationError" +func (e ChangeAzureDatabaseExporterParamsValidationError) ErrorName() string { + return "ChangeAzureDatabaseExporterParamsValidationError" } // Error satisfies the builtin error interface -func (e ChangeAzureDatabaseExporterResponseValidationError) Error() string { +func (e ChangeAzureDatabaseExporterParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -10867,14 +10440,14 @@ func (e ChangeAzureDatabaseExporterResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sChangeAzureDatabaseExporterResponse.%s: %s%s", + "invalid %sChangeAzureDatabaseExporterParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = ChangeAzureDatabaseExporterResponseValidationError{} +var _ error = ChangeAzureDatabaseExporterParamsValidationError{} var _ interface { Field() string @@ -10882,7 +10455,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = ChangeAzureDatabaseExporterResponseValidationError{} +} = ChangeAzureDatabaseExporterParamsValidationError{} // Validate checks the field values on RemoveAgentRequest with the rules // defined in the proto definition for this message. If any rules are diff --git a/api/inventory/v1/agents.proto b/api/inventory/v1/agents.proto index e32e8d21c0..09df439099 100644 --- a/api/inventory/v1/agents.proto +++ b/api/inventory/v1/agents.proto @@ -2,6 +2,7 @@ syntax = "proto3"; package inventory.v1; +import "common/common.proto"; import "google/api/annotations.proto"; import "inventory/v1/agent_status.proto"; import "inventory/v1/log_level.proto"; @@ -132,6 +133,8 @@ message MySQLdExporter { bool push_metrics_enabled = 13; // List of disabled collector names. repeated string disabled_collectors = 14; + // Actual table count at the moment of adding. + int32 table_count = 15; // // Status fields below. @@ -576,19 +579,12 @@ message AzureDatabaseExporter { // ChangeCommonAgentParams contains parameters that can be changed for all Agents. message ChangeCommonAgentParams { - // Enable this Agent. Can't be used with disabled. - bool enable = 1; - // Disable this Agent. Can't be used with enabled. - bool disable = 2; + // Enable this Agent. Agents are enabled by default when they get added. + optional bool enable = 1; // Replace all custom user-assigned labels. - map custom_labels = 3; - // Remove all custom user-assigned labels. - bool remove_custom_labels = 4; - // Enables push metrics with vmagent, can't be used with disable_push_metrics. - // Can't be used with agent version lower then 2.12 and unsupported agents. - bool enable_push_metrics = 5; - // Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics. - bool disable_push_metrics = 6; + optional common.StringMap custom_labels = 2; + // Enables push metrics with vmagent. + optional bool enable_push_metrics = 3; } // List @@ -666,25 +662,12 @@ message GetAgentLogsResponse { uint32 agent_config_log_lines_count = 2; } -// Add PMMAgent - -message AddPMMAgentParams { - // Node identifier where this instance runs. - string runs_on_node_id = 1 [(validate.rules).string.min_len = 1]; - // Custom user-assigned labels. - map custom_labels = 2; -} - // TODO Change PMMAgent? // TODO Add VMAgent? -// TODO Change VMAgent? - -// Add/Change NodeExporter - message AddAgentRequest { - oneof exporter { + oneof agent { AddPMMAgentParams pmm_agent = 1; AddNodeExporterParams node_exporter = 2; AddMySQLdExporterParams mysqld_exporter = 3; @@ -703,7 +686,7 @@ message AddAgentRequest { } message AddAgentResponse { - oneof exporter { + oneof agent { PMMAgent pmm_agent = 1; NodeExporter node_exporter = 2; MySQLdExporter mysqld_exporter = 3; @@ -719,10 +702,59 @@ message AddAgentResponse { QANPostgreSQLPgStatementsAgent qan_postgresql_pgstatements_agent = 13; QANPostgreSQLPgStatMonitorAgent qan_postgresql_pgstatmonitor_agent = 14; } - // Actual table count for SQL databases at the moment of adding. - int32 table_count = 20; } +message ChangeAgentRequest { + oneof agent { + // ChangePMMAgentParams pmm_agent = 1; + + ChangeNodeExporterParams node_exporter = 2; + ChangeMySQLdExporterParams mysqld_exporter = 3; + ChangeMongoDBExporterParams mongodb_exporter = 4; + ChangePostgresExporterParams postgres_exporter = 5; + ChangeProxySQLExporterParams proxysql_exporter = 6; + ChangeExternalExporterParams external_exporter = 7; + ChangeRDSExporterParams rds_exporter = 8; + ChangeAzureDatabaseExporterParams azure_database_exporter = 9; + ChangeQANMySQLPerfSchemaAgentParams qan_mysql_perfschema_agent = 10; + ChangeQANMySQLSlowlogAgentParams qan_mysql_slowlog_agent = 11; + ChangeQANMongoDBProfilerAgentParams qan_mongodb_profiler_agent = 12; + ChangeQANPostgreSQLPgStatementsAgentParams qan_postgresql_pgstatements_agent = 13; + ChangeQANPostgreSQLPgStatMonitorAgentParams qan_postgresql_pgstatmonitor_agent = 14; + } +} + +message ChangeAgentResponse { + oneof agent { + // PMMAgent pmm_agent = 1; + + NodeExporter node_exporter = 2; + MySQLdExporter mysqld_exporter = 3; + MongoDBExporter mongodb_exporter = 4; + PostgresExporter postgres_exporter = 5; + ProxySQLExporter proxysql_exporter = 6; + ExternalExporter external_exporter = 7; + RDSExporter rds_exporter = 8; + AzureDatabaseExporter azure_database_exporter = 9; + QANMySQLPerfSchemaAgent qan_mysql_perfschema_agent = 10; + QANMySQLSlowlogAgent qan_mysql_slowlog_agent = 11; + QANMongoDBProfilerAgent qan_mongodb_profiler_agent = 12; + QANPostgreSQLPgStatementsAgent qan_postgresql_pgstatements_agent = 13; + QANPostgreSQLPgStatMonitorAgent qan_postgresql_pgstatmonitor_agent = 14; + } +} + +// Add PMMAgent + +message AddPMMAgentParams { + // Node identifier where this instance runs. + string runs_on_node_id = 1 [(validate.rules).string.min_len = 1]; + // Custom user-assigned labels. + map custom_labels = 2; +} + +// Add/Change NodeExporter + message AddNodeExporterParams { // The pmm-agent identifier which runs this instance. string pmm_agent_id = 1 [(validate.rules).string.min_len = 1]; @@ -738,15 +770,11 @@ message AddNodeExporterParams { bool expose_exporter = 6; } -message ChangeNodeExporterRequest { +message ChangeNodeExporterParams { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; } -message ChangeNodeExporterResponse { - NodeExporter node_exporter = 1; -} - // Add/Change MySQLdExporter message AddMySQLdExporterParams { @@ -788,15 +816,11 @@ message AddMySQLdExporterParams { bool expose_exporter = 17; } -message ChangeMySQLdExporterRequest { +message ChangeMySQLdExporterParams { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; } -message ChangeMySQLdExporterResponse { - MySQLdExporter mysqld_exporter = 1; -} - // Add/Change MongoDBExporter message AddMongoDBExporterParams { @@ -845,15 +869,11 @@ message AddMongoDBExporterParams { bool expose_exporter = 20; } -message ChangeMongoDBExporterRequest { +message ChangeMongoDBExporterParams { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; } -message ChangeMongoDBExporterResponse { - MongoDBExporter mongodb_exporter = 1; -} - // Add/Change PostgresExporter message AddPostgresExporterParams { @@ -893,15 +913,11 @@ message AddPostgresExporterParams { bool expose_exporter = 17; } -message ChangePostgresExporterRequest { +message ChangePostgresExporterParams { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; } -message ChangePostgresExporterResponse { - PostgresExporter postgres_exporter = 1; -} - // Add/Change ProxySQLExporter message AddProxySQLExporterParams { @@ -933,15 +949,11 @@ message AddProxySQLExporterParams { bool expose_exporter = 13; } -message ChangeProxySQLExporterRequest { +message ChangeProxySQLExporterParams { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; } -message ChangeProxySQLExporterResponse { - ProxySQLExporter proxysql_exporter = 1; -} - // Add/Change QANMySQLPerfSchemaAgent message AddQANMySQLPerfSchemaAgentParams { @@ -977,15 +989,11 @@ message AddQANMySQLPerfSchemaAgentParams { LogLevel log_level = 15; } -message ChangeQANMySQLPerfSchemaAgentRequest { +message ChangeQANMySQLPerfSchemaAgentParams { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; } -message ChangeQANMySQLPerfSchemaAgentResponse { - QANMySQLPerfSchemaAgent qan_mysql_perfschema_agent = 1; -} - // Add/Change QANMySQLSlowlogAgent message AddQANMySQLSlowlogAgentParams { @@ -1024,15 +1032,11 @@ message AddQANMySQLSlowlogAgentParams { LogLevel log_level = 16; } -message ChangeQANMySQLSlowlogAgentRequest { +message ChangeQANMySQLSlowlogAgentParams { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; } -message ChangeQANMySQLSlowlogAgentResponse { - QANMySQLSlowlogAgent qan_mysql_slowlog_agent = 1; -} - // Add/Change QANMongoDBProfilerAgent message AddQANMongoDBProfilerAgentParams { @@ -1070,15 +1074,11 @@ message AddQANMongoDBProfilerAgentParams { LogLevel log_level = 15; } -message ChangeQANMongoDBProfilerAgentRequest { +message ChangeQANMongoDBProfilerAgentParams { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; } -message ChangeQANMongoDBProfilerAgentResponse { - QANMongoDBProfilerAgent qan_mongodb_profiler_agent = 1; -} - // Add/Change QANPostgreSQLPgStatementsAgent message AddQANPostgreSQLPgStatementsAgentParams { @@ -1112,15 +1112,11 @@ message AddQANPostgreSQLPgStatementsAgentParams { LogLevel log_level = 14; } -message ChangeQANPostgreSQLPgStatementsAgentRequest { +message ChangeQANPostgreSQLPgStatementsAgentParams { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; } -message ChangeQANPostgreSQLPgStatementsAgentResponse { - QANPostgreSQLPgStatementsAgent qan_postgresql_pgstatements_agent = 1; -} - // Add/Change QANPostgreSQLPgStatMonitorAgent message AddQANPostgreSQLPgStatMonitorAgentParams { @@ -1156,15 +1152,11 @@ message AddQANPostgreSQLPgStatMonitorAgentParams { LogLevel log_level = 15; } -message ChangeQANPostgreSQLPgStatMonitorAgentRequest { +message ChangeQANPostgreSQLPgStatMonitorAgentParams { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; } -message ChangeQANPostgreSQLPgStatMonitorAgentResponse { - QANPostgreSQLPgStatMonitorAgent qan_postgresql_pgstatmonitor_agent = 1; -} - // Add/Change RDSExporter message AddRDSExporterParams { @@ -1190,15 +1182,11 @@ message AddRDSExporterParams { LogLevel log_level = 10; } -message ChangeRDSExporterRequest { +message ChangeRDSExporterParams { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; } -message ChangeRDSExporterResponse { - RDSExporter rds_exporter = 1; -} - // Add/Change ExternalExporter message AddExternalExporterParams { @@ -1225,15 +1213,11 @@ message AddExternalExporterParams { bool push_metrics = 11; } -message ChangeExternalExporterRequest { +message ChangeExternalExporterParams { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; } -message ChangeExternalExporterResponse { - ExternalExporter external_exporter = 1; -} - // Add/Change AzureDatabaseExporter message AddAzureDatabaseExporterParams { @@ -1263,15 +1247,11 @@ message AddAzureDatabaseExporterParams { LogLevel log_level = 12; } -message ChangeAzureDatabaseExporterRequest { +message ChangeAzureDatabaseExporterParams { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; } -message ChangeAzureDatabaseExporterResponse { - AzureDatabaseExporter azure_database_exporter = 1; -} - // Remove message RemoveAgentRequest { @@ -1326,152 +1306,21 @@ service AgentsService { }; option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { summary: "Add an Agent to Inventory" - description: "Adds an Agent from Inventory." + description: "Adds an Agent to Inventory. Only one top-level parameter should be passed." }; } - // ChangeNodeExporter changes node_exporter Agent. - rpc ChangeNodeExporter(ChangeNodeExporterRequest) returns (ChangeNodeExporterResponse) { + // ChangeAgent changes any type of Agent record in Inventory. + rpc ChangeAgent(ChangeAgentRequest) returns (ChangeAgentResponse) { option (google.api.http) = { - post: "/v1/inventory/Agents/ChangeNodeExporter" + post: "/v1/inventory/Agents/Change" body: "*" }; option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Change Node Exporter" - description: "Changes node_exporter Agent." - }; - } - // ChangeMySQLdExporter changes mysqld_exporter Agent. - rpc ChangeMySQLdExporter(ChangeMySQLdExporterRequest) returns (ChangeMySQLdExporterResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/ChangeMySQLdExporter" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Change mysqld Exporter" - description: "Changes mysqld_exporter Agent." - }; - } - // ChangeMongoDBExporter changes mongodb_exporter Agent. - rpc ChangeMongoDBExporter(ChangeMongoDBExporterRequest) returns (ChangeMongoDBExporterResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/ChangeMongoDBExporter" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Change MongoDB Exporter" - description: "Changes mongodb_exporter Agent." - }; - } - // ChangePostgresExporter changes postgres_exporter Agent. - rpc ChangePostgresExporter(ChangePostgresExporterRequest) returns (ChangePostgresExporterResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/ChangePostgresExporter" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Change Postgres Exporter" - description: "Changes postgres_exporter Agent." - }; - } - // ChangeProxySQLExporter changes proxysql_exporter Agent. - rpc ChangeProxySQLExporter(ChangeProxySQLExporterRequest) returns (ChangeProxySQLExporterResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/ChangeProxySQLExporter" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Change ProxySQL Exporter" - description: "Changes proxysql_exporter Agent." - }; - } - // ChangeQANMySQLPerfSchemaAgent changes QAN MySQL PerfSchema Agent. - rpc ChangeQANMySQLPerfSchemaAgent(ChangeQANMySQLPerfSchemaAgentRequest) returns (ChangeQANMySQLPerfSchemaAgentResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/ChangeQANMySQLPerfSchemaAgent" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Change 'QAN MySQL PerfSchema' Agent" - description: "Changes 'Query Analytics MySQL PerfSchema' Agent." - }; - } - // ChangeQANMySQLSlowlogAgent changes QAN MySQL Slowlog Agent. - rpc ChangeQANMySQLSlowlogAgent(ChangeQANMySQLSlowlogAgentRequest) returns (ChangeQANMySQLSlowlogAgentResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/ChangeQANMySQLSlowlogAgent" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Change 'QAN MySQL Slowlog' Agent" - description: "Changes 'Query Analytics MySQL Slowlog' Agent." - }; - } - // ChangeQANMongoDBProfilerAgent changes QAN MongoDB Profiler Agent. - rpc ChangeQANMongoDBProfilerAgent(ChangeQANMongoDBProfilerAgentRequest) returns (ChangeQANMongoDBProfilerAgentResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/ChangeQANMongoDBProfilerAgent" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Change 'QAN MongoDB Profiler' Agent" - description: "Changes 'Query Analytics MongoDB Profiler' Agent." - }; - } - // ChangeQANPostgreSQLPgStatementsAgent changes QAN PostgreSQL PgStat Statements Agent. - rpc ChangeQANPostgreSQLPgStatementsAgent(ChangeQANPostgreSQLPgStatementsAgentRequest) returns (ChangeQANPostgreSQLPgStatementsAgentResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/ChangeQANPostgreSQLPgStatementsAgent" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Change 'QAN PostgreSQL pg_stat_statements' Agent" - description: "Changes 'Query Analytics PostgreSQL pg_stat_statements' Agent." - }; - } - // ChangeQANPostgreSQLPgStatMonitorAgent changes QAN PostgreSQL PgStat Monitor Agent. - rpc ChangeQANPostgreSQLPgStatMonitorAgent(ChangeQANPostgreSQLPgStatMonitorAgentRequest) returns (ChangeQANPostgreSQLPgStatMonitorAgentResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/ChangeQANPostgreSQLPgStatMonitorAgent" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Change 'QAN PostgreSQL pg_stat_monitor' Agent" - description: "Changes 'Query Analytics PostgreSQL pg_stat_monitor' Agent." - }; - } - // ChangeRDSExporter changes rds_exporter Agent. - rpc ChangeRDSExporter(ChangeRDSExporterRequest) returns (ChangeRDSExporterResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/ChangeRDSExporter" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Change RDS Exporter" - description: "Changes rds_exporter Agent." - }; - } - // ChangeExternalExporter changes external_exporter Agent. - rpc ChangeExternalExporter(ChangeExternalExporterRequest) returns (ChangeExternalExporterResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/ChangeExternalExporter" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Change External Exporter" - description: "Changes external_exporter Agent." - }; - } - // ChangeAzureDatabaseExporter changes azure_database_exporter Agent. - rpc ChangeAzureDatabaseExporter(ChangeAzureDatabaseExporterRequest) returns (ChangeAzureDatabaseExporterResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/ChangeAzureDatabaseExporter" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Change Azure Database Exporter" - description: "Changes azure_database_exporter Agent." + summary: "Update an Agent in Inventory" + description: "Updates an Agent in Inventory. Only one top-level parameter should be passed." }; } + // RemoveAgent removes an Agent. rpc RemoveAgent(RemoveAgentRequest) returns (RemoveAgentResponse) { option (google.api.http) = { diff --git a/api/inventory/v1/agents_grpc.pb.go b/api/inventory/v1/agents_grpc.pb.go index 2745de9cde..cedfd7ed9c 100644 --- a/api/inventory/v1/agents_grpc.pb.go +++ b/api/inventory/v1/agents_grpc.pb.go @@ -20,24 +20,12 @@ import ( const _ = grpc.SupportPackageIsVersion7 const ( - AgentsService_ListAgents_FullMethodName = "/inventory.v1.AgentsService/ListAgents" - AgentsService_GetAgent_FullMethodName = "/inventory.v1.AgentsService/GetAgent" - AgentsService_GetAgentLogs_FullMethodName = "/inventory.v1.AgentsService/GetAgentLogs" - AgentsService_AddAgent_FullMethodName = "/inventory.v1.AgentsService/AddAgent" - AgentsService_ChangeNodeExporter_FullMethodName = "/inventory.v1.AgentsService/ChangeNodeExporter" - AgentsService_ChangeMySQLdExporter_FullMethodName = "/inventory.v1.AgentsService/ChangeMySQLdExporter" - AgentsService_ChangeMongoDBExporter_FullMethodName = "/inventory.v1.AgentsService/ChangeMongoDBExporter" - AgentsService_ChangePostgresExporter_FullMethodName = "/inventory.v1.AgentsService/ChangePostgresExporter" - AgentsService_ChangeProxySQLExporter_FullMethodName = "/inventory.v1.AgentsService/ChangeProxySQLExporter" - AgentsService_ChangeQANMySQLPerfSchemaAgent_FullMethodName = "/inventory.v1.AgentsService/ChangeQANMySQLPerfSchemaAgent" - AgentsService_ChangeQANMySQLSlowlogAgent_FullMethodName = "/inventory.v1.AgentsService/ChangeQANMySQLSlowlogAgent" - AgentsService_ChangeQANMongoDBProfilerAgent_FullMethodName = "/inventory.v1.AgentsService/ChangeQANMongoDBProfilerAgent" - AgentsService_ChangeQANPostgreSQLPgStatementsAgent_FullMethodName = "/inventory.v1.AgentsService/ChangeQANPostgreSQLPgStatementsAgent" - AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_FullMethodName = "/inventory.v1.AgentsService/ChangeQANPostgreSQLPgStatMonitorAgent" - AgentsService_ChangeRDSExporter_FullMethodName = "/inventory.v1.AgentsService/ChangeRDSExporter" - AgentsService_ChangeExternalExporter_FullMethodName = "/inventory.v1.AgentsService/ChangeExternalExporter" - AgentsService_ChangeAzureDatabaseExporter_FullMethodName = "/inventory.v1.AgentsService/ChangeAzureDatabaseExporter" - AgentsService_RemoveAgent_FullMethodName = "/inventory.v1.AgentsService/RemoveAgent" + AgentsService_ListAgents_FullMethodName = "/inventory.v1.AgentsService/ListAgents" + AgentsService_GetAgent_FullMethodName = "/inventory.v1.AgentsService/GetAgent" + AgentsService_GetAgentLogs_FullMethodName = "/inventory.v1.AgentsService/GetAgentLogs" + AgentsService_AddAgent_FullMethodName = "/inventory.v1.AgentsService/AddAgent" + AgentsService_ChangeAgent_FullMethodName = "/inventory.v1.AgentsService/ChangeAgent" + AgentsService_RemoveAgent_FullMethodName = "/inventory.v1.AgentsService/RemoveAgent" ) // AgentsServiceClient is the client API for AgentsService service. @@ -52,32 +40,8 @@ type AgentsServiceClient interface { GetAgentLogs(ctx context.Context, in *GetAgentLogsRequest, opts ...grpc.CallOption) (*GetAgentLogsResponse, error) // AddAgent adds any type of Agent to Inventory. AddAgent(ctx context.Context, in *AddAgentRequest, opts ...grpc.CallOption) (*AddAgentResponse, error) - // ChangeNodeExporter changes node_exporter Agent. - ChangeNodeExporter(ctx context.Context, in *ChangeNodeExporterRequest, opts ...grpc.CallOption) (*ChangeNodeExporterResponse, error) - // ChangeMySQLdExporter changes mysqld_exporter Agent. - ChangeMySQLdExporter(ctx context.Context, in *ChangeMySQLdExporterRequest, opts ...grpc.CallOption) (*ChangeMySQLdExporterResponse, error) - // ChangeMongoDBExporter changes mongodb_exporter Agent. - ChangeMongoDBExporter(ctx context.Context, in *ChangeMongoDBExporterRequest, opts ...grpc.CallOption) (*ChangeMongoDBExporterResponse, error) - // ChangePostgresExporter changes postgres_exporter Agent. - ChangePostgresExporter(ctx context.Context, in *ChangePostgresExporterRequest, opts ...grpc.CallOption) (*ChangePostgresExporterResponse, error) - // ChangeProxySQLExporter changes proxysql_exporter Agent. - ChangeProxySQLExporter(ctx context.Context, in *ChangeProxySQLExporterRequest, opts ...grpc.CallOption) (*ChangeProxySQLExporterResponse, error) - // ChangeQANMySQLPerfSchemaAgent changes QAN MySQL PerfSchema Agent. - ChangeQANMySQLPerfSchemaAgent(ctx context.Context, in *ChangeQANMySQLPerfSchemaAgentRequest, opts ...grpc.CallOption) (*ChangeQANMySQLPerfSchemaAgentResponse, error) - // ChangeQANMySQLSlowlogAgent changes QAN MySQL Slowlog Agent. - ChangeQANMySQLSlowlogAgent(ctx context.Context, in *ChangeQANMySQLSlowlogAgentRequest, opts ...grpc.CallOption) (*ChangeQANMySQLSlowlogAgentResponse, error) - // ChangeQANMongoDBProfilerAgent changes QAN MongoDB Profiler Agent. - ChangeQANMongoDBProfilerAgent(ctx context.Context, in *ChangeQANMongoDBProfilerAgentRequest, opts ...grpc.CallOption) (*ChangeQANMongoDBProfilerAgentResponse, error) - // ChangeQANPostgreSQLPgStatementsAgent changes QAN PostgreSQL PgStat Statements Agent. - ChangeQANPostgreSQLPgStatementsAgent(ctx context.Context, in *ChangeQANPostgreSQLPgStatementsAgentRequest, opts ...grpc.CallOption) (*ChangeQANPostgreSQLPgStatementsAgentResponse, error) - // ChangeQANPostgreSQLPgStatMonitorAgent changes QAN PostgreSQL PgStat Monitor Agent. - ChangeQANPostgreSQLPgStatMonitorAgent(ctx context.Context, in *ChangeQANPostgreSQLPgStatMonitorAgentRequest, opts ...grpc.CallOption) (*ChangeQANPostgreSQLPgStatMonitorAgentResponse, error) - // ChangeRDSExporter changes rds_exporter Agent. - ChangeRDSExporter(ctx context.Context, in *ChangeRDSExporterRequest, opts ...grpc.CallOption) (*ChangeRDSExporterResponse, error) - // ChangeExternalExporter changes external_exporter Agent. - ChangeExternalExporter(ctx context.Context, in *ChangeExternalExporterRequest, opts ...grpc.CallOption) (*ChangeExternalExporterResponse, error) - // ChangeAzureDatabaseExporter changes azure_database_exporter Agent. - ChangeAzureDatabaseExporter(ctx context.Context, in *ChangeAzureDatabaseExporterRequest, opts ...grpc.CallOption) (*ChangeAzureDatabaseExporterResponse, error) + // ChangeAgent changes any type of Agent record in Inventory. + ChangeAgent(ctx context.Context, in *ChangeAgentRequest, opts ...grpc.CallOption) (*ChangeAgentResponse, error) // RemoveAgent removes an Agent. RemoveAgent(ctx context.Context, in *RemoveAgentRequest, opts ...grpc.CallOption) (*RemoveAgentResponse, error) } @@ -126,117 +90,9 @@ func (c *agentsServiceClient) AddAgent(ctx context.Context, in *AddAgentRequest, return out, nil } -func (c *agentsServiceClient) ChangeNodeExporter(ctx context.Context, in *ChangeNodeExporterRequest, opts ...grpc.CallOption) (*ChangeNodeExporterResponse, error) { - out := new(ChangeNodeExporterResponse) - err := c.cc.Invoke(ctx, AgentsService_ChangeNodeExporter_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *agentsServiceClient) ChangeMySQLdExporter(ctx context.Context, in *ChangeMySQLdExporterRequest, opts ...grpc.CallOption) (*ChangeMySQLdExporterResponse, error) { - out := new(ChangeMySQLdExporterResponse) - err := c.cc.Invoke(ctx, AgentsService_ChangeMySQLdExporter_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *agentsServiceClient) ChangeMongoDBExporter(ctx context.Context, in *ChangeMongoDBExporterRequest, opts ...grpc.CallOption) (*ChangeMongoDBExporterResponse, error) { - out := new(ChangeMongoDBExporterResponse) - err := c.cc.Invoke(ctx, AgentsService_ChangeMongoDBExporter_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *agentsServiceClient) ChangePostgresExporter(ctx context.Context, in *ChangePostgresExporterRequest, opts ...grpc.CallOption) (*ChangePostgresExporterResponse, error) { - out := new(ChangePostgresExporterResponse) - err := c.cc.Invoke(ctx, AgentsService_ChangePostgresExporter_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *agentsServiceClient) ChangeProxySQLExporter(ctx context.Context, in *ChangeProxySQLExporterRequest, opts ...grpc.CallOption) (*ChangeProxySQLExporterResponse, error) { - out := new(ChangeProxySQLExporterResponse) - err := c.cc.Invoke(ctx, AgentsService_ChangeProxySQLExporter_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *agentsServiceClient) ChangeQANMySQLPerfSchemaAgent(ctx context.Context, in *ChangeQANMySQLPerfSchemaAgentRequest, opts ...grpc.CallOption) (*ChangeQANMySQLPerfSchemaAgentResponse, error) { - out := new(ChangeQANMySQLPerfSchemaAgentResponse) - err := c.cc.Invoke(ctx, AgentsService_ChangeQANMySQLPerfSchemaAgent_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *agentsServiceClient) ChangeQANMySQLSlowlogAgent(ctx context.Context, in *ChangeQANMySQLSlowlogAgentRequest, opts ...grpc.CallOption) (*ChangeQANMySQLSlowlogAgentResponse, error) { - out := new(ChangeQANMySQLSlowlogAgentResponse) - err := c.cc.Invoke(ctx, AgentsService_ChangeQANMySQLSlowlogAgent_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *agentsServiceClient) ChangeQANMongoDBProfilerAgent(ctx context.Context, in *ChangeQANMongoDBProfilerAgentRequest, opts ...grpc.CallOption) (*ChangeQANMongoDBProfilerAgentResponse, error) { - out := new(ChangeQANMongoDBProfilerAgentResponse) - err := c.cc.Invoke(ctx, AgentsService_ChangeQANMongoDBProfilerAgent_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *agentsServiceClient) ChangeQANPostgreSQLPgStatementsAgent(ctx context.Context, in *ChangeQANPostgreSQLPgStatementsAgentRequest, opts ...grpc.CallOption) (*ChangeQANPostgreSQLPgStatementsAgentResponse, error) { - out := new(ChangeQANPostgreSQLPgStatementsAgentResponse) - err := c.cc.Invoke(ctx, AgentsService_ChangeQANPostgreSQLPgStatementsAgent_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *agentsServiceClient) ChangeQANPostgreSQLPgStatMonitorAgent(ctx context.Context, in *ChangeQANPostgreSQLPgStatMonitorAgentRequest, opts ...grpc.CallOption) (*ChangeQANPostgreSQLPgStatMonitorAgentResponse, error) { - out := new(ChangeQANPostgreSQLPgStatMonitorAgentResponse) - err := c.cc.Invoke(ctx, AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *agentsServiceClient) ChangeRDSExporter(ctx context.Context, in *ChangeRDSExporterRequest, opts ...grpc.CallOption) (*ChangeRDSExporterResponse, error) { - out := new(ChangeRDSExporterResponse) - err := c.cc.Invoke(ctx, AgentsService_ChangeRDSExporter_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *agentsServiceClient) ChangeExternalExporter(ctx context.Context, in *ChangeExternalExporterRequest, opts ...grpc.CallOption) (*ChangeExternalExporterResponse, error) { - out := new(ChangeExternalExporterResponse) - err := c.cc.Invoke(ctx, AgentsService_ChangeExternalExporter_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *agentsServiceClient) ChangeAzureDatabaseExporter(ctx context.Context, in *ChangeAzureDatabaseExporterRequest, opts ...grpc.CallOption) (*ChangeAzureDatabaseExporterResponse, error) { - out := new(ChangeAzureDatabaseExporterResponse) - err := c.cc.Invoke(ctx, AgentsService_ChangeAzureDatabaseExporter_FullMethodName, in, out, opts...) +func (c *agentsServiceClient) ChangeAgent(ctx context.Context, in *ChangeAgentRequest, opts ...grpc.CallOption) (*ChangeAgentResponse, error) { + out := new(ChangeAgentResponse) + err := c.cc.Invoke(ctx, AgentsService_ChangeAgent_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -264,32 +120,8 @@ type AgentsServiceServer interface { GetAgentLogs(context.Context, *GetAgentLogsRequest) (*GetAgentLogsResponse, error) // AddAgent adds any type of Agent to Inventory. AddAgent(context.Context, *AddAgentRequest) (*AddAgentResponse, error) - // ChangeNodeExporter changes node_exporter Agent. - ChangeNodeExporter(context.Context, *ChangeNodeExporterRequest) (*ChangeNodeExporterResponse, error) - // ChangeMySQLdExporter changes mysqld_exporter Agent. - ChangeMySQLdExporter(context.Context, *ChangeMySQLdExporterRequest) (*ChangeMySQLdExporterResponse, error) - // ChangeMongoDBExporter changes mongodb_exporter Agent. - ChangeMongoDBExporter(context.Context, *ChangeMongoDBExporterRequest) (*ChangeMongoDBExporterResponse, error) - // ChangePostgresExporter changes postgres_exporter Agent. - ChangePostgresExporter(context.Context, *ChangePostgresExporterRequest) (*ChangePostgresExporterResponse, error) - // ChangeProxySQLExporter changes proxysql_exporter Agent. - ChangeProxySQLExporter(context.Context, *ChangeProxySQLExporterRequest) (*ChangeProxySQLExporterResponse, error) - // ChangeQANMySQLPerfSchemaAgent changes QAN MySQL PerfSchema Agent. - ChangeQANMySQLPerfSchemaAgent(context.Context, *ChangeQANMySQLPerfSchemaAgentRequest) (*ChangeQANMySQLPerfSchemaAgentResponse, error) - // ChangeQANMySQLSlowlogAgent changes QAN MySQL Slowlog Agent. - ChangeQANMySQLSlowlogAgent(context.Context, *ChangeQANMySQLSlowlogAgentRequest) (*ChangeQANMySQLSlowlogAgentResponse, error) - // ChangeQANMongoDBProfilerAgent changes QAN MongoDB Profiler Agent. - ChangeQANMongoDBProfilerAgent(context.Context, *ChangeQANMongoDBProfilerAgentRequest) (*ChangeQANMongoDBProfilerAgentResponse, error) - // ChangeQANPostgreSQLPgStatementsAgent changes QAN PostgreSQL PgStat Statements Agent. - ChangeQANPostgreSQLPgStatementsAgent(context.Context, *ChangeQANPostgreSQLPgStatementsAgentRequest) (*ChangeQANPostgreSQLPgStatementsAgentResponse, error) - // ChangeQANPostgreSQLPgStatMonitorAgent changes QAN PostgreSQL PgStat Monitor Agent. - ChangeQANPostgreSQLPgStatMonitorAgent(context.Context, *ChangeQANPostgreSQLPgStatMonitorAgentRequest) (*ChangeQANPostgreSQLPgStatMonitorAgentResponse, error) - // ChangeRDSExporter changes rds_exporter Agent. - ChangeRDSExporter(context.Context, *ChangeRDSExporterRequest) (*ChangeRDSExporterResponse, error) - // ChangeExternalExporter changes external_exporter Agent. - ChangeExternalExporter(context.Context, *ChangeExternalExporterRequest) (*ChangeExternalExporterResponse, error) - // ChangeAzureDatabaseExporter changes azure_database_exporter Agent. - ChangeAzureDatabaseExporter(context.Context, *ChangeAzureDatabaseExporterRequest) (*ChangeAzureDatabaseExporterResponse, error) + // ChangeAgent changes any type of Agent record in Inventory. + ChangeAgent(context.Context, *ChangeAgentRequest) (*ChangeAgentResponse, error) // RemoveAgent removes an Agent. RemoveAgent(context.Context, *RemoveAgentRequest) (*RemoveAgentResponse, error) mustEmbedUnimplementedAgentsServiceServer() @@ -314,56 +146,8 @@ func (UnimplementedAgentsServiceServer) AddAgent(context.Context, *AddAgentReque return nil, status.Errorf(codes.Unimplemented, "method AddAgent not implemented") } -func (UnimplementedAgentsServiceServer) ChangeNodeExporter(context.Context, *ChangeNodeExporterRequest) (*ChangeNodeExporterResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ChangeNodeExporter not implemented") -} - -func (UnimplementedAgentsServiceServer) ChangeMySQLdExporter(context.Context, *ChangeMySQLdExporterRequest) (*ChangeMySQLdExporterResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ChangeMySQLdExporter not implemented") -} - -func (UnimplementedAgentsServiceServer) ChangeMongoDBExporter(context.Context, *ChangeMongoDBExporterRequest) (*ChangeMongoDBExporterResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ChangeMongoDBExporter not implemented") -} - -func (UnimplementedAgentsServiceServer) ChangePostgresExporter(context.Context, *ChangePostgresExporterRequest) (*ChangePostgresExporterResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ChangePostgresExporter not implemented") -} - -func (UnimplementedAgentsServiceServer) ChangeProxySQLExporter(context.Context, *ChangeProxySQLExporterRequest) (*ChangeProxySQLExporterResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ChangeProxySQLExporter not implemented") -} - -func (UnimplementedAgentsServiceServer) ChangeQANMySQLPerfSchemaAgent(context.Context, *ChangeQANMySQLPerfSchemaAgentRequest) (*ChangeQANMySQLPerfSchemaAgentResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ChangeQANMySQLPerfSchemaAgent not implemented") -} - -func (UnimplementedAgentsServiceServer) ChangeQANMySQLSlowlogAgent(context.Context, *ChangeQANMySQLSlowlogAgentRequest) (*ChangeQANMySQLSlowlogAgentResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ChangeQANMySQLSlowlogAgent not implemented") -} - -func (UnimplementedAgentsServiceServer) ChangeQANMongoDBProfilerAgent(context.Context, *ChangeQANMongoDBProfilerAgentRequest) (*ChangeQANMongoDBProfilerAgentResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ChangeQANMongoDBProfilerAgent not implemented") -} - -func (UnimplementedAgentsServiceServer) ChangeQANPostgreSQLPgStatementsAgent(context.Context, *ChangeQANPostgreSQLPgStatementsAgentRequest) (*ChangeQANPostgreSQLPgStatementsAgentResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ChangeQANPostgreSQLPgStatementsAgent not implemented") -} - -func (UnimplementedAgentsServiceServer) ChangeQANPostgreSQLPgStatMonitorAgent(context.Context, *ChangeQANPostgreSQLPgStatMonitorAgentRequest) (*ChangeQANPostgreSQLPgStatMonitorAgentResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ChangeQANPostgreSQLPgStatMonitorAgent not implemented") -} - -func (UnimplementedAgentsServiceServer) ChangeRDSExporter(context.Context, *ChangeRDSExporterRequest) (*ChangeRDSExporterResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ChangeRDSExporter not implemented") -} - -func (UnimplementedAgentsServiceServer) ChangeExternalExporter(context.Context, *ChangeExternalExporterRequest) (*ChangeExternalExporterResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ChangeExternalExporter not implemented") -} - -func (UnimplementedAgentsServiceServer) ChangeAzureDatabaseExporter(context.Context, *ChangeAzureDatabaseExporterRequest) (*ChangeAzureDatabaseExporterResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ChangeAzureDatabaseExporter not implemented") +func (UnimplementedAgentsServiceServer) ChangeAgent(context.Context, *ChangeAgentRequest) (*ChangeAgentResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ChangeAgent not implemented") } func (UnimplementedAgentsServiceServer) RemoveAgent(context.Context, *RemoveAgentRequest) (*RemoveAgentResponse, error) { @@ -454,236 +238,20 @@ func _AgentsService_AddAgent_Handler(srv interface{}, ctx context.Context, dec f return interceptor(ctx, in, info, handler) } -func _AgentsService_ChangeNodeExporter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ChangeNodeExporterRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).ChangeNodeExporter(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_ChangeNodeExporter_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).ChangeNodeExporter(ctx, req.(*ChangeNodeExporterRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _AgentsService_ChangeMySQLdExporter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ChangeMySQLdExporterRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).ChangeMySQLdExporter(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_ChangeMySQLdExporter_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).ChangeMySQLdExporter(ctx, req.(*ChangeMySQLdExporterRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _AgentsService_ChangeMongoDBExporter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ChangeMongoDBExporterRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).ChangeMongoDBExporter(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_ChangeMongoDBExporter_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).ChangeMongoDBExporter(ctx, req.(*ChangeMongoDBExporterRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _AgentsService_ChangePostgresExporter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ChangePostgresExporterRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).ChangePostgresExporter(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_ChangePostgresExporter_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).ChangePostgresExporter(ctx, req.(*ChangePostgresExporterRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _AgentsService_ChangeProxySQLExporter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ChangeProxySQLExporterRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).ChangeProxySQLExporter(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_ChangeProxySQLExporter_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).ChangeProxySQLExporter(ctx, req.(*ChangeProxySQLExporterRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _AgentsService_ChangeQANMySQLPerfSchemaAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ChangeQANMySQLPerfSchemaAgentRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).ChangeQANMySQLPerfSchemaAgent(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_ChangeQANMySQLPerfSchemaAgent_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).ChangeQANMySQLPerfSchemaAgent(ctx, req.(*ChangeQANMySQLPerfSchemaAgentRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _AgentsService_ChangeQANMySQLSlowlogAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ChangeQANMySQLSlowlogAgentRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).ChangeQANMySQLSlowlogAgent(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_ChangeQANMySQLSlowlogAgent_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).ChangeQANMySQLSlowlogAgent(ctx, req.(*ChangeQANMySQLSlowlogAgentRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _AgentsService_ChangeQANMongoDBProfilerAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ChangeQANMongoDBProfilerAgentRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).ChangeQANMongoDBProfilerAgent(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_ChangeQANMongoDBProfilerAgent_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).ChangeQANMongoDBProfilerAgent(ctx, req.(*ChangeQANMongoDBProfilerAgentRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _AgentsService_ChangeQANPostgreSQLPgStatementsAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ChangeQANPostgreSQLPgStatementsAgentRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).ChangeQANPostgreSQLPgStatementsAgent(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_ChangeQANPostgreSQLPgStatementsAgent_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).ChangeQANPostgreSQLPgStatementsAgent(ctx, req.(*ChangeQANPostgreSQLPgStatementsAgentRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ChangeQANPostgreSQLPgStatMonitorAgentRequest) +func _AgentsService_ChangeAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ChangeAgentRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(AgentsServiceServer).ChangeQANPostgreSQLPgStatMonitorAgent(ctx, in) + return srv.(AgentsServiceServer).ChangeAgent(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_FullMethodName, + FullMethod: AgentsService_ChangeAgent_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).ChangeQANPostgreSQLPgStatMonitorAgent(ctx, req.(*ChangeQANPostgreSQLPgStatMonitorAgentRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _AgentsService_ChangeRDSExporter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ChangeRDSExporterRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).ChangeRDSExporter(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_ChangeRDSExporter_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).ChangeRDSExporter(ctx, req.(*ChangeRDSExporterRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _AgentsService_ChangeExternalExporter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ChangeExternalExporterRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).ChangeExternalExporter(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_ChangeExternalExporter_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).ChangeExternalExporter(ctx, req.(*ChangeExternalExporterRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _AgentsService_ChangeAzureDatabaseExporter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ChangeAzureDatabaseExporterRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).ChangeAzureDatabaseExporter(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_ChangeAzureDatabaseExporter_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).ChangeAzureDatabaseExporter(ctx, req.(*ChangeAzureDatabaseExporterRequest)) + return srv.(AgentsServiceServer).ChangeAgent(ctx, req.(*ChangeAgentRequest)) } return interceptor(ctx, in, info, handler) } @@ -730,56 +298,8 @@ var AgentsService_ServiceDesc = grpc.ServiceDesc{ Handler: _AgentsService_AddAgent_Handler, }, { - MethodName: "ChangeNodeExporter", - Handler: _AgentsService_ChangeNodeExporter_Handler, - }, - { - MethodName: "ChangeMySQLdExporter", - Handler: _AgentsService_ChangeMySQLdExporter_Handler, - }, - { - MethodName: "ChangeMongoDBExporter", - Handler: _AgentsService_ChangeMongoDBExporter_Handler, - }, - { - MethodName: "ChangePostgresExporter", - Handler: _AgentsService_ChangePostgresExporter_Handler, - }, - { - MethodName: "ChangeProxySQLExporter", - Handler: _AgentsService_ChangeProxySQLExporter_Handler, - }, - { - MethodName: "ChangeQANMySQLPerfSchemaAgent", - Handler: _AgentsService_ChangeQANMySQLPerfSchemaAgent_Handler, - }, - { - MethodName: "ChangeQANMySQLSlowlogAgent", - Handler: _AgentsService_ChangeQANMySQLSlowlogAgent_Handler, - }, - { - MethodName: "ChangeQANMongoDBProfilerAgent", - Handler: _AgentsService_ChangeQANMongoDBProfilerAgent_Handler, - }, - { - MethodName: "ChangeQANPostgreSQLPgStatementsAgent", - Handler: _AgentsService_ChangeQANPostgreSQLPgStatementsAgent_Handler, - }, - { - MethodName: "ChangeQANPostgreSQLPgStatMonitorAgent", - Handler: _AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_Handler, - }, - { - MethodName: "ChangeRDSExporter", - Handler: _AgentsService_ChangeRDSExporter_Handler, - }, - { - MethodName: "ChangeExternalExporter", - Handler: _AgentsService_ChangeExternalExporter_Handler, - }, - { - MethodName: "ChangeAzureDatabaseExporter", - Handler: _AgentsService_ChangeAzureDatabaseExporter_Handler, + MethodName: "ChangeAgent", + Handler: _AgentsService_ChangeAgent_Handler, }, { MethodName: "RemoveAgent", diff --git a/api/inventory/v1/json/client/agents_service/add_agent_responses.go b/api/inventory/v1/json/client/agents_service/add_agent_responses.go index 2e32b12419..5e3338901f 100644 --- a/api/inventory/v1/json/client/agents_service/add_agent_responses.go +++ b/api/inventory/v1/json/client/agents_service/add_agent_responses.go @@ -940,9 +940,6 @@ AddAgentOKBody add agent OK body swagger:model AddAgentOKBody */ type AddAgentOKBody struct { - // Actual table count for SQL databases at the moment of adding. - TableCount int32 `json:"table_count,omitempty"` - // azure database exporter AzureDatabaseExporter *AddAgentOKBodyAzureDatabaseExporter `json:"azure_database_exporter,omitempty"` @@ -2157,6 +2154,9 @@ type AddAgentOKBodyMysqldExporter struct { // List of disabled collector names. DisabledCollectors []string `json:"disabled_collectors"` + // Actual table count at the moment of adding. + TableCount int32 `json:"table_count,omitempty"` + // AgentStatus represents actual Agent status. // // - AGENT_STATUS_STARTING: Agent is starting. diff --git a/api/inventory/v1/json/client/agents_service/agents_service_client.go b/api/inventory/v1/json/client/agents_service/agents_service_client.go index b32113b794..68b540a10b 100644 --- a/api/inventory/v1/json/client/agents_service/agents_service_client.go +++ b/api/inventory/v1/json/client/agents_service/agents_service_client.go @@ -30,31 +30,7 @@ type ClientOption func(*runtime.ClientOperation) type ClientService interface { AddAgent(params *AddAgentParams, opts ...ClientOption) (*AddAgentOK, error) - ChangeAzureDatabaseExporter(params *ChangeAzureDatabaseExporterParams, opts ...ClientOption) (*ChangeAzureDatabaseExporterOK, error) - - ChangeExternalExporter(params *ChangeExternalExporterParams, opts ...ClientOption) (*ChangeExternalExporterOK, error) - - ChangeMongoDBExporter(params *ChangeMongoDBExporterParams, opts ...ClientOption) (*ChangeMongoDBExporterOK, error) - - ChangeMySQLdExporter(params *ChangeMySQLdExporterParams, opts ...ClientOption) (*ChangeMySQLdExporterOK, error) - - ChangeNodeExporter(params *ChangeNodeExporterParams, opts ...ClientOption) (*ChangeNodeExporterOK, error) - - ChangePostgresExporter(params *ChangePostgresExporterParams, opts ...ClientOption) (*ChangePostgresExporterOK, error) - - ChangeProxySQLExporter(params *ChangeProxySQLExporterParams, opts ...ClientOption) (*ChangeProxySQLExporterOK, error) - - ChangeQANMongoDBProfilerAgent(params *ChangeQANMongoDBProfilerAgentParams, opts ...ClientOption) (*ChangeQANMongoDBProfilerAgentOK, error) - - ChangeQANMySQLPerfSchemaAgent(params *ChangeQANMySQLPerfSchemaAgentParams, opts ...ClientOption) (*ChangeQANMySQLPerfSchemaAgentOK, error) - - ChangeQANMySQLSlowlogAgent(params *ChangeQANMySQLSlowlogAgentParams, opts ...ClientOption) (*ChangeQANMySQLSlowlogAgentOK, error) - - ChangeQANPostgreSQLPgStatMonitorAgent(params *ChangeQANPostgreSQLPgStatMonitorAgentParams, opts ...ClientOption) (*ChangeQANPostgreSQLPgStatMonitorAgentOK, error) - - ChangeQANPostgreSQLPgStatementsAgent(params *ChangeQANPostgreSQLPgStatementsAgentParams, opts ...ClientOption) (*ChangeQANPostgreSQLPgStatementsAgentOK, error) - - ChangeRDSExporter(params *ChangeRDSExporterParams, opts ...ClientOption) (*ChangeRDSExporterOK, error) + ChangeAgent(params *ChangeAgentParams, opts ...ClientOption) (*ChangeAgentOK, error) GetAgent(params *GetAgentParams, opts ...ClientOption) (*GetAgentOK, error) @@ -70,7 +46,7 @@ type ClientService interface { /* AddAgent adds an agent to inventory -Adds an Agent from Inventory. +Adds an Agent to Inventory. Only one top-level parameter should be passed. */ func (a *Client) AddAgent(params *AddAgentParams, opts ...ClientOption) (*AddAgentOK, error) { // TODO: Validate the params before sending @@ -107,492 +83,24 @@ func (a *Client) AddAgent(params *AddAgentParams, opts ...ClientOption) (*AddAge } /* -ChangeAzureDatabaseExporter changes azure database exporter - -Changes azure_database_exporter Agent. -*/ -func (a *Client) ChangeAzureDatabaseExporter(params *ChangeAzureDatabaseExporterParams, opts ...ClientOption) (*ChangeAzureDatabaseExporterOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewChangeAzureDatabaseExporterParams() - } - op := &runtime.ClientOperation{ - ID: "ChangeAzureDatabaseExporter", - Method: "POST", - PathPattern: "/v1/inventory/Agents/ChangeAzureDatabaseExporter", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &ChangeAzureDatabaseExporterReader{formats: a.formats}, - Context: params.Context, - Client: params.HTTPClient, - } - for _, opt := range opts { - opt(op) - } - - result, err := a.transport.Submit(op) - if err != nil { - return nil, err - } - success, ok := result.(*ChangeAzureDatabaseExporterOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*ChangeAzureDatabaseExporterDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -ChangeExternalExporter changes external exporter - -Changes external_exporter Agent. -*/ -func (a *Client) ChangeExternalExporter(params *ChangeExternalExporterParams, opts ...ClientOption) (*ChangeExternalExporterOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewChangeExternalExporterParams() - } - op := &runtime.ClientOperation{ - ID: "ChangeExternalExporter", - Method: "POST", - PathPattern: "/v1/inventory/Agents/ChangeExternalExporter", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &ChangeExternalExporterReader{formats: a.formats}, - Context: params.Context, - Client: params.HTTPClient, - } - for _, opt := range opts { - opt(op) - } - - result, err := a.transport.Submit(op) - if err != nil { - return nil, err - } - success, ok := result.(*ChangeExternalExporterOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*ChangeExternalExporterDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -ChangeMongoDBExporter changes mongo DB exporter - -Changes mongodb_exporter Agent. -*/ -func (a *Client) ChangeMongoDBExporter(params *ChangeMongoDBExporterParams, opts ...ClientOption) (*ChangeMongoDBExporterOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewChangeMongoDBExporterParams() - } - op := &runtime.ClientOperation{ - ID: "ChangeMongoDBExporter", - Method: "POST", - PathPattern: "/v1/inventory/Agents/ChangeMongoDBExporter", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &ChangeMongoDBExporterReader{formats: a.formats}, - Context: params.Context, - Client: params.HTTPClient, - } - for _, opt := range opts { - opt(op) - } - - result, err := a.transport.Submit(op) - if err != nil { - return nil, err - } - success, ok := result.(*ChangeMongoDBExporterOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*ChangeMongoDBExporterDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -ChangeMySQLdExporter changes mysqld exporter - -Changes mysqld_exporter Agent. -*/ -func (a *Client) ChangeMySQLdExporter(params *ChangeMySQLdExporterParams, opts ...ClientOption) (*ChangeMySQLdExporterOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewChangeMySQLdExporterParams() - } - op := &runtime.ClientOperation{ - ID: "ChangeMySQLdExporter", - Method: "POST", - PathPattern: "/v1/inventory/Agents/ChangeMySQLdExporter", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &ChangeMySQLdExporterReader{formats: a.formats}, - Context: params.Context, - Client: params.HTTPClient, - } - for _, opt := range opts { - opt(op) - } - - result, err := a.transport.Submit(op) - if err != nil { - return nil, err - } - success, ok := result.(*ChangeMySQLdExporterOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*ChangeMySQLdExporterDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -ChangeNodeExporter changes node exporter - -Changes node_exporter Agent. -*/ -func (a *Client) ChangeNodeExporter(params *ChangeNodeExporterParams, opts ...ClientOption) (*ChangeNodeExporterOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewChangeNodeExporterParams() - } - op := &runtime.ClientOperation{ - ID: "ChangeNodeExporter", - Method: "POST", - PathPattern: "/v1/inventory/Agents/ChangeNodeExporter", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &ChangeNodeExporterReader{formats: a.formats}, - Context: params.Context, - Client: params.HTTPClient, - } - for _, opt := range opts { - opt(op) - } - - result, err := a.transport.Submit(op) - if err != nil { - return nil, err - } - success, ok := result.(*ChangeNodeExporterOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*ChangeNodeExporterDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -ChangePostgresExporter changes postgres exporter - -Changes postgres_exporter Agent. -*/ -func (a *Client) ChangePostgresExporter(params *ChangePostgresExporterParams, opts ...ClientOption) (*ChangePostgresExporterOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewChangePostgresExporterParams() - } - op := &runtime.ClientOperation{ - ID: "ChangePostgresExporter", - Method: "POST", - PathPattern: "/v1/inventory/Agents/ChangePostgresExporter", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &ChangePostgresExporterReader{formats: a.formats}, - Context: params.Context, - Client: params.HTTPClient, - } - for _, opt := range opts { - opt(op) - } - - result, err := a.transport.Submit(op) - if err != nil { - return nil, err - } - success, ok := result.(*ChangePostgresExporterOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*ChangePostgresExporterDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -ChangeProxySQLExporter changes proxy SQL exporter - -Changes proxysql_exporter Agent. -*/ -func (a *Client) ChangeProxySQLExporter(params *ChangeProxySQLExporterParams, opts ...ClientOption) (*ChangeProxySQLExporterOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewChangeProxySQLExporterParams() - } - op := &runtime.ClientOperation{ - ID: "ChangeProxySQLExporter", - Method: "POST", - PathPattern: "/v1/inventory/Agents/ChangeProxySQLExporter", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &ChangeProxySQLExporterReader{formats: a.formats}, - Context: params.Context, - Client: params.HTTPClient, - } - for _, opt := range opts { - opt(op) - } - - result, err := a.transport.Submit(op) - if err != nil { - return nil, err - } - success, ok := result.(*ChangeProxySQLExporterOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*ChangeProxySQLExporterDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -ChangeQANMongoDBProfilerAgent changes QAN mongo DB profiler agent - -Changes 'Query Analytics MongoDB Profiler' Agent. -*/ -func (a *Client) ChangeQANMongoDBProfilerAgent(params *ChangeQANMongoDBProfilerAgentParams, opts ...ClientOption) (*ChangeQANMongoDBProfilerAgentOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewChangeQANMongoDBProfilerAgentParams() - } - op := &runtime.ClientOperation{ - ID: "ChangeQANMongoDBProfilerAgent", - Method: "POST", - PathPattern: "/v1/inventory/Agents/ChangeQANMongoDBProfilerAgent", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &ChangeQANMongoDBProfilerAgentReader{formats: a.formats}, - Context: params.Context, - Client: params.HTTPClient, - } - for _, opt := range opts { - opt(op) - } - - result, err := a.transport.Submit(op) - if err != nil { - return nil, err - } - success, ok := result.(*ChangeQANMongoDBProfilerAgentOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*ChangeQANMongoDBProfilerAgentDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -ChangeQANMySQLPerfSchemaAgent changes QAN my SQL perf schema agent - -Changes 'Query Analytics MySQL PerfSchema' Agent. -*/ -func (a *Client) ChangeQANMySQLPerfSchemaAgent(params *ChangeQANMySQLPerfSchemaAgentParams, opts ...ClientOption) (*ChangeQANMySQLPerfSchemaAgentOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewChangeQANMySQLPerfSchemaAgentParams() - } - op := &runtime.ClientOperation{ - ID: "ChangeQANMySQLPerfSchemaAgent", - Method: "POST", - PathPattern: "/v1/inventory/Agents/ChangeQANMySQLPerfSchemaAgent", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &ChangeQANMySQLPerfSchemaAgentReader{formats: a.formats}, - Context: params.Context, - Client: params.HTTPClient, - } - for _, opt := range opts { - opt(op) - } - - result, err := a.transport.Submit(op) - if err != nil { - return nil, err - } - success, ok := result.(*ChangeQANMySQLPerfSchemaAgentOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*ChangeQANMySQLPerfSchemaAgentDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -ChangeQANMySQLSlowlogAgent changes QAN my SQL slowlog agent - -Changes 'Query Analytics MySQL Slowlog' Agent. -*/ -func (a *Client) ChangeQANMySQLSlowlogAgent(params *ChangeQANMySQLSlowlogAgentParams, opts ...ClientOption) (*ChangeQANMySQLSlowlogAgentOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewChangeQANMySQLSlowlogAgentParams() - } - op := &runtime.ClientOperation{ - ID: "ChangeQANMySQLSlowlogAgent", - Method: "POST", - PathPattern: "/v1/inventory/Agents/ChangeQANMySQLSlowlogAgent", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &ChangeQANMySQLSlowlogAgentReader{formats: a.formats}, - Context: params.Context, - Client: params.HTTPClient, - } - for _, opt := range opts { - opt(op) - } - - result, err := a.transport.Submit(op) - if err != nil { - return nil, err - } - success, ok := result.(*ChangeQANMySQLSlowlogAgentOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*ChangeQANMySQLSlowlogAgentDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -ChangeQANPostgreSQLPgStatMonitorAgent changes QAN postgre SQL pg stat monitor agent - -Changes 'Query Analytics PostgreSQL pg_stat_monitor' Agent. -*/ -func (a *Client) ChangeQANPostgreSQLPgStatMonitorAgent(params *ChangeQANPostgreSQLPgStatMonitorAgentParams, opts ...ClientOption) (*ChangeQANPostgreSQLPgStatMonitorAgentOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewChangeQANPostgreSQLPgStatMonitorAgentParams() - } - op := &runtime.ClientOperation{ - ID: "ChangeQANPostgreSQLPgStatMonitorAgent", - Method: "POST", - PathPattern: "/v1/inventory/Agents/ChangeQANPostgreSQLPgStatMonitorAgent", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &ChangeQANPostgreSQLPgStatMonitorAgentReader{formats: a.formats}, - Context: params.Context, - Client: params.HTTPClient, - } - for _, opt := range opts { - opt(op) - } - - result, err := a.transport.Submit(op) - if err != nil { - return nil, err - } - success, ok := result.(*ChangeQANPostgreSQLPgStatMonitorAgentOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*ChangeQANPostgreSQLPgStatMonitorAgentDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -ChangeQANPostgreSQLPgStatementsAgent changes QAN postgre SQL pg stat statements agent - -Changes 'Query Analytics PostgreSQL pg_stat_statements' Agent. -*/ -func (a *Client) ChangeQANPostgreSQLPgStatementsAgent(params *ChangeQANPostgreSQLPgStatementsAgentParams, opts ...ClientOption) (*ChangeQANPostgreSQLPgStatementsAgentOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewChangeQANPostgreSQLPgStatementsAgentParams() - } - op := &runtime.ClientOperation{ - ID: "ChangeQANPostgreSQLPgStatementsAgent", - Method: "POST", - PathPattern: "/v1/inventory/Agents/ChangeQANPostgreSQLPgStatementsAgent", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &ChangeQANPostgreSQLPgStatementsAgentReader{formats: a.formats}, - Context: params.Context, - Client: params.HTTPClient, - } - for _, opt := range opts { - opt(op) - } - - result, err := a.transport.Submit(op) - if err != nil { - return nil, err - } - success, ok := result.(*ChangeQANPostgreSQLPgStatementsAgentOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*ChangeQANPostgreSQLPgStatementsAgentDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -ChangeRDSExporter changes RDS exporter +ChangeAgent updates an agent in inventory -Changes rds_exporter Agent. +Updates an Agent in Inventory. Only one top-level parameter should be passed. */ -func (a *Client) ChangeRDSExporter(params *ChangeRDSExporterParams, opts ...ClientOption) (*ChangeRDSExporterOK, error) { +func (a *Client) ChangeAgent(params *ChangeAgentParams, opts ...ClientOption) (*ChangeAgentOK, error) { // TODO: Validate the params before sending if params == nil { - params = NewChangeRDSExporterParams() + params = NewChangeAgentParams() } op := &runtime.ClientOperation{ - ID: "ChangeRDSExporter", + ID: "ChangeAgent", Method: "POST", - PathPattern: "/v1/inventory/Agents/ChangeRDSExporter", + PathPattern: "/v1/inventory/Agents/Change", ProducesMediaTypes: []string{"application/json"}, ConsumesMediaTypes: []string{"application/json"}, Schemes: []string{"http", "https"}, Params: params, - Reader: &ChangeRDSExporterReader{formats: a.formats}, + Reader: &ChangeAgentReader{formats: a.formats}, Context: params.Context, Client: params.HTTPClient, } @@ -604,12 +112,12 @@ func (a *Client) ChangeRDSExporter(params *ChangeRDSExporterParams, opts ...Clie if err != nil { return nil, err } - success, ok := result.(*ChangeRDSExporterOK) + success, ok := result.(*ChangeAgentOK) if ok { return success, nil } // unexpected success response - unexpectedSuccess := result.(*ChangeRDSExporterDefault) + unexpectedSuccess := result.(*ChangeAgentDefault) return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) } diff --git a/api/inventory/v1/json/client/agents_service/change_agent_parameters.go b/api/inventory/v1/json/client/agents_service/change_agent_parameters.go new file mode 100644 index 0000000000..8db9d854f3 --- /dev/null +++ b/api/inventory/v1/json/client/agents_service/change_agent_parameters.go @@ -0,0 +1,144 @@ +// Code generated by go-swagger; DO NOT EDIT. + +package agents_service + +// This file was generated by the swagger tool. +// Editing this file might prove futile when you re-run the swagger generate command + +import ( + "context" + "net/http" + "time" + + "github.com/go-openapi/errors" + "github.com/go-openapi/runtime" + cr "github.com/go-openapi/runtime/client" + "github.com/go-openapi/strfmt" +) + +// NewChangeAgentParams creates a new ChangeAgentParams object, +// with the default timeout for this client. +// +// Default values are not hydrated, since defaults are normally applied by the API server side. +// +// To enforce default values in parameter, use SetDefaults or WithDefaults. +func NewChangeAgentParams() *ChangeAgentParams { + return &ChangeAgentParams{ + timeout: cr.DefaultTimeout, + } +} + +// NewChangeAgentParamsWithTimeout creates a new ChangeAgentParams object +// with the ability to set a timeout on a request. +func NewChangeAgentParamsWithTimeout(timeout time.Duration) *ChangeAgentParams { + return &ChangeAgentParams{ + timeout: timeout, + } +} + +// NewChangeAgentParamsWithContext creates a new ChangeAgentParams object +// with the ability to set a context for a request. +func NewChangeAgentParamsWithContext(ctx context.Context) *ChangeAgentParams { + return &ChangeAgentParams{ + Context: ctx, + } +} + +// NewChangeAgentParamsWithHTTPClient creates a new ChangeAgentParams object +// with the ability to set a custom HTTPClient for a request. +func NewChangeAgentParamsWithHTTPClient(client *http.Client) *ChangeAgentParams { + return &ChangeAgentParams{ + HTTPClient: client, + } +} + +/* +ChangeAgentParams contains all the parameters to send to the API endpoint + + for the change agent operation. + + Typically these are written to a http.Request. +*/ +type ChangeAgentParams struct { + // Body. + Body ChangeAgentBody + + timeout time.Duration + Context context.Context + HTTPClient *http.Client +} + +// WithDefaults hydrates default values in the change agent params (not the query body). +// +// All values with no default are reset to their zero value. +func (o *ChangeAgentParams) WithDefaults() *ChangeAgentParams { + o.SetDefaults() + return o +} + +// SetDefaults hydrates default values in the change agent params (not the query body). +// +// All values with no default are reset to their zero value. +func (o *ChangeAgentParams) SetDefaults() { + // no default values defined for this parameter +} + +// WithTimeout adds the timeout to the change agent params +func (o *ChangeAgentParams) WithTimeout(timeout time.Duration) *ChangeAgentParams { + o.SetTimeout(timeout) + return o +} + +// SetTimeout adds the timeout to the change agent params +func (o *ChangeAgentParams) SetTimeout(timeout time.Duration) { + o.timeout = timeout +} + +// WithContext adds the context to the change agent params +func (o *ChangeAgentParams) WithContext(ctx context.Context) *ChangeAgentParams { + o.SetContext(ctx) + return o +} + +// SetContext adds the context to the change agent params +func (o *ChangeAgentParams) SetContext(ctx context.Context) { + o.Context = ctx +} + +// WithHTTPClient adds the HTTPClient to the change agent params +func (o *ChangeAgentParams) WithHTTPClient(client *http.Client) *ChangeAgentParams { + o.SetHTTPClient(client) + return o +} + +// SetHTTPClient adds the HTTPClient to the change agent params +func (o *ChangeAgentParams) SetHTTPClient(client *http.Client) { + o.HTTPClient = client +} + +// WithBody adds the body to the change agent params +func (o *ChangeAgentParams) WithBody(body ChangeAgentBody) *ChangeAgentParams { + o.SetBody(body) + return o +} + +// SetBody adds the body to the change agent params +func (o *ChangeAgentParams) SetBody(body ChangeAgentBody) { + o.Body = body +} + +// WriteToRequest writes these params to a swagger request +func (o *ChangeAgentParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error { + if err := r.SetTimeout(o.timeout); err != nil { + return err + } + var res []error + if err := r.SetBodyParam(o.Body); err != nil { + return err + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} diff --git a/api/inventory/v1/json/client/agents_service/change_agent_responses.go b/api/inventory/v1/json/client/agents_service/change_agent_responses.go new file mode 100644 index 0000000000..a516108b93 --- /dev/null +++ b/api/inventory/v1/json/client/agents_service/change_agent_responses.go @@ -0,0 +1,7073 @@ +// Code generated by go-swagger; DO NOT EDIT. + +package agents_service + +// This file was generated by the swagger tool. +// Editing this file might prove futile when you re-run the swagger generate command + +import ( + "context" + "encoding/json" + "fmt" + "io" + "strconv" + + "github.com/go-openapi/errors" + "github.com/go-openapi/runtime" + "github.com/go-openapi/strfmt" + "github.com/go-openapi/swag" + "github.com/go-openapi/validate" +) + +// ChangeAgentReader is a Reader for the ChangeAgent structure. +type ChangeAgentReader struct { + formats strfmt.Registry +} + +// ReadResponse reads a server response into the received o. +func (o *ChangeAgentReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { + switch response.Code() { + case 200: + result := NewChangeAgentOK() + if err := result.readResponse(response, consumer, o.formats); err != nil { + return nil, err + } + return result, nil + default: + result := NewChangeAgentDefault(response.Code()) + if err := result.readResponse(response, consumer, o.formats); err != nil { + return nil, err + } + if response.Code()/100 == 2 { + return result, nil + } + return nil, result + } +} + +// NewChangeAgentOK creates a ChangeAgentOK with default headers values +func NewChangeAgentOK() *ChangeAgentOK { + return &ChangeAgentOK{} +} + +/* +ChangeAgentOK describes a response with status code 200, with default header values. + +A successful response. +*/ +type ChangeAgentOK struct { + Payload *ChangeAgentOKBody +} + +func (o *ChangeAgentOK) Error() string { + return fmt.Sprintf("[POST /v1/inventory/Agents/Change][%d] changeAgentOk %+v", 200, o.Payload) +} + +func (o *ChangeAgentOK) GetPayload() *ChangeAgentOKBody { + return o.Payload +} + +func (o *ChangeAgentOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { + o.Payload = new(ChangeAgentOKBody) + + // response payload + if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { + return err + } + + return nil +} + +// NewChangeAgentDefault creates a ChangeAgentDefault with default headers values +func NewChangeAgentDefault(code int) *ChangeAgentDefault { + return &ChangeAgentDefault{ + _statusCode: code, + } +} + +/* +ChangeAgentDefault describes a response with status code -1, with default header values. + +An unexpected error response. +*/ +type ChangeAgentDefault struct { + _statusCode int + + Payload *ChangeAgentDefaultBody +} + +// Code gets the status code for the change agent default response +func (o *ChangeAgentDefault) Code() int { + return o._statusCode +} + +func (o *ChangeAgentDefault) Error() string { + return fmt.Sprintf("[POST /v1/inventory/Agents/Change][%d] ChangeAgent default %+v", o._statusCode, o.Payload) +} + +func (o *ChangeAgentDefault) GetPayload() *ChangeAgentDefaultBody { + return o.Payload +} + +func (o *ChangeAgentDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { + o.Payload = new(ChangeAgentDefaultBody) + + // response payload + if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { + return err + } + + return nil +} + +/* +ChangeAgentBody change agent body +swagger:model ChangeAgentBody +*/ +type ChangeAgentBody struct { + // azure database exporter + AzureDatabaseExporter *ChangeAgentParamsBodyAzureDatabaseExporter `json:"azure_database_exporter,omitempty"` + + // external exporter + ExternalExporter *ChangeAgentParamsBodyExternalExporter `json:"external_exporter,omitempty"` + + // mongodb exporter + MongodbExporter *ChangeAgentParamsBodyMongodbExporter `json:"mongodb_exporter,omitempty"` + + // mysqld exporter + MysqldExporter *ChangeAgentParamsBodyMysqldExporter `json:"mysqld_exporter,omitempty"` + + // node exporter + NodeExporter *ChangeAgentParamsBodyNodeExporter `json:"node_exporter,omitempty"` + + // postgres exporter + PostgresExporter *ChangeAgentParamsBodyPostgresExporter `json:"postgres_exporter,omitempty"` + + // proxysql exporter + ProxysqlExporter *ChangeAgentParamsBodyProxysqlExporter `json:"proxysql_exporter,omitempty"` + + // qan mongodb profiler agent + QANMongodbProfilerAgent *ChangeAgentParamsBodyQANMongodbProfilerAgent `json:"qan_mongodb_profiler_agent,omitempty"` + + // qan mysql perfschema agent + QANMysqlPerfschemaAgent *ChangeAgentParamsBodyQANMysqlPerfschemaAgent `json:"qan_mysql_perfschema_agent,omitempty"` + + // qan mysql slowlog agent + QANMysqlSlowlogAgent *ChangeAgentParamsBodyQANMysqlSlowlogAgent `json:"qan_mysql_slowlog_agent,omitempty"` + + // qan postgresql pgstatements agent + QANPostgresqlPgstatementsAgent *ChangeAgentParamsBodyQANPostgresqlPgstatementsAgent `json:"qan_postgresql_pgstatements_agent,omitempty"` + + // qan postgresql pgstatmonitor agent + QANPostgresqlPgstatmonitorAgent *ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgent `json:"qan_postgresql_pgstatmonitor_agent,omitempty"` + + // rds exporter + RDSExporter *ChangeAgentParamsBodyRDSExporter `json:"rds_exporter,omitempty"` +} + +// Validate validates this change agent body +func (o *ChangeAgentBody) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateAzureDatabaseExporter(formats); err != nil { + res = append(res, err) + } + + if err := o.validateExternalExporter(formats); err != nil { + res = append(res, err) + } + + if err := o.validateMongodbExporter(formats); err != nil { + res = append(res, err) + } + + if err := o.validateMysqldExporter(formats); err != nil { + res = append(res, err) + } + + if err := o.validateNodeExporter(formats); err != nil { + res = append(res, err) + } + + if err := o.validatePostgresExporter(formats); err != nil { + res = append(res, err) + } + + if err := o.validateProxysqlExporter(formats); err != nil { + res = append(res, err) + } + + if err := o.validateQANMongodbProfilerAgent(formats); err != nil { + res = append(res, err) + } + + if err := o.validateQANMysqlPerfschemaAgent(formats); err != nil { + res = append(res, err) + } + + if err := o.validateQANMysqlSlowlogAgent(formats); err != nil { + res = append(res, err) + } + + if err := o.validateQANPostgresqlPgstatementsAgent(formats); err != nil { + res = append(res, err) + } + + if err := o.validateQANPostgresqlPgstatmonitorAgent(formats); err != nil { + res = append(res, err) + } + + if err := o.validateRDSExporter(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentBody) validateAzureDatabaseExporter(formats strfmt.Registry) error { + if swag.IsZero(o.AzureDatabaseExporter) { // not required + return nil + } + + if o.AzureDatabaseExporter != nil { + if err := o.AzureDatabaseExporter.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "azure_database_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "azure_database_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) validateExternalExporter(formats strfmt.Registry) error { + if swag.IsZero(o.ExternalExporter) { // not required + return nil + } + + if o.ExternalExporter != nil { + if err := o.ExternalExporter.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "external_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "external_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) validateMongodbExporter(formats strfmt.Registry) error { + if swag.IsZero(o.MongodbExporter) { // not required + return nil + } + + if o.MongodbExporter != nil { + if err := o.MongodbExporter.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "mongodb_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "mongodb_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) validateMysqldExporter(formats strfmt.Registry) error { + if swag.IsZero(o.MysqldExporter) { // not required + return nil + } + + if o.MysqldExporter != nil { + if err := o.MysqldExporter.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "mysqld_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "mysqld_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) validateNodeExporter(formats strfmt.Registry) error { + if swag.IsZero(o.NodeExporter) { // not required + return nil + } + + if o.NodeExporter != nil { + if err := o.NodeExporter.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "node_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "node_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) validatePostgresExporter(formats strfmt.Registry) error { + if swag.IsZero(o.PostgresExporter) { // not required + return nil + } + + if o.PostgresExporter != nil { + if err := o.PostgresExporter.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "postgres_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "postgres_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) validateProxysqlExporter(formats strfmt.Registry) error { + if swag.IsZero(o.ProxysqlExporter) { // not required + return nil + } + + if o.ProxysqlExporter != nil { + if err := o.ProxysqlExporter.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "proxysql_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "proxysql_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) validateQANMongodbProfilerAgent(formats strfmt.Registry) error { + if swag.IsZero(o.QANMongodbProfilerAgent) { // not required + return nil + } + + if o.QANMongodbProfilerAgent != nil { + if err := o.QANMongodbProfilerAgent.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_mongodb_profiler_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_mongodb_profiler_agent") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) validateQANMysqlPerfschemaAgent(formats strfmt.Registry) error { + if swag.IsZero(o.QANMysqlPerfschemaAgent) { // not required + return nil + } + + if o.QANMysqlPerfschemaAgent != nil { + if err := o.QANMysqlPerfschemaAgent.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_mysql_perfschema_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_mysql_perfschema_agent") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) validateQANMysqlSlowlogAgent(formats strfmt.Registry) error { + if swag.IsZero(o.QANMysqlSlowlogAgent) { // not required + return nil + } + + if o.QANMysqlSlowlogAgent != nil { + if err := o.QANMysqlSlowlogAgent.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_mysql_slowlog_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_mysql_slowlog_agent") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) validateQANPostgresqlPgstatementsAgent(formats strfmt.Registry) error { + if swag.IsZero(o.QANPostgresqlPgstatementsAgent) { // not required + return nil + } + + if o.QANPostgresqlPgstatementsAgent != nil { + if err := o.QANPostgresqlPgstatementsAgent.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_postgresql_pgstatements_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_postgresql_pgstatements_agent") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) validateQANPostgresqlPgstatmonitorAgent(formats strfmt.Registry) error { + if swag.IsZero(o.QANPostgresqlPgstatmonitorAgent) { // not required + return nil + } + + if o.QANPostgresqlPgstatmonitorAgent != nil { + if err := o.QANPostgresqlPgstatmonitorAgent.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_postgresql_pgstatmonitor_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_postgresql_pgstatmonitor_agent") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) validateRDSExporter(formats strfmt.Registry) error { + if swag.IsZero(o.RDSExporter) { // not required + return nil + } + + if o.RDSExporter != nil { + if err := o.RDSExporter.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "rds_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "rds_exporter") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent body based on the context it is used +func (o *ChangeAgentBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateAzureDatabaseExporter(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateExternalExporter(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateMongodbExporter(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateMysqldExporter(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateNodeExporter(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidatePostgresExporter(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateProxysqlExporter(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateQANMongodbProfilerAgent(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateQANMysqlPerfschemaAgent(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateQANMysqlSlowlogAgent(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateQANPostgresqlPgstatementsAgent(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateQANPostgresqlPgstatmonitorAgent(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateRDSExporter(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentBody) contextValidateAzureDatabaseExporter(ctx context.Context, formats strfmt.Registry) error { + if o.AzureDatabaseExporter != nil { + if err := o.AzureDatabaseExporter.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "azure_database_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "azure_database_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) contextValidateExternalExporter(ctx context.Context, formats strfmt.Registry) error { + if o.ExternalExporter != nil { + if err := o.ExternalExporter.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "external_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "external_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) contextValidateMongodbExporter(ctx context.Context, formats strfmt.Registry) error { + if o.MongodbExporter != nil { + if err := o.MongodbExporter.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "mongodb_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "mongodb_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) contextValidateMysqldExporter(ctx context.Context, formats strfmt.Registry) error { + if o.MysqldExporter != nil { + if err := o.MysqldExporter.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "mysqld_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "mysqld_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) contextValidateNodeExporter(ctx context.Context, formats strfmt.Registry) error { + if o.NodeExporter != nil { + if err := o.NodeExporter.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "node_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "node_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) contextValidatePostgresExporter(ctx context.Context, formats strfmt.Registry) error { + if o.PostgresExporter != nil { + if err := o.PostgresExporter.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "postgres_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "postgres_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) contextValidateProxysqlExporter(ctx context.Context, formats strfmt.Registry) error { + if o.ProxysqlExporter != nil { + if err := o.ProxysqlExporter.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "proxysql_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "proxysql_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) contextValidateQANMongodbProfilerAgent(ctx context.Context, formats strfmt.Registry) error { + if o.QANMongodbProfilerAgent != nil { + if err := o.QANMongodbProfilerAgent.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_mongodb_profiler_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_mongodb_profiler_agent") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) contextValidateQANMysqlPerfschemaAgent(ctx context.Context, formats strfmt.Registry) error { + if o.QANMysqlPerfschemaAgent != nil { + if err := o.QANMysqlPerfschemaAgent.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_mysql_perfschema_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_mysql_perfschema_agent") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) contextValidateQANMysqlSlowlogAgent(ctx context.Context, formats strfmt.Registry) error { + if o.QANMysqlSlowlogAgent != nil { + if err := o.QANMysqlSlowlogAgent.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_mysql_slowlog_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_mysql_slowlog_agent") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) contextValidateQANPostgresqlPgstatementsAgent(ctx context.Context, formats strfmt.Registry) error { + if o.QANPostgresqlPgstatementsAgent != nil { + if err := o.QANPostgresqlPgstatementsAgent.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_postgresql_pgstatements_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_postgresql_pgstatements_agent") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) contextValidateQANPostgresqlPgstatmonitorAgent(ctx context.Context, formats strfmt.Registry) error { + if o.QANPostgresqlPgstatmonitorAgent != nil { + if err := o.QANPostgresqlPgstatmonitorAgent.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_postgresql_pgstatmonitor_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_postgresql_pgstatmonitor_agent") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentBody) contextValidateRDSExporter(ctx context.Context, formats strfmt.Registry) error { + if o.RDSExporter != nil { + if err := o.RDSExporter.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "rds_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "rds_exporter") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentBody) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentBody) UnmarshalBinary(b []byte) error { + var res ChangeAgentBody + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentDefaultBody change agent default body +swagger:model ChangeAgentDefaultBody +*/ +type ChangeAgentDefaultBody struct { + // code + Code int32 `json:"code,omitempty"` + + // message + Message string `json:"message,omitempty"` + + // details + Details []*ChangeAgentDefaultBodyDetailsItems0 `json:"details"` +} + +// Validate validates this change agent default body +func (o *ChangeAgentDefaultBody) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateDetails(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentDefaultBody) validateDetails(formats strfmt.Registry) error { + if swag.IsZero(o.Details) { // not required + return nil + } + + for i := 0; i < len(o.Details); i++ { + if swag.IsZero(o.Details[i]) { // not required + continue + } + + if o.Details[i] != nil { + if err := o.Details[i].Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("ChangeAgent default" + "." + "details" + "." + strconv.Itoa(i)) + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("ChangeAgent default" + "." + "details" + "." + strconv.Itoa(i)) + } + return err + } + } + + } + + return nil +} + +// ContextValidate validate this change agent default body based on the context it is used +func (o *ChangeAgentDefaultBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateDetails(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentDefaultBody) contextValidateDetails(ctx context.Context, formats strfmt.Registry) error { + for i := 0; i < len(o.Details); i++ { + if o.Details[i] != nil { + if err := o.Details[i].ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("ChangeAgent default" + "." + "details" + "." + strconv.Itoa(i)) + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("ChangeAgent default" + "." + "details" + "." + strconv.Itoa(i)) + } + return err + } + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentDefaultBody) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentDefaultBody) UnmarshalBinary(b []byte) error { + var res ChangeAgentDefaultBody + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentDefaultBodyDetailsItems0 change agent default body details items0 +swagger:model ChangeAgentDefaultBodyDetailsItems0 +*/ +type ChangeAgentDefaultBodyDetailsItems0 struct { + // at type + AtType string `json:"@type,omitempty"` +} + +// Validate validates this change agent default body details items0 +func (o *ChangeAgentDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { + return nil +} + +// ContextValidate validates this change agent default body details items0 based on context it is used +func (o *ChangeAgentDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { + var res ChangeAgentDefaultBodyDetailsItems0 + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentOKBody change agent OK body +swagger:model ChangeAgentOKBody +*/ +type ChangeAgentOKBody struct { + // azure database exporter + AzureDatabaseExporter *ChangeAgentOKBodyAzureDatabaseExporter `json:"azure_database_exporter,omitempty"` + + // external exporter + ExternalExporter *ChangeAgentOKBodyExternalExporter `json:"external_exporter,omitempty"` + + // mongodb exporter + MongodbExporter *ChangeAgentOKBodyMongodbExporter `json:"mongodb_exporter,omitempty"` + + // mysqld exporter + MysqldExporter *ChangeAgentOKBodyMysqldExporter `json:"mysqld_exporter,omitempty"` + + // node exporter + NodeExporter *ChangeAgentOKBodyNodeExporter `json:"node_exporter,omitempty"` + + // postgres exporter + PostgresExporter *ChangeAgentOKBodyPostgresExporter `json:"postgres_exporter,omitempty"` + + // proxysql exporter + ProxysqlExporter *ChangeAgentOKBodyProxysqlExporter `json:"proxysql_exporter,omitempty"` + + // qan mongodb profiler agent + QANMongodbProfilerAgent *ChangeAgentOKBodyQANMongodbProfilerAgent `json:"qan_mongodb_profiler_agent,omitempty"` + + // qan mysql perfschema agent + QANMysqlPerfschemaAgent *ChangeAgentOKBodyQANMysqlPerfschemaAgent `json:"qan_mysql_perfschema_agent,omitempty"` + + // qan mysql slowlog agent + QANMysqlSlowlogAgent *ChangeAgentOKBodyQANMysqlSlowlogAgent `json:"qan_mysql_slowlog_agent,omitempty"` + + // qan postgresql pgstatements agent + QANPostgresqlPgstatementsAgent *ChangeAgentOKBodyQANPostgresqlPgstatementsAgent `json:"qan_postgresql_pgstatements_agent,omitempty"` + + // qan postgresql pgstatmonitor agent + QANPostgresqlPgstatmonitorAgent *ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgent `json:"qan_postgresql_pgstatmonitor_agent,omitempty"` + + // rds exporter + RDSExporter *ChangeAgentOKBodyRDSExporter `json:"rds_exporter,omitempty"` +} + +// Validate validates this change agent OK body +func (o *ChangeAgentOKBody) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateAzureDatabaseExporter(formats); err != nil { + res = append(res, err) + } + + if err := o.validateExternalExporter(formats); err != nil { + res = append(res, err) + } + + if err := o.validateMongodbExporter(formats); err != nil { + res = append(res, err) + } + + if err := o.validateMysqldExporter(formats); err != nil { + res = append(res, err) + } + + if err := o.validateNodeExporter(formats); err != nil { + res = append(res, err) + } + + if err := o.validatePostgresExporter(formats); err != nil { + res = append(res, err) + } + + if err := o.validateProxysqlExporter(formats); err != nil { + res = append(res, err) + } + + if err := o.validateQANMongodbProfilerAgent(formats); err != nil { + res = append(res, err) + } + + if err := o.validateQANMysqlPerfschemaAgent(formats); err != nil { + res = append(res, err) + } + + if err := o.validateQANMysqlSlowlogAgent(formats); err != nil { + res = append(res, err) + } + + if err := o.validateQANPostgresqlPgstatementsAgent(formats); err != nil { + res = append(res, err) + } + + if err := o.validateQANPostgresqlPgstatmonitorAgent(formats); err != nil { + res = append(res, err) + } + + if err := o.validateRDSExporter(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentOKBody) validateAzureDatabaseExporter(formats strfmt.Registry) error { + if swag.IsZero(o.AzureDatabaseExporter) { // not required + return nil + } + + if o.AzureDatabaseExporter != nil { + if err := o.AzureDatabaseExporter.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "azure_database_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "azure_database_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) validateExternalExporter(formats strfmt.Registry) error { + if swag.IsZero(o.ExternalExporter) { // not required + return nil + } + + if o.ExternalExporter != nil { + if err := o.ExternalExporter.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "external_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "external_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) validateMongodbExporter(formats strfmt.Registry) error { + if swag.IsZero(o.MongodbExporter) { // not required + return nil + } + + if o.MongodbExporter != nil { + if err := o.MongodbExporter.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "mongodb_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "mongodb_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) validateMysqldExporter(formats strfmt.Registry) error { + if swag.IsZero(o.MysqldExporter) { // not required + return nil + } + + if o.MysqldExporter != nil { + if err := o.MysqldExporter.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "mysqld_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "mysqld_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) validateNodeExporter(formats strfmt.Registry) error { + if swag.IsZero(o.NodeExporter) { // not required + return nil + } + + if o.NodeExporter != nil { + if err := o.NodeExporter.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "node_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "node_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) validatePostgresExporter(formats strfmt.Registry) error { + if swag.IsZero(o.PostgresExporter) { // not required + return nil + } + + if o.PostgresExporter != nil { + if err := o.PostgresExporter.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "postgres_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "postgres_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) validateProxysqlExporter(formats strfmt.Registry) error { + if swag.IsZero(o.ProxysqlExporter) { // not required + return nil + } + + if o.ProxysqlExporter != nil { + if err := o.ProxysqlExporter.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "proxysql_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "proxysql_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) validateQANMongodbProfilerAgent(formats strfmt.Registry) error { + if swag.IsZero(o.QANMongodbProfilerAgent) { // not required + return nil + } + + if o.QANMongodbProfilerAgent != nil { + if err := o.QANMongodbProfilerAgent.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "qan_mongodb_profiler_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "qan_mongodb_profiler_agent") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) validateQANMysqlPerfschemaAgent(formats strfmt.Registry) error { + if swag.IsZero(o.QANMysqlPerfschemaAgent) { // not required + return nil + } + + if o.QANMysqlPerfschemaAgent != nil { + if err := o.QANMysqlPerfschemaAgent.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "qan_mysql_perfschema_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "qan_mysql_perfschema_agent") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) validateQANMysqlSlowlogAgent(formats strfmt.Registry) error { + if swag.IsZero(o.QANMysqlSlowlogAgent) { // not required + return nil + } + + if o.QANMysqlSlowlogAgent != nil { + if err := o.QANMysqlSlowlogAgent.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "qan_mysql_slowlog_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "qan_mysql_slowlog_agent") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) validateQANPostgresqlPgstatementsAgent(formats strfmt.Registry) error { + if swag.IsZero(o.QANPostgresqlPgstatementsAgent) { // not required + return nil + } + + if o.QANPostgresqlPgstatementsAgent != nil { + if err := o.QANPostgresqlPgstatementsAgent.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "qan_postgresql_pgstatements_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "qan_postgresql_pgstatements_agent") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) validateQANPostgresqlPgstatmonitorAgent(formats strfmt.Registry) error { + if swag.IsZero(o.QANPostgresqlPgstatmonitorAgent) { // not required + return nil + } + + if o.QANPostgresqlPgstatmonitorAgent != nil { + if err := o.QANPostgresqlPgstatmonitorAgent.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "qan_postgresql_pgstatmonitor_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "qan_postgresql_pgstatmonitor_agent") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) validateRDSExporter(formats strfmt.Registry) error { + if swag.IsZero(o.RDSExporter) { // not required + return nil + } + + if o.RDSExporter != nil { + if err := o.RDSExporter.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "rds_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "rds_exporter") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent OK body based on the context it is used +func (o *ChangeAgentOKBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateAzureDatabaseExporter(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateExternalExporter(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateMongodbExporter(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateMysqldExporter(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateNodeExporter(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidatePostgresExporter(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateProxysqlExporter(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateQANMongodbProfilerAgent(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateQANMysqlPerfschemaAgent(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateQANMysqlSlowlogAgent(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateQANPostgresqlPgstatementsAgent(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateQANPostgresqlPgstatmonitorAgent(ctx, formats); err != nil { + res = append(res, err) + } + + if err := o.contextValidateRDSExporter(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentOKBody) contextValidateAzureDatabaseExporter(ctx context.Context, formats strfmt.Registry) error { + if o.AzureDatabaseExporter != nil { + if err := o.AzureDatabaseExporter.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "azure_database_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "azure_database_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) contextValidateExternalExporter(ctx context.Context, formats strfmt.Registry) error { + if o.ExternalExporter != nil { + if err := o.ExternalExporter.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "external_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "external_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) contextValidateMongodbExporter(ctx context.Context, formats strfmt.Registry) error { + if o.MongodbExporter != nil { + if err := o.MongodbExporter.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "mongodb_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "mongodb_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) contextValidateMysqldExporter(ctx context.Context, formats strfmt.Registry) error { + if o.MysqldExporter != nil { + if err := o.MysqldExporter.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "mysqld_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "mysqld_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) contextValidateNodeExporter(ctx context.Context, formats strfmt.Registry) error { + if o.NodeExporter != nil { + if err := o.NodeExporter.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "node_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "node_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) contextValidatePostgresExporter(ctx context.Context, formats strfmt.Registry) error { + if o.PostgresExporter != nil { + if err := o.PostgresExporter.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "postgres_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "postgres_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) contextValidateProxysqlExporter(ctx context.Context, formats strfmt.Registry) error { + if o.ProxysqlExporter != nil { + if err := o.ProxysqlExporter.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "proxysql_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "proxysql_exporter") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) contextValidateQANMongodbProfilerAgent(ctx context.Context, formats strfmt.Registry) error { + if o.QANMongodbProfilerAgent != nil { + if err := o.QANMongodbProfilerAgent.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "qan_mongodb_profiler_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "qan_mongodb_profiler_agent") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) contextValidateQANMysqlPerfschemaAgent(ctx context.Context, formats strfmt.Registry) error { + if o.QANMysqlPerfschemaAgent != nil { + if err := o.QANMysqlPerfschemaAgent.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "qan_mysql_perfschema_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "qan_mysql_perfschema_agent") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) contextValidateQANMysqlSlowlogAgent(ctx context.Context, formats strfmt.Registry) error { + if o.QANMysqlSlowlogAgent != nil { + if err := o.QANMysqlSlowlogAgent.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "qan_mysql_slowlog_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "qan_mysql_slowlog_agent") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) contextValidateQANPostgresqlPgstatementsAgent(ctx context.Context, formats strfmt.Registry) error { + if o.QANPostgresqlPgstatementsAgent != nil { + if err := o.QANPostgresqlPgstatementsAgent.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "qan_postgresql_pgstatements_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "qan_postgresql_pgstatements_agent") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) contextValidateQANPostgresqlPgstatmonitorAgent(ctx context.Context, formats strfmt.Registry) error { + if o.QANPostgresqlPgstatmonitorAgent != nil { + if err := o.QANPostgresqlPgstatmonitorAgent.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "qan_postgresql_pgstatmonitor_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "qan_postgresql_pgstatmonitor_agent") + } + return err + } + } + + return nil +} + +func (o *ChangeAgentOKBody) contextValidateRDSExporter(ctx context.Context, formats strfmt.Registry) error { + if o.RDSExporter != nil { + if err := o.RDSExporter.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("changeAgentOk" + "." + "rds_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("changeAgentOk" + "." + "rds_exporter") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentOKBody) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentOKBody) UnmarshalBinary(b []byte) error { + var res ChangeAgentOKBody + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentOKBodyAzureDatabaseExporter AzureDatabaseExporter runs on Generic or Container Node and exposes RemoteAzure Node metrics. +swagger:model ChangeAgentOKBodyAzureDatabaseExporter +*/ +type ChangeAgentOKBodyAzureDatabaseExporter struct { + // Unique randomly generated instance identifier. + AgentID string `json:"agent_id,omitempty"` + + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Desired Agent status: enabled (false) or disabled (true). + Disabled bool `json:"disabled,omitempty"` + + // Node identifier. + NodeID string `json:"node_id,omitempty"` + + // Azure database subscription ID. + AzureDatabaseSubscriptionID string `json:"azure_database_subscription_id,omitempty"` + + // Azure database resource type (mysql, maria, postgres) + AzureDatabaseResourceType string `json:"azure_database_resource_type,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // AgentStatus represents actual Agent status. + // + // - AGENT_STATUS_STARTING: Agent is starting. + // - AGENT_STATUS_RUNNING: Agent is running. + // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. + // - AGENT_STATUS_STOPPING: Agent is stopping. + // - AGENT_STATUS_DONE: Agent finished. + // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. + // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] + Status *string `json:"status,omitempty"` + + // Listen port for scraping metrics (the same for several configurations). + ListenPort int64 `json:"listen_port,omitempty"` + + // True if the exporter operates in push metrics mode. + PushMetricsEnabled bool `json:"push_metrics_enabled,omitempty"` + + // Path to exec process. + ProcessExecPath string `json:"process_exec_path,omitempty"` + + // Log level for exporters + // + // - LOG_LEVEL_UNSPECIFIED: Auto + // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] + LogLevel *string `json:"log_level,omitempty"` +} + +// Validate validates this change agent OK body azure database exporter +func (o *ChangeAgentOKBodyAzureDatabaseExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateStatus(formats); err != nil { + res = append(res, err) + } + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var changeAgentOkBodyAzureDatabaseExporterTypeStatusPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyAzureDatabaseExporterTypeStatusPropEnum = append(changeAgentOkBodyAzureDatabaseExporterTypeStatusPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + ChangeAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // ChangeAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + ChangeAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // ChangeAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + ChangeAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // ChangeAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + ChangeAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // ChangeAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + ChangeAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // ChangeAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + ChangeAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // ChangeAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + ChangeAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *ChangeAgentOKBodyAzureDatabaseExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyAzureDatabaseExporterTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyAzureDatabaseExporter) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("changeAgentOk"+"."+"azure_database_exporter"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var changeAgentOkBodyAzureDatabaseExporterTypeLogLevelPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyAzureDatabaseExporterTypeLogLevelPropEnum = append(changeAgentOkBodyAzureDatabaseExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + ChangeAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // ChangeAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + ChangeAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // ChangeAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + ChangeAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // ChangeAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + ChangeAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // ChangeAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + ChangeAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // ChangeAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + ChangeAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *ChangeAgentOKBodyAzureDatabaseExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyAzureDatabaseExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyAzureDatabaseExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("changeAgentOk"+"."+"azure_database_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this change agent OK body azure database exporter based on context it is used +func (o *ChangeAgentOKBodyAzureDatabaseExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentOKBodyAzureDatabaseExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentOKBodyAzureDatabaseExporter) UnmarshalBinary(b []byte) error { + var res ChangeAgentOKBodyAzureDatabaseExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentOKBodyExternalExporter ExternalExporter runs on any Node type, including Remote Node. +swagger:model ChangeAgentOKBodyExternalExporter +*/ +type ChangeAgentOKBodyExternalExporter struct { + // Unique randomly generated instance identifier. + AgentID string `json:"agent_id,omitempty"` + + // Node identifier where this instance runs. + RunsOnNodeID string `json:"runs_on_node_id,omitempty"` + + // If disabled, metrics from this exporter will not be collected. + Disabled bool `json:"disabled,omitempty"` + + // Service identifier. + ServiceID string `json:"service_id,omitempty"` + + // HTTP basic auth username for collecting metrics. + Username string `json:"username,omitempty"` + + // Scheme to generate URI to exporter metrics endpoints. + Scheme string `json:"scheme,omitempty"` + + // Path under which metrics are exposed, used to generate URI. + MetricsPath string `json:"metrics_path,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // Listen port for scraping metrics. + ListenPort int64 `json:"listen_port,omitempty"` + + // True if exporter uses push metrics mode. + PushMetricsEnabled bool `json:"push_metrics_enabled,omitempty"` + + // Path to exec process. + ProcessExecPath string `json:"process_exec_path,omitempty"` +} + +// Validate validates this change agent OK body external exporter +func (o *ChangeAgentOKBodyExternalExporter) Validate(formats strfmt.Registry) error { + return nil +} + +// ContextValidate validates this change agent OK body external exporter based on context it is used +func (o *ChangeAgentOKBodyExternalExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentOKBodyExternalExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentOKBodyExternalExporter) UnmarshalBinary(b []byte) error { + var res ChangeAgentOKBodyExternalExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentOKBodyMongodbExporter MongoDBExporter runs on Generic or Container Node and exposes MongoDB Service metrics. +swagger:model ChangeAgentOKBodyMongodbExporter +*/ +type ChangeAgentOKBodyMongodbExporter struct { + // Unique randomly generated instance identifier. + AgentID string `json:"agent_id,omitempty"` + + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Desired Agent status: enabled (false) or disabled (true). + Disabled bool `json:"disabled,omitempty"` + + // Service identifier. + ServiceID string `json:"service_id,omitempty"` + + // MongoDB username for scraping metrics. + Username string `json:"username,omitempty"` + + // Use TLS for database connections. + TLS bool `json:"tls,omitempty"` + + // Skip TLS certificate and hostname validation. + TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // True if exporter uses push metrics mode. + PushMetricsEnabled bool `json:"push_metrics_enabled,omitempty"` + + // List of disabled collector names. + DisabledCollectors []string `json:"disabled_collectors"` + + // AgentStatus represents actual Agent status. + // + // - AGENT_STATUS_STARTING: Agent is starting. + // - AGENT_STATUS_RUNNING: Agent is running. + // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. + // - AGENT_STATUS_STOPPING: Agent is stopping. + // - AGENT_STATUS_DONE: Agent finished. + // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. + // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] + Status *string `json:"status,omitempty"` + + // Listen port for scraping metrics. + ListenPort int64 `json:"listen_port,omitempty"` + + // List of colletions to get stats from. Can use * + StatsCollections []string `json:"stats_collections"` + + // Collections limit. Only get Databases and collection stats if the total number of collections in the server + // is less than this value. 0: no limit + CollectionsLimit int32 `json:"collections_limit,omitempty"` + + // Enable All collectors. + EnableAllCollectors bool `json:"enable_all_collectors,omitempty"` + + // Path to exec process. + ProcessExecPath string `json:"process_exec_path,omitempty"` + + // Log level for exporters + // + // - LOG_LEVEL_UNSPECIFIED: Auto + // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] + LogLevel *string `json:"log_level,omitempty"` + + // Optionally expose the exporter process on all public interfaces + ExposeExporter bool `json:"expose_exporter,omitempty"` +} + +// Validate validates this change agent OK body mongodb exporter +func (o *ChangeAgentOKBodyMongodbExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateStatus(formats); err != nil { + res = append(res, err) + } + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var changeAgentOkBodyMongodbExporterTypeStatusPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyMongodbExporterTypeStatusPropEnum = append(changeAgentOkBodyMongodbExporterTypeStatusPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyMongodbExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + ChangeAgentOKBodyMongodbExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // ChangeAgentOKBodyMongodbExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + ChangeAgentOKBodyMongodbExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // ChangeAgentOKBodyMongodbExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + ChangeAgentOKBodyMongodbExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // ChangeAgentOKBodyMongodbExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + ChangeAgentOKBodyMongodbExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // ChangeAgentOKBodyMongodbExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + ChangeAgentOKBodyMongodbExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // ChangeAgentOKBodyMongodbExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + ChangeAgentOKBodyMongodbExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // ChangeAgentOKBodyMongodbExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + ChangeAgentOKBodyMongodbExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *ChangeAgentOKBodyMongodbExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyMongodbExporterTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyMongodbExporter) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("changeAgentOk"+"."+"mongodb_exporter"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var changeAgentOkBodyMongodbExporterTypeLogLevelPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyMongodbExporterTypeLogLevelPropEnum = append(changeAgentOkBodyMongodbExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + ChangeAgentOKBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // ChangeAgentOKBodyMongodbExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + ChangeAgentOKBodyMongodbExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // ChangeAgentOKBodyMongodbExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + ChangeAgentOKBodyMongodbExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // ChangeAgentOKBodyMongodbExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + ChangeAgentOKBodyMongodbExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // ChangeAgentOKBodyMongodbExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + ChangeAgentOKBodyMongodbExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // ChangeAgentOKBodyMongodbExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + ChangeAgentOKBodyMongodbExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *ChangeAgentOKBodyMongodbExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyMongodbExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyMongodbExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("changeAgentOk"+"."+"mongodb_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this change agent OK body mongodb exporter based on context it is used +func (o *ChangeAgentOKBodyMongodbExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentOKBodyMongodbExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentOKBodyMongodbExporter) UnmarshalBinary(b []byte) error { + var res ChangeAgentOKBodyMongodbExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentOKBodyMysqldExporter MySQLdExporter runs on Generic or Container Node and exposes MySQL Service metrics. +swagger:model ChangeAgentOKBodyMysqldExporter +*/ +type ChangeAgentOKBodyMysqldExporter struct { + // Unique randomly generated instance identifier. + AgentID string `json:"agent_id,omitempty"` + + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Desired Agent status: enabled (false) or disabled (true). + Disabled bool `json:"disabled,omitempty"` + + // Service identifier. + ServiceID string `json:"service_id,omitempty"` + + // MySQL username for scraping metrics. + Username string `json:"username,omitempty"` + + // Use TLS for database connections. + TLS bool `json:"tls,omitempty"` + + // Skip TLS certificate and hostname validation. + TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` + + // Certificate Authority certificate chain. + TLSCa string `json:"tls_ca,omitempty"` + + // Client certificate. + TLSCert string `json:"tls_cert,omitempty"` + + // Password for decrypting tls_cert. + TLSKey string `json:"tls_key,omitempty"` + + // Tablestats group collectors are disabled if there are more than that number of tables. + // 0 means tablestats group collectors are always enabled (no limit). + // Negative value means tablestats group collectors are always disabled. + TablestatsGroupTableLimit int32 `json:"tablestats_group_table_limit,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // True if exporter uses push metrics mode. + PushMetricsEnabled bool `json:"push_metrics_enabled,omitempty"` + + // List of disabled collector names. + DisabledCollectors []string `json:"disabled_collectors"` + + // Actual table count at the moment of adding. + TableCount int32 `json:"table_count,omitempty"` + + // AgentStatus represents actual Agent status. + // + // - AGENT_STATUS_STARTING: Agent is starting. + // - AGENT_STATUS_RUNNING: Agent is running. + // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. + // - AGENT_STATUS_STOPPING: Agent is stopping. + // - AGENT_STATUS_DONE: Agent finished. + // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. + // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] + Status *string `json:"status,omitempty"` + + // Listen port for scraping metrics. + ListenPort int64 `json:"listen_port,omitempty"` + + // True if tablestats group collectors are currently disabled. + TablestatsGroupDisabled bool `json:"tablestats_group_disabled,omitempty"` + + // Path to exec process. + ProcessExecPath string `json:"process_exec_path,omitempty"` + + // Log level for exporters + // + // - LOG_LEVEL_UNSPECIFIED: Auto + // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] + LogLevel *string `json:"log_level,omitempty"` + + // Optionally expose the exporter process on all public interfaces + ExposeExporter bool `json:"expose_exporter,omitempty"` +} + +// Validate validates this change agent OK body mysqld exporter +func (o *ChangeAgentOKBodyMysqldExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateStatus(formats); err != nil { + res = append(res, err) + } + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var changeAgentOkBodyMysqldExporterTypeStatusPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyMysqldExporterTypeStatusPropEnum = append(changeAgentOkBodyMysqldExporterTypeStatusPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyMysqldExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + ChangeAgentOKBodyMysqldExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // ChangeAgentOKBodyMysqldExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + ChangeAgentOKBodyMysqldExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // ChangeAgentOKBodyMysqldExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + ChangeAgentOKBodyMysqldExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // ChangeAgentOKBodyMysqldExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + ChangeAgentOKBodyMysqldExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // ChangeAgentOKBodyMysqldExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + ChangeAgentOKBodyMysqldExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // ChangeAgentOKBodyMysqldExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + ChangeAgentOKBodyMysqldExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // ChangeAgentOKBodyMysqldExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + ChangeAgentOKBodyMysqldExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *ChangeAgentOKBodyMysqldExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyMysqldExporterTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyMysqldExporter) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("changeAgentOk"+"."+"mysqld_exporter"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var changeAgentOkBodyMysqldExporterTypeLogLevelPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyMysqldExporterTypeLogLevelPropEnum = append(changeAgentOkBodyMysqldExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + ChangeAgentOKBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // ChangeAgentOKBodyMysqldExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + ChangeAgentOKBodyMysqldExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // ChangeAgentOKBodyMysqldExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + ChangeAgentOKBodyMysqldExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // ChangeAgentOKBodyMysqldExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + ChangeAgentOKBodyMysqldExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // ChangeAgentOKBodyMysqldExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + ChangeAgentOKBodyMysqldExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // ChangeAgentOKBodyMysqldExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + ChangeAgentOKBodyMysqldExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *ChangeAgentOKBodyMysqldExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyMysqldExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyMysqldExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("changeAgentOk"+"."+"mysqld_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this change agent OK body mysqld exporter based on context it is used +func (o *ChangeAgentOKBodyMysqldExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentOKBodyMysqldExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentOKBodyMysqldExporter) UnmarshalBinary(b []byte) error { + var res ChangeAgentOKBodyMysqldExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentOKBodyNodeExporter NodeExporter runs on Generic or Container Node and exposes its metrics. +swagger:model ChangeAgentOKBodyNodeExporter +*/ +type ChangeAgentOKBodyNodeExporter struct { + // Unique randomly generated instance identifier. + AgentID string `json:"agent_id,omitempty"` + + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Desired Agent status: enabled (false) or disabled (true). + Disabled bool `json:"disabled,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // True if exporter uses push metrics mode. + PushMetricsEnabled bool `json:"push_metrics_enabled,omitempty"` + + // List of disabled collector names. + DisabledCollectors []string `json:"disabled_collectors"` + + // AgentStatus represents actual Agent status. + // + // - AGENT_STATUS_STARTING: Agent is starting. + // - AGENT_STATUS_RUNNING: Agent is running. + // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. + // - AGENT_STATUS_STOPPING: Agent is stopping. + // - AGENT_STATUS_DONE: Agent finished. + // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. + // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] + Status *string `json:"status,omitempty"` + + // Listen port for scraping metrics. + ListenPort int64 `json:"listen_port,omitempty"` + + // Path to exec process. + ProcessExecPath string `json:"process_exec_path,omitempty"` + + // Log level for exporters + // + // - LOG_LEVEL_UNSPECIFIED: Auto + // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] + LogLevel *string `json:"log_level,omitempty"` + + // Optionally expose the exporter process on all public interfaces + ExposeExporter bool `json:"expose_exporter,omitempty"` +} + +// Validate validates this change agent OK body node exporter +func (o *ChangeAgentOKBodyNodeExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateStatus(formats); err != nil { + res = append(res, err) + } + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var changeAgentOkBodyNodeExporterTypeStatusPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyNodeExporterTypeStatusPropEnum = append(changeAgentOkBodyNodeExporterTypeStatusPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyNodeExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + ChangeAgentOKBodyNodeExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // ChangeAgentOKBodyNodeExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + ChangeAgentOKBodyNodeExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // ChangeAgentOKBodyNodeExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + ChangeAgentOKBodyNodeExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // ChangeAgentOKBodyNodeExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + ChangeAgentOKBodyNodeExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // ChangeAgentOKBodyNodeExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + ChangeAgentOKBodyNodeExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // ChangeAgentOKBodyNodeExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + ChangeAgentOKBodyNodeExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // ChangeAgentOKBodyNodeExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + ChangeAgentOKBodyNodeExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *ChangeAgentOKBodyNodeExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyNodeExporterTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyNodeExporter) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("changeAgentOk"+"."+"node_exporter"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var changeAgentOkBodyNodeExporterTypeLogLevelPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyNodeExporterTypeLogLevelPropEnum = append(changeAgentOkBodyNodeExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + ChangeAgentOKBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // ChangeAgentOKBodyNodeExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + ChangeAgentOKBodyNodeExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // ChangeAgentOKBodyNodeExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + ChangeAgentOKBodyNodeExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // ChangeAgentOKBodyNodeExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + ChangeAgentOKBodyNodeExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // ChangeAgentOKBodyNodeExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + ChangeAgentOKBodyNodeExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // ChangeAgentOKBodyNodeExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + ChangeAgentOKBodyNodeExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *ChangeAgentOKBodyNodeExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyNodeExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyNodeExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("changeAgentOk"+"."+"node_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this change agent OK body node exporter based on context it is used +func (o *ChangeAgentOKBodyNodeExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentOKBodyNodeExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentOKBodyNodeExporter) UnmarshalBinary(b []byte) error { + var res ChangeAgentOKBodyNodeExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentOKBodyPostgresExporter PostgresExporter runs on Generic or Container Node and exposes PostgreSQL Service metrics. +swagger:model ChangeAgentOKBodyPostgresExporter +*/ +type ChangeAgentOKBodyPostgresExporter struct { + // Unique randomly generated instance identifier. + AgentID string `json:"agent_id,omitempty"` + + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Desired Agent status: enabled (false) or disabled (true). + Disabled bool `json:"disabled,omitempty"` + + // Service identifier. + ServiceID string `json:"service_id,omitempty"` + + // PostgreSQL username for scraping metrics. + Username string `json:"username,omitempty"` + + // Use TLS for database connections. + TLS bool `json:"tls,omitempty"` + + // Skip TLS certificate and hostname validation. Uses sslmode=required instead of verify-full. + TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // True if exporter uses push metrics mode. + PushMetricsEnabled bool `json:"push_metrics_enabled,omitempty"` + + // List of disabled collector names. + DisabledCollectors []string `json:"disabled_collectors"` + + // AgentStatus represents actual Agent status. + // + // - AGENT_STATUS_STARTING: Agent is starting. + // - AGENT_STATUS_RUNNING: Agent is running. + // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. + // - AGENT_STATUS_STOPPING: Agent is stopping. + // - AGENT_STATUS_DONE: Agent finished. + // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. + // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] + Status *string `json:"status,omitempty"` + + // Listen port for scraping metrics. + ListenPort int64 `json:"listen_port,omitempty"` + + // Path to exec process. + ProcessExecPath string `json:"process_exec_path,omitempty"` + + // Log level for exporters + // + // - LOG_LEVEL_UNSPECIFIED: Auto + // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] + LogLevel *string `json:"log_level,omitempty"` + + // Limit of databases for auto-discovery. + AutoDiscoveryLimit int32 `json:"auto_discovery_limit,omitempty"` + + // Optionally expose the exporter process on all public interfaces + ExposeExporter bool `json:"expose_exporter,omitempty"` +} + +// Validate validates this change agent OK body postgres exporter +func (o *ChangeAgentOKBodyPostgresExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateStatus(formats); err != nil { + res = append(res, err) + } + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var changeAgentOkBodyPostgresExporterTypeStatusPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyPostgresExporterTypeStatusPropEnum = append(changeAgentOkBodyPostgresExporterTypeStatusPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyPostgresExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + ChangeAgentOKBodyPostgresExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // ChangeAgentOKBodyPostgresExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + ChangeAgentOKBodyPostgresExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // ChangeAgentOKBodyPostgresExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + ChangeAgentOKBodyPostgresExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // ChangeAgentOKBodyPostgresExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + ChangeAgentOKBodyPostgresExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // ChangeAgentOKBodyPostgresExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + ChangeAgentOKBodyPostgresExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // ChangeAgentOKBodyPostgresExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + ChangeAgentOKBodyPostgresExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // ChangeAgentOKBodyPostgresExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + ChangeAgentOKBodyPostgresExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *ChangeAgentOKBodyPostgresExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyPostgresExporterTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyPostgresExporter) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("changeAgentOk"+"."+"postgres_exporter"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var changeAgentOkBodyPostgresExporterTypeLogLevelPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyPostgresExporterTypeLogLevelPropEnum = append(changeAgentOkBodyPostgresExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + ChangeAgentOKBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // ChangeAgentOKBodyPostgresExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + ChangeAgentOKBodyPostgresExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // ChangeAgentOKBodyPostgresExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + ChangeAgentOKBodyPostgresExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // ChangeAgentOKBodyPostgresExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + ChangeAgentOKBodyPostgresExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // ChangeAgentOKBodyPostgresExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + ChangeAgentOKBodyPostgresExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // ChangeAgentOKBodyPostgresExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + ChangeAgentOKBodyPostgresExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *ChangeAgentOKBodyPostgresExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyPostgresExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyPostgresExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("changeAgentOk"+"."+"postgres_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this change agent OK body postgres exporter based on context it is used +func (o *ChangeAgentOKBodyPostgresExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentOKBodyPostgresExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentOKBodyPostgresExporter) UnmarshalBinary(b []byte) error { + var res ChangeAgentOKBodyPostgresExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentOKBodyProxysqlExporter ProxySQLExporter runs on Generic or Container Node and exposes ProxySQL Service metrics. +swagger:model ChangeAgentOKBodyProxysqlExporter +*/ +type ChangeAgentOKBodyProxysqlExporter struct { + // Unique randomly generated instance identifier. + AgentID string `json:"agent_id,omitempty"` + + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Desired Agent status: enabled (false) or disabled (true). + Disabled bool `json:"disabled,omitempty"` + + // Service identifier. + ServiceID string `json:"service_id,omitempty"` + + // ProxySQL username for scraping metrics. + Username string `json:"username,omitempty"` + + // Use TLS for database connections. + TLS bool `json:"tls,omitempty"` + + // Skip TLS certificate and hostname validation. + TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // True if exporter uses push metrics mode. + PushMetricsEnabled bool `json:"push_metrics_enabled,omitempty"` + + // List of disabled collector names. + DisabledCollectors []string `json:"disabled_collectors"` + + // AgentStatus represents actual Agent status. + // + // - AGENT_STATUS_STARTING: Agent is starting. + // - AGENT_STATUS_RUNNING: Agent is running. + // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. + // - AGENT_STATUS_STOPPING: Agent is stopping. + // - AGENT_STATUS_DONE: Agent finished. + // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. + // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] + Status *string `json:"status,omitempty"` + + // Listen port for scraping metrics. + ListenPort int64 `json:"listen_port,omitempty"` + + // Path to exec process. + ProcessExecPath string `json:"process_exec_path,omitempty"` + + // Log level for exporters + // + // - LOG_LEVEL_UNSPECIFIED: Auto + // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] + LogLevel *string `json:"log_level,omitempty"` + + // Optionally expose the exporter process on all public interfaces + ExposeExporter bool `json:"expose_exporter,omitempty"` +} + +// Validate validates this change agent OK body proxysql exporter +func (o *ChangeAgentOKBodyProxysqlExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateStatus(formats); err != nil { + res = append(res, err) + } + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var changeAgentOkBodyProxysqlExporterTypeStatusPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyProxysqlExporterTypeStatusPropEnum = append(changeAgentOkBodyProxysqlExporterTypeStatusPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyProxysqlExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + ChangeAgentOKBodyProxysqlExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // ChangeAgentOKBodyProxysqlExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + ChangeAgentOKBodyProxysqlExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // ChangeAgentOKBodyProxysqlExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + ChangeAgentOKBodyProxysqlExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // ChangeAgentOKBodyProxysqlExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + ChangeAgentOKBodyProxysqlExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // ChangeAgentOKBodyProxysqlExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + ChangeAgentOKBodyProxysqlExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // ChangeAgentOKBodyProxysqlExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + ChangeAgentOKBodyProxysqlExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // ChangeAgentOKBodyProxysqlExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + ChangeAgentOKBodyProxysqlExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *ChangeAgentOKBodyProxysqlExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyProxysqlExporterTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyProxysqlExporter) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("changeAgentOk"+"."+"proxysql_exporter"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var changeAgentOkBodyProxysqlExporterTypeLogLevelPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyProxysqlExporterTypeLogLevelPropEnum = append(changeAgentOkBodyProxysqlExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + ChangeAgentOKBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // ChangeAgentOKBodyProxysqlExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + ChangeAgentOKBodyProxysqlExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // ChangeAgentOKBodyProxysqlExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + ChangeAgentOKBodyProxysqlExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // ChangeAgentOKBodyProxysqlExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + ChangeAgentOKBodyProxysqlExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // ChangeAgentOKBodyProxysqlExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + ChangeAgentOKBodyProxysqlExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // ChangeAgentOKBodyProxysqlExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + ChangeAgentOKBodyProxysqlExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *ChangeAgentOKBodyProxysqlExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyProxysqlExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyProxysqlExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("changeAgentOk"+"."+"proxysql_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this change agent OK body proxysql exporter based on context it is used +func (o *ChangeAgentOKBodyProxysqlExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentOKBodyProxysqlExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentOKBodyProxysqlExporter) UnmarshalBinary(b []byte) error { + var res ChangeAgentOKBodyProxysqlExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentOKBodyQANMongodbProfilerAgent QANMongoDBProfilerAgent runs within pmm-agent and sends MongoDB Query Analytics data to the PMM Server. +swagger:model ChangeAgentOKBodyQANMongodbProfilerAgent +*/ +type ChangeAgentOKBodyQANMongodbProfilerAgent struct { + // Unique randomly generated instance identifier. + AgentID string `json:"agent_id,omitempty"` + + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Desired Agent status: enabled (false) or disabled (true). + Disabled bool `json:"disabled,omitempty"` + + // Service identifier. + ServiceID string `json:"service_id,omitempty"` + + // MongoDB username for getting profiler data. + Username string `json:"username,omitempty"` + + // Use TLS for database connections. + TLS bool `json:"tls,omitempty"` + + // Skip TLS certificate and hostname validation. + TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` + + // Limit query length in QAN (default: server-defined; -1: no limit). + MaxQueryLength int32 `json:"max_query_length,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // AgentStatus represents actual Agent status. + // + // - AGENT_STATUS_STARTING: Agent is starting. + // - AGENT_STATUS_RUNNING: Agent is running. + // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. + // - AGENT_STATUS_STOPPING: Agent is stopping. + // - AGENT_STATUS_DONE: Agent finished. + // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. + // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] + Status *string `json:"status,omitempty"` + + // Path to exec process. + ProcessExecPath string `json:"process_exec_path,omitempty"` + + // Log level for exporters + // + // - LOG_LEVEL_UNSPECIFIED: Auto + // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] + LogLevel *string `json:"log_level,omitempty"` +} + +// Validate validates this change agent OK body QAN mongodb profiler agent +func (o *ChangeAgentOKBodyQANMongodbProfilerAgent) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateStatus(formats); err != nil { + res = append(res, err) + } + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var changeAgentOkBodyQanMongodbProfilerAgentTypeStatusPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyQanMongodbProfilerAgentTypeStatusPropEnum = append(changeAgentOkBodyQanMongodbProfilerAgentTypeStatusPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + ChangeAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // ChangeAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + ChangeAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // ChangeAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + ChangeAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // ChangeAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + ChangeAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // ChangeAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + ChangeAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // ChangeAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + ChangeAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // ChangeAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + ChangeAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *ChangeAgentOKBodyQANMongodbProfilerAgent) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyQanMongodbProfilerAgentTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyQANMongodbProfilerAgent) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("changeAgentOk"+"."+"qan_mongodb_profiler_agent"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var changeAgentOkBodyQanMongodbProfilerAgentTypeLogLevelPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyQanMongodbProfilerAgentTypeLogLevelPropEnum = append(changeAgentOkBodyQanMongodbProfilerAgentTypeLogLevelPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + ChangeAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // ChangeAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + ChangeAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // ChangeAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + ChangeAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // ChangeAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + ChangeAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // ChangeAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + ChangeAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // ChangeAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + ChangeAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *ChangeAgentOKBodyQANMongodbProfilerAgent) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyQanMongodbProfilerAgentTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyQANMongodbProfilerAgent) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("changeAgentOk"+"."+"qan_mongodb_profiler_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this change agent OK body QAN mongodb profiler agent based on context it is used +func (o *ChangeAgentOKBodyQANMongodbProfilerAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentOKBodyQANMongodbProfilerAgent) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentOKBodyQANMongodbProfilerAgent) UnmarshalBinary(b []byte) error { + var res ChangeAgentOKBodyQANMongodbProfilerAgent + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentOKBodyQANMysqlPerfschemaAgent QANMySQLPerfSchemaAgent runs within pmm-agent and sends MySQL Query Analytics data to the PMM Server. +swagger:model ChangeAgentOKBodyQANMysqlPerfschemaAgent +*/ +type ChangeAgentOKBodyQANMysqlPerfschemaAgent struct { + // Unique randomly generated instance identifier. + AgentID string `json:"agent_id,omitempty"` + + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Desired Agent status: enabled (false) or disabled (true). + Disabled bool `json:"disabled,omitempty"` + + // Service identifier. + ServiceID string `json:"service_id,omitempty"` + + // MySQL username for getting performance data. + Username string `json:"username,omitempty"` + + // Use TLS for database connections. + TLS bool `json:"tls,omitempty"` + + // Skip TLS certificate and hostname validation. + TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` + + // Certificate Authority certificate chain. + TLSCa string `json:"tls_ca,omitempty"` + + // Client certificate. + TLSCert string `json:"tls_cert,omitempty"` + + // Password for decrypting tls_cert. + TLSKey string `json:"tls_key,omitempty"` + + // Disable parsing comments from queries and showing them in QAN. + DisableCommentsParsing bool `json:"disable_comments_parsing,omitempty"` + + // Limit query length in QAN (default: server-defined; -1: no limit). + MaxQueryLength int32 `json:"max_query_length,omitempty"` + + // True if query examples are disabled. + QueryExamplesDisabled bool `json:"query_examples_disabled,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // AgentStatus represents actual Agent status. + // + // - AGENT_STATUS_STARTING: Agent is starting. + // - AGENT_STATUS_RUNNING: Agent is running. + // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. + // - AGENT_STATUS_STOPPING: Agent is stopping. + // - AGENT_STATUS_DONE: Agent finished. + // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. + // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] + Status *string `json:"status,omitempty"` + + // Path to exec process. + ProcessExecPath string `json:"process_exec_path,omitempty"` + + // Log level for exporters + // + // - LOG_LEVEL_UNSPECIFIED: Auto + // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] + LogLevel *string `json:"log_level,omitempty"` +} + +// Validate validates this change agent OK body QAN mysql perfschema agent +func (o *ChangeAgentOKBodyQANMysqlPerfschemaAgent) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateStatus(formats); err != nil { + res = append(res, err) + } + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var changeAgentOkBodyQanMysqlPerfschemaAgentTypeStatusPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyQanMysqlPerfschemaAgentTypeStatusPropEnum = append(changeAgentOkBodyQanMysqlPerfschemaAgentTypeStatusPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + ChangeAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // ChangeAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + ChangeAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // ChangeAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + ChangeAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // ChangeAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + ChangeAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // ChangeAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + ChangeAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // ChangeAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + ChangeAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // ChangeAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + ChangeAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *ChangeAgentOKBodyQANMysqlPerfschemaAgent) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyQanMysqlPerfschemaAgentTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyQANMysqlPerfschemaAgent) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("changeAgentOk"+"."+"qan_mysql_perfschema_agent"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var changeAgentOkBodyQanMysqlPerfschemaAgentTypeLogLevelPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyQanMysqlPerfschemaAgentTypeLogLevelPropEnum = append(changeAgentOkBodyQanMysqlPerfschemaAgentTypeLogLevelPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + ChangeAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // ChangeAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + ChangeAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // ChangeAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + ChangeAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // ChangeAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + ChangeAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // ChangeAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + ChangeAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // ChangeAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + ChangeAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *ChangeAgentOKBodyQANMysqlPerfschemaAgent) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyQanMysqlPerfschemaAgentTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyQANMysqlPerfschemaAgent) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("changeAgentOk"+"."+"qan_mysql_perfschema_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this change agent OK body QAN mysql perfschema agent based on context it is used +func (o *ChangeAgentOKBodyQANMysqlPerfschemaAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentOKBodyQANMysqlPerfschemaAgent) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentOKBodyQANMysqlPerfschemaAgent) UnmarshalBinary(b []byte) error { + var res ChangeAgentOKBodyQANMysqlPerfschemaAgent + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentOKBodyQANMysqlSlowlogAgent QANMySQLSlowlogAgent runs within pmm-agent and sends MySQL Query Analytics data to the PMM Server. +swagger:model ChangeAgentOKBodyQANMysqlSlowlogAgent +*/ +type ChangeAgentOKBodyQANMysqlSlowlogAgent struct { + // Unique randomly generated instance identifier. + AgentID string `json:"agent_id,omitempty"` + + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Desired Agent status: enabled (false) or disabled (true). + Disabled bool `json:"disabled,omitempty"` + + // Service identifier. + ServiceID string `json:"service_id,omitempty"` + + // MySQL username for getting performance data. + Username string `json:"username,omitempty"` + + // Use TLS for database connections. + TLS bool `json:"tls,omitempty"` + + // Skip TLS certificate and hostname validation. + TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` + + // Certificate Authority certificate chain. + TLSCa string `json:"tls_ca,omitempty"` + + // Client certificate. + TLSCert string `json:"tls_cert,omitempty"` + + // Password for decrypting tls_cert. + TLSKey string `json:"tls_key,omitempty"` + + // Disable parsing comments from queries and showing them in QAN. + DisableCommentsParsing bool `json:"disable_comments_parsing,omitempty"` + + // Limit query length in QAN (default: server-defined; -1: no limit) + MaxQueryLength int32 `json:"max_query_length,omitempty"` + + // True if query examples are disabled. + QueryExamplesDisabled bool `json:"query_examples_disabled,omitempty"` + + // Slowlog file is rotated at this size if > 0. + MaxSlowlogFileSize string `json:"max_slowlog_file_size,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // AgentStatus represents actual Agent status. + // + // - AGENT_STATUS_STARTING: Agent is starting. + // - AGENT_STATUS_RUNNING: Agent is running. + // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. + // - AGENT_STATUS_STOPPING: Agent is stopping. + // - AGENT_STATUS_DONE: Agent finished. + // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. + // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] + Status *string `json:"status,omitempty"` + + // mod tidy + ProcessExecPath string `json:"process_exec_path,omitempty"` + + // Log level for exporters + // + // - LOG_LEVEL_UNSPECIFIED: Auto + // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] + LogLevel *string `json:"log_level,omitempty"` +} + +// Validate validates this change agent OK body QAN mysql slowlog agent +func (o *ChangeAgentOKBodyQANMysqlSlowlogAgent) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateStatus(formats); err != nil { + res = append(res, err) + } + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var changeAgentOkBodyQanMysqlSlowlogAgentTypeStatusPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyQanMysqlSlowlogAgentTypeStatusPropEnum = append(changeAgentOkBodyQanMysqlSlowlogAgentTypeStatusPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + ChangeAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // ChangeAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + ChangeAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // ChangeAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + ChangeAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // ChangeAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + ChangeAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // ChangeAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + ChangeAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // ChangeAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + ChangeAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // ChangeAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + ChangeAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *ChangeAgentOKBodyQANMysqlSlowlogAgent) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyQanMysqlSlowlogAgentTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyQANMysqlSlowlogAgent) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("changeAgentOk"+"."+"qan_mysql_slowlog_agent"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var changeAgentOkBodyQanMysqlSlowlogAgentTypeLogLevelPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyQanMysqlSlowlogAgentTypeLogLevelPropEnum = append(changeAgentOkBodyQanMysqlSlowlogAgentTypeLogLevelPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + ChangeAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // ChangeAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + ChangeAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // ChangeAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + ChangeAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // ChangeAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + ChangeAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // ChangeAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + ChangeAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // ChangeAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + ChangeAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *ChangeAgentOKBodyQANMysqlSlowlogAgent) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyQanMysqlSlowlogAgentTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyQANMysqlSlowlogAgent) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("changeAgentOk"+"."+"qan_mysql_slowlog_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this change agent OK body QAN mysql slowlog agent based on context it is used +func (o *ChangeAgentOKBodyQANMysqlSlowlogAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentOKBodyQANMysqlSlowlogAgent) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentOKBodyQANMysqlSlowlogAgent) UnmarshalBinary(b []byte) error { + var res ChangeAgentOKBodyQANMysqlSlowlogAgent + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentOKBodyQANPostgresqlPgstatementsAgent QANPostgreSQLPgStatementsAgent runs within pmm-agent and sends PostgreSQL Query Analytics data to the PMM Server. +swagger:model ChangeAgentOKBodyQANPostgresqlPgstatementsAgent +*/ +type ChangeAgentOKBodyQANPostgresqlPgstatementsAgent struct { + // Unique randomly generated instance identifier. + AgentID string `json:"agent_id,omitempty"` + + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Desired Agent status: enabled (false) or disabled (true). + Disabled bool `json:"disabled,omitempty"` + + // Service identifier. + ServiceID string `json:"service_id,omitempty"` + + // PostgreSQL username for getting pg stat statements data. + Username string `json:"username,omitempty"` + + // Disable parsing comments from queries and showing them in QAN. + DisableCommentsParsing bool `json:"disable_comments_parsing,omitempty"` + + // Limit query length in QAN (default: server-defined; -1: no limit). + MaxQueryLength int32 `json:"max_query_length,omitempty"` + + // Use TLS for database connections. + TLS bool `json:"tls,omitempty"` + + // Skip TLS certificate and hostname validation. + TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // AgentStatus represents actual Agent status. + // + // - AGENT_STATUS_STARTING: Agent is starting. + // - AGENT_STATUS_RUNNING: Agent is running. + // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. + // - AGENT_STATUS_STOPPING: Agent is stopping. + // - AGENT_STATUS_DONE: Agent finished. + // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. + // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] + Status *string `json:"status,omitempty"` + + // Path to exec process. + ProcessExecPath string `json:"process_exec_path,omitempty"` + + // Log level for exporters + // + // - LOG_LEVEL_UNSPECIFIED: Auto + // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] + LogLevel *string `json:"log_level,omitempty"` +} + +// Validate validates this change agent OK body QAN postgresql pgstatements agent +func (o *ChangeAgentOKBodyQANPostgresqlPgstatementsAgent) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateStatus(formats); err != nil { + res = append(res, err) + } + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var changeAgentOkBodyQanPostgresqlPgstatementsAgentTypeStatusPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyQanPostgresqlPgstatementsAgentTypeStatusPropEnum = append(changeAgentOkBodyQanPostgresqlPgstatementsAgentTypeStatusPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + ChangeAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // ChangeAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + ChangeAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // ChangeAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + ChangeAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // ChangeAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + ChangeAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // ChangeAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + ChangeAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // ChangeAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + ChangeAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // ChangeAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + ChangeAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *ChangeAgentOKBodyQANPostgresqlPgstatementsAgent) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyQanPostgresqlPgstatementsAgentTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyQANPostgresqlPgstatementsAgent) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("changeAgentOk"+"."+"qan_postgresql_pgstatements_agent"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var changeAgentOkBodyQanPostgresqlPgstatementsAgentTypeLogLevelPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyQanPostgresqlPgstatementsAgentTypeLogLevelPropEnum = append(changeAgentOkBodyQanPostgresqlPgstatementsAgentTypeLogLevelPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + ChangeAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // ChangeAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + ChangeAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // ChangeAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + ChangeAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // ChangeAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + ChangeAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // ChangeAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + ChangeAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // ChangeAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + ChangeAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *ChangeAgentOKBodyQANPostgresqlPgstatementsAgent) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyQanPostgresqlPgstatementsAgentTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyQANPostgresqlPgstatementsAgent) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("changeAgentOk"+"."+"qan_postgresql_pgstatements_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this change agent OK body QAN postgresql pgstatements agent based on context it is used +func (o *ChangeAgentOKBodyQANPostgresqlPgstatementsAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentOKBodyQANPostgresqlPgstatementsAgent) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentOKBodyQANPostgresqlPgstatementsAgent) UnmarshalBinary(b []byte) error { + var res ChangeAgentOKBodyQANPostgresqlPgstatementsAgent + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgent QANPostgreSQLPgStatMonitorAgent runs within pmm-agent and sends PostgreSQL Query Analytics data to the PMM Server. +swagger:model ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgent +*/ +type ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgent struct { + // Unique randomly generated instance identifier. + AgentID string `json:"agent_id,omitempty"` + + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Desired Agent status: enabled (false) or disabled (true). + Disabled bool `json:"disabled,omitempty"` + + // Service identifier. + ServiceID string `json:"service_id,omitempty"` + + // PostgreSQL username for getting pg stat monitor data. + Username string `json:"username,omitempty"` + + // Use TLS for database connections. + TLS bool `json:"tls,omitempty"` + + // Skip TLS certificate and hostname validation. + TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` + + // Disable parsing comments from queries and showing them in QAN. + DisableCommentsParsing bool `json:"disable_comments_parsing,omitempty"` + + // Limit query length in QAN (default: server-defined; -1: no limit). + MaxQueryLength int32 `json:"max_query_length,omitempty"` + + // True if query examples are disabled. + QueryExamplesDisabled bool `json:"query_examples_disabled,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // AgentStatus represents actual Agent status. + // + // - AGENT_STATUS_STARTING: Agent is starting. + // - AGENT_STATUS_RUNNING: Agent is running. + // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. + // - AGENT_STATUS_STOPPING: Agent is stopping. + // - AGENT_STATUS_DONE: Agent finished. + // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. + // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] + Status *string `json:"status,omitempty"` + + // Path to exec process. + ProcessExecPath string `json:"process_exec_path,omitempty"` + + // Log level for exporters + // + // - LOG_LEVEL_UNSPECIFIED: Auto + // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] + LogLevel *string `json:"log_level,omitempty"` +} + +// Validate validates this change agent OK body QAN postgresql pgstatmonitor agent +func (o *ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgent) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateStatus(formats); err != nil { + res = append(res, err) + } + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var changeAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeStatusPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeStatusPropEnum = append(changeAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeStatusPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgent) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgent) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("changeAgentOk"+"."+"qan_postgresql_pgstatmonitor_agent"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var changeAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeLogLevelPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeLogLevelPropEnum = append(changeAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeLogLevelPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgent) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgent) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("changeAgentOk"+"."+"qan_postgresql_pgstatmonitor_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this change agent OK body QAN postgresql pgstatmonitor agent based on context it is used +func (o *ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgent) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgent) UnmarshalBinary(b []byte) error { + var res ChangeAgentOKBodyQANPostgresqlPgstatmonitorAgent + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentOKBodyRDSExporter RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node metrics. +swagger:model ChangeAgentOKBodyRDSExporter +*/ +type ChangeAgentOKBodyRDSExporter struct { + // Unique randomly generated instance identifier. + AgentID string `json:"agent_id,omitempty"` + + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Desired Agent status: enabled (false) or disabled (true). + Disabled bool `json:"disabled,omitempty"` + + // Node identifier. + NodeID string `json:"node_id,omitempty"` + + // AWS Access Key. + AWSAccessKey string `json:"aws_access_key,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // AgentStatus represents actual Agent status. + // + // - AGENT_STATUS_STARTING: Agent is starting. + // - AGENT_STATUS_RUNNING: Agent is running. + // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. + // - AGENT_STATUS_STOPPING: Agent is stopping. + // - AGENT_STATUS_DONE: Agent finished. + // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. + // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] + Status *string `json:"status,omitempty"` + + // Listen port for scraping metrics (the same for several configurations). + ListenPort int64 `json:"listen_port,omitempty"` + + // Basic metrics are disabled. + BasicMetricsDisabled bool `json:"basic_metrics_disabled,omitempty"` + + // Enhanced metrics are disabled. + EnhancedMetricsDisabled bool `json:"enhanced_metrics_disabled,omitempty"` + + // True if exporter uses push metrics mode. + PushMetricsEnabled bool `json:"push_metrics_enabled,omitempty"` + + // Path to exec process. + ProcessExecPath string `json:"process_exec_path,omitempty"` + + // Log level for exporters + // + // - LOG_LEVEL_UNSPECIFIED: Auto + // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] + LogLevel *string `json:"log_level,omitempty"` + + // Limit of databases for auto-discovery. + AutoDiscoveryLimit int32 `json:"auto_discovery_limit,omitempty"` +} + +// Validate validates this change agent OK body RDS exporter +func (o *ChangeAgentOKBodyRDSExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateStatus(formats); err != nil { + res = append(res, err) + } + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var changeAgentOkBodyRdsExporterTypeStatusPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyRdsExporterTypeStatusPropEnum = append(changeAgentOkBodyRdsExporterTypeStatusPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyRDSExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + ChangeAgentOKBodyRDSExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // ChangeAgentOKBodyRDSExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + ChangeAgentOKBodyRDSExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // ChangeAgentOKBodyRDSExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + ChangeAgentOKBodyRDSExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // ChangeAgentOKBodyRDSExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + ChangeAgentOKBodyRDSExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // ChangeAgentOKBodyRDSExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + ChangeAgentOKBodyRDSExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // ChangeAgentOKBodyRDSExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + ChangeAgentOKBodyRDSExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // ChangeAgentOKBodyRDSExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + ChangeAgentOKBodyRDSExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *ChangeAgentOKBodyRDSExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyRdsExporterTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyRDSExporter) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("changeAgentOk"+"."+"rds_exporter"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var changeAgentOkBodyRdsExporterTypeLogLevelPropEnum []interface{} + +func init() { + var res []string + if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { + panic(err) + } + for _, v := range res { + changeAgentOkBodyRdsExporterTypeLogLevelPropEnum = append(changeAgentOkBodyRdsExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // ChangeAgentOKBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + ChangeAgentOKBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // ChangeAgentOKBodyRDSExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + ChangeAgentOKBodyRDSExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // ChangeAgentOKBodyRDSExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + ChangeAgentOKBodyRDSExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // ChangeAgentOKBodyRDSExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + ChangeAgentOKBodyRDSExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // ChangeAgentOKBodyRDSExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + ChangeAgentOKBodyRDSExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // ChangeAgentOKBodyRDSExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + ChangeAgentOKBodyRDSExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *ChangeAgentOKBodyRDSExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, changeAgentOkBodyRdsExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *ChangeAgentOKBodyRDSExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("changeAgentOk"+"."+"rds_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this change agent OK body RDS exporter based on context it is used +func (o *ChangeAgentOKBodyRDSExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentOKBodyRDSExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentOKBodyRDSExporter) UnmarshalBinary(b []byte) error { + var res ChangeAgentOKBodyRDSExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyAzureDatabaseExporter change agent params body azure database exporter +swagger:model ChangeAgentParamsBodyAzureDatabaseExporter +*/ +type ChangeAgentParamsBodyAzureDatabaseExporter struct { + // agent id + AgentID string `json:"agent_id,omitempty"` + + // common + Common *ChangeAgentParamsBodyAzureDatabaseExporterCommon `json:"common,omitempty"` +} + +// Validate validates this change agent params body azure database exporter +func (o *ChangeAgentParamsBodyAzureDatabaseExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCommon(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyAzureDatabaseExporter) validateCommon(formats strfmt.Registry) error { + if swag.IsZero(o.Common) { // not required + return nil + } + + if o.Common != nil { + if err := o.Common.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "azure_database_exporter" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "azure_database_exporter" + "." + "common") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body azure database exporter based on the context it is used +func (o *ChangeAgentParamsBodyAzureDatabaseExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCommon(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyAzureDatabaseExporter) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { + if o.Common != nil { + if err := o.Common.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "azure_database_exporter" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "azure_database_exporter" + "." + "common") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyAzureDatabaseExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyAzureDatabaseExporter) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyAzureDatabaseExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyAzureDatabaseExporterCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. +swagger:model ChangeAgentParamsBodyAzureDatabaseExporterCommon +*/ +type ChangeAgentParamsBodyAzureDatabaseExporterCommon struct { + // Enable this Agent. Agents are enabled by default when they get added. + Enable *bool `json:"enable,omitempty"` + + // Enables push metrics with vmagent. + EnablePushMetrics *bool `json:"enable_push_metrics,omitempty"` + + // custom labels + CustomLabels *ChangeAgentParamsBodyAzureDatabaseExporterCommonCustomLabels `json:"custom_labels,omitempty"` +} + +// Validate validates this change agent params body azure database exporter common +func (o *ChangeAgentParamsBodyAzureDatabaseExporterCommon) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCustomLabels(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyAzureDatabaseExporterCommon) validateCustomLabels(formats strfmt.Registry) error { + if swag.IsZero(o.CustomLabels) { // not required + return nil + } + + if o.CustomLabels != nil { + if err := o.CustomLabels.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "azure_database_exporter" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "azure_database_exporter" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body azure database exporter common based on the context it is used +func (o *ChangeAgentParamsBodyAzureDatabaseExporterCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCustomLabels(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyAzureDatabaseExporterCommon) contextValidateCustomLabels(ctx context.Context, formats strfmt.Registry) error { + if o.CustomLabels != nil { + if err := o.CustomLabels.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "azure_database_exporter" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "azure_database_exporter" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyAzureDatabaseExporterCommon) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyAzureDatabaseExporterCommon) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyAzureDatabaseExporterCommon + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyAzureDatabaseExporterCommonCustomLabels A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value. +swagger:model ChangeAgentParamsBodyAzureDatabaseExporterCommonCustomLabels +*/ +type ChangeAgentParamsBodyAzureDatabaseExporterCommonCustomLabels struct { + // values + Values map[string]string `json:"values,omitempty"` +} + +// Validate validates this change agent params body azure database exporter common custom labels +func (o *ChangeAgentParamsBodyAzureDatabaseExporterCommonCustomLabels) Validate(formats strfmt.Registry) error { + return nil +} + +// ContextValidate validates this change agent params body azure database exporter common custom labels based on context it is used +func (o *ChangeAgentParamsBodyAzureDatabaseExporterCommonCustomLabels) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyAzureDatabaseExporterCommonCustomLabels) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyAzureDatabaseExporterCommonCustomLabels) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyAzureDatabaseExporterCommonCustomLabels + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyExternalExporter change agent params body external exporter +swagger:model ChangeAgentParamsBodyExternalExporter +*/ +type ChangeAgentParamsBodyExternalExporter struct { + // agent id + AgentID string `json:"agent_id,omitempty"` + + // common + Common *ChangeAgentParamsBodyExternalExporterCommon `json:"common,omitempty"` +} + +// Validate validates this change agent params body external exporter +func (o *ChangeAgentParamsBodyExternalExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCommon(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyExternalExporter) validateCommon(formats strfmt.Registry) error { + if swag.IsZero(o.Common) { // not required + return nil + } + + if o.Common != nil { + if err := o.Common.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "external_exporter" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "external_exporter" + "." + "common") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body external exporter based on the context it is used +func (o *ChangeAgentParamsBodyExternalExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCommon(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyExternalExporter) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { + if o.Common != nil { + if err := o.Common.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "external_exporter" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "external_exporter" + "." + "common") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyExternalExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyExternalExporter) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyExternalExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyExternalExporterCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. +swagger:model ChangeAgentParamsBodyExternalExporterCommon +*/ +type ChangeAgentParamsBodyExternalExporterCommon struct { + // Enable this Agent. Agents are enabled by default when they get added. + Enable *bool `json:"enable,omitempty"` + + // Enables push metrics with vmagent. + EnablePushMetrics *bool `json:"enable_push_metrics,omitempty"` + + // custom labels + CustomLabels *ChangeAgentParamsBodyExternalExporterCommonCustomLabels `json:"custom_labels,omitempty"` +} + +// Validate validates this change agent params body external exporter common +func (o *ChangeAgentParamsBodyExternalExporterCommon) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCustomLabels(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyExternalExporterCommon) validateCustomLabels(formats strfmt.Registry) error { + if swag.IsZero(o.CustomLabels) { // not required + return nil + } + + if o.CustomLabels != nil { + if err := o.CustomLabels.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "external_exporter" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "external_exporter" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body external exporter common based on the context it is used +func (o *ChangeAgentParamsBodyExternalExporterCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCustomLabels(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyExternalExporterCommon) contextValidateCustomLabels(ctx context.Context, formats strfmt.Registry) error { + if o.CustomLabels != nil { + if err := o.CustomLabels.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "external_exporter" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "external_exporter" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyExternalExporterCommon) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyExternalExporterCommon) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyExternalExporterCommon + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyExternalExporterCommonCustomLabels A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value. +swagger:model ChangeAgentParamsBodyExternalExporterCommonCustomLabels +*/ +type ChangeAgentParamsBodyExternalExporterCommonCustomLabels struct { + // values + Values map[string]string `json:"values,omitempty"` +} + +// Validate validates this change agent params body external exporter common custom labels +func (o *ChangeAgentParamsBodyExternalExporterCommonCustomLabels) Validate(formats strfmt.Registry) error { + return nil +} + +// ContextValidate validates this change agent params body external exporter common custom labels based on context it is used +func (o *ChangeAgentParamsBodyExternalExporterCommonCustomLabels) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyExternalExporterCommonCustomLabels) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyExternalExporterCommonCustomLabels) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyExternalExporterCommonCustomLabels + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyMongodbExporter change agent params body mongodb exporter +swagger:model ChangeAgentParamsBodyMongodbExporter +*/ +type ChangeAgentParamsBodyMongodbExporter struct { + // agent id + AgentID string `json:"agent_id,omitempty"` + + // common + Common *ChangeAgentParamsBodyMongodbExporterCommon `json:"common,omitempty"` +} + +// Validate validates this change agent params body mongodb exporter +func (o *ChangeAgentParamsBodyMongodbExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCommon(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyMongodbExporter) validateCommon(formats strfmt.Registry) error { + if swag.IsZero(o.Common) { // not required + return nil + } + + if o.Common != nil { + if err := o.Common.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "mongodb_exporter" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "mongodb_exporter" + "." + "common") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body mongodb exporter based on the context it is used +func (o *ChangeAgentParamsBodyMongodbExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCommon(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyMongodbExporter) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { + if o.Common != nil { + if err := o.Common.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "mongodb_exporter" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "mongodb_exporter" + "." + "common") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyMongodbExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyMongodbExporter) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyMongodbExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyMongodbExporterCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. +swagger:model ChangeAgentParamsBodyMongodbExporterCommon +*/ +type ChangeAgentParamsBodyMongodbExporterCommon struct { + // Enable this Agent. Agents are enabled by default when they get added. + Enable *bool `json:"enable,omitempty"` + + // Enables push metrics with vmagent. + EnablePushMetrics *bool `json:"enable_push_metrics,omitempty"` + + // custom labels + CustomLabels *ChangeAgentParamsBodyMongodbExporterCommonCustomLabels `json:"custom_labels,omitempty"` +} + +// Validate validates this change agent params body mongodb exporter common +func (o *ChangeAgentParamsBodyMongodbExporterCommon) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCustomLabels(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyMongodbExporterCommon) validateCustomLabels(formats strfmt.Registry) error { + if swag.IsZero(o.CustomLabels) { // not required + return nil + } + + if o.CustomLabels != nil { + if err := o.CustomLabels.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "mongodb_exporter" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "mongodb_exporter" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body mongodb exporter common based on the context it is used +func (o *ChangeAgentParamsBodyMongodbExporterCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCustomLabels(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyMongodbExporterCommon) contextValidateCustomLabels(ctx context.Context, formats strfmt.Registry) error { + if o.CustomLabels != nil { + if err := o.CustomLabels.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "mongodb_exporter" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "mongodb_exporter" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyMongodbExporterCommon) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyMongodbExporterCommon) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyMongodbExporterCommon + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyMongodbExporterCommonCustomLabels A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value. +swagger:model ChangeAgentParamsBodyMongodbExporterCommonCustomLabels +*/ +type ChangeAgentParamsBodyMongodbExporterCommonCustomLabels struct { + // values + Values map[string]string `json:"values,omitempty"` +} + +// Validate validates this change agent params body mongodb exporter common custom labels +func (o *ChangeAgentParamsBodyMongodbExporterCommonCustomLabels) Validate(formats strfmt.Registry) error { + return nil +} + +// ContextValidate validates this change agent params body mongodb exporter common custom labels based on context it is used +func (o *ChangeAgentParamsBodyMongodbExporterCommonCustomLabels) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyMongodbExporterCommonCustomLabels) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyMongodbExporterCommonCustomLabels) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyMongodbExporterCommonCustomLabels + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyMysqldExporter change agent params body mysqld exporter +swagger:model ChangeAgentParamsBodyMysqldExporter +*/ +type ChangeAgentParamsBodyMysqldExporter struct { + // agent id + AgentID string `json:"agent_id,omitempty"` + + // common + Common *ChangeAgentParamsBodyMysqldExporterCommon `json:"common,omitempty"` +} + +// Validate validates this change agent params body mysqld exporter +func (o *ChangeAgentParamsBodyMysqldExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCommon(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyMysqldExporter) validateCommon(formats strfmt.Registry) error { + if swag.IsZero(o.Common) { // not required + return nil + } + + if o.Common != nil { + if err := o.Common.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "mysqld_exporter" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "mysqld_exporter" + "." + "common") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body mysqld exporter based on the context it is used +func (o *ChangeAgentParamsBodyMysqldExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCommon(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyMysqldExporter) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { + if o.Common != nil { + if err := o.Common.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "mysqld_exporter" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "mysqld_exporter" + "." + "common") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyMysqldExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyMysqldExporter) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyMysqldExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyMysqldExporterCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. +swagger:model ChangeAgentParamsBodyMysqldExporterCommon +*/ +type ChangeAgentParamsBodyMysqldExporterCommon struct { + // Enable this Agent. Agents are enabled by default when they get added. + Enable *bool `json:"enable,omitempty"` + + // Enables push metrics with vmagent. + EnablePushMetrics *bool `json:"enable_push_metrics,omitempty"` + + // custom labels + CustomLabels *ChangeAgentParamsBodyMysqldExporterCommonCustomLabels `json:"custom_labels,omitempty"` +} + +// Validate validates this change agent params body mysqld exporter common +func (o *ChangeAgentParamsBodyMysqldExporterCommon) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCustomLabels(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyMysqldExporterCommon) validateCustomLabels(formats strfmt.Registry) error { + if swag.IsZero(o.CustomLabels) { // not required + return nil + } + + if o.CustomLabels != nil { + if err := o.CustomLabels.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "mysqld_exporter" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "mysqld_exporter" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body mysqld exporter common based on the context it is used +func (o *ChangeAgentParamsBodyMysqldExporterCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCustomLabels(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyMysqldExporterCommon) contextValidateCustomLabels(ctx context.Context, formats strfmt.Registry) error { + if o.CustomLabels != nil { + if err := o.CustomLabels.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "mysqld_exporter" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "mysqld_exporter" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyMysqldExporterCommon) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyMysqldExporterCommon) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyMysqldExporterCommon + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyMysqldExporterCommonCustomLabels A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value. +swagger:model ChangeAgentParamsBodyMysqldExporterCommonCustomLabels +*/ +type ChangeAgentParamsBodyMysqldExporterCommonCustomLabels struct { + // values + Values map[string]string `json:"values,omitempty"` +} + +// Validate validates this change agent params body mysqld exporter common custom labels +func (o *ChangeAgentParamsBodyMysqldExporterCommonCustomLabels) Validate(formats strfmt.Registry) error { + return nil +} + +// ContextValidate validates this change agent params body mysqld exporter common custom labels based on context it is used +func (o *ChangeAgentParamsBodyMysqldExporterCommonCustomLabels) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyMysqldExporterCommonCustomLabels) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyMysqldExporterCommonCustomLabels) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyMysqldExporterCommonCustomLabels + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyNodeExporter change agent params body node exporter +swagger:model ChangeAgentParamsBodyNodeExporter +*/ +type ChangeAgentParamsBodyNodeExporter struct { + // agent id + AgentID string `json:"agent_id,omitempty"` + + // common + Common *ChangeAgentParamsBodyNodeExporterCommon `json:"common,omitempty"` +} + +// Validate validates this change agent params body node exporter +func (o *ChangeAgentParamsBodyNodeExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCommon(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyNodeExporter) validateCommon(formats strfmt.Registry) error { + if swag.IsZero(o.Common) { // not required + return nil + } + + if o.Common != nil { + if err := o.Common.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "node_exporter" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "node_exporter" + "." + "common") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body node exporter based on the context it is used +func (o *ChangeAgentParamsBodyNodeExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCommon(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyNodeExporter) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { + if o.Common != nil { + if err := o.Common.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "node_exporter" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "node_exporter" + "." + "common") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyNodeExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyNodeExporter) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyNodeExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyNodeExporterCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. +swagger:model ChangeAgentParamsBodyNodeExporterCommon +*/ +type ChangeAgentParamsBodyNodeExporterCommon struct { + // Enable this Agent. Agents are enabled by default when they get added. + Enable *bool `json:"enable,omitempty"` + + // Enables push metrics with vmagent. + EnablePushMetrics *bool `json:"enable_push_metrics,omitempty"` + + // custom labels + CustomLabels *ChangeAgentParamsBodyNodeExporterCommonCustomLabels `json:"custom_labels,omitempty"` +} + +// Validate validates this change agent params body node exporter common +func (o *ChangeAgentParamsBodyNodeExporterCommon) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCustomLabels(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyNodeExporterCommon) validateCustomLabels(formats strfmt.Registry) error { + if swag.IsZero(o.CustomLabels) { // not required + return nil + } + + if o.CustomLabels != nil { + if err := o.CustomLabels.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "node_exporter" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "node_exporter" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body node exporter common based on the context it is used +func (o *ChangeAgentParamsBodyNodeExporterCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCustomLabels(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyNodeExporterCommon) contextValidateCustomLabels(ctx context.Context, formats strfmt.Registry) error { + if o.CustomLabels != nil { + if err := o.CustomLabels.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "node_exporter" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "node_exporter" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyNodeExporterCommon) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyNodeExporterCommon) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyNodeExporterCommon + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyNodeExporterCommonCustomLabels A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value. +swagger:model ChangeAgentParamsBodyNodeExporterCommonCustomLabels +*/ +type ChangeAgentParamsBodyNodeExporterCommonCustomLabels struct { + // values + Values map[string]string `json:"values,omitempty"` +} + +// Validate validates this change agent params body node exporter common custom labels +func (o *ChangeAgentParamsBodyNodeExporterCommonCustomLabels) Validate(formats strfmt.Registry) error { + return nil +} + +// ContextValidate validates this change agent params body node exporter common custom labels based on context it is used +func (o *ChangeAgentParamsBodyNodeExporterCommonCustomLabels) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyNodeExporterCommonCustomLabels) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyNodeExporterCommonCustomLabels) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyNodeExporterCommonCustomLabels + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyPostgresExporter change agent params body postgres exporter +swagger:model ChangeAgentParamsBodyPostgresExporter +*/ +type ChangeAgentParamsBodyPostgresExporter struct { + // agent id + AgentID string `json:"agent_id,omitempty"` + + // common + Common *ChangeAgentParamsBodyPostgresExporterCommon `json:"common,omitempty"` +} + +// Validate validates this change agent params body postgres exporter +func (o *ChangeAgentParamsBodyPostgresExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCommon(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyPostgresExporter) validateCommon(formats strfmt.Registry) error { + if swag.IsZero(o.Common) { // not required + return nil + } + + if o.Common != nil { + if err := o.Common.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "postgres_exporter" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "postgres_exporter" + "." + "common") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body postgres exporter based on the context it is used +func (o *ChangeAgentParamsBodyPostgresExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCommon(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyPostgresExporter) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { + if o.Common != nil { + if err := o.Common.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "postgres_exporter" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "postgres_exporter" + "." + "common") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyPostgresExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyPostgresExporter) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyPostgresExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyPostgresExporterCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. +swagger:model ChangeAgentParamsBodyPostgresExporterCommon +*/ +type ChangeAgentParamsBodyPostgresExporterCommon struct { + // Enable this Agent. Agents are enabled by default when they get added. + Enable *bool `json:"enable,omitempty"` + + // Enables push metrics with vmagent. + EnablePushMetrics *bool `json:"enable_push_metrics,omitempty"` + + // custom labels + CustomLabels *ChangeAgentParamsBodyPostgresExporterCommonCustomLabels `json:"custom_labels,omitempty"` +} + +// Validate validates this change agent params body postgres exporter common +func (o *ChangeAgentParamsBodyPostgresExporterCommon) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCustomLabels(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyPostgresExporterCommon) validateCustomLabels(formats strfmt.Registry) error { + if swag.IsZero(o.CustomLabels) { // not required + return nil + } + + if o.CustomLabels != nil { + if err := o.CustomLabels.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "postgres_exporter" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "postgres_exporter" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body postgres exporter common based on the context it is used +func (o *ChangeAgentParamsBodyPostgresExporterCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCustomLabels(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyPostgresExporterCommon) contextValidateCustomLabels(ctx context.Context, formats strfmt.Registry) error { + if o.CustomLabels != nil { + if err := o.CustomLabels.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "postgres_exporter" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "postgres_exporter" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyPostgresExporterCommon) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyPostgresExporterCommon) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyPostgresExporterCommon + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyPostgresExporterCommonCustomLabels A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value. +swagger:model ChangeAgentParamsBodyPostgresExporterCommonCustomLabels +*/ +type ChangeAgentParamsBodyPostgresExporterCommonCustomLabels struct { + // values + Values map[string]string `json:"values,omitempty"` +} + +// Validate validates this change agent params body postgres exporter common custom labels +func (o *ChangeAgentParamsBodyPostgresExporterCommonCustomLabels) Validate(formats strfmt.Registry) error { + return nil +} + +// ContextValidate validates this change agent params body postgres exporter common custom labels based on context it is used +func (o *ChangeAgentParamsBodyPostgresExporterCommonCustomLabels) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyPostgresExporterCommonCustomLabels) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyPostgresExporterCommonCustomLabels) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyPostgresExporterCommonCustomLabels + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyProxysqlExporter change agent params body proxysql exporter +swagger:model ChangeAgentParamsBodyProxysqlExporter +*/ +type ChangeAgentParamsBodyProxysqlExporter struct { + // agent id + AgentID string `json:"agent_id,omitempty"` + + // common + Common *ChangeAgentParamsBodyProxysqlExporterCommon `json:"common,omitempty"` +} + +// Validate validates this change agent params body proxysql exporter +func (o *ChangeAgentParamsBodyProxysqlExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCommon(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyProxysqlExporter) validateCommon(formats strfmt.Registry) error { + if swag.IsZero(o.Common) { // not required + return nil + } + + if o.Common != nil { + if err := o.Common.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "proxysql_exporter" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "proxysql_exporter" + "." + "common") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body proxysql exporter based on the context it is used +func (o *ChangeAgentParamsBodyProxysqlExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCommon(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyProxysqlExporter) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { + if o.Common != nil { + if err := o.Common.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "proxysql_exporter" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "proxysql_exporter" + "." + "common") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyProxysqlExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyProxysqlExporter) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyProxysqlExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyProxysqlExporterCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. +swagger:model ChangeAgentParamsBodyProxysqlExporterCommon +*/ +type ChangeAgentParamsBodyProxysqlExporterCommon struct { + // Enable this Agent. Agents are enabled by default when they get added. + Enable *bool `json:"enable,omitempty"` + + // Enables push metrics with vmagent. + EnablePushMetrics *bool `json:"enable_push_metrics,omitempty"` + + // custom labels + CustomLabels *ChangeAgentParamsBodyProxysqlExporterCommonCustomLabels `json:"custom_labels,omitempty"` +} + +// Validate validates this change agent params body proxysql exporter common +func (o *ChangeAgentParamsBodyProxysqlExporterCommon) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCustomLabels(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyProxysqlExporterCommon) validateCustomLabels(formats strfmt.Registry) error { + if swag.IsZero(o.CustomLabels) { // not required + return nil + } + + if o.CustomLabels != nil { + if err := o.CustomLabels.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "proxysql_exporter" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "proxysql_exporter" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body proxysql exporter common based on the context it is used +func (o *ChangeAgentParamsBodyProxysqlExporterCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCustomLabels(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyProxysqlExporterCommon) contextValidateCustomLabels(ctx context.Context, formats strfmt.Registry) error { + if o.CustomLabels != nil { + if err := o.CustomLabels.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "proxysql_exporter" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "proxysql_exporter" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyProxysqlExporterCommon) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyProxysqlExporterCommon) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyProxysqlExporterCommon + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyProxysqlExporterCommonCustomLabels A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value. +swagger:model ChangeAgentParamsBodyProxysqlExporterCommonCustomLabels +*/ +type ChangeAgentParamsBodyProxysqlExporterCommonCustomLabels struct { + // values + Values map[string]string `json:"values,omitempty"` +} + +// Validate validates this change agent params body proxysql exporter common custom labels +func (o *ChangeAgentParamsBodyProxysqlExporterCommonCustomLabels) Validate(formats strfmt.Registry) error { + return nil +} + +// ContextValidate validates this change agent params body proxysql exporter common custom labels based on context it is used +func (o *ChangeAgentParamsBodyProxysqlExporterCommonCustomLabels) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyProxysqlExporterCommonCustomLabels) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyProxysqlExporterCommonCustomLabels) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyProxysqlExporterCommonCustomLabels + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyQANMongodbProfilerAgent change agent params body QAN mongodb profiler agent +swagger:model ChangeAgentParamsBodyQANMongodbProfilerAgent +*/ +type ChangeAgentParamsBodyQANMongodbProfilerAgent struct { + // agent id + AgentID string `json:"agent_id,omitempty"` + + // common + Common *ChangeAgentParamsBodyQANMongodbProfilerAgentCommon `json:"common,omitempty"` +} + +// Validate validates this change agent params body QAN mongodb profiler agent +func (o *ChangeAgentParamsBodyQANMongodbProfilerAgent) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCommon(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyQANMongodbProfilerAgent) validateCommon(formats strfmt.Registry) error { + if swag.IsZero(o.Common) { // not required + return nil + } + + if o.Common != nil { + if err := o.Common.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_mongodb_profiler_agent" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_mongodb_profiler_agent" + "." + "common") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body QAN mongodb profiler agent based on the context it is used +func (o *ChangeAgentParamsBodyQANMongodbProfilerAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCommon(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyQANMongodbProfilerAgent) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { + if o.Common != nil { + if err := o.Common.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_mongodb_profiler_agent" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_mongodb_profiler_agent" + "." + "common") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANMongodbProfilerAgent) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANMongodbProfilerAgent) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyQANMongodbProfilerAgent + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyQANMongodbProfilerAgentCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. +swagger:model ChangeAgentParamsBodyQANMongodbProfilerAgentCommon +*/ +type ChangeAgentParamsBodyQANMongodbProfilerAgentCommon struct { + // Enable this Agent. Agents are enabled by default when they get added. + Enable *bool `json:"enable,omitempty"` + + // Enables push metrics with vmagent. + EnablePushMetrics *bool `json:"enable_push_metrics,omitempty"` + + // custom labels + CustomLabels *ChangeAgentParamsBodyQANMongodbProfilerAgentCommonCustomLabels `json:"custom_labels,omitempty"` +} + +// Validate validates this change agent params body QAN mongodb profiler agent common +func (o *ChangeAgentParamsBodyQANMongodbProfilerAgentCommon) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCustomLabels(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyQANMongodbProfilerAgentCommon) validateCustomLabels(formats strfmt.Registry) error { + if swag.IsZero(o.CustomLabels) { // not required + return nil + } + + if o.CustomLabels != nil { + if err := o.CustomLabels.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_mongodb_profiler_agent" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_mongodb_profiler_agent" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body QAN mongodb profiler agent common based on the context it is used +func (o *ChangeAgentParamsBodyQANMongodbProfilerAgentCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCustomLabels(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyQANMongodbProfilerAgentCommon) contextValidateCustomLabels(ctx context.Context, formats strfmt.Registry) error { + if o.CustomLabels != nil { + if err := o.CustomLabels.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_mongodb_profiler_agent" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_mongodb_profiler_agent" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANMongodbProfilerAgentCommon) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANMongodbProfilerAgentCommon) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyQANMongodbProfilerAgentCommon + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyQANMongodbProfilerAgentCommonCustomLabels A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value. +swagger:model ChangeAgentParamsBodyQANMongodbProfilerAgentCommonCustomLabels +*/ +type ChangeAgentParamsBodyQANMongodbProfilerAgentCommonCustomLabels struct { + // values + Values map[string]string `json:"values,omitempty"` +} + +// Validate validates this change agent params body QAN mongodb profiler agent common custom labels +func (o *ChangeAgentParamsBodyQANMongodbProfilerAgentCommonCustomLabels) Validate(formats strfmt.Registry) error { + return nil +} + +// ContextValidate validates this change agent params body QAN mongodb profiler agent common custom labels based on context it is used +func (o *ChangeAgentParamsBodyQANMongodbProfilerAgentCommonCustomLabels) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANMongodbProfilerAgentCommonCustomLabels) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANMongodbProfilerAgentCommonCustomLabels) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyQANMongodbProfilerAgentCommonCustomLabels + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyQANMysqlPerfschemaAgent change agent params body QAN mysql perfschema agent +swagger:model ChangeAgentParamsBodyQANMysqlPerfschemaAgent +*/ +type ChangeAgentParamsBodyQANMysqlPerfschemaAgent struct { + // agent id + AgentID string `json:"agent_id,omitempty"` + + // common + Common *ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommon `json:"common,omitempty"` +} + +// Validate validates this change agent params body QAN mysql perfschema agent +func (o *ChangeAgentParamsBodyQANMysqlPerfschemaAgent) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCommon(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyQANMysqlPerfschemaAgent) validateCommon(formats strfmt.Registry) error { + if swag.IsZero(o.Common) { // not required + return nil + } + + if o.Common != nil { + if err := o.Common.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_mysql_perfschema_agent" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_mysql_perfschema_agent" + "." + "common") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body QAN mysql perfschema agent based on the context it is used +func (o *ChangeAgentParamsBodyQANMysqlPerfschemaAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCommon(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyQANMysqlPerfschemaAgent) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { + if o.Common != nil { + if err := o.Common.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_mysql_perfschema_agent" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_mysql_perfschema_agent" + "." + "common") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANMysqlPerfschemaAgent) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANMysqlPerfschemaAgent) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyQANMysqlPerfschemaAgent + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. +swagger:model ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommon +*/ +type ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommon struct { + // Enable this Agent. Agents are enabled by default when they get added. + Enable *bool `json:"enable,omitempty"` + + // Enables push metrics with vmagent. + EnablePushMetrics *bool `json:"enable_push_metrics,omitempty"` + + // custom labels + CustomLabels *ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommonCustomLabels `json:"custom_labels,omitempty"` +} + +// Validate validates this change agent params body QAN mysql perfschema agent common +func (o *ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommon) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCustomLabels(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommon) validateCustomLabels(formats strfmt.Registry) error { + if swag.IsZero(o.CustomLabels) { // not required + return nil + } + + if o.CustomLabels != nil { + if err := o.CustomLabels.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_mysql_perfschema_agent" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_mysql_perfschema_agent" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body QAN mysql perfschema agent common based on the context it is used +func (o *ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCustomLabels(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommon) contextValidateCustomLabels(ctx context.Context, formats strfmt.Registry) error { + if o.CustomLabels != nil { + if err := o.CustomLabels.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_mysql_perfschema_agent" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_mysql_perfschema_agent" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommon) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommon) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommon + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommonCustomLabels A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value. +swagger:model ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommonCustomLabels +*/ +type ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommonCustomLabels struct { + // values + Values map[string]string `json:"values,omitempty"` +} + +// Validate validates this change agent params body QAN mysql perfschema agent common custom labels +func (o *ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommonCustomLabels) Validate(formats strfmt.Registry) error { + return nil +} + +// ContextValidate validates this change agent params body QAN mysql perfschema agent common custom labels based on context it is used +func (o *ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommonCustomLabels) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommonCustomLabels) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommonCustomLabels) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyQANMysqlPerfschemaAgentCommonCustomLabels + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyQANMysqlSlowlogAgent change agent params body QAN mysql slowlog agent +swagger:model ChangeAgentParamsBodyQANMysqlSlowlogAgent +*/ +type ChangeAgentParamsBodyQANMysqlSlowlogAgent struct { + // agent id + AgentID string `json:"agent_id,omitempty"` + + // common + Common *ChangeAgentParamsBodyQANMysqlSlowlogAgentCommon `json:"common,omitempty"` +} + +// Validate validates this change agent params body QAN mysql slowlog agent +func (o *ChangeAgentParamsBodyQANMysqlSlowlogAgent) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCommon(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyQANMysqlSlowlogAgent) validateCommon(formats strfmt.Registry) error { + if swag.IsZero(o.Common) { // not required + return nil + } + + if o.Common != nil { + if err := o.Common.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_mysql_slowlog_agent" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_mysql_slowlog_agent" + "." + "common") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body QAN mysql slowlog agent based on the context it is used +func (o *ChangeAgentParamsBodyQANMysqlSlowlogAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCommon(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyQANMysqlSlowlogAgent) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { + if o.Common != nil { + if err := o.Common.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_mysql_slowlog_agent" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_mysql_slowlog_agent" + "." + "common") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANMysqlSlowlogAgent) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANMysqlSlowlogAgent) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyQANMysqlSlowlogAgent + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyQANMysqlSlowlogAgentCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. +swagger:model ChangeAgentParamsBodyQANMysqlSlowlogAgentCommon +*/ +type ChangeAgentParamsBodyQANMysqlSlowlogAgentCommon struct { + // Enable this Agent. Agents are enabled by default when they get added. + Enable *bool `json:"enable,omitempty"` + + // Enables push metrics with vmagent. + EnablePushMetrics *bool `json:"enable_push_metrics,omitempty"` + + // custom labels + CustomLabels *ChangeAgentParamsBodyQANMysqlSlowlogAgentCommonCustomLabels `json:"custom_labels,omitempty"` +} + +// Validate validates this change agent params body QAN mysql slowlog agent common +func (o *ChangeAgentParamsBodyQANMysqlSlowlogAgentCommon) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCustomLabels(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyQANMysqlSlowlogAgentCommon) validateCustomLabels(formats strfmt.Registry) error { + if swag.IsZero(o.CustomLabels) { // not required + return nil + } + + if o.CustomLabels != nil { + if err := o.CustomLabels.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_mysql_slowlog_agent" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_mysql_slowlog_agent" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body QAN mysql slowlog agent common based on the context it is used +func (o *ChangeAgentParamsBodyQANMysqlSlowlogAgentCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCustomLabels(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyQANMysqlSlowlogAgentCommon) contextValidateCustomLabels(ctx context.Context, formats strfmt.Registry) error { + if o.CustomLabels != nil { + if err := o.CustomLabels.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_mysql_slowlog_agent" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_mysql_slowlog_agent" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANMysqlSlowlogAgentCommon) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANMysqlSlowlogAgentCommon) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyQANMysqlSlowlogAgentCommon + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyQANMysqlSlowlogAgentCommonCustomLabels A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value. +swagger:model ChangeAgentParamsBodyQANMysqlSlowlogAgentCommonCustomLabels +*/ +type ChangeAgentParamsBodyQANMysqlSlowlogAgentCommonCustomLabels struct { + // values + Values map[string]string `json:"values,omitempty"` +} + +// Validate validates this change agent params body QAN mysql slowlog agent common custom labels +func (o *ChangeAgentParamsBodyQANMysqlSlowlogAgentCommonCustomLabels) Validate(formats strfmt.Registry) error { + return nil +} + +// ContextValidate validates this change agent params body QAN mysql slowlog agent common custom labels based on context it is used +func (o *ChangeAgentParamsBodyQANMysqlSlowlogAgentCommonCustomLabels) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANMysqlSlowlogAgentCommonCustomLabels) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANMysqlSlowlogAgentCommonCustomLabels) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyQANMysqlSlowlogAgentCommonCustomLabels + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyQANPostgresqlPgstatementsAgent change agent params body QAN postgresql pgstatements agent +swagger:model ChangeAgentParamsBodyQANPostgresqlPgstatementsAgent +*/ +type ChangeAgentParamsBodyQANPostgresqlPgstatementsAgent struct { + // agent id + AgentID string `json:"agent_id,omitempty"` + + // common + Common *ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommon `json:"common,omitempty"` +} + +// Validate validates this change agent params body QAN postgresql pgstatements agent +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatementsAgent) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCommon(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatementsAgent) validateCommon(formats strfmt.Registry) error { + if swag.IsZero(o.Common) { // not required + return nil + } + + if o.Common != nil { + if err := o.Common.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_postgresql_pgstatements_agent" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_postgresql_pgstatements_agent" + "." + "common") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body QAN postgresql pgstatements agent based on the context it is used +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatementsAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCommon(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatementsAgent) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { + if o.Common != nil { + if err := o.Common.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_postgresql_pgstatements_agent" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_postgresql_pgstatements_agent" + "." + "common") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatementsAgent) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatementsAgent) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyQANPostgresqlPgstatementsAgent + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. +swagger:model ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommon +*/ +type ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommon struct { + // Enable this Agent. Agents are enabled by default when they get added. + Enable *bool `json:"enable,omitempty"` + + // Enables push metrics with vmagent. + EnablePushMetrics *bool `json:"enable_push_metrics,omitempty"` + + // custom labels + CustomLabels *ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommonCustomLabels `json:"custom_labels,omitempty"` +} + +// Validate validates this change agent params body QAN postgresql pgstatements agent common +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommon) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCustomLabels(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommon) validateCustomLabels(formats strfmt.Registry) error { + if swag.IsZero(o.CustomLabels) { // not required + return nil + } + + if o.CustomLabels != nil { + if err := o.CustomLabels.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_postgresql_pgstatements_agent" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_postgresql_pgstatements_agent" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body QAN postgresql pgstatements agent common based on the context it is used +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCustomLabels(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommon) contextValidateCustomLabels(ctx context.Context, formats strfmt.Registry) error { + if o.CustomLabels != nil { + if err := o.CustomLabels.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_postgresql_pgstatements_agent" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_postgresql_pgstatements_agent" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommon) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommon) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommon + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommonCustomLabels A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value. +swagger:model ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommonCustomLabels +*/ +type ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommonCustomLabels struct { + // values + Values map[string]string `json:"values,omitempty"` +} + +// Validate validates this change agent params body QAN postgresql pgstatements agent common custom labels +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommonCustomLabels) Validate(formats strfmt.Registry) error { + return nil +} + +// ContextValidate validates this change agent params body QAN postgresql pgstatements agent common custom labels based on context it is used +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommonCustomLabels) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommonCustomLabels) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommonCustomLabels) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyQANPostgresqlPgstatementsAgentCommonCustomLabels + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgent change agent params body QAN postgresql pgstatmonitor agent +swagger:model ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgent +*/ +type ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgent struct { + // agent id + AgentID string `json:"agent_id,omitempty"` + + // common + Common *ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommon `json:"common,omitempty"` +} + +// Validate validates this change agent params body QAN postgresql pgstatmonitor agent +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgent) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCommon(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgent) validateCommon(formats strfmt.Registry) error { + if swag.IsZero(o.Common) { // not required + return nil + } + + if o.Common != nil { + if err := o.Common.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_postgresql_pgstatmonitor_agent" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_postgresql_pgstatmonitor_agent" + "." + "common") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body QAN postgresql pgstatmonitor agent based on the context it is used +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCommon(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgent) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { + if o.Common != nil { + if err := o.Common.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_postgresql_pgstatmonitor_agent" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_postgresql_pgstatmonitor_agent" + "." + "common") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgent) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgent) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgent + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. +swagger:model ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommon +*/ +type ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommon struct { + // Enable this Agent. Agents are enabled by default when they get added. + Enable *bool `json:"enable,omitempty"` + + // Enables push metrics with vmagent. + EnablePushMetrics *bool `json:"enable_push_metrics,omitempty"` + + // custom labels + CustomLabels *ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommonCustomLabels `json:"custom_labels,omitempty"` +} + +// Validate validates this change agent params body QAN postgresql pgstatmonitor agent common +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommon) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCustomLabels(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommon) validateCustomLabels(formats strfmt.Registry) error { + if swag.IsZero(o.CustomLabels) { // not required + return nil + } + + if o.CustomLabels != nil { + if err := o.CustomLabels.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_postgresql_pgstatmonitor_agent" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_postgresql_pgstatmonitor_agent" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body QAN postgresql pgstatmonitor agent common based on the context it is used +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCustomLabels(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommon) contextValidateCustomLabels(ctx context.Context, formats strfmt.Registry) error { + if o.CustomLabels != nil { + if err := o.CustomLabels.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "qan_postgresql_pgstatmonitor_agent" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "qan_postgresql_pgstatmonitor_agent" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommon) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommon) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommon + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommonCustomLabels A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value. +swagger:model ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommonCustomLabels +*/ +type ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommonCustomLabels struct { + // values + Values map[string]string `json:"values,omitempty"` +} + +// Validate validates this change agent params body QAN postgresql pgstatmonitor agent common custom labels +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommonCustomLabels) Validate(formats strfmt.Registry) error { + return nil +} + +// ContextValidate validates this change agent params body QAN postgresql pgstatmonitor agent common custom labels based on context it is used +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommonCustomLabels) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommonCustomLabels) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommonCustomLabels) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyQANPostgresqlPgstatmonitorAgentCommonCustomLabels + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyRDSExporter change agent params body RDS exporter +swagger:model ChangeAgentParamsBodyRDSExporter +*/ +type ChangeAgentParamsBodyRDSExporter struct { + // agent id + AgentID string `json:"agent_id,omitempty"` + + // common + Common *ChangeAgentParamsBodyRDSExporterCommon `json:"common,omitempty"` +} + +// Validate validates this change agent params body RDS exporter +func (o *ChangeAgentParamsBodyRDSExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCommon(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyRDSExporter) validateCommon(formats strfmt.Registry) error { + if swag.IsZero(o.Common) { // not required + return nil + } + + if o.Common != nil { + if err := o.Common.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "rds_exporter" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "rds_exporter" + "." + "common") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body RDS exporter based on the context it is used +func (o *ChangeAgentParamsBodyRDSExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCommon(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyRDSExporter) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { + if o.Common != nil { + if err := o.Common.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "rds_exporter" + "." + "common") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "rds_exporter" + "." + "common") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyRDSExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyRDSExporter) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyRDSExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyRDSExporterCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. +swagger:model ChangeAgentParamsBodyRDSExporterCommon +*/ +type ChangeAgentParamsBodyRDSExporterCommon struct { + // Enable this Agent. Agents are enabled by default when they get added. + Enable *bool `json:"enable,omitempty"` + + // Enables push metrics with vmagent. + EnablePushMetrics *bool `json:"enable_push_metrics,omitempty"` + + // custom labels + CustomLabels *ChangeAgentParamsBodyRDSExporterCommonCustomLabels `json:"custom_labels,omitempty"` +} + +// Validate validates this change agent params body RDS exporter common +func (o *ChangeAgentParamsBodyRDSExporterCommon) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateCustomLabels(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyRDSExporterCommon) validateCustomLabels(formats strfmt.Registry) error { + if swag.IsZero(o.CustomLabels) { // not required + return nil + } + + if o.CustomLabels != nil { + if err := o.CustomLabels.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "rds_exporter" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "rds_exporter" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// ContextValidate validate this change agent params body RDS exporter common based on the context it is used +func (o *ChangeAgentParamsBodyRDSExporterCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + var res []error + + if err := o.contextValidateCustomLabels(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *ChangeAgentParamsBodyRDSExporterCommon) contextValidateCustomLabels(ctx context.Context, formats strfmt.Registry) error { + if o.CustomLabels != nil { + if err := o.CustomLabels.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "rds_exporter" + "." + "common" + "." + "custom_labels") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "rds_exporter" + "." + "common" + "." + "custom_labels") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyRDSExporterCommon) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyRDSExporterCommon) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyRDSExporterCommon + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +ChangeAgentParamsBodyRDSExporterCommonCustomLabels A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value. +swagger:model ChangeAgentParamsBodyRDSExporterCommonCustomLabels +*/ +type ChangeAgentParamsBodyRDSExporterCommonCustomLabels struct { + // values + Values map[string]string `json:"values,omitempty"` +} + +// Validate validates this change agent params body RDS exporter common custom labels +func (o *ChangeAgentParamsBodyRDSExporterCommonCustomLabels) Validate(formats strfmt.Registry) error { + return nil +} + +// ContextValidate validates this change agent params body RDS exporter common custom labels based on context it is used +func (o *ChangeAgentParamsBodyRDSExporterCommonCustomLabels) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *ChangeAgentParamsBodyRDSExporterCommonCustomLabels) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *ChangeAgentParamsBodyRDSExporterCommonCustomLabels) UnmarshalBinary(b []byte) error { + var res ChangeAgentParamsBodyRDSExporterCommonCustomLabels + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} diff --git a/api/inventory/v1/json/client/agents_service/change_azure_database_exporter_parameters.go b/api/inventory/v1/json/client/agents_service/change_azure_database_exporter_parameters.go deleted file mode 100644 index 8b842fbb20..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_azure_database_exporter_parameters.go +++ /dev/null @@ -1,144 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "net/http" - "time" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - cr "github.com/go-openapi/runtime/client" - "github.com/go-openapi/strfmt" -) - -// NewChangeAzureDatabaseExporterParams creates a new ChangeAzureDatabaseExporterParams object, -// with the default timeout for this client. -// -// Default values are not hydrated, since defaults are normally applied by the API server side. -// -// To enforce default values in parameter, use SetDefaults or WithDefaults. -func NewChangeAzureDatabaseExporterParams() *ChangeAzureDatabaseExporterParams { - return &ChangeAzureDatabaseExporterParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewChangeAzureDatabaseExporterParamsWithTimeout creates a new ChangeAzureDatabaseExporterParams object -// with the ability to set a timeout on a request. -func NewChangeAzureDatabaseExporterParamsWithTimeout(timeout time.Duration) *ChangeAzureDatabaseExporterParams { - return &ChangeAzureDatabaseExporterParams{ - timeout: timeout, - } -} - -// NewChangeAzureDatabaseExporterParamsWithContext creates a new ChangeAzureDatabaseExporterParams object -// with the ability to set a context for a request. -func NewChangeAzureDatabaseExporterParamsWithContext(ctx context.Context) *ChangeAzureDatabaseExporterParams { - return &ChangeAzureDatabaseExporterParams{ - Context: ctx, - } -} - -// NewChangeAzureDatabaseExporterParamsWithHTTPClient creates a new ChangeAzureDatabaseExporterParams object -// with the ability to set a custom HTTPClient for a request. -func NewChangeAzureDatabaseExporterParamsWithHTTPClient(client *http.Client) *ChangeAzureDatabaseExporterParams { - return &ChangeAzureDatabaseExporterParams{ - HTTPClient: client, - } -} - -/* -ChangeAzureDatabaseExporterParams contains all the parameters to send to the API endpoint - - for the change azure database exporter operation. - - Typically these are written to a http.Request. -*/ -type ChangeAzureDatabaseExporterParams struct { - // Body. - Body ChangeAzureDatabaseExporterBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the change azure database exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeAzureDatabaseExporterParams) WithDefaults() *ChangeAzureDatabaseExporterParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the change azure database exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeAzureDatabaseExporterParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the change azure database exporter params -func (o *ChangeAzureDatabaseExporterParams) WithTimeout(timeout time.Duration) *ChangeAzureDatabaseExporterParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the change azure database exporter params -func (o *ChangeAzureDatabaseExporterParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the change azure database exporter params -func (o *ChangeAzureDatabaseExporterParams) WithContext(ctx context.Context) *ChangeAzureDatabaseExporterParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the change azure database exporter params -func (o *ChangeAzureDatabaseExporterParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the change azure database exporter params -func (o *ChangeAzureDatabaseExporterParams) WithHTTPClient(client *http.Client) *ChangeAzureDatabaseExporterParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the change azure database exporter params -func (o *ChangeAzureDatabaseExporterParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the change azure database exporter params -func (o *ChangeAzureDatabaseExporterParams) WithBody(body ChangeAzureDatabaseExporterBody) *ChangeAzureDatabaseExporterParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the change azure database exporter params -func (o *ChangeAzureDatabaseExporterParams) SetBody(body ChangeAzureDatabaseExporterBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *ChangeAzureDatabaseExporterParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error { - if err := r.SetTimeout(o.timeout); err != nil { - return err - } - var res []error - if err := r.SetBodyParam(o.Body); err != nil { - return err - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_azure_database_exporter_responses.go b/api/inventory/v1/json/client/agents_service/change_azure_database_exporter_responses.go deleted file mode 100644 index 3f4eaf1b97..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_azure_database_exporter_responses.go +++ /dev/null @@ -1,701 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "encoding/json" - "fmt" - "io" - "strconv" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - "github.com/go-openapi/strfmt" - "github.com/go-openapi/swag" - "github.com/go-openapi/validate" -) - -// ChangeAzureDatabaseExporterReader is a Reader for the ChangeAzureDatabaseExporter structure. -type ChangeAzureDatabaseExporterReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *ChangeAzureDatabaseExporterReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewChangeAzureDatabaseExporterOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewChangeAzureDatabaseExporterDefault(response.Code()) - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - if response.Code()/100 == 2 { - return result, nil - } - return nil, result - } -} - -// NewChangeAzureDatabaseExporterOK creates a ChangeAzureDatabaseExporterOK with default headers values -func NewChangeAzureDatabaseExporterOK() *ChangeAzureDatabaseExporterOK { - return &ChangeAzureDatabaseExporterOK{} -} - -/* -ChangeAzureDatabaseExporterOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type ChangeAzureDatabaseExporterOK struct { - Payload *ChangeAzureDatabaseExporterOKBody -} - -func (o *ChangeAzureDatabaseExporterOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeAzureDatabaseExporter][%d] changeAzureDatabaseExporterOk %+v", 200, o.Payload) -} - -func (o *ChangeAzureDatabaseExporterOK) GetPayload() *ChangeAzureDatabaseExporterOKBody { - return o.Payload -} - -func (o *ChangeAzureDatabaseExporterOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeAzureDatabaseExporterOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewChangeAzureDatabaseExporterDefault creates a ChangeAzureDatabaseExporterDefault with default headers values -func NewChangeAzureDatabaseExporterDefault(code int) *ChangeAzureDatabaseExporterDefault { - return &ChangeAzureDatabaseExporterDefault{ - _statusCode: code, - } -} - -/* -ChangeAzureDatabaseExporterDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type ChangeAzureDatabaseExporterDefault struct { - _statusCode int - - Payload *ChangeAzureDatabaseExporterDefaultBody -} - -// Code gets the status code for the change azure database exporter default response -func (o *ChangeAzureDatabaseExporterDefault) Code() int { - return o._statusCode -} - -func (o *ChangeAzureDatabaseExporterDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeAzureDatabaseExporter][%d] ChangeAzureDatabaseExporter default %+v", o._statusCode, o.Payload) -} - -func (o *ChangeAzureDatabaseExporterDefault) GetPayload() *ChangeAzureDatabaseExporterDefaultBody { - return o.Payload -} - -func (o *ChangeAzureDatabaseExporterDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeAzureDatabaseExporterDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -ChangeAzureDatabaseExporterBody change azure database exporter body -swagger:model ChangeAzureDatabaseExporterBody -*/ -type ChangeAzureDatabaseExporterBody struct { - // agent id - AgentID string `json:"agent_id,omitempty"` - - // common - Common *ChangeAzureDatabaseExporterParamsBodyCommon `json:"common,omitempty"` -} - -// Validate validates this change azure database exporter body -func (o *ChangeAzureDatabaseExporterBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateCommon(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeAzureDatabaseExporterBody) validateCommon(formats strfmt.Registry) error { - if swag.IsZero(o.Common) { // not required - return nil - } - - if o.Common != nil { - if err := o.Common.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change azure database exporter body based on the context it is used -func (o *ChangeAzureDatabaseExporterBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateCommon(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeAzureDatabaseExporterBody) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { - if o.Common != nil { - if err := o.Common.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeAzureDatabaseExporterBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeAzureDatabaseExporterBody) UnmarshalBinary(b []byte) error { - var res ChangeAzureDatabaseExporterBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeAzureDatabaseExporterDefaultBody change azure database exporter default body -swagger:model ChangeAzureDatabaseExporterDefaultBody -*/ -type ChangeAzureDatabaseExporterDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*ChangeAzureDatabaseExporterDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this change azure database exporter default body -func (o *ChangeAzureDatabaseExporterDefaultBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateDetails(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeAzureDatabaseExporterDefaultBody) validateDetails(formats strfmt.Registry) error { - if swag.IsZero(o.Details) { // not required - return nil - } - - for i := 0; i < len(o.Details); i++ { - if swag.IsZero(o.Details[i]) { // not required - continue - } - - if o.Details[i] != nil { - if err := o.Details[i].Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeAzureDatabaseExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeAzureDatabaseExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this change azure database exporter default body based on the context it is used -func (o *ChangeAzureDatabaseExporterDefaultBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateDetails(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeAzureDatabaseExporterDefaultBody) contextValidateDetails(ctx context.Context, formats strfmt.Registry) error { - for i := 0; i < len(o.Details); i++ { - if o.Details[i] != nil { - if err := o.Details[i].ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeAzureDatabaseExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeAzureDatabaseExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeAzureDatabaseExporterDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeAzureDatabaseExporterDefaultBody) UnmarshalBinary(b []byte) error { - var res ChangeAzureDatabaseExporterDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeAzureDatabaseExporterDefaultBodyDetailsItems0 change azure database exporter default body details items0 -swagger:model ChangeAzureDatabaseExporterDefaultBodyDetailsItems0 -*/ -type ChangeAzureDatabaseExporterDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this change azure database exporter default body details items0 -func (o *ChangeAzureDatabaseExporterDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change azure database exporter default body details items0 based on context it is used -func (o *ChangeAzureDatabaseExporterDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeAzureDatabaseExporterDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeAzureDatabaseExporterDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res ChangeAzureDatabaseExporterDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeAzureDatabaseExporterOKBody change azure database exporter OK body -swagger:model ChangeAzureDatabaseExporterOKBody -*/ -type ChangeAzureDatabaseExporterOKBody struct { - // azure database exporter - AzureDatabaseExporter *ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporter `json:"azure_database_exporter,omitempty"` -} - -// Validate validates this change azure database exporter OK body -func (o *ChangeAzureDatabaseExporterOKBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateAzureDatabaseExporter(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeAzureDatabaseExporterOKBody) validateAzureDatabaseExporter(formats strfmt.Registry) error { - if swag.IsZero(o.AzureDatabaseExporter) { // not required - return nil - } - - if o.AzureDatabaseExporter != nil { - if err := o.AzureDatabaseExporter.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeAzureDatabaseExporterOk" + "." + "azure_database_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeAzureDatabaseExporterOk" + "." + "azure_database_exporter") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change azure database exporter OK body based on the context it is used -func (o *ChangeAzureDatabaseExporterOKBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateAzureDatabaseExporter(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeAzureDatabaseExporterOKBody) contextValidateAzureDatabaseExporter(ctx context.Context, formats strfmt.Registry) error { - if o.AzureDatabaseExporter != nil { - if err := o.AzureDatabaseExporter.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeAzureDatabaseExporterOk" + "." + "azure_database_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeAzureDatabaseExporterOk" + "." + "azure_database_exporter") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeAzureDatabaseExporterOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeAzureDatabaseExporterOKBody) UnmarshalBinary(b []byte) error { - var res ChangeAzureDatabaseExporterOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporter AzureDatabaseExporter runs on Generic or Container Node and exposes RemoteAzure Node metrics. -swagger:model ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporter -*/ -type ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporter struct { - // Unique randomly generated instance identifier. - AgentID string `json:"agent_id,omitempty"` - - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Desired Agent status: enabled (false) or disabled (true). - Disabled bool `json:"disabled,omitempty"` - - // Node identifier. - NodeID string `json:"node_id,omitempty"` - - // Azure database subscription ID. - AzureDatabaseSubscriptionID string `json:"azure_database_subscription_id,omitempty"` - - // Azure database resource type (mysql, maria, postgres) - AzureDatabaseResourceType string `json:"azure_database_resource_type,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // AgentStatus represents actual Agent status. - // - // - AGENT_STATUS_STARTING: Agent is starting. - // - AGENT_STATUS_RUNNING: Agent is running. - // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. - // - AGENT_STATUS_STOPPING: Agent is stopping. - // - AGENT_STATUS_DONE: Agent finished. - // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. - // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] - Status *string `json:"status,omitempty"` - - // Listen port for scraping metrics (the same for several configurations). - ListenPort int64 `json:"listen_port,omitempty"` - - // True if the exporter operates in push metrics mode. - PushMetricsEnabled bool `json:"push_metrics_enabled,omitempty"` - - // Path to exec process. - ProcessExecPath string `json:"process_exec_path,omitempty"` - - // Log level for exporters - // - // - LOG_LEVEL_UNSPECIFIED: Auto - // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] - LogLevel *string `json:"log_level,omitempty"` -} - -// Validate validates this change azure database exporter OK body azure database exporter -func (o *ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporter) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateStatus(formats); err != nil { - res = append(res, err) - } - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var changeAzureDatabaseExporterOkBodyAzureDatabaseExporterTypeStatusPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeAzureDatabaseExporterOkBodyAzureDatabaseExporterTypeStatusPropEnum = append(changeAzureDatabaseExporterOkBodyAzureDatabaseExporterTypeStatusPropEnum, v) - } -} - -const ( - - // ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeAzureDatabaseExporterOkBodyAzureDatabaseExporterTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporter) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("changeAzureDatabaseExporterOk"+"."+"azure_database_exporter"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var changeAzureDatabaseExporterOkBodyAzureDatabaseExporterTypeLogLevelPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeAzureDatabaseExporterOkBodyAzureDatabaseExporterTypeLogLevelPropEnum = append(changeAzureDatabaseExporterOkBodyAzureDatabaseExporterTypeLogLevelPropEnum, v) - } -} - -const ( - - // ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeAzureDatabaseExporterOkBodyAzureDatabaseExporterTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporter) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("changeAzureDatabaseExporterOk"+"."+"azure_database_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this change azure database exporter OK body azure database exporter based on context it is used -func (o *ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporter) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporter) UnmarshalBinary(b []byte) error { - var res ChangeAzureDatabaseExporterOKBodyAzureDatabaseExporter - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeAzureDatabaseExporterParamsBodyCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. -swagger:model ChangeAzureDatabaseExporterParamsBodyCommon -*/ -type ChangeAzureDatabaseExporterParamsBodyCommon struct { - // Enable this Agent. Can't be used with disabled. - Enable bool `json:"enable,omitempty"` - - // Disable this Agent. Can't be used with enabled. - Disable bool `json:"disable,omitempty"` - - // Replace all custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Remove all custom user-assigned labels. - RemoveCustomLabels bool `json:"remove_custom_labels,omitempty"` - - // Enables push metrics with vmagent, can't be used with disable_push_metrics. - // Can't be used with agent version lower then 2.12 and unsupported agents. - EnablePushMetrics bool `json:"enable_push_metrics,omitempty"` - - // Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics. - DisablePushMetrics bool `json:"disable_push_metrics,omitempty"` -} - -// Validate validates this change azure database exporter params body common -func (o *ChangeAzureDatabaseExporterParamsBodyCommon) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change azure database exporter params body common based on context it is used -func (o *ChangeAzureDatabaseExporterParamsBodyCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeAzureDatabaseExporterParamsBodyCommon) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeAzureDatabaseExporterParamsBodyCommon) UnmarshalBinary(b []byte) error { - var res ChangeAzureDatabaseExporterParamsBodyCommon - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_external_exporter_parameters.go b/api/inventory/v1/json/client/agents_service/change_external_exporter_parameters.go deleted file mode 100644 index 973583771b..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_external_exporter_parameters.go +++ /dev/null @@ -1,144 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "net/http" - "time" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - cr "github.com/go-openapi/runtime/client" - "github.com/go-openapi/strfmt" -) - -// NewChangeExternalExporterParams creates a new ChangeExternalExporterParams object, -// with the default timeout for this client. -// -// Default values are not hydrated, since defaults are normally applied by the API server side. -// -// To enforce default values in parameter, use SetDefaults or WithDefaults. -func NewChangeExternalExporterParams() *ChangeExternalExporterParams { - return &ChangeExternalExporterParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewChangeExternalExporterParamsWithTimeout creates a new ChangeExternalExporterParams object -// with the ability to set a timeout on a request. -func NewChangeExternalExporterParamsWithTimeout(timeout time.Duration) *ChangeExternalExporterParams { - return &ChangeExternalExporterParams{ - timeout: timeout, - } -} - -// NewChangeExternalExporterParamsWithContext creates a new ChangeExternalExporterParams object -// with the ability to set a context for a request. -func NewChangeExternalExporterParamsWithContext(ctx context.Context) *ChangeExternalExporterParams { - return &ChangeExternalExporterParams{ - Context: ctx, - } -} - -// NewChangeExternalExporterParamsWithHTTPClient creates a new ChangeExternalExporterParams object -// with the ability to set a custom HTTPClient for a request. -func NewChangeExternalExporterParamsWithHTTPClient(client *http.Client) *ChangeExternalExporterParams { - return &ChangeExternalExporterParams{ - HTTPClient: client, - } -} - -/* -ChangeExternalExporterParams contains all the parameters to send to the API endpoint - - for the change external exporter operation. - - Typically these are written to a http.Request. -*/ -type ChangeExternalExporterParams struct { - // Body. - Body ChangeExternalExporterBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the change external exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeExternalExporterParams) WithDefaults() *ChangeExternalExporterParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the change external exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeExternalExporterParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the change external exporter params -func (o *ChangeExternalExporterParams) WithTimeout(timeout time.Duration) *ChangeExternalExporterParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the change external exporter params -func (o *ChangeExternalExporterParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the change external exporter params -func (o *ChangeExternalExporterParams) WithContext(ctx context.Context) *ChangeExternalExporterParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the change external exporter params -func (o *ChangeExternalExporterParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the change external exporter params -func (o *ChangeExternalExporterParams) WithHTTPClient(client *http.Client) *ChangeExternalExporterParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the change external exporter params -func (o *ChangeExternalExporterParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the change external exporter params -func (o *ChangeExternalExporterParams) WithBody(body ChangeExternalExporterBody) *ChangeExternalExporterParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the change external exporter params -func (o *ChangeExternalExporterParams) SetBody(body ChangeExternalExporterBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *ChangeExternalExporterParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error { - if err := r.SetTimeout(o.timeout); err != nil { - return err - } - var res []error - if err := r.SetBodyParam(o.Body); err != nil { - return err - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_external_exporter_responses.go b/api/inventory/v1/json/client/agents_service/change_external_exporter_responses.go deleted file mode 100644 index c208e478cf..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_external_exporter_responses.go +++ /dev/null @@ -1,561 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "fmt" - "io" - "strconv" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - "github.com/go-openapi/strfmt" - "github.com/go-openapi/swag" -) - -// ChangeExternalExporterReader is a Reader for the ChangeExternalExporter structure. -type ChangeExternalExporterReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *ChangeExternalExporterReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewChangeExternalExporterOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewChangeExternalExporterDefault(response.Code()) - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - if response.Code()/100 == 2 { - return result, nil - } - return nil, result - } -} - -// NewChangeExternalExporterOK creates a ChangeExternalExporterOK with default headers values -func NewChangeExternalExporterOK() *ChangeExternalExporterOK { - return &ChangeExternalExporterOK{} -} - -/* -ChangeExternalExporterOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type ChangeExternalExporterOK struct { - Payload *ChangeExternalExporterOKBody -} - -func (o *ChangeExternalExporterOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeExternalExporter][%d] changeExternalExporterOk %+v", 200, o.Payload) -} - -func (o *ChangeExternalExporterOK) GetPayload() *ChangeExternalExporterOKBody { - return o.Payload -} - -func (o *ChangeExternalExporterOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeExternalExporterOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewChangeExternalExporterDefault creates a ChangeExternalExporterDefault with default headers values -func NewChangeExternalExporterDefault(code int) *ChangeExternalExporterDefault { - return &ChangeExternalExporterDefault{ - _statusCode: code, - } -} - -/* -ChangeExternalExporterDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type ChangeExternalExporterDefault struct { - _statusCode int - - Payload *ChangeExternalExporterDefaultBody -} - -// Code gets the status code for the change external exporter default response -func (o *ChangeExternalExporterDefault) Code() int { - return o._statusCode -} - -func (o *ChangeExternalExporterDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeExternalExporter][%d] ChangeExternalExporter default %+v", o._statusCode, o.Payload) -} - -func (o *ChangeExternalExporterDefault) GetPayload() *ChangeExternalExporterDefaultBody { - return o.Payload -} - -func (o *ChangeExternalExporterDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeExternalExporterDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -ChangeExternalExporterBody change external exporter body -swagger:model ChangeExternalExporterBody -*/ -type ChangeExternalExporterBody struct { - // agent id - AgentID string `json:"agent_id,omitempty"` - - // common - Common *ChangeExternalExporterParamsBodyCommon `json:"common,omitempty"` -} - -// Validate validates this change external exporter body -func (o *ChangeExternalExporterBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateCommon(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeExternalExporterBody) validateCommon(formats strfmt.Registry) error { - if swag.IsZero(o.Common) { // not required - return nil - } - - if o.Common != nil { - if err := o.Common.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change external exporter body based on the context it is used -func (o *ChangeExternalExporterBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateCommon(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeExternalExporterBody) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { - if o.Common != nil { - if err := o.Common.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeExternalExporterBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeExternalExporterBody) UnmarshalBinary(b []byte) error { - var res ChangeExternalExporterBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeExternalExporterDefaultBody change external exporter default body -swagger:model ChangeExternalExporterDefaultBody -*/ -type ChangeExternalExporterDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*ChangeExternalExporterDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this change external exporter default body -func (o *ChangeExternalExporterDefaultBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateDetails(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeExternalExporterDefaultBody) validateDetails(formats strfmt.Registry) error { - if swag.IsZero(o.Details) { // not required - return nil - } - - for i := 0; i < len(o.Details); i++ { - if swag.IsZero(o.Details[i]) { // not required - continue - } - - if o.Details[i] != nil { - if err := o.Details[i].Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeExternalExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeExternalExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this change external exporter default body based on the context it is used -func (o *ChangeExternalExporterDefaultBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateDetails(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeExternalExporterDefaultBody) contextValidateDetails(ctx context.Context, formats strfmt.Registry) error { - for i := 0; i < len(o.Details); i++ { - if o.Details[i] != nil { - if err := o.Details[i].ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeExternalExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeExternalExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeExternalExporterDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeExternalExporterDefaultBody) UnmarshalBinary(b []byte) error { - var res ChangeExternalExporterDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeExternalExporterDefaultBodyDetailsItems0 change external exporter default body details items0 -swagger:model ChangeExternalExporterDefaultBodyDetailsItems0 -*/ -type ChangeExternalExporterDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this change external exporter default body details items0 -func (o *ChangeExternalExporterDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change external exporter default body details items0 based on context it is used -func (o *ChangeExternalExporterDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeExternalExporterDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeExternalExporterDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res ChangeExternalExporterDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeExternalExporterOKBody change external exporter OK body -swagger:model ChangeExternalExporterOKBody -*/ -type ChangeExternalExporterOKBody struct { - // external exporter - ExternalExporter *ChangeExternalExporterOKBodyExternalExporter `json:"external_exporter,omitempty"` -} - -// Validate validates this change external exporter OK body -func (o *ChangeExternalExporterOKBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateExternalExporter(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeExternalExporterOKBody) validateExternalExporter(formats strfmt.Registry) error { - if swag.IsZero(o.ExternalExporter) { // not required - return nil - } - - if o.ExternalExporter != nil { - if err := o.ExternalExporter.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeExternalExporterOk" + "." + "external_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeExternalExporterOk" + "." + "external_exporter") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change external exporter OK body based on the context it is used -func (o *ChangeExternalExporterOKBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateExternalExporter(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeExternalExporterOKBody) contextValidateExternalExporter(ctx context.Context, formats strfmt.Registry) error { - if o.ExternalExporter != nil { - if err := o.ExternalExporter.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeExternalExporterOk" + "." + "external_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeExternalExporterOk" + "." + "external_exporter") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeExternalExporterOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeExternalExporterOKBody) UnmarshalBinary(b []byte) error { - var res ChangeExternalExporterOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeExternalExporterOKBodyExternalExporter ExternalExporter runs on any Node type, including Remote Node. -swagger:model ChangeExternalExporterOKBodyExternalExporter -*/ -type ChangeExternalExporterOKBodyExternalExporter struct { - // Unique randomly generated instance identifier. - AgentID string `json:"agent_id,omitempty"` - - // Node identifier where this instance runs. - RunsOnNodeID string `json:"runs_on_node_id,omitempty"` - - // If disabled, metrics from this exporter will not be collected. - Disabled bool `json:"disabled,omitempty"` - - // Service identifier. - ServiceID string `json:"service_id,omitempty"` - - // HTTP basic auth username for collecting metrics. - Username string `json:"username,omitempty"` - - // Scheme to generate URI to exporter metrics endpoints. - Scheme string `json:"scheme,omitempty"` - - // Path under which metrics are exposed, used to generate URI. - MetricsPath string `json:"metrics_path,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Listen port for scraping metrics. - ListenPort int64 `json:"listen_port,omitempty"` - - // True if exporter uses push metrics mode. - PushMetricsEnabled bool `json:"push_metrics_enabled,omitempty"` - - // Path to exec process. - ProcessExecPath string `json:"process_exec_path,omitempty"` -} - -// Validate validates this change external exporter OK body external exporter -func (o *ChangeExternalExporterOKBodyExternalExporter) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change external exporter OK body external exporter based on context it is used -func (o *ChangeExternalExporterOKBodyExternalExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeExternalExporterOKBodyExternalExporter) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeExternalExporterOKBodyExternalExporter) UnmarshalBinary(b []byte) error { - var res ChangeExternalExporterOKBodyExternalExporter - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeExternalExporterParamsBodyCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. -swagger:model ChangeExternalExporterParamsBodyCommon -*/ -type ChangeExternalExporterParamsBodyCommon struct { - // Enable this Agent. Can't be used with disabled. - Enable bool `json:"enable,omitempty"` - - // Disable this Agent. Can't be used with enabled. - Disable bool `json:"disable,omitempty"` - - // Replace all custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Remove all custom user-assigned labels. - RemoveCustomLabels bool `json:"remove_custom_labels,omitempty"` - - // Enables push metrics with vmagent, can't be used with disable_push_metrics. - // Can't be used with agent version lower then 2.12 and unsupported agents. - EnablePushMetrics bool `json:"enable_push_metrics,omitempty"` - - // Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics. - DisablePushMetrics bool `json:"disable_push_metrics,omitempty"` -} - -// Validate validates this change external exporter params body common -func (o *ChangeExternalExporterParamsBodyCommon) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change external exporter params body common based on context it is used -func (o *ChangeExternalExporterParamsBodyCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeExternalExporterParamsBodyCommon) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeExternalExporterParamsBodyCommon) UnmarshalBinary(b []byte) error { - var res ChangeExternalExporterParamsBodyCommon - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_mongo_db_exporter_parameters.go b/api/inventory/v1/json/client/agents_service/change_mongo_db_exporter_parameters.go deleted file mode 100644 index 9527e5da58..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_mongo_db_exporter_parameters.go +++ /dev/null @@ -1,144 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "net/http" - "time" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - cr "github.com/go-openapi/runtime/client" - "github.com/go-openapi/strfmt" -) - -// NewChangeMongoDBExporterParams creates a new ChangeMongoDBExporterParams object, -// with the default timeout for this client. -// -// Default values are not hydrated, since defaults are normally applied by the API server side. -// -// To enforce default values in parameter, use SetDefaults or WithDefaults. -func NewChangeMongoDBExporterParams() *ChangeMongoDBExporterParams { - return &ChangeMongoDBExporterParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewChangeMongoDBExporterParamsWithTimeout creates a new ChangeMongoDBExporterParams object -// with the ability to set a timeout on a request. -func NewChangeMongoDBExporterParamsWithTimeout(timeout time.Duration) *ChangeMongoDBExporterParams { - return &ChangeMongoDBExporterParams{ - timeout: timeout, - } -} - -// NewChangeMongoDBExporterParamsWithContext creates a new ChangeMongoDBExporterParams object -// with the ability to set a context for a request. -func NewChangeMongoDBExporterParamsWithContext(ctx context.Context) *ChangeMongoDBExporterParams { - return &ChangeMongoDBExporterParams{ - Context: ctx, - } -} - -// NewChangeMongoDBExporterParamsWithHTTPClient creates a new ChangeMongoDBExporterParams object -// with the ability to set a custom HTTPClient for a request. -func NewChangeMongoDBExporterParamsWithHTTPClient(client *http.Client) *ChangeMongoDBExporterParams { - return &ChangeMongoDBExporterParams{ - HTTPClient: client, - } -} - -/* -ChangeMongoDBExporterParams contains all the parameters to send to the API endpoint - - for the change mongo DB exporter operation. - - Typically these are written to a http.Request. -*/ -type ChangeMongoDBExporterParams struct { - // Body. - Body ChangeMongoDBExporterBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the change mongo DB exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeMongoDBExporterParams) WithDefaults() *ChangeMongoDBExporterParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the change mongo DB exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeMongoDBExporterParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the change mongo DB exporter params -func (o *ChangeMongoDBExporterParams) WithTimeout(timeout time.Duration) *ChangeMongoDBExporterParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the change mongo DB exporter params -func (o *ChangeMongoDBExporterParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the change mongo DB exporter params -func (o *ChangeMongoDBExporterParams) WithContext(ctx context.Context) *ChangeMongoDBExporterParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the change mongo DB exporter params -func (o *ChangeMongoDBExporterParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the change mongo DB exporter params -func (o *ChangeMongoDBExporterParams) WithHTTPClient(client *http.Client) *ChangeMongoDBExporterParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the change mongo DB exporter params -func (o *ChangeMongoDBExporterParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the change mongo DB exporter params -func (o *ChangeMongoDBExporterParams) WithBody(body ChangeMongoDBExporterBody) *ChangeMongoDBExporterParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the change mongo DB exporter params -func (o *ChangeMongoDBExporterParams) SetBody(body ChangeMongoDBExporterBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *ChangeMongoDBExporterParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error { - if err := r.SetTimeout(o.timeout); err != nil { - return err - } - var res []error - if err := r.SetBodyParam(o.Body); err != nil { - return err - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_mongo_db_exporter_responses.go b/api/inventory/v1/json/client/agents_service/change_mongo_db_exporter_responses.go deleted file mode 100644 index 9037d264b5..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_mongo_db_exporter_responses.go +++ /dev/null @@ -1,720 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "encoding/json" - "fmt" - "io" - "strconv" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - "github.com/go-openapi/strfmt" - "github.com/go-openapi/swag" - "github.com/go-openapi/validate" -) - -// ChangeMongoDBExporterReader is a Reader for the ChangeMongoDBExporter structure. -type ChangeMongoDBExporterReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *ChangeMongoDBExporterReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewChangeMongoDBExporterOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewChangeMongoDBExporterDefault(response.Code()) - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - if response.Code()/100 == 2 { - return result, nil - } - return nil, result - } -} - -// NewChangeMongoDBExporterOK creates a ChangeMongoDBExporterOK with default headers values -func NewChangeMongoDBExporterOK() *ChangeMongoDBExporterOK { - return &ChangeMongoDBExporterOK{} -} - -/* -ChangeMongoDBExporterOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type ChangeMongoDBExporterOK struct { - Payload *ChangeMongoDBExporterOKBody -} - -func (o *ChangeMongoDBExporterOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeMongoDBExporter][%d] changeMongoDbExporterOk %+v", 200, o.Payload) -} - -func (o *ChangeMongoDBExporterOK) GetPayload() *ChangeMongoDBExporterOKBody { - return o.Payload -} - -func (o *ChangeMongoDBExporterOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeMongoDBExporterOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewChangeMongoDBExporterDefault creates a ChangeMongoDBExporterDefault with default headers values -func NewChangeMongoDBExporterDefault(code int) *ChangeMongoDBExporterDefault { - return &ChangeMongoDBExporterDefault{ - _statusCode: code, - } -} - -/* -ChangeMongoDBExporterDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type ChangeMongoDBExporterDefault struct { - _statusCode int - - Payload *ChangeMongoDBExporterDefaultBody -} - -// Code gets the status code for the change mongo DB exporter default response -func (o *ChangeMongoDBExporterDefault) Code() int { - return o._statusCode -} - -func (o *ChangeMongoDBExporterDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeMongoDBExporter][%d] ChangeMongoDBExporter default %+v", o._statusCode, o.Payload) -} - -func (o *ChangeMongoDBExporterDefault) GetPayload() *ChangeMongoDBExporterDefaultBody { - return o.Payload -} - -func (o *ChangeMongoDBExporterDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeMongoDBExporterDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -ChangeMongoDBExporterBody change mongo DB exporter body -swagger:model ChangeMongoDBExporterBody -*/ -type ChangeMongoDBExporterBody struct { - // agent id - AgentID string `json:"agent_id,omitempty"` - - // common - Common *ChangeMongoDBExporterParamsBodyCommon `json:"common,omitempty"` -} - -// Validate validates this change mongo DB exporter body -func (o *ChangeMongoDBExporterBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateCommon(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeMongoDBExporterBody) validateCommon(formats strfmt.Registry) error { - if swag.IsZero(o.Common) { // not required - return nil - } - - if o.Common != nil { - if err := o.Common.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change mongo DB exporter body based on the context it is used -func (o *ChangeMongoDBExporterBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateCommon(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeMongoDBExporterBody) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { - if o.Common != nil { - if err := o.Common.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeMongoDBExporterBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeMongoDBExporterBody) UnmarshalBinary(b []byte) error { - var res ChangeMongoDBExporterBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeMongoDBExporterDefaultBody change mongo DB exporter default body -swagger:model ChangeMongoDBExporterDefaultBody -*/ -type ChangeMongoDBExporterDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*ChangeMongoDBExporterDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this change mongo DB exporter default body -func (o *ChangeMongoDBExporterDefaultBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateDetails(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeMongoDBExporterDefaultBody) validateDetails(formats strfmt.Registry) error { - if swag.IsZero(o.Details) { // not required - return nil - } - - for i := 0; i < len(o.Details); i++ { - if swag.IsZero(o.Details[i]) { // not required - continue - } - - if o.Details[i] != nil { - if err := o.Details[i].Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeMongoDBExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeMongoDBExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this change mongo DB exporter default body based on the context it is used -func (o *ChangeMongoDBExporterDefaultBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateDetails(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeMongoDBExporterDefaultBody) contextValidateDetails(ctx context.Context, formats strfmt.Registry) error { - for i := 0; i < len(o.Details); i++ { - if o.Details[i] != nil { - if err := o.Details[i].ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeMongoDBExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeMongoDBExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeMongoDBExporterDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeMongoDBExporterDefaultBody) UnmarshalBinary(b []byte) error { - var res ChangeMongoDBExporterDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeMongoDBExporterDefaultBodyDetailsItems0 change mongo DB exporter default body details items0 -swagger:model ChangeMongoDBExporterDefaultBodyDetailsItems0 -*/ -type ChangeMongoDBExporterDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this change mongo DB exporter default body details items0 -func (o *ChangeMongoDBExporterDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change mongo DB exporter default body details items0 based on context it is used -func (o *ChangeMongoDBExporterDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeMongoDBExporterDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeMongoDBExporterDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res ChangeMongoDBExporterDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeMongoDBExporterOKBody change mongo DB exporter OK body -swagger:model ChangeMongoDBExporterOKBody -*/ -type ChangeMongoDBExporterOKBody struct { - // mongodb exporter - MongodbExporter *ChangeMongoDBExporterOKBodyMongodbExporter `json:"mongodb_exporter,omitempty"` -} - -// Validate validates this change mongo DB exporter OK body -func (o *ChangeMongoDBExporterOKBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateMongodbExporter(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeMongoDBExporterOKBody) validateMongodbExporter(formats strfmt.Registry) error { - if swag.IsZero(o.MongodbExporter) { // not required - return nil - } - - if o.MongodbExporter != nil { - if err := o.MongodbExporter.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeMongoDbExporterOk" + "." + "mongodb_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeMongoDbExporterOk" + "." + "mongodb_exporter") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change mongo DB exporter OK body based on the context it is used -func (o *ChangeMongoDBExporterOKBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateMongodbExporter(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeMongoDBExporterOKBody) contextValidateMongodbExporter(ctx context.Context, formats strfmt.Registry) error { - if o.MongodbExporter != nil { - if err := o.MongodbExporter.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeMongoDbExporterOk" + "." + "mongodb_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeMongoDbExporterOk" + "." + "mongodb_exporter") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeMongoDBExporterOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeMongoDBExporterOKBody) UnmarshalBinary(b []byte) error { - var res ChangeMongoDBExporterOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeMongoDBExporterOKBodyMongodbExporter MongoDBExporter runs on Generic or Container Node and exposes MongoDB Service metrics. -swagger:model ChangeMongoDBExporterOKBodyMongodbExporter -*/ -type ChangeMongoDBExporterOKBodyMongodbExporter struct { - // Unique randomly generated instance identifier. - AgentID string `json:"agent_id,omitempty"` - - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Desired Agent status: enabled (false) or disabled (true). - Disabled bool `json:"disabled,omitempty"` - - // Service identifier. - ServiceID string `json:"service_id,omitempty"` - - // MongoDB username for scraping metrics. - Username string `json:"username,omitempty"` - - // Use TLS for database connections. - TLS bool `json:"tls,omitempty"` - - // Skip TLS certificate and hostname validation. - TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // True if exporter uses push metrics mode. - PushMetricsEnabled bool `json:"push_metrics_enabled,omitempty"` - - // List of disabled collector names. - DisabledCollectors []string `json:"disabled_collectors"` - - // AgentStatus represents actual Agent status. - // - // - AGENT_STATUS_STARTING: Agent is starting. - // - AGENT_STATUS_RUNNING: Agent is running. - // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. - // - AGENT_STATUS_STOPPING: Agent is stopping. - // - AGENT_STATUS_DONE: Agent finished. - // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. - // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] - Status *string `json:"status,omitempty"` - - // Listen port for scraping metrics. - ListenPort int64 `json:"listen_port,omitempty"` - - // List of colletions to get stats from. Can use * - StatsCollections []string `json:"stats_collections"` - - // Collections limit. Only get Databases and collection stats if the total number of collections in the server - // is less than this value. 0: no limit - CollectionsLimit int32 `json:"collections_limit,omitempty"` - - // Enable All collectors. - EnableAllCollectors bool `json:"enable_all_collectors,omitempty"` - - // Path to exec process. - ProcessExecPath string `json:"process_exec_path,omitempty"` - - // Log level for exporters - // - // - LOG_LEVEL_UNSPECIFIED: Auto - // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] - LogLevel *string `json:"log_level,omitempty"` - - // Optionally expose the exporter process on all public interfaces - ExposeExporter bool `json:"expose_exporter,omitempty"` -} - -// Validate validates this change mongo DB exporter OK body mongodb exporter -func (o *ChangeMongoDBExporterOKBodyMongodbExporter) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateStatus(formats); err != nil { - res = append(res, err) - } - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var changeMongoDbExporterOkBodyMongodbExporterTypeStatusPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeMongoDbExporterOkBodyMongodbExporterTypeStatusPropEnum = append(changeMongoDbExporterOkBodyMongodbExporterTypeStatusPropEnum, v) - } -} - -const ( - - // ChangeMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - ChangeMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // ChangeMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - ChangeMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // ChangeMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - ChangeMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // ChangeMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - ChangeMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // ChangeMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - ChangeMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // ChangeMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - ChangeMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // ChangeMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - ChangeMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *ChangeMongoDBExporterOKBodyMongodbExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeMongoDbExporterOkBodyMongodbExporterTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeMongoDBExporterOKBodyMongodbExporter) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("changeMongoDbExporterOk"+"."+"mongodb_exporter"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var changeMongoDbExporterOkBodyMongodbExporterTypeLogLevelPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeMongoDbExporterOkBodyMongodbExporterTypeLogLevelPropEnum = append(changeMongoDbExporterOkBodyMongodbExporterTypeLogLevelPropEnum, v) - } -} - -const ( - - // ChangeMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - ChangeMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // ChangeMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - ChangeMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // ChangeMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - ChangeMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // ChangeMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - ChangeMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // ChangeMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - ChangeMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // ChangeMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - ChangeMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *ChangeMongoDBExporterOKBodyMongodbExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeMongoDbExporterOkBodyMongodbExporterTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeMongoDBExporterOKBodyMongodbExporter) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("changeMongoDbExporterOk"+"."+"mongodb_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this change mongo DB exporter OK body mongodb exporter based on context it is used -func (o *ChangeMongoDBExporterOKBodyMongodbExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeMongoDBExporterOKBodyMongodbExporter) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeMongoDBExporterOKBodyMongodbExporter) UnmarshalBinary(b []byte) error { - var res ChangeMongoDBExporterOKBodyMongodbExporter - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeMongoDBExporterParamsBodyCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. -swagger:model ChangeMongoDBExporterParamsBodyCommon -*/ -type ChangeMongoDBExporterParamsBodyCommon struct { - // Enable this Agent. Can't be used with disabled. - Enable bool `json:"enable,omitempty"` - - // Disable this Agent. Can't be used with enabled. - Disable bool `json:"disable,omitempty"` - - // Replace all custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Remove all custom user-assigned labels. - RemoveCustomLabels bool `json:"remove_custom_labels,omitempty"` - - // Enables push metrics with vmagent, can't be used with disable_push_metrics. - // Can't be used with agent version lower then 2.12 and unsupported agents. - EnablePushMetrics bool `json:"enable_push_metrics,omitempty"` - - // Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics. - DisablePushMetrics bool `json:"disable_push_metrics,omitempty"` -} - -// Validate validates this change mongo DB exporter params body common -func (o *ChangeMongoDBExporterParamsBodyCommon) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change mongo DB exporter params body common based on context it is used -func (o *ChangeMongoDBExporterParamsBodyCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeMongoDBExporterParamsBodyCommon) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeMongoDBExporterParamsBodyCommon) UnmarshalBinary(b []byte) error { - var res ChangeMongoDBExporterParamsBodyCommon - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_my_s_q_ld_exporter_parameters.go b/api/inventory/v1/json/client/agents_service/change_my_s_q_ld_exporter_parameters.go deleted file mode 100644 index e8739911e8..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_my_s_q_ld_exporter_parameters.go +++ /dev/null @@ -1,144 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "net/http" - "time" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - cr "github.com/go-openapi/runtime/client" - "github.com/go-openapi/strfmt" -) - -// NewChangeMySQLdExporterParams creates a new ChangeMySQLdExporterParams object, -// with the default timeout for this client. -// -// Default values are not hydrated, since defaults are normally applied by the API server side. -// -// To enforce default values in parameter, use SetDefaults or WithDefaults. -func NewChangeMySQLdExporterParams() *ChangeMySQLdExporterParams { - return &ChangeMySQLdExporterParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewChangeMySQLdExporterParamsWithTimeout creates a new ChangeMySQLdExporterParams object -// with the ability to set a timeout on a request. -func NewChangeMySQLdExporterParamsWithTimeout(timeout time.Duration) *ChangeMySQLdExporterParams { - return &ChangeMySQLdExporterParams{ - timeout: timeout, - } -} - -// NewChangeMySQLdExporterParamsWithContext creates a new ChangeMySQLdExporterParams object -// with the ability to set a context for a request. -func NewChangeMySQLdExporterParamsWithContext(ctx context.Context) *ChangeMySQLdExporterParams { - return &ChangeMySQLdExporterParams{ - Context: ctx, - } -} - -// NewChangeMySQLdExporterParamsWithHTTPClient creates a new ChangeMySQLdExporterParams object -// with the ability to set a custom HTTPClient for a request. -func NewChangeMySQLdExporterParamsWithHTTPClient(client *http.Client) *ChangeMySQLdExporterParams { - return &ChangeMySQLdExporterParams{ - HTTPClient: client, - } -} - -/* -ChangeMySQLdExporterParams contains all the parameters to send to the API endpoint - - for the change my s q ld exporter operation. - - Typically these are written to a http.Request. -*/ -type ChangeMySQLdExporterParams struct { - // Body. - Body ChangeMySQLdExporterBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the change my s q ld exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeMySQLdExporterParams) WithDefaults() *ChangeMySQLdExporterParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the change my s q ld exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeMySQLdExporterParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the change my s q ld exporter params -func (o *ChangeMySQLdExporterParams) WithTimeout(timeout time.Duration) *ChangeMySQLdExporterParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the change my s q ld exporter params -func (o *ChangeMySQLdExporterParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the change my s q ld exporter params -func (o *ChangeMySQLdExporterParams) WithContext(ctx context.Context) *ChangeMySQLdExporterParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the change my s q ld exporter params -func (o *ChangeMySQLdExporterParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the change my s q ld exporter params -func (o *ChangeMySQLdExporterParams) WithHTTPClient(client *http.Client) *ChangeMySQLdExporterParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the change my s q ld exporter params -func (o *ChangeMySQLdExporterParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the change my s q ld exporter params -func (o *ChangeMySQLdExporterParams) WithBody(body ChangeMySQLdExporterBody) *ChangeMySQLdExporterParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the change my s q ld exporter params -func (o *ChangeMySQLdExporterParams) SetBody(body ChangeMySQLdExporterBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *ChangeMySQLdExporterParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error { - if err := r.SetTimeout(o.timeout); err != nil { - return err - } - var res []error - if err := r.SetBodyParam(o.Body); err != nil { - return err - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_my_s_q_ld_exporter_responses.go b/api/inventory/v1/json/client/agents_service/change_my_s_q_ld_exporter_responses.go deleted file mode 100644 index e7c4b2651c..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_my_s_q_ld_exporter_responses.go +++ /dev/null @@ -1,727 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "encoding/json" - "fmt" - "io" - "strconv" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - "github.com/go-openapi/strfmt" - "github.com/go-openapi/swag" - "github.com/go-openapi/validate" -) - -// ChangeMySQLdExporterReader is a Reader for the ChangeMySQLdExporter structure. -type ChangeMySQLdExporterReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *ChangeMySQLdExporterReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewChangeMySQLdExporterOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewChangeMySQLdExporterDefault(response.Code()) - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - if response.Code()/100 == 2 { - return result, nil - } - return nil, result - } -} - -// NewChangeMySQLdExporterOK creates a ChangeMySQLdExporterOK with default headers values -func NewChangeMySQLdExporterOK() *ChangeMySQLdExporterOK { - return &ChangeMySQLdExporterOK{} -} - -/* -ChangeMySQLdExporterOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type ChangeMySQLdExporterOK struct { - Payload *ChangeMySQLdExporterOKBody -} - -func (o *ChangeMySQLdExporterOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeMySQLdExporter][%d] changeMySQLdExporterOk %+v", 200, o.Payload) -} - -func (o *ChangeMySQLdExporterOK) GetPayload() *ChangeMySQLdExporterOKBody { - return o.Payload -} - -func (o *ChangeMySQLdExporterOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeMySQLdExporterOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewChangeMySQLdExporterDefault creates a ChangeMySQLdExporterDefault with default headers values -func NewChangeMySQLdExporterDefault(code int) *ChangeMySQLdExporterDefault { - return &ChangeMySQLdExporterDefault{ - _statusCode: code, - } -} - -/* -ChangeMySQLdExporterDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type ChangeMySQLdExporterDefault struct { - _statusCode int - - Payload *ChangeMySQLdExporterDefaultBody -} - -// Code gets the status code for the change my s q ld exporter default response -func (o *ChangeMySQLdExporterDefault) Code() int { - return o._statusCode -} - -func (o *ChangeMySQLdExporterDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeMySQLdExporter][%d] ChangeMySQLdExporter default %+v", o._statusCode, o.Payload) -} - -func (o *ChangeMySQLdExporterDefault) GetPayload() *ChangeMySQLdExporterDefaultBody { - return o.Payload -} - -func (o *ChangeMySQLdExporterDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeMySQLdExporterDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -ChangeMySQLdExporterBody change my s q ld exporter body -swagger:model ChangeMySQLdExporterBody -*/ -type ChangeMySQLdExporterBody struct { - // agent id - AgentID string `json:"agent_id,omitempty"` - - // common - Common *ChangeMySQLdExporterParamsBodyCommon `json:"common,omitempty"` -} - -// Validate validates this change my s q ld exporter body -func (o *ChangeMySQLdExporterBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateCommon(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeMySQLdExporterBody) validateCommon(formats strfmt.Registry) error { - if swag.IsZero(o.Common) { // not required - return nil - } - - if o.Common != nil { - if err := o.Common.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change my s q ld exporter body based on the context it is used -func (o *ChangeMySQLdExporterBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateCommon(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeMySQLdExporterBody) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { - if o.Common != nil { - if err := o.Common.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeMySQLdExporterBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeMySQLdExporterBody) UnmarshalBinary(b []byte) error { - var res ChangeMySQLdExporterBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeMySQLdExporterDefaultBody change my s q ld exporter default body -swagger:model ChangeMySQLdExporterDefaultBody -*/ -type ChangeMySQLdExporterDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*ChangeMySQLdExporterDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this change my s q ld exporter default body -func (o *ChangeMySQLdExporterDefaultBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateDetails(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeMySQLdExporterDefaultBody) validateDetails(formats strfmt.Registry) error { - if swag.IsZero(o.Details) { // not required - return nil - } - - for i := 0; i < len(o.Details); i++ { - if swag.IsZero(o.Details[i]) { // not required - continue - } - - if o.Details[i] != nil { - if err := o.Details[i].Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeMySQLdExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeMySQLdExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this change my s q ld exporter default body based on the context it is used -func (o *ChangeMySQLdExporterDefaultBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateDetails(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeMySQLdExporterDefaultBody) contextValidateDetails(ctx context.Context, formats strfmt.Registry) error { - for i := 0; i < len(o.Details); i++ { - if o.Details[i] != nil { - if err := o.Details[i].ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeMySQLdExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeMySQLdExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeMySQLdExporterDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeMySQLdExporterDefaultBody) UnmarshalBinary(b []byte) error { - var res ChangeMySQLdExporterDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeMySQLdExporterDefaultBodyDetailsItems0 change my s q ld exporter default body details items0 -swagger:model ChangeMySQLdExporterDefaultBodyDetailsItems0 -*/ -type ChangeMySQLdExporterDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this change my s q ld exporter default body details items0 -func (o *ChangeMySQLdExporterDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change my s q ld exporter default body details items0 based on context it is used -func (o *ChangeMySQLdExporterDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeMySQLdExporterDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeMySQLdExporterDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res ChangeMySQLdExporterDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeMySQLdExporterOKBody change my s q ld exporter OK body -swagger:model ChangeMySQLdExporterOKBody -*/ -type ChangeMySQLdExporterOKBody struct { - // mysqld exporter - MysqldExporter *ChangeMySQLdExporterOKBodyMysqldExporter `json:"mysqld_exporter,omitempty"` -} - -// Validate validates this change my s q ld exporter OK body -func (o *ChangeMySQLdExporterOKBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateMysqldExporter(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeMySQLdExporterOKBody) validateMysqldExporter(formats strfmt.Registry) error { - if swag.IsZero(o.MysqldExporter) { // not required - return nil - } - - if o.MysqldExporter != nil { - if err := o.MysqldExporter.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeMySQLdExporterOk" + "." + "mysqld_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeMySQLdExporterOk" + "." + "mysqld_exporter") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change my s q ld exporter OK body based on the context it is used -func (o *ChangeMySQLdExporterOKBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateMysqldExporter(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeMySQLdExporterOKBody) contextValidateMysqldExporter(ctx context.Context, formats strfmt.Registry) error { - if o.MysqldExporter != nil { - if err := o.MysqldExporter.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeMySQLdExporterOk" + "." + "mysqld_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeMySQLdExporterOk" + "." + "mysqld_exporter") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeMySQLdExporterOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeMySQLdExporterOKBody) UnmarshalBinary(b []byte) error { - var res ChangeMySQLdExporterOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeMySQLdExporterOKBodyMysqldExporter MySQLdExporter runs on Generic or Container Node and exposes MySQL Service metrics. -swagger:model ChangeMySQLdExporterOKBodyMysqldExporter -*/ -type ChangeMySQLdExporterOKBodyMysqldExporter struct { - // Unique randomly generated instance identifier. - AgentID string `json:"agent_id,omitempty"` - - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Desired Agent status: enabled (false) or disabled (true). - Disabled bool `json:"disabled,omitempty"` - - // Service identifier. - ServiceID string `json:"service_id,omitempty"` - - // MySQL username for scraping metrics. - Username string `json:"username,omitempty"` - - // Use TLS for database connections. - TLS bool `json:"tls,omitempty"` - - // Skip TLS certificate and hostname validation. - TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` - - // Certificate Authority certificate chain. - TLSCa string `json:"tls_ca,omitempty"` - - // Client certificate. - TLSCert string `json:"tls_cert,omitempty"` - - // Password for decrypting tls_cert. - TLSKey string `json:"tls_key,omitempty"` - - // Tablestats group collectors are disabled if there are more than that number of tables. - // 0 means tablestats group collectors are always enabled (no limit). - // Negative value means tablestats group collectors are always disabled. - TablestatsGroupTableLimit int32 `json:"tablestats_group_table_limit,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // True if exporter uses push metrics mode. - PushMetricsEnabled bool `json:"push_metrics_enabled,omitempty"` - - // List of disabled collector names. - DisabledCollectors []string `json:"disabled_collectors"` - - // AgentStatus represents actual Agent status. - // - // - AGENT_STATUS_STARTING: Agent is starting. - // - AGENT_STATUS_RUNNING: Agent is running. - // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. - // - AGENT_STATUS_STOPPING: Agent is stopping. - // - AGENT_STATUS_DONE: Agent finished. - // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. - // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] - Status *string `json:"status,omitempty"` - - // Listen port for scraping metrics. - ListenPort int64 `json:"listen_port,omitempty"` - - // True if tablestats group collectors are currently disabled. - TablestatsGroupDisabled bool `json:"tablestats_group_disabled,omitempty"` - - // Path to exec process. - ProcessExecPath string `json:"process_exec_path,omitempty"` - - // Log level for exporters - // - // - LOG_LEVEL_UNSPECIFIED: Auto - // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] - LogLevel *string `json:"log_level,omitempty"` - - // Optionally expose the exporter process on all public interfaces - ExposeExporter bool `json:"expose_exporter,omitempty"` -} - -// Validate validates this change my s q ld exporter OK body mysqld exporter -func (o *ChangeMySQLdExporterOKBodyMysqldExporter) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateStatus(formats); err != nil { - res = append(res, err) - } - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var changeMySQLdExporterOkBodyMysqldExporterTypeStatusPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeMySQLdExporterOkBodyMysqldExporterTypeStatusPropEnum = append(changeMySQLdExporterOkBodyMysqldExporterTypeStatusPropEnum, v) - } -} - -const ( - - // ChangeMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - ChangeMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // ChangeMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - ChangeMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // ChangeMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - ChangeMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // ChangeMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - ChangeMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // ChangeMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - ChangeMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // ChangeMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - ChangeMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // ChangeMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - ChangeMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *ChangeMySQLdExporterOKBodyMysqldExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeMySQLdExporterOkBodyMysqldExporterTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeMySQLdExporterOKBodyMysqldExporter) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("changeMySQLdExporterOk"+"."+"mysqld_exporter"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var changeMySQLdExporterOkBodyMysqldExporterTypeLogLevelPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeMySQLdExporterOkBodyMysqldExporterTypeLogLevelPropEnum = append(changeMySQLdExporterOkBodyMysqldExporterTypeLogLevelPropEnum, v) - } -} - -const ( - - // ChangeMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - ChangeMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // ChangeMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - ChangeMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // ChangeMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - ChangeMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // ChangeMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - ChangeMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // ChangeMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - ChangeMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // ChangeMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - ChangeMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *ChangeMySQLdExporterOKBodyMysqldExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeMySQLdExporterOkBodyMysqldExporterTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeMySQLdExporterOKBodyMysqldExporter) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("changeMySQLdExporterOk"+"."+"mysqld_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this change my s q ld exporter OK body mysqld exporter based on context it is used -func (o *ChangeMySQLdExporterOKBodyMysqldExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeMySQLdExporterOKBodyMysqldExporter) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeMySQLdExporterOKBodyMysqldExporter) UnmarshalBinary(b []byte) error { - var res ChangeMySQLdExporterOKBodyMysqldExporter - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeMySQLdExporterParamsBodyCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. -swagger:model ChangeMySQLdExporterParamsBodyCommon -*/ -type ChangeMySQLdExporterParamsBodyCommon struct { - // Enable this Agent. Can't be used with disabled. - Enable bool `json:"enable,omitempty"` - - // Disable this Agent. Can't be used with enabled. - Disable bool `json:"disable,omitempty"` - - // Replace all custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Remove all custom user-assigned labels. - RemoveCustomLabels bool `json:"remove_custom_labels,omitempty"` - - // Enables push metrics with vmagent, can't be used with disable_push_metrics. - // Can't be used with agent version lower then 2.12 and unsupported agents. - EnablePushMetrics bool `json:"enable_push_metrics,omitempty"` - - // Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics. - DisablePushMetrics bool `json:"disable_push_metrics,omitempty"` -} - -// Validate validates this change my s q ld exporter params body common -func (o *ChangeMySQLdExporterParamsBodyCommon) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change my s q ld exporter params body common based on context it is used -func (o *ChangeMySQLdExporterParamsBodyCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeMySQLdExporterParamsBodyCommon) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeMySQLdExporterParamsBodyCommon) UnmarshalBinary(b []byte) error { - var res ChangeMySQLdExporterParamsBodyCommon - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_node_exporter_parameters.go b/api/inventory/v1/json/client/agents_service/change_node_exporter_parameters.go deleted file mode 100644 index ea5581b69b..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_node_exporter_parameters.go +++ /dev/null @@ -1,144 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "net/http" - "time" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - cr "github.com/go-openapi/runtime/client" - "github.com/go-openapi/strfmt" -) - -// NewChangeNodeExporterParams creates a new ChangeNodeExporterParams object, -// with the default timeout for this client. -// -// Default values are not hydrated, since defaults are normally applied by the API server side. -// -// To enforce default values in parameter, use SetDefaults or WithDefaults. -func NewChangeNodeExporterParams() *ChangeNodeExporterParams { - return &ChangeNodeExporterParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewChangeNodeExporterParamsWithTimeout creates a new ChangeNodeExporterParams object -// with the ability to set a timeout on a request. -func NewChangeNodeExporterParamsWithTimeout(timeout time.Duration) *ChangeNodeExporterParams { - return &ChangeNodeExporterParams{ - timeout: timeout, - } -} - -// NewChangeNodeExporterParamsWithContext creates a new ChangeNodeExporterParams object -// with the ability to set a context for a request. -func NewChangeNodeExporterParamsWithContext(ctx context.Context) *ChangeNodeExporterParams { - return &ChangeNodeExporterParams{ - Context: ctx, - } -} - -// NewChangeNodeExporterParamsWithHTTPClient creates a new ChangeNodeExporterParams object -// with the ability to set a custom HTTPClient for a request. -func NewChangeNodeExporterParamsWithHTTPClient(client *http.Client) *ChangeNodeExporterParams { - return &ChangeNodeExporterParams{ - HTTPClient: client, - } -} - -/* -ChangeNodeExporterParams contains all the parameters to send to the API endpoint - - for the change node exporter operation. - - Typically these are written to a http.Request. -*/ -type ChangeNodeExporterParams struct { - // Body. - Body ChangeNodeExporterBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the change node exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeNodeExporterParams) WithDefaults() *ChangeNodeExporterParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the change node exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeNodeExporterParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the change node exporter params -func (o *ChangeNodeExporterParams) WithTimeout(timeout time.Duration) *ChangeNodeExporterParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the change node exporter params -func (o *ChangeNodeExporterParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the change node exporter params -func (o *ChangeNodeExporterParams) WithContext(ctx context.Context) *ChangeNodeExporterParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the change node exporter params -func (o *ChangeNodeExporterParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the change node exporter params -func (o *ChangeNodeExporterParams) WithHTTPClient(client *http.Client) *ChangeNodeExporterParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the change node exporter params -func (o *ChangeNodeExporterParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the change node exporter params -func (o *ChangeNodeExporterParams) WithBody(body ChangeNodeExporterBody) *ChangeNodeExporterParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the change node exporter params -func (o *ChangeNodeExporterParams) SetBody(body ChangeNodeExporterBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *ChangeNodeExporterParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error { - if err := r.SetTimeout(o.timeout); err != nil { - return err - } - var res []error - if err := r.SetBodyParam(o.Body); err != nil { - return err - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_node_exporter_responses.go b/api/inventory/v1/json/client/agents_service/change_node_exporter_responses.go deleted file mode 100644 index 94d6c495d0..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_node_exporter_responses.go +++ /dev/null @@ -1,698 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "encoding/json" - "fmt" - "io" - "strconv" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - "github.com/go-openapi/strfmt" - "github.com/go-openapi/swag" - "github.com/go-openapi/validate" -) - -// ChangeNodeExporterReader is a Reader for the ChangeNodeExporter structure. -type ChangeNodeExporterReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *ChangeNodeExporterReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewChangeNodeExporterOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewChangeNodeExporterDefault(response.Code()) - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - if response.Code()/100 == 2 { - return result, nil - } - return nil, result - } -} - -// NewChangeNodeExporterOK creates a ChangeNodeExporterOK with default headers values -func NewChangeNodeExporterOK() *ChangeNodeExporterOK { - return &ChangeNodeExporterOK{} -} - -/* -ChangeNodeExporterOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type ChangeNodeExporterOK struct { - Payload *ChangeNodeExporterOKBody -} - -func (o *ChangeNodeExporterOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeNodeExporter][%d] changeNodeExporterOk %+v", 200, o.Payload) -} - -func (o *ChangeNodeExporterOK) GetPayload() *ChangeNodeExporterOKBody { - return o.Payload -} - -func (o *ChangeNodeExporterOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeNodeExporterOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewChangeNodeExporterDefault creates a ChangeNodeExporterDefault with default headers values -func NewChangeNodeExporterDefault(code int) *ChangeNodeExporterDefault { - return &ChangeNodeExporterDefault{ - _statusCode: code, - } -} - -/* -ChangeNodeExporterDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type ChangeNodeExporterDefault struct { - _statusCode int - - Payload *ChangeNodeExporterDefaultBody -} - -// Code gets the status code for the change node exporter default response -func (o *ChangeNodeExporterDefault) Code() int { - return o._statusCode -} - -func (o *ChangeNodeExporterDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeNodeExporter][%d] ChangeNodeExporter default %+v", o._statusCode, o.Payload) -} - -func (o *ChangeNodeExporterDefault) GetPayload() *ChangeNodeExporterDefaultBody { - return o.Payload -} - -func (o *ChangeNodeExporterDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeNodeExporterDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -ChangeNodeExporterBody change node exporter body -swagger:model ChangeNodeExporterBody -*/ -type ChangeNodeExporterBody struct { - // agent id - AgentID string `json:"agent_id,omitempty"` - - // common - Common *ChangeNodeExporterParamsBodyCommon `json:"common,omitempty"` -} - -// Validate validates this change node exporter body -func (o *ChangeNodeExporterBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateCommon(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeNodeExporterBody) validateCommon(formats strfmt.Registry) error { - if swag.IsZero(o.Common) { // not required - return nil - } - - if o.Common != nil { - if err := o.Common.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change node exporter body based on the context it is used -func (o *ChangeNodeExporterBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateCommon(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeNodeExporterBody) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { - if o.Common != nil { - if err := o.Common.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeNodeExporterBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeNodeExporterBody) UnmarshalBinary(b []byte) error { - var res ChangeNodeExporterBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeNodeExporterDefaultBody change node exporter default body -swagger:model ChangeNodeExporterDefaultBody -*/ -type ChangeNodeExporterDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*ChangeNodeExporterDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this change node exporter default body -func (o *ChangeNodeExporterDefaultBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateDetails(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeNodeExporterDefaultBody) validateDetails(formats strfmt.Registry) error { - if swag.IsZero(o.Details) { // not required - return nil - } - - for i := 0; i < len(o.Details); i++ { - if swag.IsZero(o.Details[i]) { // not required - continue - } - - if o.Details[i] != nil { - if err := o.Details[i].Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeNodeExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeNodeExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this change node exporter default body based on the context it is used -func (o *ChangeNodeExporterDefaultBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateDetails(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeNodeExporterDefaultBody) contextValidateDetails(ctx context.Context, formats strfmt.Registry) error { - for i := 0; i < len(o.Details); i++ { - if o.Details[i] != nil { - if err := o.Details[i].ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeNodeExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeNodeExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeNodeExporterDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeNodeExporterDefaultBody) UnmarshalBinary(b []byte) error { - var res ChangeNodeExporterDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeNodeExporterDefaultBodyDetailsItems0 change node exporter default body details items0 -swagger:model ChangeNodeExporterDefaultBodyDetailsItems0 -*/ -type ChangeNodeExporterDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this change node exporter default body details items0 -func (o *ChangeNodeExporterDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change node exporter default body details items0 based on context it is used -func (o *ChangeNodeExporterDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeNodeExporterDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeNodeExporterDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res ChangeNodeExporterDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeNodeExporterOKBody change node exporter OK body -swagger:model ChangeNodeExporterOKBody -*/ -type ChangeNodeExporterOKBody struct { - // node exporter - NodeExporter *ChangeNodeExporterOKBodyNodeExporter `json:"node_exporter,omitempty"` -} - -// Validate validates this change node exporter OK body -func (o *ChangeNodeExporterOKBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateNodeExporter(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeNodeExporterOKBody) validateNodeExporter(formats strfmt.Registry) error { - if swag.IsZero(o.NodeExporter) { // not required - return nil - } - - if o.NodeExporter != nil { - if err := o.NodeExporter.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeNodeExporterOk" + "." + "node_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeNodeExporterOk" + "." + "node_exporter") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change node exporter OK body based on the context it is used -func (o *ChangeNodeExporterOKBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateNodeExporter(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeNodeExporterOKBody) contextValidateNodeExporter(ctx context.Context, formats strfmt.Registry) error { - if o.NodeExporter != nil { - if err := o.NodeExporter.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeNodeExporterOk" + "." + "node_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeNodeExporterOk" + "." + "node_exporter") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeNodeExporterOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeNodeExporterOKBody) UnmarshalBinary(b []byte) error { - var res ChangeNodeExporterOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeNodeExporterOKBodyNodeExporter NodeExporter runs on Generic or Container Node and exposes its metrics. -swagger:model ChangeNodeExporterOKBodyNodeExporter -*/ -type ChangeNodeExporterOKBodyNodeExporter struct { - // Unique randomly generated instance identifier. - AgentID string `json:"agent_id,omitempty"` - - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Desired Agent status: enabled (false) or disabled (true). - Disabled bool `json:"disabled,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // True if exporter uses push metrics mode. - PushMetricsEnabled bool `json:"push_metrics_enabled,omitempty"` - - // List of disabled collector names. - DisabledCollectors []string `json:"disabled_collectors"` - - // AgentStatus represents actual Agent status. - // - // - AGENT_STATUS_STARTING: Agent is starting. - // - AGENT_STATUS_RUNNING: Agent is running. - // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. - // - AGENT_STATUS_STOPPING: Agent is stopping. - // - AGENT_STATUS_DONE: Agent finished. - // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. - // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] - Status *string `json:"status,omitempty"` - - // Listen port for scraping metrics. - ListenPort int64 `json:"listen_port,omitempty"` - - // Path to exec process. - ProcessExecPath string `json:"process_exec_path,omitempty"` - - // Log level for exporters - // - // - LOG_LEVEL_UNSPECIFIED: Auto - // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] - LogLevel *string `json:"log_level,omitempty"` - - // Optionally expose the exporter process on all public interfaces - ExposeExporter bool `json:"expose_exporter,omitempty"` -} - -// Validate validates this change node exporter OK body node exporter -func (o *ChangeNodeExporterOKBodyNodeExporter) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateStatus(formats); err != nil { - res = append(res, err) - } - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var changeNodeExporterOkBodyNodeExporterTypeStatusPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeNodeExporterOkBodyNodeExporterTypeStatusPropEnum = append(changeNodeExporterOkBodyNodeExporterTypeStatusPropEnum, v) - } -} - -const ( - - // ChangeNodeExporterOKBodyNodeExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - ChangeNodeExporterOKBodyNodeExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // ChangeNodeExporterOKBodyNodeExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - ChangeNodeExporterOKBodyNodeExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // ChangeNodeExporterOKBodyNodeExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - ChangeNodeExporterOKBodyNodeExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // ChangeNodeExporterOKBodyNodeExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - ChangeNodeExporterOKBodyNodeExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // ChangeNodeExporterOKBodyNodeExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - ChangeNodeExporterOKBodyNodeExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // ChangeNodeExporterOKBodyNodeExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - ChangeNodeExporterOKBodyNodeExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // ChangeNodeExporterOKBodyNodeExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - ChangeNodeExporterOKBodyNodeExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *ChangeNodeExporterOKBodyNodeExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeNodeExporterOkBodyNodeExporterTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeNodeExporterOKBodyNodeExporter) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("changeNodeExporterOk"+"."+"node_exporter"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var changeNodeExporterOkBodyNodeExporterTypeLogLevelPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeNodeExporterOkBodyNodeExporterTypeLogLevelPropEnum = append(changeNodeExporterOkBodyNodeExporterTypeLogLevelPropEnum, v) - } -} - -const ( - - // ChangeNodeExporterOKBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - ChangeNodeExporterOKBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // ChangeNodeExporterOKBodyNodeExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - ChangeNodeExporterOKBodyNodeExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // ChangeNodeExporterOKBodyNodeExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - ChangeNodeExporterOKBodyNodeExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // ChangeNodeExporterOKBodyNodeExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - ChangeNodeExporterOKBodyNodeExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // ChangeNodeExporterOKBodyNodeExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - ChangeNodeExporterOKBodyNodeExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // ChangeNodeExporterOKBodyNodeExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - ChangeNodeExporterOKBodyNodeExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *ChangeNodeExporterOKBodyNodeExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeNodeExporterOkBodyNodeExporterTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeNodeExporterOKBodyNodeExporter) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("changeNodeExporterOk"+"."+"node_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this change node exporter OK body node exporter based on context it is used -func (o *ChangeNodeExporterOKBodyNodeExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeNodeExporterOKBodyNodeExporter) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeNodeExporterOKBodyNodeExporter) UnmarshalBinary(b []byte) error { - var res ChangeNodeExporterOKBodyNodeExporter - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeNodeExporterParamsBodyCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. -swagger:model ChangeNodeExporterParamsBodyCommon -*/ -type ChangeNodeExporterParamsBodyCommon struct { - // Enable this Agent. Can't be used with disabled. - Enable bool `json:"enable,omitempty"` - - // Disable this Agent. Can't be used with enabled. - Disable bool `json:"disable,omitempty"` - - // Replace all custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Remove all custom user-assigned labels. - RemoveCustomLabels bool `json:"remove_custom_labels,omitempty"` - - // Enables push metrics with vmagent, can't be used with disable_push_metrics. - // Can't be used with agent version lower then 2.12 and unsupported agents. - EnablePushMetrics bool `json:"enable_push_metrics,omitempty"` - - // Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics. - DisablePushMetrics bool `json:"disable_push_metrics,omitempty"` -} - -// Validate validates this change node exporter params body common -func (o *ChangeNodeExporterParamsBodyCommon) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change node exporter params body common based on context it is used -func (o *ChangeNodeExporterParamsBodyCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeNodeExporterParamsBodyCommon) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeNodeExporterParamsBodyCommon) UnmarshalBinary(b []byte) error { - var res ChangeNodeExporterParamsBodyCommon - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_postgres_exporter_parameters.go b/api/inventory/v1/json/client/agents_service/change_postgres_exporter_parameters.go deleted file mode 100644 index a02454143f..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_postgres_exporter_parameters.go +++ /dev/null @@ -1,144 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "net/http" - "time" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - cr "github.com/go-openapi/runtime/client" - "github.com/go-openapi/strfmt" -) - -// NewChangePostgresExporterParams creates a new ChangePostgresExporterParams object, -// with the default timeout for this client. -// -// Default values are not hydrated, since defaults are normally applied by the API server side. -// -// To enforce default values in parameter, use SetDefaults or WithDefaults. -func NewChangePostgresExporterParams() *ChangePostgresExporterParams { - return &ChangePostgresExporterParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewChangePostgresExporterParamsWithTimeout creates a new ChangePostgresExporterParams object -// with the ability to set a timeout on a request. -func NewChangePostgresExporterParamsWithTimeout(timeout time.Duration) *ChangePostgresExporterParams { - return &ChangePostgresExporterParams{ - timeout: timeout, - } -} - -// NewChangePostgresExporterParamsWithContext creates a new ChangePostgresExporterParams object -// with the ability to set a context for a request. -func NewChangePostgresExporterParamsWithContext(ctx context.Context) *ChangePostgresExporterParams { - return &ChangePostgresExporterParams{ - Context: ctx, - } -} - -// NewChangePostgresExporterParamsWithHTTPClient creates a new ChangePostgresExporterParams object -// with the ability to set a custom HTTPClient for a request. -func NewChangePostgresExporterParamsWithHTTPClient(client *http.Client) *ChangePostgresExporterParams { - return &ChangePostgresExporterParams{ - HTTPClient: client, - } -} - -/* -ChangePostgresExporterParams contains all the parameters to send to the API endpoint - - for the change postgres exporter operation. - - Typically these are written to a http.Request. -*/ -type ChangePostgresExporterParams struct { - // Body. - Body ChangePostgresExporterBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the change postgres exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangePostgresExporterParams) WithDefaults() *ChangePostgresExporterParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the change postgres exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangePostgresExporterParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the change postgres exporter params -func (o *ChangePostgresExporterParams) WithTimeout(timeout time.Duration) *ChangePostgresExporterParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the change postgres exporter params -func (o *ChangePostgresExporterParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the change postgres exporter params -func (o *ChangePostgresExporterParams) WithContext(ctx context.Context) *ChangePostgresExporterParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the change postgres exporter params -func (o *ChangePostgresExporterParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the change postgres exporter params -func (o *ChangePostgresExporterParams) WithHTTPClient(client *http.Client) *ChangePostgresExporterParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the change postgres exporter params -func (o *ChangePostgresExporterParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the change postgres exporter params -func (o *ChangePostgresExporterParams) WithBody(body ChangePostgresExporterBody) *ChangePostgresExporterParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the change postgres exporter params -func (o *ChangePostgresExporterParams) SetBody(body ChangePostgresExporterBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *ChangePostgresExporterParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error { - if err := r.SetTimeout(o.timeout); err != nil { - return err - } - var res []error - if err := r.SetBodyParam(o.Body); err != nil { - return err - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_postgres_exporter_responses.go b/api/inventory/v1/json/client/agents_service/change_postgres_exporter_responses.go deleted file mode 100644 index afbac8f8cf..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_postgres_exporter_responses.go +++ /dev/null @@ -1,713 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "encoding/json" - "fmt" - "io" - "strconv" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - "github.com/go-openapi/strfmt" - "github.com/go-openapi/swag" - "github.com/go-openapi/validate" -) - -// ChangePostgresExporterReader is a Reader for the ChangePostgresExporter structure. -type ChangePostgresExporterReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *ChangePostgresExporterReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewChangePostgresExporterOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewChangePostgresExporterDefault(response.Code()) - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - if response.Code()/100 == 2 { - return result, nil - } - return nil, result - } -} - -// NewChangePostgresExporterOK creates a ChangePostgresExporterOK with default headers values -func NewChangePostgresExporterOK() *ChangePostgresExporterOK { - return &ChangePostgresExporterOK{} -} - -/* -ChangePostgresExporterOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type ChangePostgresExporterOK struct { - Payload *ChangePostgresExporterOKBody -} - -func (o *ChangePostgresExporterOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangePostgresExporter][%d] changePostgresExporterOk %+v", 200, o.Payload) -} - -func (o *ChangePostgresExporterOK) GetPayload() *ChangePostgresExporterOKBody { - return o.Payload -} - -func (o *ChangePostgresExporterOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangePostgresExporterOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewChangePostgresExporterDefault creates a ChangePostgresExporterDefault with default headers values -func NewChangePostgresExporterDefault(code int) *ChangePostgresExporterDefault { - return &ChangePostgresExporterDefault{ - _statusCode: code, - } -} - -/* -ChangePostgresExporterDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type ChangePostgresExporterDefault struct { - _statusCode int - - Payload *ChangePostgresExporterDefaultBody -} - -// Code gets the status code for the change postgres exporter default response -func (o *ChangePostgresExporterDefault) Code() int { - return o._statusCode -} - -func (o *ChangePostgresExporterDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangePostgresExporter][%d] ChangePostgresExporter default %+v", o._statusCode, o.Payload) -} - -func (o *ChangePostgresExporterDefault) GetPayload() *ChangePostgresExporterDefaultBody { - return o.Payload -} - -func (o *ChangePostgresExporterDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangePostgresExporterDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -ChangePostgresExporterBody change postgres exporter body -swagger:model ChangePostgresExporterBody -*/ -type ChangePostgresExporterBody struct { - // agent id - AgentID string `json:"agent_id,omitempty"` - - // common - Common *ChangePostgresExporterParamsBodyCommon `json:"common,omitempty"` -} - -// Validate validates this change postgres exporter body -func (o *ChangePostgresExporterBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateCommon(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangePostgresExporterBody) validateCommon(formats strfmt.Registry) error { - if swag.IsZero(o.Common) { // not required - return nil - } - - if o.Common != nil { - if err := o.Common.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change postgres exporter body based on the context it is used -func (o *ChangePostgresExporterBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateCommon(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangePostgresExporterBody) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { - if o.Common != nil { - if err := o.Common.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangePostgresExporterBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangePostgresExporterBody) UnmarshalBinary(b []byte) error { - var res ChangePostgresExporterBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangePostgresExporterDefaultBody change postgres exporter default body -swagger:model ChangePostgresExporterDefaultBody -*/ -type ChangePostgresExporterDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*ChangePostgresExporterDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this change postgres exporter default body -func (o *ChangePostgresExporterDefaultBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateDetails(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangePostgresExporterDefaultBody) validateDetails(formats strfmt.Registry) error { - if swag.IsZero(o.Details) { // not required - return nil - } - - for i := 0; i < len(o.Details); i++ { - if swag.IsZero(o.Details[i]) { // not required - continue - } - - if o.Details[i] != nil { - if err := o.Details[i].Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangePostgresExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangePostgresExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this change postgres exporter default body based on the context it is used -func (o *ChangePostgresExporterDefaultBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateDetails(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangePostgresExporterDefaultBody) contextValidateDetails(ctx context.Context, formats strfmt.Registry) error { - for i := 0; i < len(o.Details); i++ { - if o.Details[i] != nil { - if err := o.Details[i].ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangePostgresExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangePostgresExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangePostgresExporterDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangePostgresExporterDefaultBody) UnmarshalBinary(b []byte) error { - var res ChangePostgresExporterDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangePostgresExporterDefaultBodyDetailsItems0 change postgres exporter default body details items0 -swagger:model ChangePostgresExporterDefaultBodyDetailsItems0 -*/ -type ChangePostgresExporterDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this change postgres exporter default body details items0 -func (o *ChangePostgresExporterDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change postgres exporter default body details items0 based on context it is used -func (o *ChangePostgresExporterDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangePostgresExporterDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangePostgresExporterDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res ChangePostgresExporterDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangePostgresExporterOKBody change postgres exporter OK body -swagger:model ChangePostgresExporterOKBody -*/ -type ChangePostgresExporterOKBody struct { - // postgres exporter - PostgresExporter *ChangePostgresExporterOKBodyPostgresExporter `json:"postgres_exporter,omitempty"` -} - -// Validate validates this change postgres exporter OK body -func (o *ChangePostgresExporterOKBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validatePostgresExporter(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangePostgresExporterOKBody) validatePostgresExporter(formats strfmt.Registry) error { - if swag.IsZero(o.PostgresExporter) { // not required - return nil - } - - if o.PostgresExporter != nil { - if err := o.PostgresExporter.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changePostgresExporterOk" + "." + "postgres_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changePostgresExporterOk" + "." + "postgres_exporter") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change postgres exporter OK body based on the context it is used -func (o *ChangePostgresExporterOKBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidatePostgresExporter(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangePostgresExporterOKBody) contextValidatePostgresExporter(ctx context.Context, formats strfmt.Registry) error { - if o.PostgresExporter != nil { - if err := o.PostgresExporter.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changePostgresExporterOk" + "." + "postgres_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changePostgresExporterOk" + "." + "postgres_exporter") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangePostgresExporterOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangePostgresExporterOKBody) UnmarshalBinary(b []byte) error { - var res ChangePostgresExporterOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangePostgresExporterOKBodyPostgresExporter PostgresExporter runs on Generic or Container Node and exposes PostgreSQL Service metrics. -swagger:model ChangePostgresExporterOKBodyPostgresExporter -*/ -type ChangePostgresExporterOKBodyPostgresExporter struct { - // Unique randomly generated instance identifier. - AgentID string `json:"agent_id,omitempty"` - - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Desired Agent status: enabled (false) or disabled (true). - Disabled bool `json:"disabled,omitempty"` - - // Service identifier. - ServiceID string `json:"service_id,omitempty"` - - // PostgreSQL username for scraping metrics. - Username string `json:"username,omitempty"` - - // Use TLS for database connections. - TLS bool `json:"tls,omitempty"` - - // Skip TLS certificate and hostname validation. Uses sslmode=required instead of verify-full. - TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // True if exporter uses push metrics mode. - PushMetricsEnabled bool `json:"push_metrics_enabled,omitempty"` - - // List of disabled collector names. - DisabledCollectors []string `json:"disabled_collectors"` - - // AgentStatus represents actual Agent status. - // - // - AGENT_STATUS_STARTING: Agent is starting. - // - AGENT_STATUS_RUNNING: Agent is running. - // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. - // - AGENT_STATUS_STOPPING: Agent is stopping. - // - AGENT_STATUS_DONE: Agent finished. - // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. - // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] - Status *string `json:"status,omitempty"` - - // Listen port for scraping metrics. - ListenPort int64 `json:"listen_port,omitempty"` - - // Path to exec process. - ProcessExecPath string `json:"process_exec_path,omitempty"` - - // Log level for exporters - // - // - LOG_LEVEL_UNSPECIFIED: Auto - // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] - LogLevel *string `json:"log_level,omitempty"` - - // Limit of databases for auto-discovery. - AutoDiscoveryLimit int32 `json:"auto_discovery_limit,omitempty"` - - // Optionally expose the exporter process on all public interfaces - ExposeExporter bool `json:"expose_exporter,omitempty"` -} - -// Validate validates this change postgres exporter OK body postgres exporter -func (o *ChangePostgresExporterOKBodyPostgresExporter) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateStatus(formats); err != nil { - res = append(res, err) - } - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var changePostgresExporterOkBodyPostgresExporterTypeStatusPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changePostgresExporterOkBodyPostgresExporterTypeStatusPropEnum = append(changePostgresExporterOkBodyPostgresExporterTypeStatusPropEnum, v) - } -} - -const ( - - // ChangePostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - ChangePostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // ChangePostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - ChangePostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // ChangePostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - ChangePostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // ChangePostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - ChangePostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // ChangePostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - ChangePostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // ChangePostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - ChangePostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // ChangePostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - ChangePostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *ChangePostgresExporterOKBodyPostgresExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changePostgresExporterOkBodyPostgresExporterTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangePostgresExporterOKBodyPostgresExporter) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("changePostgresExporterOk"+"."+"postgres_exporter"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var changePostgresExporterOkBodyPostgresExporterTypeLogLevelPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changePostgresExporterOkBodyPostgresExporterTypeLogLevelPropEnum = append(changePostgresExporterOkBodyPostgresExporterTypeLogLevelPropEnum, v) - } -} - -const ( - - // ChangePostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - ChangePostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // ChangePostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - ChangePostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // ChangePostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - ChangePostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // ChangePostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - ChangePostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // ChangePostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - ChangePostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // ChangePostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - ChangePostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *ChangePostgresExporterOKBodyPostgresExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changePostgresExporterOkBodyPostgresExporterTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangePostgresExporterOKBodyPostgresExporter) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("changePostgresExporterOk"+"."+"postgres_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this change postgres exporter OK body postgres exporter based on context it is used -func (o *ChangePostgresExporterOKBodyPostgresExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangePostgresExporterOKBodyPostgresExporter) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangePostgresExporterOKBodyPostgresExporter) UnmarshalBinary(b []byte) error { - var res ChangePostgresExporterOKBodyPostgresExporter - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangePostgresExporterParamsBodyCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. -swagger:model ChangePostgresExporterParamsBodyCommon -*/ -type ChangePostgresExporterParamsBodyCommon struct { - // Enable this Agent. Can't be used with disabled. - Enable bool `json:"enable,omitempty"` - - // Disable this Agent. Can't be used with enabled. - Disable bool `json:"disable,omitempty"` - - // Replace all custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Remove all custom user-assigned labels. - RemoveCustomLabels bool `json:"remove_custom_labels,omitempty"` - - // Enables push metrics with vmagent, can't be used with disable_push_metrics. - // Can't be used with agent version lower then 2.12 and unsupported agents. - EnablePushMetrics bool `json:"enable_push_metrics,omitempty"` - - // Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics. - DisablePushMetrics bool `json:"disable_push_metrics,omitempty"` -} - -// Validate validates this change postgres exporter params body common -func (o *ChangePostgresExporterParamsBodyCommon) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change postgres exporter params body common based on context it is used -func (o *ChangePostgresExporterParamsBodyCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangePostgresExporterParamsBodyCommon) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangePostgresExporterParamsBodyCommon) UnmarshalBinary(b []byte) error { - var res ChangePostgresExporterParamsBodyCommon - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_proxy_sql_exporter_parameters.go b/api/inventory/v1/json/client/agents_service/change_proxy_sql_exporter_parameters.go deleted file mode 100644 index 6b367ec1e7..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_proxy_sql_exporter_parameters.go +++ /dev/null @@ -1,144 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "net/http" - "time" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - cr "github.com/go-openapi/runtime/client" - "github.com/go-openapi/strfmt" -) - -// NewChangeProxySQLExporterParams creates a new ChangeProxySQLExporterParams object, -// with the default timeout for this client. -// -// Default values are not hydrated, since defaults are normally applied by the API server side. -// -// To enforce default values in parameter, use SetDefaults or WithDefaults. -func NewChangeProxySQLExporterParams() *ChangeProxySQLExporterParams { - return &ChangeProxySQLExporterParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewChangeProxySQLExporterParamsWithTimeout creates a new ChangeProxySQLExporterParams object -// with the ability to set a timeout on a request. -func NewChangeProxySQLExporterParamsWithTimeout(timeout time.Duration) *ChangeProxySQLExporterParams { - return &ChangeProxySQLExporterParams{ - timeout: timeout, - } -} - -// NewChangeProxySQLExporterParamsWithContext creates a new ChangeProxySQLExporterParams object -// with the ability to set a context for a request. -func NewChangeProxySQLExporterParamsWithContext(ctx context.Context) *ChangeProxySQLExporterParams { - return &ChangeProxySQLExporterParams{ - Context: ctx, - } -} - -// NewChangeProxySQLExporterParamsWithHTTPClient creates a new ChangeProxySQLExporterParams object -// with the ability to set a custom HTTPClient for a request. -func NewChangeProxySQLExporterParamsWithHTTPClient(client *http.Client) *ChangeProxySQLExporterParams { - return &ChangeProxySQLExporterParams{ - HTTPClient: client, - } -} - -/* -ChangeProxySQLExporterParams contains all the parameters to send to the API endpoint - - for the change proxy SQL exporter operation. - - Typically these are written to a http.Request. -*/ -type ChangeProxySQLExporterParams struct { - // Body. - Body ChangeProxySQLExporterBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the change proxy SQL exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeProxySQLExporterParams) WithDefaults() *ChangeProxySQLExporterParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the change proxy SQL exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeProxySQLExporterParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the change proxy SQL exporter params -func (o *ChangeProxySQLExporterParams) WithTimeout(timeout time.Duration) *ChangeProxySQLExporterParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the change proxy SQL exporter params -func (o *ChangeProxySQLExporterParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the change proxy SQL exporter params -func (o *ChangeProxySQLExporterParams) WithContext(ctx context.Context) *ChangeProxySQLExporterParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the change proxy SQL exporter params -func (o *ChangeProxySQLExporterParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the change proxy SQL exporter params -func (o *ChangeProxySQLExporterParams) WithHTTPClient(client *http.Client) *ChangeProxySQLExporterParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the change proxy SQL exporter params -func (o *ChangeProxySQLExporterParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the change proxy SQL exporter params -func (o *ChangeProxySQLExporterParams) WithBody(body ChangeProxySQLExporterBody) *ChangeProxySQLExporterParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the change proxy SQL exporter params -func (o *ChangeProxySQLExporterParams) SetBody(body ChangeProxySQLExporterBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *ChangeProxySQLExporterParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error { - if err := r.SetTimeout(o.timeout); err != nil { - return err - } - var res []error - if err := r.SetBodyParam(o.Body); err != nil { - return err - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_proxy_sql_exporter_responses.go b/api/inventory/v1/json/client/agents_service/change_proxy_sql_exporter_responses.go deleted file mode 100644 index db3637b548..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_proxy_sql_exporter_responses.go +++ /dev/null @@ -1,710 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "encoding/json" - "fmt" - "io" - "strconv" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - "github.com/go-openapi/strfmt" - "github.com/go-openapi/swag" - "github.com/go-openapi/validate" -) - -// ChangeProxySQLExporterReader is a Reader for the ChangeProxySQLExporter structure. -type ChangeProxySQLExporterReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *ChangeProxySQLExporterReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewChangeProxySQLExporterOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewChangeProxySQLExporterDefault(response.Code()) - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - if response.Code()/100 == 2 { - return result, nil - } - return nil, result - } -} - -// NewChangeProxySQLExporterOK creates a ChangeProxySQLExporterOK with default headers values -func NewChangeProxySQLExporterOK() *ChangeProxySQLExporterOK { - return &ChangeProxySQLExporterOK{} -} - -/* -ChangeProxySQLExporterOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type ChangeProxySQLExporterOK struct { - Payload *ChangeProxySQLExporterOKBody -} - -func (o *ChangeProxySQLExporterOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeProxySQLExporter][%d] changeProxySqlExporterOk %+v", 200, o.Payload) -} - -func (o *ChangeProxySQLExporterOK) GetPayload() *ChangeProxySQLExporterOKBody { - return o.Payload -} - -func (o *ChangeProxySQLExporterOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeProxySQLExporterOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewChangeProxySQLExporterDefault creates a ChangeProxySQLExporterDefault with default headers values -func NewChangeProxySQLExporterDefault(code int) *ChangeProxySQLExporterDefault { - return &ChangeProxySQLExporterDefault{ - _statusCode: code, - } -} - -/* -ChangeProxySQLExporterDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type ChangeProxySQLExporterDefault struct { - _statusCode int - - Payload *ChangeProxySQLExporterDefaultBody -} - -// Code gets the status code for the change proxy SQL exporter default response -func (o *ChangeProxySQLExporterDefault) Code() int { - return o._statusCode -} - -func (o *ChangeProxySQLExporterDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeProxySQLExporter][%d] ChangeProxySQLExporter default %+v", o._statusCode, o.Payload) -} - -func (o *ChangeProxySQLExporterDefault) GetPayload() *ChangeProxySQLExporterDefaultBody { - return o.Payload -} - -func (o *ChangeProxySQLExporterDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeProxySQLExporterDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -ChangeProxySQLExporterBody change proxy SQL exporter body -swagger:model ChangeProxySQLExporterBody -*/ -type ChangeProxySQLExporterBody struct { - // agent id - AgentID string `json:"agent_id,omitempty"` - - // common - Common *ChangeProxySQLExporterParamsBodyCommon `json:"common,omitempty"` -} - -// Validate validates this change proxy SQL exporter body -func (o *ChangeProxySQLExporterBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateCommon(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeProxySQLExporterBody) validateCommon(formats strfmt.Registry) error { - if swag.IsZero(o.Common) { // not required - return nil - } - - if o.Common != nil { - if err := o.Common.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change proxy SQL exporter body based on the context it is used -func (o *ChangeProxySQLExporterBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateCommon(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeProxySQLExporterBody) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { - if o.Common != nil { - if err := o.Common.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeProxySQLExporterBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeProxySQLExporterBody) UnmarshalBinary(b []byte) error { - var res ChangeProxySQLExporterBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeProxySQLExporterDefaultBody change proxy SQL exporter default body -swagger:model ChangeProxySQLExporterDefaultBody -*/ -type ChangeProxySQLExporterDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*ChangeProxySQLExporterDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this change proxy SQL exporter default body -func (o *ChangeProxySQLExporterDefaultBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateDetails(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeProxySQLExporterDefaultBody) validateDetails(formats strfmt.Registry) error { - if swag.IsZero(o.Details) { // not required - return nil - } - - for i := 0; i < len(o.Details); i++ { - if swag.IsZero(o.Details[i]) { // not required - continue - } - - if o.Details[i] != nil { - if err := o.Details[i].Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeProxySQLExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeProxySQLExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this change proxy SQL exporter default body based on the context it is used -func (o *ChangeProxySQLExporterDefaultBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateDetails(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeProxySQLExporterDefaultBody) contextValidateDetails(ctx context.Context, formats strfmt.Registry) error { - for i := 0; i < len(o.Details); i++ { - if o.Details[i] != nil { - if err := o.Details[i].ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeProxySQLExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeProxySQLExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeProxySQLExporterDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeProxySQLExporterDefaultBody) UnmarshalBinary(b []byte) error { - var res ChangeProxySQLExporterDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeProxySQLExporterDefaultBodyDetailsItems0 change proxy SQL exporter default body details items0 -swagger:model ChangeProxySQLExporterDefaultBodyDetailsItems0 -*/ -type ChangeProxySQLExporterDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this change proxy SQL exporter default body details items0 -func (o *ChangeProxySQLExporterDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change proxy SQL exporter default body details items0 based on context it is used -func (o *ChangeProxySQLExporterDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeProxySQLExporterDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeProxySQLExporterDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res ChangeProxySQLExporterDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeProxySQLExporterOKBody change proxy SQL exporter OK body -swagger:model ChangeProxySQLExporterOKBody -*/ -type ChangeProxySQLExporterOKBody struct { - // proxysql exporter - ProxysqlExporter *ChangeProxySQLExporterOKBodyProxysqlExporter `json:"proxysql_exporter,omitempty"` -} - -// Validate validates this change proxy SQL exporter OK body -func (o *ChangeProxySQLExporterOKBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateProxysqlExporter(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeProxySQLExporterOKBody) validateProxysqlExporter(formats strfmt.Registry) error { - if swag.IsZero(o.ProxysqlExporter) { // not required - return nil - } - - if o.ProxysqlExporter != nil { - if err := o.ProxysqlExporter.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeProxySqlExporterOk" + "." + "proxysql_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeProxySqlExporterOk" + "." + "proxysql_exporter") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change proxy SQL exporter OK body based on the context it is used -func (o *ChangeProxySQLExporterOKBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateProxysqlExporter(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeProxySQLExporterOKBody) contextValidateProxysqlExporter(ctx context.Context, formats strfmt.Registry) error { - if o.ProxysqlExporter != nil { - if err := o.ProxysqlExporter.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeProxySqlExporterOk" + "." + "proxysql_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeProxySqlExporterOk" + "." + "proxysql_exporter") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeProxySQLExporterOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeProxySQLExporterOKBody) UnmarshalBinary(b []byte) error { - var res ChangeProxySQLExporterOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeProxySQLExporterOKBodyProxysqlExporter ProxySQLExporter runs on Generic or Container Node and exposes ProxySQL Service metrics. -swagger:model ChangeProxySQLExporterOKBodyProxysqlExporter -*/ -type ChangeProxySQLExporterOKBodyProxysqlExporter struct { - // Unique randomly generated instance identifier. - AgentID string `json:"agent_id,omitempty"` - - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Desired Agent status: enabled (false) or disabled (true). - Disabled bool `json:"disabled,omitempty"` - - // Service identifier. - ServiceID string `json:"service_id,omitempty"` - - // ProxySQL username for scraping metrics. - Username string `json:"username,omitempty"` - - // Use TLS for database connections. - TLS bool `json:"tls,omitempty"` - - // Skip TLS certificate and hostname validation. - TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // True if exporter uses push metrics mode. - PushMetricsEnabled bool `json:"push_metrics_enabled,omitempty"` - - // List of disabled collector names. - DisabledCollectors []string `json:"disabled_collectors"` - - // AgentStatus represents actual Agent status. - // - // - AGENT_STATUS_STARTING: Agent is starting. - // - AGENT_STATUS_RUNNING: Agent is running. - // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. - // - AGENT_STATUS_STOPPING: Agent is stopping. - // - AGENT_STATUS_DONE: Agent finished. - // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. - // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] - Status *string `json:"status,omitempty"` - - // Listen port for scraping metrics. - ListenPort int64 `json:"listen_port,omitempty"` - - // Path to exec process. - ProcessExecPath string `json:"process_exec_path,omitempty"` - - // Log level for exporters - // - // - LOG_LEVEL_UNSPECIFIED: Auto - // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] - LogLevel *string `json:"log_level,omitempty"` - - // Optionally expose the exporter process on all public interfaces - ExposeExporter bool `json:"expose_exporter,omitempty"` -} - -// Validate validates this change proxy SQL exporter OK body proxysql exporter -func (o *ChangeProxySQLExporterOKBodyProxysqlExporter) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateStatus(formats); err != nil { - res = append(res, err) - } - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var changeProxySqlExporterOkBodyProxysqlExporterTypeStatusPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeProxySqlExporterOkBodyProxysqlExporterTypeStatusPropEnum = append(changeProxySqlExporterOkBodyProxysqlExporterTypeStatusPropEnum, v) - } -} - -const ( - - // ChangeProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - ChangeProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // ChangeProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - ChangeProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // ChangeProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - ChangeProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // ChangeProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - ChangeProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // ChangeProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - ChangeProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // ChangeProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - ChangeProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // ChangeProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - ChangeProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *ChangeProxySQLExporterOKBodyProxysqlExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeProxySqlExporterOkBodyProxysqlExporterTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeProxySQLExporterOKBodyProxysqlExporter) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("changeProxySqlExporterOk"+"."+"proxysql_exporter"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var changeProxySqlExporterOkBodyProxysqlExporterTypeLogLevelPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeProxySqlExporterOkBodyProxysqlExporterTypeLogLevelPropEnum = append(changeProxySqlExporterOkBodyProxysqlExporterTypeLogLevelPropEnum, v) - } -} - -const ( - - // ChangeProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - ChangeProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // ChangeProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - ChangeProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // ChangeProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - ChangeProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // ChangeProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - ChangeProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // ChangeProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - ChangeProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // ChangeProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - ChangeProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *ChangeProxySQLExporterOKBodyProxysqlExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeProxySqlExporterOkBodyProxysqlExporterTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeProxySQLExporterOKBodyProxysqlExporter) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("changeProxySqlExporterOk"+"."+"proxysql_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this change proxy SQL exporter OK body proxysql exporter based on context it is used -func (o *ChangeProxySQLExporterOKBodyProxysqlExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeProxySQLExporterOKBodyProxysqlExporter) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeProxySQLExporterOKBodyProxysqlExporter) UnmarshalBinary(b []byte) error { - var res ChangeProxySQLExporterOKBodyProxysqlExporter - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeProxySQLExporterParamsBodyCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. -swagger:model ChangeProxySQLExporterParamsBodyCommon -*/ -type ChangeProxySQLExporterParamsBodyCommon struct { - // Enable this Agent. Can't be used with disabled. - Enable bool `json:"enable,omitempty"` - - // Disable this Agent. Can't be used with enabled. - Disable bool `json:"disable,omitempty"` - - // Replace all custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Remove all custom user-assigned labels. - RemoveCustomLabels bool `json:"remove_custom_labels,omitempty"` - - // Enables push metrics with vmagent, can't be used with disable_push_metrics. - // Can't be used with agent version lower then 2.12 and unsupported agents. - EnablePushMetrics bool `json:"enable_push_metrics,omitempty"` - - // Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics. - DisablePushMetrics bool `json:"disable_push_metrics,omitempty"` -} - -// Validate validates this change proxy SQL exporter params body common -func (o *ChangeProxySQLExporterParamsBodyCommon) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change proxy SQL exporter params body common based on context it is used -func (o *ChangeProxySQLExporterParamsBodyCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeProxySQLExporterParamsBodyCommon) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeProxySQLExporterParamsBodyCommon) UnmarshalBinary(b []byte) error { - var res ChangeProxySQLExporterParamsBodyCommon - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_qan_mongo_db_profiler_agent_parameters.go b/api/inventory/v1/json/client/agents_service/change_qan_mongo_db_profiler_agent_parameters.go deleted file mode 100644 index 82133b8e07..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_qan_mongo_db_profiler_agent_parameters.go +++ /dev/null @@ -1,144 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "net/http" - "time" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - cr "github.com/go-openapi/runtime/client" - "github.com/go-openapi/strfmt" -) - -// NewChangeQANMongoDBProfilerAgentParams creates a new ChangeQANMongoDBProfilerAgentParams object, -// with the default timeout for this client. -// -// Default values are not hydrated, since defaults are normally applied by the API server side. -// -// To enforce default values in parameter, use SetDefaults or WithDefaults. -func NewChangeQANMongoDBProfilerAgentParams() *ChangeQANMongoDBProfilerAgentParams { - return &ChangeQANMongoDBProfilerAgentParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewChangeQANMongoDBProfilerAgentParamsWithTimeout creates a new ChangeQANMongoDBProfilerAgentParams object -// with the ability to set a timeout on a request. -func NewChangeQANMongoDBProfilerAgentParamsWithTimeout(timeout time.Duration) *ChangeQANMongoDBProfilerAgentParams { - return &ChangeQANMongoDBProfilerAgentParams{ - timeout: timeout, - } -} - -// NewChangeQANMongoDBProfilerAgentParamsWithContext creates a new ChangeQANMongoDBProfilerAgentParams object -// with the ability to set a context for a request. -func NewChangeQANMongoDBProfilerAgentParamsWithContext(ctx context.Context) *ChangeQANMongoDBProfilerAgentParams { - return &ChangeQANMongoDBProfilerAgentParams{ - Context: ctx, - } -} - -// NewChangeQANMongoDBProfilerAgentParamsWithHTTPClient creates a new ChangeQANMongoDBProfilerAgentParams object -// with the ability to set a custom HTTPClient for a request. -func NewChangeQANMongoDBProfilerAgentParamsWithHTTPClient(client *http.Client) *ChangeQANMongoDBProfilerAgentParams { - return &ChangeQANMongoDBProfilerAgentParams{ - HTTPClient: client, - } -} - -/* -ChangeQANMongoDBProfilerAgentParams contains all the parameters to send to the API endpoint - - for the change QAN mongo DB profiler agent operation. - - Typically these are written to a http.Request. -*/ -type ChangeQANMongoDBProfilerAgentParams struct { - // Body. - Body ChangeQANMongoDBProfilerAgentBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the change QAN mongo DB profiler agent params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeQANMongoDBProfilerAgentParams) WithDefaults() *ChangeQANMongoDBProfilerAgentParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the change QAN mongo DB profiler agent params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeQANMongoDBProfilerAgentParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the change QAN mongo DB profiler agent params -func (o *ChangeQANMongoDBProfilerAgentParams) WithTimeout(timeout time.Duration) *ChangeQANMongoDBProfilerAgentParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the change QAN mongo DB profiler agent params -func (o *ChangeQANMongoDBProfilerAgentParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the change QAN mongo DB profiler agent params -func (o *ChangeQANMongoDBProfilerAgentParams) WithContext(ctx context.Context) *ChangeQANMongoDBProfilerAgentParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the change QAN mongo DB profiler agent params -func (o *ChangeQANMongoDBProfilerAgentParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the change QAN mongo DB profiler agent params -func (o *ChangeQANMongoDBProfilerAgentParams) WithHTTPClient(client *http.Client) *ChangeQANMongoDBProfilerAgentParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the change QAN mongo DB profiler agent params -func (o *ChangeQANMongoDBProfilerAgentParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the change QAN mongo DB profiler agent params -func (o *ChangeQANMongoDBProfilerAgentParams) WithBody(body ChangeQANMongoDBProfilerAgentBody) *ChangeQANMongoDBProfilerAgentParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the change QAN mongo DB profiler agent params -func (o *ChangeQANMongoDBProfilerAgentParams) SetBody(body ChangeQANMongoDBProfilerAgentBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *ChangeQANMongoDBProfilerAgentParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error { - if err := r.SetTimeout(o.timeout); err != nil { - return err - } - var res []error - if err := r.SetBodyParam(o.Body); err != nil { - return err - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_qan_mongo_db_profiler_agent_responses.go b/api/inventory/v1/json/client/agents_service/change_qan_mongo_db_profiler_agent_responses.go deleted file mode 100644 index cb47482918..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_qan_mongo_db_profiler_agent_responses.go +++ /dev/null @@ -1,701 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "encoding/json" - "fmt" - "io" - "strconv" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - "github.com/go-openapi/strfmt" - "github.com/go-openapi/swag" - "github.com/go-openapi/validate" -) - -// ChangeQANMongoDBProfilerAgentReader is a Reader for the ChangeQANMongoDBProfilerAgent structure. -type ChangeQANMongoDBProfilerAgentReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *ChangeQANMongoDBProfilerAgentReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewChangeQANMongoDBProfilerAgentOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewChangeQANMongoDBProfilerAgentDefault(response.Code()) - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - if response.Code()/100 == 2 { - return result, nil - } - return nil, result - } -} - -// NewChangeQANMongoDBProfilerAgentOK creates a ChangeQANMongoDBProfilerAgentOK with default headers values -func NewChangeQANMongoDBProfilerAgentOK() *ChangeQANMongoDBProfilerAgentOK { - return &ChangeQANMongoDBProfilerAgentOK{} -} - -/* -ChangeQANMongoDBProfilerAgentOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type ChangeQANMongoDBProfilerAgentOK struct { - Payload *ChangeQANMongoDBProfilerAgentOKBody -} - -func (o *ChangeQANMongoDBProfilerAgentOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeQANMongoDBProfilerAgent][%d] changeQanMongoDbProfilerAgentOk %+v", 200, o.Payload) -} - -func (o *ChangeQANMongoDBProfilerAgentOK) GetPayload() *ChangeQANMongoDBProfilerAgentOKBody { - return o.Payload -} - -func (o *ChangeQANMongoDBProfilerAgentOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeQANMongoDBProfilerAgentOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewChangeQANMongoDBProfilerAgentDefault creates a ChangeQANMongoDBProfilerAgentDefault with default headers values -func NewChangeQANMongoDBProfilerAgentDefault(code int) *ChangeQANMongoDBProfilerAgentDefault { - return &ChangeQANMongoDBProfilerAgentDefault{ - _statusCode: code, - } -} - -/* -ChangeQANMongoDBProfilerAgentDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type ChangeQANMongoDBProfilerAgentDefault struct { - _statusCode int - - Payload *ChangeQANMongoDBProfilerAgentDefaultBody -} - -// Code gets the status code for the change QAN mongo DB profiler agent default response -func (o *ChangeQANMongoDBProfilerAgentDefault) Code() int { - return o._statusCode -} - -func (o *ChangeQANMongoDBProfilerAgentDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeQANMongoDBProfilerAgent][%d] ChangeQANMongoDBProfilerAgent default %+v", o._statusCode, o.Payload) -} - -func (o *ChangeQANMongoDBProfilerAgentDefault) GetPayload() *ChangeQANMongoDBProfilerAgentDefaultBody { - return o.Payload -} - -func (o *ChangeQANMongoDBProfilerAgentDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeQANMongoDBProfilerAgentDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -ChangeQANMongoDBProfilerAgentBody change QAN mongo DB profiler agent body -swagger:model ChangeQANMongoDBProfilerAgentBody -*/ -type ChangeQANMongoDBProfilerAgentBody struct { - // agent id - AgentID string `json:"agent_id,omitempty"` - - // common - Common *ChangeQANMongoDBProfilerAgentParamsBodyCommon `json:"common,omitempty"` -} - -// Validate validates this change QAN mongo DB profiler agent body -func (o *ChangeQANMongoDBProfilerAgentBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateCommon(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANMongoDBProfilerAgentBody) validateCommon(formats strfmt.Registry) error { - if swag.IsZero(o.Common) { // not required - return nil - } - - if o.Common != nil { - if err := o.Common.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change QAN mongo DB profiler agent body based on the context it is used -func (o *ChangeQANMongoDBProfilerAgentBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateCommon(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANMongoDBProfilerAgentBody) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { - if o.Common != nil { - if err := o.Common.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANMongoDBProfilerAgentBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANMongoDBProfilerAgentBody) UnmarshalBinary(b []byte) error { - var res ChangeQANMongoDBProfilerAgentBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANMongoDBProfilerAgentDefaultBody change QAN mongo DB profiler agent default body -swagger:model ChangeQANMongoDBProfilerAgentDefaultBody -*/ -type ChangeQANMongoDBProfilerAgentDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*ChangeQANMongoDBProfilerAgentDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this change QAN mongo DB profiler agent default body -func (o *ChangeQANMongoDBProfilerAgentDefaultBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateDetails(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANMongoDBProfilerAgentDefaultBody) validateDetails(formats strfmt.Registry) error { - if swag.IsZero(o.Details) { // not required - return nil - } - - for i := 0; i < len(o.Details); i++ { - if swag.IsZero(o.Details[i]) { // not required - continue - } - - if o.Details[i] != nil { - if err := o.Details[i].Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeQANMongoDBProfilerAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeQANMongoDBProfilerAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this change QAN mongo DB profiler agent default body based on the context it is used -func (o *ChangeQANMongoDBProfilerAgentDefaultBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateDetails(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANMongoDBProfilerAgentDefaultBody) contextValidateDetails(ctx context.Context, formats strfmt.Registry) error { - for i := 0; i < len(o.Details); i++ { - if o.Details[i] != nil { - if err := o.Details[i].ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeQANMongoDBProfilerAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeQANMongoDBProfilerAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANMongoDBProfilerAgentDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANMongoDBProfilerAgentDefaultBody) UnmarshalBinary(b []byte) error { - var res ChangeQANMongoDBProfilerAgentDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANMongoDBProfilerAgentDefaultBodyDetailsItems0 change QAN mongo DB profiler agent default body details items0 -swagger:model ChangeQANMongoDBProfilerAgentDefaultBodyDetailsItems0 -*/ -type ChangeQANMongoDBProfilerAgentDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this change QAN mongo DB profiler agent default body details items0 -func (o *ChangeQANMongoDBProfilerAgentDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change QAN mongo DB profiler agent default body details items0 based on context it is used -func (o *ChangeQANMongoDBProfilerAgentDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANMongoDBProfilerAgentDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANMongoDBProfilerAgentDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res ChangeQANMongoDBProfilerAgentDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANMongoDBProfilerAgentOKBody change QAN mongo DB profiler agent OK body -swagger:model ChangeQANMongoDBProfilerAgentOKBody -*/ -type ChangeQANMongoDBProfilerAgentOKBody struct { - // qan mongodb profiler agent - QANMongodbProfilerAgent *ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent `json:"qan_mongodb_profiler_agent,omitempty"` -} - -// Validate validates this change QAN mongo DB profiler agent OK body -func (o *ChangeQANMongoDBProfilerAgentOKBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateQANMongodbProfilerAgent(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANMongoDBProfilerAgentOKBody) validateQANMongodbProfilerAgent(formats strfmt.Registry) error { - if swag.IsZero(o.QANMongodbProfilerAgent) { // not required - return nil - } - - if o.QANMongodbProfilerAgent != nil { - if err := o.QANMongodbProfilerAgent.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeQanMongoDbProfilerAgentOk" + "." + "qan_mongodb_profiler_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeQanMongoDbProfilerAgentOk" + "." + "qan_mongodb_profiler_agent") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change QAN mongo DB profiler agent OK body based on the context it is used -func (o *ChangeQANMongoDBProfilerAgentOKBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateQANMongodbProfilerAgent(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANMongoDBProfilerAgentOKBody) contextValidateQANMongodbProfilerAgent(ctx context.Context, formats strfmt.Registry) error { - if o.QANMongodbProfilerAgent != nil { - if err := o.QANMongodbProfilerAgent.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeQanMongoDbProfilerAgentOk" + "." + "qan_mongodb_profiler_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeQanMongoDbProfilerAgentOk" + "." + "qan_mongodb_profiler_agent") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANMongoDBProfilerAgentOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANMongoDBProfilerAgentOKBody) UnmarshalBinary(b []byte) error { - var res ChangeQANMongoDBProfilerAgentOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent QANMongoDBProfilerAgent runs within pmm-agent and sends MongoDB Query Analytics data to the PMM Server. -swagger:model ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent -*/ -type ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent struct { - // Unique randomly generated instance identifier. - AgentID string `json:"agent_id,omitempty"` - - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Desired Agent status: enabled (false) or disabled (true). - Disabled bool `json:"disabled,omitempty"` - - // Service identifier. - ServiceID string `json:"service_id,omitempty"` - - // MongoDB username for getting profiler data. - Username string `json:"username,omitempty"` - - // Use TLS for database connections. - TLS bool `json:"tls,omitempty"` - - // Skip TLS certificate and hostname validation. - TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` - - // Limit query length in QAN (default: server-defined; -1: no limit). - MaxQueryLength int32 `json:"max_query_length,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // AgentStatus represents actual Agent status. - // - // - AGENT_STATUS_STARTING: Agent is starting. - // - AGENT_STATUS_RUNNING: Agent is running. - // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. - // - AGENT_STATUS_STOPPING: Agent is stopping. - // - AGENT_STATUS_DONE: Agent finished. - // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. - // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] - Status *string `json:"status,omitempty"` - - // Path to exec process. - ProcessExecPath string `json:"process_exec_path,omitempty"` - - // Log level for exporters - // - // - LOG_LEVEL_UNSPECIFIED: Auto - // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] - LogLevel *string `json:"log_level,omitempty"` -} - -// Validate validates this change QAN mongo DB profiler agent OK body QAN mongodb profiler agent -func (o *ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateStatus(formats); err != nil { - res = append(res, err) - } - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var changeQanMongoDbProfilerAgentOkBodyQanMongodbProfilerAgentTypeStatusPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeQanMongoDbProfilerAgentOkBodyQanMongodbProfilerAgentTypeStatusPropEnum = append(changeQanMongoDbProfilerAgentOkBodyQanMongodbProfilerAgentTypeStatusPropEnum, v) - } -} - -const ( - - // ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeQanMongoDbProfilerAgentOkBodyQanMongodbProfilerAgentTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("changeQanMongoDbProfilerAgentOk"+"."+"qan_mongodb_profiler_agent"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var changeQanMongoDbProfilerAgentOkBodyQanMongodbProfilerAgentTypeLogLevelPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeQanMongoDbProfilerAgentOkBodyQanMongodbProfilerAgentTypeLogLevelPropEnum = append(changeQanMongoDbProfilerAgentOkBodyQanMongodbProfilerAgentTypeLogLevelPropEnum, v) - } -} - -const ( - - // ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeQanMongoDbProfilerAgentOkBodyQanMongodbProfilerAgentTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("changeQanMongoDbProfilerAgentOk"+"."+"qan_mongodb_profiler_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this change QAN mongo DB profiler agent OK body QAN mongodb profiler agent based on context it is used -func (o *ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent) UnmarshalBinary(b []byte) error { - var res ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANMongoDBProfilerAgentParamsBodyCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. -swagger:model ChangeQANMongoDBProfilerAgentParamsBodyCommon -*/ -type ChangeQANMongoDBProfilerAgentParamsBodyCommon struct { - // Enable this Agent. Can't be used with disabled. - Enable bool `json:"enable,omitempty"` - - // Disable this Agent. Can't be used with enabled. - Disable bool `json:"disable,omitempty"` - - // Replace all custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Remove all custom user-assigned labels. - RemoveCustomLabels bool `json:"remove_custom_labels,omitempty"` - - // Enables push metrics with vmagent, can't be used with disable_push_metrics. - // Can't be used with agent version lower then 2.12 and unsupported agents. - EnablePushMetrics bool `json:"enable_push_metrics,omitempty"` - - // Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics. - DisablePushMetrics bool `json:"disable_push_metrics,omitempty"` -} - -// Validate validates this change QAN mongo DB profiler agent params body common -func (o *ChangeQANMongoDBProfilerAgentParamsBodyCommon) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change QAN mongo DB profiler agent params body common based on context it is used -func (o *ChangeQANMongoDBProfilerAgentParamsBodyCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANMongoDBProfilerAgentParamsBodyCommon) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANMongoDBProfilerAgentParamsBodyCommon) UnmarshalBinary(b []byte) error { - var res ChangeQANMongoDBProfilerAgentParamsBodyCommon - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_qan_my_sql_perf_schema_agent_parameters.go b/api/inventory/v1/json/client/agents_service/change_qan_my_sql_perf_schema_agent_parameters.go deleted file mode 100644 index 292aba9756..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_qan_my_sql_perf_schema_agent_parameters.go +++ /dev/null @@ -1,144 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "net/http" - "time" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - cr "github.com/go-openapi/runtime/client" - "github.com/go-openapi/strfmt" -) - -// NewChangeQANMySQLPerfSchemaAgentParams creates a new ChangeQANMySQLPerfSchemaAgentParams object, -// with the default timeout for this client. -// -// Default values are not hydrated, since defaults are normally applied by the API server side. -// -// To enforce default values in parameter, use SetDefaults or WithDefaults. -func NewChangeQANMySQLPerfSchemaAgentParams() *ChangeQANMySQLPerfSchemaAgentParams { - return &ChangeQANMySQLPerfSchemaAgentParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewChangeQANMySQLPerfSchemaAgentParamsWithTimeout creates a new ChangeQANMySQLPerfSchemaAgentParams object -// with the ability to set a timeout on a request. -func NewChangeQANMySQLPerfSchemaAgentParamsWithTimeout(timeout time.Duration) *ChangeQANMySQLPerfSchemaAgentParams { - return &ChangeQANMySQLPerfSchemaAgentParams{ - timeout: timeout, - } -} - -// NewChangeQANMySQLPerfSchemaAgentParamsWithContext creates a new ChangeQANMySQLPerfSchemaAgentParams object -// with the ability to set a context for a request. -func NewChangeQANMySQLPerfSchemaAgentParamsWithContext(ctx context.Context) *ChangeQANMySQLPerfSchemaAgentParams { - return &ChangeQANMySQLPerfSchemaAgentParams{ - Context: ctx, - } -} - -// NewChangeQANMySQLPerfSchemaAgentParamsWithHTTPClient creates a new ChangeQANMySQLPerfSchemaAgentParams object -// with the ability to set a custom HTTPClient for a request. -func NewChangeQANMySQLPerfSchemaAgentParamsWithHTTPClient(client *http.Client) *ChangeQANMySQLPerfSchemaAgentParams { - return &ChangeQANMySQLPerfSchemaAgentParams{ - HTTPClient: client, - } -} - -/* -ChangeQANMySQLPerfSchemaAgentParams contains all the parameters to send to the API endpoint - - for the change QAN my SQL perf schema agent operation. - - Typically these are written to a http.Request. -*/ -type ChangeQANMySQLPerfSchemaAgentParams struct { - // Body. - Body ChangeQANMySQLPerfSchemaAgentBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the change QAN my SQL perf schema agent params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeQANMySQLPerfSchemaAgentParams) WithDefaults() *ChangeQANMySQLPerfSchemaAgentParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the change QAN my SQL perf schema agent params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeQANMySQLPerfSchemaAgentParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the change QAN my SQL perf schema agent params -func (o *ChangeQANMySQLPerfSchemaAgentParams) WithTimeout(timeout time.Duration) *ChangeQANMySQLPerfSchemaAgentParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the change QAN my SQL perf schema agent params -func (o *ChangeQANMySQLPerfSchemaAgentParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the change QAN my SQL perf schema agent params -func (o *ChangeQANMySQLPerfSchemaAgentParams) WithContext(ctx context.Context) *ChangeQANMySQLPerfSchemaAgentParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the change QAN my SQL perf schema agent params -func (o *ChangeQANMySQLPerfSchemaAgentParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the change QAN my SQL perf schema agent params -func (o *ChangeQANMySQLPerfSchemaAgentParams) WithHTTPClient(client *http.Client) *ChangeQANMySQLPerfSchemaAgentParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the change QAN my SQL perf schema agent params -func (o *ChangeQANMySQLPerfSchemaAgentParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the change QAN my SQL perf schema agent params -func (o *ChangeQANMySQLPerfSchemaAgentParams) WithBody(body ChangeQANMySQLPerfSchemaAgentBody) *ChangeQANMySQLPerfSchemaAgentParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the change QAN my SQL perf schema agent params -func (o *ChangeQANMySQLPerfSchemaAgentParams) SetBody(body ChangeQANMySQLPerfSchemaAgentBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *ChangeQANMySQLPerfSchemaAgentParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error { - if err := r.SetTimeout(o.timeout); err != nil { - return err - } - var res []error - if err := r.SetBodyParam(o.Body); err != nil { - return err - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_qan_my_sql_perf_schema_agent_responses.go b/api/inventory/v1/json/client/agents_service/change_qan_my_sql_perf_schema_agent_responses.go deleted file mode 100644 index 177a6671d6..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_qan_my_sql_perf_schema_agent_responses.go +++ /dev/null @@ -1,716 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "encoding/json" - "fmt" - "io" - "strconv" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - "github.com/go-openapi/strfmt" - "github.com/go-openapi/swag" - "github.com/go-openapi/validate" -) - -// ChangeQANMySQLPerfSchemaAgentReader is a Reader for the ChangeQANMySQLPerfSchemaAgent structure. -type ChangeQANMySQLPerfSchemaAgentReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *ChangeQANMySQLPerfSchemaAgentReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewChangeQANMySQLPerfSchemaAgentOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewChangeQANMySQLPerfSchemaAgentDefault(response.Code()) - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - if response.Code()/100 == 2 { - return result, nil - } - return nil, result - } -} - -// NewChangeQANMySQLPerfSchemaAgentOK creates a ChangeQANMySQLPerfSchemaAgentOK with default headers values -func NewChangeQANMySQLPerfSchemaAgentOK() *ChangeQANMySQLPerfSchemaAgentOK { - return &ChangeQANMySQLPerfSchemaAgentOK{} -} - -/* -ChangeQANMySQLPerfSchemaAgentOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type ChangeQANMySQLPerfSchemaAgentOK struct { - Payload *ChangeQANMySQLPerfSchemaAgentOKBody -} - -func (o *ChangeQANMySQLPerfSchemaAgentOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeQANMySQLPerfSchemaAgent][%d] changeQanMySqlPerfSchemaAgentOk %+v", 200, o.Payload) -} - -func (o *ChangeQANMySQLPerfSchemaAgentOK) GetPayload() *ChangeQANMySQLPerfSchemaAgentOKBody { - return o.Payload -} - -func (o *ChangeQANMySQLPerfSchemaAgentOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeQANMySQLPerfSchemaAgentOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewChangeQANMySQLPerfSchemaAgentDefault creates a ChangeQANMySQLPerfSchemaAgentDefault with default headers values -func NewChangeQANMySQLPerfSchemaAgentDefault(code int) *ChangeQANMySQLPerfSchemaAgentDefault { - return &ChangeQANMySQLPerfSchemaAgentDefault{ - _statusCode: code, - } -} - -/* -ChangeQANMySQLPerfSchemaAgentDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type ChangeQANMySQLPerfSchemaAgentDefault struct { - _statusCode int - - Payload *ChangeQANMySQLPerfSchemaAgentDefaultBody -} - -// Code gets the status code for the change QAN my SQL perf schema agent default response -func (o *ChangeQANMySQLPerfSchemaAgentDefault) Code() int { - return o._statusCode -} - -func (o *ChangeQANMySQLPerfSchemaAgentDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeQANMySQLPerfSchemaAgent][%d] ChangeQANMySQLPerfSchemaAgent default %+v", o._statusCode, o.Payload) -} - -func (o *ChangeQANMySQLPerfSchemaAgentDefault) GetPayload() *ChangeQANMySQLPerfSchemaAgentDefaultBody { - return o.Payload -} - -func (o *ChangeQANMySQLPerfSchemaAgentDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeQANMySQLPerfSchemaAgentDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -ChangeQANMySQLPerfSchemaAgentBody change QAN my SQL perf schema agent body -swagger:model ChangeQANMySQLPerfSchemaAgentBody -*/ -type ChangeQANMySQLPerfSchemaAgentBody struct { - // agent id - AgentID string `json:"agent_id,omitempty"` - - // common - Common *ChangeQANMySQLPerfSchemaAgentParamsBodyCommon `json:"common,omitempty"` -} - -// Validate validates this change QAN my SQL perf schema agent body -func (o *ChangeQANMySQLPerfSchemaAgentBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateCommon(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANMySQLPerfSchemaAgentBody) validateCommon(formats strfmt.Registry) error { - if swag.IsZero(o.Common) { // not required - return nil - } - - if o.Common != nil { - if err := o.Common.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change QAN my SQL perf schema agent body based on the context it is used -func (o *ChangeQANMySQLPerfSchemaAgentBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateCommon(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANMySQLPerfSchemaAgentBody) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { - if o.Common != nil { - if err := o.Common.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANMySQLPerfSchemaAgentBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANMySQLPerfSchemaAgentBody) UnmarshalBinary(b []byte) error { - var res ChangeQANMySQLPerfSchemaAgentBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANMySQLPerfSchemaAgentDefaultBody change QAN my SQL perf schema agent default body -swagger:model ChangeQANMySQLPerfSchemaAgentDefaultBody -*/ -type ChangeQANMySQLPerfSchemaAgentDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*ChangeQANMySQLPerfSchemaAgentDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this change QAN my SQL perf schema agent default body -func (o *ChangeQANMySQLPerfSchemaAgentDefaultBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateDetails(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANMySQLPerfSchemaAgentDefaultBody) validateDetails(formats strfmt.Registry) error { - if swag.IsZero(o.Details) { // not required - return nil - } - - for i := 0; i < len(o.Details); i++ { - if swag.IsZero(o.Details[i]) { // not required - continue - } - - if o.Details[i] != nil { - if err := o.Details[i].Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeQANMySQLPerfSchemaAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeQANMySQLPerfSchemaAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this change QAN my SQL perf schema agent default body based on the context it is used -func (o *ChangeQANMySQLPerfSchemaAgentDefaultBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateDetails(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANMySQLPerfSchemaAgentDefaultBody) contextValidateDetails(ctx context.Context, formats strfmt.Registry) error { - for i := 0; i < len(o.Details); i++ { - if o.Details[i] != nil { - if err := o.Details[i].ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeQANMySQLPerfSchemaAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeQANMySQLPerfSchemaAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANMySQLPerfSchemaAgentDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANMySQLPerfSchemaAgentDefaultBody) UnmarshalBinary(b []byte) error { - var res ChangeQANMySQLPerfSchemaAgentDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANMySQLPerfSchemaAgentDefaultBodyDetailsItems0 change QAN my SQL perf schema agent default body details items0 -swagger:model ChangeQANMySQLPerfSchemaAgentDefaultBodyDetailsItems0 -*/ -type ChangeQANMySQLPerfSchemaAgentDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this change QAN my SQL perf schema agent default body details items0 -func (o *ChangeQANMySQLPerfSchemaAgentDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change QAN my SQL perf schema agent default body details items0 based on context it is used -func (o *ChangeQANMySQLPerfSchemaAgentDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANMySQLPerfSchemaAgentDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANMySQLPerfSchemaAgentDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res ChangeQANMySQLPerfSchemaAgentDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANMySQLPerfSchemaAgentOKBody change QAN my SQL perf schema agent OK body -swagger:model ChangeQANMySQLPerfSchemaAgentOKBody -*/ -type ChangeQANMySQLPerfSchemaAgentOKBody struct { - // qan mysql perfschema agent - QANMysqlPerfschemaAgent *ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent `json:"qan_mysql_perfschema_agent,omitempty"` -} - -// Validate validates this change QAN my SQL perf schema agent OK body -func (o *ChangeQANMySQLPerfSchemaAgentOKBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateQANMysqlPerfschemaAgent(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANMySQLPerfSchemaAgentOKBody) validateQANMysqlPerfschemaAgent(formats strfmt.Registry) error { - if swag.IsZero(o.QANMysqlPerfschemaAgent) { // not required - return nil - } - - if o.QANMysqlPerfschemaAgent != nil { - if err := o.QANMysqlPerfschemaAgent.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeQanMySqlPerfSchemaAgentOk" + "." + "qan_mysql_perfschema_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeQanMySqlPerfSchemaAgentOk" + "." + "qan_mysql_perfschema_agent") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change QAN my SQL perf schema agent OK body based on the context it is used -func (o *ChangeQANMySQLPerfSchemaAgentOKBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateQANMysqlPerfschemaAgent(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANMySQLPerfSchemaAgentOKBody) contextValidateQANMysqlPerfschemaAgent(ctx context.Context, formats strfmt.Registry) error { - if o.QANMysqlPerfschemaAgent != nil { - if err := o.QANMysqlPerfschemaAgent.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeQanMySqlPerfSchemaAgentOk" + "." + "qan_mysql_perfschema_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeQanMySqlPerfSchemaAgentOk" + "." + "qan_mysql_perfschema_agent") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANMySQLPerfSchemaAgentOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANMySQLPerfSchemaAgentOKBody) UnmarshalBinary(b []byte) error { - var res ChangeQANMySQLPerfSchemaAgentOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent QANMySQLPerfSchemaAgent runs within pmm-agent and sends MySQL Query Analytics data to the PMM Server. -swagger:model ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent -*/ -type ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent struct { - // Unique randomly generated instance identifier. - AgentID string `json:"agent_id,omitempty"` - - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Desired Agent status: enabled (false) or disabled (true). - Disabled bool `json:"disabled,omitempty"` - - // Service identifier. - ServiceID string `json:"service_id,omitempty"` - - // MySQL username for getting performance data. - Username string `json:"username,omitempty"` - - // Use TLS for database connections. - TLS bool `json:"tls,omitempty"` - - // Skip TLS certificate and hostname validation. - TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` - - // Certificate Authority certificate chain. - TLSCa string `json:"tls_ca,omitempty"` - - // Client certificate. - TLSCert string `json:"tls_cert,omitempty"` - - // Password for decrypting tls_cert. - TLSKey string `json:"tls_key,omitempty"` - - // Disable parsing comments from queries and showing them in QAN. - DisableCommentsParsing bool `json:"disable_comments_parsing,omitempty"` - - // Limit query length in QAN (default: server-defined; -1: no limit). - MaxQueryLength int32 `json:"max_query_length,omitempty"` - - // True if query examples are disabled. - QueryExamplesDisabled bool `json:"query_examples_disabled,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // AgentStatus represents actual Agent status. - // - // - AGENT_STATUS_STARTING: Agent is starting. - // - AGENT_STATUS_RUNNING: Agent is running. - // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. - // - AGENT_STATUS_STOPPING: Agent is stopping. - // - AGENT_STATUS_DONE: Agent finished. - // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. - // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] - Status *string `json:"status,omitempty"` - - // Path to exec process. - ProcessExecPath string `json:"process_exec_path,omitempty"` - - // Log level for exporters - // - // - LOG_LEVEL_UNSPECIFIED: Auto - // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] - LogLevel *string `json:"log_level,omitempty"` -} - -// Validate validates this change QAN my SQL perf schema agent OK body QAN mysql perfschema agent -func (o *ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateStatus(formats); err != nil { - res = append(res, err) - } - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var changeQanMySqlPerfSchemaAgentOkBodyQanMysqlPerfschemaAgentTypeStatusPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeQanMySqlPerfSchemaAgentOkBodyQanMysqlPerfschemaAgentTypeStatusPropEnum = append(changeQanMySqlPerfSchemaAgentOkBodyQanMysqlPerfschemaAgentTypeStatusPropEnum, v) - } -} - -const ( - - // ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeQanMySqlPerfSchemaAgentOkBodyQanMysqlPerfschemaAgentTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("changeQanMySqlPerfSchemaAgentOk"+"."+"qan_mysql_perfschema_agent"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var changeQanMySqlPerfSchemaAgentOkBodyQanMysqlPerfschemaAgentTypeLogLevelPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeQanMySqlPerfSchemaAgentOkBodyQanMysqlPerfschemaAgentTypeLogLevelPropEnum = append(changeQanMySqlPerfSchemaAgentOkBodyQanMysqlPerfschemaAgentTypeLogLevelPropEnum, v) - } -} - -const ( - - // ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeQanMySqlPerfSchemaAgentOkBodyQanMysqlPerfschemaAgentTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("changeQanMySqlPerfSchemaAgentOk"+"."+"qan_mysql_perfschema_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this change QAN my SQL perf schema agent OK body QAN mysql perfschema agent based on context it is used -func (o *ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent) UnmarshalBinary(b []byte) error { - var res ChangeQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANMySQLPerfSchemaAgentParamsBodyCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. -swagger:model ChangeQANMySQLPerfSchemaAgentParamsBodyCommon -*/ -type ChangeQANMySQLPerfSchemaAgentParamsBodyCommon struct { - // Enable this Agent. Can't be used with disabled. - Enable bool `json:"enable,omitempty"` - - // Disable this Agent. Can't be used with enabled. - Disable bool `json:"disable,omitempty"` - - // Replace all custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Remove all custom user-assigned labels. - RemoveCustomLabels bool `json:"remove_custom_labels,omitempty"` - - // Enables push metrics with vmagent, can't be used with disable_push_metrics. - // Can't be used with agent version lower then 2.12 and unsupported agents. - EnablePushMetrics bool `json:"enable_push_metrics,omitempty"` - - // Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics. - DisablePushMetrics bool `json:"disable_push_metrics,omitempty"` -} - -// Validate validates this change QAN my SQL perf schema agent params body common -func (o *ChangeQANMySQLPerfSchemaAgentParamsBodyCommon) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change QAN my SQL perf schema agent params body common based on context it is used -func (o *ChangeQANMySQLPerfSchemaAgentParamsBodyCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANMySQLPerfSchemaAgentParamsBodyCommon) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANMySQLPerfSchemaAgentParamsBodyCommon) UnmarshalBinary(b []byte) error { - var res ChangeQANMySQLPerfSchemaAgentParamsBodyCommon - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_qan_my_sql_slowlog_agent_parameters.go b/api/inventory/v1/json/client/agents_service/change_qan_my_sql_slowlog_agent_parameters.go deleted file mode 100644 index 9c02dbb8bf..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_qan_my_sql_slowlog_agent_parameters.go +++ /dev/null @@ -1,144 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "net/http" - "time" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - cr "github.com/go-openapi/runtime/client" - "github.com/go-openapi/strfmt" -) - -// NewChangeQANMySQLSlowlogAgentParams creates a new ChangeQANMySQLSlowlogAgentParams object, -// with the default timeout for this client. -// -// Default values are not hydrated, since defaults are normally applied by the API server side. -// -// To enforce default values in parameter, use SetDefaults or WithDefaults. -func NewChangeQANMySQLSlowlogAgentParams() *ChangeQANMySQLSlowlogAgentParams { - return &ChangeQANMySQLSlowlogAgentParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewChangeQANMySQLSlowlogAgentParamsWithTimeout creates a new ChangeQANMySQLSlowlogAgentParams object -// with the ability to set a timeout on a request. -func NewChangeQANMySQLSlowlogAgentParamsWithTimeout(timeout time.Duration) *ChangeQANMySQLSlowlogAgentParams { - return &ChangeQANMySQLSlowlogAgentParams{ - timeout: timeout, - } -} - -// NewChangeQANMySQLSlowlogAgentParamsWithContext creates a new ChangeQANMySQLSlowlogAgentParams object -// with the ability to set a context for a request. -func NewChangeQANMySQLSlowlogAgentParamsWithContext(ctx context.Context) *ChangeQANMySQLSlowlogAgentParams { - return &ChangeQANMySQLSlowlogAgentParams{ - Context: ctx, - } -} - -// NewChangeQANMySQLSlowlogAgentParamsWithHTTPClient creates a new ChangeQANMySQLSlowlogAgentParams object -// with the ability to set a custom HTTPClient for a request. -func NewChangeQANMySQLSlowlogAgentParamsWithHTTPClient(client *http.Client) *ChangeQANMySQLSlowlogAgentParams { - return &ChangeQANMySQLSlowlogAgentParams{ - HTTPClient: client, - } -} - -/* -ChangeQANMySQLSlowlogAgentParams contains all the parameters to send to the API endpoint - - for the change QAN my SQL slowlog agent operation. - - Typically these are written to a http.Request. -*/ -type ChangeQANMySQLSlowlogAgentParams struct { - // Body. - Body ChangeQANMySQLSlowlogAgentBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the change QAN my SQL slowlog agent params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeQANMySQLSlowlogAgentParams) WithDefaults() *ChangeQANMySQLSlowlogAgentParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the change QAN my SQL slowlog agent params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeQANMySQLSlowlogAgentParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the change QAN my SQL slowlog agent params -func (o *ChangeQANMySQLSlowlogAgentParams) WithTimeout(timeout time.Duration) *ChangeQANMySQLSlowlogAgentParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the change QAN my SQL slowlog agent params -func (o *ChangeQANMySQLSlowlogAgentParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the change QAN my SQL slowlog agent params -func (o *ChangeQANMySQLSlowlogAgentParams) WithContext(ctx context.Context) *ChangeQANMySQLSlowlogAgentParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the change QAN my SQL slowlog agent params -func (o *ChangeQANMySQLSlowlogAgentParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the change QAN my SQL slowlog agent params -func (o *ChangeQANMySQLSlowlogAgentParams) WithHTTPClient(client *http.Client) *ChangeQANMySQLSlowlogAgentParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the change QAN my SQL slowlog agent params -func (o *ChangeQANMySQLSlowlogAgentParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the change QAN my SQL slowlog agent params -func (o *ChangeQANMySQLSlowlogAgentParams) WithBody(body ChangeQANMySQLSlowlogAgentBody) *ChangeQANMySQLSlowlogAgentParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the change QAN my SQL slowlog agent params -func (o *ChangeQANMySQLSlowlogAgentParams) SetBody(body ChangeQANMySQLSlowlogAgentBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *ChangeQANMySQLSlowlogAgentParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error { - if err := r.SetTimeout(o.timeout); err != nil { - return err - } - var res []error - if err := r.SetBodyParam(o.Body); err != nil { - return err - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_qan_my_sql_slowlog_agent_responses.go b/api/inventory/v1/json/client/agents_service/change_qan_my_sql_slowlog_agent_responses.go deleted file mode 100644 index ece7c93232..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_qan_my_sql_slowlog_agent_responses.go +++ /dev/null @@ -1,719 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "encoding/json" - "fmt" - "io" - "strconv" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - "github.com/go-openapi/strfmt" - "github.com/go-openapi/swag" - "github.com/go-openapi/validate" -) - -// ChangeQANMySQLSlowlogAgentReader is a Reader for the ChangeQANMySQLSlowlogAgent structure. -type ChangeQANMySQLSlowlogAgentReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *ChangeQANMySQLSlowlogAgentReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewChangeQANMySQLSlowlogAgentOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewChangeQANMySQLSlowlogAgentDefault(response.Code()) - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - if response.Code()/100 == 2 { - return result, nil - } - return nil, result - } -} - -// NewChangeQANMySQLSlowlogAgentOK creates a ChangeQANMySQLSlowlogAgentOK with default headers values -func NewChangeQANMySQLSlowlogAgentOK() *ChangeQANMySQLSlowlogAgentOK { - return &ChangeQANMySQLSlowlogAgentOK{} -} - -/* -ChangeQANMySQLSlowlogAgentOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type ChangeQANMySQLSlowlogAgentOK struct { - Payload *ChangeQANMySQLSlowlogAgentOKBody -} - -func (o *ChangeQANMySQLSlowlogAgentOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeQANMySQLSlowlogAgent][%d] changeQanMySqlSlowlogAgentOk %+v", 200, o.Payload) -} - -func (o *ChangeQANMySQLSlowlogAgentOK) GetPayload() *ChangeQANMySQLSlowlogAgentOKBody { - return o.Payload -} - -func (o *ChangeQANMySQLSlowlogAgentOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeQANMySQLSlowlogAgentOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewChangeQANMySQLSlowlogAgentDefault creates a ChangeQANMySQLSlowlogAgentDefault with default headers values -func NewChangeQANMySQLSlowlogAgentDefault(code int) *ChangeQANMySQLSlowlogAgentDefault { - return &ChangeQANMySQLSlowlogAgentDefault{ - _statusCode: code, - } -} - -/* -ChangeQANMySQLSlowlogAgentDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type ChangeQANMySQLSlowlogAgentDefault struct { - _statusCode int - - Payload *ChangeQANMySQLSlowlogAgentDefaultBody -} - -// Code gets the status code for the change QAN my SQL slowlog agent default response -func (o *ChangeQANMySQLSlowlogAgentDefault) Code() int { - return o._statusCode -} - -func (o *ChangeQANMySQLSlowlogAgentDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeQANMySQLSlowlogAgent][%d] ChangeQANMySQLSlowlogAgent default %+v", o._statusCode, o.Payload) -} - -func (o *ChangeQANMySQLSlowlogAgentDefault) GetPayload() *ChangeQANMySQLSlowlogAgentDefaultBody { - return o.Payload -} - -func (o *ChangeQANMySQLSlowlogAgentDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeQANMySQLSlowlogAgentDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -ChangeQANMySQLSlowlogAgentBody change QAN my SQL slowlog agent body -swagger:model ChangeQANMySQLSlowlogAgentBody -*/ -type ChangeQANMySQLSlowlogAgentBody struct { - // agent id - AgentID string `json:"agent_id,omitempty"` - - // common - Common *ChangeQANMySQLSlowlogAgentParamsBodyCommon `json:"common,omitempty"` -} - -// Validate validates this change QAN my SQL slowlog agent body -func (o *ChangeQANMySQLSlowlogAgentBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateCommon(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANMySQLSlowlogAgentBody) validateCommon(formats strfmt.Registry) error { - if swag.IsZero(o.Common) { // not required - return nil - } - - if o.Common != nil { - if err := o.Common.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change QAN my SQL slowlog agent body based on the context it is used -func (o *ChangeQANMySQLSlowlogAgentBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateCommon(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANMySQLSlowlogAgentBody) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { - if o.Common != nil { - if err := o.Common.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANMySQLSlowlogAgentBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANMySQLSlowlogAgentBody) UnmarshalBinary(b []byte) error { - var res ChangeQANMySQLSlowlogAgentBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANMySQLSlowlogAgentDefaultBody change QAN my SQL slowlog agent default body -swagger:model ChangeQANMySQLSlowlogAgentDefaultBody -*/ -type ChangeQANMySQLSlowlogAgentDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*ChangeQANMySQLSlowlogAgentDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this change QAN my SQL slowlog agent default body -func (o *ChangeQANMySQLSlowlogAgentDefaultBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateDetails(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANMySQLSlowlogAgentDefaultBody) validateDetails(formats strfmt.Registry) error { - if swag.IsZero(o.Details) { // not required - return nil - } - - for i := 0; i < len(o.Details); i++ { - if swag.IsZero(o.Details[i]) { // not required - continue - } - - if o.Details[i] != nil { - if err := o.Details[i].Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeQANMySQLSlowlogAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeQANMySQLSlowlogAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this change QAN my SQL slowlog agent default body based on the context it is used -func (o *ChangeQANMySQLSlowlogAgentDefaultBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateDetails(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANMySQLSlowlogAgentDefaultBody) contextValidateDetails(ctx context.Context, formats strfmt.Registry) error { - for i := 0; i < len(o.Details); i++ { - if o.Details[i] != nil { - if err := o.Details[i].ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeQANMySQLSlowlogAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeQANMySQLSlowlogAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANMySQLSlowlogAgentDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANMySQLSlowlogAgentDefaultBody) UnmarshalBinary(b []byte) error { - var res ChangeQANMySQLSlowlogAgentDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANMySQLSlowlogAgentDefaultBodyDetailsItems0 change QAN my SQL slowlog agent default body details items0 -swagger:model ChangeQANMySQLSlowlogAgentDefaultBodyDetailsItems0 -*/ -type ChangeQANMySQLSlowlogAgentDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this change QAN my SQL slowlog agent default body details items0 -func (o *ChangeQANMySQLSlowlogAgentDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change QAN my SQL slowlog agent default body details items0 based on context it is used -func (o *ChangeQANMySQLSlowlogAgentDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANMySQLSlowlogAgentDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANMySQLSlowlogAgentDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res ChangeQANMySQLSlowlogAgentDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANMySQLSlowlogAgentOKBody change QAN my SQL slowlog agent OK body -swagger:model ChangeQANMySQLSlowlogAgentOKBody -*/ -type ChangeQANMySQLSlowlogAgentOKBody struct { - // qan mysql slowlog agent - QANMysqlSlowlogAgent *ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent `json:"qan_mysql_slowlog_agent,omitempty"` -} - -// Validate validates this change QAN my SQL slowlog agent OK body -func (o *ChangeQANMySQLSlowlogAgentOKBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateQANMysqlSlowlogAgent(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANMySQLSlowlogAgentOKBody) validateQANMysqlSlowlogAgent(formats strfmt.Registry) error { - if swag.IsZero(o.QANMysqlSlowlogAgent) { // not required - return nil - } - - if o.QANMysqlSlowlogAgent != nil { - if err := o.QANMysqlSlowlogAgent.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeQanMySqlSlowlogAgentOk" + "." + "qan_mysql_slowlog_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeQanMySqlSlowlogAgentOk" + "." + "qan_mysql_slowlog_agent") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change QAN my SQL slowlog agent OK body based on the context it is used -func (o *ChangeQANMySQLSlowlogAgentOKBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateQANMysqlSlowlogAgent(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANMySQLSlowlogAgentOKBody) contextValidateQANMysqlSlowlogAgent(ctx context.Context, formats strfmt.Registry) error { - if o.QANMysqlSlowlogAgent != nil { - if err := o.QANMysqlSlowlogAgent.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeQanMySqlSlowlogAgentOk" + "." + "qan_mysql_slowlog_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeQanMySqlSlowlogAgentOk" + "." + "qan_mysql_slowlog_agent") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANMySQLSlowlogAgentOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANMySQLSlowlogAgentOKBody) UnmarshalBinary(b []byte) error { - var res ChangeQANMySQLSlowlogAgentOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent QANMySQLSlowlogAgent runs within pmm-agent and sends MySQL Query Analytics data to the PMM Server. -swagger:model ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent -*/ -type ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent struct { - // Unique randomly generated instance identifier. - AgentID string `json:"agent_id,omitempty"` - - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Desired Agent status: enabled (false) or disabled (true). - Disabled bool `json:"disabled,omitempty"` - - // Service identifier. - ServiceID string `json:"service_id,omitempty"` - - // MySQL username for getting performance data. - Username string `json:"username,omitempty"` - - // Use TLS for database connections. - TLS bool `json:"tls,omitempty"` - - // Skip TLS certificate and hostname validation. - TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` - - // Certificate Authority certificate chain. - TLSCa string `json:"tls_ca,omitempty"` - - // Client certificate. - TLSCert string `json:"tls_cert,omitempty"` - - // Password for decrypting tls_cert. - TLSKey string `json:"tls_key,omitempty"` - - // Disable parsing comments from queries and showing them in QAN. - DisableCommentsParsing bool `json:"disable_comments_parsing,omitempty"` - - // Limit query length in QAN (default: server-defined; -1: no limit) - MaxQueryLength int32 `json:"max_query_length,omitempty"` - - // True if query examples are disabled. - QueryExamplesDisabled bool `json:"query_examples_disabled,omitempty"` - - // Slowlog file is rotated at this size if > 0. - MaxSlowlogFileSize string `json:"max_slowlog_file_size,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // AgentStatus represents actual Agent status. - // - // - AGENT_STATUS_STARTING: Agent is starting. - // - AGENT_STATUS_RUNNING: Agent is running. - // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. - // - AGENT_STATUS_STOPPING: Agent is stopping. - // - AGENT_STATUS_DONE: Agent finished. - // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. - // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] - Status *string `json:"status,omitempty"` - - // mod tidy - ProcessExecPath string `json:"process_exec_path,omitempty"` - - // Log level for exporters - // - // - LOG_LEVEL_UNSPECIFIED: Auto - // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] - LogLevel *string `json:"log_level,omitempty"` -} - -// Validate validates this change QAN my SQL slowlog agent OK body QAN mysql slowlog agent -func (o *ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateStatus(formats); err != nil { - res = append(res, err) - } - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var changeQanMySqlSlowlogAgentOkBodyQanMysqlSlowlogAgentTypeStatusPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeQanMySqlSlowlogAgentOkBodyQanMysqlSlowlogAgentTypeStatusPropEnum = append(changeQanMySqlSlowlogAgentOkBodyQanMysqlSlowlogAgentTypeStatusPropEnum, v) - } -} - -const ( - - // ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeQanMySqlSlowlogAgentOkBodyQanMysqlSlowlogAgentTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("changeQanMySqlSlowlogAgentOk"+"."+"qan_mysql_slowlog_agent"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var changeQanMySqlSlowlogAgentOkBodyQanMysqlSlowlogAgentTypeLogLevelPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeQanMySqlSlowlogAgentOkBodyQanMysqlSlowlogAgentTypeLogLevelPropEnum = append(changeQanMySqlSlowlogAgentOkBodyQanMysqlSlowlogAgentTypeLogLevelPropEnum, v) - } -} - -const ( - - // ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeQanMySqlSlowlogAgentOkBodyQanMysqlSlowlogAgentTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("changeQanMySqlSlowlogAgentOk"+"."+"qan_mysql_slowlog_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this change QAN my SQL slowlog agent OK body QAN mysql slowlog agent based on context it is used -func (o *ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent) UnmarshalBinary(b []byte) error { - var res ChangeQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANMySQLSlowlogAgentParamsBodyCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. -swagger:model ChangeQANMySQLSlowlogAgentParamsBodyCommon -*/ -type ChangeQANMySQLSlowlogAgentParamsBodyCommon struct { - // Enable this Agent. Can't be used with disabled. - Enable bool `json:"enable,omitempty"` - - // Disable this Agent. Can't be used with enabled. - Disable bool `json:"disable,omitempty"` - - // Replace all custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Remove all custom user-assigned labels. - RemoveCustomLabels bool `json:"remove_custom_labels,omitempty"` - - // Enables push metrics with vmagent, can't be used with disable_push_metrics. - // Can't be used with agent version lower then 2.12 and unsupported agents. - EnablePushMetrics bool `json:"enable_push_metrics,omitempty"` - - // Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics. - DisablePushMetrics bool `json:"disable_push_metrics,omitempty"` -} - -// Validate validates this change QAN my SQL slowlog agent params body common -func (o *ChangeQANMySQLSlowlogAgentParamsBodyCommon) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change QAN my SQL slowlog agent params body common based on context it is used -func (o *ChangeQANMySQLSlowlogAgentParamsBodyCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANMySQLSlowlogAgentParamsBodyCommon) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANMySQLSlowlogAgentParamsBodyCommon) UnmarshalBinary(b []byte) error { - var res ChangeQANMySQLSlowlogAgentParamsBodyCommon - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_qan_postgre_sql_pg_stat_monitor_agent_parameters.go b/api/inventory/v1/json/client/agents_service/change_qan_postgre_sql_pg_stat_monitor_agent_parameters.go deleted file mode 100644 index 6d7088971c..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_qan_postgre_sql_pg_stat_monitor_agent_parameters.go +++ /dev/null @@ -1,144 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "net/http" - "time" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - cr "github.com/go-openapi/runtime/client" - "github.com/go-openapi/strfmt" -) - -// NewChangeQANPostgreSQLPgStatMonitorAgentParams creates a new ChangeQANPostgreSQLPgStatMonitorAgentParams object, -// with the default timeout for this client. -// -// Default values are not hydrated, since defaults are normally applied by the API server side. -// -// To enforce default values in parameter, use SetDefaults or WithDefaults. -func NewChangeQANPostgreSQLPgStatMonitorAgentParams() *ChangeQANPostgreSQLPgStatMonitorAgentParams { - return &ChangeQANPostgreSQLPgStatMonitorAgentParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewChangeQANPostgreSQLPgStatMonitorAgentParamsWithTimeout creates a new ChangeQANPostgreSQLPgStatMonitorAgentParams object -// with the ability to set a timeout on a request. -func NewChangeQANPostgreSQLPgStatMonitorAgentParamsWithTimeout(timeout time.Duration) *ChangeQANPostgreSQLPgStatMonitorAgentParams { - return &ChangeQANPostgreSQLPgStatMonitorAgentParams{ - timeout: timeout, - } -} - -// NewChangeQANPostgreSQLPgStatMonitorAgentParamsWithContext creates a new ChangeQANPostgreSQLPgStatMonitorAgentParams object -// with the ability to set a context for a request. -func NewChangeQANPostgreSQLPgStatMonitorAgentParamsWithContext(ctx context.Context) *ChangeQANPostgreSQLPgStatMonitorAgentParams { - return &ChangeQANPostgreSQLPgStatMonitorAgentParams{ - Context: ctx, - } -} - -// NewChangeQANPostgreSQLPgStatMonitorAgentParamsWithHTTPClient creates a new ChangeQANPostgreSQLPgStatMonitorAgentParams object -// with the ability to set a custom HTTPClient for a request. -func NewChangeQANPostgreSQLPgStatMonitorAgentParamsWithHTTPClient(client *http.Client) *ChangeQANPostgreSQLPgStatMonitorAgentParams { - return &ChangeQANPostgreSQLPgStatMonitorAgentParams{ - HTTPClient: client, - } -} - -/* -ChangeQANPostgreSQLPgStatMonitorAgentParams contains all the parameters to send to the API endpoint - - for the change QAN postgre SQL pg stat monitor agent operation. - - Typically these are written to a http.Request. -*/ -type ChangeQANPostgreSQLPgStatMonitorAgentParams struct { - // Body. - Body ChangeQANPostgreSQLPgStatMonitorAgentBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the change QAN postgre SQL pg stat monitor agent params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeQANPostgreSQLPgStatMonitorAgentParams) WithDefaults() *ChangeQANPostgreSQLPgStatMonitorAgentParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the change QAN postgre SQL pg stat monitor agent params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeQANPostgreSQLPgStatMonitorAgentParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the change QAN postgre SQL pg stat monitor agent params -func (o *ChangeQANPostgreSQLPgStatMonitorAgentParams) WithTimeout(timeout time.Duration) *ChangeQANPostgreSQLPgStatMonitorAgentParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the change QAN postgre SQL pg stat monitor agent params -func (o *ChangeQANPostgreSQLPgStatMonitorAgentParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the change QAN postgre SQL pg stat monitor agent params -func (o *ChangeQANPostgreSQLPgStatMonitorAgentParams) WithContext(ctx context.Context) *ChangeQANPostgreSQLPgStatMonitorAgentParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the change QAN postgre SQL pg stat monitor agent params -func (o *ChangeQANPostgreSQLPgStatMonitorAgentParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the change QAN postgre SQL pg stat monitor agent params -func (o *ChangeQANPostgreSQLPgStatMonitorAgentParams) WithHTTPClient(client *http.Client) *ChangeQANPostgreSQLPgStatMonitorAgentParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the change QAN postgre SQL pg stat monitor agent params -func (o *ChangeQANPostgreSQLPgStatMonitorAgentParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the change QAN postgre SQL pg stat monitor agent params -func (o *ChangeQANPostgreSQLPgStatMonitorAgentParams) WithBody(body ChangeQANPostgreSQLPgStatMonitorAgentBody) *ChangeQANPostgreSQLPgStatMonitorAgentParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the change QAN postgre SQL pg stat monitor agent params -func (o *ChangeQANPostgreSQLPgStatMonitorAgentParams) SetBody(body ChangeQANPostgreSQLPgStatMonitorAgentBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *ChangeQANPostgreSQLPgStatMonitorAgentParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error { - if err := r.SetTimeout(o.timeout); err != nil { - return err - } - var res []error - if err := r.SetBodyParam(o.Body); err != nil { - return err - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_qan_postgre_sql_pg_stat_monitor_agent_responses.go b/api/inventory/v1/json/client/agents_service/change_qan_postgre_sql_pg_stat_monitor_agent_responses.go deleted file mode 100644 index bd7d47d8a4..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_qan_postgre_sql_pg_stat_monitor_agent_responses.go +++ /dev/null @@ -1,707 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "encoding/json" - "fmt" - "io" - "strconv" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - "github.com/go-openapi/strfmt" - "github.com/go-openapi/swag" - "github.com/go-openapi/validate" -) - -// ChangeQANPostgreSQLPgStatMonitorAgentReader is a Reader for the ChangeQANPostgreSQLPgStatMonitorAgent structure. -type ChangeQANPostgreSQLPgStatMonitorAgentReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *ChangeQANPostgreSQLPgStatMonitorAgentReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewChangeQANPostgreSQLPgStatMonitorAgentOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewChangeQANPostgreSQLPgStatMonitorAgentDefault(response.Code()) - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - if response.Code()/100 == 2 { - return result, nil - } - return nil, result - } -} - -// NewChangeQANPostgreSQLPgStatMonitorAgentOK creates a ChangeQANPostgreSQLPgStatMonitorAgentOK with default headers values -func NewChangeQANPostgreSQLPgStatMonitorAgentOK() *ChangeQANPostgreSQLPgStatMonitorAgentOK { - return &ChangeQANPostgreSQLPgStatMonitorAgentOK{} -} - -/* -ChangeQANPostgreSQLPgStatMonitorAgentOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type ChangeQANPostgreSQLPgStatMonitorAgentOK struct { - Payload *ChangeQANPostgreSQLPgStatMonitorAgentOKBody -} - -func (o *ChangeQANPostgreSQLPgStatMonitorAgentOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeQANPostgreSQLPgStatMonitorAgent][%d] changeQanPostgreSqlPgStatMonitorAgentOk %+v", 200, o.Payload) -} - -func (o *ChangeQANPostgreSQLPgStatMonitorAgentOK) GetPayload() *ChangeQANPostgreSQLPgStatMonitorAgentOKBody { - return o.Payload -} - -func (o *ChangeQANPostgreSQLPgStatMonitorAgentOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeQANPostgreSQLPgStatMonitorAgentOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewChangeQANPostgreSQLPgStatMonitorAgentDefault creates a ChangeQANPostgreSQLPgStatMonitorAgentDefault with default headers values -func NewChangeQANPostgreSQLPgStatMonitorAgentDefault(code int) *ChangeQANPostgreSQLPgStatMonitorAgentDefault { - return &ChangeQANPostgreSQLPgStatMonitorAgentDefault{ - _statusCode: code, - } -} - -/* -ChangeQANPostgreSQLPgStatMonitorAgentDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type ChangeQANPostgreSQLPgStatMonitorAgentDefault struct { - _statusCode int - - Payload *ChangeQANPostgreSQLPgStatMonitorAgentDefaultBody -} - -// Code gets the status code for the change QAN postgre SQL pg stat monitor agent default response -func (o *ChangeQANPostgreSQLPgStatMonitorAgentDefault) Code() int { - return o._statusCode -} - -func (o *ChangeQANPostgreSQLPgStatMonitorAgentDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeQANPostgreSQLPgStatMonitorAgent][%d] ChangeQANPostgreSQLPgStatMonitorAgent default %+v", o._statusCode, o.Payload) -} - -func (o *ChangeQANPostgreSQLPgStatMonitorAgentDefault) GetPayload() *ChangeQANPostgreSQLPgStatMonitorAgentDefaultBody { - return o.Payload -} - -func (o *ChangeQANPostgreSQLPgStatMonitorAgentDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeQANPostgreSQLPgStatMonitorAgentDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -ChangeQANPostgreSQLPgStatMonitorAgentBody change QAN postgre SQL pg stat monitor agent body -swagger:model ChangeQANPostgreSQLPgStatMonitorAgentBody -*/ -type ChangeQANPostgreSQLPgStatMonitorAgentBody struct { - // agent id - AgentID string `json:"agent_id,omitempty"` - - // common - Common *ChangeQANPostgreSQLPgStatMonitorAgentParamsBodyCommon `json:"common,omitempty"` -} - -// Validate validates this change QAN postgre SQL pg stat monitor agent body -func (o *ChangeQANPostgreSQLPgStatMonitorAgentBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateCommon(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANPostgreSQLPgStatMonitorAgentBody) validateCommon(formats strfmt.Registry) error { - if swag.IsZero(o.Common) { // not required - return nil - } - - if o.Common != nil { - if err := o.Common.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change QAN postgre SQL pg stat monitor agent body based on the context it is used -func (o *ChangeQANPostgreSQLPgStatMonitorAgentBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateCommon(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANPostgreSQLPgStatMonitorAgentBody) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { - if o.Common != nil { - if err := o.Common.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatMonitorAgentBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatMonitorAgentBody) UnmarshalBinary(b []byte) error { - var res ChangeQANPostgreSQLPgStatMonitorAgentBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANPostgreSQLPgStatMonitorAgentDefaultBody change QAN postgre SQL pg stat monitor agent default body -swagger:model ChangeQANPostgreSQLPgStatMonitorAgentDefaultBody -*/ -type ChangeQANPostgreSQLPgStatMonitorAgentDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*ChangeQANPostgreSQLPgStatMonitorAgentDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this change QAN postgre SQL pg stat monitor agent default body -func (o *ChangeQANPostgreSQLPgStatMonitorAgentDefaultBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateDetails(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANPostgreSQLPgStatMonitorAgentDefaultBody) validateDetails(formats strfmt.Registry) error { - if swag.IsZero(o.Details) { // not required - return nil - } - - for i := 0; i < len(o.Details); i++ { - if swag.IsZero(o.Details[i]) { // not required - continue - } - - if o.Details[i] != nil { - if err := o.Details[i].Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeQANPostgreSQLPgStatMonitorAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeQANPostgreSQLPgStatMonitorAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this change QAN postgre SQL pg stat monitor agent default body based on the context it is used -func (o *ChangeQANPostgreSQLPgStatMonitorAgentDefaultBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateDetails(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANPostgreSQLPgStatMonitorAgentDefaultBody) contextValidateDetails(ctx context.Context, formats strfmt.Registry) error { - for i := 0; i < len(o.Details); i++ { - if o.Details[i] != nil { - if err := o.Details[i].ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeQANPostgreSQLPgStatMonitorAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeQANPostgreSQLPgStatMonitorAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatMonitorAgentDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatMonitorAgentDefaultBody) UnmarshalBinary(b []byte) error { - var res ChangeQANPostgreSQLPgStatMonitorAgentDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANPostgreSQLPgStatMonitorAgentDefaultBodyDetailsItems0 change QAN postgre SQL pg stat monitor agent default body details items0 -swagger:model ChangeQANPostgreSQLPgStatMonitorAgentDefaultBodyDetailsItems0 -*/ -type ChangeQANPostgreSQLPgStatMonitorAgentDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this change QAN postgre SQL pg stat monitor agent default body details items0 -func (o *ChangeQANPostgreSQLPgStatMonitorAgentDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change QAN postgre SQL pg stat monitor agent default body details items0 based on context it is used -func (o *ChangeQANPostgreSQLPgStatMonitorAgentDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatMonitorAgentDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatMonitorAgentDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res ChangeQANPostgreSQLPgStatMonitorAgentDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANPostgreSQLPgStatMonitorAgentOKBody change QAN postgre SQL pg stat monitor agent OK body -swagger:model ChangeQANPostgreSQLPgStatMonitorAgentOKBody -*/ -type ChangeQANPostgreSQLPgStatMonitorAgentOKBody struct { - // qan postgresql pgstatmonitor agent - QANPostgresqlPgstatmonitorAgent *ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent `json:"qan_postgresql_pgstatmonitor_agent,omitempty"` -} - -// Validate validates this change QAN postgre SQL pg stat monitor agent OK body -func (o *ChangeQANPostgreSQLPgStatMonitorAgentOKBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateQANPostgresqlPgstatmonitorAgent(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANPostgreSQLPgStatMonitorAgentOKBody) validateQANPostgresqlPgstatmonitorAgent(formats strfmt.Registry) error { - if swag.IsZero(o.QANPostgresqlPgstatmonitorAgent) { // not required - return nil - } - - if o.QANPostgresqlPgstatmonitorAgent != nil { - if err := o.QANPostgresqlPgstatmonitorAgent.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeQanPostgreSqlPgStatMonitorAgentOk" + "." + "qan_postgresql_pgstatmonitor_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeQanPostgreSqlPgStatMonitorAgentOk" + "." + "qan_postgresql_pgstatmonitor_agent") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change QAN postgre SQL pg stat monitor agent OK body based on the context it is used -func (o *ChangeQANPostgreSQLPgStatMonitorAgentOKBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateQANPostgresqlPgstatmonitorAgent(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANPostgreSQLPgStatMonitorAgentOKBody) contextValidateQANPostgresqlPgstatmonitorAgent(ctx context.Context, formats strfmt.Registry) error { - if o.QANPostgresqlPgstatmonitorAgent != nil { - if err := o.QANPostgresqlPgstatmonitorAgent.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeQanPostgreSqlPgStatMonitorAgentOk" + "." + "qan_postgresql_pgstatmonitor_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeQanPostgreSqlPgStatMonitorAgentOk" + "." + "qan_postgresql_pgstatmonitor_agent") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatMonitorAgentOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatMonitorAgentOKBody) UnmarshalBinary(b []byte) error { - var res ChangeQANPostgreSQLPgStatMonitorAgentOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent QANPostgreSQLPgStatMonitorAgent runs within pmm-agent and sends PostgreSQL Query Analytics data to the PMM Server. -swagger:model ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent -*/ -type ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent struct { - // Unique randomly generated instance identifier. - AgentID string `json:"agent_id,omitempty"` - - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Desired Agent status: enabled (false) or disabled (true). - Disabled bool `json:"disabled,omitempty"` - - // Service identifier. - ServiceID string `json:"service_id,omitempty"` - - // PostgreSQL username for getting pg stat monitor data. - Username string `json:"username,omitempty"` - - // Use TLS for database connections. - TLS bool `json:"tls,omitempty"` - - // Skip TLS certificate and hostname validation. - TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` - - // Disable parsing comments from queries and showing them in QAN. - DisableCommentsParsing bool `json:"disable_comments_parsing,omitempty"` - - // Limit query length in QAN (default: server-defined; -1: no limit). - MaxQueryLength int32 `json:"max_query_length,omitempty"` - - // True if query examples are disabled. - QueryExamplesDisabled bool `json:"query_examples_disabled,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // AgentStatus represents actual Agent status. - // - // - AGENT_STATUS_STARTING: Agent is starting. - // - AGENT_STATUS_RUNNING: Agent is running. - // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. - // - AGENT_STATUS_STOPPING: Agent is stopping. - // - AGENT_STATUS_DONE: Agent finished. - // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. - // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] - Status *string `json:"status,omitempty"` - - // Path to exec process. - ProcessExecPath string `json:"process_exec_path,omitempty"` - - // Log level for exporters - // - // - LOG_LEVEL_UNSPECIFIED: Auto - // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] - LogLevel *string `json:"log_level,omitempty"` -} - -// Validate validates this change QAN postgre SQL pg stat monitor agent OK body QAN postgresql pgstatmonitor agent -func (o *ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateStatus(formats); err != nil { - res = append(res, err) - } - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var changeQanPostgreSqlPgStatMonitorAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeStatusPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeQanPostgreSqlPgStatMonitorAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeStatusPropEnum = append(changeQanPostgreSqlPgStatMonitorAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeStatusPropEnum, v) - } -} - -const ( - - // ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeQanPostgreSqlPgStatMonitorAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("changeQanPostgreSqlPgStatMonitorAgentOk"+"."+"qan_postgresql_pgstatmonitor_agent"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var changeQanPostgreSqlPgStatMonitorAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeLogLevelPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeQanPostgreSqlPgStatMonitorAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeLogLevelPropEnum = append(changeQanPostgreSqlPgStatMonitorAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeLogLevelPropEnum, v) - } -} - -const ( - - // ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeQanPostgreSqlPgStatMonitorAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("changeQanPostgreSqlPgStatMonitorAgentOk"+"."+"qan_postgresql_pgstatmonitor_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this change QAN postgre SQL pg stat monitor agent OK body QAN postgresql pgstatmonitor agent based on context it is used -func (o *ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent) UnmarshalBinary(b []byte) error { - var res ChangeQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANPostgreSQLPgStatMonitorAgentParamsBodyCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. -swagger:model ChangeQANPostgreSQLPgStatMonitorAgentParamsBodyCommon -*/ -type ChangeQANPostgreSQLPgStatMonitorAgentParamsBodyCommon struct { - // Enable this Agent. Can't be used with disabled. - Enable bool `json:"enable,omitempty"` - - // Disable this Agent. Can't be used with enabled. - Disable bool `json:"disable,omitempty"` - - // Replace all custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Remove all custom user-assigned labels. - RemoveCustomLabels bool `json:"remove_custom_labels,omitempty"` - - // Enables push metrics with vmagent, can't be used with disable_push_metrics. - // Can't be used with agent version lower then 2.12 and unsupported agents. - EnablePushMetrics bool `json:"enable_push_metrics,omitempty"` - - // Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics. - DisablePushMetrics bool `json:"disable_push_metrics,omitempty"` -} - -// Validate validates this change QAN postgre SQL pg stat monitor agent params body common -func (o *ChangeQANPostgreSQLPgStatMonitorAgentParamsBodyCommon) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change QAN postgre SQL pg stat monitor agent params body common based on context it is used -func (o *ChangeQANPostgreSQLPgStatMonitorAgentParamsBodyCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatMonitorAgentParamsBodyCommon) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatMonitorAgentParamsBodyCommon) UnmarshalBinary(b []byte) error { - var res ChangeQANPostgreSQLPgStatMonitorAgentParamsBodyCommon - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_qan_postgre_sql_pg_statements_agent_parameters.go b/api/inventory/v1/json/client/agents_service/change_qan_postgre_sql_pg_statements_agent_parameters.go deleted file mode 100644 index 810b52c838..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_qan_postgre_sql_pg_statements_agent_parameters.go +++ /dev/null @@ -1,144 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "net/http" - "time" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - cr "github.com/go-openapi/runtime/client" - "github.com/go-openapi/strfmt" -) - -// NewChangeQANPostgreSQLPgStatementsAgentParams creates a new ChangeQANPostgreSQLPgStatementsAgentParams object, -// with the default timeout for this client. -// -// Default values are not hydrated, since defaults are normally applied by the API server side. -// -// To enforce default values in parameter, use SetDefaults or WithDefaults. -func NewChangeQANPostgreSQLPgStatementsAgentParams() *ChangeQANPostgreSQLPgStatementsAgentParams { - return &ChangeQANPostgreSQLPgStatementsAgentParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewChangeQANPostgreSQLPgStatementsAgentParamsWithTimeout creates a new ChangeQANPostgreSQLPgStatementsAgentParams object -// with the ability to set a timeout on a request. -func NewChangeQANPostgreSQLPgStatementsAgentParamsWithTimeout(timeout time.Duration) *ChangeQANPostgreSQLPgStatementsAgentParams { - return &ChangeQANPostgreSQLPgStatementsAgentParams{ - timeout: timeout, - } -} - -// NewChangeQANPostgreSQLPgStatementsAgentParamsWithContext creates a new ChangeQANPostgreSQLPgStatementsAgentParams object -// with the ability to set a context for a request. -func NewChangeQANPostgreSQLPgStatementsAgentParamsWithContext(ctx context.Context) *ChangeQANPostgreSQLPgStatementsAgentParams { - return &ChangeQANPostgreSQLPgStatementsAgentParams{ - Context: ctx, - } -} - -// NewChangeQANPostgreSQLPgStatementsAgentParamsWithHTTPClient creates a new ChangeQANPostgreSQLPgStatementsAgentParams object -// with the ability to set a custom HTTPClient for a request. -func NewChangeQANPostgreSQLPgStatementsAgentParamsWithHTTPClient(client *http.Client) *ChangeQANPostgreSQLPgStatementsAgentParams { - return &ChangeQANPostgreSQLPgStatementsAgentParams{ - HTTPClient: client, - } -} - -/* -ChangeQANPostgreSQLPgStatementsAgentParams contains all the parameters to send to the API endpoint - - for the change QAN postgre SQL pg statements agent operation. - - Typically these are written to a http.Request. -*/ -type ChangeQANPostgreSQLPgStatementsAgentParams struct { - // Body. - Body ChangeQANPostgreSQLPgStatementsAgentBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the change QAN postgre SQL pg statements agent params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeQANPostgreSQLPgStatementsAgentParams) WithDefaults() *ChangeQANPostgreSQLPgStatementsAgentParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the change QAN postgre SQL pg statements agent params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeQANPostgreSQLPgStatementsAgentParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the change QAN postgre SQL pg statements agent params -func (o *ChangeQANPostgreSQLPgStatementsAgentParams) WithTimeout(timeout time.Duration) *ChangeQANPostgreSQLPgStatementsAgentParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the change QAN postgre SQL pg statements agent params -func (o *ChangeQANPostgreSQLPgStatementsAgentParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the change QAN postgre SQL pg statements agent params -func (o *ChangeQANPostgreSQLPgStatementsAgentParams) WithContext(ctx context.Context) *ChangeQANPostgreSQLPgStatementsAgentParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the change QAN postgre SQL pg statements agent params -func (o *ChangeQANPostgreSQLPgStatementsAgentParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the change QAN postgre SQL pg statements agent params -func (o *ChangeQANPostgreSQLPgStatementsAgentParams) WithHTTPClient(client *http.Client) *ChangeQANPostgreSQLPgStatementsAgentParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the change QAN postgre SQL pg statements agent params -func (o *ChangeQANPostgreSQLPgStatementsAgentParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the change QAN postgre SQL pg statements agent params -func (o *ChangeQANPostgreSQLPgStatementsAgentParams) WithBody(body ChangeQANPostgreSQLPgStatementsAgentBody) *ChangeQANPostgreSQLPgStatementsAgentParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the change QAN postgre SQL pg statements agent params -func (o *ChangeQANPostgreSQLPgStatementsAgentParams) SetBody(body ChangeQANPostgreSQLPgStatementsAgentBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *ChangeQANPostgreSQLPgStatementsAgentParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error { - if err := r.SetTimeout(o.timeout); err != nil { - return err - } - var res []error - if err := r.SetBodyParam(o.Body); err != nil { - return err - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_qan_postgre_sql_pg_statements_agent_responses.go b/api/inventory/v1/json/client/agents_service/change_qan_postgre_sql_pg_statements_agent_responses.go deleted file mode 100644 index 89dbdff33b..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_qan_postgre_sql_pg_statements_agent_responses.go +++ /dev/null @@ -1,704 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "encoding/json" - "fmt" - "io" - "strconv" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - "github.com/go-openapi/strfmt" - "github.com/go-openapi/swag" - "github.com/go-openapi/validate" -) - -// ChangeQANPostgreSQLPgStatementsAgentReader is a Reader for the ChangeQANPostgreSQLPgStatementsAgent structure. -type ChangeQANPostgreSQLPgStatementsAgentReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *ChangeQANPostgreSQLPgStatementsAgentReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewChangeQANPostgreSQLPgStatementsAgentOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewChangeQANPostgreSQLPgStatementsAgentDefault(response.Code()) - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - if response.Code()/100 == 2 { - return result, nil - } - return nil, result - } -} - -// NewChangeQANPostgreSQLPgStatementsAgentOK creates a ChangeQANPostgreSQLPgStatementsAgentOK with default headers values -func NewChangeQANPostgreSQLPgStatementsAgentOK() *ChangeQANPostgreSQLPgStatementsAgentOK { - return &ChangeQANPostgreSQLPgStatementsAgentOK{} -} - -/* -ChangeQANPostgreSQLPgStatementsAgentOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type ChangeQANPostgreSQLPgStatementsAgentOK struct { - Payload *ChangeQANPostgreSQLPgStatementsAgentOKBody -} - -func (o *ChangeQANPostgreSQLPgStatementsAgentOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeQANPostgreSQLPgStatementsAgent][%d] changeQanPostgreSqlPgStatementsAgentOk %+v", 200, o.Payload) -} - -func (o *ChangeQANPostgreSQLPgStatementsAgentOK) GetPayload() *ChangeQANPostgreSQLPgStatementsAgentOKBody { - return o.Payload -} - -func (o *ChangeQANPostgreSQLPgStatementsAgentOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeQANPostgreSQLPgStatementsAgentOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewChangeQANPostgreSQLPgStatementsAgentDefault creates a ChangeQANPostgreSQLPgStatementsAgentDefault with default headers values -func NewChangeQANPostgreSQLPgStatementsAgentDefault(code int) *ChangeQANPostgreSQLPgStatementsAgentDefault { - return &ChangeQANPostgreSQLPgStatementsAgentDefault{ - _statusCode: code, - } -} - -/* -ChangeQANPostgreSQLPgStatementsAgentDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type ChangeQANPostgreSQLPgStatementsAgentDefault struct { - _statusCode int - - Payload *ChangeQANPostgreSQLPgStatementsAgentDefaultBody -} - -// Code gets the status code for the change QAN postgre SQL pg statements agent default response -func (o *ChangeQANPostgreSQLPgStatementsAgentDefault) Code() int { - return o._statusCode -} - -func (o *ChangeQANPostgreSQLPgStatementsAgentDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeQANPostgreSQLPgStatementsAgent][%d] ChangeQANPostgreSQLPgStatementsAgent default %+v", o._statusCode, o.Payload) -} - -func (o *ChangeQANPostgreSQLPgStatementsAgentDefault) GetPayload() *ChangeQANPostgreSQLPgStatementsAgentDefaultBody { - return o.Payload -} - -func (o *ChangeQANPostgreSQLPgStatementsAgentDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeQANPostgreSQLPgStatementsAgentDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -ChangeQANPostgreSQLPgStatementsAgentBody change QAN postgre SQL pg statements agent body -swagger:model ChangeQANPostgreSQLPgStatementsAgentBody -*/ -type ChangeQANPostgreSQLPgStatementsAgentBody struct { - // agent id - AgentID string `json:"agent_id,omitempty"` - - // common - Common *ChangeQANPostgreSQLPgStatementsAgentParamsBodyCommon `json:"common,omitempty"` -} - -// Validate validates this change QAN postgre SQL pg statements agent body -func (o *ChangeQANPostgreSQLPgStatementsAgentBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateCommon(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANPostgreSQLPgStatementsAgentBody) validateCommon(formats strfmt.Registry) error { - if swag.IsZero(o.Common) { // not required - return nil - } - - if o.Common != nil { - if err := o.Common.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change QAN postgre SQL pg statements agent body based on the context it is used -func (o *ChangeQANPostgreSQLPgStatementsAgentBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateCommon(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANPostgreSQLPgStatementsAgentBody) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { - if o.Common != nil { - if err := o.Common.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatementsAgentBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatementsAgentBody) UnmarshalBinary(b []byte) error { - var res ChangeQANPostgreSQLPgStatementsAgentBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANPostgreSQLPgStatementsAgentDefaultBody change QAN postgre SQL pg statements agent default body -swagger:model ChangeQANPostgreSQLPgStatementsAgentDefaultBody -*/ -type ChangeQANPostgreSQLPgStatementsAgentDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*ChangeQANPostgreSQLPgStatementsAgentDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this change QAN postgre SQL pg statements agent default body -func (o *ChangeQANPostgreSQLPgStatementsAgentDefaultBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateDetails(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANPostgreSQLPgStatementsAgentDefaultBody) validateDetails(formats strfmt.Registry) error { - if swag.IsZero(o.Details) { // not required - return nil - } - - for i := 0; i < len(o.Details); i++ { - if swag.IsZero(o.Details[i]) { // not required - continue - } - - if o.Details[i] != nil { - if err := o.Details[i].Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeQANPostgreSQLPgStatementsAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeQANPostgreSQLPgStatementsAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this change QAN postgre SQL pg statements agent default body based on the context it is used -func (o *ChangeQANPostgreSQLPgStatementsAgentDefaultBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateDetails(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANPostgreSQLPgStatementsAgentDefaultBody) contextValidateDetails(ctx context.Context, formats strfmt.Registry) error { - for i := 0; i < len(o.Details); i++ { - if o.Details[i] != nil { - if err := o.Details[i].ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeQANPostgreSQLPgStatementsAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeQANPostgreSQLPgStatementsAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatementsAgentDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatementsAgentDefaultBody) UnmarshalBinary(b []byte) error { - var res ChangeQANPostgreSQLPgStatementsAgentDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANPostgreSQLPgStatementsAgentDefaultBodyDetailsItems0 change QAN postgre SQL pg statements agent default body details items0 -swagger:model ChangeQANPostgreSQLPgStatementsAgentDefaultBodyDetailsItems0 -*/ -type ChangeQANPostgreSQLPgStatementsAgentDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this change QAN postgre SQL pg statements agent default body details items0 -func (o *ChangeQANPostgreSQLPgStatementsAgentDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change QAN postgre SQL pg statements agent default body details items0 based on context it is used -func (o *ChangeQANPostgreSQLPgStatementsAgentDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatementsAgentDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatementsAgentDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res ChangeQANPostgreSQLPgStatementsAgentDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANPostgreSQLPgStatementsAgentOKBody change QAN postgre SQL pg statements agent OK body -swagger:model ChangeQANPostgreSQLPgStatementsAgentOKBody -*/ -type ChangeQANPostgreSQLPgStatementsAgentOKBody struct { - // qan postgresql pgstatements agent - QANPostgresqlPgstatementsAgent *ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent `json:"qan_postgresql_pgstatements_agent,omitempty"` -} - -// Validate validates this change QAN postgre SQL pg statements agent OK body -func (o *ChangeQANPostgreSQLPgStatementsAgentOKBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateQANPostgresqlPgstatementsAgent(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANPostgreSQLPgStatementsAgentOKBody) validateQANPostgresqlPgstatementsAgent(formats strfmt.Registry) error { - if swag.IsZero(o.QANPostgresqlPgstatementsAgent) { // not required - return nil - } - - if o.QANPostgresqlPgstatementsAgent != nil { - if err := o.QANPostgresqlPgstatementsAgent.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeQanPostgreSqlPgStatementsAgentOk" + "." + "qan_postgresql_pgstatements_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeQanPostgreSqlPgStatementsAgentOk" + "." + "qan_postgresql_pgstatements_agent") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change QAN postgre SQL pg statements agent OK body based on the context it is used -func (o *ChangeQANPostgreSQLPgStatementsAgentOKBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateQANPostgresqlPgstatementsAgent(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeQANPostgreSQLPgStatementsAgentOKBody) contextValidateQANPostgresqlPgstatementsAgent(ctx context.Context, formats strfmt.Registry) error { - if o.QANPostgresqlPgstatementsAgent != nil { - if err := o.QANPostgresqlPgstatementsAgent.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeQanPostgreSqlPgStatementsAgentOk" + "." + "qan_postgresql_pgstatements_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeQanPostgreSqlPgStatementsAgentOk" + "." + "qan_postgresql_pgstatements_agent") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatementsAgentOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatementsAgentOKBody) UnmarshalBinary(b []byte) error { - var res ChangeQANPostgreSQLPgStatementsAgentOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent QANPostgreSQLPgStatementsAgent runs within pmm-agent and sends PostgreSQL Query Analytics data to the PMM Server. -swagger:model ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent -*/ -type ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent struct { - // Unique randomly generated instance identifier. - AgentID string `json:"agent_id,omitempty"` - - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Desired Agent status: enabled (false) or disabled (true). - Disabled bool `json:"disabled,omitempty"` - - // Service identifier. - ServiceID string `json:"service_id,omitempty"` - - // PostgreSQL username for getting pg stat statements data. - Username string `json:"username,omitempty"` - - // Disable parsing comments from queries and showing them in QAN. - DisableCommentsParsing bool `json:"disable_comments_parsing,omitempty"` - - // Limit query length in QAN (default: server-defined; -1: no limit). - MaxQueryLength int32 `json:"max_query_length,omitempty"` - - // Use TLS for database connections. - TLS bool `json:"tls,omitempty"` - - // Skip TLS certificate and hostname validation. - TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // AgentStatus represents actual Agent status. - // - // - AGENT_STATUS_STARTING: Agent is starting. - // - AGENT_STATUS_RUNNING: Agent is running. - // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. - // - AGENT_STATUS_STOPPING: Agent is stopping. - // - AGENT_STATUS_DONE: Agent finished. - // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. - // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] - Status *string `json:"status,omitempty"` - - // Path to exec process. - ProcessExecPath string `json:"process_exec_path,omitempty"` - - // Log level for exporters - // - // - LOG_LEVEL_UNSPECIFIED: Auto - // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] - LogLevel *string `json:"log_level,omitempty"` -} - -// Validate validates this change QAN postgre SQL pg statements agent OK body QAN postgresql pgstatements agent -func (o *ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateStatus(formats); err != nil { - res = append(res, err) - } - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var changeQanPostgreSqlPgStatementsAgentOkBodyQanPostgresqlPgstatementsAgentTypeStatusPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeQanPostgreSqlPgStatementsAgentOkBodyQanPostgresqlPgstatementsAgentTypeStatusPropEnum = append(changeQanPostgreSqlPgStatementsAgentOkBodyQanPostgresqlPgstatementsAgentTypeStatusPropEnum, v) - } -} - -const ( - - // ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeQanPostgreSqlPgStatementsAgentOkBodyQanPostgresqlPgstatementsAgentTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("changeQanPostgreSqlPgStatementsAgentOk"+"."+"qan_postgresql_pgstatements_agent"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var changeQanPostgreSqlPgStatementsAgentOkBodyQanPostgresqlPgstatementsAgentTypeLogLevelPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeQanPostgreSqlPgStatementsAgentOkBodyQanPostgresqlPgstatementsAgentTypeLogLevelPropEnum = append(changeQanPostgreSqlPgStatementsAgentOkBodyQanPostgresqlPgstatementsAgentTypeLogLevelPropEnum, v) - } -} - -const ( - - // ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeQanPostgreSqlPgStatementsAgentOkBodyQanPostgresqlPgstatementsAgentTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("changeQanPostgreSqlPgStatementsAgentOk"+"."+"qan_postgresql_pgstatements_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this change QAN postgre SQL pg statements agent OK body QAN postgresql pgstatements agent based on context it is used -func (o *ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent) UnmarshalBinary(b []byte) error { - var res ChangeQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeQANPostgreSQLPgStatementsAgentParamsBodyCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. -swagger:model ChangeQANPostgreSQLPgStatementsAgentParamsBodyCommon -*/ -type ChangeQANPostgreSQLPgStatementsAgentParamsBodyCommon struct { - // Enable this Agent. Can't be used with disabled. - Enable bool `json:"enable,omitempty"` - - // Disable this Agent. Can't be used with enabled. - Disable bool `json:"disable,omitempty"` - - // Replace all custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Remove all custom user-assigned labels. - RemoveCustomLabels bool `json:"remove_custom_labels,omitempty"` - - // Enables push metrics with vmagent, can't be used with disable_push_metrics. - // Can't be used with agent version lower then 2.12 and unsupported agents. - EnablePushMetrics bool `json:"enable_push_metrics,omitempty"` - - // Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics. - DisablePushMetrics bool `json:"disable_push_metrics,omitempty"` -} - -// Validate validates this change QAN postgre SQL pg statements agent params body common -func (o *ChangeQANPostgreSQLPgStatementsAgentParamsBodyCommon) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change QAN postgre SQL pg statements agent params body common based on context it is used -func (o *ChangeQANPostgreSQLPgStatementsAgentParamsBodyCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatementsAgentParamsBodyCommon) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeQANPostgreSQLPgStatementsAgentParamsBodyCommon) UnmarshalBinary(b []byte) error { - var res ChangeQANPostgreSQLPgStatementsAgentParamsBodyCommon - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_rds_exporter_parameters.go b/api/inventory/v1/json/client/agents_service/change_rds_exporter_parameters.go deleted file mode 100644 index e72c5cb4db..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_rds_exporter_parameters.go +++ /dev/null @@ -1,144 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "net/http" - "time" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - cr "github.com/go-openapi/runtime/client" - "github.com/go-openapi/strfmt" -) - -// NewChangeRDSExporterParams creates a new ChangeRDSExporterParams object, -// with the default timeout for this client. -// -// Default values are not hydrated, since defaults are normally applied by the API server side. -// -// To enforce default values in parameter, use SetDefaults or WithDefaults. -func NewChangeRDSExporterParams() *ChangeRDSExporterParams { - return &ChangeRDSExporterParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewChangeRDSExporterParamsWithTimeout creates a new ChangeRDSExporterParams object -// with the ability to set a timeout on a request. -func NewChangeRDSExporterParamsWithTimeout(timeout time.Duration) *ChangeRDSExporterParams { - return &ChangeRDSExporterParams{ - timeout: timeout, - } -} - -// NewChangeRDSExporterParamsWithContext creates a new ChangeRDSExporterParams object -// with the ability to set a context for a request. -func NewChangeRDSExporterParamsWithContext(ctx context.Context) *ChangeRDSExporterParams { - return &ChangeRDSExporterParams{ - Context: ctx, - } -} - -// NewChangeRDSExporterParamsWithHTTPClient creates a new ChangeRDSExporterParams object -// with the ability to set a custom HTTPClient for a request. -func NewChangeRDSExporterParamsWithHTTPClient(client *http.Client) *ChangeRDSExporterParams { - return &ChangeRDSExporterParams{ - HTTPClient: client, - } -} - -/* -ChangeRDSExporterParams contains all the parameters to send to the API endpoint - - for the change RDS exporter operation. - - Typically these are written to a http.Request. -*/ -type ChangeRDSExporterParams struct { - // Body. - Body ChangeRDSExporterBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the change RDS exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeRDSExporterParams) WithDefaults() *ChangeRDSExporterParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the change RDS exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *ChangeRDSExporterParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the change RDS exporter params -func (o *ChangeRDSExporterParams) WithTimeout(timeout time.Duration) *ChangeRDSExporterParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the change RDS exporter params -func (o *ChangeRDSExporterParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the change RDS exporter params -func (o *ChangeRDSExporterParams) WithContext(ctx context.Context) *ChangeRDSExporterParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the change RDS exporter params -func (o *ChangeRDSExporterParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the change RDS exporter params -func (o *ChangeRDSExporterParams) WithHTTPClient(client *http.Client) *ChangeRDSExporterParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the change RDS exporter params -func (o *ChangeRDSExporterParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the change RDS exporter params -func (o *ChangeRDSExporterParams) WithBody(body ChangeRDSExporterBody) *ChangeRDSExporterParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the change RDS exporter params -func (o *ChangeRDSExporterParams) SetBody(body ChangeRDSExporterBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *ChangeRDSExporterParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error { - if err := r.SetTimeout(o.timeout); err != nil { - return err - } - var res []error - if err := r.SetBodyParam(o.Body); err != nil { - return err - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/change_rds_exporter_responses.go b/api/inventory/v1/json/client/agents_service/change_rds_exporter_responses.go deleted file mode 100644 index 7240002b15..0000000000 --- a/api/inventory/v1/json/client/agents_service/change_rds_exporter_responses.go +++ /dev/null @@ -1,707 +0,0 @@ -// Code generated by go-swagger; DO NOT EDIT. - -package agents_service - -// This file was generated by the swagger tool. -// Editing this file might prove futile when you re-run the swagger generate command - -import ( - "context" - "encoding/json" - "fmt" - "io" - "strconv" - - "github.com/go-openapi/errors" - "github.com/go-openapi/runtime" - "github.com/go-openapi/strfmt" - "github.com/go-openapi/swag" - "github.com/go-openapi/validate" -) - -// ChangeRDSExporterReader is a Reader for the ChangeRDSExporter structure. -type ChangeRDSExporterReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *ChangeRDSExporterReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewChangeRDSExporterOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewChangeRDSExporterDefault(response.Code()) - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - if response.Code()/100 == 2 { - return result, nil - } - return nil, result - } -} - -// NewChangeRDSExporterOK creates a ChangeRDSExporterOK with default headers values -func NewChangeRDSExporterOK() *ChangeRDSExporterOK { - return &ChangeRDSExporterOK{} -} - -/* -ChangeRDSExporterOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type ChangeRDSExporterOK struct { - Payload *ChangeRDSExporterOKBody -} - -func (o *ChangeRDSExporterOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeRDSExporter][%d] changeRdsExporterOk %+v", 200, o.Payload) -} - -func (o *ChangeRDSExporterOK) GetPayload() *ChangeRDSExporterOKBody { - return o.Payload -} - -func (o *ChangeRDSExporterOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeRDSExporterOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewChangeRDSExporterDefault creates a ChangeRDSExporterDefault with default headers values -func NewChangeRDSExporterDefault(code int) *ChangeRDSExporterDefault { - return &ChangeRDSExporterDefault{ - _statusCode: code, - } -} - -/* -ChangeRDSExporterDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type ChangeRDSExporterDefault struct { - _statusCode int - - Payload *ChangeRDSExporterDefaultBody -} - -// Code gets the status code for the change RDS exporter default response -func (o *ChangeRDSExporterDefault) Code() int { - return o._statusCode -} - -func (o *ChangeRDSExporterDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/ChangeRDSExporter][%d] ChangeRDSExporter default %+v", o._statusCode, o.Payload) -} - -func (o *ChangeRDSExporterDefault) GetPayload() *ChangeRDSExporterDefaultBody { - return o.Payload -} - -func (o *ChangeRDSExporterDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(ChangeRDSExporterDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -ChangeRDSExporterBody change RDS exporter body -swagger:model ChangeRDSExporterBody -*/ -type ChangeRDSExporterBody struct { - // agent id - AgentID string `json:"agent_id,omitempty"` - - // common - Common *ChangeRDSExporterParamsBodyCommon `json:"common,omitempty"` -} - -// Validate validates this change RDS exporter body -func (o *ChangeRDSExporterBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateCommon(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeRDSExporterBody) validateCommon(formats strfmt.Registry) error { - if swag.IsZero(o.Common) { // not required - return nil - } - - if o.Common != nil { - if err := o.Common.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change RDS exporter body based on the context it is used -func (o *ChangeRDSExporterBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateCommon(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeRDSExporterBody) contextValidateCommon(ctx context.Context, formats strfmt.Registry) error { - if o.Common != nil { - if err := o.Common.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("body" + "." + "common") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("body" + "." + "common") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeRDSExporterBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeRDSExporterBody) UnmarshalBinary(b []byte) error { - var res ChangeRDSExporterBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeRDSExporterDefaultBody change RDS exporter default body -swagger:model ChangeRDSExporterDefaultBody -*/ -type ChangeRDSExporterDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*ChangeRDSExporterDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this change RDS exporter default body -func (o *ChangeRDSExporterDefaultBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateDetails(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeRDSExporterDefaultBody) validateDetails(formats strfmt.Registry) error { - if swag.IsZero(o.Details) { // not required - return nil - } - - for i := 0; i < len(o.Details); i++ { - if swag.IsZero(o.Details[i]) { // not required - continue - } - - if o.Details[i] != nil { - if err := o.Details[i].Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeRDSExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeRDSExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this change RDS exporter default body based on the context it is used -func (o *ChangeRDSExporterDefaultBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateDetails(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeRDSExporterDefaultBody) contextValidateDetails(ctx context.Context, formats strfmt.Registry) error { - for i := 0; i < len(o.Details); i++ { - if o.Details[i] != nil { - if err := o.Details[i].ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("ChangeRDSExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("ChangeRDSExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeRDSExporterDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeRDSExporterDefaultBody) UnmarshalBinary(b []byte) error { - var res ChangeRDSExporterDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeRDSExporterDefaultBodyDetailsItems0 change RDS exporter default body details items0 -swagger:model ChangeRDSExporterDefaultBodyDetailsItems0 -*/ -type ChangeRDSExporterDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this change RDS exporter default body details items0 -func (o *ChangeRDSExporterDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change RDS exporter default body details items0 based on context it is used -func (o *ChangeRDSExporterDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeRDSExporterDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeRDSExporterDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res ChangeRDSExporterDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeRDSExporterOKBody change RDS exporter OK body -swagger:model ChangeRDSExporterOKBody -*/ -type ChangeRDSExporterOKBody struct { - // rds exporter - RDSExporter *ChangeRDSExporterOKBodyRDSExporter `json:"rds_exporter,omitempty"` -} - -// Validate validates this change RDS exporter OK body -func (o *ChangeRDSExporterOKBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateRDSExporter(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeRDSExporterOKBody) validateRDSExporter(formats strfmt.Registry) error { - if swag.IsZero(o.RDSExporter) { // not required - return nil - } - - if o.RDSExporter != nil { - if err := o.RDSExporter.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeRdsExporterOk" + "." + "rds_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeRdsExporterOk" + "." + "rds_exporter") - } - return err - } - } - - return nil -} - -// ContextValidate validate this change RDS exporter OK body based on the context it is used -func (o *ChangeRDSExporterOKBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateRDSExporter(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *ChangeRDSExporterOKBody) contextValidateRDSExporter(ctx context.Context, formats strfmt.Registry) error { - if o.RDSExporter != nil { - if err := o.RDSExporter.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("changeRdsExporterOk" + "." + "rds_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("changeRdsExporterOk" + "." + "rds_exporter") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeRDSExporterOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeRDSExporterOKBody) UnmarshalBinary(b []byte) error { - var res ChangeRDSExporterOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeRDSExporterOKBodyRDSExporter RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node metrics. -swagger:model ChangeRDSExporterOKBodyRDSExporter -*/ -type ChangeRDSExporterOKBodyRDSExporter struct { - // Unique randomly generated instance identifier. - AgentID string `json:"agent_id,omitempty"` - - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Desired Agent status: enabled (false) or disabled (true). - Disabled bool `json:"disabled,omitempty"` - - // Node identifier. - NodeID string `json:"node_id,omitempty"` - - // AWS Access Key. - AWSAccessKey string `json:"aws_access_key,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // AgentStatus represents actual Agent status. - // - // - AGENT_STATUS_STARTING: Agent is starting. - // - AGENT_STATUS_RUNNING: Agent is running. - // - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon. - // - AGENT_STATUS_STOPPING: Agent is stopping. - // - AGENT_STATUS_DONE: Agent finished. - // - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state. - // Enum: [AGENT_STATUS_UNSPECIFIED AGENT_STATUS_STARTING AGENT_STATUS_RUNNING AGENT_STATUS_WAITING AGENT_STATUS_STOPPING AGENT_STATUS_DONE AGENT_STATUS_UNKNOWN] - Status *string `json:"status,omitempty"` - - // Listen port for scraping metrics (the same for several configurations). - ListenPort int64 `json:"listen_port,omitempty"` - - // Basic metrics are disabled. - BasicMetricsDisabled bool `json:"basic_metrics_disabled,omitempty"` - - // Enhanced metrics are disabled. - EnhancedMetricsDisabled bool `json:"enhanced_metrics_disabled,omitempty"` - - // True if exporter uses push metrics mode. - PushMetricsEnabled bool `json:"push_metrics_enabled,omitempty"` - - // Path to exec process. - ProcessExecPath string `json:"process_exec_path,omitempty"` - - // Log level for exporters - // - // - LOG_LEVEL_UNSPECIFIED: Auto - // Enum: [LOG_LEVEL_UNSPECIFIED LOG_LEVEL_FATAL LOG_LEVEL_ERROR LOG_LEVEL_WARN LOG_LEVEL_INFO LOG_LEVEL_DEBUG] - LogLevel *string `json:"log_level,omitempty"` - - // Limit of databases for auto-discovery. - AutoDiscoveryLimit int32 `json:"auto_discovery_limit,omitempty"` -} - -// Validate validates this change RDS exporter OK body RDS exporter -func (o *ChangeRDSExporterOKBodyRDSExporter) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateStatus(formats); err != nil { - res = append(res, err) - } - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var changeRdsExporterOkBodyRdsExporterTypeStatusPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["AGENT_STATUS_UNSPECIFIED","AGENT_STATUS_STARTING","AGENT_STATUS_RUNNING","AGENT_STATUS_WAITING","AGENT_STATUS_STOPPING","AGENT_STATUS_DONE","AGENT_STATUS_UNKNOWN"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeRdsExporterOkBodyRdsExporterTypeStatusPropEnum = append(changeRdsExporterOkBodyRdsExporterTypeStatusPropEnum, v) - } -} - -const ( - - // ChangeRDSExporterOKBodyRDSExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - ChangeRDSExporterOKBodyRDSExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // ChangeRDSExporterOKBodyRDSExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - ChangeRDSExporterOKBodyRDSExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // ChangeRDSExporterOKBodyRDSExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - ChangeRDSExporterOKBodyRDSExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // ChangeRDSExporterOKBodyRDSExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - ChangeRDSExporterOKBodyRDSExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // ChangeRDSExporterOKBodyRDSExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - ChangeRDSExporterOKBodyRDSExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // ChangeRDSExporterOKBodyRDSExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - ChangeRDSExporterOKBodyRDSExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // ChangeRDSExporterOKBodyRDSExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - ChangeRDSExporterOKBodyRDSExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *ChangeRDSExporterOKBodyRDSExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeRdsExporterOkBodyRdsExporterTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeRDSExporterOKBodyRDSExporter) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("changeRdsExporterOk"+"."+"rds_exporter"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var changeRdsExporterOkBodyRdsExporterTypeLogLevelPropEnum []interface{} - -func init() { - var res []string - if err := json.Unmarshal([]byte(`["LOG_LEVEL_UNSPECIFIED","LOG_LEVEL_FATAL","LOG_LEVEL_ERROR","LOG_LEVEL_WARN","LOG_LEVEL_INFO","LOG_LEVEL_DEBUG"]`), &res); err != nil { - panic(err) - } - for _, v := range res { - changeRdsExporterOkBodyRdsExporterTypeLogLevelPropEnum = append(changeRdsExporterOkBodyRdsExporterTypeLogLevelPropEnum, v) - } -} - -const ( - - // ChangeRDSExporterOKBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - ChangeRDSExporterOKBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // ChangeRDSExporterOKBodyRDSExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - ChangeRDSExporterOKBodyRDSExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // ChangeRDSExporterOKBodyRDSExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - ChangeRDSExporterOKBodyRDSExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // ChangeRDSExporterOKBodyRDSExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - ChangeRDSExporterOKBodyRDSExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // ChangeRDSExporterOKBodyRDSExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - ChangeRDSExporterOKBodyRDSExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // ChangeRDSExporterOKBodyRDSExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - ChangeRDSExporterOKBodyRDSExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *ChangeRDSExporterOKBodyRDSExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, changeRdsExporterOkBodyRdsExporterTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *ChangeRDSExporterOKBodyRDSExporter) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("changeRdsExporterOk"+"."+"rds_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this change RDS exporter OK body RDS exporter based on context it is used -func (o *ChangeRDSExporterOKBodyRDSExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeRDSExporterOKBodyRDSExporter) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeRDSExporterOKBodyRDSExporter) UnmarshalBinary(b []byte) error { - var res ChangeRDSExporterOKBodyRDSExporter - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -ChangeRDSExporterParamsBodyCommon ChangeCommonAgentParams contains parameters that can be changed for all Agents. -swagger:model ChangeRDSExporterParamsBodyCommon -*/ -type ChangeRDSExporterParamsBodyCommon struct { - // Enable this Agent. Can't be used with disabled. - Enable bool `json:"enable,omitempty"` - - // Disable this Agent. Can't be used with enabled. - Disable bool `json:"disable,omitempty"` - - // Replace all custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Remove all custom user-assigned labels. - RemoveCustomLabels bool `json:"remove_custom_labels,omitempty"` - - // Enables push metrics with vmagent, can't be used with disable_push_metrics. - // Can't be used with agent version lower then 2.12 and unsupported agents. - EnablePushMetrics bool `json:"enable_push_metrics,omitempty"` - - // Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics. - DisablePushMetrics bool `json:"disable_push_metrics,omitempty"` -} - -// Validate validates this change RDS exporter params body common -func (o *ChangeRDSExporterParamsBodyCommon) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this change RDS exporter params body common based on context it is used -func (o *ChangeRDSExporterParamsBodyCommon) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *ChangeRDSExporterParamsBodyCommon) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *ChangeRDSExporterParamsBodyCommon) UnmarshalBinary(b []byte) error { - var res ChangeRDSExporterParamsBodyCommon - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/get_agent_responses.go b/api/inventory/v1/json/client/agents_service/get_agent_responses.go index da44b5e274..7984ab6c0f 100644 --- a/api/inventory/v1/json/client/agents_service/get_agent_responses.go +++ b/api/inventory/v1/json/client/agents_service/get_agent_responses.go @@ -1562,6 +1562,9 @@ type GetAgentOKBodyMysqldExporter struct { // List of disabled collector names. DisabledCollectors []string `json:"disabled_collectors"` + // Actual table count at the moment of adding. + TableCount int32 `json:"table_count,omitempty"` + // AgentStatus represents actual Agent status. // // - AGENT_STATUS_STARTING: Agent is starting. diff --git a/api/inventory/v1/json/client/agents_service/list_agents_responses.go b/api/inventory/v1/json/client/agents_service/list_agents_responses.go index 8b07d2ad34..ebf737f790 100644 --- a/api/inventory/v1/json/client/agents_service/list_agents_responses.go +++ b/api/inventory/v1/json/client/agents_service/list_agents_responses.go @@ -1803,6 +1803,9 @@ type ListAgentsOKBodyMysqldExporterItems0 struct { // List of disabled collector names. DisabledCollectors []string `json:"disabled_collectors"` + // Actual table count at the moment of adding. + TableCount int32 `json:"table_count,omitempty"` + // AgentStatus represents actual Agent status. // // - AGENT_STATUS_STARTING: Agent is starting. diff --git a/api/inventory/v1/json/v1.json b/api/inventory/v1/json/v1.json index cd21aac591..0ceea76cc0 100644 --- a/api/inventory/v1/json/v1.json +++ b/api/inventory/v1/json/v1.json @@ -17,7 +17,7 @@ "paths": { "/v1/inventory/Agents/Add": { "post": { - "description": "Adds an Agent from Inventory.", + "description": "Adds an Agent to Inventory. Only one top-level parameter should be passed.", "tags": [ "AgentsService" ], @@ -1538,13 +1538,13 @@ "expose_exporter": { "type": "boolean", "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 19 + "x-order": 20 }, "listen_port": { "description": "Listen port for scraping metrics.", "type": "integer", "format": "int64", - "x-order": 15 + "x-order": 16 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -1559,7 +1559,7 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 18 + "x-order": 19 }, "pmm_agent_id": { "description": "The pmm-agent identifier which runs this instance.", @@ -1569,7 +1569,7 @@ "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 17 + "x-order": 18 }, "push_metrics_enabled": { "description": "True if exporter uses push metrics mode.", @@ -1594,12 +1594,18 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], + "x-order": 15 + }, + "table_count": { + "description": "Actual table count at the moment of adding.", + "type": "integer", + "format": "int32", "x-order": 14 }, "tablestats_group_disabled": { "description": "True if tablestats group collectors are currently disabled.", "type": "boolean", - "x-order": 16 + "x-order": 17 }, "tablestats_group_table_limit": { "description": "Tablestats group collectors are disabled if there are more than that number of tables.\n0 means tablestats group collectors are always enabled (no limit).\nNegative value means tablestats group collectors are always disabled.", @@ -2615,12 +2621,6 @@ } }, "x-order": 7 - }, - "table_count": { - "description": "Actual table count for SQL databases at the moment of adding.", - "type": "integer", - "format": "int32", - "x-order": 14 } } } @@ -2659,14 +2659,14 @@ } } }, - "/v1/inventory/Agents/ChangeAzureDatabaseExporter": { + "/v1/inventory/Agents/Change": { "post": { - "description": "Changes azure_database_exporter Agent.", + "description": "Updates an Agent in Inventory. Only one top-level parameter should be passed.", "tags": [ "AgentsService" ], - "summary": "Change Azure Database Exporter", - "operationId": "ChangeAzureDatabaseExporter", + "summary": "Update an Agent in Inventory", + "operationId": "ChangeAgent", "parameters": [ { "name": "body", @@ -2675,49 +2675,577 @@ "schema": { "type": "object", "properties": { - "agent_id": { - "type": "string", + "azure_database_exporter": { + "type": "object", + "properties": { + "agent_id": { + "type": "string", + "x-order": 0 + }, + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "type": "object", + "properties": { + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } + }, + "x-order": 1 + } + }, + "x-order": 7 + }, + "external_exporter": { + "type": "object", + "properties": { + "agent_id": { + "type": "string", + "x-order": 0 + }, + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "type": "object", + "properties": { + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } + }, + "x-order": 1 + } + }, + "x-order": 5 + }, + "mongodb_exporter": { + "type": "object", + "properties": { + "agent_id": { + "type": "string", + "x-order": 0 + }, + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "type": "object", + "properties": { + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } + }, + "x-order": 1 + } + }, + "x-order": 2 + }, + "mysqld_exporter": { + "type": "object", + "properties": { + "agent_id": { + "type": "string", + "x-order": 0 + }, + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "type": "object", + "properties": { + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } + }, + "x-order": 1 + } + }, + "x-order": 1 + }, + "node_exporter": { + "type": "object", + "properties": { + "agent_id": { + "type": "string", + "x-order": 0 + }, + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "type": "object", + "properties": { + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } + }, + "x-order": 1 + } + }, "x-order": 0 }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "postgres_exporter": { "type": "object", "properties": { - "custom_labels": { - "description": "Replace all custom user-assigned labels.", + "agent_id": { + "type": "string", + "x-order": 0 + }, + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", "type": "object", - "additionalProperties": { - "type": "string" + "properties": { + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } }, - "x-order": 2 + "x-order": 1 + } + }, + "x-order": 3 + }, + "proxysql_exporter": { + "type": "object", + "properties": { + "agent_id": { + "type": "string", + "x-order": 0 }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "type": "object", + "properties": { + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } + }, + "x-order": 1 + } + }, + "x-order": 4 + }, + "qan_mongodb_profiler_agent": { + "type": "object", + "properties": { + "agent_id": { + "type": "string", + "x-order": 0 + }, + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "type": "object", + "properties": { + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } + }, "x-order": 1 + } + }, + "x-order": 10 + }, + "qan_mysql_perfschema_agent": { + "type": "object", + "properties": { + "agent_id": { + "type": "string", + "x-order": 0 }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "type": "object", + "properties": { + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } + }, + "x-order": 1 + } + }, + "x-order": 8 + }, + "qan_mysql_slowlog_agent": { + "type": "object", + "properties": { + "agent_id": { + "type": "string", + "x-order": 0 }, - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "type": "object", + "properties": { + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } + }, + "x-order": 1 + } + }, + "x-order": 9 + }, + "qan_postgresql_pgstatements_agent": { + "type": "object", + "properties": { + "agent_id": { + "type": "string", "x-order": 0 }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "type": "object", + "properties": { + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } + }, + "x-order": 1 + } + }, + "x-order": 11 + }, + "qan_postgresql_pgstatmonitor_agent": { + "type": "object", + "properties": { + "agent_id": { + "type": "string", + "x-order": 0 }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "type": "object", + "properties": { + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } + }, + "x-order": 1 } }, - "x-order": 1 + "x-order": 12 + }, + "rds_exporter": { + "type": "object", + "properties": { + "agent_id": { + "type": "string", + "x-order": 0 + }, + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "type": "object", + "properties": { + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } + }, + "x-order": 1 + } + }, + "x-order": 6 } } } @@ -2818,123 +3346,16 @@ "x-order": 7 } }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 + "x-order": 7 }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, - "x-order": 2 - }, - "message": { - "type": "string", - "x-order": 1 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeExternalExporter": { - "post": { - "description": "Changes external_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change External Exporter", - "operationId": "ChangeExternalExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 - }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", - "type": "object", - "properties": { - "custom_labels": { - "description": "Replace all custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 - }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 - }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 - }, - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", - "x-order": 0 - }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - } - }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { - "external_exporter": { - "description": "ExternalExporter runs on any Node type, including Remote Node.", - "type": "object", - "properties": { - "agent_id": { - "description": "Unique randomly generated instance identifier.", - "type": "string", - "x-order": 0 + "external_exporter": { + "description": "ExternalExporter runs on any Node type, including Remote Node.", + "type": "object", + "properties": { + "agent_id": { + "description": "Unique randomly generated instance identifier.", + "type": "string", + "x-order": 0 }, "custom_labels": { "description": "Custom user-assigned labels.", @@ -2991,115 +3412,8 @@ "x-order": 4 } }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, - "x-order": 2 - }, - "message": { - "type": "string", - "x-order": 1 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeMongoDBExporter": { - "post": { - "description": "Changes mongodb_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change MongoDB Exporter", - "operationId": "ChangeMongoDBExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 + "x-order": 5 }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", - "type": "object", - "properties": { - "custom_labels": { - "description": "Replace all custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 - }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 - }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 - }, - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", - "x-order": 0 - }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - } - }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { "mongodb_exporter": { "description": "MongoDBExporter runs on Generic or Container Node and exposes MongoDB Service metrics.", "type": "object", @@ -3226,155 +3540,48 @@ "x-order": 4 } }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, "x-order": 2 }, - "message": { - "type": "string", - "x-order": 1 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeMySQLdExporter": { - "post": { - "description": "Changes mysqld_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change mysqld Exporter", - "operationId": "ChangeMySQLdExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 - }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "mysqld_exporter": { + "description": "MySQLdExporter runs on Generic or Container Node and exposes MySQL Service metrics.", "type": "object", "properties": { + "agent_id": { + "description": "Unique randomly generated instance identifier.", + "type": "string", + "x-order": 0 + }, "custom_labels": { - "description": "Replace all custom user-assigned labels.", + "description": "Custom user-assigned labels.", "type": "object", "additionalProperties": { "type": "string" }, - "x-order": 2 + "x-order": 11 }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", + "disabled": { + "description": "Desired Agent status: enabled (false) or disabled (true).", "type": "boolean", - "x-order": 1 + "x-order": 2 }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 + "disabled_collectors": { + "description": "List of disabled collector names.", + "type": "array", + "items": { + "type": "string" + }, + "x-order": 13 }, - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", + "expose_exporter": { "type": "boolean", - "x-order": 0 + "title": "Optionally expose the exporter process on all public interfaces", + "x-order": 20 }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - } - }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { - "mysqld_exporter": { - "description": "MySQLdExporter runs on Generic or Container Node and exposes MySQL Service metrics.", - "type": "object", - "properties": { - "agent_id": { - "description": "Unique randomly generated instance identifier.", - "type": "string", - "x-order": 0 - }, - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 11 - }, - "disabled": { - "description": "Desired Agent status: enabled (false) or disabled (true).", - "type": "boolean", - "x-order": 2 - }, - "disabled_collectors": { - "description": "List of disabled collector names.", - "type": "array", - "items": { - "type": "string" - }, - "x-order": 13 - }, - "expose_exporter": { - "type": "boolean", - "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 19 - }, - "listen_port": { - "description": "Listen port for scraping metrics.", - "type": "integer", - "format": "int64", - "x-order": 15 + "listen_port": { + "description": "Listen port for scraping metrics.", + "type": "integer", + "format": "int64", + "x-order": 16 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -3389,7 +3596,7 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 18 + "x-order": 19 }, "pmm_agent_id": { "description": "The pmm-agent identifier which runs this instance.", @@ -3399,7 +3606,7 @@ "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 17 + "x-order": 18 }, "push_metrics_enabled": { "description": "True if exporter uses push metrics mode.", @@ -3424,12 +3631,18 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], + "x-order": 15 + }, + "table_count": { + "description": "Actual table count at the moment of adding.", + "type": "integer", + "format": "int32", "x-order": 14 }, "tablestats_group_disabled": { "description": "True if tablestats group collectors are currently disabled.", "type": "boolean", - "x-order": 16 + "x-order": 17 }, "tablestats_group_table_limit": { "description": "Tablestats group collectors are disabled if there are more than that number of tables.\n0 means tablestats group collectors are always enabled (no limit).\nNegative value means tablestats group collectors are always disabled.", @@ -3468,115 +3681,8 @@ "x-order": 4 } }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, - "x-order": 2 - }, - "message": { - "type": "string", "x-order": 1 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeNodeExporter": { - "post": { - "description": "Changes node_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change Node Exporter", - "operationId": "ChangeNodeExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", - "type": "object", - "properties": { - "custom_labels": { - "description": "Replace all custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 - }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 - }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 - }, - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", - "x-order": 0 - }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - } - }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { "node_exporter": { "description": "NodeExporter runs on Generic or Container Node and exposes its metrics.", "type": "object", @@ -3665,114 +3771,7 @@ } }, "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, - "x-order": 2 - }, - "message": { - "type": "string", - "x-order": 1 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangePostgresExporter": { - "post": { - "description": "Changes postgres_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change Postgres Exporter", - "operationId": "ChangePostgresExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", - "type": "object", - "properties": { - "custom_labels": { - "description": "Replace all custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 - }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 - }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 - }, - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", - "x-order": 0 - }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - } - }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { "postgres_exporter": { "description": "PostgresExporter runs on Generic or Container Node and exposes PostgreSQL Service metrics.", "type": "object", @@ -3886,115 +3885,8 @@ "x-order": 4 } }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, - "x-order": 2 - }, - "message": { - "type": "string", - "x-order": 1 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeProxySQLExporter": { - "post": { - "description": "Changes proxysql_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change ProxySQL Exporter", - "operationId": "ChangeProxySQLExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 + "x-order": 3 }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", - "type": "object", - "properties": { - "custom_labels": { - "description": "Replace all custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 - }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 - }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 - }, - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", - "x-order": 0 - }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - } - }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { "proxysql_exporter": { "description": "ProxySQLExporter runs on Generic or Container Node and exposes ProxySQL Service metrics.", "type": "object", @@ -4102,115 +3994,8 @@ "x-order": 4 } }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, - "x-order": 2 - }, - "message": { - "type": "string", - "x-order": 1 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeQANMongoDBProfilerAgent": { - "post": { - "description": "Changes 'Query Analytics MongoDB Profiler' Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change 'QAN MongoDB Profiler' Agent", - "operationId": "ChangeQANMongoDBProfilerAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 + "x-order": 4 }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", - "type": "object", - "properties": { - "custom_labels": { - "description": "Replace all custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 - }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 - }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 - }, - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", - "x-order": 0 - }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - } - }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { "qan_mongodb_profiler_agent": { "description": "QANMongoDBProfilerAgent runs within pmm-agent and sends MongoDB Query Analytics data to the PMM Server.", "type": "object", @@ -4248,167 +4033,60 @@ ], "x-order": 11 }, - "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", - "type": "integer", - "format": "int32", - "x-order": 7 - }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 1 - }, - "process_exec_path": { - "description": "Path to exec process.", - "type": "string", - "x-order": 10 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 3 - }, - "status": { - "description": "AgentStatus represents actual Agent status.\n\n - AGENT_STATUS_STARTING: Agent is starting.\n - AGENT_STATUS_RUNNING: Agent is running.\n - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon.\n - AGENT_STATUS_STOPPING: Agent is stopping.\n - AGENT_STATUS_DONE: Agent finished.\n - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state.", - "type": "string", - "default": "AGENT_STATUS_UNSPECIFIED", - "enum": [ - "AGENT_STATUS_UNSPECIFIED", - "AGENT_STATUS_STARTING", - "AGENT_STATUS_RUNNING", - "AGENT_STATUS_WAITING", - "AGENT_STATUS_STOPPING", - "AGENT_STATUS_DONE", - "AGENT_STATUS_UNKNOWN" - ], - "x-order": 9 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 5 - }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", - "x-order": 6 - }, - "username": { - "description": "MongoDB username for getting profiler data.", - "type": "string", - "x-order": 4 - } - }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, - "x-order": 2 - }, - "message": { - "type": "string", - "x-order": 1 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeQANMySQLPerfSchemaAgent": { - "post": { - "description": "Changes 'Query Analytics MySQL PerfSchema' Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change 'QAN MySQL PerfSchema' Agent", - "operationId": "ChangeQANMySQLPerfSchemaAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 - }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", - "type": "object", - "properties": { - "custom_labels": { - "description": "Replace all custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 - }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", + "max_query_length": { + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "type": "integer", + "format": "int32", + "x-order": 7 + }, + "pmm_agent_id": { + "description": "The pmm-agent identifier which runs this instance.", + "type": "string", "x-order": 1 }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", + "process_exec_path": { + "description": "Path to exec process.", + "type": "string", + "x-order": 10 + }, + "service_id": { + "description": "Service identifier.", + "type": "string", + "x-order": 3 + }, + "status": { + "description": "AgentStatus represents actual Agent status.\n\n - AGENT_STATUS_STARTING: Agent is starting.\n - AGENT_STATUS_RUNNING: Agent is running.\n - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon.\n - AGENT_STATUS_STOPPING: Agent is stopping.\n - AGENT_STATUS_DONE: Agent finished.\n - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state.", + "type": "string", + "default": "AGENT_STATUS_UNSPECIFIED", + "enum": [ + "AGENT_STATUS_UNSPECIFIED", + "AGENT_STATUS_STARTING", + "AGENT_STATUS_RUNNING", + "AGENT_STATUS_WAITING", + "AGENT_STATUS_STOPPING", + "AGENT_STATUS_DONE", + "AGENT_STATUS_UNKNOWN" + ], + "x-order": 9 + }, + "tls": { + "description": "Use TLS for database connections.", "type": "boolean", "x-order": 5 }, - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation.", "type": "boolean", - "x-order": 0 + "x-order": 6 }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", + "username": { + "description": "MongoDB username for getting profiler data.", + "type": "string", "x-order": 4 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 } }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { + "x-order": 10 + }, "qan_mysql_perfschema_agent": { "description": "QANMySQLPerfSchemaAgent runs within pmm-agent and sends MySQL Query Analytics data to the PMM Server.", "type": "object", @@ -4523,115 +4201,8 @@ "x-order": 4 } }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, - "x-order": 2 - }, - "message": { - "type": "string", - "x-order": 1 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeQANMySQLSlowlogAgent": { - "post": { - "description": "Changes 'Query Analytics MySQL Slowlog' Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change 'QAN MySQL Slowlog' Agent", - "operationId": "ChangeQANMySQLSlowlogAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 + "x-order": 8 }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", - "type": "object", - "properties": { - "custom_labels": { - "description": "Replace all custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 - }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 - }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 - }, - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", - "x-order": 0 - }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - } - }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { "qan_mysql_slowlog_agent": { "description": "QANMySQLSlowlogAgent runs within pmm-agent and sends MySQL Query Analytics data to the PMM Server.", "type": "object", @@ -4752,117 +4323,10 @@ "x-order": 4 } }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, - "x-order": 2 - }, - "message": { - "type": "string", - "x-order": 1 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeQANPostgreSQLPgStatMonitorAgent": { - "post": { - "description": "Changes 'Query Analytics PostgreSQL pg_stat_monitor' Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change 'QAN PostgreSQL pg_stat_monitor' Agent", - "operationId": "ChangeQANPostgreSQLPgStatMonitorAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 + "x-order": 9 }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", - "type": "object", - "properties": { - "custom_labels": { - "description": "Replace all custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 - }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 - }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 - }, - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", - "x-order": 0 - }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - } - }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { - "qan_postgresql_pgstatmonitor_agent": { - "description": "QANPostgreSQLPgStatMonitorAgent runs within pmm-agent and sends PostgreSQL Query Analytics data to the PMM Server.", + "qan_postgresql_pgstatements_agent": { + "description": "QANPostgreSQLPgStatementsAgent runs within pmm-agent and sends PostgreSQL Query Analytics data to the PMM Server.", "type": "object", "properties": { "agent_id": { @@ -4876,12 +4340,12 @@ "additionalProperties": { "type": "string" }, - "x-order": 10 + "x-order": 9 }, "disable_comments_parsing": { "description": "Disable parsing comments from queries and showing them in QAN.", "type": "boolean", - "x-order": 7 + "x-order": 5 }, "disabled": { "description": "Desired Agent status: enabled (false) or disabled (true).", @@ -4901,13 +4365,13 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 13 + "x-order": 12 }, "max_query_length": { "description": "Limit query length in QAN (default: server-defined; -1: no limit).", "type": "integer", "format": "int32", - "x-order": 8 + "x-order": 6 }, "pmm_agent_id": { "description": "The pmm-agent identifier which runs this instance.", @@ -4917,12 +4381,7 @@ "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 12 - }, - "query_examples_disabled": { - "description": "True if query examples are disabled.", - "type": "boolean", - "x-order": 9 + "x-order": 11 }, "service_id": { "description": "Service identifier.", @@ -4942,135 +4401,28 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 11 + "x-order": 10 }, "tls": { "description": "Use TLS for database connections.", "type": "boolean", - "x-order": 5 + "x-order": 7 }, "tls_skip_verify": { "description": "Skip TLS certificate and hostname validation.", "type": "boolean", - "x-order": 6 + "x-order": 8 }, "username": { - "description": "PostgreSQL username for getting pg stat monitor data.", + "description": "PostgreSQL username for getting pg stat statements data.", "type": "string", "x-order": 4 } }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, - "x-order": 2 - }, - "message": { - "type": "string", - "x-order": 1 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeQANPostgreSQLPgStatementsAgent": { - "post": { - "description": "Changes 'Query Analytics PostgreSQL pg_stat_statements' Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change 'QAN PostgreSQL pg_stat_statements' Agent", - "operationId": "ChangeQANPostgreSQLPgStatementsAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 + "x-order": 11 }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", - "type": "object", - "properties": { - "custom_labels": { - "description": "Replace all custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 - }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 - }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 - }, - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", - "x-order": 0 - }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - } - }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { - "qan_postgresql_pgstatements_agent": { - "description": "QANPostgreSQLPgStatementsAgent runs within pmm-agent and sends PostgreSQL Query Analytics data to the PMM Server.", + "qan_postgresql_pgstatmonitor_agent": { + "description": "QANPostgreSQLPgStatMonitorAgent runs within pmm-agent and sends PostgreSQL Query Analytics data to the PMM Server.", "type": "object", "properties": { "agent_id": { @@ -5084,12 +4436,12 @@ "additionalProperties": { "type": "string" }, - "x-order": 9 + "x-order": 10 }, "disable_comments_parsing": { "description": "Disable parsing comments from queries and showing them in QAN.", "type": "boolean", - "x-order": 5 + "x-order": 7 }, "disabled": { "description": "Desired Agent status: enabled (false) or disabled (true).", @@ -5109,13 +4461,13 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 12 + "x-order": 13 }, "max_query_length": { "description": "Limit query length in QAN (default: server-defined; -1: no limit).", "type": "integer", "format": "int32", - "x-order": 6 + "x-order": 8 }, "pmm_agent_id": { "description": "The pmm-agent identifier which runs this instance.", @@ -5125,7 +4477,12 @@ "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 11 + "x-order": 12 + }, + "query_examples_disabled": { + "description": "True if query examples are disabled.", + "type": "boolean", + "x-order": 9 }, "service_id": { "description": "Service identifier.", @@ -5145,133 +4502,26 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 10 + "x-order": 11 }, "tls": { "description": "Use TLS for database connections.", "type": "boolean", - "x-order": 7 + "x-order": 5 }, "tls_skip_verify": { "description": "Skip TLS certificate and hostname validation.", "type": "boolean", - "x-order": 8 + "x-order": 6 }, "username": { - "description": "PostgreSQL username for getting pg stat statements data.", + "description": "PostgreSQL username for getting pg stat monitor data.", "type": "string", "x-order": 4 } }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, - "x-order": 2 - }, - "message": { - "type": "string", - "x-order": 1 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeRDSExporter": { - "post": { - "description": "Changes rds_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change RDS Exporter", - "operationId": "ChangeRDSExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 + "x-order": 12 }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", - "type": "object", - "properties": { - "custom_labels": { - "description": "Replace all custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 - }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 - }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 - }, - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", - "x-order": 0 - }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - } - }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { "rds_exporter": { "description": "RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node metrics.", "type": "object", @@ -5372,7 +4622,7 @@ "x-order": 6 } }, - "x-order": 0 + "x-order": 6 } } } @@ -5760,13 +5010,13 @@ "expose_exporter": { "type": "boolean", "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 19 + "x-order": 20 }, "listen_port": { "description": "Listen port for scraping metrics.", "type": "integer", "format": "int64", - "x-order": 15 + "x-order": 16 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -5781,7 +5031,7 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 18 + "x-order": 19 }, "pmm_agent_id": { "description": "The pmm-agent identifier which runs this instance.", @@ -5791,7 +5041,7 @@ "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 17 + "x-order": 18 }, "push_metrics_enabled": { "description": "True if exporter uses push metrics mode.", @@ -5816,12 +5066,18 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], + "x-order": 15 + }, + "table_count": { + "description": "Actual table count at the moment of adding.", + "type": "integer", + "format": "int32", "x-order": 14 }, "tablestats_group_disabled": { "description": "True if tablestats group collectors are currently disabled.", "type": "boolean", - "x-order": 16 + "x-order": 17 }, "tablestats_group_table_limit": { "description": "Tablestats group collectors are disabled if there are more than that number of tables.\n0 means tablestats group collectors are always enabled (no limit).\nNegative value means tablestats group collectors are always disabled.", @@ -7398,13 +6654,13 @@ "expose_exporter": { "type": "boolean", "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 19 + "x-order": 20 }, "listen_port": { "description": "Listen port for scraping metrics.", "type": "integer", "format": "int64", - "x-order": 15 + "x-order": 16 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -7419,7 +6675,7 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 18 + "x-order": 19 }, "pmm_agent_id": { "description": "The pmm-agent identifier which runs this instance.", @@ -7429,7 +6685,7 @@ "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 17 + "x-order": 18 }, "push_metrics_enabled": { "description": "True if exporter uses push metrics mode.", @@ -7454,12 +6710,18 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], + "x-order": 15 + }, + "table_count": { + "description": "Actual table count at the moment of adding.", + "type": "integer", + "format": "int32", "x-order": 14 }, "tablestats_group_disabled": { "description": "True if tablestats group collectors are currently disabled.", "type": "boolean", - "x-order": 16 + "x-order": 17 }, "tablestats_group_table_limit": { "description": "Tablestats group collectors are disabled if there are more than that number of tables.\n0 means tablestats group collectors are always enabled (no limit).\nNegative value means tablestats group collectors are always disabled.", diff --git a/api/management/v1/json/client/my_sql_service/add_my_sql_responses.go b/api/management/v1/json/client/my_sql_service/add_my_sql_responses.go index ea49bc0108..ddf4ef936b 100644 --- a/api/management/v1/json/client/my_sql_service/add_my_sql_responses.go +++ b/api/management/v1/json/client/my_sql_service/add_my_sql_responses.go @@ -842,6 +842,9 @@ type AddMySQLOKBodyMysqldExporter struct { // List of disabled collector names. DisabledCollectors []string `json:"disabled_collectors"` + // Actual table count at the moment of adding. + TableCount int32 `json:"table_count,omitempty"` + // AgentStatus represents actual Agent status. // // - AGENT_STATUS_STARTING: Agent is starting. diff --git a/api/management/v1/json/client/rds_service/add_rds_responses.go b/api/management/v1/json/client/rds_service/add_rds_responses.go index b7bd56289a..95c10f946f 100644 --- a/api/management/v1/json/client/rds_service/add_rds_responses.go +++ b/api/management/v1/json/client/rds_service/add_rds_responses.go @@ -1024,6 +1024,9 @@ type AddRDSOKBodyMysqldExporter struct { // List of disabled collector names. DisabledCollectors []string `json:"disabled_collectors"` + // Actual table count at the moment of adding. + TableCount int32 `json:"table_count,omitempty"` + // AgentStatus represents actual Agent status. // // - AGENT_STATUS_STARTING: Agent is starting. diff --git a/api/management/v1/json/v1.json b/api/management/v1/json/v1.json index 49c82a8f46..350d22db1d 100644 --- a/api/management/v1/json/v1.json +++ b/api/management/v1/json/v1.json @@ -3186,13 +3186,13 @@ "expose_exporter": { "type": "boolean", "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 19 + "x-order": 20 }, "listen_port": { "description": "Listen port for scraping metrics.", "type": "integer", "format": "int64", - "x-order": 15 + "x-order": 16 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -3207,7 +3207,7 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 18 + "x-order": 19 }, "pmm_agent_id": { "description": "The pmm-agent identifier which runs this instance.", @@ -3217,7 +3217,7 @@ "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 17 + "x-order": 18 }, "push_metrics_enabled": { "description": "True if exporter uses push metrics mode.", @@ -3242,12 +3242,18 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], + "x-order": 15 + }, + "table_count": { + "description": "Actual table count at the moment of adding.", + "type": "integer", + "format": "int32", "x-order": 14 }, "tablestats_group_disabled": { "description": "True if tablestats group collectors are currently disabled.", "type": "boolean", - "x-order": 16 + "x-order": 17 }, "tablestats_group_table_limit": { "description": "Tablestats group collectors are disabled if there are more than that number of tables.\n0 means tablestats group collectors are always enabled (no limit).\nNegative value means tablestats group collectors are always disabled.", @@ -5393,13 +5399,13 @@ "expose_exporter": { "type": "boolean", "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 19 + "x-order": 20 }, "listen_port": { "description": "Listen port for scraping metrics.", "type": "integer", "format": "int64", - "x-order": 15 + "x-order": 16 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -5414,7 +5420,7 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 18 + "x-order": 19 }, "pmm_agent_id": { "description": "The pmm-agent identifier which runs this instance.", @@ -5424,7 +5430,7 @@ "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 17 + "x-order": 18 }, "push_metrics_enabled": { "description": "True if exporter uses push metrics mode.", @@ -5449,12 +5455,18 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], + "x-order": 15 + }, + "table_count": { + "description": "Actual table count at the moment of adding.", + "type": "integer", + "format": "int32", "x-order": 14 }, "tablestats_group_disabled": { "description": "True if tablestats group collectors are currently disabled.", "type": "boolean", - "x-order": 16 + "x-order": 17 }, "tablestats_group_table_limit": { "description": "Tablestats group collectors are disabled if there are more than that number of tables.\n0 means tablestats group collectors are always enabled (no limit).\nNegative value means tablestats group collectors are always disabled.", diff --git a/api/swagger/swagger-dev.json b/api/swagger/swagger-dev.json index 3f99d3ef06..4691cf0a8c 100644 --- a/api/swagger/swagger-dev.json +++ b/api/swagger/swagger-dev.json @@ -3776,7 +3776,7 @@ }, "/v1/inventory/Agents/Add": { "post": { - "description": "Adds an Agent from Inventory.", + "description": "Adds an Agent to Inventory. Only one top-level parameter should be passed.", "tags": [ "AgentsService" ], @@ -5184,6 +5184,12 @@ }, "x-order": 13 }, + "table_count": { + "description": "Actual table count at the moment of adding.", + "type": "integer", + "format": "int32", + "x-order": 14 + }, "status": { "description": "AgentStatus represents actual Agent status.\n\n - AGENT_STATUS_STARTING: Agent is starting.\n - AGENT_STATUS_RUNNING: Agent is running.\n - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon.\n - AGENT_STATUS_STOPPING: Agent is stopping.\n - AGENT_STATUS_DONE: Agent finished.\n - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state.", "type": "string", @@ -5197,23 +5203,23 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 14 + "x-order": 15 }, "listen_port": { "description": "Listen port for scraping metrics.", "type": "integer", "format": "int64", - "x-order": 15 + "x-order": 16 }, "tablestats_group_disabled": { "description": "True if tablestats group collectors are currently disabled.", "type": "boolean", - "x-order": 16 + "x-order": 17 }, "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 17 + "x-order": 18 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -5228,12 +5234,12 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 18 + "x-order": 19 }, "expose_exporter": { "type": "boolean", "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 19 + "x-order": 20 } }, "x-order": 2 @@ -6374,12 +6380,6 @@ } }, "x-order": 13 - }, - "table_count": { - "description": "Actual table count for SQL databases at the moment of adding.", - "type": "integer", - "format": "int32", - "x-order": 14 } } } @@ -6418,14 +6418,14 @@ } } }, - "/v1/inventory/Agents/ChangeAzureDatabaseExporter": { + "/v1/inventory/Agents/Change": { "post": { - "description": "Changes azure_database_exporter Agent.", + "description": "Updates an Agent in Inventory. Only one top-level parameter should be passed.", "tags": [ "AgentsService" ], - "summary": "Change Azure Database Exporter", - "operationId": "ChangeAzureDatabaseExporter", + "summary": "Update an Agent in Inventory", + "operationId": "ChangeAgent", "parameters": [ { "name": "body", @@ -6434,420 +6434,577 @@ "schema": { "type": "object", "properties": { - "agent_id": { - "type": "string", - "x-order": 0 - }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "node_exporter": { "type": "object", "properties": { - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", + "agent_id": { + "type": "string", "x-order": 0 }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 - }, - "custom_labels": { - "description": "Replace all custom user-assigned labels.", + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", "type": "object", - "additionalProperties": { - "type": "string" + "properties": { + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } }, - "x-order": 2 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 - }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 + "x-order": 1 } }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { - "azure_database_exporter": { - "description": "AzureDatabaseExporter runs on Generic or Container Node and exposes RemoteAzure Node metrics.", + "x-order": 0 + }, + "mysqld_exporter": { "type": "object", "properties": { "agent_id": { - "description": "Unique randomly generated instance identifier.", "type": "string", "x-order": 0 }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 1 - }, - "disabled": { - "description": "Desired Agent status: enabled (false) or disabled (true).", - "type": "boolean", - "x-order": 2 - }, - "node_id": { - "description": "Node identifier.", - "type": "string", - "x-order": 3 - }, - "azure_database_subscription_id": { - "description": "Azure database subscription ID.", - "type": "string", - "x-order": 4 - }, - "azure_database_resource_type": { - "type": "string", - "title": "Azure database resource type (mysql, maria, postgres)", - "x-order": 5 - }, - "custom_labels": { - "description": "Custom user-assigned labels.", + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", "type": "object", - "additionalProperties": { - "type": "string" + "properties": { + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } }, - "x-order": 6 - }, - "status": { - "description": "AgentStatus represents actual Agent status.\n\n - AGENT_STATUS_STARTING: Agent is starting.\n - AGENT_STATUS_RUNNING: Agent is running.\n - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon.\n - AGENT_STATUS_STOPPING: Agent is stopping.\n - AGENT_STATUS_DONE: Agent finished.\n - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state.", - "type": "string", - "default": "AGENT_STATUS_UNSPECIFIED", - "enum": [ - "AGENT_STATUS_UNSPECIFIED", - "AGENT_STATUS_STARTING", - "AGENT_STATUS_RUNNING", - "AGENT_STATUS_WAITING", - "AGENT_STATUS_STOPPING", - "AGENT_STATUS_DONE", - "AGENT_STATUS_UNKNOWN" - ], - "x-order": 7 - }, - "listen_port": { - "description": "Listen port for scraping metrics (the same for several configurations).", - "type": "integer", - "format": "int64", - "x-order": 8 - }, - "push_metrics_enabled": { - "description": "True if the exporter operates in push metrics mode.", - "type": "boolean", - "x-order": 9 - }, - "process_exec_path": { - "description": "Path to exec process.", - "type": "string", - "x-order": 10 - }, - "log_level": { - "description": "- LOG_LEVEL_UNSPECIFIED: Auto", - "type": "string", - "title": "Log level for exporters", - "default": "LOG_LEVEL_UNSPECIFIED", - "enum": [ - "LOG_LEVEL_UNSPECIFIED", - "LOG_LEVEL_FATAL", - "LOG_LEVEL_ERROR", - "LOG_LEVEL_WARN", - "LOG_LEVEL_INFO", - "LOG_LEVEL_DEBUG" - ], - "x-order": 11 + "x-order": 1 } }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "message": { - "type": "string", "x-order": 1 }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } + "mongodb_exporter": { + "type": "object", + "properties": { + "agent_id": { + "type": "string", + "x-order": 0 }, - "additionalProperties": false + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "type": "object", + "properties": { + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } + }, + "x-order": 1 + } }, "x-order": 2 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeExternalExporter": { - "post": { - "description": "Changes external_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change External Exporter", - "operationId": "ChangeExternalExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "postgres_exporter": { "type": "object", "properties": { - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", + "agent_id": { + "type": "string", "x-order": 0 }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 - }, - "custom_labels": { - "description": "Replace all custom user-assigned labels.", + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", "type": "object", - "additionalProperties": { - "type": "string" + "properties": { + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } }, - "x-order": 2 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 + "x-order": 1 + } + }, + "x-order": 3 + }, + "proxysql_exporter": { + "type": "object", + "properties": { + "agent_id": { + "type": "string", + "x-order": 0 }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "type": "object", + "properties": { + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } + }, + "x-order": 1 } }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { + "x-order": 4 + }, "external_exporter": { - "description": "ExternalExporter runs on any Node type, including Remote Node.", "type": "object", "properties": { "agent_id": { - "description": "Unique randomly generated instance identifier.", "type": "string", "x-order": 0 }, - "runs_on_node_id": { - "description": "Node identifier where this instance runs.", - "type": "string", + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "type": "object", + "properties": { + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } + }, "x-order": 1 - }, - "disabled": { - "description": "If disabled, metrics from this exporter will not be collected.", - "type": "boolean", - "x-order": 2 - }, - "service_id": { - "description": "Service identifier.", + } + }, + "x-order": 5 + }, + "rds_exporter": { + "type": "object", + "properties": { + "agent_id": { "type": "string", - "x-order": 3 + "x-order": 0 }, - "username": { - "description": "HTTP basic auth username for collecting metrics.", + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "type": "object", + "properties": { + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } + }, + "x-order": 1 + } + }, + "x-order": 6 + }, + "azure_database_exporter": { + "type": "object", + "properties": { + "agent_id": { "type": "string", - "x-order": 4 + "x-order": 0 }, - "scheme": { - "description": "Scheme to generate URI to exporter metrics endpoints.", + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "type": "object", + "properties": { + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } + }, + "x-order": 1 + } + }, + "x-order": 7 + }, + "qan_mysql_perfschema_agent": { + "type": "object", + "properties": { + "agent_id": { "type": "string", - "x-order": 5 + "x-order": 0 }, - "metrics_path": { - "description": "Path under which metrics are exposed, used to generate URI.", + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "type": "object", + "properties": { + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } + }, + "x-order": 1 + } + }, + "x-order": 8 + }, + "qan_mysql_slowlog_agent": { + "type": "object", + "properties": { + "agent_id": { "type": "string", - "x-order": 6 + "x-order": 0 }, - "custom_labels": { - "description": "Custom user-assigned labels.", + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", "type": "object", - "additionalProperties": { - "type": "string" + "properties": { + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } }, - "x-order": 7 - }, - "listen_port": { - "description": "Listen port for scraping metrics.", - "type": "integer", - "format": "int64", - "x-order": 8 - }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", - "type": "boolean", - "x-order": 9 - }, - "process_exec_path": { - "description": "Path to exec process.", - "type": "string", - "x-order": 10 + "x-order": 1 } }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "message": { - "type": "string", - "x-order": 1 + "x-order": 9 }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } + "qan_mongodb_profiler_agent": { + "type": "object", + "properties": { + "agent_id": { + "type": "string", + "x-order": 0 }, - "additionalProperties": false + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "type": "object", + "properties": { + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } + }, + "x-order": 1 + } }, - "x-order": 2 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeMongoDBExporter": { - "post": { - "description": "Changes mongodb_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change MongoDB Exporter", - "operationId": "ChangeMongoDBExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 + "x-order": 10 }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "qan_postgresql_pgstatements_agent": { "type": "object", "properties": { - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", + "agent_id": { + "type": "string", "x-order": 0 }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "type": "object", + "properties": { + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } + }, "x-order": 1 + } + }, + "x-order": 11 + }, + "qan_postgresql_pgstatmonitor_agent": { + "type": "object", + "properties": { + "agent_id": { + "type": "string", + "x-order": 0 }, - "custom_labels": { - "description": "Replace all custom user-assigned labels.", + "common": { + "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", "type": "object", - "additionalProperties": { - "type": "string" + "properties": { + "enable": { + "description": "Enable this Agent. Agents are enabled by default when they get added.", + "type": "boolean", + "x-nullable": true, + "x-order": 0 + }, + "custom_labels": { + "description": "A wrapper for map[string]string. This type allows to distinguish between an empty map and a null value.", + "type": "object", + "properties": { + "values": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 0 + } + }, + "x-nullable": true, + "x-order": 1 + }, + "enable_push_metrics": { + "description": "Enables push metrics with vmagent.", + "type": "boolean", + "x-nullable": true, + "x-order": 2 + } }, - "x-order": 2 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 - }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 + "x-order": 1 } }, - "x-order": 1 + "x-order": 12 } } } @@ -6859,44 +7016,24 @@ "schema": { "type": "object", "properties": { - "mongodb_exporter": { - "description": "MongoDBExporter runs on Generic or Container Node and exposes MongoDB Service metrics.", + "node_exporter": { + "description": "NodeExporter runs on Generic or Container Node and exposes its metrics.", "type": "object", "properties": { "agent_id": { "description": "Unique randomly generated instance identifier.", "type": "string", - "x-order": 0 - }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 1 - }, - "disabled": { - "description": "Desired Agent status: enabled (false) or disabled (true).", - "type": "boolean", - "x-order": 2 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 3 - }, - "username": { - "description": "MongoDB username for scraping metrics.", - "type": "string", - "x-order": 4 + "x-order": 0 }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 5 + "pmm_agent_id": { + "description": "The pmm-agent identifier which runs this instance.", + "type": "string", + "x-order": 1 }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", + "disabled": { + "description": "Desired Agent status: enabled (false) or disabled (true).", "type": "boolean", - "x-order": 6 + "x-order": 2 }, "custom_labels": { "description": "Custom user-assigned labels.", @@ -6904,12 +7041,12 @@ "additionalProperties": { "type": "string" }, - "x-order": 7 + "x-order": 3 }, "push_metrics_enabled": { "description": "True if exporter uses push metrics mode.", "type": "boolean", - "x-order": 8 + "x-order": 4 }, "disabled_collectors": { "description": "List of disabled collector names.", @@ -6917,7 +7054,7 @@ "items": { "type": "string" }, - "x-order": 9 + "x-order": 5 }, "status": { "description": "AgentStatus represents actual Agent status.\n\n - AGENT_STATUS_STARTING: Agent is starting.\n - AGENT_STATUS_RUNNING: Agent is running.\n - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon.\n - AGENT_STATUS_STOPPING: Agent is stopping.\n - AGENT_STATUS_DONE: Agent finished.\n - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state.", @@ -6932,37 +7069,18 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 10 + "x-order": 6 }, "listen_port": { "description": "Listen port for scraping metrics.", "type": "integer", "format": "int64", - "x-order": 11 - }, - "stats_collections": { - "type": "array", - "title": "List of colletions to get stats from. Can use *", - "items": { - "type": "string" - }, - "x-order": 12 - }, - "collections_limit": { - "type": "integer", - "format": "int32", - "title": "Collections limit. Only get Databases and collection stats if the total number of collections in the server\nis less than this value. 0: no limit", - "x-order": 13 - }, - "enable_all_collectors": { - "description": "Enable All collectors.", - "type": "boolean", - "x-order": 14 + "x-order": 7 }, "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 15 + "x-order": 8 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -6977,123 +7095,16 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 16 + "x-order": 9 }, "expose_exporter": { "type": "boolean", "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 17 + "x-order": 10 } }, "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "message": { - "type": "string", - "x-order": 1 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, - "x-order": 2 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeMySQLdExporter": { - "post": { - "description": "Changes mysqld_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change mysqld Exporter", - "operationId": "ChangeMySQLdExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", - "type": "object", - "properties": { - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", - "x-order": 0 - }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 - }, - "custom_labels": { - "description": "Replace all custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 - }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 - } - }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { "mysqld_exporter": { "description": "MySQLdExporter runs on Generic or Container Node and exposes MySQL Service metrics.", "type": "object", @@ -7175,6 +7186,12 @@ }, "x-order": 13 }, + "table_count": { + "description": "Actual table count at the moment of adding.", + "type": "integer", + "format": "int32", + "x-order": 14 + }, "status": { "description": "AgentStatus represents actual Agent status.\n\n - AGENT_STATUS_STARTING: Agent is starting.\n - AGENT_STATUS_RUNNING: Agent is running.\n - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon.\n - AGENT_STATUS_STOPPING: Agent is stopping.\n - AGENT_STATUS_DONE: Agent finished.\n - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state.", "type": "string", @@ -7188,23 +7205,23 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 14 + "x-order": 15 }, "listen_port": { "description": "Listen port for scraping metrics.", "type": "integer", "format": "int64", - "x-order": 15 + "x-order": 16 }, "tablestats_group_disabled": { "description": "True if tablestats group collectors are currently disabled.", "type": "boolean", - "x-order": 16 + "x-order": 17 }, "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 17 + "x-order": 18 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -7218,126 +7235,19 @@ "LOG_LEVEL_WARN", "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" - ], - "x-order": 18 - }, - "expose_exporter": { - "type": "boolean", - "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 19 - } - }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "message": { - "type": "string", - "x-order": 1 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, - "x-order": 2 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeNodeExporter": { - "post": { - "description": "Changes node_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change Node Exporter", - "operationId": "ChangeNodeExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 - }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", - "type": "object", - "properties": { - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", - "x-order": 0 - }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 - }, - "custom_labels": { - "description": "Replace all custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 - }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 - } - }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { - "node_exporter": { - "description": "NodeExporter runs on Generic or Container Node and exposes its metrics.", + ], + "x-order": 19 + }, + "expose_exporter": { + "type": "boolean", + "title": "Optionally expose the exporter process on all public interfaces", + "x-order": 20 + } + }, + "x-order": 1 + }, + "mongodb_exporter": { + "description": "MongoDBExporter runs on Generic or Container Node and exposes MongoDB Service metrics.", "type": "object", "properties": { "agent_id": { @@ -7355,18 +7265,38 @@ "type": "boolean", "x-order": 2 }, + "service_id": { + "description": "Service identifier.", + "type": "string", + "x-order": 3 + }, + "username": { + "description": "MongoDB username for scraping metrics.", + "type": "string", + "x-order": 4 + }, + "tls": { + "description": "Use TLS for database connections.", + "type": "boolean", + "x-order": 5 + }, + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation.", + "type": "boolean", + "x-order": 6 + }, "custom_labels": { "description": "Custom user-assigned labels.", "type": "object", "additionalProperties": { "type": "string" }, - "x-order": 3 + "x-order": 7 }, "push_metrics_enabled": { "description": "True if exporter uses push metrics mode.", "type": "boolean", - "x-order": 4 + "x-order": 8 }, "disabled_collectors": { "description": "List of disabled collector names.", @@ -7374,7 +7304,7 @@ "items": { "type": "string" }, - "x-order": 5 + "x-order": 9 }, "status": { "description": "AgentStatus represents actual Agent status.\n\n - AGENT_STATUS_STARTING: Agent is starting.\n - AGENT_STATUS_RUNNING: Agent is running.\n - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon.\n - AGENT_STATUS_STOPPING: Agent is stopping.\n - AGENT_STATUS_DONE: Agent finished.\n - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state.", @@ -7389,18 +7319,37 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 6 + "x-order": 10 }, "listen_port": { "description": "Listen port for scraping metrics.", "type": "integer", "format": "int64", - "x-order": 7 + "x-order": 11 + }, + "stats_collections": { + "type": "array", + "title": "List of colletions to get stats from. Can use *", + "items": { + "type": "string" + }, + "x-order": 12 + }, + "collections_limit": { + "type": "integer", + "format": "int32", + "title": "Collections limit. Only get Databases and collection stats if the total number of collections in the server\nis less than this value. 0: no limit", + "x-order": 13 + }, + "enable_all_collectors": { + "description": "Enable All collectors.", + "type": "boolean", + "x-order": 14 }, "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 8 + "x-order": 15 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -7415,123 +7364,16 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 9 + "x-order": 16 }, "expose_exporter": { "type": "boolean", "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 10 + "x-order": 17 } }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "message": { - "type": "string", - "x-order": 1 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, "x-order": 2 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangePostgresExporter": { - "post": { - "description": "Changes postgres_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change Postgres Exporter", - "operationId": "ChangePostgresExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", - "type": "object", - "properties": { - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", - "x-order": 0 - }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 - }, - "custom_labels": { - "description": "Replace all custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 - }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 - } - }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { "postgres_exporter": { "description": "PostgresExporter runs on Generic or Container Node and exposes PostgreSQL Service metrics.", "type": "object", @@ -7605,155 +7447,48 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 10 - }, - "listen_port": { - "description": "Listen port for scraping metrics.", - "type": "integer", - "format": "int64", - "x-order": 11 - }, - "process_exec_path": { - "description": "Path to exec process.", - "type": "string", - "x-order": 12 - }, - "log_level": { - "description": "- LOG_LEVEL_UNSPECIFIED: Auto", - "type": "string", - "title": "Log level for exporters", - "default": "LOG_LEVEL_UNSPECIFIED", - "enum": [ - "LOG_LEVEL_UNSPECIFIED", - "LOG_LEVEL_FATAL", - "LOG_LEVEL_ERROR", - "LOG_LEVEL_WARN", - "LOG_LEVEL_INFO", - "LOG_LEVEL_DEBUG" - ], - "x-order": 13 - }, - "auto_discovery_limit": { - "description": "Limit of databases for auto-discovery.", - "type": "integer", - "format": "int32", - "x-order": 14 - }, - "expose_exporter": { - "type": "boolean", - "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 15 - } - }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "message": { - "type": "string", - "x-order": 1 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, - "x-order": 2 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeProxySQLExporter": { - "post": { - "description": "Changes proxysql_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change ProxySQL Exporter", - "operationId": "ChangeProxySQLExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 - }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", - "type": "object", - "properties": { - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", - "x-order": 0 + "x-order": 10 }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 + "listen_port": { + "description": "Listen port for scraping metrics.", + "type": "integer", + "format": "int64", + "x-order": 11 }, - "custom_labels": { - "description": "Replace all custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 + "process_exec_path": { + "description": "Path to exec process.", + "type": "string", + "x-order": 12 }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 + "log_level": { + "description": "- LOG_LEVEL_UNSPECIFIED: Auto", + "type": "string", + "title": "Log level for exporters", + "default": "LOG_LEVEL_UNSPECIFIED", + "enum": [ + "LOG_LEVEL_UNSPECIFIED", + "LOG_LEVEL_FATAL", + "LOG_LEVEL_ERROR", + "LOG_LEVEL_WARN", + "LOG_LEVEL_INFO", + "LOG_LEVEL_DEBUG" + ], + "x-order": 13 }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 + "auto_discovery_limit": { + "description": "Limit of databases for auto-discovery.", + "type": "integer", + "format": "int32", + "x-order": 14 }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", + "expose_exporter": { "type": "boolean", - "x-order": 5 + "title": "Optionally expose the exporter process on all public interfaces", + "x-order": 15 } }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { + "x-order": 3 + }, "proxysql_exporter": { "description": "ProxySQLExporter runs on Generic or Container Node and exposes ProxySQL Service metrics.", "type": "object", @@ -7861,117 +7596,178 @@ "x-order": 14 } }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "message": { - "type": "string", - "x-order": 1 + "x-order": 4 }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } + "external_exporter": { + "description": "ExternalExporter runs on any Node type, including Remote Node.", + "type": "object", + "properties": { + "agent_id": { + "description": "Unique randomly generated instance identifier.", + "type": "string", + "x-order": 0 }, - "additionalProperties": false + "runs_on_node_id": { + "description": "Node identifier where this instance runs.", + "type": "string", + "x-order": 1 + }, + "disabled": { + "description": "If disabled, metrics from this exporter will not be collected.", + "type": "boolean", + "x-order": 2 + }, + "service_id": { + "description": "Service identifier.", + "type": "string", + "x-order": 3 + }, + "username": { + "description": "HTTP basic auth username for collecting metrics.", + "type": "string", + "x-order": 4 + }, + "scheme": { + "description": "Scheme to generate URI to exporter metrics endpoints.", + "type": "string", + "x-order": 5 + }, + "metrics_path": { + "description": "Path under which metrics are exposed, used to generate URI.", + "type": "string", + "x-order": 6 + }, + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 7 + }, + "listen_port": { + "description": "Listen port for scraping metrics.", + "type": "integer", + "format": "int64", + "x-order": 8 + }, + "push_metrics_enabled": { + "description": "True if exporter uses push metrics mode.", + "type": "boolean", + "x-order": 9 + }, + "process_exec_path": { + "description": "Path to exec process.", + "type": "string", + "x-order": 10 + } }, - "x-order": 2 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeQANMongoDBProfilerAgent": { - "post": { - "description": "Changes 'Query Analytics MongoDB Profiler' Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change 'QAN MongoDB Profiler' Agent", - "operationId": "ChangeQANMongoDBProfilerAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 + "x-order": 5 }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", + "rds_exporter": { + "description": "RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node metrics.", "type": "object", "properties": { - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", + "agent_id": { + "description": "Unique randomly generated instance identifier.", + "type": "string", "x-order": 0 }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", + "pmm_agent_id": { + "description": "The pmm-agent identifier which runs this instance.", + "type": "string", "x-order": 1 }, + "disabled": { + "description": "Desired Agent status: enabled (false) or disabled (true).", + "type": "boolean", + "x-order": 2 + }, + "node_id": { + "description": "Node identifier.", + "type": "string", + "x-order": 3 + }, + "aws_access_key": { + "description": "AWS Access Key.", + "type": "string", + "x-order": 4 + }, "custom_labels": { - "description": "Replace all custom user-assigned labels.", + "description": "Custom user-assigned labels.", "type": "object", "additionalProperties": { "type": "string" }, - "x-order": 2 + "x-order": 5 + }, + "status": { + "description": "AgentStatus represents actual Agent status.\n\n - AGENT_STATUS_STARTING: Agent is starting.\n - AGENT_STATUS_RUNNING: Agent is running.\n - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon.\n - AGENT_STATUS_STOPPING: Agent is stopping.\n - AGENT_STATUS_DONE: Agent finished.\n - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state.", + "type": "string", + "default": "AGENT_STATUS_UNSPECIFIED", + "enum": [ + "AGENT_STATUS_UNSPECIFIED", + "AGENT_STATUS_STARTING", + "AGENT_STATUS_RUNNING", + "AGENT_STATUS_WAITING", + "AGENT_STATUS_STOPPING", + "AGENT_STATUS_DONE", + "AGENT_STATUS_UNKNOWN" + ], + "x-order": 6 + }, + "listen_port": { + "description": "Listen port for scraping metrics (the same for several configurations).", + "type": "integer", + "format": "int64", + "x-order": 7 }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", + "basic_metrics_disabled": { + "description": "Basic metrics are disabled.", "type": "boolean", - "x-order": 3 + "x-order": 8 }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", + "enhanced_metrics_disabled": { + "description": "Enhanced metrics are disabled.", "type": "boolean", - "x-order": 4 + "x-order": 9 }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", + "push_metrics_enabled": { + "description": "True if exporter uses push metrics mode.", "type": "boolean", - "x-order": 5 + "x-order": 10 + }, + "process_exec_path": { + "description": "Path to exec process.", + "type": "string", + "x-order": 11 + }, + "log_level": { + "description": "- LOG_LEVEL_UNSPECIFIED: Auto", + "type": "string", + "title": "Log level for exporters", + "default": "LOG_LEVEL_UNSPECIFIED", + "enum": [ + "LOG_LEVEL_UNSPECIFIED", + "LOG_LEVEL_FATAL", + "LOG_LEVEL_ERROR", + "LOG_LEVEL_WARN", + "LOG_LEVEL_INFO", + "LOG_LEVEL_DEBUG" + ], + "x-order": 12 + }, + "auto_discovery_limit": { + "description": "Limit of databases for auto-discovery.", + "type": "integer", + "format": "int32", + "x-order": 13 } }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { - "qan_mongodb_profiler_agent": { - "description": "QANMongoDBProfilerAgent runs within pmm-agent and sends MongoDB Query Analytics data to the PMM Server.", + "x-order": 6 + }, + "azure_database_exporter": { + "description": "AzureDatabaseExporter runs on Generic or Container Node and exposes RemoteAzure Node metrics.", "type": "object", "properties": { "agent_id": { @@ -7989,39 +7785,28 @@ "type": "boolean", "x-order": 2 }, - "service_id": { - "description": "Service identifier.", + "node_id": { + "description": "Node identifier.", "type": "string", "x-order": 3 }, - "username": { - "description": "MongoDB username for getting profiler data.", + "azure_database_subscription_id": { + "description": "Azure database subscription ID.", "type": "string", "x-order": 4 }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", + "azure_database_resource_type": { + "type": "string", + "title": "Azure database resource type (mysql, maria, postgres)", "x-order": 5 }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", - "x-order": 6 - }, - "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", - "type": "integer", - "format": "int32", - "x-order": 7 - }, "custom_labels": { "description": "Custom user-assigned labels.", "type": "object", "additionalProperties": { "type": "string" }, - "x-order": 8 + "x-order": 6 }, "status": { "description": "AgentStatus represents actual Agent status.\n\n - AGENT_STATUS_STARTING: Agent is starting.\n - AGENT_STATUS_RUNNING: Agent is running.\n - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon.\n - AGENT_STATUS_STOPPING: Agent is stopping.\n - AGENT_STATUS_DONE: Agent finished.\n - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state.", @@ -8036,6 +7821,17 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], + "x-order": 7 + }, + "listen_port": { + "description": "Listen port for scraping metrics (the same for several configurations).", + "type": "integer", + "format": "int64", + "x-order": 8 + }, + "push_metrics_enabled": { + "description": "True if the exporter operates in push metrics mode.", + "type": "boolean", "x-order": 9 }, "process_exec_path": { @@ -8059,115 +7855,8 @@ "x-order": 11 } }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "message": { - "type": "string", - "x-order": 1 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, - "x-order": 2 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeQANMySQLPerfSchemaAgent": { - "post": { - "description": "Changes 'Query Analytics MySQL PerfSchema' Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change 'QAN MySQL PerfSchema' Agent", - "operationId": "ChangeQANMySQLPerfSchemaAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 + "x-order": 7 }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", - "type": "object", - "properties": { - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", - "x-order": 0 - }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 - }, - "custom_labels": { - "description": "Replace all custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 - }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 - } - }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { "qan_mysql_perfschema_agent": { "description": "QANMySQLPerfSchemaAgent runs within pmm-agent and sends MySQL Query Analytics data to the PMM Server.", "type": "object", @@ -8251,146 +7940,39 @@ "type": "string", "default": "AGENT_STATUS_UNSPECIFIED", "enum": [ - "AGENT_STATUS_UNSPECIFIED", - "AGENT_STATUS_STARTING", - "AGENT_STATUS_RUNNING", - "AGENT_STATUS_WAITING", - "AGENT_STATUS_STOPPING", - "AGENT_STATUS_DONE", - "AGENT_STATUS_UNKNOWN" - ], - "x-order": 14 - }, - "process_exec_path": { - "description": "Path to exec process.", - "type": "string", - "x-order": 15 - }, - "log_level": { - "description": "- LOG_LEVEL_UNSPECIFIED: Auto", - "type": "string", - "title": "Log level for exporters", - "default": "LOG_LEVEL_UNSPECIFIED", - "enum": [ - "LOG_LEVEL_UNSPECIFIED", - "LOG_LEVEL_FATAL", - "LOG_LEVEL_ERROR", - "LOG_LEVEL_WARN", - "LOG_LEVEL_INFO", - "LOG_LEVEL_DEBUG" - ], - "x-order": 16 - } - }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "message": { - "type": "string", - "x-order": 1 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, - "x-order": 2 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeQANMySQLSlowlogAgent": { - "post": { - "description": "Changes 'Query Analytics MySQL Slowlog' Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change 'QAN MySQL Slowlog' Agent", - "operationId": "ChangeQANMySQLSlowlogAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 - }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", - "type": "object", - "properties": { - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", - "x-order": 0 - }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 - }, - "custom_labels": { - "description": "Replace all custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 + "AGENT_STATUS_UNSPECIFIED", + "AGENT_STATUS_STARTING", + "AGENT_STATUS_RUNNING", + "AGENT_STATUS_WAITING", + "AGENT_STATUS_STOPPING", + "AGENT_STATUS_DONE", + "AGENT_STATUS_UNKNOWN" + ], + "x-order": 14 }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 + "process_exec_path": { + "description": "Path to exec process.", + "type": "string", + "x-order": 15 }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 + "log_level": { + "description": "- LOG_LEVEL_UNSPECIFIED: Auto", + "type": "string", + "title": "Log level for exporters", + "default": "LOG_LEVEL_UNSPECIFIED", + "enum": [ + "LOG_LEVEL_UNSPECIFIED", + "LOG_LEVEL_FATAL", + "LOG_LEVEL_ERROR", + "LOG_LEVEL_WARN", + "LOG_LEVEL_INFO", + "LOG_LEVEL_DEBUG" + ], + "x-order": 16 } }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { + "x-order": 8 + }, "qan_mysql_slowlog_agent": { "description": "QANMySQLSlowlogAgent runs within pmm-agent and sends MySQL Query Analytics data to the PMM Server.", "type": "object", @@ -8511,117 +8093,10 @@ "x-order": 17 } }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "message": { - "type": "string", - "x-order": 1 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, - "x-order": 2 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeQANPostgreSQLPgStatMonitorAgent": { - "post": { - "description": "Changes 'Query Analytics PostgreSQL pg_stat_monitor' Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change 'QAN PostgreSQL pg_stat_monitor' Agent", - "operationId": "ChangeQANPostgreSQLPgStatMonitorAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 + "x-order": 9 }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", - "type": "object", - "properties": { - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", - "x-order": 0 - }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 - }, - "custom_labels": { - "description": "Replace all custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 - }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 - } - }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { - "qan_postgresql_pgstatmonitor_agent": { - "description": "QANPostgreSQLPgStatMonitorAgent runs within pmm-agent and sends PostgreSQL Query Analytics data to the PMM Server.", + "qan_mongodb_profiler_agent": { + "description": "QANMongoDBProfilerAgent runs within pmm-agent and sends MongoDB Query Analytics data to the PMM Server.", "type": "object", "properties": { "agent_id": { @@ -8645,7 +8120,7 @@ "x-order": 3 }, "username": { - "description": "PostgreSQL username for getting pg stat monitor data.", + "description": "MongoDB username for getting profiler data.", "type": "string", "x-order": 4 }, @@ -8659,21 +8134,11 @@ "type": "boolean", "x-order": 6 }, - "disable_comments_parsing": { - "description": "Disable parsing comments from queries and showing them in QAN.", - "type": "boolean", - "x-order": 7 - }, "max_query_length": { "description": "Limit query length in QAN (default: server-defined; -1: no limit).", "type": "integer", "format": "int32", - "x-order": 8 - }, - "query_examples_disabled": { - "description": "True if query examples are disabled.", - "type": "boolean", - "x-order": 9 + "x-order": 7 }, "custom_labels": { "description": "Custom user-assigned labels.", @@ -8681,7 +8146,7 @@ "additionalProperties": { "type": "string" }, - "x-order": 10 + "x-order": 8 }, "status": { "description": "AgentStatus represents actual Agent status.\n\n - AGENT_STATUS_STARTING: Agent is starting.\n - AGENT_STATUS_RUNNING: Agent is running.\n - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon.\n - AGENT_STATUS_STOPPING: Agent is stopping.\n - AGENT_STATUS_DONE: Agent finished.\n - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state.", @@ -8696,138 +8161,31 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 11 + "x-order": 9 }, "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 12 - }, - "log_level": { - "description": "- LOG_LEVEL_UNSPECIFIED: Auto", - "type": "string", - "title": "Log level for exporters", - "default": "LOG_LEVEL_UNSPECIFIED", - "enum": [ - "LOG_LEVEL_UNSPECIFIED", - "LOG_LEVEL_FATAL", - "LOG_LEVEL_ERROR", - "LOG_LEVEL_WARN", - "LOG_LEVEL_INFO", - "LOG_LEVEL_DEBUG" - ], - "x-order": 13 - } - }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "message": { - "type": "string", - "x-order": 1 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, - "x-order": 2 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeQANPostgreSQLPgStatementsAgent": { - "post": { - "description": "Changes 'Query Analytics PostgreSQL pg_stat_statements' Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change 'QAN PostgreSQL pg_stat_statements' Agent", - "operationId": "ChangeQANPostgreSQLPgStatementsAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 - }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", - "type": "object", - "properties": { - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", - "x-order": 0 - }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 - }, - "custom_labels": { - "description": "Replace all custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 - }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 + "x-order": 10 + }, + "log_level": { + "description": "- LOG_LEVEL_UNSPECIFIED: Auto", + "type": "string", + "title": "Log level for exporters", + "default": "LOG_LEVEL_UNSPECIFIED", + "enum": [ + "LOG_LEVEL_UNSPECIFIED", + "LOG_LEVEL_FATAL", + "LOG_LEVEL_ERROR", + "LOG_LEVEL_WARN", + "LOG_LEVEL_INFO", + "LOG_LEVEL_DEBUG" + ], + "x-order": 11 } }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { + "x-order": 10 + }, "qan_postgresql_pgstatements_agent": { "description": "QANPostgreSQLPgStatementsAgent runs within pmm-agent and sends PostgreSQL Query Analytics data to the PMM Server.", "type": "object", @@ -8922,117 +8280,10 @@ "x-order": 12 } }, - "x-order": 0 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 - }, - "message": { - "type": "string", - "x-order": 1 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } - }, - "additionalProperties": false - }, - "x-order": 2 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/ChangeRDSExporter": { - "post": { - "description": "Changes rds_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Change RDS Exporter", - "operationId": "ChangeRDSExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_id": { - "type": "string", - "x-order": 0 + "x-order": 11 }, - "common": { - "description": "ChangeCommonAgentParams contains parameters that can be changed for all Agents.", - "type": "object", - "properties": { - "enable": { - "description": "Enable this Agent. Can't be used with disabled.", - "type": "boolean", - "x-order": 0 - }, - "disable": { - "description": "Disable this Agent. Can't be used with enabled.", - "type": "boolean", - "x-order": 1 - }, - "custom_labels": { - "description": "Replace all custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 - }, - "remove_custom_labels": { - "description": "Remove all custom user-assigned labels.", - "type": "boolean", - "x-order": 3 - }, - "enable_push_metrics": { - "description": "Enables push metrics with vmagent, can't be used with disable_push_metrics.\nCan't be used with agent version lower then 2.12 and unsupported agents.", - "type": "boolean", - "x-order": 4 - }, - "disable_push_metrics": { - "description": "Disables push metrics, pmm-server starts to pull it, can't be used with enable_push_metrics.", - "type": "boolean", - "x-order": 5 - } - }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { - "rds_exporter": { - "description": "RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node metrics.", + "qan_postgresql_pgstatmonitor_agent": { + "description": "QANPostgreSQLPgStatMonitorAgent runs within pmm-agent and sends PostgreSQL Query Analytics data to the PMM Server.", "type": "object", "properties": { "agent_id": { @@ -9050,23 +8301,49 @@ "type": "boolean", "x-order": 2 }, - "node_id": { - "description": "Node identifier.", + "service_id": { + "description": "Service identifier.", "type": "string", "x-order": 3 }, - "aws_access_key": { - "description": "AWS Access Key.", + "username": { + "description": "PostgreSQL username for getting pg stat monitor data.", "type": "string", "x-order": 4 }, + "tls": { + "description": "Use TLS for database connections.", + "type": "boolean", + "x-order": 5 + }, + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation.", + "type": "boolean", + "x-order": 6 + }, + "disable_comments_parsing": { + "description": "Disable parsing comments from queries and showing them in QAN.", + "type": "boolean", + "x-order": 7 + }, + "max_query_length": { + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "type": "integer", + "format": "int32", + "x-order": 8 + }, + "query_examples_disabled": { + "description": "True if query examples are disabled.", + "type": "boolean", + "x-order": 9 + }, "custom_labels": { "description": "Custom user-assigned labels.", "type": "object", "additionalProperties": { "type": "string" }, - "x-order": 5 + "x-order": 10 }, "status": { "description": "AgentStatus represents actual Agent status.\n\n - AGENT_STATUS_STARTING: Agent is starting.\n - AGENT_STATUS_RUNNING: Agent is running.\n - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon.\n - AGENT_STATUS_STOPPING: Agent is stopping.\n - AGENT_STATUS_DONE: Agent finished.\n - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state.", @@ -9081,33 +8358,12 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 6 - }, - "listen_port": { - "description": "Listen port for scraping metrics (the same for several configurations).", - "type": "integer", - "format": "int64", - "x-order": 7 - }, - "basic_metrics_disabled": { - "description": "Basic metrics are disabled.", - "type": "boolean", - "x-order": 8 - }, - "enhanced_metrics_disabled": { - "description": "Enhanced metrics are disabled.", - "type": "boolean", - "x-order": 9 - }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", - "type": "boolean", - "x-order": 10 + "x-order": 11 }, "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 11 + "x-order": 12 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -9122,16 +8378,10 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 12 - }, - "auto_discovery_limit": { - "description": "Limit of databases for auto-discovery.", - "type": "integer", - "format": "int32", "x-order": 13 } }, - "x-order": 0 + "x-order": 12 } } } @@ -9449,6 +8699,12 @@ }, "x-order": 13 }, + "table_count": { + "description": "Actual table count at the moment of adding.", + "type": "integer", + "format": "int32", + "x-order": 14 + }, "status": { "description": "AgentStatus represents actual Agent status.\n\n - AGENT_STATUS_STARTING: Agent is starting.\n - AGENT_STATUS_RUNNING: Agent is running.\n - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon.\n - AGENT_STATUS_STOPPING: Agent is stopping.\n - AGENT_STATUS_DONE: Agent finished.\n - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state.", "type": "string", @@ -9462,23 +8718,23 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 14 + "x-order": 15 }, "listen_port": { "description": "Listen port for scraping metrics.", "type": "integer", "format": "int64", - "x-order": 15 + "x-order": 16 }, "tablestats_group_disabled": { "description": "True if tablestats group collectors are currently disabled.", "type": "boolean", - "x-order": 16 + "x-order": 17 }, "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 17 + "x-order": 18 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -9493,12 +8749,12 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 18 + "x-order": 19 }, "expose_exporter": { "type": "boolean", "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 19 + "x-order": 20 } }, "x-order": 3 @@ -11087,6 +10343,12 @@ }, "x-order": 13 }, + "table_count": { + "description": "Actual table count at the moment of adding.", + "type": "integer", + "format": "int32", + "x-order": 14 + }, "status": { "description": "AgentStatus represents actual Agent status.\n\n - AGENT_STATUS_STARTING: Agent is starting.\n - AGENT_STATUS_RUNNING: Agent is running.\n - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon.\n - AGENT_STATUS_STOPPING: Agent is stopping.\n - AGENT_STATUS_DONE: Agent finished.\n - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state.", "type": "string", @@ -11100,23 +10362,23 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 14 + "x-order": 15 }, "listen_port": { "description": "Listen port for scraping metrics.", "type": "integer", "format": "int64", - "x-order": 15 + "x-order": 16 }, "tablestats_group_disabled": { "description": "True if tablestats group collectors are currently disabled.", "type": "boolean", - "x-order": 16 + "x-order": 17 }, "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 17 + "x-order": 18 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -11131,12 +10393,12 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 18 + "x-order": 19 }, "expose_exporter": { "type": "boolean", "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 19 + "x-order": 20 } } }, @@ -19451,6 +18713,12 @@ }, "x-order": 13 }, + "table_count": { + "description": "Actual table count at the moment of adding.", + "type": "integer", + "format": "int32", + "x-order": 14 + }, "status": { "description": "AgentStatus represents actual Agent status.\n\n - AGENT_STATUS_STARTING: Agent is starting.\n - AGENT_STATUS_RUNNING: Agent is running.\n - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon.\n - AGENT_STATUS_STOPPING: Agent is stopping.\n - AGENT_STATUS_DONE: Agent finished.\n - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state.", "type": "string", @@ -19464,23 +18732,23 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 14 + "x-order": 15 }, "listen_port": { "description": "Listen port for scraping metrics.", "type": "integer", "format": "int64", - "x-order": 15 + "x-order": 16 }, "tablestats_group_disabled": { "description": "True if tablestats group collectors are currently disabled.", "type": "boolean", - "x-order": 16 + "x-order": 17 }, "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 17 + "x-order": 18 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -19495,12 +18763,12 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 18 + "x-order": 19 }, "expose_exporter": { "type": "boolean", "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 19 + "x-order": 20 } }, "x-order": 1 @@ -22185,6 +21453,12 @@ }, "x-order": 13 }, + "table_count": { + "description": "Actual table count at the moment of adding.", + "type": "integer", + "format": "int32", + "x-order": 14 + }, "status": { "description": "AgentStatus represents actual Agent status.\n\n - AGENT_STATUS_STARTING: Agent is starting.\n - AGENT_STATUS_RUNNING: Agent is running.\n - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon.\n - AGENT_STATUS_STOPPING: Agent is stopping.\n - AGENT_STATUS_DONE: Agent finished.\n - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state.", "type": "string", @@ -22198,23 +21472,23 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 14 + "x-order": 15 }, "listen_port": { "description": "Listen port for scraping metrics.", "type": "integer", "format": "int64", - "x-order": 15 + "x-order": 16 }, "tablestats_group_disabled": { "description": "True if tablestats group collectors are currently disabled.", "type": "boolean", - "x-order": 16 + "x-order": 17 }, "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 17 + "x-order": 18 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -22229,12 +21503,12 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 18 + "x-order": 19 }, "expose_exporter": { "type": "boolean", "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 19 + "x-order": 20 } }, "x-order": 3 diff --git a/api/swagger/swagger.json b/api/swagger/swagger.json index 5c33e712f4..d2e5df609e 100644 --- a/api/swagger/swagger.json +++ b/api/swagger/swagger.json @@ -4287,6 +4287,12 @@ }, "x-order": 13 }, + "table_count": { + "description": "Actual table count at the moment of adding.", + "type": "integer", + "format": "int32", + "x-order": 14 + }, "status": { "description": "AgentStatus represents actual Agent status.\n\n - AGENT_STATUS_STARTING: Agent is starting.\n - AGENT_STATUS_RUNNING: Agent is running.\n - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon.\n - AGENT_STATUS_STOPPING: Agent is stopping.\n - AGENT_STATUS_DONE: Agent finished.\n - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state.", "type": "string", @@ -4300,23 +4306,23 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 14 + "x-order": 15 }, "listen_port": { "description": "Listen port for scraping metrics.", "type": "integer", "format": "int64", - "x-order": 15 + "x-order": 16 }, "tablestats_group_disabled": { "description": "True if tablestats group collectors are currently disabled.", "type": "boolean", - "x-order": 16 + "x-order": 17 }, "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 17 + "x-order": 18 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -4331,12 +4337,12 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 18 + "x-order": 19 }, "expose_exporter": { "type": "boolean", "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 19 + "x-order": 20 } }, "x-order": 1 @@ -6575,6 +6581,12 @@ }, "x-order": 13 }, + "table_count": { + "description": "Actual table count at the moment of adding.", + "type": "integer", + "format": "int32", + "x-order": 14 + }, "status": { "description": "AgentStatus represents actual Agent status.\n\n - AGENT_STATUS_STARTING: Agent is starting.\n - AGENT_STATUS_RUNNING: Agent is running.\n - AGENT_STATUS_WAITING: Agent encountered error and will be restarted automatically soon.\n - AGENT_STATUS_STOPPING: Agent is stopping.\n - AGENT_STATUS_DONE: Agent finished.\n - AGENT_STATUS_UNKNOWN: Agent is not connected, we don't know anything about it's state.", "type": "string", @@ -6588,23 +6600,23 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 14 + "x-order": 15 }, "listen_port": { "description": "Listen port for scraping metrics.", "type": "integer", "format": "int64", - "x-order": 15 + "x-order": 16 }, "tablestats_group_disabled": { "description": "True if tablestats group collectors are currently disabled.", "type": "boolean", - "x-order": 16 + "x-order": 17 }, "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 17 + "x-order": 18 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -6619,12 +6631,12 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 18 + "x-order": 19 }, "expose_exporter": { "type": "boolean", "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 19 + "x-order": 20 } }, "x-order": 3 diff --git a/build/docker/server/entrypoint.sh b/build/docker/server/entrypoint.sh index 51f79746dd..df1e5b755e 100755 --- a/build/docker/server/entrypoint.sh +++ b/build/docker/server/entrypoint.sh @@ -2,7 +2,7 @@ set -o errexit if [ ! -w /srv ]; then - echo "FATAL: /srv is not writable by $(whoami) user." >&2 + echo "FATAL: /srv is not writable for $(whoami) user." >&2 echo "Please make sure that /srv is owned by uid $(id -u) and gid $(id -g) and try again." >&2 echo "You can change ownership by running: sudo chown -R $(id -u):$(id -g) /srv" >&2 exit 1 diff --git a/descriptor.bin b/descriptor.bin index 2918cdd14ccc29b4e1fed8efff4ec46c7c6918cf..709d83ede2ed68a67b318291550c8886ed216b14 100644 GIT binary patch delta 36952 zcmaLA378etwf5hqYFC{)r=g)w0}aj4hk3G_p#i}eha?&`IOS&e3_;j0g(`b1W^%#$l!>G3{D^*qX-Bws5k@%zTetIm-qjD|1ZyDIB)I!u07OR z?_RZQ=#>Y$KlozzFn?I-w>rk>Uew`t`P^k=MqfAbnu~_rSm>XRZy9#|uSVS5GE)q@ zmG*60d-bRrZWuMPwxLSx4^8=bBgc&X&84n#)u4Q-IjjeN7S!cthWWUlN=h2(ao>rW z>61IfYiskr$_FY_Q2CNZnX2oGgNwf&J?zFCM~p81=cv)e8;0HZ)0<5nuC)K?t2@PY z!#G?VHgb4zSaIa9uD`x$I#!$Kf1%1`3SmAe&zI(v$^<2aurz3&ZV6Z;DIxOnf_Xh72tMjE}hFx|2h@n@H`qjuWEt?cG z-J(nL=FmBEM9+RdxMJCfeZlvt)w`K|rJnO_SXp0aosUP16dqHZ>6U!2s_)ZbNMYFP0r@L-{dDu~3 zTL`N%Kh|sFuvs=T)6zrCG}CRb2%G9vg|IcHjapL49nb%eAI0(V z3-XOd55IZnh+A(QHG0g5(Jd2ww0~HodtVurRt_09de{v&b9zdta-OSExK2;LkQyIW zgmI>qY5swsVRPNO8MAz&KCM~UG1Et1@{_Pq-`a<+&8`h&eP6S%P39WCxD|D3ZQ=3% z2+Q^Cz7&4mj1k_b%bTanQ9p)xW%IB@<_hzDBhI^Ok*5MyAt$&wqX=xXa8a~3$fSne-x_>x)S<)^nhGBiaN`G{joQHOty*2&A ztCtlzghxU(Hj{5Hr?h$eZPGuxgv~?!P3JJLKfm0bxY(NetVj5#z?PgWr>=2NZ*P2U zcqoujchsZ$gl%P7ZA;myalY-~;lp+NABD}9F`-`u>W)mls6YA-&Jx&GQ}bhv-8e8T zE_-D_7>Cx>&{M*;-|m`P8Rfg`vs#2L^rq&VAF5uif7UhpuVwpA4PVZv$(ei)J@|~U zlbi`>__HYAO(@;c+Pd=7pqc*D=Rpg-ds0%htjk&9@{Io5>C$gGIgQWs!|HHO_`RU& zxA{st&6l2g+5csh)y6R2O8>8lu+_3*-wBsy>;ygKeArH%+8E{A=}i}e?et@Ww4WBRF|3sM27NU}p zr}B24Isf#yv_so`E+2%5epJ%M{0s_VT+-eAMEtWQUG&gF`O5sjd=QlsRHKr%`qiI@ z1M3?_WwMw=C9;?_4%*6sAplE_gO(m)ta0l$t|CQcL2Fke3sPCo!Xqk{wW@Lz0ZoD` zR}@gOiCvzsA4pltR{46{Ha%<_RJ)ooilz;`keW@~wsR&`AuP8m9!6MKL1v8;M8)#z zqN^Ac!a~r&S&XPyXc${W#X_;YsaRhUuxwTY9bL_sniWAikEmJEzJoKFEriV)DrTwJ ztf69-ip?4-CWWwhaFVl;P_cQ?)gvl4@6pp)%oXax7D0DcmZN5ipp!?`Y|*uwtC=r^ zl|hXw%2Tnj!DOC_l|4>!6-x_Y%b=gDSW3l~L9ItrY}u#IRcyop6ZEflWsRuWD(K}A zHCy%V=V~@)-D&7nV=7iPjJq)vtJ-&T70XzH8qQ)F6qW z9XWALsM)5WfhN>!)3tkk5P1`hS}f_U=Ug2QDk~;U^QV*b7)R}(hs_WB>)HREaO=}U%(r}XI5P+xqvQ_eWK)S!MRoV=&0PcORY_FGwY zi;W}I7mvkHy14WT1hq>G<26tNs9m~r%?~wHKn>crdRKgk{@#eNbB~%Jc6}1puE{p_ zNNQFz&v!C3T)USZ_Pel6e>)n53-@a1tN41aoCzixR4{wBt|LU&^^F0PN zkYv6F<$Q)I^EHSNmXnf^cs@%Xy)EqDPkIk#y3Pt3n~{QGo>kV&BbaAZwld?+$lRT6 z#_gCP<378gO_{N?-MFbMl^J($(DlSdhI$U z>%s<-OxA^NvZw~>LMH2bbliyF#X9qg@PZx}JJ;YC^)JpgF;fJh{>6m~i84 zcgWlhajr-q#39ZVK@f-FiYJ?fn4wF9qTakDtkGZog8p6F(4NfBrCB56^hjps(sp)Y zgMewgT=)8A*mvONLEiN!l7po-xTpd9@Mb9lRtG{fJ;F7 zsq+F5q@Qv^;;(BFzE_LnoVcg@&hRGDQz0#dZ>cYIz`A-m_wnL5o=-aNRxuFdt zQQo1>b*KhuD6Z4RG?y!c!}O9rlP|0n(y)eMiU0(1dgoi(HLpY?z z@P=6wDIT6R%O8WtQ+;@=*7>XOv9J(bTk>ap+YRAWW!EMx%-n?HW4~zdF{SS>BPxI4 zdQ2(Se&HMqgtcEdM+?P0uD6bM&q#WFeFI4x?Rw{ERD*QAbF@&Ra-=xgxqbP~2^{G< z4uUn(xf=-9NZhRh;|vAd7_`(sh*e81;?a*okZ){gQe5uFT!lINlu7*-mH9eD#^pu_ zEvmZc!6!(GcV3ZH_6|*8j&7if>y2(0rnuf{hADm!N+-wYJ)^?DJ;pTjRh(^1);c0J zs6VE0S^hLrA7{HoU-CfM?}48p0bvkh;Fboac-$@S^iT%#7P1qGjZi%9R(;dtu$R#t zFw9#U`Y0ZEYtDuvWiW4Tm>)duHl5rQcIt6kLw#|!+Zx6s&URbFm~gh=>K^x_Q~!Na zn6Le914*3iw>i5UgvQx^%X08>#`G^=-~uA(pN(2sEK;)ZK%vDcxO(`5Kp#ZW4b&sgKjv8nTZ*M z!$HhU%yjFKKh>BiD{x^Fw9^0DlJs^%E`!f8KV-5BU{c}uW$^FHv}l<>!|D7jQ}oC&VXr<-X>Ce|^JD8Zg*GLF?l=f- ziqO7qS}QN8sd~eh@ccgI(59wyRSs=xCR=p0a%fXC9Xsbc8(N{Drs<#mE^JR&6(CMa z+bckvmO-*?d!(sAG^?v2Ruq)Zh-h_yS-}8xI?WX@bq3wC%nF!Vdin#yY*tXyGy48X z;RP_8(dP8Dv&~>m&k!S)*$n3N3>x;IXqYO*GczS?^-Z^gBbv<2B$Z~K6)L7?=}dii zimv{37}w77BcKFpvogeiSOa2hR)#=0n|^SyRZw#>B4VfO`-M0sC8A=KA!C+^i~-TH z^9_*&du~RA>?~az8>#_lEu)z0M*)OBH-ny8IuZsXU^^N*XkNxDTAO}K#7wX~%RspE zGRT?bB4T+ywM6pKLB0Wm@-8vHhQI? z6y`>+6cHJZ+MFsyzV~L|cZwix_8I|%xY=t&B(hq5z55WzvJQ`OReQ@~#NP&MqHx zKtWJDj>#hTv`KS+t949A7&CO5{kKdU4%#R(2xzD^G12OlRkKS0~ z>Iqc&;gn_V+`w)%=edR-V z0Fai!HuivUzw#jrG_?s~xf+Nigufw#^cL*63F8Nmzz-vaeUyG z`&a^*O>SB4b(6c9rwM^e^C^NjA#iCv5aNWut@g2m^2ETc_B1M?4EDX1P@WjLOrKJ? z69c!}#}dkS1$x|V;YsHJn6~#Z^SiUQ8xjv;Bx+`$GJ`h891#Z!gC6*@#vP~f4 zmSCP7xO5!|b8_I)bs)^i0TChzM=ZfSC6K*>lVD0TPvPp`bwQ$eO5iefN?}eBrbKfr z(L6Pfy@DbqNy2$*%9L=P8o1n>QkYW%mwU$&&eQZ`e-1lBY)ogTrK6T`o));&n^K6= zq)7?NSi)KB$&PAR6Ufakdc82uhyUW%q<*n#>52YLg^oB^qby zDfh67&h(w;AckfJE&~N(XlCHj?W_dLtiYt({QwMiR?3t(oE5lyn^Ksw0+(-RB@X8V zHs5~i-Z0;Lj_*4~5a$Fg(*{DE6Szz}D`;-uGVK9C8U@?41B5#_aG5sH)FuSwQa&po zI4>Xs&pZ+KuLHsbd#*&^ymY7%ee-0f;uBekzWFx#_$?squteW{AAOWUobRJAE77;W zL?10m^esq<5`7E&S)vr;0*O9JnX?jo3-yhY!&7P&rk#|yTNtoyAelXNpe#%$hqzm$ zw@eN@*DOjY5^jsqaY?u>O2v4CofP7i zf|8^9%BkT^OQnmhn|`eI{QzQat#=F{=GOYyP9zG~x!4B4T$eH> zw%7UCrWEEnAKQt<_IelFaxMM9G?tF_{#;QEdA*NsAmsJlg%d#=8sZyB!(bbuK)4%x zd;?8w7vG7*_ojyU2Eqk&eAm^yo_19t`*k1L)PeH4kL*Mu z`%Q`LGi%;VDH79f`k1B;lsA1$Clb?dOHB9EM;{<@e>?4+1oqoLu&D^|?Q~WM?5z^m z)pdzkO}C~*3Gc1xuq3>BRj?6m+0^RU+fAk4!On5|6zi0FTk z4ONvEi#LoKUL14X@ZZ>kCJAIakTUP065#*z%0MZ0{^^w=k;~?P1wmDne)7*@=Q@6R zD{{^JFRu&KgZ3|J{@3V2t`L6`l>9N2XT$W8)7fzU_0+JvK5s@iu*oN~_@Bl@Upd_5 zSfI=6l74#ij4=1TV?k*nGjq9|sKmD+(QRO<@bHpPgFx=mC;(dXX;9k9C{Iq5=L=o_ zAo;`>euNyv+85qifpql?uQ@qUhT~3i0L;ztlqs5X+-nY{Fpqo9$%*ECOi>c9V0WH)BJ+d}erB?bxt^ zBRVrSbSV>+;EWAj9+4BB86WD8riCZzArBEA& z*|nB03ZGza9!NubIe=2G^MA&BV~Hx72|$ksIhH zK5~-4-=%MyMSR>9x}2YbQ0@v{&JTogSLl|?oaF73Lz8aPzZ|`t9J+KH2y=4i(rqBj z$srCZNpnu5W{SS)QTD6(&A_Ilb170YC3HD6r4XltE@#e3o<21+`_+2!>@e;(l^Ymt zcp^1ZLzgpC6XH~9ah%-G&KF`GmMkMCZZ7IRKj9u-c20O@6CEa9jPK^fcc<&0&u9Pn z!!}V|Gu`)y5)4oGXBUX!>2h{u|2Z$NHbd{86P{Z$Bc+Jv5>$5QnL1Ergf0`#i|5YN zmpmMPAHQ|3z(FW8Lze>sq09_j4$MdGX+Ry2&H>;XLn$9E38@`ymj@Jn=)xy7S_?^Y#6Yuqw|_Cr4a&zK;{? zK$-93BrmSJKp%Z1JhOH|N)gvx-~)s@P!>plNPd_X*IgLe{18Al7kZ}$!d&Q`9td-x zclx}z?&Hqs0Wcr;P7j3nxOaLW%*Vac=f!uQv`)`&X7S1NEQs$u>7AZZh);T_&&x9T zly&<40GfQtdp!{5Q{L-=FrShp$BWmO7UJb$$qv2gFX6Z*%fqCr@%2*i^%dglXVt9m zec&LLR(MYUVrhkU^HTB7mEz`S)bX3nuS|*J>?^&qQwnjVclJ_o_SNF-=MCUD#MS;3 z0U@sTE)Rsb+Pi$Ipy#~H4+O#mTfYUuea^c)(A37|&*Su#ip#%%%U7K&o2T9NgY8sB zKaOI8!`_6r{tM}V#r0qCs$D8weaWgeOmX^`(vFMMzvSJKQkXA!cPtgBUu$KXA&YFU zO_}2RYrR)e3UjS^rG#6l`2IQ{Zu-8zkr4rHq)`ZUosTpi)O9}6N+kx?i{f8QZ)Njk zy^l8_#PvSjfDqS9yvcP|sYJqtFul&=0PGEEvl0y(LU)}-DeMiQyUr?=XxQZ92*AiU z`8Wc?+~ng32y>H_75 z>FXa0f86g_+FuElW1-u#Yh;4um{5io3c>Pa7<8;^TRdB@-WE60lb7)LaI+<0?;4KV zfNNyp=F2c^uP1;s`(?=WM6Izw+MCi6gsY5F#LLP#UM5&QP$vFMd3KAuLGtJ|;RqD=xM9Dbi5+zC@j#DmC zY9vu|yE2Iq^C@e_?cC{fObM3TmCKYUg?YPTa^z+~BMFu}^sdLlfwgyVPuEc-O72kZ zE&+9*+@ZKja4}KRxDem1N@nZxo(L~$a<_8#=o(9uOwx0n;A&u!?==T8G)cKs8Hk}t zihM(EdNmebzE{a3mA&OM{F;ULO5+9TGEl-9+dQavS zwyPuNCM%axQ3uLoall1|BZ8q3-;UD+G?0L)BRF3ktRoUUA&4}>{g z5u=ikHI}7ihT;jDo5qAa7_6)=U_V${U1lg3X_Ug9p(gS{;31NoSB{; z36`14c|N5uXDa9UjU`xS8P6ZYZ-}$fCM9HMdC#X5;w##Deq;txalH2XnEMDW>HEJ?_8vET}_ab87W_+ zczj&EvrM|SSnK8CcWW1?6miMLDrcXtq7JPrRy><2o>e9;xx{+bK!8Ecvw$#{c+UdD zTq2$&>R%>4`Ly~U>VHu!2dwT>4Ebs0t|5VtpB9}G-7gcjT(0yDkA;^qE#j2R(+-PM zF85AJDa_@rG6}U{Kd$m>IegLLrwO3#u%++3jfiPD~|AykhO$zY~s^nGu;IrY+>R(Xo*IYrb zn~2N4q=ME}-z}auQeJf{j=A=_n~Q_xO|V+~&&|bQqem3&`)9+8SN*0qe8hha`_=Vh ziod>g#7L@-_)YPe5o3zOh7TVxoOl03NHL3(V7CD>kuRxId$*xU7ZVOIsiyW(E^5=$ zmz29<(L_9VtqN-O!Ifd%c^NE$yrm37UaLy&(|uGmb=!1z%}S80RVUTt`O$tQm9Jv=DDpCEHb| zZ(O|ax|_%3d8;5)vgfu@@hHtSdF-aC%U zg{W$(E`N?~;%3i>zpUYaZ&4sBNnF=ul^rmV!cY9G2RH!th%Rjqsa+L+p_ zYURxsnRMKFp9=cA!U)SiZ%MN0eLjk)%kcK8HZ{I7miDRMeXvw7rl|a0YAVJQ(3=uz zelIm8()?a(N~HNcYf3C3&HGhwwreMgC7`z?>BD|i>itA?dVjs@c)G8Rsr~A#!ESsA z_4_I~%@rn?0(w&krruYj_U>W1$+_QG#glzyEWNKzIn`N0xDTk{99Jk$3ILs@db5pl zAnlb1`hm1ll3pB8XPxa#A?OEHaEUXO#}v?aN-ks%s#1UIMduHy9^dzsv2;*fJj7W- z=MSmivU*oqiYc%+CBlD5mGSe06RC^whDhgGFjP#~5LD|UIU zdvfFChzibdmddaM^p?u7bVQXB<`0iNlZm34Z&IqL6|mlOMXtU{xguBJq+I0cgi@zE!=g_> zf4W4UPN+5md@0luYLIw^G>hAejZ}YED0&3+rz@$4J2q-%g`UcA$3}JXGNf=3q;Zk5 z(guPH^v#L@jf)zZ6#*I-4YFERAsOZPNL}EX6~zJi6C#Q;KI(XGzHvRiO=Y;_qwk*Y znniMMkJN>ZD-r|rULv{W?NO)i_)@61N9TXvQIVJlkvhp0ilzYl9E+w*h#Jn1Yz)*- zh`RT5T-g~&`zRs;w3%Xs5s^EhruI2PAly45b_nc5AtDnaWo5l05Y+(Ml@>^|6Qim= zu2XUsc4E|TK)xkW+q+pIz9%Y~5@q`4MKy}okGke&o5smo2KPisYja80OhWX&$VtZ) zKs*s_wF5}y`y#jR0HlrkBBvcdoZ!C5X@@|o9rs0OhisEJlPJDl|M|6WK>huxQHkFB zqg-ALPR*$i`zJCT&84q@jCkK!lnX?_0j;J2>G>a{ zQv1FG5b7VJf>oF1!4IVCe~e5vC#EQ!7P;&Q1Q%#W4K$_h!VL&@T0}N<3LR`wh#!nf z7U{ol413p`WUvLbAB@mq(Zm*_i8G_%QKyMuif2Y>qKu)1jNze3Ss4IvN`Y34fz*8{ zYGIdkAPqkhaa+hzDV*hTFW<)VqRBW2^Ug^@&{ok<|n z*-;xSKR~FnBbR8k5Hu%JHqipnW1w-^dd4G~I45drQ!AjUZBi>4EvM+=NcA&k3n$DES6DOD0Wpr?u?&W-9DxT1-3Q!bSsNx7nlK+hFPd?amF zB=M1yiX_g9R1eoDkwl=?wHD^mdS2AZrpYaWdbzfqC!S#^nQ-_^q|S6)(L|sXrxqqh z`%BdE6kiJUFVX2|I4Y7jKT_wpLXkwE_Y#rB`B7(YSR`?NboRM+m2DxK_}8>q(L`W- zXG%2juTh6V9>V==beeA#NnDUNE0PHG&59&0NSl?*?FG`T9W0Vq|F=k8<_wD_0=*B3 zCjKot$!2UV%x3A|BA2nXkj>JCk-EZBMG}ElT`7dRFsk{1FQwUq(WRHuY@jL&@#3gt zwUdYXN~$i7Tsl%Iq4!u6ta70TruZ=*dX*A-OT5#AXccI)5g>J!L@pZv(&`c~7nKqq zkNdR(1QpoSCa+*q>{1FK+{YuAQdG)?>JyPmDL`<6Hl+YUeIjxx1rX{JkxMBm1w9$L zlmY}5Xfq06re3g1DZr+-ODQTP^p^Vb0fGy(OBRr3m-;0O2z6=XQi@8sw0bI~O6UPS zRYLD6ORbL-mEk^>a;dy5T;irRMt!AJ(D&op$D{TQEBevJ>!!gAlzr7I^Qgzw<2v;LJ#PhmC##}HY=gGqM=#2 zOYy8ELFVGU(%h#2TcH8Meb!__ER#UE&-x^&QbKQ~Pl7-+3$#fP5b8>w1OcJ0v`J8) zS{CBxqLMdV=(VKgbM+BhApM#DmJ)i;N5LCW*r9XLenMu*MHiV}Hv7Sy;*B@lFm#yg zx)o0^_Bquq+R!lbypPb95}_|e$}R{XItR455s{VY&iO{t^mjyuu+C>-$b!}9%OD7QOT9?Y!(=6~6 zpQ3@_0`2|{5bi5cd%Jc5P38UrT#t#+btzRM6zHiEq3cqrMCiJxfl7qF8mW4l8MZVR z3}DZd5Pdb}N`$_ea%pFMr0jy-((F6~t>Xcqu8-PubJHjhx<2YDUr>=bCPH6})Y+~u zTaPKQT@ERQ`&!h+?q>kuz81OtjFu9i8zS{R$CU^L+H8eFs2ieg-m*mKhUmQSx@L*c zjcK#8I09LvB+GAULUd!)*kFNL+ zsDWx#h~JJ%4!SUFMa{P*S?|vLw~{E^5(Ni{vQ|antKJ0I|24Fz3w4VRtyU6R+kBvd z=n$}}=>d?s+akAs0qM{-zks!p0NC#53_Txx85%$U{l+zV69~F+nI7Dw1A!~p|vxm zN@(r$t57Rh{C1^OS^R*WDv`CTfm&}Czg;Pp%Depv*2;ty(5_%WxV!xd2Bg{DegSJG zp|!`aBp@sS?E(gby2meIK&X3Iz~qxbxP^q)UcZ!p-~w$#1L5xVO9>F}UcZ#Il1uS@ zX|obqK)ZlZ2z8%dz<^Nq`30;MkyWqWOPiI@0{UhpwBAdbmC$-GZI;m5?=Rz9ncF-- z??Mt<`~3n&Db)Rb0c$0T-}`O>>(AIFw7_-+1HygZuV6s9@5>6-hR~`i#783DihXE9 zSlObAibo>uX2>n{DhZDdqu?A}{$$wq3LstpwikpzDt{QcyXZiyei(5VT`oj{%>Rc` z+q2CUnm~IQ{9)8?u({V)C4PQX7q^Dp2Jo8>AC26tKA@CE?j|x2(?=uj!*r#?tqbv| zQOWo?qd(gi7Mr!E>ZcJmW96o5Yw7amk-p^f@boJHbog`MVIWmMkK9ddAXYz*xZffj z2GZfrqpCAahXvXWe;&0y!*sZ{bok%4!~CYh|MndQN}2C45Yzvb4xel~MZA9*@pwS> zp0IaaYje*QY#%KE!u>MJ+V}^;{W4T{$Hng9VM<|+i{1U9HidXXTyke@w@KSjb3&ZhuCqvqbe@@eT zj`FGrzadWJeNxw~IOnw3J=snv#A&g6vc0VgKyy;$dlUeJ8kpjo+B+wuFts?R-0y5F z>+bYeKCx2=Qy#9Io_1E&rRlMIa)wfv(_{C%Pg_}+X2g2y_nGRh;w6Z-N;uV+R7sc^Z2@HQMIQ@d32s9#%In|RLU zP*?|1Uc8&15@lhUA3N!z6yp4t&*g~pwUw)~1^T0p!?VueH~z7JS8ZKi<%1RrVz;kJ zDRvgbPWph@Ss-JUuW7WE*L4=g`o^Wn0KNOmP|*!}Z+&4p?XqdSFm_KQQVM-xT-C-X zXIpu7XOZ4~B<#qP$(uWi(r(C`JBwl`o0LLa6!Ywbyj$B=-o;xSo6p+R188z_I&yh# zU~%f1@~+O}m{)8i+ih2fACF6xI@xST&Bx=!-iv7`8uWyhO%PUr)_;K1eZu=55UWo# z$R-%?d&0-BK&uo_c-d?x;s2zUO%S66TG<4eQYV{0tUoET*@He;7vg`!CHwV|_rmT? z{~;F(R zPV|5742uU0@PuX(kq7Ma^<)k<%Wwl<~{D>Apyixo8? zZuDYREi$)R#A;B@=9D7(w%N-Rb)anaGF2`5_J)-yesf0O@cIB`e%|mh1;ox9UZ#N9 zc|&CC5s~+5(Yr1BgG1q8YPY0QBht1d&e@%7>cH6&cj}VwW++J8JF(83l~n6@Kj0D0 zcT%E=+BsgQk`bEizHe$%Jy!o zpZ%}!lyj`q-M8Y!8itG zckDh-1cb6X=JQ07$W{k@pKPzlarfH2X`=-wd%X}-2g+VA#MJ>`CVS5bF@XNPm!4a> zdH-G-E%Ifu_q-4n3-N)tK^oA55($03H$3L zkpdG72fYvrwEA<<3vp4D=8zX+5K#-XLJTyePKbe6KO{oj6CrM2h(C-=reyVFABLTq zwWsEXanjzXaeL|WQK!ZLx_s1k8A#QmUX6hmJ?hmMNRN+tH5O=leAKIPd+G7VPK^QB z{y4QQ9sby>F{Rl4*sC!R+aG&17HDmMENUzlqU}YEkLiE?EA0Oxeq;JrYFgSo=4YBx zOdpe(mWc*p`k0?+f!6dfnP_X8`k%!-etr7%q}F~|rM*d9IcQHNkS0D$n-C5E%xidi z(eN*fhS%|%zJ1|+3kdNGui-$5UxZWBL3qFs+#VKe1mPC4TSrRS4JS* zZ$$VdjcYG6IaaSZPO{8zh-3NWgqvlN@3C2z#!(7!Y}Q@DwwJ7Rd{#I8S#s)k?Mab` zt;X}Q2gjEDb$r(4a#Y9I_^iw2fEXK}MI_}isl5pMgseWfO0}y8z?_h6I8UPN6S6L6 zrxfOdY{9;Z(q5E(Vm7F(DlcAs;bp~hMvNYF-G5%qr_SA@p;W*cHT+o@(Vv)gm!Onl zZDO`r3-eXr_J}?osn66Lh zf&TlHF0%jotV>BLh5q}jOG(>HMthI$(@1sXT*w0u_oTBavVTw3rKFTXyeCUaDmhAf zk^TF!_Ulamn!Jy%fVlG@l7C;;y_Z2L%=@zL>rL$?nY}-2lUV@F`_uC;8h?M*?Ez2< z^Zu+$W;+z(so9bTvUU%k12v~+xj2zMx(=d8f6Tf)01#Gz_5=W_`$vBQfLQ%wmdG|Y zc)&R1AG2-`K%fonKW5z?KnGEVX<4@i0AikiRzrcN)M+RX>(jDMLpv7YKW9spW;1=; z7WuAzFMIE%IArvwTlt$Ky7u$1NkvEaf6h8(?I( zfVA{r*6j=c8ODQIw=*En4&%YB+ZpI6!+1zv7^~_Z@f*_*rKV*N4`toP0Hv6INCHpd z42bE6vTkEQpf&wa7G0H??kKuCoB2<_Dn;)_mpEw80+1$V`?CO~iP>@%Y!jjiv;9e+ z)HN|%PJ(TM`VZ?}UmzPDjjleNnigGsI5jQ0`mmUm4S|lLtB+*OtL`vGSRe5Y2ZZ@Z z*6j!YVLp;|I|3bL0DsBacijO7IjI7|{EK&0Ak4pHow9ZmW&NuzKhBmUzXfESumU0e zHS4a9fe`BFRN^N6DU_bh-kd$tTm{ zi-ta#o-EPOC%vw8D#XjOCCiUcLdNh!_PkXlmV)bcpyX(cJ z!JLn$y-N$UQS-Fdl}-{7|M0p3VzfZ3D?n4~bOng@e~7O1B{%C_h*xGy-bGhB>9O2D z(T%?en^$y(u`-)HBI?l5>Bs+V`1*)LHE{1c=quUPFL%d9~LNfws%5y@qs_ zE9nYnvrNhs84WSg%&v^|2V){9+Ap))G=R`x~g0Qn_$P4Wew~eWyp)<2?RY6QE!y#t*N)Dj z9c!I-0O-_O?^HmTYrS>=VXpPs(OCwt&T5C=`EM?X)}=&|j&r>Ak4S3ZUeHj2*uW{-GBtp=GL@L5sIx|U@3*URZO#$3*~C6`$V*UM%z9}8(H)>YW%doJ-Trg~vASDMx4G>B=7jI|5hKt>%x*7DT_oW4 zcxeJLzd$QZKvU|Z35fMQB2B&MbJs%rezxQ;{aYUMtLRF__p?c7qexw)%Li?4!*4o# z(03R}&4XT-fS5e!bqPp+4|-h^X#0E6>rz+g?*~?w_>JigQq$7g54is=u$E&(z9 zf!8I0*7OIWOA?S>MVF4~)v@Y#1-~(UBsDF~9`VymDW;EjT>@hIh@WMF*7OmXWow%H zAL{e7s$ajZMwdQJO^Ysln3@({`p^e#SJ9=TPL}|5>Zo@`Ak3p)mw+&jdR^)&1NhkL z5^YLO^Kr@)Vfxq$6QwXe_QKRvgz1UcCj(K6C6y`B6OkG8oK6AnZfcaU< z6k+--9j6G>XX!YZ!7scp(O=1Gz}CxwaKG@v1cdvA2$OtosHv*XPv;nw9Ip z6KS)ePA9VNlVFrWJmGb%tEkhs#OPWbfH@zRxYQ8{b6nz5MNqE5H#-9^=b zCPkfY=d*7ny9PqMJ#l#>5aR8LleMmL5qL+UXUm5a0Wj}KnIcbjBu>{Tg?UHfbgipg z1>TvM7y9b~boS1~U5x`_-kG@TMul*X#2qB|9*NSEd2M0e@(RK2;eI^&1@ro&Txhk?|bnz)NL zASS0K?xGDyf2StyqD`Rf@6^Oyv~`#MPD||VTmZJGrM9KJ(-L>pMk%(ZCGM&Xi0x^K zyJ{0?ZBI*3wo^>EQ8u0MMVgcJ%9&wj{mUk*QC)YVaU8ZY4x|z7XBH1*Pz3CGM6* zchRvq{0SyCkim+K%}I$OV{;OB$AVIba}syQqPr{va}%4>0btHenId9y6Svt!Da^SE zIh}}DcM-99$+tv|BhcsZWkwU)K_i6%!Ip3=Z z5axWZCfy~!T42*{ctg;JhsABeB?1)aRAN?6%he400N=pOk(^i4)MImv$ih*An-YJpK-6D|H$D6t&st)dmP>qgNXsoQU)|*X>&UJ zqBEPlz)=ckbK-W>dy3Ayk^KMfrc;3)P{YO?5NmIw=TgMyjl}Jy_e6X2n^j~${DSsY zN)zFED{;H%ltOzeVHaJbqo)YZ7AGA5PR$lC9YB~{ymSCzZt>D_QX$@!l)USt<0NWs zOA`Cs`$-}l+r4yv=nv2i14!NNei%TkZWos{d(vP|-*)fm0C@+C~n@d9aO8|BxQpP7Ur?V`S%0YFcFHP-2Jlat0MVu-K>tjcB0>N35=1G?e~JW2Ho>3gFbBWi|PO{|K&p) z2=iY)w1F`HmGBgD6RUbO zDGyJ7;xiB+%ul@P0bzdPRj)=;pHJ=e48Lje)3iyEp-;W^Q3~->e?3zpNzdo@dWI(D zs_pZXDPr`w7d=X0elFKDB49NlM*r3Ws#JA7zajoRJ(;3A|Mn_IDa3z!6|0e)=ga?x zictY;)bL&>a`a{D8X`wudKIfdjzaZylHL>K2=uR0x@gkZUd zxDOd(NvF7$>+r=dQ{G+9Ga%L{BuYlgc;i1^@0G_ao(Et(S~sQqDfv4PYRX{6K(Ios@G|Ye1Ts zlyg^WK*ljC=dRWS+Hp+EakVBN#_A>GxL2?5q}u$D-??i$UfSh`mJ3Cg*gY#bH$)0NayO+tTjjoV&?ODYhr)_!45Z z=@e*+p43^j?$^sm)RdGc5;Y|yibPEjqQq`5k*KLT`+NX^lQK2uG8Q1rsX4b70fad< z=Q5UF(!FUpe;W&EvCTYyaHr+mb_5Xav>cg>JX_F9L`v(syQmI~Q#4BFT*?B3s8gb7 zloq1Aztc-JYP#OpMRgv)Z-~=VqG;6goZH5r6yo$8xsKdg-(IWypec312E_Wq5^VBFP@h6PKUeas{;HemQqhNs^K;y{mfL=Pq{|C*|L*G4 zAMu+GFYp}(QgcDhz25=EGyD z`r?!*akDrjO57|K;^n4M;%15dw1*l3QC9XPDN({^NzPsEQwniOj;sBj86tI`(6{zf zKN;A^#LN>ZQDWu^uS}Fed_t5-{upf^VkTai3!ctJ=7Weo<^ZNR;s+{$voz;Eh)5~y zr8!>9XoC0v`KujEbFH4v@k#Q0Vh$`O2sl>tbS^Yv&_|+cdCuN&0pK*ty%+#7zub!f z5cA7(Y)ndc^^x#ek<)GWgnjD)bZmtWE+EVmKDdA|SLAqbTW){!EySyGCC|AK=}XO3 zIrqdzU-7rqK14uR1=`^Psk_>r9w1g%H>^isdbHYyh(POdt9^*{6~9>HLj=TVfi^^d zrqqQ95bJ9sM0(TbxSQEq z-FgIIAZz_VfK*-U&pME%*824b$T-&e^+=!{$6CK0)yX*4nf2%jeq(xFYFb9I&aX$5 zVtSolkARq7=hq{F*7Q2R9@R-?t=H3gsn&J;#`OBsv^2Zk2Rx;iUM~SJ;an$ZgFeuU z2gmpgaYIU!u-cGw+i#RgRnd1@$LeG`+N1~dHZ4k6ZAys}R-4imC9F0{i=7RTy07ay zd#m;X>P%R@o)RUjUeD$1o6M9#d_Bj<1uT*C{$?)dpy#|ASD6jNIulqNvz`Wo|7I>{ zzkUIP|7MQlSMEF4NzA;hd-YKRf5>lo@pej-ka;`jzJfw2#J6*N>q622Ak+VLuE!5d zIv~(a|J%8q7n^Xblc3sa*XDizI=a<|BM{qLeK-QKz16SHb+Te@%bEM1FeS0x=ED&P zbDLjafiSn_*xHjou9L)ihYe(yl34FZnUYxV@PSMz%pDTQvP#xTV!hL?k^p+U)31_1 zm^=L{352=Ruaf-=@t$1CdrkuSQFBi&u^$BKCxNrqO8|)e0PTqZQg^SH03cTPHb?-N z`P=IyK%kxAyj1yLPOt5!sxGDi?NP%fIY2|m+V6D$Y432ZNz;6u0S(~RW3Hr~ z`5eyx>V25wmFe&EM-q5p`lDRQQ+eIHzdFC-qg-O{3dAK0E&e1Ie3jGp^j8DxKgq@B zRcI+dH9pCen|DzK(#$8hnloh`63E|SK9*CT=VHFimNN$)TepG-|J=c}))zVTCAG@) zSySr|EMV>sH&!{6Da7C8f;;nJRkxx(XMpNk|4lA7pG1;EI`K`eiHUiEbmE&__d%`` zd=)Z2kyGRIz7rW`JK+x6PDriW^J*fsY$q~GI^ho4P6S+=8 zCqmN+cj!XX398J_2Mg%LX~lwl2y(FT$E&X$Hu9PgddbPES^ek{SC1M!ym;Nn;`t+Q z;Zqi)M*qe>Qp+er-)HAz^Z6-(^m}&RKH4jge$USLI@?X2{5kJAdG$y`zm@B^J81hY zwdUp3UwyyZ@Mpl~6uM)4tQgBAL67ExrFnhp*{XZJEEbQZy@=?=qiHW>?RYfp1uyZ( zi}LERhF(Oj7w(|#h16P-S5Nw01d-{4J#9Cl~%9JQ=?PV~g? zJCn}wvZQnNACogrEqm_CY@v{!adJLeh)PQKWc0XelOD^Gm$RpbWmh2v%ugY#<|DmV w=^^12oKP~sZbD|b;)md(fQ*+Iupl0ld^GDZ|rt+z-;aLXdN~841QMIbT zQ3V#}eit>oU}EirabwOMJ>vYD(Y2*+-tC(0b96kko7*Y=wzHeB%k_?$j;|Rr?$0&n ze!r@xOyzXh3ChaPm62R!)I|Gn?!^;p|8VY@nhE1aT~J%LozrKvbo>~@R~g>J6C#Zm4JPMH|fo(~&8?yutf zzxS>k*8g)I+gjWxQj&Zv|ZkwcU-qoq7lR6gJ=5pu9=QVTN z&|tfjVb6G3#x3>RUl%Ye-*NZ{=Ib&4R?53P6}5{?@@`pT*{zG(t3#nR96y?ITVr;} zF=4kjh}>p=`+o*eJ}w#R=Ij4B#0^~S;otKA?x7q@47G~fa_wJf+~_N(Nqk}Cwygi= zc=s_UKKT^bjoZ1|#1-$KsicE-dde-F>9KkX;(H;y+;Dotuf))#`@ zyCW4zEef^A4n2 z;Q#u@1nb>dmmqrHkJ?HQ^=?3f4QWOY^{gPz+y2aLUw`2l?)i>4EyZkZI@4{HG$g6g zK^;p*^>9|ra7jnETYORjx3vDuv)q-A^Gv&X?`+p|Qg_6eU%97x=gl5EF#h$g+}2In z&}?mf#Mu1Mi)zMB$X_^q+?aUkuiRdxFQuZKPKzV;C)Y)ExoNW_kDXO>$;6u431wYX z(a*nMq~)mnsM$lSb4|6qywu3sfh#l8Qkx%pq+V%%;h0wE=y_XK?zSk*W#8mjUBS0`so6t+o$Fvm zvdfu6PtU6W$q%a;f8p>8{!lY!L>E0~WmR@iyPP?(X8fi3p{UEH6WF!<7(++k(K58Owe%g?ECmGz}Cu2b^=KCW`?|30oJQ;3rb zM~$u-Z=L+VjO%}9{BPqbuKKw*9M*DK(o(tjl6G!awd56sb)X*BLwUDt;`C~Ub$qV( zk-=bci;YSC;)~9$oiJj8`mbgTGg)hUaO{r`^ZyIIf$q<-GVTNPxQp9{I7#fgF-(B75bqIlFr;uXGZ6YEbAEg58fbBqXq=b|KI!*xBDJF{{*tvxoM{H8Jx;g+xS*Ce-GS+$kI> zc0I(e&dM*76-P91gz)`vPhjQvnzrAQV}U;+$JRpPTtSX&%%tE1{%ZY=Z=FD1|ANpSt$JgXf9Ko5*h}t6-`ObFYHo8$d=NA=i&c^%SNFNn{uqxfKStfE^FXx6u?V|pX z;}_+;Y*FiY;cwjjby>eS%0`}FDHN^QNMob4#4|rpTvaNuh5(6-)B%RK>a?C&;-ur-P{(P&4PWwTPOzcI}PH zbk1#3sF#X)6>`pso2!%Vi6UacJE;lMxl0ckgK`W^--}r`lA^Qn7_oX%Q7$RP{9#8|2(l=cqbU z)_|I&PA`k7S=y)C)NGh@TNd1ENX3?gemA6I%XS@1#p0Y>R+zfX}{j7JjL zJ=2XXlA2ALMI9B5$gYe}|C`%79#-ReRYi`6ip97gvXk)F`DSo%^X#>dkLV^)seGnCfRn352PBjM7lNNJ+o?$Ls3c0o5|1 zV3_?2Oc|&C8I{9Q2D3joEVGhwn6@GDi-AIiU2QQO~|&;Y^wEz>0P>o}VfkZV(=MYGpRYRGadtUs`ShuZlF@uZe6}l>-d|p;ZlH+7xo=0=1D<-0R zL44+??oZ;@7ZUOp6oyp<`hv7t6zNF>>4KK6qVowqH|Jke6vx9Zbk8roC~U4q$(8UM zrE`_vjO{4nI0#FlOb~*wG|B{_E3xvYBnZJU|5RW~5dO&oA!RWCWP;F@ARLnfAsFTu z<2?xG7!!mbm}3aS_H@}5FfN{SiCZ>E!U+s>T%k<~#BrG>DiSD@%FSCueHD{Hyu@i< z)|u0?c;U3LYj0P@;w1&L#Ns7|u1YLkLRTdiT=B0qUcZRbg^Rm~9#o0I+JeUtfwgHJ zos>bXZCD%~qo~a0#JJsJw^~iF>jW?-7MK!&6U|If26H0Y7fBsgBJeM9YNp#OzI_za z`i z+EX#JId5_*UU-Y!rJw6$13}11Lp7)D8i44Dfv&*LUDZ13It_B(l$6shKCjlT>I?K0 z4oqeC5fq~+n%e;GlvLY%RHa&NnDeH_CI91A9Pc^}JwS>)(={7nXKD&fF%UabQ;3Rz z*qNH@+C4f}*(uI>)8k41;||1uVw|6zLQ-^1wjDq;#XyMDQ)H}mpi$175igkFRvhO# zjc9R3ihAW%27(+8t9Xdswl%bNGH#=Y`cJt%=VJB3Vj zQN&!%n-eemo7AL$ki!|$eO(%?ls9h2_jP9 zEwCK`LR^qStTYjQ0+Ng!6cMy2uDitTRIw;&3z6~`rBEqNL8XAmR6j)_Dwo7BUgGwz zT#`^^i?t-_7up1*UlLTFc(jzu(u>@l)c}P|FaTjLO(9LXF{BBIHp!mJV^8TV<95Yj z_FT`8cZ14hNyiW-%FN7A6XLQI(j@8YAx+-xsd#AK>%x$vF>||3Um(oeZTbRX-kxGV zAlqP%CDOYy{(Y@Gu;R|7F$BuH(`GGopxl{aBcS`2$$2Yu)_P8c@mXOb4@hrU*sKL& zXNApLAa+*Rto58I=dIFN%Wr&MWwRCtah1(lAjDNRYdr_Cs+X+oTT!3PiKtY)%~$F` zsTax+)lF1t_1uZ>(7~${XGN-3C(epgtxn~%%z2JT)oPKsMWU^qgH}Bp|9zsnq~hTe zlB(yAvmfu_RM^r&I1i^dt&yFC=O9au#Ap23?OO3jGPWW}kEGJA4W$^$BdPLsN)9{+ zL3&in0l)F@(WHYSNRL`MpcLYxRt`J|L3&Kf0lyi{$C7@E06k{qfKrH$Svl|=1n6-i z2LPIUJn>Z&=>_z)}FCh1H{@hRtKF|S@(eu zpR-~Bg!r5l17FY!A_nDs`3>=fq(za07px>uDpf@i1~9F@L&(1re{`uksPd(RB9ib@ z(m9cYm#ifC;@2x$68ZxaGLis<`HGbUAk0@p68@wbV=7-wIjzcmAJ6KMu8ep8mpibM z1A1}sWyegpkp&>+SFJ4gA`7n@SpZ<_bt?-%n6Fz|0K$CT%7QPl@TSN@b-eArnTat7t>tW477=6xQchJ z9&ixKyH*c?P~NqA;ENu-r&e)hGD}Ogtl=9w=t@PXu6x5^Ka4vGwXU^9$5P(F}WWC`&_20l#1liT`L)d2ka&5OEWFQ%N zKr-^wiUZbN4njF#a}fyTfX&4~(AO##`|+E8ex0->x%josMM|Zr#l z0L;TlXC*5S+qt0>=3$$afn?=mM=jPcB`YU8X0Hu|IoUCLZ6M6aj#;b&$;v5?oW1vj z8Pety&XUza0)#omF*|J_%qfmpvjfS?sZQK@L(uhPJxa20PvuU0(;YdBAAlROa!+^6ej5mLx?}d+K$z1VQbD#3fn@3oN6zAV!jx2< z!P&QQK~i;wV>aBB!ki&YN!377b*3Zd@_CrDa?ebdlCd)#vr(oL=1j+Ilmp4w*^Zph zw~rV6gH6@!q}P(SvmLWhrY6MM(xhZxAbC5-Q5)sB?Nm4DJ0}@zN!vM&kzHy+oa2yu z6G^^wE|}*OJ?f;&F3Ri2S;kIvf8A)F6PBwbGA(I%W8Cfl99JKa)N(iHGsjp#dZY< z^A^YKn1L{Fam%$mkJgj%q5Q5IHx5UmpW?WjGK~-OOp;t zGA^}qMJdds4m)Sr|E47wm(88Y)c}6NTbB4LskqGHv|bX1Qh3Xffgu%dcjUyrY@jZe zbi6%bOFG`3^i9!>c?{QkSiK-QwEWDQpd@AT+*pi9&CT&Y5-s_~>8n$HOy$<&SklD-wGcP=KWUqfH3cO*nP_hep*s-jZqu`%r#bVfH2os#R0-xV|61fOXymo8vwjr zn~bw8p=+&fPzrOc)s3|5sMl%Tz+2f;ud~7dgt^WN2N32uX>&aJALfD$PSHp4!s+fM zjW#%}?b3%(vVNmv{c#l=tqUB)&_)|3Kn!iP2_H&oJ{ixrhQ;^Egd(Z_q)m0|KzY)p zdMK&>bbR<4_teU#?X++Z%F{N-fl!{dp&SZ&*5o*VA$m4xOmh5Lo8y$Kx+cd%$??sS zUaHrUPLl_Edea+@L5bkR>$3w~SH*}82=gxAY$~TfuN_xLx)0>(Q-;ne^ zQw166{gxB=`p*41QzEJTmQ8IS%(rZ617W^pQ#+Ie_Fp=+kCxQu0PKGy?MiC@%ceG^ zu>U2gEovW1YQG&{IvcfrJ84jI`fVp{qtt*pP~LX(?UfpYlGE=PH2^TL?^rbe!hFZ7 z0TAXpRt-YQ>D^il`T}6?wrT)`x!bA%5aw>l%$CYca(YjE=XGwY%00pNsd&;(tu!dKsc( zfBgI$_t>BAcd`xC$Ye620!KoUSi!6?h=orbM{cKh0952tC)-hJN=7v03%!%L_Ifr1 zU)WAjg2^vzYyxrZ3o9%c(SrkeCoy*}yaNeO)a8Ix7b?O#VAUlf>hiVONB{_suWf(; zVSa5z1_<+On@br%2ersl17IFZ+7yvFXhnunRTq&NBs~_9IpoCO&2^8dJd|)mUk)Yx z6MZ>kb1x&F9oG8N7od>Q7a+{TR$qWH4_kf7h`vmY^NZa9bLY81@5$T)&~v2Dv?se} z%SSzElU=qEvaDuAT&B3(PF`?wcyj!=d2Unz)N3k*v^d2zYbp@x6qg&yvMOd|Q$ICc zaEsfOfeC4Ts%y>$fDos;=4=26ajI(;#fjHZ zbFDKJVR^1=_QOCd&*iaMbpbh&fSVVWEOd{p<~O~Vmk=e4=ecG-Oew^9uGtSq62>>W zdOr++d83_YAj}(GvmXY+ywNrLVIG@dU+wDsFaYNKq)iFq`L5XyQ>y9`#&V;VfnZ-9 zpF7|ES?^mCibU}(N&h5@Z;}4VPLBt3*k8L&$M}US-IL?|&BP;6$0LPM7r17d2ZXx7 zZQnt~VofyWyn?Q383XO&&@iE|uhw42UFyxe~pcO>OfgzV?Qgg zzt+S)fc~$w(*%UM*2X>%=2{#3SwZVe>;qt~OWKs!UuR>VQdO7OKZyy>O6;$Xf4;~) zxng}nk=S3K^h{!Zz4T0?Fe{F2kSOe1u_5tKVt#{-Kk7i)VB;?*IQwccnUVmn+RUL8 z=BqYyva&mTU1v@;fHq&ZsRM-hx=kG*%-5yO5oAt-T(H$Gni8M4)IG29RyS;-@}+^~ z%Ql@aYUntCH`}Z?Kx}Tap#{X|Hk&jJB*?exWrN=kw8;D=KU41VQz+msTp#g-s+lB@Z=5CkE ziz8KI)cquGv)sL~;u9Ma4b)=siH!*$luu-Sex)cR(Ej+IO-Qspa`Q-w-JAyvMKSKaRR?)^D;9@b;Rm)&+MtF17*5r_EZf8&G7V|3P58slEx%E zW_V^#MX9RGx^kRqjO>^hU%A3PzH(+lk?fe6^iQ&5ru0viqK1+kv%Pp&NqCIXY!0X+ zh2BYq%=XMxKT2WG7FXr5kA||u%<2PTAr# zl!a!lr;;)*zK0uXb3L=krwHO)&usF65a)X2q^yGtWtEv1550$Va9+}uWXn9yBp7v| z%=225s?cvJ3(Jl1!h5*Vabq$Ck}WrSCgQ0B4=&jHZ z#K`d2B*=si5atRSLO_@+B!ooPizW6}d2!q2?zu4Ke$y(RW-v}l@U8O9c_O7SSBWZ# zx))3E)qC;Ec@nBv%F4qn;$AKc2?$3 z7%{fXg#7t6`H8hPBlCY5HQ^6=^HTfBN-gymz+Ujov2^!|KHlvuiYojNt$57HYaJa(MuPr8E&M~WTRJ-Q{vD_(&S0c=~~u3e^$-K zqeom&lOHj9bpC?)vwF9~F%o2y>c_6Ai=`)RSOIbTNeL^t_1Z|#)1H$r>xLyhDiH6j zcf0o&`R1tgMY8B=JLOOmhntd1<(ZmBa$c~>bIQwNZgPL(Hm_5|`R6esWT<=QFZj`+ z{@%w0Dx?22DauCv&o$#~M~xes=Y6}H@r-ND*nFSLsy@7^J2F3UZ0*F0)dvPf=2h+5 zy21>~#cVvY-H^=Qk1+DA3nNJ@J&>M_N;HB8qXy|EUNLG#}GFq!W-v; zm%XC5y;Pqd|MO9`6Cz&Ba6P%+`Lf4DOV`URG?sXO)pN?qE{{KX(4Ae$Z>>m_Q1ex* zxIk>bDvEonCQ|xFeD`X1VdWbMN5bz7E1Zp0_`M;*sUD+hEb+HB{`*5bMzuBJNT6-C zt2}jRXRF65FI&0Bg0{tHtZ@g{ZR5Ev71kVtvdwFtpHu`&C6DvE26Ve57rf&Y?e|iu zyK<5C9WRt3&nuDM?(m%U$_$7Q1nSHMk^nortbP^{2z7_oRPRbloH`kR9UiX=X;YNG z%fuT~DNF&asT8K(<=o$vs>)6DgRmuPSl*Rs(v}#Noh%NfuH*&KT9T~X>1A6)b+Y3s zQE9o;E7j`+5T|y^I-yO0-t&0JN7v;wFM-w+?+F02`gyeyHHhzdW!-FL#qBAt70F0J z-Q_vGO(D;J)(N(zc*q2p)j2_B`nSt#)x*}t)Gn`5ULX=vgzWpC)5jG0SO!{4a*p!8 zm$gG90sX$$y24h*()(WTDlFBBDJt(yOa+(%T2rzv?oLd}y0|+rCF|mDZAvV$E`H!S z$D4N2SOQv0vQB>BWo?|uI{87J*I}@&jj0d3uoMTL3h$)~oB^Pz~cv*cz zwnSYO*yH7oww1B8#~V1vSYqY;&~r{Oh4PdJ&{(QdS9w27ypm1bhlx|NqJHQdcf2vh zin`Zx&NQYXOaZM^a?N0`m$g$bE9_pc`>D1vmiBt54>OinVL$Sm;dQ1oiz%=*B}?u{ zUbed}#neY$kJBu~)JNX1vy3UukUsXDzNWANmVnk$11x=vRWTX)K!L0ycYW5P9T;(@wk$%!;@Q4`#k4ZW2qQR zKx;{EP3`ltr1{TO`pLbieO|l%wl=2rd4mQ=O;Da(F8IPL`U=7I^C#CBz0E=R!ZXiH z=R|-Gc=6qjy94R~WX1t2gg~kuu$yBbwhzeWSh@%#%no?X2Sp_jfdRZb_L}JY1**!OIvXl8JjwU! zbnG;d2j&D@A4SV1`As|Oky6Y3B%fC=b+gRaWZ%<5*F;@l0qSS%flw#=%{m*Ztj3f5 zZt`lQ3>3{=mQaH_jV)Ky>av6@YIRw{MXjdz-XLRGh5HY`rPg^M+<*9e<&{z4qDNDGPb(V;F3>hB`ZG0YR`h48 zKR`=a6WP&U?t4Eo&5Gav?SzQn)Lrg(IMEivz1%zb&`Fjx59dKfN}a%JM9Xb4b00n|ik z$d!I${j4UCX0PZX#Sv*Q(yyT_d|n+I=|Ee=v=wr?)y05Lt= zH^-JHazB<&nOqt79zgV8xY=MbVY&2mBP z7u{%7rWrM3pNms63eCjDc|I?Li(rAsGoV&dAgMFY&+6AffKcc8eCteCR=cZtzS_fy zDN1kf&7KGZ7pQv;RHf!z8Hj^7`0RmN<6!e#aEo8GnDH!@PfF#7op#z#Iit{H+8pLB zKD%GJ-qlz&Dq?fV8&2=aQGH%os25+Z?ZC znNl;x3;ec2)wz3f>B=HsKk*45suua?Bnzkt&E+2;wio%FWXa`~7P;UqpUW#lpKyDZ z_GzB~#Th4_kvHE}_@(aDkSK1mg^#9^Lx3WU1SH#^7{g6{P_y@LedF;LF{FjXhGjoveYRc*Cr zl-?4B_xWD6nl2Drpx)F2Y4$$9Z7*92^*+B(U*j=xaDPITohr~$MeOg_)Hv|JJURY|iV_Nx*qV*h~ebvHhV*aP(f+d^G1e86w1_y0hs57bHU>p>wRyC;fmS=wd}S~Vqfof7-&o3*878xHB`j@LEk&c6pGjbZIp=EKj?R|hDGcj^p8JL zQ|mW6VzXHS!rkDT%~GlCvmW=&W(fors5eVMsE_+* zvjl|txNkN~rGhs4p57~gpaS(?2?%wg-?UCo7g*Ico261oy(jE^fZzi4Vhn`)gk6k* zP@k|Ho>Dnyd@`X*>H#fPQt!!x>dUFYlL?o~PbFMQJ)q@E>OGZkCH0<4sHEQ0HgHST zTOP% zmDB@jMJ`nrPd6vcO6qM+nkDs~v)jAUI+c20Ei|R-iHPUy_6`X5IlH|pmDGFQZtp-e z3)I^?ARa$&w|79O&&&4iG&RQTvtIIfs&hzw=mirdju@SvARh#cKN{_(>n6d)&Gt0^jr0JLZ z=JFvB$7`7jw)jOmOxCxg<`$nD9&+EJrDXMMethN@cknL(gzjs0_W-2oYreTN1jOiT zK3CDC4In}DnqM|V?H&Z`9olPtt7Fyfp`|3}8+!N97rM z+ftJLt@zki-M;`j_u?izn}L2cOi^k*i2x zy^jN8>R)yr2gKCB{G3(*pdzCHa&^9?D8SpyS3Kz-yt)Czf3P(r67aTf?ut?h_idj$ zS#nROrMUc#AOGz&_ryAYLWK^90=(m!=kX|o`Hq%K$1BSPJN=^f%~X|9bEhBbje40( z)qB3VRs+H+Q1A4B)P2wHrh!;}Pj=Jl(i@n`de3gB1?tIqPqx#t`j*MC?(%tBQzjQg zZ-IKQfvU7jUoiw?eV5-s-pF^nR=MBggo{KzA374VK+FR5 z_8ds%J$@s-8vkEl{N%(l)2pZG;{;$^S99h{UyH{ zhy8XOfYjV?V-|?X{WfNS48wjKvjX)n?3bABpiD#m%#Y9b+->{&)@twmSz=p8;WOXd z)1?&KpGoLR-+mL0&T+axfu2er&3s{} z5=b*&*b^fl&3s{JQlM_;3wvVJTIwJ0=?|?AB_RS-7K$u_q<`KHq(u0G(dXI%RCEyPxObPgdHsC3Rc~AmgE|RyF z1^tjOU#I8`Q=W@Ilz1x(-XY)I)20;WA>Z77Z!MQW5Bus(7Ij;a1F#P#Y+3UTCw-MQ z?{LyrhH-KbKYz&WIiR&8&p%D(-7_y;~oo-iw{2=Ty5M?ucYw`oH3@ZH3WRVLWhaE))1KQSG1Nja9W^WEdekX(*kpb z1;mYMfze1HZcGcf_9riCx0btyR|fIWW?`FnUk}gg#}RsQC2#GSmSh8ZWnf;|rWE>> z0jK>Uv8`nTdUb%j4Sm(^&B)7RQDDoJ4d~T@QCUjiULCNWh|0E>Rq&c1esOU)DBk|6 z>mAP#LgyOZnlnwygCN%g=7gD2tX&frp#@^?8W{q)ZP{9$r@uD7cAh}Q;Xt(8KzmdEL51?r&{nDRLNti%I(oPJhd^qEqavjXm)${TX6YMC;n*g1JG_4S~K;*@l{PgHWGfwh>i|1EbF% ztO9jN0jV1Y=4uBJt8rlU8B93Ffw|lvP-k@<7=3OdqA)Ko`V6ACK&{U}RciDZi1m4a z(dV|g;HIGHX5({PYThK#D5~F9>GOPR7KmA(-kJlcJU=MWvJb@Ud@uuzB33OS*}A@~B*?E=79sftXpIm=V=o zE@nh^%SCnXh%bJZCuQ!iQOH3kcLYXmfl%%UjNF!s+};(x@Gf70zbm1L&faAMmpV}H z3eZ{k{9C!`?A<}UJ?nMu55U0PiGQNAcLy204pR#A?tpbzUXdvmon09?y~--%-hbp% zG3RpcBYtitPgQW#_E5BTWsuP){!p;6GN`Cj8ec9;)_rm6Js#}2FQJIY-WM2grw)|+ z0>r(iYLqkjRazJ0neXvH+A1rH(5La1QEEhqoKT;MsLTBrfVG>oXx3Wkn z^m;3c<)W&q3$h4=3)Zp-guB|xA`tFsD~sjooc;(|j33$M27}jFO`;rQYpf~)F}B94 zA`oM1L=~6FDpM{ZyDm<>?=G!emkgRH>AE1J_fyn?vo7e^IqIq?DCznjE@|X-=v%I& zbbZ1UDP13AbS_g0bA7;5hoZsdBBdL&2J;&?HzY(+(hXLFDTTN}G*}Z+(v3l!n&=KZ zvD|4)C~r*qE5f=l>8}Xu#=v~1gvuD&DD$Rnu$RmGN>2rG-9-21Y5>%y>>3J$`cz;( zR|16kRKVv-WT#&4@I|3#%sK!d(4R?skb79q*mZzXn9taCpxoh;LYvGw0HDoH$z02A zs7*;a$tQ(2*>xbF3!V>(UNV}Rr{?okQ}d#LFW7YegjJwU6d-k9uu=fT>I;Q+08Fa9 zVAlbGTBlyH>p)%<=|wBpAbJbb>i|%dnsoq(^%w0r&@LCe5){2^d~Qe0SAtN#oz>1M zI*zl#fKPGCCIyIDpuXS@r1F*^r%#cAnB5X^nWYEoK>J+qW>9n}h%foj?bNhAHQx+4 zWs!|~dl`zYW-$OT5?k#^0I9mwE(So1ZncX6kb&507XyKMAhz1YpuG&lHnSK2u)Qs@ zE#t7wE(Vlhdz)PhfY{z<7XyLX_BL4z(d$;sjszpQX8{4ZzgCZR%KpNVSG$f104!dZy zmqlY|ptkD$0l2u+MlKNMPP=vhVeXW*Lq5#XUb?d@_}+(Es;fDw4{ME}AOS{8vFI)4kjIsil=&zD7 zlLh4~tE`m5{7RHn_D1bxLHQ=o&xHeM^Bb$?K$zbI=DBbn%x`1`mc4m<*_(fBG#LQ% z+hm$$3Hde&OIbp`wVK=^7aR_XE=%jZc?W79w))mVglJOQ?9D+~1?o%#Qg>3??9G8# zos_nFb1;E7DQ))V0(DMLN}IiT2a$xyX|p#6F-}0O$v{9Qhv{jv zKkp>tFe5(wbGQ80{KoW*#I%gUjI`OFQ;O*sX|p{CVtPi}Y|jO1(=*a2vLt^eQRJCS zp!#0U??h`kL<=0#vk0VxnRXU|v@la<(Nv~|nRXH>H7(4PNz^S+e|DNrTQpv1zR1%_ zDKf`w3!=!glNLmgXG;sRjqfCiJSVL$o&fM|4&UrBt&1YhNt@j~r7-8D&2GMv^kZ&X zUpxUQRA7n_&rO@NQA%OXO&cNZBtkqdt%Vq%kP%`a%z0^Z^#BNSUfKw8ClTTs(^iOq zvU0g%6D0D0%GqD{eTrGAf_L%;v`U;en7-Y&XBu`I6WAjdC={TY02gX6VuY{gLe8T#q@(#m4KLj z(9WJfZTdl(J#Cu$55?OsUENj5(L;%8k)wwa(;`O?Svl$|a`do~BLGf4Y$Fv2^I
A>RD%s`TjbgeZFSc-mab zr4-`hX)fiSsT@X+o`@^Ib5DaP((?qLOHxV%g!n|-eER?h@rg9w6OvQTt|C28#Vfw! zBewj8_*62uqB>8d%^QJ~LVPN1J|5ClROgwrzTOL9z@AAP#RkHB#ws=t<}+z?y|=3< z&nC3qUhk!0(VtC8!=gW%tY}jTeN$S!ZYLhI2YimX;pZ6T*8)(;B#s7T0Yfb zKbPk7EV{pJ1YbZbJJfYm+rSsBTms>}VC51B?*)-dxm?;U7rdMXRS!trSL}QPvHD6u^}x*dD>iQg>b!Zys$MrqyDe7rKnyfcs~%95 z8r1`0eT!AS?z!OgbkUo}=kC;eJss*N%eyPpdn4@(P%#3;EKr*TQu&Q^nSNdeh}k#N zNB8H|E63}R3$~?;CdGqNUiYRwsJKn^U(S+y$VhBAss~^ow%dUKQgypkJs>u>Th#+H z4%@Bj3Do1T-Kt&>8HXKO_4tkH9f@ffg&kJ)D8=*+t9n38@35*TP@CQ%swdgrLsV~P zT<3VzzvVZkcP6H#*`0R!D8=+nt9n38@3gZgP@CQ+m{eU|Mpq^qZHyk(Lee6OApzPeVSGuRa2tC0ob2f5d^~i)QTVw z_NP_^dx!{ru0*gezaf5}jIfB{=T-zMh4{IM;3(BBB6uL~5qLHDE2qE*k`_e+52Vef zmnemJz^Z2t(ZH{bdIA{kudR9lVSa7Z6A1HbtDZeX{th0go*bd!gNetYe+R94QVRW` zRnH!BB7Eow_2dBTLkU|{@Q_tcN?{+e>e)k1h7T+CK|s2`T=DVi}QG$*tmyaDRW08)2KXijK>Se+8u6Iw9wG9@%8v;uYh zO$p5jZBI$xe}v|Q7KG10EptFsYSa^m^?!usgtj6VObd&yG(J~Qb6Obcr^qXmdR`Hl zcPN0E1?tCWfmFUCY@uHO0%G=xu&R&RGgjt;Yr>)x@i(DY(X^6^*Mw%zSScfMZKzLZ z0Sv^ob|8RMy*4x_v_NcL8=4bZAmeatXijJa>T$R>G$*u`G7huicBNkV+5E=zti-g8 z!mQAo&{B%&S)n#?P$}wpT|6}M`t|2Grmss(OS9M6>7x|W z*U9v0BItTXt*ocM>$EXK8!MGIa#%+I5EIuYCPW*r7ZY--S}EEXhx$|%K;v;}6b=Y8 z4$Y}55M~^jQ`Jgw^oCG>uM(h8fhpQ}LugJ_DTR4MXzo8%iZ-#7dFLyFztGz79Z#?+VSSJrL$yp*gPx!n`Xq8^vC^;GVGP zJ|i2wsCiFlHj2F@!B<+T1K|%)Pdt#iD{Y_yvAVJ#bzr7`rIk8?IuBP`sp}=VcCVE> z5IzI7)B#ngkvbsO@3m6bI~S}9i|UQfy{Wk>G#kat?XKxj6K zK+HZ6vQd;j6;>7hsj)Y(X%$u0gkdkWMXZuBSZhQMz!0ppLja`eS}SrutgW>o2V?}+ zT9Ff|M_{cLxhfffbxP!h@f*|Y64TQEbynmk#q>HWazIS4vmz%@n_ed(C*KaMiXSTR zPWf$>(zo@ARcUd(oij?Yx?bi?uG9gsy53HiKy7usOqsGO^*4wD4wPFc-QsKJyUnYs zlmc>C2L_NvHYAOR0&cJhSS1R$(I_B*PH(iS1%$cLDj*Q%Myr5TqJU3o1*A<;z$X)? zDBzP;0V##~q$r@ML6s=r)8sUFO)3Ej88raHeA=o35a!dNxmZ^f?{C7LmMW!r&nB&j z<~?gAfKoWmifqdFOsZrQH;3jMYH%RtFRCZ^N2)~iUW~`J<~9YtA-xzfA7;q2`-ms9(M4Bf0vP)hiJG0CiXb zsr#1g2oS4p74!julnYKx5J`$ zjL&_k`F0rUx8?e(t=aa_Ia%c(5VJu2umF(C+rxIp+fvMK4^R3D8xqd`a>09H(Lds! zwD68M`nKme)wzEv$CHs80Z1!NrFx2h#jkHh;`wW?(t zK2WOlYkp(;gT%Cq!UtBhD8=*#R<(eb{=ll1KyCU1Q7!r6NwsXvK4b#pGZwkWo(;r0 zSkE93>mS+~1Y-R|t6o5?e`qIAptk;@OrW+-{g2`vExn=D)k?EIN=%DpeUz9M&HBh{ zR<&r>Cq}aXIQ5CmXCTZ^tY!gWequGNS~{>_YgRviLPiOIF!x){0>a!cnkD<6YSFCE zLi2f0^}TQo!RMIX0RiEEX0-qa|Fe)+%p}38W%Kq$=(LYle#b-9K)7J7LO{4*gyvEi z5bhTtUnvm1td@~Hp!E`_ypwRi?w)`!4_Lhf!aQL0vRd@(>mzng&_%$$P8t>g``St; zrO>~Y-IGXXwFuZjwu|;s83$k=OxU7g2d#Kg3j1Klr81GfYEiL6TK@PA@lZ0qqGE@v z{80+=kd?n`QL)2H{_s~+>~KO96+4^+hN#$KD}U9ZVv{rK#xP9TuTAEYt14H4Fehh> z{sCc5&KUixmi^k4jNY#S7~&~>IMpy^zcwXf_G^^FoRTs7wWD&u<(Z-@Gy2r@C~97w zF^IW-004^aC9r0%qgIW+}hby~)rnu3}1X&G~BDp04-w2V15Jxa3gii|lm z1>rML>mN{+8vO%e{fdk^HSL!RuFe!)V|?yM&8st^ex0PB(!c2$=M>dGHtPFRy<-*?4G7{Hi)T!yO0Sv@- zb|8RMy)I);O@Y|FE@MtjfsDg-8FOkXP>;iP8BR^*<4;G+I9#7`2E|qPxh?B}SO@E2 z2C8B+?Le$wpW(8PY_Wh?zdqA!pn6nYptgQ}ruhK%`M#q?0^^L+x~wEW^jE|4Loc|X zrnWYJYR#qQ{SzwC9yN4(v@ia|8FQ}aI^^FO&LA~)HZ*@#M%kt#^mGE@?NWc6fkX+=$#}GD>r4#DHaeb zH)YJG>S*b}%}lX+6s0dvV=YZUxHo6a`4tfE%^5aV@)*m}B8#`i`|@6Uh@ywL@?B*! zwxWl(CPdN0TZPz75z)hi@k#BxPSr;%Fi?z(ISS6Gy0w@ zfF>6wOcBGy8FSB-QkaV~T#670K3c@^Hk0E3JipE6I1uJ-HphW5Z?iexKNl>^6y0I+ zr9U;7Wq8WB0Y>{vWG}Zl4#FRxo;@ISm)jf%Vs&{T$HDYvxy^BbI{KE|9Pcl&bi2)Q z5IzHSjssPx$#EdoZ?`!uo{5v`oy-3LVdv0)x|3Ii2}w*2TN9F)>#S~4iivfioASq52a=e<`i%2<#*g>? zkK6q>9DvOc%a-h1pD`aGq!jl046ki9A|!zP35@lbmXBxn_;(bl19y{a94mV~<0|zT zC|jB*GU}pEKLA1WgjF0M=AW>N1H}9j87}Hb4iA(Zeu_9&uUymtaSg160|@sio5eu5 zPi4$2e1meqvzemjOk5A5=Cc{|_`o2Ez)dz6L0ARq4g;yX$xa#&tD6eB2*#&PHWvlz zAlzhgagapIW}Ay3`U}*#2vnse7lBycY;*CLT<}7s=q2OxG1Pn^W1ej~M&;s*8S`ut z5VJu2_yCZ~FJ{cMO+d`PnBnn(-sIxoT<~h9=#x0t)$7r8Fcn`FtFqn>mXUbfthWFL z;&nR^K&rlO;|7S$*X?=>WE@_%>#aaN4zJtwcCd`Yn}zijh;^_YW}qrI>n#xLZ`$=1 zi1jz^dMi*{f77nFgC$|NW}G&%-u~Cb@iqAiMvs#BK2JGO@5ZP=d(_bF)q!bntJM}D z4Q>@}5#<;xXd7!=S+nn(t5plHH7RQ@wQLt8y|-n|Rai_Y8!TM1f)AE8cYDFXpW)$z z5o1Su&qGOds#tT9>e~|sCDpf!gPoK)>h8!m9m-n7FFq7BKgPNwxz2HGLvnpbCZj*2 zGg#&Njtp;xYa7JO&J5=kt-Gbm)OCu%D%&|``I7BBGa3Eq0!r~=XNL0&d9-4%B=W9! zPj|2X+5D#AT?tY0cvr@JrGrw4yE1&JKvoVQ)440t{S38z5~!zhSEk45N+SkKrtglA z%X?j``Hi2utwaDZz1vCz5YxNurev@z)_XF^b>Ds*!LvP9C4kWP*zE-n`koADE}}4l z<;-QTRT!F<^A@mH7$DreR$+i}_lm;EK4Gw&w|s2&2>_h_*zOa6Fh92Y1R%_h?LOhy zT(Cb=^ts9NW2w16V{Z8zD;fEz)g}=B0QK|$sr#wbCLmTnEoc*%QT)_ulR!PppIU7? zR&wAot4$z$25M~rs#2p(K&*dewP{E$_%c)UmGOB9HNVV+`ePqMoFcx-aUkR9+xS4t z0`+U2Kq?=|l=f<&Yf|fqGC5$)Ly*c$^H%;kdNY>-B4XWBafT z0HBm*()yzfKujObG-@10_&$`|i&0Tq_2t2#)VnO=^F62XM;7=j#MG#0b2i1_j2YsQHS>yE+Q^Bw0osxaXONdB4CMOlnP!ylbgd5~WqG*(}@U z5RVUVD3uFlN6t-=Th=unFYD#?shb@I>ZM~T#EIEaBPA*VabkAVZGdrtk0A!vMc&+k z6DdzSVGe31q*fexHx`^odE$gQq@CbRl$#@GsdnNwy>a4ZZUMYCGr*)oN$a2=Ad>$YAuSq+X_xN$_aCb-6`$3xnOzZ+=~;v@^Mt<4X9h5 zj0Asw+gqNDged;MPPobmbBOz!I6;;BBWEp6 zRORdRSAb3*H?roWzp9Uzj?Z84hY@2hs;SM7<>0wB_Na|PO#ML?)V)wT$ za-PEXqw?DI(=O#p4I}@}`7xK)UNU;*kGZdQtx-^>-p3cS_`fb{r9OQj5dYUjLw|1^ z;{zwbqmj3v;JPFC)-AATlsUdH{SwfnJO4EdOG zV=o#v^86ojTNcn~qCkCD12+S_ekN+&-;BDfr_V$uoM*h|la|4=k@sA|>%e$z4r;HZ zR?p`n@1=sbpS#ad}I0(gnt4zMUDo8hLLNTuvL8%|Y!lwd#U5Bkx}Ym($8+b4a^P z`frb%50uL~P=<{k_g9IPe+!k1rGRMpu`b9KVSCbrkS^41Px>HRhV4lo_-JSFPUP(@ z^dU5TFb8!Xq}F?px4Y1VP<6o^8m>m2zx?%KN#J;1 z737E2jK6UB1%Id+GeR#8g@l!j%7;;)zKz1bv$+R${HX~Y*|&Tc4gaf|2c7~C_D0?( zg+63VAIw4Bhh9=`U*vsO=tM?!!W`l=D>THPZTd2D4%3Oj@%m%kR{zQA;e1w^kJbIa zW7!^k83pR5hZw@+FC%@^Lm(c18J#xHc+6Kxg9DNGO~K>Hcx(=8kEvA=9E`m03LZzw zV{=FkJAYmKssKI4fZ)(;qv03A_IjFtvE!8g1dRJ0Sud!L>wK;U58fX5*$@HvqJzoDZ zA3u7M+wuEe57TKXAGH~F(eMd;&PM*Lk+0d*{-6hPaeI0;=x#!z0X>+W?eR-K2q!Bg z*Sh`b*%8;I%)s;Zad1u6n_1{W1Ji}U=BVz2RGXFc<`lZnKy|?!8mYR#-=K)I&H}pd zi+nt(o!jYu>%wW{#*Ui6r+U6W19FKy&Ian+T{zqj|Kn`WUmO3q;_k=U3uapX`BFkK zFYDb@@V}w)pM!OBRQoU0=4ZWI3;s7${+mO3ap#X1EXq1};D0ZZuVyA)EuI(G;rgO%srt^HV1j2+cF-@3OMG57Se*5i7CbLDo|}W(ajEsstap3C z@nYq;Ii$6c57^(8bsoU+0mku@{yL#%{Mfn?qyNqQ8dWmlN5xW}pt~zu(ECPo;jU~! z@8yBIyRrqnZ-jFzvfj!<7aEx^=z~X_o=UZQv)-yg9~!AXm_uCeVsQ9G`GZ+!J$*Pa zA8$I-ZIvl3QSsmsw?*9#qC{R@doUZQTM9zQ&j+*mmV!Y1d@y^)c;f&sQU|NE-ophy z8yi2(K|Rz`Yi-thwBTlA<)%K=NdDpjmieamhODzG8&B!ub*qyXsW)T;^Cun ze!oT_UTnzrI^K9ug8j#{-jf9{N{kogp!Py)J(cyIEqGC)ywHcv4_NFbjO!bH_kJoW z9Wkv(U$4GLU;n=C&b`ho_r&OD@22FrsG=g?3YwH^I&0@s)3!7T>bEpWKXz?uMg6?R z>0B;#UHu)a(igkMa+OealWsY$ubvs_A5H(n9sY}7)c<*PdVZiv9Vs39z0zr89!>Kv MtRM4erq`nX19II-KL7v# diff --git a/docs/api/inventory/change-agent.md b/docs/api/inventory/change-agent.md new file mode 100644 index 0000000000..3d66525686 --- /dev/null +++ b/docs/api/inventory/change-agent.md @@ -0,0 +1,67 @@ +--- +title: Change Agent Attributes +slug: changeagent +category: 626de009b977e3003179f7dd +--- + +## Change Agent Attributes + +This section describes how to change Agent attributes. + +Please note that not all attrbutes can be chaged. For example, you cannot change the Agent type nor its ID. + +In PMM versions prior to 3.0.0, we featured a separate API call for each Agent type. Starting with PMM 3.0.0, we offer a single API endpoint for all Agent types. While previously the Agent type was defined by the endpoint, i.e. `/v1/inventory/Agents/ChangeMySQLdExporter`, now the Agent type must be specified as the top-level property of the request payload. Along with this single API endpoint, we are deprecating individual API endpoints for each Agent type. + +Let's see how to change Agent attributes using the old and new API calls. The goal of this sample API call is to enable the agent, make it work in push mode, and remove a few custom labels from it. + +Old API call: + +```shell +curl --insecure -X POST \ + -H 'Authorization: Basic YWRtaW46YWRtaW4=' \ + -H 'Accept: application/json' \ + -H 'Content-Type: application/json' \ + --url https://127.0.0.1/v1/inventory/Agents/ChangeMySQLdExporter \ + --data ' +{ + "agent_id": "/agent_id/13519ec9-eedc-4d21-868c-582e146e1d0e", + "common": { + "enable": true, + "custom_labels": { + "department": "sales", + "replication_set": "db-sales-prod-1-rs1", + }, + remove_custom_labels: true, + enable_push_metrics: true, + } +} +' +``` + +New API call: + +```shell +curl --insecure -X POST \ + -H 'Authorization: Basic YWRtaW46YWRtaW4=' \ + -H 'Accept: application/json' \ + -H 'Content-Type: application/json' \ + --url https://127.0.0.1/v1/inventory/Agents/Add \ + --data ' +{ + "mysqld_exporter": { + "agent_id": "/agent_id/13519ec9-eedc-4d21-868c-582e146e1d0e", + "common": { + "enable": true, + "custom_labels": { + "department": "sales", + "replication_set": "db-sales-prod-1-rs1", + }, + remove_custom_labels: true, + enable_push_metrics: true, + } + } +} +' +``` + +To get the authentication token, please visit [this page](ref:authentication). diff --git a/managed/models/agent_helpers.go b/managed/models/agent_helpers.go index 2f88827778..5087aa19c4 100644 --- a/managed/models/agent_helpers.go +++ b/managed/models/agent_helpers.go @@ -903,10 +903,9 @@ func CreateAgent(q *reform.Querier, agentType AgentType, params *CreateAgentPara // ChangeCommonAgentParams contains parameters that can be changed for all Agents. type ChangeCommonAgentParams struct { - Disabled *bool // true - disable, false - enable, nil - do not change - CustomLabels map[string]string - RemoveCustomLabels bool - DisablePushMetrics *bool + Enabled *bool // true - enable, false - disable, nil - no change + CustomLabels *map[string]string // empty map - remove all custom labels, non-empty - change, nil - no change + EnablePushMetrics *bool } // ChangeAgent changes common parameters for given Agent. @@ -916,15 +915,12 @@ func ChangeAgent(q *reform.Querier, agentID string, params *ChangeCommonAgentPar return nil, err } - if params.Disabled != nil { - if *params.Disabled { - row.Disabled = true - } else { - row.Disabled = false - } + if params.Enabled != nil { + row.Disabled = !(*params.Enabled) } - if params.DisablePushMetrics != nil { - row.PushMetrics = !(*params.DisablePushMetrics) + + if params.EnablePushMetrics != nil { + row.PushMetrics = *params.EnablePushMetrics if row.AgentType == ExternalExporterType { if err := updateExternalExporterParams(q, row); err != nil { return nil, errors.Wrap(err, "failed to update External exporterParams for PushMetrics") @@ -932,14 +928,15 @@ func ChangeAgent(q *reform.Querier, agentID string, params *ChangeCommonAgentPar } } - if params.RemoveCustomLabels { - if err = row.SetCustomLabels(nil); err != nil { - return nil, err - } - } - if len(params.CustomLabels) != 0 { - if err = row.SetCustomLabels(params.CustomLabels); err != nil { - return nil, err + if params.CustomLabels != nil { + if len(*params.CustomLabels) == 0 { + if err = row.SetCustomLabels(nil); err != nil { + return nil, err + } + } else { + if err = row.SetCustomLabels(*params.CustomLabels); err != nil { + return nil, err + } } } diff --git a/managed/services/converters.go b/managed/services/converters.go index 209c0d4db0..96241c9ca3 100644 --- a/managed/services/converters.go +++ b/managed/services/converters.go @@ -254,6 +254,7 @@ func ToAPIAgent(q *reform.Querier, agent *models.Agent) (inventoryv1.Agent, erro TlsSkipVerify: agent.TLSSkipVerify, TablestatsGroupTableLimit: agent.TableCountTablestatsGroupLimit, TablestatsGroupDisabled: !agent.IsMySQLTablestatsGroupEnabled(), + TableCount: pointer.GetInt32(agent.TableCount), PushMetricsEnabled: agent.PushMetrics, DisabledCollectors: agent.DisabledCollectors, ProcessExecPath: processExecPath, diff --git a/managed/services/inventory/agents.go b/managed/services/inventory/agents.go index 12d95e217b..9fe0b1e559 100644 --- a/managed/services/inventory/agents.go +++ b/managed/services/inventory/agents.go @@ -67,37 +67,13 @@ func toInventoryAgent(q *reform.Querier, row *models.Agent, registry agentsRegis } // changeAgent changes common parameters for given Agent. -func (as *AgentsService) changeAgent(agentID string, common *inventoryv1.ChangeCommonAgentParams) (inventoryv1.Agent, error) { //nolint:ireturn +func (as *AgentsService) changeAgent(ctx context.Context, agentID string, common *inventoryv1.ChangeCommonAgentParams) (inventoryv1.Agent, error) { //nolint:ireturn var agent inventoryv1.Agent - e := as.db.InTransaction(func(tx *reform.TX) error { + e := as.db.InTransactionContext(ctx, nil, func(tx *reform.TX) error { params := &models.ChangeCommonAgentParams{ - CustomLabels: common.CustomLabels, - RemoveCustomLabels: common.RemoveCustomLabels, - } - - got := 0 - if common.Enable { - got++ - params.Disabled = pointer.ToBool(false) - } - if common.Disable { - got++ - params.Disabled = pointer.ToBool(true) - } - if got > 1 { - return status.Errorf(codes.InvalidArgument, "expected at most one param: enable or disable") - } - got = 0 - if common.EnablePushMetrics { - got++ - params.DisablePushMetrics = pointer.ToBool(false) - } - if common.DisablePushMetrics { - got++ - params.DisablePushMetrics = pointer.ToBool(true) - } - if got > 1 { - return status.Errorf(codes.InvalidArgument, "expected one of param: enable_push_metrics or disable_push_metrics") + Enabled: common.Enable, + EnablePushMetrics: common.EnablePushMetrics, + CustomLabels: &common.CustomLabels.Values, } row, err := models.ChangeAgent(tx.Querier, agentID, params) @@ -111,11 +87,9 @@ func (as *AgentsService) changeAgent(agentID string, common *inventoryv1.ChangeC } // List selects all Agents in a stable order for a given service. -// -//nolint:unparam func (as *AgentsService) List(ctx context.Context, filters models.AgentFilters) ([]inventoryv1.Agent, error) { var res []inventoryv1.Agent - e := as.db.InTransaction(func(tx *reform.TX) error { + e := as.db.InTransactionContext(ctx, nil, func(tx *reform.TX) error { got := 0 if filters.PMMAgentID != "" { got++ @@ -149,9 +123,9 @@ func (as *AgentsService) List(ctx context.Context, filters models.AgentFilters) } // Get selects a single Agent by ID. -func (as *AgentsService) Get(ctx context.Context, id string) (inventoryv1.Agent, error) { //nolint:ireturn,unparam +func (as *AgentsService) Get(ctx context.Context, id string) (inventoryv1.Agent, error) { //nolint:ireturn var res inventoryv1.Agent - e := as.db.InTransaction(func(tx *reform.TX) error { + e := as.db.InTransactionContext(ctx, nil, func(tx *reform.TX) error { row, err := models.FindAgentByID(tx.Querier, id) if err != nil { return err @@ -179,29 +153,34 @@ func (as *AgentsService) Logs(ctx context.Context, id string, limit uint32) ([]s } // AddPMMAgent inserts pmm-agent Agent with given parameters. -// -//nolint:unparam -func (as *AgentsService) AddPMMAgent(ctx context.Context, p *inventoryv1.AddPMMAgentParams) (*inventoryv1.PMMAgent, error) { - var res *inventoryv1.PMMAgent - e := as.db.InTransaction(func(tx *reform.TX) error { +func (as *AgentsService) AddPMMAgent(ctx context.Context, p *inventoryv1.AddPMMAgentParams) (*inventoryv1.AddAgentResponse, error) { + var agent *inventoryv1.PMMAgent + e := as.db.InTransactionContext(ctx, nil, func(tx *reform.TX) error { row, err := models.CreatePMMAgent(tx.Querier, p.RunsOnNodeId, p.CustomLabels) if err != nil { return err } - agent, err := toInventoryAgent(tx.Querier, row, as.r) + aa, err := toInventoryAgent(tx.Querier, row, as.r) if err != nil { return err } - res = agent.(*inventoryv1.PMMAgent) //nolint:forcetypeassert + agent = aa.(*inventoryv1.PMMAgent) //nolint:forcetypeassert return nil }) + + res := &inventoryv1.AddAgentResponse{ + Agent: &inventoryv1.AddAgentResponse_PmmAgent{ + PmmAgent: agent, + }, + } + return res, e } // AddNodeExporter inserts node_exporter Agent with given parameters. -func (as *AgentsService) AddNodeExporter(ctx context.Context, p *inventoryv1.AddNodeExporterParams) (*inventoryv1.NodeExporter, error) { - var res *inventoryv1.NodeExporter +func (as *AgentsService) AddNodeExporter(ctx context.Context, p *inventoryv1.AddNodeExporterParams) (*inventoryv1.AddAgentResponse, error) { + var agent *inventoryv1.NodeExporter e := as.db.InTransactionContext(ctx, nil, func(tx *reform.TX) error { row, err := models.CreateNodeExporter(tx.Querier, p.PmmAgentId, p.CustomLabels, p.PushMetrics, p.ExposeExporter, p.DisableCollectors, nil, services.SpecifyLogLevel(p.LogLevel, inventoryv1.LogLevel_LOG_LEVEL_ERROR)) @@ -209,11 +188,11 @@ func (as *AgentsService) AddNodeExporter(ctx context.Context, p *inventoryv1.Add return err } - agent, err := services.ToAPIAgent(tx.Querier, row) + aa, err := services.ToAPIAgent(tx.Querier, row) if err != nil { return err } - res = agent.(*inventoryv1.NodeExporter) //nolint:forcetypeassert + agent = aa.(*inventoryv1.NodeExporter) //nolint:forcetypeassert return nil }) if e != nil { @@ -221,26 +200,39 @@ func (as *AgentsService) AddNodeExporter(ctx context.Context, p *inventoryv1.Add } as.state.RequestStateUpdate(ctx, p.PmmAgentId) + res := &inventoryv1.AddAgentResponse{ + Agent: &inventoryv1.AddAgentResponse_NodeExporter{ + NodeExporter: agent, + }, + } + return res, nil } // ChangeNodeExporter updates node_exporter Agent with given parameters. -func (as *AgentsService) ChangeNodeExporter(ctx context.Context, req *inventoryv1.ChangeNodeExporterRequest) (*inventoryv1.NodeExporter, error) { - agent, err := as.changeAgent(req.AgentId, req.Common) +func (as *AgentsService) ChangeNodeExporter(ctx context.Context, p *inventoryv1.ChangeNodeExporterParams) (*inventoryv1.ChangeAgentResponse, error) { + ag, err := as.changeAgent(ctx, p.AgentId, p.Common) if err != nil { return nil, err } - res := agent.(*inventoryv1.NodeExporter) //nolint:forcetypeassert - as.state.RequestStateUpdate(ctx, res.PmmAgentId) + agent := ag.(*inventoryv1.NodeExporter) //nolint:forcetypeassert + as.state.RequestStateUpdate(ctx, agent.PmmAgentId) + + res := &inventoryv1.ChangeAgentResponse{ + Agent: &inventoryv1.ChangeAgentResponse_NodeExporter{ + NodeExporter: agent, + }, + } + return res, nil } // AddMySQLdExporter inserts mysqld_exporter Agent with given parameters and returns it and an actual table count. -func (as *AgentsService) AddMySQLdExporter(ctx context.Context, p *inventoryv1.AddMySQLdExporterParams) (*inventoryv1.MySQLdExporter, int32, error) { //nolint:unparam +func (as *AgentsService) AddMySQLdExporter(ctx context.Context, p *inventoryv1.AddMySQLdExporterParams) (*inventoryv1.AddAgentResponse, error) { var row *models.Agent - var res *inventoryv1.MySQLdExporter - e := as.db.InTransaction(func(tx *reform.TX) error { + var agent *inventoryv1.MySQLdExporter + e := as.db.InTransactionContext(ctx, nil, func(tx *reform.TX) error { params := &models.CreateAgentParams{ PMMAgentID: p.PmmAgentId, ServiceID: p.ServiceId, @@ -277,37 +269,50 @@ func (as *AgentsService) AddMySQLdExporter(ctx context.Context, p *inventoryv1.A } } - agent, err := services.ToAPIAgent(tx.Querier, row) + aa, err := services.ToAPIAgent(tx.Querier, row) if err != nil { return err } - res = agent.(*inventoryv1.MySQLdExporter) //nolint:forcetypeassert + agent = aa.(*inventoryv1.MySQLdExporter) //nolint:forcetypeassert return nil }) if e != nil { - return nil, 0, e + return nil, e } as.state.RequestStateUpdate(ctx, p.PmmAgentId) - return res, pointer.GetInt32(row.TableCount), nil + res := &inventoryv1.AddAgentResponse{ + Agent: &inventoryv1.AddAgentResponse_MysqldExporter{ + MysqldExporter: agent, + }, + } + + return res, nil } // ChangeMySQLdExporter updates mysqld_exporter Agent with given parameters. -func (as *AgentsService) ChangeMySQLdExporter(ctx context.Context, req *inventoryv1.ChangeMySQLdExporterRequest) (*inventoryv1.MySQLdExporter, error) { - agent, err := as.changeAgent(req.AgentId, req.Common) +func (as *AgentsService) ChangeMySQLdExporter(ctx context.Context, p *inventoryv1.ChangeMySQLdExporterParams) (*inventoryv1.ChangeAgentResponse, error) { + ag, err := as.changeAgent(ctx, p.AgentId, p.Common) if err != nil { return nil, err } - res := agent.(*inventoryv1.MySQLdExporter) //nolint:forcetypeassert - as.state.RequestStateUpdate(ctx, res.PmmAgentId) + agent := ag.(*inventoryv1.MySQLdExporter) //nolint:forcetypeassert + as.state.RequestStateUpdate(ctx, agent.PmmAgentId) + + res := &inventoryv1.ChangeAgentResponse{ + Agent: &inventoryv1.ChangeAgentResponse_MysqldExporter{ + MysqldExporter: agent, + }, + } + return res, nil } // AddMongoDBExporter inserts mongodb_exporter Agent with given parameters. -func (as *AgentsService) AddMongoDBExporter(ctx context.Context, p *inventoryv1.AddMongoDBExporterParams) (*inventoryv1.MongoDBExporter, error) { - var res *inventoryv1.MongoDBExporter - e := as.db.InTransaction(func(tx *reform.TX) error { +func (as *AgentsService) AddMongoDBExporter(ctx context.Context, p *inventoryv1.AddMongoDBExporterParams) (*inventoryv1.AddAgentResponse, error) { + var agent *inventoryv1.MongoDBExporter + e := as.db.InTransactionContext(ctx, nil, func(tx *reform.TX) error { params := &models.CreateAgentParams{ PMMAgentID: p.PmmAgentId, ServiceID: p.ServiceId, @@ -342,11 +347,11 @@ func (as *AgentsService) AddMongoDBExporter(ctx context.Context, p *inventoryv1. } } - agent, err := services.ToAPIAgent(tx.Querier, row) + aa, err := services.ToAPIAgent(tx.Querier, row) if err != nil { return err } - res = agent.(*inventoryv1.MongoDBExporter) //nolint:forcetypeassert + agent = aa.(*inventoryv1.MongoDBExporter) //nolint:forcetypeassert return nil }) if e != nil { @@ -354,27 +359,40 @@ func (as *AgentsService) AddMongoDBExporter(ctx context.Context, p *inventoryv1. } as.state.RequestStateUpdate(ctx, p.PmmAgentId) + res := &inventoryv1.AddAgentResponse{ + Agent: &inventoryv1.AddAgentResponse_MongodbExporter{ + MongodbExporter: agent, + }, + } + return res, nil } // ChangeMongoDBExporter updates mongo_exporter Agent with given parameters. -func (as *AgentsService) ChangeMongoDBExporter(ctx context.Context, req *inventoryv1.ChangeMongoDBExporterRequest) (*inventoryv1.MongoDBExporter, error) { - agent, err := as.changeAgent(req.AgentId, req.Common) +func (as *AgentsService) ChangeMongoDBExporter(ctx context.Context, p *inventoryv1.ChangeMongoDBExporterParams) (*inventoryv1.ChangeAgentResponse, error) { + ag, err := as.changeAgent(ctx, p.AgentId, p.Common) if err != nil { return nil, err } - res := agent.(*inventoryv1.MongoDBExporter) //nolint:forcetypeassert - as.state.RequestStateUpdate(ctx, res.PmmAgentId) + agent := ag.(*inventoryv1.MongoDBExporter) //nolint:forcetypeassert + as.state.RequestStateUpdate(ctx, agent.PmmAgentId) + + res := &inventoryv1.ChangeAgentResponse{ + Agent: &inventoryv1.ChangeAgentResponse_MongodbExporter{ + MongodbExporter: agent, + }, + } + return res, nil } // AddQANMySQLPerfSchemaAgent adds MySQL PerfSchema QAN Agent. // //nolint:lll -func (as *AgentsService) AddQANMySQLPerfSchemaAgent(ctx context.Context, p *inventoryv1.AddQANMySQLPerfSchemaAgentParams) (*inventoryv1.QANMySQLPerfSchemaAgent, error) { - var res *inventoryv1.QANMySQLPerfSchemaAgent - e := as.db.InTransaction(func(tx *reform.TX) error { +func (as *AgentsService) AddQANMySQLPerfSchemaAgent(ctx context.Context, p *inventoryv1.AddQANMySQLPerfSchemaAgentParams) (*inventoryv1.AddAgentResponse, error) { + var agent *inventoryv1.QANMySQLPerfSchemaAgent + e := as.db.InTransactionContext(ctx, nil, func(tx *reform.TX) error { params := &models.CreateAgentParams{ PMMAgentID: p.PmmAgentId, ServiceID: p.ServiceId, @@ -404,37 +422,49 @@ func (as *AgentsService) AddQANMySQLPerfSchemaAgent(ctx context.Context, p *inve } } - agent, err := services.ToAPIAgent(tx.Querier, row) + aa, err := services.ToAPIAgent(tx.Querier, row) if err != nil { return err } - res = agent.(*inventoryv1.QANMySQLPerfSchemaAgent) //nolint:forcetypeassert + agent = aa.(*inventoryv1.QANMySQLPerfSchemaAgent) //nolint:forcetypeassert return nil }) if e != nil { - return res, e + return nil, e } as.state.RequestStateUpdate(ctx, p.PmmAgentId) + res := &inventoryv1.AddAgentResponse{ + Agent: &inventoryv1.AddAgentResponse_QanMysqlPerfschemaAgent{ + QanMysqlPerfschemaAgent: agent, + }, + } + return res, e } // ChangeQANMySQLPerfSchemaAgent updates MySQL PerfSchema QAN Agent with given parameters. -func (as *AgentsService) ChangeQANMySQLPerfSchemaAgent(ctx context.Context, req *inventoryv1.ChangeQANMySQLPerfSchemaAgentRequest) (*inventoryv1.QANMySQLPerfSchemaAgent, error) { //nolint:lll - agent, err := as.changeAgent(req.AgentId, req.Common) +func (as *AgentsService) ChangeQANMySQLPerfSchemaAgent(ctx context.Context, p *inventoryv1.ChangeQANMySQLPerfSchemaAgentParams) (*inventoryv1.ChangeAgentResponse, error) { //nolint:lll + ag, err := as.changeAgent(ctx, p.AgentId, p.Common) if err != nil { return nil, err } - res := agent.(*inventoryv1.QANMySQLPerfSchemaAgent) //nolint:forcetypeassert - as.state.RequestStateUpdate(ctx, res.PmmAgentId) + agent := ag.(*inventoryv1.QANMySQLPerfSchemaAgent) //nolint:forcetypeassert + as.state.RequestStateUpdate(ctx, agent.PmmAgentId) + + res := &inventoryv1.ChangeAgentResponse{ + Agent: &inventoryv1.ChangeAgentResponse_QanMysqlPerfschemaAgent{ + QanMysqlPerfschemaAgent: agent, + }, + } return res, nil } // AddQANMySQLSlowlogAgent adds MySQL Slowlog QAN Agent. -func (as *AgentsService) AddQANMySQLSlowlogAgent(ctx context.Context, p *inventoryv1.AddQANMySQLSlowlogAgentParams) (*inventoryv1.QANMySQLSlowlogAgent, error) { - var res *inventoryv1.QANMySQLSlowlogAgent - e := as.db.InTransaction(func(tx *reform.TX) error { +func (as *AgentsService) AddQANMySQLSlowlogAgent(ctx context.Context, p *inventoryv1.AddQANMySQLSlowlogAgentParams) (*inventoryv1.AddAgentResponse, error) { + var agent *inventoryv1.QANMySQLSlowlogAgent + e := as.db.InTransactionContext(ctx, nil, func(tx *reform.TX) error { // tweak according to API docs maxSlowlogFileSize := p.MaxSlowlogFileSize if maxSlowlogFileSize < 0 { @@ -471,37 +501,49 @@ func (as *AgentsService) AddQANMySQLSlowlogAgent(ctx context.Context, p *invento } } - agent, err := services.ToAPIAgent(tx.Querier, row) + aa, err := services.ToAPIAgent(tx.Querier, row) if err != nil { return err } - res = agent.(*inventoryv1.QANMySQLSlowlogAgent) //nolint:forcetypeassert + agent = aa.(*inventoryv1.QANMySQLSlowlogAgent) //nolint:forcetypeassert return nil }) if e != nil { - return res, e + return nil, e } as.state.RequestStateUpdate(ctx, p.PmmAgentId) + res := &inventoryv1.AddAgentResponse{ + Agent: &inventoryv1.AddAgentResponse_QanMysqlSlowlogAgent{ + QanMysqlSlowlogAgent: agent, + }, + } + return res, e } // ChangeQANMySQLSlowlogAgent updates MySQL Slowlog QAN Agent with given parameters. -func (as *AgentsService) ChangeQANMySQLSlowlogAgent(ctx context.Context, req *inventoryv1.ChangeQANMySQLSlowlogAgentRequest) (*inventoryv1.QANMySQLSlowlogAgent, error) { - agent, err := as.changeAgent(req.AgentId, req.Common) +func (as *AgentsService) ChangeQANMySQLSlowlogAgent(ctx context.Context, p *inventoryv1.ChangeQANMySQLSlowlogAgentParams) (*inventoryv1.ChangeAgentResponse, error) { + ag, err := as.changeAgent(ctx, p.AgentId, p.Common) if err != nil { return nil, err } - res := agent.(*inventoryv1.QANMySQLSlowlogAgent) //nolint:forcetypeassert - as.state.RequestStateUpdate(ctx, res.PmmAgentId) + agent := ag.(*inventoryv1.QANMySQLSlowlogAgent) //nolint:forcetypeassert + as.state.RequestStateUpdate(ctx, agent.PmmAgentId) + + res := &inventoryv1.ChangeAgentResponse{ + Agent: &inventoryv1.ChangeAgentResponse_QanMysqlSlowlogAgent{ + QanMysqlSlowlogAgent: agent, + }, + } return res, nil } // AddPostgresExporter inserts postgres_exporter Agent with given parameters. -func (as *AgentsService) AddPostgresExporter(ctx context.Context, p *inventoryv1.AddPostgresExporterParams) (*inventoryv1.PostgresExporter, error) { - var res *inventoryv1.PostgresExporter - e := as.db.InTransaction(func(tx *reform.TX) error { +func (as *AgentsService) AddPostgresExporter(ctx context.Context, p *inventoryv1.AddPostgresExporterParams) (*inventoryv1.AddAgentResponse, error) { + var agent *inventoryv1.PostgresExporter + e := as.db.InTransactionContext(ctx, nil, func(tx *reform.TX) error { params := &models.CreateAgentParams{ PMMAgentID: p.PmmAgentId, ServiceID: p.ServiceId, @@ -536,11 +578,11 @@ func (as *AgentsService) AddPostgresExporter(ctx context.Context, p *inventoryv1 } } - agent, err := services.ToAPIAgent(tx.Querier, row) + aa, err := services.ToAPIAgent(tx.Querier, row) if err != nil { return err } - res = agent.(*inventoryv1.PostgresExporter) //nolint:forcetypeassert + agent = aa.(*inventoryv1.PostgresExporter) //nolint:forcetypeassert return nil }) if e != nil { @@ -548,28 +590,40 @@ func (as *AgentsService) AddPostgresExporter(ctx context.Context, p *inventoryv1 } as.state.RequestStateUpdate(ctx, p.PmmAgentId) + res := &inventoryv1.AddAgentResponse{ + Agent: &inventoryv1.AddAgentResponse_PostgresExporter{ + PostgresExporter: agent, + }, + } + return res, nil } // ChangePostgresExporter updates postgres_exporter Agent with given parameters. -func (as *AgentsService) ChangePostgresExporter(ctx context.Context, req *inventoryv1.ChangePostgresExporterRequest) (*inventoryv1.PostgresExporter, error) { - agent, err := as.changeAgent(req.AgentId, req.Common) +func (as *AgentsService) ChangePostgresExporter(ctx context.Context, p *inventoryv1.ChangePostgresExporterParams) (*inventoryv1.ChangeAgentResponse, error) { + ag, err := as.changeAgent(ctx, p.AgentId, p.Common) if err != nil { return nil, err } - res := agent.(*inventoryv1.PostgresExporter) //nolint:forcetypeassert - as.state.RequestStateUpdate(ctx, res.PmmAgentId) + agent := ag.(*inventoryv1.PostgresExporter) //nolint:forcetypeassert + as.state.RequestStateUpdate(ctx, agent.PmmAgentId) + + res := &inventoryv1.ChangeAgentResponse{ + Agent: &inventoryv1.ChangeAgentResponse_PostgresExporter{ + PostgresExporter: agent, + }, + } return res, nil } // AddQANMongoDBProfilerAgent adds MongoDB Profiler QAN Agent. // //nolint:lll -func (as *AgentsService) AddQANMongoDBProfilerAgent(ctx context.Context, p *inventoryv1.AddQANMongoDBProfilerAgentParams) (*inventoryv1.QANMongoDBProfilerAgent, error) { - var res *inventoryv1.QANMongoDBProfilerAgent +func (as *AgentsService) AddQANMongoDBProfilerAgent(ctx context.Context, p *inventoryv1.AddQANMongoDBProfilerAgentParams) (*inventoryv1.AddAgentResponse, error) { + var agent *inventoryv1.QANMongoDBProfilerAgent - e := as.db.InTransaction(func(tx *reform.TX) error { + e := as.db.InTransactionContext(ctx, nil, func(tx *reform.TX) error { params := &models.CreateAgentParams{ PMMAgentID: p.PmmAgentId, ServiceID: p.ServiceId, @@ -598,39 +652,51 @@ func (as *AgentsService) AddQANMongoDBProfilerAgent(ctx context.Context, p *inve } } - agent, err := services.ToAPIAgent(tx.Querier, row) + aa, err := services.ToAPIAgent(tx.Querier, row) if err != nil { return err } - res = agent.(*inventoryv1.QANMongoDBProfilerAgent) //nolint:forcetypeassert + agent = aa.(*inventoryv1.QANMongoDBProfilerAgent) //nolint:forcetypeassert return nil }) if e != nil { - return res, e + return nil, e } as.state.RequestStateUpdate(ctx, p.PmmAgentId) + res := &inventoryv1.AddAgentResponse{ + Agent: &inventoryv1.AddAgentResponse_QanMongodbProfilerAgent{ + QanMongodbProfilerAgent: agent, + }, + } + return res, e } // ChangeQANMongoDBProfilerAgent updates MongoDB Profiler QAN Agent with given parameters. // //nolint:lll,dupl -func (as *AgentsService) ChangeQANMongoDBProfilerAgent(ctx context.Context, req *inventoryv1.ChangeQANMongoDBProfilerAgentRequest) (*inventoryv1.QANMongoDBProfilerAgent, error) { - agent, err := as.changeAgent(req.AgentId, req.Common) +func (as *AgentsService) ChangeQANMongoDBProfilerAgent(ctx context.Context, p *inventoryv1.ChangeQANMongoDBProfilerAgentParams) (*inventoryv1.ChangeAgentResponse, error) { + ag, err := as.changeAgent(ctx, p.AgentId, p.Common) if err != nil { return nil, err } - res := agent.(*inventoryv1.QANMongoDBProfilerAgent) //nolint:forcetypeassert - as.state.RequestStateUpdate(ctx, res.PmmAgentId) + agent := ag.(*inventoryv1.QANMongoDBProfilerAgent) //nolint:forcetypeassert + as.state.RequestStateUpdate(ctx, agent.PmmAgentId) + + res := &inventoryv1.ChangeAgentResponse{ + Agent: &inventoryv1.ChangeAgentResponse_QanMongodbProfilerAgent{ + QanMongodbProfilerAgent: agent, + }, + } return res, nil } // AddProxySQLExporter inserts proxysql_exporter Agent with given parameters. -func (as *AgentsService) AddProxySQLExporter(ctx context.Context, p *inventoryv1.AddProxySQLExporterParams) (*inventoryv1.ProxySQLExporter, error) { - var res *inventoryv1.ProxySQLExporter - e := as.db.InTransaction(func(tx *reform.TX) error { +func (as *AgentsService) AddProxySQLExporter(ctx context.Context, p *inventoryv1.AddProxySQLExporterParams) (*inventoryv1.AddAgentResponse, error) { + var agent *inventoryv1.ProxySQLExporter + e := as.db.InTransactionContext(ctx, nil, func(tx *reform.TX) error { params := &models.CreateAgentParams{ PMMAgentID: p.PmmAgentId, ServiceID: p.ServiceId, @@ -664,11 +730,11 @@ func (as *AgentsService) AddProxySQLExporter(ctx context.Context, p *inventoryv1 } } - agent, err := services.ToAPIAgent(tx.Querier, row) + aa, err := services.ToAPIAgent(tx.Querier, row) if err != nil { return err } - res = agent.(*inventoryv1.ProxySQLExporter) //nolint:forcetypeassert + agent = aa.(*inventoryv1.ProxySQLExporter) //nolint:forcetypeassert return nil }) if e != nil { @@ -676,46 +742,58 @@ func (as *AgentsService) AddProxySQLExporter(ctx context.Context, p *inventoryv1 } as.state.RequestStateUpdate(ctx, p.PmmAgentId) + res := &inventoryv1.AddAgentResponse{ + Agent: &inventoryv1.AddAgentResponse_ProxysqlExporter{ + ProxysqlExporter: agent, + }, + } + return res, nil } // ChangeProxySQLExporter updates proxysql_exporter Agent with given parameters. -func (as *AgentsService) ChangeProxySQLExporter(ctx context.Context, req *inventoryv1.ChangeProxySQLExporterRequest) (*inventoryv1.ProxySQLExporter, error) { - agent, err := as.changeAgent(req.AgentId, req.Common) +func (as *AgentsService) ChangeProxySQLExporter(ctx context.Context, p *inventoryv1.ChangeProxySQLExporterParams) (*inventoryv1.ChangeAgentResponse, error) { + ag, err := as.changeAgent(ctx, p.AgentId, p.Common) if err != nil { return nil, err } - res := agent.(*inventoryv1.ProxySQLExporter) //nolint:forcetypeassert - as.state.RequestStateUpdate(ctx, res.PmmAgentId) + agent := ag.(*inventoryv1.ProxySQLExporter) //nolint:forcetypeassert + as.state.RequestStateUpdate(ctx, agent.PmmAgentId) + + res := &inventoryv1.ChangeAgentResponse{ + Agent: &inventoryv1.ChangeAgentResponse_ProxysqlExporter{ + ProxysqlExporter: agent, + }, + } return res, nil } // AddQANPostgreSQLPgStatementsAgent adds PostgreSQL Pg stat statements QAN Agent. // //nolint:lll -func (as *AgentsService) AddQANPostgreSQLPgStatementsAgent(ctx context.Context, req *inventoryv1.AddQANPostgreSQLPgStatementsAgentParams) (*inventoryv1.QANPostgreSQLPgStatementsAgent, error) { - var res *inventoryv1.QANPostgreSQLPgStatementsAgent - e := as.db.InTransaction(func(tx *reform.TX) error { +func (as *AgentsService) AddQANPostgreSQLPgStatementsAgent(ctx context.Context, p *inventoryv1.AddQANPostgreSQLPgStatementsAgentParams) (*inventoryv1.AddAgentResponse, error) { + var agent *inventoryv1.QANPostgreSQLPgStatementsAgent + e := as.db.InTransactionContext(ctx, nil, func(tx *reform.TX) error { params := &models.CreateAgentParams{ - PMMAgentID: req.PmmAgentId, - ServiceID: req.ServiceId, - Username: req.Username, - Password: req.Password, - CustomLabels: req.CustomLabels, - MaxQueryLength: req.MaxQueryLength, - CommentsParsingDisabled: req.DisableCommentsParsing, - TLS: req.Tls, - TLSSkipVerify: req.TlsSkipVerify, - PostgreSQLOptions: models.PostgreSQLOptionsFromRequest(req), - LogLevel: services.SpecifyLogLevel(req.LogLevel, inventoryv1.LogLevel_LOG_LEVEL_FATAL), + PMMAgentID: p.PmmAgentId, + ServiceID: p.ServiceId, + Username: p.Username, + Password: p.Password, + CustomLabels: p.CustomLabels, + MaxQueryLength: p.MaxQueryLength, + CommentsParsingDisabled: p.DisableCommentsParsing, + TLS: p.Tls, + TLSSkipVerify: p.TlsSkipVerify, + PostgreSQLOptions: models.PostgreSQLOptionsFromRequest(p), + LogLevel: services.SpecifyLogLevel(p.LogLevel, inventoryv1.LogLevel_LOG_LEVEL_FATAL), } row, err := models.CreateAgent(tx.Querier, models.QANPostgreSQLPgStatementsAgentType, params) if err != nil { return err } - if !req.SkipConnectionCheck { - service, err := models.FindServiceByID(tx.Querier, req.ServiceId) + if !p.SkipConnectionCheck { + service, err := models.FindServiceByID(tx.Querier, p.ServiceId) if err != nil { return err } @@ -725,39 +803,51 @@ func (as *AgentsService) AddQANPostgreSQLPgStatementsAgent(ctx context.Context, } } - agent, err := services.ToAPIAgent(tx.Querier, row) + aa, err := services.ToAPIAgent(tx.Querier, row) if err != nil { return err } - res = agent.(*inventoryv1.QANPostgreSQLPgStatementsAgent) //nolint:forcetypeassert + agent = aa.(*inventoryv1.QANPostgreSQLPgStatementsAgent) //nolint:forcetypeassert return nil }) if e != nil { - return res, e + return nil, e + } + + as.state.RequestStateUpdate(ctx, p.PmmAgentId) + res := &inventoryv1.AddAgentResponse{ + Agent: &inventoryv1.AddAgentResponse_QanPostgresqlPgstatementsAgent{ + QanPostgresqlPgstatementsAgent: agent, + }, } - as.state.RequestStateUpdate(ctx, req.PmmAgentId) return res, e } // ChangeQANPostgreSQLPgStatementsAgent updates PostgreSQL Pg stat statements QAN Agent with given parameters. -func (as *AgentsService) ChangeQANPostgreSQLPgStatementsAgent(ctx context.Context, req *inventoryv1.ChangeQANPostgreSQLPgStatementsAgentRequest) (*inventoryv1.QANPostgreSQLPgStatementsAgent, error) { //nolint:lll - agent, err := as.changeAgent(req.AgentId, req.Common) +func (as *AgentsService) ChangeQANPostgreSQLPgStatementsAgent(ctx context.Context, p *inventoryv1.ChangeQANPostgreSQLPgStatementsAgentParams) (*inventoryv1.ChangeAgentResponse, error) { //nolint:lll + ag, err := as.changeAgent(ctx, p.AgentId, p.Common) if err != nil { return nil, err } - res := agent.(*inventoryv1.QANPostgreSQLPgStatementsAgent) //nolint:forcetypeassert - as.state.RequestStateUpdate(ctx, res.PmmAgentId) + agent := ag.(*inventoryv1.QANPostgreSQLPgStatementsAgent) //nolint:forcetypeassert + as.state.RequestStateUpdate(ctx, agent.PmmAgentId) + + res := &inventoryv1.ChangeAgentResponse{ + Agent: &inventoryv1.ChangeAgentResponse_QanPostgresqlPgstatementsAgent{ + QanPostgresqlPgstatementsAgent: agent, + }, + } return res, nil } // AddQANPostgreSQLPgStatMonitorAgent adds PostgreSQL Pg stat monitor QAN Agent. // //nolint:lll -func (as *AgentsService) AddQANPostgreSQLPgStatMonitorAgent(ctx context.Context, p *inventoryv1.AddQANPostgreSQLPgStatMonitorAgentParams) (*inventoryv1.QANPostgreSQLPgStatMonitorAgent, error) { - var res *inventoryv1.QANPostgreSQLPgStatMonitorAgent - e := as.db.InTransaction(func(tx *reform.TX) error { +func (as *AgentsService) AddQANPostgreSQLPgStatMonitorAgent(ctx context.Context, p *inventoryv1.AddQANPostgreSQLPgStatMonitorAgentParams) (*inventoryv1.AddAgentResponse, error) { + var agent *inventoryv1.QANPostgreSQLPgStatMonitorAgent + e := as.db.InTransactionContext(ctx, nil, func(tx *reform.TX) error { params := &models.CreateAgentParams{ PMMAgentID: p.PmmAgentId, ServiceID: p.ServiceId, @@ -787,37 +877,49 @@ func (as *AgentsService) AddQANPostgreSQLPgStatMonitorAgent(ctx context.Context, } } - agent, err := services.ToAPIAgent(tx.Querier, row) + aa, err := services.ToAPIAgent(tx.Querier, row) if err != nil { return err } - res = agent.(*inventoryv1.QANPostgreSQLPgStatMonitorAgent) //nolint:forcetypeassert + agent = aa.(*inventoryv1.QANPostgreSQLPgStatMonitorAgent) //nolint:forcetypeassert return nil }) if e != nil { - return res, e + return nil, e } as.state.RequestStateUpdate(ctx, p.PmmAgentId) + res := &inventoryv1.AddAgentResponse{ + Agent: &inventoryv1.AddAgentResponse_QanPostgresqlPgstatmonitorAgent{ + QanPostgresqlPgstatmonitorAgent: agent, + }, + } + return res, e } // ChangeQANPostgreSQLPgStatMonitorAgent updates PostgreSQL Pg stat monitor QAN Agent with given parameters. -func (as *AgentsService) ChangeQANPostgreSQLPgStatMonitorAgent(ctx context.Context, req *inventoryv1.ChangeQANPostgreSQLPgStatMonitorAgentRequest) (*inventoryv1.QANPostgreSQLPgStatMonitorAgent, error) { //nolint:lll - agent, err := as.changeAgent(req.AgentId, req.Common) +func (as *AgentsService) ChangeQANPostgreSQLPgStatMonitorAgent(ctx context.Context, req *inventoryv1.ChangeQANPostgreSQLPgStatMonitorAgentParams) (*inventoryv1.ChangeAgentResponse, error) { //nolint:lll + ag, err := as.changeAgent(ctx, req.AgentId, req.Common) if err != nil { return nil, err } - res := agent.(*inventoryv1.QANPostgreSQLPgStatMonitorAgent) //nolint:forcetypeassert - as.state.RequestStateUpdate(ctx, res.PmmAgentId) + agent := ag.(*inventoryv1.QANPostgreSQLPgStatMonitorAgent) //nolint:forcetypeassert + as.state.RequestStateUpdate(ctx, agent.PmmAgentId) + + res := &inventoryv1.ChangeAgentResponse{ + Agent: &inventoryv1.ChangeAgentResponse_QanPostgresqlPgstatmonitorAgent{ + QanPostgresqlPgstatmonitorAgent: agent, + }, + } return res, nil } // AddRDSExporter inserts rds_exporter Agent with given parameters. -func (as *AgentsService) AddRDSExporter(ctx context.Context, p *inventoryv1.AddRDSExporterParams) (*inventoryv1.RDSExporter, error) { - var res *inventoryv1.RDSExporter - e := as.db.InTransaction(func(tx *reform.TX) error { +func (as *AgentsService) AddRDSExporter(ctx context.Context, p *inventoryv1.AddRDSExporterParams) (*inventoryv1.AddAgentResponse, error) { + var agent *inventoryv1.RDSExporter + e := as.db.InTransactionContext(ctx, nil, func(tx *reform.TX) error { params := &models.CreateAgentParams{ PMMAgentID: p.PmmAgentId, NodeID: p.NodeId, @@ -839,11 +941,11 @@ func (as *AgentsService) AddRDSExporter(ctx context.Context, p *inventoryv1.AddR // ... // } - agent, err := services.ToAPIAgent(tx.Querier, row) + aa, err := services.ToAPIAgent(tx.Querier, row) if err != nil { return err } - res = agent.(*inventoryv1.RDSExporter) //nolint:forcetypeassert + agent = aa.(*inventoryv1.RDSExporter) //nolint:forcetypeassert return nil }) if e != nil { @@ -851,28 +953,40 @@ func (as *AgentsService) AddRDSExporter(ctx context.Context, p *inventoryv1.AddR } as.state.RequestStateUpdate(ctx, p.PmmAgentId) + res := &inventoryv1.AddAgentResponse{ + Agent: &inventoryv1.AddAgentResponse_RdsExporter{ + RdsExporter: agent, + }, + } + return res, nil } // ChangeRDSExporter updates rds_exporter Agent with given parameters. -func (as *AgentsService) ChangeRDSExporter(ctx context.Context, req *inventoryv1.ChangeRDSExporterRequest) (*inventoryv1.RDSExporter, error) { - agent, err := as.changeAgent(req.AgentId, req.Common) +func (as *AgentsService) ChangeRDSExporter(ctx context.Context, req *inventoryv1.ChangeRDSExporterParams) (*inventoryv1.ChangeAgentResponse, error) { + ag, err := as.changeAgent(ctx, req.AgentId, req.Common) if err != nil { return nil, err } - res := agent.(*inventoryv1.RDSExporter) //nolint:forcetypeassert - as.state.RequestStateUpdate(ctx, res.PmmAgentId) + agent := ag.(*inventoryv1.RDSExporter) //nolint:forcetypeassert + as.state.RequestStateUpdate(ctx, agent.PmmAgentId) + + res := &inventoryv1.ChangeAgentResponse{ + Agent: &inventoryv1.ChangeAgentResponse_RdsExporter{ + RdsExporter: agent, + }, + } return res, nil } // AddExternalExporter inserts external-exporter Agent with given parameters. -func (as *AgentsService) AddExternalExporter(ctx context.Context, p *inventoryv1.AddExternalExporterParams) (*inventoryv1.ExternalExporter, error) { +func (as *AgentsService) AddExternalExporter(ctx context.Context, p *inventoryv1.AddExternalExporterParams) (*inventoryv1.AddAgentResponse, error) { var ( - res *inventoryv1.ExternalExporter + agent *inventoryv1.ExternalExporter PMMAgentID *string ) - e := as.db.InTransaction(func(tx *reform.TX) error { + e := as.db.InTransactionContext(ctx, nil, func(tx *reform.TX) error { params := &models.CreateExternalExporterParams{ RunsOnNodeID: p.RunsOnNodeId, ServiceID: p.ServiceId, @@ -889,11 +1003,11 @@ func (as *AgentsService) AddExternalExporter(ctx context.Context, p *inventoryv1 return err } - agent, err := services.ToAPIAgent(tx.Querier, row) + aa, err := services.ToAPIAgent(tx.Querier, row) if err != nil { return err } - res = agent.(*inventoryv1.ExternalExporter) //nolint:forcetypeassert + agent = aa.(*inventoryv1.ExternalExporter) //nolint:forcetypeassert PMMAgentID = row.PMMAgentID return nil }) @@ -908,12 +1022,18 @@ func (as *AgentsService) AddExternalExporter(ctx context.Context, p *inventoryv1 as.vmdb.RequestConfigurationUpdate() } + res := &inventoryv1.AddAgentResponse{ + Agent: &inventoryv1.AddAgentResponse_ExternalExporter{ + ExternalExporter: agent, + }, + } + return res, nil } // ChangeExternalExporter updates external-exporter Agent with given parameters. -func (as *AgentsService) ChangeExternalExporter(req *inventoryv1.ChangeExternalExporterRequest) (*inventoryv1.ExternalExporter, error) { - agent, err := as.changeAgent(req.AgentId, req.Common) +func (as *AgentsService) ChangeExternalExporter(ctx context.Context, req *inventoryv1.ChangeExternalExporterParams) (*inventoryv1.ChangeAgentResponse, error) { + ag, err := as.changeAgent(ctx, req.AgentId, req.Common) if err != nil { return nil, err } @@ -921,15 +1041,22 @@ func (as *AgentsService) ChangeExternalExporter(req *inventoryv1.ChangeExternalE // It's required to regenerate victoriametrics config file. as.vmdb.RequestConfigurationUpdate() - res := agent.(*inventoryv1.ExternalExporter) //nolint:forceTypeAssert + agent := ag.(*inventoryv1.ExternalExporter) //nolint:forceTypeAssert + + res := &inventoryv1.ChangeAgentResponse{ + Agent: &inventoryv1.ChangeAgentResponse_ExternalExporter{ + ExternalExporter: agent, + }, + } + return res, nil } // AddAzureDatabaseExporter inserts azure_exporter Agent with given parameters. -func (as *AgentsService) AddAzureDatabaseExporter(ctx context.Context, p *inventoryv1.AddAzureDatabaseExporterParams) (*inventoryv1.AzureDatabaseExporter, error) { - var res *inventoryv1.AzureDatabaseExporter +func (as *AgentsService) AddAzureDatabaseExporter(ctx context.Context, p *inventoryv1.AddAzureDatabaseExporterParams) (*inventoryv1.AddAgentResponse, error) { + var agent *inventoryv1.AzureDatabaseExporter - e := as.db.InTransaction(func(tx *reform.TX) error { + e := as.db.InTransactionContext(ctx, nil, func(tx *reform.TX) error { params := &models.CreateAgentParams{ PMMAgentID: p.PmmAgentId, NodeID: p.NodeId, @@ -943,11 +1070,11 @@ func (as *AgentsService) AddAzureDatabaseExporter(ctx context.Context, p *invent return err } - agent, err := services.ToAPIAgent(tx.Querier, row) + aa, err := services.ToAPIAgent(tx.Querier, row) if err != nil { return err } - res = agent.(*inventoryv1.AzureDatabaseExporter) //nolint:forcetypeassert + agent = aa.(*inventoryv1.AzureDatabaseExporter) //nolint:forcetypeassert return nil }) if e != nil { @@ -955,28 +1082,40 @@ func (as *AgentsService) AddAzureDatabaseExporter(ctx context.Context, p *invent } as.state.RequestStateUpdate(ctx, p.PmmAgentId) + res := &inventoryv1.AddAgentResponse{ + Agent: &inventoryv1.AddAgentResponse_AzureDatabaseExporter{ + AzureDatabaseExporter: agent, + }, + } + return res, nil } // ChangeAzureDatabaseExporter updates azure_exporter Agent with given parameters. func (as *AgentsService) ChangeAzureDatabaseExporter( ctx context.Context, - req *inventoryv1.ChangeAzureDatabaseExporterRequest, -) (*inventoryv1.AzureDatabaseExporter, error) { - agent, err := as.changeAgent(req.AgentId, req.Common) + req *inventoryv1.ChangeAzureDatabaseExporterParams, +) (*inventoryv1.ChangeAgentResponse, error) { + ag, err := as.changeAgent(ctx, req.AgentId, req.Common) if err != nil { return nil, err } - res := agent.(*inventoryv1.AzureDatabaseExporter) //nolint:forcetypeassert - as.state.RequestStateUpdate(ctx, res.PmmAgentId) + agent := ag.(*inventoryv1.AzureDatabaseExporter) //nolint:forcetypeassert + as.state.RequestStateUpdate(ctx, agent.PmmAgentId) + + res := &inventoryv1.ChangeAgentResponse{ + Agent: &inventoryv1.ChangeAgentResponse_AzureDatabaseExporter{ + AzureDatabaseExporter: agent, + }, + } return res, nil } // Remove removes Agent, and sends state update to pmm-agent, or kicks it. func (as *AgentsService) Remove(ctx context.Context, id string, force bool) error { var removedAgent *models.Agent - e := as.db.InTransaction(func(tx *reform.TX) error { + e := as.db.InTransactionContext(ctx, nil, func(tx *reform.TX) error { var err error mode := models.RemoveRestrict if force { diff --git a/managed/services/inventory/agents_test.go b/managed/services/inventory/agents_test.go index c8b73462b7..cca2f9192f 100644 --- a/managed/services/inventory/agents_test.go +++ b/managed/services/inventory/agents_test.go @@ -27,6 +27,7 @@ import ( "google.golang.org/grpc/status" "gopkg.in/reform.v1" + "github.com/percona/pmm/api/common" inventoryv1 "github.com/percona/pmm/api/inventory/v1" "github.com/percona/pmm/managed/models" "github.com/percona/pmm/managed/utils/tests" @@ -34,192 +35,230 @@ import ( func TestAgents(t *testing.T) { t.Run("Basic", func(t *testing.T) { - // FIXME split this test into several smaller - ss, as, _, teardown, ctx, _ := setup(t) - defer teardown(t) - - as.r.(*mockAgentsRegistry).On("IsConnected", models.PMMServerAgentID).Return(true) - actualAgents, err := as.List(ctx, models.AgentFilters{}) - require.NoError(t, err) - require.Len(t, actualAgents, 4) // PMM Server's pmm-agent, node_exporter, postgres_exporter, PostgreSQL QAN - - as.r.(*mockAgentsRegistry).On("IsConnected", "/agent_id/00000000-0000-4000-8000-000000000005").Return(true) - as.state.(*mockAgentsStateUpdater).On("RequestStateUpdate", ctx, "/agent_id/00000000-0000-4000-8000-000000000005") - as.cc.(*mockConnectionChecker).On("CheckConnectionToService", ctx, - mock.AnythingOfType(reflect.TypeOf(&reform.TX{}).Name()), - mock.AnythingOfType(reflect.TypeOf(&models.Service{}).Name()), - mock.AnythingOfType(reflect.TypeOf(&models.Agent{}).Name())).Return(nil) - as.sib.(*mockServiceInfoBroker).On("GetInfoFromService", ctx, - mock.AnythingOfType(reflect.TypeOf(&reform.TX{}).Name()), - mock.AnythingOfType(reflect.TypeOf(&models.Service{}).Name()), - mock.AnythingOfType(reflect.TypeOf(&models.Agent{}).Name())).Return(nil) - as.vmdb.(*mockPrometheusService).On("RequestConfigurationUpdate").Return() - - pmmAgent, err := as.AddPMMAgent(ctx, &inventoryv1.AddPMMAgentParams{ - RunsOnNodeId: models.PMMServerNodeID, - }) - require.NoError(t, err) - expectedPMMAgent := &inventoryv1.PMMAgent{ - AgentId: "/agent_id/00000000-0000-4000-8000-000000000005", - RunsOnNodeId: models.PMMServerNodeID, - Connected: true, - } - assert.Equal(t, expectedPMMAgent, pmmAgent) - - actualNodeExporter, err := as.AddNodeExporter(ctx, &inventoryv1.AddNodeExporterParams{ - PmmAgentId: pmmAgent.AgentId, + t.Cleanup(func() { teardown(t) }) + + var ( + pmmAgentID string + ms *inventoryv1.MySQLService + ps *inventoryv1.PostgreSQLService + expectedNodeExporter *inventoryv1.NodeExporter + expectedMySQLdExporter *inventoryv1.MySQLdExporter + expectedMongoDBExporter *inventoryv1.MongoDBExporter + expectedQANMySQLSlowlogAgent *inventoryv1.QANMySQLSlowlogAgent + expectedPostgresExporter *inventoryv1.PostgresExporter + expectedExternalExporter *inventoryv1.ExternalExporter + ) + + t.Run("AddPMMAgent", func(t *testing.T) { + as.r.(*mockAgentsRegistry).On("IsConnected", models.PMMServerAgentID).Return(true) + actualAgents, err := as.List(ctx, models.AgentFilters{}) + require.NoError(t, err) + require.Len(t, actualAgents, 4) // PMM Server's pmm-agent, node_exporter, postgres_exporter, PostgreSQL QAN + + as.r.(*mockAgentsRegistry).On("IsConnected", "/agent_id/00000000-0000-4000-8000-000000000005").Return(true) + as.state.(*mockAgentsStateUpdater).On("RequestStateUpdate", ctx, "/agent_id/00000000-0000-4000-8000-000000000005") + as.cc.(*mockConnectionChecker).On("CheckConnectionToService", ctx, + mock.AnythingOfType(reflect.TypeOf(&reform.TX{}).Name()), + mock.AnythingOfType(reflect.TypeOf(&models.Service{}).Name()), + mock.AnythingOfType(reflect.TypeOf(&models.Agent{}).Name())).Return(nil) + as.sib.(*mockServiceInfoBroker).On("GetInfoFromService", ctx, + mock.AnythingOfType(reflect.TypeOf(&reform.TX{}).Name()), + mock.AnythingOfType(reflect.TypeOf(&models.Service{}).Name()), + mock.AnythingOfType(reflect.TypeOf(&models.Agent{}).Name())).Return(nil) + as.vmdb.(*mockPrometheusService).On("RequestConfigurationUpdate").Return() + + pmmAgent, err := as.AddPMMAgent(ctx, &inventoryv1.AddPMMAgentParams{ + RunsOnNodeId: models.PMMServerNodeID, + }) + + pmmAgentID = pmmAgent.GetPmmAgent().AgentId + require.NoError(t, err) + expectedPMMAgent := &inventoryv1.PMMAgent{ + AgentId: "/agent_id/00000000-0000-4000-8000-000000000005", + RunsOnNodeId: models.PMMServerNodeID, + Connected: true, + } + assert.Equal(t, expectedPMMAgent, pmmAgent.GetPmmAgent()) }) - require.NoError(t, err) - expectedNodeExporter := &inventoryv1.NodeExporter{ - AgentId: "/agent_id/00000000-0000-4000-8000-000000000006", - PmmAgentId: "/agent_id/00000000-0000-4000-8000-000000000005", - Status: inventoryv1.AgentStatus_AGENT_STATUS_UNKNOWN, - } - assert.Equal(t, expectedNodeExporter, actualNodeExporter) - actualNodeExporter, err = as.ChangeNodeExporter(ctx, &inventoryv1.ChangeNodeExporterRequest{ - AgentId: "/agent_id/00000000-0000-4000-8000-000000000006", - Common: &inventoryv1.ChangeCommonAgentParams{ - Disable: true, - }, - }) - require.NoError(t, err) - expectedNodeExporter = &inventoryv1.NodeExporter{ - AgentId: "/agent_id/00000000-0000-4000-8000-000000000006", - PmmAgentId: "/agent_id/00000000-0000-4000-8000-000000000005", - Disabled: true, - Status: inventoryv1.AgentStatus_AGENT_STATUS_UNKNOWN, - } - assert.Equal(t, expectedNodeExporter, actualNodeExporter) + t.Run("AddNodeExporter", func(t *testing.T) { + actualNodeExporter, err := as.AddNodeExporter(ctx, &inventoryv1.AddNodeExporterParams{ + PmmAgentId: pmmAgentID, + CustomLabels: map[string]string{"cluster": "test-cluster", "environment": "test-env"}, + }) + require.NoError(t, err) + expectedNodeExporter := &inventoryv1.NodeExporter{ + AgentId: "/agent_id/00000000-0000-4000-8000-000000000006", + PmmAgentId: "/agent_id/00000000-0000-4000-8000-000000000005", + Status: inventoryv1.AgentStatus_AGENT_STATUS_UNKNOWN, + CustomLabels: map[string]string{ + "cluster": "test-cluster", + "environment": "test-env", + }, + } + assert.Equal(t, expectedNodeExporter, actualNodeExporter.GetNodeExporter()) + }) + + t.Run("ChangeNodeExporterAndRemoveCustomLabels", func(t *testing.T) { + actualNodeExporter, err := as.ChangeNodeExporter(ctx, &inventoryv1.ChangeNodeExporterParams{ + AgentId: "/agent_id/00000000-0000-4000-8000-000000000006", + Common: &inventoryv1.ChangeCommonAgentParams{ + Enable: pointer.ToBool(false), + // passing an empty map to remove custom labels + CustomLabels: &common.StringMap{}, + }, + }) + require.NoError(t, err) + expectedNodeExporter = &inventoryv1.NodeExporter{ + AgentId: "/agent_id/00000000-0000-4000-8000-000000000006", + PmmAgentId: "/agent_id/00000000-0000-4000-8000-000000000005", + Disabled: true, + Status: inventoryv1.AgentStatus_AGENT_STATUS_UNKNOWN, + } + assert.Equal(t, expectedNodeExporter, actualNodeExporter.GetNodeExporter()) - actualAgent, err := as.Get(ctx, "/agent_id/00000000-0000-4000-8000-000000000006") - require.NoError(t, err) - assert.Equal(t, expectedNodeExporter, actualAgent) + actualAgent, err := as.Get(ctx, "/agent_id/00000000-0000-4000-8000-000000000006") + require.NoError(t, err) + assert.Equal(t, expectedNodeExporter, actualAgent.(*inventoryv1.NodeExporter)) + }) + + t.Run("AddMySQLExporter", func(t *testing.T) { + var err error + ss.vc.(*mockVersionCache).On("RequestSoftwareVersionsUpdate").Once() + ms, err = ss.AddMySQL(ctx, &models.AddDBMSServiceParams{ + ServiceName: "test-mysql", + NodeID: models.PMMServerNodeID, + Address: pointer.ToString("127.0.0.1"), + Port: pointer.ToUint16(3306), + }) + require.NoError(t, err) - ss.vc.(*mockVersionCache).On("RequestSoftwareVersionsUpdate").Once() - s, err := ss.AddMySQL(ctx, &models.AddDBMSServiceParams{ - ServiceName: "test-mysql", - NodeID: models.PMMServerNodeID, - Address: pointer.ToString("127.0.0.1"), - Port: pointer.ToUint16(3306), - }) - require.NoError(t, err) + actualAgent, err := as.AddMySQLdExporter(ctx, &inventoryv1.AddMySQLdExporterParams{ + PmmAgentId: pmmAgentID, + ServiceId: ms.ServiceId, + Username: "username", + }) + require.NoError(t, err) + expectedMySQLdExporter = &inventoryv1.MySQLdExporter{ + AgentId: "/agent_id/00000000-0000-4000-8000-000000000008", + PmmAgentId: "/agent_id/00000000-0000-4000-8000-000000000005", + ServiceId: ms.ServiceId, + Username: "username", + Status: inventoryv1.AgentStatus_AGENT_STATUS_UNKNOWN, + } + assert.Equal(t, expectedMySQLdExporter, actualAgent.GetMysqldExporter()) - actualAgent, _, err = as.AddMySQLdExporter(ctx, &inventoryv1.AddMySQLdExporterParams{ - PmmAgentId: pmmAgent.AgentId, - ServiceId: s.ServiceId, - Username: "username", + exporter, err := as.Get(ctx, "/agent_id/00000000-0000-4000-8000-000000000008") + require.NoError(t, err) + assert.Equal(t, expectedMySQLdExporter, exporter.(*inventoryv1.MySQLdExporter)) }) - require.NoError(t, err) - expectedMySQLdExporter := &inventoryv1.MySQLdExporter{ - AgentId: "/agent_id/00000000-0000-4000-8000-000000000008", - PmmAgentId: "/agent_id/00000000-0000-4000-8000-000000000005", - ServiceId: s.ServiceId, - Username: "username", - Status: inventoryv1.AgentStatus_AGENT_STATUS_UNKNOWN, - } - assert.Equal(t, expectedMySQLdExporter, actualAgent) - actualAgent, err = as.Get(ctx, "/agent_id/00000000-0000-4000-8000-000000000008") - require.NoError(t, err) - assert.Equal(t, expectedMySQLdExporter, actualAgent) + t.Run("AddMongoDBExporter", func(t *testing.T) { + ms, err := ss.AddMongoDB(ctx, &models.AddDBMSServiceParams{ + ServiceName: "test-mongo", + NodeID: models.PMMServerNodeID, + Address: pointer.ToString("127.0.0.1"), + Port: pointer.ToUint16(27017), + }) + require.NoError(t, err) - ms, err := ss.AddMongoDB(ctx, &models.AddDBMSServiceParams{ - ServiceName: "test-mongo", - NodeID: models.PMMServerNodeID, - Address: pointer.ToString("127.0.0.1"), - Port: pointer.ToUint16(27017), - }) - require.NoError(t, err) + actualAgent, err := as.AddMongoDBExporter(ctx, &inventoryv1.AddMongoDBExporterParams{ + PmmAgentId: pmmAgentID, + ServiceId: ms.ServiceId, + Username: "username", + StatsCollections: nil, + CollectionsLimit: 0, // no limit + }) + require.NoError(t, err) + expectedMongoDBExporter = &inventoryv1.MongoDBExporter{ + AgentId: "/agent_id/00000000-0000-4000-8000-00000000000a", + PmmAgentId: pmmAgentID, + ServiceId: ms.ServiceId, + Username: "username", + Status: inventoryv1.AgentStatus_AGENT_STATUS_UNKNOWN, + } + assert.Equal(t, expectedMongoDBExporter, actualAgent.GetMongodbExporter()) - actualAgent, err = as.AddMongoDBExporter(ctx, &inventoryv1.AddMongoDBExporterParams{ - PmmAgentId: pmmAgent.AgentId, - ServiceId: ms.ServiceId, - Username: "username", - StatsCollections: nil, - CollectionsLimit: 0, // no limit + exporter, err := as.Get(ctx, "/agent_id/00000000-0000-4000-8000-00000000000a") + require.NoError(t, err) + assert.Equal(t, expectedMongoDBExporter, exporter.(*inventoryv1.MongoDBExporter)) }) - require.NoError(t, err) - expectedMongoDBExporter := &inventoryv1.MongoDBExporter{ - AgentId: "/agent_id/00000000-0000-4000-8000-00000000000a", - PmmAgentId: pmmAgent.AgentId, - ServiceId: ms.ServiceId, - Username: "username", - Status: inventoryv1.AgentStatus_AGENT_STATUS_UNKNOWN, - } - assert.Equal(t, expectedMongoDBExporter, actualAgent) - actualAgent, err = as.Get(ctx, "/agent_id/00000000-0000-4000-8000-00000000000a") - require.NoError(t, err) - assert.Equal(t, expectedMongoDBExporter, actualAgent) + t.Run("AddQANMySQLSlowlogAgent", func(t *testing.T) { + actualAgent, err := as.AddQANMySQLSlowlogAgent(ctx, &inventoryv1.AddQANMySQLSlowlogAgentParams{ + PmmAgentId: pmmAgentID, + ServiceId: ms.ServiceId, + Username: "username", + }) + require.NoError(t, err) + expectedQANMySQLSlowlogAgent = &inventoryv1.QANMySQLSlowlogAgent{ + AgentId: "/agent_id/00000000-0000-4000-8000-00000000000b", + PmmAgentId: pmmAgentID, + ServiceId: ms.ServiceId, + Username: "username", + Status: inventoryv1.AgentStatus_AGENT_STATUS_UNKNOWN, + } + assert.Equal(t, expectedQANMySQLSlowlogAgent, actualAgent.GetQanMysqlSlowlogAgent()) - actualAgent, err = as.AddQANMySQLSlowlogAgent(ctx, &inventoryv1.AddQANMySQLSlowlogAgentParams{ - PmmAgentId: pmmAgent.AgentId, - ServiceId: s.ServiceId, - Username: "username", + exporter, err := as.Get(ctx, "/agent_id/00000000-0000-4000-8000-00000000000b") + require.NoError(t, err) + assert.Equal(t, expectedQANMySQLSlowlogAgent, exporter.(*inventoryv1.QANMySQLSlowlogAgent)) }) - require.NoError(t, err) - expectedQANMySQLSlowlogAgent := &inventoryv1.QANMySQLSlowlogAgent{ - AgentId: "/agent_id/00000000-0000-4000-8000-00000000000b", - PmmAgentId: pmmAgent.AgentId, - ServiceId: s.ServiceId, - Username: "username", - Status: inventoryv1.AgentStatus_AGENT_STATUS_UNKNOWN, - } - assert.Equal(t, expectedQANMySQLSlowlogAgent, actualAgent) - actualAgent, err = as.Get(ctx, "/agent_id/00000000-0000-4000-8000-00000000000b") - require.NoError(t, err) - assert.Equal(t, expectedQANMySQLSlowlogAgent, actualAgent) + t.Run("AddPostgreSQLExporter", func(t *testing.T) { + var err error + ps, err = ss.AddPostgreSQL(ctx, &models.AddDBMSServiceParams{ + ServiceName: "test-postgres", + NodeID: models.PMMServerNodeID, + Address: pointer.ToString("127.0.0.1"), + Port: pointer.ToUint16(5432), + }) + require.NoError(t, err) - ps, err := ss.AddPostgreSQL(ctx, &models.AddDBMSServiceParams{ - ServiceName: "test-postgres", - NodeID: models.PMMServerNodeID, - Address: pointer.ToString("127.0.0.1"), - Port: pointer.ToUint16(5432), - }) - require.NoError(t, err) + actualAgent, err := as.AddPostgresExporter(ctx, &inventoryv1.AddPostgresExporterParams{ + PmmAgentId: pmmAgentID, + ServiceId: ps.ServiceId, + Username: "username", + }) + require.NoError(t, err) + expectedPostgresExporter = &inventoryv1.PostgresExporter{ + AgentId: "/agent_id/00000000-0000-4000-8000-00000000000d", + PmmAgentId: pmmAgentID, + ServiceId: ps.ServiceId, + Username: "username", + Status: inventoryv1.AgentStatus_AGENT_STATUS_UNKNOWN, + } + assert.Equal(t, expectedPostgresExporter, actualAgent.GetPostgresExporter()) - actualAgent, err = as.AddPostgresExporter(ctx, &inventoryv1.AddPostgresExporterParams{ - PmmAgentId: pmmAgent.AgentId, - ServiceId: ps.ServiceId, - Username: "username", + exporter, err := as.Get(ctx, "/agent_id/00000000-0000-4000-8000-00000000000d") + require.NoError(t, err) + assert.Equal(t, expectedPostgresExporter, exporter.(*inventoryv1.PostgresExporter)) }) - require.NoError(t, err) - expectedPostgresExporter := &inventoryv1.PostgresExporter{ - AgentId: "/agent_id/00000000-0000-4000-8000-00000000000d", - PmmAgentId: pmmAgent.AgentId, - ServiceId: ps.ServiceId, - Username: "username", - Status: inventoryv1.AgentStatus_AGENT_STATUS_UNKNOWN, - } - assert.Equal(t, expectedPostgresExporter, actualAgent) - actualAgent, err = as.Get(ctx, "/agent_id/00000000-0000-4000-8000-00000000000d") - require.NoError(t, err) - assert.Equal(t, expectedPostgresExporter, actualAgent) - - actualAgent, err = as.AddExternalExporter(ctx, &inventoryv1.AddExternalExporterParams{ - RunsOnNodeId: models.PMMServerNodeID, - ServiceId: ps.ServiceId, - Username: "username", - ListenPort: 9222, + t.Run("AddExternalExporter", func(t *testing.T) { + actualAgent, err := as.AddExternalExporter(ctx, &inventoryv1.AddExternalExporterParams{ + RunsOnNodeId: models.PMMServerNodeID, + ServiceId: ps.ServiceId, + Username: "username", + ListenPort: 9222, + }) + require.NoError(t, err) + expectedExternalExporter = &inventoryv1.ExternalExporter{ + AgentId: "/agent_id/00000000-0000-4000-8000-00000000000e", + RunsOnNodeId: models.PMMServerNodeID, + ServiceId: ps.ServiceId, + Username: "username", + Scheme: "http", + MetricsPath: "/metrics", + ListenPort: 9222, + } + assert.Equal(t, expectedExternalExporter, actualAgent.GetExternalExporter()) }) - require.NoError(t, err) - expectedExternalExporter := &inventoryv1.ExternalExporter{ - AgentId: "/agent_id/00000000-0000-4000-8000-00000000000e", - RunsOnNodeId: models.PMMServerNodeID, - ServiceId: ps.ServiceId, - Username: "username", - Scheme: "http", - MetricsPath: "/metrics", - ListenPort: 9222, - } - assert.Equal(t, expectedExternalExporter, actualAgent) + var actualAgents []inventoryv1.Agent t.Run("ListAllAgents", func(t *testing.T) { - actualAgents, err = as.List(ctx, models.AgentFilters{}) + actualAgents, err := as.List(ctx, models.AgentFilters{}) require.NoError(t, err) for i, a := range actualAgents { t.Logf("%d: %T %s", i, a, a) @@ -227,7 +266,7 @@ func TestAgents(t *testing.T) { require.Len(t, actualAgents, 11) // TODO: fix protobuf equality https://jira.percona.com/browse/PMM-6743 - assert.Equal(t, pmmAgent.AgentId, actualAgents[3].(*inventoryv1.PMMAgent).AgentId) + assert.Equal(t, pmmAgentID, actualAgents[3].(*inventoryv1.PMMAgent).AgentId) assert.Equal(t, expectedNodeExporter.AgentId, actualAgents[4].(*inventoryv1.NodeExporter).AgentId) assert.Equal(t, expectedMySQLdExporter.AgentId, actualAgents[5].(*inventoryv1.MySQLdExporter).AgentId) assert.Equal(t, expectedMongoDBExporter.AgentId, actualAgents[6].(*inventoryv1.MongoDBExporter).AgentId) @@ -237,7 +276,7 @@ func TestAgents(t *testing.T) { }) t.Run("FilterByServiceID", func(t *testing.T) { - actualAgents, err = as.List(ctx, models.AgentFilters{ServiceID: s.ServiceId}) + actualAgents, err := as.List(ctx, models.AgentFilters{ServiceID: ms.ServiceId}) require.NoError(t, err) require.Len(t, actualAgents, 2) assert.Equal(t, expectedMySQLdExporter, actualAgents[0]) @@ -245,7 +284,7 @@ func TestAgents(t *testing.T) { }) t.Run("FilterByPMMAgent", func(t *testing.T) { - actualAgents, err = as.List(ctx, models.AgentFilters{PMMAgentID: pmmAgent.AgentId}) + actualAgents, err := as.List(ctx, models.AgentFilters{PMMAgentID: pmmAgentID}) require.NoError(t, err) require.Len(t, actualAgents, 5) assert.Equal(t, expectedNodeExporter, actualAgents[0]) @@ -256,7 +295,7 @@ func TestAgents(t *testing.T) { }) t.Run("FilterByNode", func(t *testing.T) { - actualAgents, err = as.List(ctx, models.AgentFilters{NodeID: models.PMMServerNodeID}) + actualAgents, err := as.List(ctx, models.AgentFilters{NodeID: models.PMMServerNodeID}) require.NoError(t, err) require.Len(t, actualAgents, 2) assert.Equal(t, expectedNodeExporter, actualAgents[1]) @@ -264,33 +303,35 @@ func TestAgents(t *testing.T) { t.Run("FilterByAgentType", func(t *testing.T) { agentType := models.ExternalExporterType - actualAgents, err = as.List(ctx, models.AgentFilters{AgentType: &agentType}) + actualAgents, err := as.List(ctx, models.AgentFilters{AgentType: &agentType}) require.NoError(t, err) require.Len(t, actualAgents, 1) assert.Equal(t, expectedExternalExporter, actualAgents[0]) }) t.Run("FilterByMultipleFields", func(t *testing.T) { - actualAgents, err = as.List(ctx, models.AgentFilters{PMMAgentID: pmmAgent.AgentId, NodeID: models.PMMServerNodeID}) + actualAgents, err := as.List(ctx, models.AgentFilters{PMMAgentID: pmmAgentID, NodeID: models.PMMServerNodeID}) tests.AssertGRPCError(t, status.New(codes.InvalidArgument, `expected at most one param: pmm_agent_id, node_id or service_id`), err) assert.Nil(t, actualAgents) }) - as.r.(*mockAgentsRegistry).On("Kick", ctx, "/agent_id/00000000-0000-4000-8000-000000000005").Return(true) - err = as.Remove(ctx, "/agent_id/00000000-0000-4000-8000-000000000005", true) - require.NoError(t, err) - actualAgent, err = as.Get(ctx, "/agent_id/00000000-0000-4000-8000-000000000005") - tests.AssertGRPCError(t, status.New(codes.NotFound, `Agent with ID "/agent_id/00000000-0000-4000-8000-000000000005" not found.`), err) - assert.Nil(t, actualAgent) + t.Run("RemovePMMAgent", func(t *testing.T) { + as.r.(*mockAgentsRegistry).On("Kick", ctx, "/agent_id/00000000-0000-4000-8000-000000000005").Return(true) + err := as.Remove(ctx, "/agent_id/00000000-0000-4000-8000-000000000005", true) + require.NoError(t, err) + actualAgent, err := as.Get(ctx, "/agent_id/00000000-0000-4000-8000-000000000005") + tests.AssertGRPCError(t, status.New(codes.NotFound, `Agent with ID "/agent_id/00000000-0000-4000-8000-000000000005" not found.`), err) + assert.Nil(t, actualAgent) - actualAgents, err = as.List(ctx, models.AgentFilters{}) - require.NoError(t, err) - require.Len(t, actualAgents, 5) // PMM Server's pmm-agent, node_exporter, postgres_exporter, PostgreSQL QAN, External exporter + actualAgents, err = as.List(ctx, models.AgentFilters{}) + require.NoError(t, err) + require.Len(t, actualAgents, 5) // PMM Server's pmm-agent, node_exporter, postgres_exporter, PostgreSQL QAN, External exporter + }) }) t.Run("GetEmptyID", func(t *testing.T) { _, as, _, teardown, ctx, _ := setup(t) - defer teardown(t) + t.Cleanup(func() { teardown(t) }) actualNode, err := as.Get(ctx, "") tests.AssertGRPCError(t, status.New(codes.InvalidArgument, `Empty Agent ID.`), err) @@ -299,7 +340,7 @@ func TestAgents(t *testing.T) { t.Run("AddPMMAgent", func(t *testing.T) { _, as, _, teardown, ctx, _ := setup(t) - defer teardown(t) + t.Cleanup(func() { teardown(t) }) as.r.(*mockAgentsRegistry).On("IsConnected", "/agent_id/00000000-0000-4000-8000-000000000005").Return(false) actualAgent, err := as.AddPMMAgent(ctx, &inventoryv1.AddPMMAgentParams{ @@ -311,7 +352,7 @@ func TestAgents(t *testing.T) { RunsOnNodeId: models.PMMServerNodeID, Connected: false, } - assert.Equal(t, expectedPMMAgent, actualAgent) + assert.Equal(t, expectedPMMAgent, actualAgent.GetPmmAgent()) as.r.(*mockAgentsRegistry).On("IsConnected", "/agent_id/00000000-0000-4000-8000-000000000006").Return(true) actualAgent, err = as.AddPMMAgent(ctx, &inventoryv1.AddPMMAgentParams{ @@ -323,12 +364,12 @@ func TestAgents(t *testing.T) { RunsOnNodeId: models.PMMServerNodeID, Connected: true, } - assert.Equal(t, expectedPMMAgent, actualAgent) + assert.Equal(t, expectedPMMAgent, actualAgent.GetPmmAgent()) }) t.Run("AddPmmAgentNotFound", func(t *testing.T) { _, as, _, teardown, ctx, _ := setup(t) - defer teardown(t) + t.Cleanup(func() { teardown(t) }) _, err := as.AddNodeExporter(ctx, &inventoryv1.AddNodeExporterParams{ PmmAgentId: "no-such-id", @@ -338,7 +379,7 @@ func TestAgents(t *testing.T) { t.Run("AddRDSExporter", func(t *testing.T) { _, as, ns, teardown, ctx, _ := setup(t) - defer teardown(t) + t.Cleanup(func() { teardown(t) }) node, err := ns.AddRemoteRDSNode(ctx, &inventoryv1.AddRemoteRDSNodeParams{ NodeName: "rds1", @@ -378,12 +419,12 @@ func TestAgents(t *testing.T) { CustomLabels: map[string]string{"baz": "qux"}, Status: inventoryv1.AgentStatus_AGENT_STATUS_UNKNOWN, } - assert.Equal(t, expectedAgent, agent) + assert.Equal(t, expectedAgent, agent.GetRdsExporter()) }) t.Run("AddExternalExporter", func(t *testing.T) { ss, as, _, teardown, ctx, _ := setup(t) - defer teardown(t) + t.Cleanup(func() { teardown(t) }) as.vmdb.(*mockPrometheusService).On("RequestConfigurationUpdate").Return() @@ -411,7 +452,7 @@ func TestAgents(t *testing.T) { MetricsPath: "/metrics", ListenPort: 12345, } - assert.Equal(t, expectedExternalExporter, agent) + assert.Equal(t, expectedExternalExporter, agent.GetExternalExporter()) actualAgent, err := as.Get(ctx, "/agent_id/00000000-0000-4000-8000-000000000006") require.NoError(t, err) @@ -420,7 +461,7 @@ func TestAgents(t *testing.T) { t.Run("AddServiceNotFound", func(t *testing.T) { _, as, _, teardown, ctx, _ := setup(t) - defer teardown(t) + t.Cleanup(func() { teardown(t) }) as.r.(*mockAgentsRegistry).On("IsConnected", "/agent_id/00000000-0000-4000-8000-000000000005").Return(true) pmmAgent, err := as.AddPMMAgent(ctx, &inventoryv1.AddPMMAgentParams{ @@ -428,8 +469,8 @@ func TestAgents(t *testing.T) { }) require.NoError(t, err) - _, _, err = as.AddMySQLdExporter(ctx, &inventoryv1.AddMySQLdExporterParams{ - PmmAgentId: pmmAgent.AgentId, + _, err = as.AddMySQLdExporter(ctx, &inventoryv1.AddMySQLdExporterParams{ + PmmAgentId: pmmAgent.GetPmmAgent().AgentId, ServiceId: "no-such-id", }) tests.AssertGRPCError(t, status.New(codes.NotFound, `Service with ID "no-such-id" not found.`), err) @@ -437,14 +478,15 @@ func TestAgents(t *testing.T) { t.Run("RemoveNotFound", func(t *testing.T) { _, as, _, teardown, ctx, _ := setup(t) - defer teardown(t) + t.Cleanup(func() { teardown(t) }) err := as.Remove(ctx, "no-such-id", false) tests.AssertGRPCError(t, status.New(codes.NotFound, `Agent with ID "no-such-id" not found.`), err) }) + t.Run("PushMetricsMongodbExporter", func(t *testing.T) { ss, as, _, teardown, ctx, _ := setup(t) - defer teardown(t) + t.Cleanup(func() { teardown(t) }) as.r.(*mockAgentsRegistry).On("IsConnected", models.PMMServerAgentID).Return(true) actualAgents, err := as.List(ctx, models.AgentFilters{}) @@ -471,7 +513,7 @@ func TestAgents(t *testing.T) { RunsOnNodeId: models.PMMServerNodeID, Connected: true, } - assert.Equal(t, expectedPMMAgent, pmmAgent) + assert.Equal(t, expectedPMMAgent, pmmAgent.GetPmmAgent()) ms, err := ss.AddMongoDB(ctx, &models.AddDBMSServiceParams{ ServiceName: "test-mongo", NodeID: models.PMMServerNodeID, @@ -480,7 +522,7 @@ func TestAgents(t *testing.T) { }) require.NoError(t, err) actualAgent, err := as.AddMongoDBExporter(ctx, &inventoryv1.AddMongoDBExporterParams{ - PmmAgentId: pmmAgent.AgentId, + PmmAgentId: pmmAgent.GetPmmAgent().AgentId, ServiceId: ms.ServiceId, Username: "username", PushMetrics: true, @@ -488,17 +530,18 @@ func TestAgents(t *testing.T) { require.NoError(t, err) expectedMongoDBExporter := &inventoryv1.MongoDBExporter{ AgentId: "/agent_id/00000000-0000-4000-8000-000000000007", - PmmAgentId: pmmAgent.AgentId, + PmmAgentId: pmmAgent.GetPmmAgent().AgentId, ServiceId: ms.ServiceId, Username: "username", PushMetricsEnabled: true, Status: inventoryv1.AgentStatus_AGENT_STATUS_UNKNOWN, } - assert.Equal(t, expectedMongoDBExporter, actualAgent) + assert.Equal(t, expectedMongoDBExporter, actualAgent.GetMongodbExporter()) }) + t.Run("PushMetricsNodeExporter", func(t *testing.T) { _, as, _, teardown, ctx, _ := setup(t) - defer teardown(t) + t.Cleanup(func() { teardown(t) }) as.r.(*mockAgentsRegistry).On("IsConnected", models.PMMServerAgentID).Return(true) actualAgents, err := as.List(ctx, models.AgentFilters{}) @@ -517,10 +560,10 @@ func TestAgents(t *testing.T) { RunsOnNodeId: models.PMMServerNodeID, Connected: true, } - assert.Equal(t, expectedPMMAgent, pmmAgent) + assert.Equal(t, expectedPMMAgent, pmmAgent.GetPmmAgent()) actualNodeExporter, err := as.AddNodeExporter(ctx, &inventoryv1.AddNodeExporterParams{ - PmmAgentId: pmmAgent.AgentId, + PmmAgentId: pmmAgent.GetPmmAgent().AgentId, PushMetrics: true, }) require.NoError(t, err) @@ -530,11 +573,12 @@ func TestAgents(t *testing.T) { PushMetricsEnabled: true, Status: inventoryv1.AgentStatus_AGENT_STATUS_UNKNOWN, } - assert.Equal(t, expectedNodeExporter, actualNodeExporter) + assert.Equal(t, expectedNodeExporter, actualNodeExporter.GetNodeExporter()) }) + t.Run("PushMetricsPostgresSQLExporter", func(t *testing.T) { ss, as, _, teardown, ctx, _ := setup(t) - defer teardown(t) + t.Cleanup(func() { teardown(t) }) as.r.(*mockAgentsRegistry).On("IsConnected", models.PMMServerAgentID).Return(true) actualAgents, err := as.List(ctx, models.AgentFilters{}) @@ -561,7 +605,7 @@ func TestAgents(t *testing.T) { RunsOnNodeId: models.PMMServerNodeID, Connected: true, } - assert.Equal(t, expectedPMMAgent, pmmAgent) + assert.Equal(t, expectedPMMAgent, pmmAgent.GetPmmAgent()) ps, err := ss.AddPostgreSQL(ctx, &models.AddDBMSServiceParams{ ServiceName: "test-postgres", NodeID: models.PMMServerNodeID, @@ -571,7 +615,7 @@ func TestAgents(t *testing.T) { require.NoError(t, err) actualAgent, err := as.AddPostgresExporter(ctx, &inventoryv1.AddPostgresExporterParams{ - PmmAgentId: pmmAgent.AgentId, + PmmAgentId: pmmAgent.GetPmmAgent().AgentId, ServiceId: ps.ServiceId, Username: "username", PushMetrics: true, @@ -579,17 +623,18 @@ func TestAgents(t *testing.T) { require.NoError(t, err) expectedPostgresExporter := &inventoryv1.PostgresExporter{ AgentId: "/agent_id/00000000-0000-4000-8000-000000000007", - PmmAgentId: pmmAgent.AgentId, + PmmAgentId: pmmAgent.GetPmmAgent().AgentId, ServiceId: ps.ServiceId, Username: "username", PushMetricsEnabled: true, Status: inventoryv1.AgentStatus_AGENT_STATUS_UNKNOWN, } - assert.Equal(t, expectedPostgresExporter, actualAgent) + assert.Equal(t, expectedPostgresExporter, actualAgent.GetPostgresExporter()) }) + t.Run("PushMetricsMySQLExporter", func(t *testing.T) { ss, as, _, teardown, ctx, _ := setup(t) - defer teardown(t) + t.Cleanup(func() { teardown(t) }) as.r.(*mockAgentsRegistry).On("IsConnected", models.PMMServerAgentID).Return(true) actualAgents, err := as.List(ctx, models.AgentFilters{}) @@ -616,7 +661,7 @@ func TestAgents(t *testing.T) { RunsOnNodeId: models.PMMServerNodeID, Connected: true, } - assert.Equal(t, expectedPMMAgent, pmmAgent) + assert.Equal(t, expectedPMMAgent, pmmAgent.GetPmmAgent()) ss.vc.(*mockVersionCache).On("RequestSoftwareVersionsUpdate").Once() s, err := ss.AddMySQL(ctx, &models.AddDBMSServiceParams{ @@ -627,8 +672,8 @@ func TestAgents(t *testing.T) { }) require.NoError(t, err) - actualAgent, _, err := as.AddMySQLdExporter(ctx, &inventoryv1.AddMySQLdExporterParams{ - PmmAgentId: pmmAgent.AgentId, + actualAgent, err := as.AddMySQLdExporter(ctx, &inventoryv1.AddMySQLdExporterParams{ + PmmAgentId: pmmAgent.GetPmmAgent().AgentId, ServiceId: s.ServiceId, Username: "username", PushMetrics: true, @@ -642,11 +687,12 @@ func TestAgents(t *testing.T) { PushMetricsEnabled: true, Status: inventoryv1.AgentStatus_AGENT_STATUS_UNKNOWN, } - assert.Equal(t, expectedMySQLdExporter, actualAgent) + assert.Equal(t, expectedMySQLdExporter, actualAgent.GetMysqldExporter()) }) + t.Run("PushMetricsRdsExporter", func(t *testing.T) { _, as, ns, teardown, ctx, _ := setup(t) - defer teardown(t) + t.Cleanup(func() { teardown(t) }) node, err := ns.AddRemoteRDSNode(ctx, &inventoryv1.AddRemoteRDSNodeParams{ NodeName: "rds1", @@ -688,11 +734,12 @@ func TestAgents(t *testing.T) { PushMetricsEnabled: true, Status: inventoryv1.AgentStatus_AGENT_STATUS_UNKNOWN, } - assert.Equal(t, expectedAgent, agent) + assert.Equal(t, expectedAgent, agent.GetRdsExporter()) }) + t.Run("PushMetricsExternalExporter", func(t *testing.T) { ss, as, _, teardown, ctx, _ := setup(t) - defer teardown(t) + t.Cleanup(func() { teardown(t) }) as.state.(*mockAgentsStateUpdater).On("RequestStateUpdate", ctx, "pmm-server") service, err := ss.AddExternalService(ctx, &models.AddDBMSServiceParams{ @@ -721,7 +768,7 @@ func TestAgents(t *testing.T) { ListenPort: 12345, PushMetricsEnabled: true, } - assert.Equal(t, expectedExternalExporter, agent) + assert.Equal(t, expectedExternalExporter, agent.GetExternalExporter()) actualAgent, err := as.Get(ctx, "/agent_id/00000000-0000-4000-8000-000000000006") require.NoError(t, err) diff --git a/managed/services/inventory/grpc/agents_server.go b/managed/services/inventory/grpc/agents_server.go index 8bfb2d08eb..4b63df1846 100644 --- a/managed/services/inventory/grpc/agents_server.go +++ b/managed/services/inventory/grpc/agents_server.go @@ -173,437 +173,74 @@ func (s *agentsServer) GetAgentLogs(ctx context.Context, req *inventoryv1.GetAge }, nil } -// AddPMMAgent adds pmm-agent Agent. -func (s *agentsServer) addPMMAgent(ctx context.Context, params *inventoryv1.AddPMMAgentParams) (*inventoryv1.AddAgentResponse, error) { - agent, err := s.s.AddPMMAgent(ctx, params) - if err != nil { - return nil, err - } - - res := &inventoryv1.AddAgentResponse{ - Exporter: &inventoryv1.AddAgentResponse_PmmAgent{ - PmmAgent: agent, - }, - } - return res, nil -} - // AddAgent adds an Agent. func (s *agentsServer) AddAgent(ctx context.Context, req *inventoryv1.AddAgentRequest) (*inventoryv1.AddAgentResponse, error) { - switch req.Exporter.(type) { + switch req.Agent.(type) { case *inventoryv1.AddAgentRequest_PmmAgent: - return s.addPMMAgent(ctx, req.GetPmmAgent()) + return s.s.AddPMMAgent(ctx, req.GetPmmAgent()) case *inventoryv1.AddAgentRequest_NodeExporter: - return s.addNodeExporter(ctx, req.GetNodeExporter()) + return s.s.AddNodeExporter(ctx, req.GetNodeExporter()) case *inventoryv1.AddAgentRequest_MysqldExporter: - return s.addMySQLdExporter(ctx, req.GetMysqldExporter()) + return s.s.AddMySQLdExporter(ctx, req.GetMysqldExporter()) case *inventoryv1.AddAgentRequest_MongodbExporter: - return s.addMongoDBExporter(ctx, req.GetMongodbExporter()) + return s.s.AddMongoDBExporter(ctx, req.GetMongodbExporter()) case *inventoryv1.AddAgentRequest_PostgresExporter: - return s.addPostgresExporter(ctx, req.GetPostgresExporter()) + return s.s.AddPostgresExporter(ctx, req.GetPostgresExporter()) case *inventoryv1.AddAgentRequest_ProxysqlExporter: - return s.addProxySQLExporter(ctx, req.GetProxysqlExporter()) + return s.s.AddProxySQLExporter(ctx, req.GetProxysqlExporter()) case *inventoryv1.AddAgentRequest_RdsExporter: - return s.addRDSExporter(ctx, req.GetRdsExporter()) + return s.s.AddRDSExporter(ctx, req.GetRdsExporter()) case *inventoryv1.AddAgentRequest_ExternalExporter: - return s.addExternalExporter(ctx, req.GetExternalExporter()) + return s.s.AddExternalExporter(ctx, req.GetExternalExporter()) case *inventoryv1.AddAgentRequest_AzureDatabaseExporter: - return s.addAzureDatabaseExporter(ctx, req.GetAzureDatabaseExporter()) + return s.s.AddAzureDatabaseExporter(ctx, req.GetAzureDatabaseExporter()) case *inventoryv1.AddAgentRequest_QanMysqlPerfschemaAgent: - return s.addQANMySQLPerfSchemaAgent(ctx, req.GetQanMysqlPerfschemaAgent()) + return s.s.AddQANMySQLPerfSchemaAgent(ctx, req.GetQanMysqlPerfschemaAgent()) case *inventoryv1.AddAgentRequest_QanMysqlSlowlogAgent: - return s.addQANMySQLSlowlogAgent(ctx, req.GetQanMysqlSlowlogAgent()) + return s.s.AddQANMySQLSlowlogAgent(ctx, req.GetQanMysqlSlowlogAgent()) case *inventoryv1.AddAgentRequest_QanMongodbProfilerAgent: - return s.addQANMongoDBProfilerAgent(ctx, req.GetQanMongodbProfilerAgent()) + return s.s.AddQANMongoDBProfilerAgent(ctx, req.GetQanMongodbProfilerAgent()) case *inventoryv1.AddAgentRequest_QanPostgresqlPgstatementsAgent: - return s.addQANPostgreSQLPgStatementsAgent(ctx, req.GetQanPostgresqlPgstatementsAgent()) + return s.s.AddQANPostgreSQLPgStatementsAgent(ctx, req.GetQanPostgresqlPgstatementsAgent()) case *inventoryv1.AddAgentRequest_QanPostgresqlPgstatmonitorAgent: - return s.addQANPostgreSQLPgStatMonitorAgent(ctx, req.GetQanPostgresqlPgstatmonitorAgent()) + return s.s.AddQANPostgreSQLPgStatMonitorAgent(ctx, req.GetQanPostgresqlPgstatmonitorAgent()) default: - return nil, fmt.Errorf("invalid request %v", req.Exporter) - } -} - -// addNodeExporter adds node_exporter Agent. -func (s *agentsServer) addNodeExporter(ctx context.Context, params *inventoryv1.AddNodeExporterParams) (*inventoryv1.AddAgentResponse, error) { - agent, err := s.s.AddNodeExporter(ctx, params) - if err != nil { - return nil, err - } - - res := &inventoryv1.AddAgentResponse{ - Exporter: &inventoryv1.AddAgentResponse_NodeExporter{ - NodeExporter: agent, - }, - } - return res, nil -} - -// ChangeNodeExporter changes disabled flag and custom labels of node_exporter Agent. -func (s *agentsServer) ChangeNodeExporter(ctx context.Context, req *inventoryv1.ChangeNodeExporterRequest) (*inventoryv1.ChangeNodeExporterResponse, error) { - agent, err := s.s.ChangeNodeExporter(ctx, req) - if err != nil { - return nil, err - } - - res := &inventoryv1.ChangeNodeExporterResponse{ - NodeExporter: agent, - } - return res, nil -} - -// addMySQLdExporter adds mysqld_exporter Agent. -func (s *agentsServer) addMySQLdExporter(ctx context.Context, params *inventoryv1.AddMySQLdExporterParams) (*inventoryv1.AddAgentResponse, error) { - agent, tableCount, err := s.s.AddMySQLdExporter(ctx, params) - if err != nil { - return nil, err - } - - res := &inventoryv1.AddAgentResponse{ - Exporter: &inventoryv1.AddAgentResponse_MysqldExporter{ - MysqldExporter: agent, - }, - TableCount: tableCount, - } - return res, nil -} - -// ChangeMySQLdExporter changes disabled flag and custom labels of mysqld_exporter Agent. -func (s *agentsServer) ChangeMySQLdExporter(ctx context.Context, req *inventoryv1.ChangeMySQLdExporterRequest) (*inventoryv1.ChangeMySQLdExporterResponse, error) { - agent, err := s.s.ChangeMySQLdExporter(ctx, req) - if err != nil { - return nil, err - } - - res := &inventoryv1.ChangeMySQLdExporterResponse{ - MysqldExporter: agent, - } - return res, nil -} - -// addMongoDBExporter adds mongodb_exporter Agent. -func (s *agentsServer) addMongoDBExporter(ctx context.Context, params *inventoryv1.AddMongoDBExporterParams) (*inventoryv1.AddAgentResponse, error) { - agent, err := s.s.AddMongoDBExporter(ctx, params) - if err != nil { - return nil, err - } - - res := &inventoryv1.AddAgentResponse{ - Exporter: &inventoryv1.AddAgentResponse_MongodbExporter{ - MongodbExporter: agent, - }, - } - return res, nil -} - -// ChangeMongoDBExporter changes disabled flag and custom labels of mongo_exporter Agent. -func (s *agentsServer) ChangeMongoDBExporter(ctx context.Context, req *inventoryv1.ChangeMongoDBExporterRequest) (*inventoryv1.ChangeMongoDBExporterResponse, error) { - agent, err := s.s.ChangeMongoDBExporter(ctx, req) - if err != nil { - return nil, err - } - - res := &inventoryv1.ChangeMongoDBExporterResponse{ - MongodbExporter: agent, - } - return res, nil -} - -// AddQANMySQLPerfSchemaAgent adds MySQL PerfSchema QAN Agent. -// -//nolint:lll -func (s *agentsServer) addQANMySQLPerfSchemaAgent(ctx context.Context, req *inventoryv1.AddQANMySQLPerfSchemaAgentParams) (*inventoryv1.AddAgentResponse, error) { - agent, err := s.s.AddQANMySQLPerfSchemaAgent(ctx, req) - if err != nil { - return nil, err - } - - res := &inventoryv1.AddAgentResponse{ - Exporter: &inventoryv1.AddAgentResponse_QanMysqlPerfschemaAgent{ - QanMysqlPerfschemaAgent: agent, - }, - } - return res, nil -} - -// ChangeQANMySQLPerfSchemaAgent changes disabled flag and custom labels of MySQL PerfSchema QAN Agent. -// -//nolint:lll -func (s *agentsServer) ChangeQANMySQLPerfSchemaAgent(ctx context.Context, req *inventoryv1.ChangeQANMySQLPerfSchemaAgentRequest) (*inventoryv1.ChangeQANMySQLPerfSchemaAgentResponse, error) { - agent, err := s.s.ChangeQANMySQLPerfSchemaAgent(ctx, req) - if err != nil { - return nil, err - } - - res := &inventoryv1.ChangeQANMySQLPerfSchemaAgentResponse{ - QanMysqlPerfschemaAgent: agent, - } - return res, nil -} - -// AddQANMySQLSlowlogAgent adds MySQL Slowlog QAN Agent. -// -//nolint:lll -func (s *agentsServer) addQANMySQLSlowlogAgent(ctx context.Context, params *inventoryv1.AddQANMySQLSlowlogAgentParams) (*inventoryv1.AddAgentResponse, error) { - agent, err := s.s.AddQANMySQLSlowlogAgent(ctx, params) - if err != nil { - return nil, err - } - - res := &inventoryv1.AddAgentResponse{ - Exporter: &inventoryv1.AddAgentResponse_QanMysqlSlowlogAgent{ - QanMysqlSlowlogAgent: agent, - }, - } - return res, nil -} - -// ChangeQANMySQLSlowlogAgent changes disabled flag and custom labels of MySQL Slowlog QAN Agent. -// -//nolint:lll -func (s *agentsServer) ChangeQANMySQLSlowlogAgent(ctx context.Context, req *inventoryv1.ChangeQANMySQLSlowlogAgentRequest) (*inventoryv1.ChangeQANMySQLSlowlogAgentResponse, error) { - agent, err := s.s.ChangeQANMySQLSlowlogAgent(ctx, req) - if err != nil { - return nil, err - } - - res := &inventoryv1.ChangeQANMySQLSlowlogAgentResponse{ - QanMysqlSlowlogAgent: agent, - } - return res, nil -} - -// addPostgresExporter adds postgres_exporter Agent. -func (s *agentsServer) addPostgresExporter(ctx context.Context, params *inventoryv1.AddPostgresExporterParams) (*inventoryv1.AddAgentResponse, error) { - agent, err := s.s.AddPostgresExporter(ctx, params) - if err != nil { - return nil, err - } - - res := &inventoryv1.AddAgentResponse{ - Exporter: &inventoryv1.AddAgentResponse_PostgresExporter{ - PostgresExporter: agent, - }, - } - return res, nil -} - -// ChangePostgresExporter changes disabled flag and custom labels of postgres_exporter Agent. -func (s *agentsServer) ChangePostgresExporter(ctx context.Context, req *inventoryv1.ChangePostgresExporterRequest) (*inventoryv1.ChangePostgresExporterResponse, error) { - agent, err := s.s.ChangePostgresExporter(ctx, req) - if err != nil { - return nil, err - } - - res := &inventoryv1.ChangePostgresExporterResponse{ - PostgresExporter: agent, - } - return res, nil -} - -// AddQANMongoDBProfilerAgent adds MongoDB Profiler QAN Agent. -// -//nolint:lll -func (s *agentsServer) addQANMongoDBProfilerAgent(ctx context.Context, params *inventoryv1.AddQANMongoDBProfilerAgentParams) (*inventoryv1.AddAgentResponse, error) { - agent, err := s.s.AddQANMongoDBProfilerAgent(ctx, params) - if err != nil { - return nil, err - } - - res := &inventoryv1.AddAgentResponse{ - Exporter: &inventoryv1.AddAgentResponse_QanMongodbProfilerAgent{ - QanMongodbProfilerAgent: agent, - }, - } - return res, nil -} - -// ChangeQANMongoDBProfilerAgent changes disabled flag and custom labels of MongoDB Profiler QAN Agent. -// -//nolint:lll -func (s *agentsServer) ChangeQANMongoDBProfilerAgent(ctx context.Context, req *inventoryv1.ChangeQANMongoDBProfilerAgentRequest) (*inventoryv1.ChangeQANMongoDBProfilerAgentResponse, error) { - agent, err := s.s.ChangeQANMongoDBProfilerAgent(ctx, req) - if err != nil { - return nil, err - } - - res := &inventoryv1.ChangeQANMongoDBProfilerAgentResponse{ - QanMongodbProfilerAgent: agent, - } - return res, nil -} - -// addProxySQLExporter adds proxysql_exporter Agent. -func (s *agentsServer) addProxySQLExporter(ctx context.Context, params *inventoryv1.AddProxySQLExporterParams) (*inventoryv1.AddAgentResponse, error) { - agent, err := s.s.AddProxySQLExporter(ctx, params) - if err != nil { - return nil, err - } - - res := &inventoryv1.AddAgentResponse{ - Exporter: &inventoryv1.AddAgentResponse_ProxysqlExporter{ - ProxysqlExporter: agent, - }, - } - return res, nil -} - -// ChangeProxySQLExporter changes disabled flag and custom labels of proxysql_exporter Agent. -func (s *agentsServer) ChangeProxySQLExporter(ctx context.Context, req *inventoryv1.ChangeProxySQLExporterRequest) (*inventoryv1.ChangeProxySQLExporterResponse, error) { - agent, err := s.s.ChangeProxySQLExporter(ctx, req) - if err != nil { - return nil, err - } - - res := &inventoryv1.ChangeProxySQLExporterResponse{ - ProxysqlExporter: agent, - } - return res, nil -} - -// AddQANPostgreSQLPgStatementsAgent adds PostgreSQL Pg stat statements QAN Agent. -func (s *agentsServer) addQANPostgreSQLPgStatementsAgent(ctx context.Context, params *inventoryv1.AddQANPostgreSQLPgStatementsAgentParams) (*inventoryv1.AddAgentResponse, error) { //nolint:lll - agent, err := s.s.AddQANPostgreSQLPgStatementsAgent(ctx, params) - if err != nil { - return nil, err - } - - res := &inventoryv1.AddAgentResponse{ - Exporter: &inventoryv1.AddAgentResponse_QanPostgresqlPgstatementsAgent{ - QanPostgresqlPgstatementsAgent: agent, - }, - } - return res, nil -} - -// ChangeQANPostgreSQLPgStatementsAgent changes disabled flag and custom labels of PostgreSQL Pg stat statements QAN Agent. -func (s *agentsServer) ChangeQANPostgreSQLPgStatementsAgent(ctx context.Context, req *inventoryv1.ChangeQANPostgreSQLPgStatementsAgentRequest) (*inventoryv1.ChangeQANPostgreSQLPgStatementsAgentResponse, error) { //nolint:lll - agent, err := s.s.ChangeQANPostgreSQLPgStatementsAgent(ctx, req) - if err != nil { - return nil, err - } - - res := &inventoryv1.ChangeQANPostgreSQLPgStatementsAgentResponse{ - QanPostgresqlPgstatementsAgent: agent, - } - return res, nil -} - -// AddQANPostgreSQLPgStatMonitorAgent adds PostgreSQL Pg stat monitor QAN Agent. -func (s *agentsServer) addQANPostgreSQLPgStatMonitorAgent(ctx context.Context, params *inventoryv1.AddQANPostgreSQLPgStatMonitorAgentParams) (*inventoryv1.AddAgentResponse, error) { //nolint:lll - agent, err := s.s.AddQANPostgreSQLPgStatMonitorAgent(ctx, params) - if err != nil { - return nil, err - } - - res := &inventoryv1.AddAgentResponse{ - Exporter: &inventoryv1.AddAgentResponse_QanPostgresqlPgstatmonitorAgent{ - QanPostgresqlPgstatmonitorAgent: agent, - }, - } - return res, nil -} - -// ChangeQANPostgreSQLPgStatMonitorAgent changes disabled flag and custom labels of PostgreSQL Pg stat monitor QAN Agent. -func (s *agentsServer) ChangeQANPostgreSQLPgStatMonitorAgent(ctx context.Context, req *inventoryv1.ChangeQANPostgreSQLPgStatMonitorAgentRequest) (*inventoryv1.ChangeQANPostgreSQLPgStatMonitorAgentResponse, error) { //nolint:lll - agent, err := s.s.ChangeQANPostgreSQLPgStatMonitorAgent(ctx, req) - if err != nil { - return nil, err - } - - res := &inventoryv1.ChangeQANPostgreSQLPgStatMonitorAgentResponse{ - QanPostgresqlPgstatmonitorAgent: agent, - } - return res, nil -} - -// addRDSExporter adds rds_exporter Agent. -func (s *agentsServer) addRDSExporter(ctx context.Context, params *inventoryv1.AddRDSExporterParams) (*inventoryv1.AddAgentResponse, error) { - agent, err := s.s.AddRDSExporter(ctx, params) - if err != nil { - return nil, err - } - - res := &inventoryv1.AddAgentResponse{ - Exporter: &inventoryv1.AddAgentResponse_RdsExporter{ - RdsExporter: agent, - }, - } - return res, nil -} - -// ChangeRDSExporter changes disabled flag and custom labels of rds_exporter Agent. -func (s *agentsServer) ChangeRDSExporter(ctx context.Context, req *inventoryv1.ChangeRDSExporterRequest) (*inventoryv1.ChangeRDSExporterResponse, error) { - agent, err := s.s.ChangeRDSExporter(ctx, req) - if err != nil { - return nil, err - } - - res := &inventoryv1.ChangeRDSExporterResponse{ - RdsExporter: agent, - } - return res, nil -} - -// addExternalExporter adds external_exporter Agent. -func (s *agentsServer) addExternalExporter(ctx context.Context, params *inventoryv1.AddExternalExporterParams) (*inventoryv1.AddAgentResponse, error) { - agent, err := s.s.AddExternalExporter(ctx, params) - if err != nil { - return nil, err - } - - res := &inventoryv1.AddAgentResponse{ - Exporter: &inventoryv1.AddAgentResponse_ExternalExporter{ - ExternalExporter: agent, - }, - } - return res, nil -} - -func (s *agentsServer) ChangeExternalExporter(ctx context.Context, req *inventoryv1.ChangeExternalExporterRequest) (*inventoryv1.ChangeExternalExporterResponse, error) { - agent, err := s.s.ChangeExternalExporter(req) - if err != nil { - return nil, err - } - - res := &inventoryv1.ChangeExternalExporterResponse{ - ExternalExporter: agent, - } - return res, nil -} - -// addAzureDatabaseExporter adds azure_database_exporter Agent. -func (s *agentsServer) addAzureDatabaseExporter( - ctx context.Context, - params *inventoryv1.AddAzureDatabaseExporterParams, -) (*inventoryv1.AddAgentResponse, error) { - agent, err := s.s.AddAzureDatabaseExporter(ctx, params) - if err != nil { - return nil, err - } - - res := &inventoryv1.AddAgentResponse{ - Exporter: &inventoryv1.AddAgentResponse_AzureDatabaseExporter{ - AzureDatabaseExporter: agent, - }, - } - return res, nil -} - -// ChangeAzureDatabaseExporter changes disabled flag and custom labels of azure_database_exporter Agent. -func (s *agentsServer) ChangeAzureDatabaseExporter( - ctx context.Context, - req *inventoryv1.ChangeAzureDatabaseExporterRequest, -) (*inventoryv1.ChangeAzureDatabaseExporterResponse, error) { - agent, err := s.s.ChangeAzureDatabaseExporter(ctx, req) - if err != nil { - return nil, err - } - - res := &inventoryv1.ChangeAzureDatabaseExporterResponse{ - AzureDatabaseExporter: agent, + return nil, fmt.Errorf("invalid request %v", req.Agent) + } +} + +// ChangeAgent allows to change some Agent attributes. +func (s *agentsServer) ChangeAgent(ctx context.Context, req *inventoryv1.ChangeAgentRequest) (*inventoryv1.ChangeAgentResponse, error) { + switch req.Agent.(type) { + case *inventoryv1.ChangeAgentRequest_NodeExporter: + return s.s.ChangeNodeExporter(ctx, req.GetNodeExporter()) + case *inventoryv1.ChangeAgentRequest_MysqldExporter: + return s.s.ChangeMySQLdExporter(ctx, req.GetMysqldExporter()) + case *inventoryv1.ChangeAgentRequest_MongodbExporter: + return s.s.ChangeMongoDBExporter(ctx, req.GetMongodbExporter()) + case *inventoryv1.ChangeAgentRequest_PostgresExporter: + return s.s.ChangePostgresExporter(ctx, req.GetPostgresExporter()) + case *inventoryv1.ChangeAgentRequest_ProxysqlExporter: + return s.s.ChangeProxySQLExporter(ctx, req.GetProxysqlExporter()) + case *inventoryv1.ChangeAgentRequest_RdsExporter: + return s.s.ChangeRDSExporter(ctx, req.GetRdsExporter()) + case *inventoryv1.ChangeAgentRequest_ExternalExporter: + return s.s.ChangeExternalExporter(ctx, req.GetExternalExporter()) + case *inventoryv1.ChangeAgentRequest_AzureDatabaseExporter: + return s.s.ChangeAzureDatabaseExporter(ctx, req.GetAzureDatabaseExporter()) + case *inventoryv1.ChangeAgentRequest_QanMysqlPerfschemaAgent: + return s.s.ChangeQANMySQLPerfSchemaAgent(ctx, req.GetQanMysqlPerfschemaAgent()) + case *inventoryv1.ChangeAgentRequest_QanMysqlSlowlogAgent: + return s.s.ChangeQANMySQLSlowlogAgent(ctx, req.GetQanMysqlSlowlogAgent()) + case *inventoryv1.ChangeAgentRequest_QanMongodbProfilerAgent: + return s.s.ChangeQANMongoDBProfilerAgent(ctx, req.GetQanMongodbProfilerAgent()) + case *inventoryv1.ChangeAgentRequest_QanPostgresqlPgstatementsAgent: + return s.s.ChangeQANPostgreSQLPgStatementsAgent(ctx, req.GetQanPostgresqlPgstatementsAgent()) + case *inventoryv1.ChangeAgentRequest_QanPostgresqlPgstatmonitorAgent: + return s.s.ChangeQANPostgreSQLPgStatMonitorAgent(ctx, req.GetQanPostgresqlPgstatmonitorAgent()) + default: + return nil, fmt.Errorf("invalid request %v", req.Agent) } - return res, nil } // RemoveAgent removes Agent. diff --git a/managed/services/inventory/services_test.go b/managed/services/inventory/services_test.go index 273f7693ac..8959a3cb0f 100644 --- a/managed/services/inventory/services_test.go +++ b/managed/services/inventory/services_test.go @@ -169,7 +169,7 @@ func TestServices(t *testing.T) { }) require.NoError(t, err) - mySQLAgent, _, err := as.AddMySQLdExporter(ctx, &inventoryv1.AddMySQLdExporterParams{ + mySQLAgent, err := as.AddMySQLdExporter(ctx, &inventoryv1.AddMySQLdExporterParams{ PmmAgentId: "pmm-server", ServiceId: mySQLService.ServiceId, Username: "username", @@ -182,11 +182,11 @@ func TestServices(t *testing.T) { _, err = ss.Get(ctx, mySQLService.ServiceId) tests.AssertGRPCError(t, status.New(codes.NotFound, fmt.Sprintf(`Service with ID "%s" not found.`, mySQLService.ServiceId)), err) - _, err = as.Get(ctx, rdsAgent.AgentId) - tests.AssertGRPCError(t, status.New(codes.NotFound, fmt.Sprintf(`Agent with ID "%s" not found.`, rdsAgent.AgentId)), err) + _, err = as.Get(ctx, rdsAgent.GetRdsExporter().AgentId) + tests.AssertGRPCError(t, status.New(codes.NotFound, fmt.Sprintf(`Agent with ID "%s" not found.`, rdsAgent.GetRdsExporter().AgentId)), err) - _, err = as.Get(ctx, mySQLAgent.AgentId) - tests.AssertGRPCError(t, status.New(codes.NotFound, fmt.Sprintf(`Agent with ID "%s" not found.`, mySQLAgent.AgentId)), err) + _, err = as.Get(ctx, mySQLAgent.GetMysqldExporter().AgentId) + tests.AssertGRPCError(t, status.New(codes.NotFound, fmt.Sprintf(`Agent with ID "%s" not found.`, mySQLAgent.GetMysqldExporter().AgentId)), err) _, err = ns.Get(ctx, &inventoryv1.GetNodeRequest{NodeId: node.NodeId}) tests.AssertGRPCError(t, status.New(codes.NotFound, fmt.Sprintf(`Node with ID "%s" not found.`, node.NodeId)), err) @@ -214,7 +214,7 @@ func TestServices(t *testing.T) { node, err := ns.AddRemoteAzureDatabaseNode(ctx, &inventoryv1.AddRemoteAzureNodeParams{NodeName: "test1", Region: "test-region", Address: "test"}) require.NoError(t, err) - rdsAgent, err := as.AddAzureDatabaseExporter(ctx, &inventoryv1.AddAzureDatabaseExporterParams{ + azureAgent, err := as.AddAzureDatabaseExporter(ctx, &inventoryv1.AddAzureDatabaseExporterParams{ PmmAgentId: "pmm-server", NodeId: node.NodeId, PushMetrics: true, @@ -230,7 +230,7 @@ func TestServices(t *testing.T) { }) require.NoError(t, err) - mySQLAgent, _, err := as.AddMySQLdExporter(ctx, &inventoryv1.AddMySQLdExporterParams{ + mySQLAgent, err := as.AddMySQLdExporter(ctx, &inventoryv1.AddMySQLdExporterParams{ PmmAgentId: "pmm-server", ServiceId: mySQLService.ServiceId, Username: "username", @@ -243,11 +243,11 @@ func TestServices(t *testing.T) { _, err = ss.Get(ctx, mySQLService.ServiceId) tests.AssertGRPCError(t, status.New(codes.NotFound, fmt.Sprintf(`Service with ID "%s" not found.`, mySQLService.ServiceId)), err) - _, err = as.Get(ctx, rdsAgent.AgentId) - tests.AssertGRPCError(t, status.New(codes.NotFound, fmt.Sprintf(`Agent with ID "%s" not found.`, rdsAgent.AgentId)), err) + _, err = as.Get(ctx, azureAgent.GetAzureDatabaseExporter().AgentId) + tests.AssertGRPCError(t, status.New(codes.NotFound, fmt.Sprintf(`Agent with ID "%s" not found.`, azureAgent.GetAzureDatabaseExporter().AgentId)), err) - _, err = as.Get(ctx, mySQLAgent.AgentId) - tests.AssertGRPCError(t, status.New(codes.NotFound, fmt.Sprintf(`Agent with ID "%s" not found.`, mySQLAgent.AgentId)), err) + _, err = as.Get(ctx, mySQLAgent.GetMysqldExporter().AgentId) + tests.AssertGRPCError(t, status.New(codes.NotFound, fmt.Sprintf(`Agent with ID "%s" not found.`, mySQLAgent.GetMysqldExporter().AgentId)), err) _, err = ns.Get(ctx, &inventoryv1.GetNodeRequest{NodeId: node.NodeId}) tests.AssertGRPCError(t, status.New(codes.NotFound, fmt.Sprintf(`Node with ID "%s" not found.`, node.NodeId)), err) diff --git a/managed/services/server/server_test.go b/managed/services/server/server_test.go index da85f5f791..56a1812edd 100644 --- a/managed/services/server/server_test.go +++ b/managed/services/server/server_test.go @@ -213,10 +213,10 @@ func TestServer(t *testing.T) { })) assert.NoError(t, s.validateChangeSettingsRequest(ctx, &serverv1.ChangeSettingsRequest{ - EnableStt: pointer.ToBool(false), + EnableAdvisor: pointer.ToBool(false), })) assert.NoError(t, s.validateChangeSettingsRequest(ctx, &serverv1.ChangeSettingsRequest{ - EnableStt: pointer.ToBool(true), + EnableAdvisor: pointer.ToBool(true), })) })