From 47c17620f855b96790ff936baeeb1edeecd8bba0 Mon Sep 17 00:00:00 2001 From: Alex Demidoff Date: Fri, 22 Dec 2023 17:25:36 +0000 Subject: [PATCH 01/10] PMM-12624 migrate to a single exporter/add endpoint --- .devcontainer/setup.py | 2 +- .github/workflows/clean.yml | 2 +- .../inventory/add_agent_external_exporter.go | 28 +- .../inventory/add_agent_mongodb_exporter.go | 46 +- .../inventory/add_agent_mysqld_exporter.go | 46 +- .../add_agent_mysqld_exporter_test.go | 10 +- .../inventory/add_agent_node_exporter.go | 22 +- .../inventory/add_agent_postgres_exporter.go | 44 +- .../add_agent_postgres_exporter_test.go | 2 +- .../inventory/add_agent_proxysql_exporter.go | 36 +- .../inventory/add_agent_rds_exporter.go | 30 +- .../agents_azure_database_exporter_test.go | 72 +- .../agents_external_exporter_test.go | 114 +- .../inventory/agents_mongodb_exporter_test.go | 98 +- .../inventory/agents_mysqld_exporter_test.go | 121 +- .../inventory/agents_node_exporter_test.go | 30 +- .../agents_postgres_exporter_test.go | 98 +- .../agents_proxysql_exporter_test.go | 96 +- .../inventory/agents_rds_exporter_test.go | 68 +- api-tests/inventory/agents_test.go | 76 +- api-tests/inventory/helpers.go | 90 +- api-tests/inventory/services_test.go | 14 +- .../agent_local_service/status2_responses.go | 10 +- .../agent_local_service/status_responses.go | 10 +- api/agentlocal/v1/json/v1.json | 4 +- api/inventory/v1/agents.pb.go | 5945 ++++++++--------- api/inventory/v1/agents.pb.gw.go | 599 +- api/inventory/v1/agents.pb.validate.go | 2608 ++++---- api/inventory/v1/agents.proto | 390 +- api/inventory/v1/agents_grpc.pb.go | 318 +- .../add_azure_database_exporter_parameters.go | 144 - .../add_azure_database_exporter_responses.go | 694 -- .../agents_service/add_exporter_parameters.go | 144 + .../agents_service/add_exporter_responses.go | 3709 ++++++++++ .../add_external_exporter_parameters.go | 144 - .../add_external_exporter_responses.go | 477 -- .../add_mongo_db_exporter_parameters.go | 144 - .../add_mongo_db_exporter_responses.go | 740 -- .../add_my_s_q_ld_exporter_parameters.go | 144 - .../add_my_s_q_ld_exporter_responses.go | 740 -- .../add_node_exporter_parameters.go | 144 - .../add_node_exporter_responses.go | 673 -- .../add_postgres_exporter_parameters.go | 144 - .../add_postgres_exporter_responses.go | 719 -- .../add_proxy_sql_exporter_parameters.go | 144 - .../add_proxy_sql_exporter_responses.go | 706 -- ...d_qan_mongo_db_profiler_agent_responses.go | 3 - .../add_rds_exporter_parameters.go | 144 - .../add_rds_exporter_responses.go | 696 -- .../agents_service/agents_service_client.go | 311 +- ...e_qan_mongo_db_profiler_agent_responses.go | 3 - .../agents_service/get_agent_responses.go | 3 - .../agents_service/list_agents_responses.go | 13 +- api/inventory/v1/json/v1.json | 2731 ++++---- .../add_mongo_db_responses.go | 3 - api/management/v1/json/v1.json | 2 +- api/swagger/swagger-dev.json | 2999 ++++----- api/swagger/swagger.json | 2 +- managed/services/inventory/agents.go | 198 +- managed/services/inventory/agents_test.go | 30 +- .../services/inventory/grpc/agents_server.go | 125 +- managed/services/inventory/services_test.go | 8 +- 62 files changed, 11442 insertions(+), 16468 deletions(-) delete mode 100644 api/inventory/v1/json/client/agents_service/add_azure_database_exporter_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_azure_database_exporter_responses.go create mode 100644 api/inventory/v1/json/client/agents_service/add_exporter_parameters.go create mode 100644 api/inventory/v1/json/client/agents_service/add_exporter_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_external_exporter_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_external_exporter_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_mongo_db_exporter_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_mongo_db_exporter_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_my_s_q_ld_exporter_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_my_s_q_ld_exporter_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_node_exporter_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_node_exporter_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_postgres_exporter_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_postgres_exporter_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_proxy_sql_exporter_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_proxy_sql_exporter_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_rds_exporter_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_rds_exporter_responses.go diff --git a/.devcontainer/setup.py b/.devcontainer/setup.py index f57267ac07..151e382661 100755 --- a/.devcontainer/setup.py +++ b/.devcontainer/setup.py @@ -26,7 +26,7 @@ def install_packages(): run_commands([ "dnf install -y gcc git make pkgconfig \ vim \ - mc tmux psmisc lsof which iproute \ + mc tmux psmisc lsof which iproute diffutils \ bash-completion \ man man-pages \ openssl-devel \ diff --git a/.github/workflows/clean.yml b/.github/workflows/clean.yml index e28b694a26..5c8a75baa8 100644 --- a/.github/workflows/clean.yml +++ b/.github/workflows/clean.yml @@ -29,7 +29,7 @@ jobs: - name: Configure git for private modules env: ROBOT_TOKEN: ${{ secrets.ROBOT_TOKEN }} - run: git config --global url."https://percona-platform-robot:${ROBOT_TOKEN}@github.com".insteadOf "https://github.com" + run: echo "machine github.com login percona-robot password ${{ secrets.ROBOT_TOKEN }}" > $HOME/.netrc - name: Set up Go release if: matrix.go.version != 'tip' diff --git a/admin/commands/inventory/add_agent_external_exporter.go b/admin/commands/inventory/add_agent_external_exporter.go index ec54c2d7cc..03ede6d759 100644 --- a/admin/commands/inventory/add_agent_external_exporter.go +++ b/admin/commands/inventory/add_agent_external_exporter.go @@ -38,7 +38,7 @@ Custom labels : {{ .Agent.CustomLabels }} `) type addAgentExternalExporterResult struct { - Agent *agents.AddExternalExporterOKBodyExternalExporter `json:"external_exporter"` + Agent *agents.AddExporterOKBodyExternalExporter `json:"external_exporter"` } func (res *addAgentExternalExporterResult) Result() {} @@ -67,22 +67,24 @@ func (cmd *AddAgentExternalExporterCommand) RunCmd() (commands.Result, error) { cmd.MetricsPath = fmt.Sprintf("/%s", cmd.MetricsPath) } - params := &agents.AddExternalExporterParams{ - Body: agents.AddExternalExporterBody{ - RunsOnNodeID: cmd.RunsOnNodeID, - ServiceID: cmd.ServiceID, - Username: cmd.Username, - Password: cmd.Password, - Scheme: cmd.Scheme, - MetricsPath: cmd.MetricsPath, - ListenPort: cmd.ListenPort, - CustomLabels: customLabels, - PushMetrics: cmd.PushMetrics, + params := &agents.AddExporterParams{ + Body: agents.AddExporterBody{ + ExternalExporter: &agents.AddExporterParamsBodyExternalExporter{ + RunsOnNodeID: cmd.RunsOnNodeID, + ServiceID: cmd.ServiceID, + Username: cmd.Username, + Password: cmd.Password, + Scheme: cmd.Scheme, + MetricsPath: cmd.MetricsPath, + ListenPort: cmd.ListenPort, + CustomLabels: customLabels, + PushMetrics: cmd.PushMetrics, + }, }, Context: commands.Ctx, } - resp, err := client.Default.AgentsService.AddExternalExporter(params) + resp, err := client.Default.AgentsService.AddExporter(params) if err != nil { return nil, err } diff --git a/admin/commands/inventory/add_agent_mongodb_exporter.go b/admin/commands/inventory/add_agent_mongodb_exporter.go index a2be481ee9..4e939ed3e4 100644 --- a/admin/commands/inventory/add_agent_mongodb_exporter.go +++ b/admin/commands/inventory/add_agent_mongodb_exporter.go @@ -36,7 +36,7 @@ Custom labels : {{ .Agent.CustomLabels }} `) type addAgentMongodbExporterResult struct { - Agent *agents.AddMongoDBExporterOKBodyMongodbExporter `json:"mongodb_exporter"` + Agent *agents.AddExporterOKBodyMongodbExporter `json:"mongodb_exporter"` } func (res *addAgentMongodbExporterResult) Result() {} @@ -81,31 +81,33 @@ func (cmd *AddAgentMongodbExporterCommand) RunCmd() (commands.Result, error) { return nil, err } - params := &agents.AddMongoDBExporterParams{ - Body: agents.AddMongoDBExporterBody{ - PMMAgentID: cmd.PMMAgentID, - ServiceID: cmd.ServiceID, - Username: cmd.Username, - Password: cmd.Password, - AgentPassword: cmd.AgentPassword, - CustomLabels: customLabels, - SkipConnectionCheck: cmd.SkipConnectionCheck, - TLS: cmd.TLS, - TLSSkipVerify: cmd.TLSSkipVerify, - TLSCertificateKey: tlsCertificateKey, - TLSCertificateKeyFilePassword: cmd.TLSCertificateKeyFilePassword, - TLSCa: tlsCa, - AuthenticationMechanism: cmd.AuthenticationMechanism, - PushMetrics: cmd.PushMetrics, - DisableCollectors: commands.ParseDisableCollectors(cmd.DisableCollectors), - StatsCollections: commands.ParseDisableCollectors(cmd.StatsCollections), - CollectionsLimit: cmd.CollectionsLimit, - LogLevel: &cmd.LogLevel, + params := &agents.AddExporterParams{ + Body: agents.AddExporterBody{ + MongodbExporter: &agents.AddExporterParamsBodyMongodbExporter{ + PMMAgentID: cmd.PMMAgentID, + ServiceID: cmd.ServiceID, + Username: cmd.Username, + Password: cmd.Password, + AgentPassword: cmd.AgentPassword, + CustomLabels: customLabels, + SkipConnectionCheck: cmd.SkipConnectionCheck, + TLS: cmd.TLS, + TLSSkipVerify: cmd.TLSSkipVerify, + TLSCertificateKey: tlsCertificateKey, + TLSCertificateKeyFilePassword: cmd.TLSCertificateKeyFilePassword, + TLSCa: tlsCa, + AuthenticationMechanism: cmd.AuthenticationMechanism, + PushMetrics: cmd.PushMetrics, + DisableCollectors: commands.ParseDisableCollectors(cmd.DisableCollectors), + StatsCollections: commands.ParseDisableCollectors(cmd.StatsCollections), + CollectionsLimit: cmd.CollectionsLimit, + LogLevel: &cmd.LogLevel, + }, }, Context: commands.Ctx, } - resp, err := client.Default.AgentsService.AddMongoDBExporter(params) + resp, err := client.Default.AgentsService.AddExporter(params) if err != nil { return nil, err } diff --git a/admin/commands/inventory/add_agent_mysqld_exporter.go b/admin/commands/inventory/add_agent_mysqld_exporter.go index 91ba1cd51a..3c881833e7 100644 --- a/admin/commands/inventory/add_agent_mysqld_exporter.go +++ b/admin/commands/inventory/add_agent_mysqld_exporter.go @@ -41,8 +41,8 @@ Tablestat collectors : {{ .TablestatStatus }} `) type addAgentMysqldExporterResult struct { - Agent *agents.AddMySQLdExporterOKBodyMysqldExporter `json:"mysqld_exporter"` - TableCount int32 `json:"table_count,omitempty"` + Agent *agents.AddExporterOKBodyMysqldExporter `json:"mysqld_exporter"` + TableCount int32 `json:"table_count,omitempty"` } func (res *addAgentMysqldExporterResult) Result() {} @@ -125,30 +125,32 @@ func (cmd *AddAgentMysqldExporterCommand) RunCmd() (commands.Result, error) { } } - params := &agents.AddMySQLdExporterParams{ - Body: agents.AddMySQLdExporterBody{ - PMMAgentID: cmd.PMMAgentID, - ServiceID: cmd.ServiceID, - Username: cmd.Username, - Password: cmd.Password, - AgentPassword: cmd.AgentPassword, - CustomLabels: customLabels, - SkipConnectionCheck: cmd.SkipConnectionCheck, - TLS: cmd.TLS, - TLSSkipVerify: cmd.TLSSkipVerify, - TLSCa: tlsCa, - TLSCert: tlsCert, - TLSKey: tlsKey, - TablestatsGroupTableLimit: cmd.TablestatsGroupTableLimit, - PushMetrics: cmd.PushMetrics, - ExposeExporter: cmd.ExposeExporter, - DisableCollectors: commands.ParseDisableCollectors(cmd.DisableCollectors), - LogLevel: &cmd.LogLevel, + params := &agents.AddExporterParams{ + Body: agents.AddExporterBody{ + MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + PMMAgentID: cmd.PMMAgentID, + ServiceID: cmd.ServiceID, + Username: cmd.Username, + Password: cmd.Password, + AgentPassword: cmd.AgentPassword, + CustomLabels: customLabels, + SkipConnectionCheck: cmd.SkipConnectionCheck, + TLS: cmd.TLS, + TLSSkipVerify: cmd.TLSSkipVerify, + TLSCa: tlsCa, + TLSCert: tlsCert, + TLSKey: tlsKey, + TablestatsGroupTableLimit: cmd.TablestatsGroupTableLimit, + PushMetrics: cmd.PushMetrics, + ExposeExporter: cmd.ExposeExporter, + DisableCollectors: commands.ParseDisableCollectors(cmd.DisableCollectors), + LogLevel: &cmd.LogLevel, + }, }, Context: commands.Ctx, } - resp, err := client.Default.AgentsService.AddMySQLdExporter(params) + resp, err := client.Default.AgentsService.AddExporter(params) if err != nil { return nil, err } diff --git a/admin/commands/inventory/add_agent_mysqld_exporter_test.go b/admin/commands/inventory/add_agent_mysqld_exporter_test.go index fb101b9885..8e38592027 100644 --- a/admin/commands/inventory/add_agent_mysqld_exporter_test.go +++ b/admin/commands/inventory/add_agent_mysqld_exporter_test.go @@ -27,7 +27,7 @@ import ( func TestAddAgentMysqldExporter(t *testing.T) { t.Run("TablestatEnabled", func(t *testing.T) { res := &addAgentMysqldExporterResult{ - Agent: &agents.AddMySQLdExporterOKBodyMysqldExporter{ + Agent: &agents.AddExporterOKBodyMysqldExporter{ AgentID: "/agent_id/1", PMMAgentID: "/agent_id/2", Username: "username", @@ -61,7 +61,7 @@ Tablestat collectors : enabled (the limit is 1000, the actual table count is 50 t.Run("TablestatEnabledNoLimit", func(t *testing.T) { res := &addAgentMysqldExporterResult{ - Agent: &agents.AddMySQLdExporterOKBodyMysqldExporter{ + Agent: &agents.AddExporterOKBodyMysqldExporter{ AgentID: "/agent_id/1", PMMAgentID: "/agent_id/2", Username: "username", @@ -95,7 +95,7 @@ Tablestat collectors : enabled (the table count limit is not set). t.Run("TablestatEnabledUnknown", func(t *testing.T) { res := &addAgentMysqldExporterResult{ - Agent: &agents.AddMySQLdExporterOKBodyMysqldExporter{ + Agent: &agents.AddExporterOKBodyMysqldExporter{ AgentID: "/agent_id/1", PMMAgentID: "/agent_id/2", Username: "username", @@ -129,7 +129,7 @@ Tablestat collectors : enabled (the limit is 1000, the actual table count is un t.Run("TablestatDisabled", func(t *testing.T) { res := &addAgentMysqldExporterResult{ - Agent: &agents.AddMySQLdExporterOKBodyMysqldExporter{ + Agent: &agents.AddExporterOKBodyMysqldExporter{ AgentID: "/agent_id/1", PMMAgentID: "/agent_id/2", Username: "username", @@ -163,7 +163,7 @@ Tablestat collectors : disabled (the limit is 1000, the actual table count is 2 t.Run("TablestatDisabledAlways", func(t *testing.T) { res := &addAgentMysqldExporterResult{ - Agent: &agents.AddMySQLdExporterOKBodyMysqldExporter{ + Agent: &agents.AddExporterOKBodyMysqldExporter{ AgentID: "/agent_id/1", PMMAgentID: "/agent_id/2", Username: "username", diff --git a/admin/commands/inventory/add_agent_node_exporter.go b/admin/commands/inventory/add_agent_node_exporter.go index bc12addec4..9521d02621 100644 --- a/admin/commands/inventory/add_agent_node_exporter.go +++ b/admin/commands/inventory/add_agent_node_exporter.go @@ -32,7 +32,7 @@ Custom labels: {{ .Agent.CustomLabels }} `) type addAgentNodeExporterResult struct { - Agent *agents.AddNodeExporterOKBodyNodeExporter `json:"node_exporter"` + Agent *agents.AddExporterOKBodyNodeExporter `json:"node_exporter"` } func (res *addAgentNodeExporterResult) Result() {} @@ -53,19 +53,21 @@ type AddAgentNodeExporterCommand struct { func (cmd *AddAgentNodeExporterCommand) RunCmd() (commands.Result, error) { customLabels := commands.ParseCustomLabels(cmd.CustomLabels) - params := &agents.AddNodeExporterParams{ - Body: agents.AddNodeExporterBody{ - PMMAgentID: cmd.PMMAgentID, - CustomLabels: customLabels, - PushMetrics: cmd.PushMetrics, - ExposeExporter: cmd.ExposeExporter, - DisableCollectors: commands.ParseDisableCollectors(cmd.DisableCollectors), - LogLevel: &cmd.LogLevel, + params := &agents.AddExporterParams{ + Body: agents.AddExporterBody{ + NodeExporter: &agents.AddExporterParamsBodyNodeExporter{ + PMMAgentID: cmd.PMMAgentID, + CustomLabels: customLabels, + PushMetrics: cmd.PushMetrics, + ExposeExporter: cmd.ExposeExporter, + DisableCollectors: commands.ParseDisableCollectors(cmd.DisableCollectors), + LogLevel: &cmd.LogLevel, + }, }, Context: commands.Ctx, } - resp, err := client.Default.AgentsService.AddNodeExporter(params) + resp, err := client.Default.AgentsService.AddExporter(params) if err != nil { return nil, err } diff --git a/admin/commands/inventory/add_agent_postgres_exporter.go b/admin/commands/inventory/add_agent_postgres_exporter.go index e0cc0ad4e7..1c9959c271 100644 --- a/admin/commands/inventory/add_agent_postgres_exporter.go +++ b/admin/commands/inventory/add_agent_postgres_exporter.go @@ -36,7 +36,7 @@ Custom labels : {{ .Agent.CustomLabels }} `) type addAgentPostgresExporterResult struct { - Agent *agents.AddPostgresExporterOKBodyPostgresExporter `json:"postgres_exporter"` + Agent *agents.AddExporterOKBodyPostgresExporter `json:"postgres_exporter"` } func (res *addAgentPostgresExporterResult) Result() {} @@ -92,31 +92,33 @@ func (cmd *AddAgentPostgresExporterCommand) RunCmd() (commands.Result, error) { } } - params := &agents.AddPostgresExporterParams{ - Body: agents.AddPostgresExporterBody{ - PMMAgentID: cmd.PMMAgentID, - ServiceID: cmd.ServiceID, - Username: cmd.Username, - Password: cmd.Password, - AgentPassword: cmd.AgentPassword, - CustomLabels: customLabels, - SkipConnectionCheck: cmd.SkipConnectionCheck, - PushMetrics: cmd.PushMetrics, - ExposeExporter: cmd.ExposeExporter, - DisableCollectors: commands.ParseDisableCollectors(cmd.DisableCollectors), - AutoDiscoveryLimit: cmd.AutoDiscoveryLimit, + params := &agents.AddExporterParams{ + Body: agents.AddExporterBody{ + PostgresExporter: &agents.AddExporterParamsBodyPostgresExporter{ + PMMAgentID: cmd.PMMAgentID, + ServiceID: cmd.ServiceID, + Username: cmd.Username, + Password: cmd.Password, + AgentPassword: cmd.AgentPassword, + CustomLabels: customLabels, + SkipConnectionCheck: cmd.SkipConnectionCheck, + PushMetrics: cmd.PushMetrics, + ExposeExporter: cmd.ExposeExporter, + DisableCollectors: commands.ParseDisableCollectors(cmd.DisableCollectors), + AutoDiscoveryLimit: cmd.AutoDiscoveryLimit, - TLS: cmd.TLS, - TLSSkipVerify: cmd.TLSSkipVerify, - TLSCa: tlsCa, - TLSCert: tlsCert, - TLSKey: tlsKey, - LogLevel: &cmd.LogLevel, + TLS: cmd.TLS, + TLSSkipVerify: cmd.TLSSkipVerify, + TLSCa: tlsCa, + TLSCert: tlsCert, + TLSKey: tlsKey, + LogLevel: &cmd.LogLevel, + }, }, Context: commands.Ctx, } - resp, err := client.Default.AgentsService.AddPostgresExporter(params) + resp, err := client.Default.AgentsService.AddExporter(params) if err != nil { return nil, err } diff --git a/admin/commands/inventory/add_agent_postgres_exporter_test.go b/admin/commands/inventory/add_agent_postgres_exporter_test.go index 54c228dc48..5ec6137cfd 100644 --- a/admin/commands/inventory/add_agent_postgres_exporter_test.go +++ b/admin/commands/inventory/add_agent_postgres_exporter_test.go @@ -27,7 +27,7 @@ import ( func TestAddAgentPostgresExporter(t *testing.T) { t.Run("TablestatEnabled", func(t *testing.T) { res := &addAgentPostgresExporterResult{ - Agent: &agents.AddPostgresExporterOKBodyPostgresExporter{ + Agent: &agents.AddExporterOKBodyPostgresExporter{ AgentID: "/agent_id/1", PMMAgentID: "/agent_id/2", Username: "username", diff --git a/admin/commands/inventory/add_agent_proxysql_exporter.go b/admin/commands/inventory/add_agent_proxysql_exporter.go index 3d0dd2c5b2..298b9c8ccb 100644 --- a/admin/commands/inventory/add_agent_proxysql_exporter.go +++ b/admin/commands/inventory/add_agent_proxysql_exporter.go @@ -36,7 +36,7 @@ Custom labels : {{ .Agent.CustomLabels }} `) type addAgentProxysqlExporterResult struct { - Agent *agents.AddProxySQLExporterOKBodyProxysqlExporter `json:"proxysql_exporter"` + Agent *agents.AddExporterOKBodyProxysqlExporter `json:"proxysql_exporter"` } func (res *addAgentProxysqlExporterResult) Result() {} @@ -64,26 +64,28 @@ type AddAgentProxysqlExporterCommand struct { func (cmd *AddAgentProxysqlExporterCommand) RunCmd() (commands.Result, error) { customLabels := commands.ParseCustomLabels(cmd.CustomLabels) - params := &agents.AddProxySQLExporterParams{ - Body: agents.AddProxySQLExporterBody{ - PMMAgentID: cmd.PMMAgentID, - ServiceID: cmd.ServiceID, - Username: cmd.Username, - Password: cmd.Password, - AgentPassword: cmd.AgentPassword, - CustomLabels: customLabels, - SkipConnectionCheck: cmd.SkipConnectionCheck, - TLS: cmd.TLS, - TLSSkipVerify: cmd.TLSSkipVerify, - PushMetrics: cmd.PushMetrics, - ExposeExporter: cmd.ExposeExporter, - DisableCollectors: commands.ParseDisableCollectors(cmd.DisableCollectors), - LogLevel: &cmd.LogLevel, + params := &agents.AddExporterParams{ + Body: agents.AddExporterBody{ + ProxysqlExporter: &agents.AddExporterParamsBodyProxysqlExporter{ + PMMAgentID: cmd.PMMAgentID, + ServiceID: cmd.ServiceID, + Username: cmd.Username, + Password: cmd.Password, + AgentPassword: cmd.AgentPassword, + CustomLabels: customLabels, + SkipConnectionCheck: cmd.SkipConnectionCheck, + TLS: cmd.TLS, + TLSSkipVerify: cmd.TLSSkipVerify, + PushMetrics: cmd.PushMetrics, + ExposeExporter: cmd.ExposeExporter, + DisableCollectors: commands.ParseDisableCollectors(cmd.DisableCollectors), + LogLevel: &cmd.LogLevel, + }, }, Context: commands.Ctx, } - resp, err := client.Default.AgentsService.AddProxySQLExporter(params) + resp, err := client.Default.AgentsService.AddExporter(params) if err != nil { return nil, err } diff --git a/admin/commands/inventory/add_agent_rds_exporter.go b/admin/commands/inventory/add_agent_rds_exporter.go index 0a4dbb3881..2b14745747 100644 --- a/admin/commands/inventory/add_agent_rds_exporter.go +++ b/admin/commands/inventory/add_agent_rds_exporter.go @@ -35,7 +35,7 @@ Custom labels : {{ .Agent.CustomLabels }} `) type addAgentRDSExporterResult struct { - Agent *agents.AddRDSExporterOKBodyRDSExporter `json:"rds_exporter"` + Agent *agents.AddExporterOKBodyRDSExporter `json:"rds_exporter"` } func (res *addAgentRDSExporterResult) Result() {} @@ -60,23 +60,25 @@ type AddAgentRDSExporterCommand struct { func (cmd *AddAgentRDSExporterCommand) RunCmd() (commands.Result, error) { customLabels := commands.ParseCustomLabels(cmd.CustomLabels) - params := &agents.AddRDSExporterParams{ - Body: agents.AddRDSExporterBody{ - PMMAgentID: cmd.PMMAgentID, - NodeID: cmd.NodeID, - AWSAccessKey: cmd.AWSAccessKey, - AWSSecretKey: cmd.AWSSecretKey, - CustomLabels: customLabels, - SkipConnectionCheck: cmd.SkipConnectionCheck, - DisableBasicMetrics: cmd.DisableBasicMetrics, - DisableEnhancedMetrics: cmd.DisableEnhancedMetrics, - PushMetrics: cmd.PushMetrics, - LogLevel: &cmd.LogLevel, + params := &agents.AddExporterParams{ + Body: agents.AddExporterBody{ + RDSExporter: &agents.AddExporterParamsBodyRDSExporter{ + PMMAgentID: cmd.PMMAgentID, + NodeID: cmd.NodeID, + AWSAccessKey: cmd.AWSAccessKey, + AWSSecretKey: cmd.AWSSecretKey, + CustomLabels: customLabels, + SkipConnectionCheck: cmd.SkipConnectionCheck, + DisableBasicMetrics: cmd.DisableBasicMetrics, + DisableEnhancedMetrics: cmd.DisableEnhancedMetrics, + PushMetrics: cmd.PushMetrics, + LogLevel: &cmd.LogLevel, + }, }, Context: commands.Ctx, } - resp, err := client.Default.AgentsService.AddRDSExporter(params) + resp, err := client.Default.AgentsService.AddExporter(params) if err != nil { return nil, err } diff --git a/api-tests/inventory/agents_azure_database_exporter_test.go b/api-tests/inventory/agents_azure_database_exporter_test.go index d7f0301c1e..58604dcf4e 100644 --- a/api-tests/inventory/agents_azure_database_exporter_test.go +++ b/api-tests/inventory/agents_azure_database_exporter_test.go @@ -45,15 +45,17 @@ func TestAzureDatabaseExporter(t *testing.T) { //nolint:tparallel pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - azureDatabaseExporter := addAzureDatabaseExporter(t, agents.AddAzureDatabaseExporterBody{ - NodeID: nodeID, - PMMAgentID: pmmAgentID, - AzureDatabaseResourceType: "mysql", - AzureSubscriptionID: "azure_subscription_id", - CustomLabels: map[string]string{ - "custom_label_azure_database_exporter": "azure_database_exporter", + azureDatabaseExporter := addExporter(t, agents.AddExporterBody{ + AzureDatabaseExporter: &agents.AddExporterParamsBodyAzureDatabaseExporter{ + NodeID: nodeID, + PMMAgentID: pmmAgentID, + AzureDatabaseResourceType: "mysql", + AzureSubscriptionID: "azure_subscription_id", + CustomLabels: map[string]string{ + "custom_label_azure_database_exporter": "azure_database_exporter", + }, + SkipConnectionCheck: true, }, - SkipConnectionCheck: true, }) agentID := azureDatabaseExporter.AzureDatabaseExporter.AgentID defer pmmapitests.RemoveAgents(t, agentID) @@ -148,14 +150,16 @@ func TestAzureDatabaseExporter(t *testing.T) { //nolint:tparallel pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddAzureDatabaseExporter(&agents.AddAzureDatabaseExporterParams{ - Body: agents.AddAzureDatabaseExporterBody{ - NodeID: "", - PMMAgentID: pmmAgentID, + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + AzureDatabaseExporter: &agents.AddExporterParamsBodyAzureDatabaseExporter{ + NodeID: "", + PMMAgentID: pmmAgentID, + }, }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAzureDatabaseExporterRequest.NodeId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddDatabaseExporterRequest.NodeId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.AzureDatabaseExporter.AgentID) } @@ -172,11 +176,13 @@ func TestAzureDatabaseExporter(t *testing.T) { //nolint:tparallel pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddAzureDatabaseExporter(&agents.AddAzureDatabaseExporterParams{ - Body: agents.AddAzureDatabaseExporterBody{ - NodeID: "pmm-node-id", - PMMAgentID: pmmAgentID, - AzureDatabaseResourceType: "mysql", + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + AzureDatabaseExporter: &agents.AddExporterParamsBodyAzureDatabaseExporter{ + NodeID: "pmm-node-id", + PMMAgentID: pmmAgentID, + AzureDatabaseResourceType: "mysql", + }, }, Context: pmmapitests.Context, }) @@ -192,11 +198,13 @@ func TestAzureDatabaseExporter(t *testing.T) { //nolint:tparallel require.NotEmpty(t, genericNodeID) defer pmmapitests.RemoveNodes(t, genericNodeID) - res, err := client.Default.AgentsService.AddAzureDatabaseExporter(&agents.AddAzureDatabaseExporterParams{ - Body: agents.AddAzureDatabaseExporterBody{ - NodeID: "nodeID", - PMMAgentID: "pmm-not-exist-server", - AzureDatabaseResourceType: "mysql", + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + AzureDatabaseExporter: &agents.AddExporterParamsBodyAzureDatabaseExporter{ + NodeID: "nodeID", + PMMAgentID: "pmm-not-exist-server", + AzureDatabaseResourceType: "mysql", + }, }, Context: pmmapitests.Context, }) @@ -219,15 +227,17 @@ func TestAzureDatabaseExporter(t *testing.T) { //nolint:tparallel pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - azureDatabaseExporter := addAzureDatabaseExporter(t, agents.AddAzureDatabaseExporterBody{ - NodeID: nodeID, - PMMAgentID: pmmAgentID, - AzureSubscriptionID: "azure_subscription_id", - CustomLabels: map[string]string{ - "custom_label_azure_database_exporter": "azure_database_exporter", + azureDatabaseExporter := addExporter(t, agents.AddExporterBody{ + AzureDatabaseExporter: &agents.AddExporterParamsBodyAzureDatabaseExporter{ + NodeID: nodeID, + PMMAgentID: pmmAgentID, + AzureSubscriptionID: "azure_subscription_id", + CustomLabels: map[string]string{ + "custom_label_azure_database_exporter": "azure_database_exporter", + }, + SkipConnectionCheck: true, + AzureDatabaseResourceType: "mysql", }, - SkipConnectionCheck: true, - AzureDatabaseResourceType: "mysql", }) agentID := azureDatabaseExporter.AzureDatabaseExporter.AgentID defer pmmapitests.RemoveAgents(t, agentID) diff --git a/api-tests/inventory/agents_external_exporter_test.go b/api-tests/inventory/agents_external_exporter_test.go index b5b0ea14ad..bb49bfa6bb 100644 --- a/api-tests/inventory/agents_external_exporter_test.go +++ b/api-tests/inventory/agents_external_exporter_test.go @@ -47,12 +47,14 @@ func TestExternalExporter(t *testing.T) { serviceID := service.External.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - ExternalExporter := addExternalExporter(t, agents.AddExternalExporterBody{ - RunsOnNodeID: genericNodeID, - ServiceID: serviceID, - ListenPort: 12345, - CustomLabels: map[string]string{ - "custom_label_for_external_exporter": "external_exporter", + ExternalExporter := addExporter(t, agents.AddExporterBody{ + ExternalExporter: &agents.AddExporterParamsBodyExternalExporter{ + RunsOnNodeID: genericNodeID, + ServiceID: serviceID, + ListenPort: 12345, + CustomLabels: map[string]string{ + "custom_label_for_external_exporter": "external_exporter", + }, }, }) agentID := ExternalExporter.ExternalExporter.AgentID @@ -99,16 +101,18 @@ func TestExternalExporter(t *testing.T) { serviceID := service.External.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - ExternalExporter := addExternalExporter(t, agents.AddExternalExporterBody{ - RunsOnNodeID: genericNodeID, - ServiceID: serviceID, - Username: "username", - Password: "password", - Scheme: "https", - MetricsPath: "/metrics-hr", - ListenPort: 12345, - CustomLabels: map[string]string{ - "custom_label_external_exporter": "external_exporter", + ExternalExporter := addExporter(t, agents.AddExporterBody{ + ExternalExporter: &agents.AddExporterParamsBodyExternalExporter{ + RunsOnNodeID: genericNodeID, + ServiceID: serviceID, + Username: "username", + Password: "password", + Scheme: "https", + MetricsPath: "/metrics-hr", + ListenPort: 12345, + CustomLabels: map[string]string{ + "custom_label_external_exporter": "external_exporter", + }, }, }) agentID := ExternalExporter.ExternalExporter.AgentID @@ -197,11 +201,13 @@ func TestExternalExporter(t *testing.T) { require.NotEmpty(t, genericNodeID) defer pmmapitests.RemoveNodes(t, genericNodeID) - res, err := client.Default.AgentsService.AddExternalExporter(&agents.AddExternalExporterParams{ - Body: agents.AddExternalExporterBody{ - ServiceID: "", - RunsOnNodeID: genericNodeID, - ListenPort: 12345, + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + ExternalExporter: &agents.AddExporterParamsBodyExternalExporter{ + ServiceID: "", + RunsOnNodeID: genericNodeID, + ListenPort: 12345, + }, }, Context: pmmapitests.Context, }) @@ -228,14 +234,16 @@ func TestExternalExporter(t *testing.T) { serviceID := service.External.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddExternalExporter(&agents.AddExternalExporterParams{ - Body: agents.AddExternalExporterBody{ - ServiceID: serviceID, - RunsOnNodeID: genericNodeID, + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + ExternalExporter: &agents.AddExporterParamsBodyExternalExporter{ + ServiceID: serviceID, + RunsOnNodeID: genericNodeID, + }, }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExternalExporterRequest.ListenPort: value must be inside range (0, 65536)") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.ListenPort: value must be inside range (0, 65536)") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.ExternalExporter.AgentID) } @@ -258,15 +266,17 @@ func TestExternalExporter(t *testing.T) { serviceID := service.External.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddExternalExporter(&agents.AddExternalExporterParams{ - Body: agents.AddExternalExporterBody{ - ServiceID: serviceID, - RunsOnNodeID: "", - ListenPort: 12345, + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + ExternalExporter: &agents.AddExporterParamsBodyExternalExporter{ + ServiceID: serviceID, + RunsOnNodeID: "", + ListenPort: 12345, + }, }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExternalExporterRequest.RunsOnNodeId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.RunsOnNodeId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.ExternalExporter.AgentID) } @@ -279,11 +289,13 @@ func TestExternalExporter(t *testing.T) { require.NotEmpty(t, genericNodeID) defer pmmapitests.RemoveNodes(t, genericNodeID) - res, err := client.Default.AgentsService.AddExternalExporter(&agents.AddExternalExporterParams{ - Body: agents.AddExternalExporterBody{ - ServiceID: "pmm-service-id", - RunsOnNodeID: genericNodeID, - ListenPort: 12345, + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + ExternalExporter: &agents.AddExporterParamsBodyExternalExporter{ + ServiceID: "pmm-service-id", + RunsOnNodeID: genericNodeID, + ListenPort: 12345, + }, }, Context: pmmapitests.Context, }) @@ -310,11 +322,13 @@ func TestExternalExporter(t *testing.T) { serviceID := service.External.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddExternalExporter(&agents.AddExternalExporterParams{ - Body: agents.AddExternalExporterBody{ - ServiceID: serviceID, - RunsOnNodeID: "pmm-not-exist-server", - ListenPort: 12345, + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + ExternalExporter: &agents.AddExporterParamsBodyExternalExporter{ + ServiceID: serviceID, + RunsOnNodeID: "pmm-not-exist-server", + ListenPort: 12345, + }, }, Context: pmmapitests.Context, }) @@ -343,14 +357,16 @@ func TestExternalExporter(t *testing.T) { serviceID := service.External.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - ExternalExporter := addExternalExporter(t, agents.AddExternalExporterBody{ - RunsOnNodeID: genericNodeID, - ServiceID: serviceID, - ListenPort: 12345, - CustomLabels: map[string]string{ - "custom_label_for_external_exporter": "external_exporter", + ExternalExporter := addExporter(t, agents.AddExporterBody{ + ExternalExporter: &agents.AddExporterParamsBodyExternalExporter{ + RunsOnNodeID: genericNodeID, + ServiceID: serviceID, + ListenPort: 12345, + CustomLabels: map[string]string{ + "custom_label_for_external_exporter": "external_exporter", + }, + PushMetrics: true, }, - PushMetrics: true, }) agentID := ExternalExporter.ExternalExporter.AgentID defer pmmapitests.RemoveAgents(t, agentID) diff --git a/api-tests/inventory/agents_mongodb_exporter_test.go b/api-tests/inventory/agents_mongodb_exporter_test.go index 2ac9f08286..e11410ee4d 100644 --- a/api-tests/inventory/agents_mongodb_exporter_test.go +++ b/api-tests/inventory/agents_mongodb_exporter_test.go @@ -57,16 +57,18 @@ func TestMongoDBExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - mongoDBExporter := addMongoDBExporter(t, agents.AddMongoDBExporterBody{ - ServiceID: serviceID, - Username: "username", - Password: "password", - PMMAgentID: pmmAgentID, - CustomLabels: map[string]string{ - "new_label": "mongodb_exporter", - }, + mongoDBExporter := addExporter(t, agents.AddExporterBody{ + MongodbExporter: &agents.AddExporterParamsBodyMongodbExporter{ + ServiceID: serviceID, + Username: "username", + Password: "password", + PMMAgentID: pmmAgentID, + CustomLabels: map[string]string{ + "new_label": "mongodb_exporter", + }, - SkipConnectionCheck: true, + SkipConnectionCheck: true, + }, }) agentID := mongoDBExporter.MongodbExporter.AgentID defer pmmapitests.RemoveAgents(t, agentID) @@ -167,14 +169,16 @@ func TestMongoDBExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddMongoDBExporter(&agents.AddMongoDBExporterParams{ - Body: agents.AddMongoDBExporterBody{ - ServiceID: "", - PMMAgentID: pmmAgentID, + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + MongodbExporter: &agents.AddExporterParamsBodyMongodbExporter{ + ServiceID: "", + PMMAgentID: pmmAgentID, + }, }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddMongoDBExporterRequest.ServiceId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.ServiceId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.MongodbExporter.AgentID) } @@ -198,16 +202,18 @@ func TestMongoDBExporter(t *testing.T) { serviceID := service.Mongodb.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddMongoDBExporter(&agents.AddMongoDBExporterParams{ - Body: agents.AddMongoDBExporterBody{ - ServiceID: serviceID, - PMMAgentID: "", - Username: "username", - Password: "password", + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + MongodbExporter: &agents.AddExporterParamsBodyMongodbExporter{ + ServiceID: serviceID, + PMMAgentID: "", + Username: "username", + Password: "password", + }, }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddMongoDBExporterRequest.PmmAgentId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.MongodbExporter.AgentID) } @@ -224,12 +230,14 @@ func TestMongoDBExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddMongoDBExporter(&agents.AddMongoDBExporterParams{ - Body: agents.AddMongoDBExporterBody{ - ServiceID: "pmm-service-id", - PMMAgentID: pmmAgentID, - Username: "username", - Password: "password", + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + MongodbExporter: &agents.AddExporterParamsBodyMongodbExporter{ + ServiceID: "pmm-service-id", + PMMAgentID: pmmAgentID, + Username: "username", + Password: "password", + }, }, Context: pmmapitests.Context, }) @@ -257,12 +265,14 @@ func TestMongoDBExporter(t *testing.T) { serviceID := service.Mongodb.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddMongoDBExporter(&agents.AddMongoDBExporterParams{ - Body: agents.AddMongoDBExporterBody{ - ServiceID: serviceID, - PMMAgentID: "pmm-not-exist-server", - Username: "username", - Password: "password", + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + MongodbExporter: &agents.AddExporterParamsBodyMongodbExporter{ + ServiceID: serviceID, + PMMAgentID: "pmm-not-exist-server", + Username: "username", + Password: "password", + }, }, Context: pmmapitests.Context, }) @@ -298,17 +308,19 @@ func TestMongoDBExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - mongoDBExporter := addMongoDBExporter(t, agents.AddMongoDBExporterBody{ - ServiceID: serviceID, - Username: "username", - Password: "password", - PMMAgentID: pmmAgentID, - CustomLabels: map[string]string{ - "new_label": "mongodb_exporter", - }, + mongoDBExporter := addExporter(t, agents.AddExporterBody{ + MongodbExporter: &agents.AddExporterParamsBodyMongodbExporter{ + ServiceID: serviceID, + Username: "username", + Password: "password", + PMMAgentID: pmmAgentID, + CustomLabels: map[string]string{ + "new_label": "mongodb_exporter", + }, - SkipConnectionCheck: true, - PushMetrics: true, + SkipConnectionCheck: true, + PushMetrics: true, + }, }) agentID := mongoDBExporter.MongodbExporter.AgentID defer pmmapitests.RemoveAgents(t, agentID) diff --git a/api-tests/inventory/agents_mysqld_exporter_test.go b/api-tests/inventory/agents_mysqld_exporter_test.go index bfba236b3b..f1756e0dc9 100644 --- a/api-tests/inventory/agents_mysqld_exporter_test.go +++ b/api-tests/inventory/agents_mysqld_exporter_test.go @@ -57,17 +57,18 @@ func TestMySQLdExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - mySqldExporter := addMySQLdExporter(t, agents.AddMySQLdExporterBody{ - ServiceID: serviceID, - Username: "username", - Password: "password", - PMMAgentID: pmmAgentID, - CustomLabels: map[string]string{ - "custom_label_mysql_exporter": "mysql_exporter", + mySqldExporter := addExporter(t, agents.AddExporterBody{ + MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + ServiceID: serviceID, + Username: "username", + Password: "password", + PMMAgentID: pmmAgentID, + CustomLabels: map[string]string{ + "custom_label_mysql_exporter": "mysql_exporter", + }, + SkipConnectionCheck: true, + TablestatsGroupTableLimit: 2000, }, - - SkipConnectionCheck: true, - TablestatsGroupTableLimit: 2000, }) assert.EqualValues(t, 0, mySqldExporter.TableCount) assert.EqualValues(t, 2000, mySqldExporter.MysqldExporter.TablestatsGroupTableLimit) @@ -192,16 +193,18 @@ func TestMySQLdExporter(t *testing.T) { t.Skip("There are no connected agents") } - mySqldExporter := addMySQLdExporter(t, agents.AddMySQLdExporterBody{ - ServiceID: serviceID, - Username: "pmm-agent", // from pmm-agent docker-compose.yml - Password: "pmm-agent-password", // from pmm-agent docker-compose.yml - PMMAgentID: pmmAgentID, - CustomLabels: map[string]string{ - "custom_label_mysql_exporter": "mysql_exporter", - }, + mySqldExporter := addExporter(t, agents.AddExporterBody{ + MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + ServiceID: serviceID, + Username: "pmm-agent", // from pmm-agent docker-compose.yml + Password: "pmm-agent-password", // from pmm-agent docker-compose.yml + PMMAgentID: pmmAgentID, + CustomLabels: map[string]string{ + "custom_label_mysql_exporter": "mysql_exporter", + }, - TablestatsGroupTableLimit: 2000, + TablestatsGroupTableLimit: 2000, + }, }) assert.Greater(t, mySqldExporter.TableCount, int32(0)) assert.EqualValues(t, 2000, mySqldExporter.MysqldExporter.TablestatsGroupTableLimit) @@ -220,14 +223,16 @@ func TestMySQLdExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddMySQLdExporter(&agents.AddMySQLdExporterParams{ - Body: agents.AddMySQLdExporterBody{ - ServiceID: "", - PMMAgentID: pmmAgentID, + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + ServiceID: "", + PMMAgentID: pmmAgentID, + }, }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddMySQLdExporterRequest.ServiceId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.ServiceId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.MysqldExporter.AgentID) } @@ -251,16 +256,18 @@ func TestMySQLdExporter(t *testing.T) { serviceID := service.Mysql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddMySQLdExporter(&agents.AddMySQLdExporterParams{ - Body: agents.AddMySQLdExporterBody{ - ServiceID: serviceID, - PMMAgentID: "", - Username: "username", - Password: "password", + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + ServiceID: serviceID, + PMMAgentID: "", + Username: "username", + Password: "password", + }, }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddMySQLdExporterRequest.PmmAgentId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.MysqldExporter.AgentID) } @@ -277,12 +284,14 @@ func TestMySQLdExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddMySQLdExporter(&agents.AddMySQLdExporterParams{ - Body: agents.AddMySQLdExporterBody{ - ServiceID: "pmm-service-id", - PMMAgentID: pmmAgentID, - Username: "username", - Password: "password", + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + ServiceID: "pmm-service-id", + PMMAgentID: pmmAgentID, + Username: "username", + Password: "password", + }, }, Context: pmmapitests.Context, }) @@ -310,12 +319,14 @@ func TestMySQLdExporter(t *testing.T) { serviceID := service.Mysql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddMySQLdExporter(&agents.AddMySQLdExporterParams{ - Body: agents.AddMySQLdExporterBody{ - ServiceID: serviceID, - PMMAgentID: "pmm-not-exist-server", - Username: "username", - Password: "password", + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + ServiceID: serviceID, + PMMAgentID: "pmm-not-exist-server", + Username: "username", + Password: "password", + }, }, Context: pmmapitests.Context, }) @@ -351,18 +362,20 @@ func TestMySQLdExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - mySqldExporter := addMySQLdExporter(t, agents.AddMySQLdExporterBody{ - ServiceID: serviceID, - Username: "username", - Password: "password", - PMMAgentID: pmmAgentID, - CustomLabels: map[string]string{ - "custom_label_mysql_exporter": "mysql_exporter", - }, + mySqldExporter := addExporter(t, agents.AddExporterBody{ + MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + ServiceID: serviceID, + Username: "username", + Password: "password", + PMMAgentID: pmmAgentID, + CustomLabels: map[string]string{ + "custom_label_mysql_exporter": "mysql_exporter", + }, - SkipConnectionCheck: true, - TablestatsGroupTableLimit: 2000, - PushMetrics: true, + SkipConnectionCheck: true, + TablestatsGroupTableLimit: 2000, + PushMetrics: true, + }, }) assert.EqualValues(t, 0, mySqldExporter.TableCount) assert.EqualValues(t, 2000, mySqldExporter.MysqldExporter.TablestatsGroupTableLimit) diff --git a/api-tests/inventory/agents_node_exporter_test.go b/api-tests/inventory/agents_node_exporter_test.go index 43e470330a..b65e560c43 100644 --- a/api-tests/inventory/agents_node_exporter_test.go +++ b/api-tests/inventory/agents_node_exporter_test.go @@ -126,11 +126,15 @@ func TestNodeExporter(t *testing.T) { t.Run("AddPMMAgentIDEmpty", func(t *testing.T) { t.Parallel() - res, err := client.Default.AgentsService.AddNodeExporter(&agents.AddNodeExporterParams{ - Body: agents.AddNodeExporterBody{PMMAgentID: ""}, + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + NodeExporter: &agents.AddExporterParamsBodyNodeExporter{ + PMMAgentID: "", + }, + }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddNodeExporterRequest.PmmAgentId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.NodeExporter.AgentID) } @@ -139,8 +143,12 @@ func TestNodeExporter(t *testing.T) { t.Run("NotExistPmmAgentID", func(t *testing.T) { t.Parallel() - res, err := client.Default.AgentsService.AddNodeExporter(&agents.AddNodeExporterParams{ - Body: agents.AddNodeExporterBody{PMMAgentID: "pmm-node-exporter-node"}, + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + NodeExporter: &agents.AddExporterParamsBodyNodeExporter{ + PMMAgentID: "pmm-node-exporter-node", + }, + }, Context: pmmapitests.Context, }) pmmapitests.AssertAPIErrorf(t, err, 404, codes.NotFound, "Agent with ID \"pmm-node-exporter-node\" not found.") @@ -163,11 +171,13 @@ func TestNodeExporter(t *testing.T) { customLabels := map[string]string{ "custom_label_node_exporter": "node_exporter", } - res, err := client.Default.AgentsService.AddNodeExporter(&agents.AddNodeExporterParams{ - Body: agents.AddNodeExporterBody{ - PMMAgentID: pmmAgentID, - CustomLabels: customLabels, - PushMetrics: true, + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + NodeExporter: &agents.AddExporterParamsBodyNodeExporter{ + PMMAgentID: pmmAgentID, + CustomLabels: customLabels, + PushMetrics: true, + }, }, Context: pmmapitests.Context, }) diff --git a/api-tests/inventory/agents_postgres_exporter_test.go b/api-tests/inventory/agents_postgres_exporter_test.go index e2b01f3c4d..33ee72e32c 100644 --- a/api-tests/inventory/agents_postgres_exporter_test.go +++ b/api-tests/inventory/agents_postgres_exporter_test.go @@ -57,16 +57,18 @@ func TestPostgresExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - PostgresExporter := addPostgresExporter(t, agents.AddPostgresExporterBody{ - ServiceID: serviceID, - Username: "username", - Password: "password", - PMMAgentID: pmmAgentID, - CustomLabels: map[string]string{ - "custom_label_postgres_exporter": "postgres_exporter", - }, + PostgresExporter := addExporter(t, agents.AddExporterBody{ + PostgresExporter: &agents.AddExporterParamsBodyPostgresExporter{ + ServiceID: serviceID, + Username: "username", + Password: "password", + PMMAgentID: pmmAgentID, + CustomLabels: map[string]string{ + "custom_label_postgres_exporter": "postgres_exporter", + }, - SkipConnectionCheck: true, + SkipConnectionCheck: true, + }, }) agentID := PostgresExporter.PostgresExporter.AgentID defer pmmapitests.RemoveAgents(t, agentID) @@ -164,14 +166,16 @@ func TestPostgresExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddPostgresExporter(&agents.AddPostgresExporterParams{ - Body: agents.AddPostgresExporterBody{ - ServiceID: "", - PMMAgentID: pmmAgentID, + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + PostgresExporter: &agents.AddExporterParamsBodyPostgresExporter{ + ServiceID: "", + PMMAgentID: pmmAgentID, + }, }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddPostgresExporterRequest.ServiceId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.ServiceId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.PostgresExporter.AgentID) } @@ -195,16 +199,18 @@ func TestPostgresExporter(t *testing.T) { serviceID := service.Postgresql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddPostgresExporter(&agents.AddPostgresExporterParams{ - Body: agents.AddPostgresExporterBody{ - ServiceID: serviceID, - PMMAgentID: "", - Username: "username", - Password: "password", + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + PostgresExporter: &agents.AddExporterParamsBodyPostgresExporter{ + ServiceID: serviceID, + PMMAgentID: "", + Username: "username", + Password: "password", + }, }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddPostgresExporterRequest.PmmAgentId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.PostgresExporter.AgentID) } @@ -221,12 +227,14 @@ func TestPostgresExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddPostgresExporter(&agents.AddPostgresExporterParams{ - Body: agents.AddPostgresExporterBody{ - ServiceID: "pmm-service-id", - PMMAgentID: pmmAgentID, - Username: "username", - Password: "password", + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + PostgresExporter: &agents.AddExporterParamsBodyPostgresExporter{ + ServiceID: "pmm-service-id", + PMMAgentID: pmmAgentID, + Username: "username", + Password: "password", + }, }, Context: pmmapitests.Context, }) @@ -254,12 +262,14 @@ func TestPostgresExporter(t *testing.T) { serviceID := service.Postgresql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddPostgresExporter(&agents.AddPostgresExporterParams{ - Body: agents.AddPostgresExporterBody{ - ServiceID: serviceID, - PMMAgentID: "pmm-not-exist-server", - Username: "username", - Password: "password", + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + PostgresExporter: &agents.AddExporterParamsBodyPostgresExporter{ + ServiceID: serviceID, + PMMAgentID: "pmm-not-exist-server", + Username: "username", + Password: "password", + }, }, Context: pmmapitests.Context, }) @@ -295,17 +305,19 @@ func TestPostgresExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - PostgresExporter := addPostgresExporter(t, agents.AddPostgresExporterBody{ - ServiceID: serviceID, - Username: "username", - Password: "password", - PMMAgentID: pmmAgentID, - CustomLabels: map[string]string{ - "custom_label_postgres_exporter": "postgres_exporter", - }, + PostgresExporter := addExporter(t, agents.AddExporterBody{ + PostgresExporter: &agents.AddExporterParamsBodyPostgresExporter{ + ServiceID: serviceID, + Username: "username", + Password: "password", + PMMAgentID: pmmAgentID, + CustomLabels: map[string]string{ + "custom_label_postgres_exporter": "postgres_exporter", + }, - SkipConnectionCheck: true, - PushMetrics: true, + SkipConnectionCheck: true, + PushMetrics: true, + }, }) agentID := PostgresExporter.PostgresExporter.AgentID defer pmmapitests.RemoveAgents(t, agentID) diff --git a/api-tests/inventory/agents_proxysql_exporter_test.go b/api-tests/inventory/agents_proxysql_exporter_test.go index 975a817196..468ceb4b47 100644 --- a/api-tests/inventory/agents_proxysql_exporter_test.go +++ b/api-tests/inventory/agents_proxysql_exporter_test.go @@ -57,16 +57,18 @@ func TestProxySQLExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - ProxySQLExporter := addProxySQLExporter(t, agents.AddProxySQLExporterBody{ - ServiceID: serviceID, - Username: "username", - Password: "password", - PMMAgentID: pmmAgentID, - CustomLabels: map[string]string{ - "custom_label_proxysql_exporter": "proxysql_exporter", - }, + ProxySQLExporter := addExporter(t, agents.AddExporterBody{ + ProxysqlExporter: &agents.AddExporterParamsBodyProxysqlExporter{ + ServiceID: serviceID, + Username: "username", + Password: "password", + PMMAgentID: pmmAgentID, + CustomLabels: map[string]string{ + "custom_label_proxysql_exporter": "proxysql_exporter", + }, - SkipConnectionCheck: true, + SkipConnectionCheck: true, + }, }) agentID := ProxySQLExporter.ProxysqlExporter.AgentID defer pmmapitests.RemoveAgents(t, agentID) @@ -164,14 +166,16 @@ func TestProxySQLExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddProxySQLExporter(&agents.AddProxySQLExporterParams{ - Body: agents.AddProxySQLExporterBody{ - ServiceID: "", - PMMAgentID: pmmAgentID, + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + ProxysqlExporter: &agents.AddExporterParamsBodyProxysqlExporter{ + ServiceID: "", + PMMAgentID: pmmAgentID, + }, }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddProxySQLExporterRequest.ServiceId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.ServiceId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.ProxysqlExporter.AgentID) } @@ -195,16 +199,18 @@ func TestProxySQLExporter(t *testing.T) { serviceID := service.Proxysql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddProxySQLExporter(&agents.AddProxySQLExporterParams{ - Body: agents.AddProxySQLExporterBody{ - ServiceID: serviceID, - PMMAgentID: "", - Username: "username", - Password: "password", + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + ProxysqlExporter: &agents.AddExporterParamsBodyProxysqlExporter{ + ServiceID: serviceID, + PMMAgentID: "", + Username: "username", + Password: "password", + }, }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddProxySQLExporterRequest.PmmAgentId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.ProxysqlExporter.AgentID) } @@ -221,12 +227,14 @@ func TestProxySQLExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddProxySQLExporter(&agents.AddProxySQLExporterParams{ - Body: agents.AddProxySQLExporterBody{ - ServiceID: "pmm-service-id", - PMMAgentID: pmmAgentID, - Username: "username", - Password: "password", + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + ProxysqlExporter: &agents.AddExporterParamsBodyProxysqlExporter{ + ServiceID: "pmm-service-id", + PMMAgentID: pmmAgentID, + Username: "username", + Password: "password", + }, }, Context: pmmapitests.Context, }) @@ -254,12 +262,14 @@ func TestProxySQLExporter(t *testing.T) { serviceID := service.Proxysql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddProxySQLExporter(&agents.AddProxySQLExporterParams{ - Body: agents.AddProxySQLExporterBody{ - ServiceID: serviceID, - PMMAgentID: "pmm-not-exist-server", - Username: "username", - Password: "password", + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + ProxysqlExporter: &agents.AddExporterParamsBodyProxysqlExporter{ + ServiceID: serviceID, + PMMAgentID: "pmm-not-exist-server", + Username: "username", + Password: "password", + }, }, Context: pmmapitests.Context, }) @@ -292,16 +302,18 @@ func TestProxySQLExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - ProxySQLExporter := addProxySQLExporter(t, agents.AddProxySQLExporterBody{ - ServiceID: serviceID, - Username: "username", - Password: "password", - PMMAgentID: pmmAgentID, - CustomLabels: map[string]string{ - "custom_label_proxysql_exporter": "proxysql_exporter", - }, + ProxySQLExporter := addExporter(t, agents.AddExporterBody{ + ProxysqlExporter: &agents.AddExporterParamsBodyProxysqlExporter{ + ServiceID: serviceID, + Username: "username", + Password: "password", + PMMAgentID: pmmAgentID, + CustomLabels: map[string]string{ + "custom_label_proxysql_exporter": "proxysql_exporter", + }, - SkipConnectionCheck: true, + SkipConnectionCheck: true, + }, }) agentID := ProxySQLExporter.ProxysqlExporter.AgentID defer pmmapitests.RemoveAgents(t, agentID) diff --git a/api-tests/inventory/agents_rds_exporter_test.go b/api-tests/inventory/agents_rds_exporter_test.go index 7823efe4a7..3367b4b1fd 100644 --- a/api-tests/inventory/agents_rds_exporter_test.go +++ b/api-tests/inventory/agents_rds_exporter_test.go @@ -43,15 +43,17 @@ func TestRDSExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - rdsExporter := addRDSExporter(t, agents.AddRDSExporterBody{ - NodeID: nodeID, - PMMAgentID: pmmAgentID, - CustomLabels: map[string]string{ - "custom_label_rds_exporter": "rds_exporter", + rdsExporter := addExporter(t, agents.AddExporterBody{ + RDSExporter: &agents.AddExporterParamsBodyRDSExporter{ + NodeID: nodeID, + PMMAgentID: pmmAgentID, + CustomLabels: map[string]string{ + "custom_label_rds_exporter": "rds_exporter", + }, + SkipConnectionCheck: true, + DisableBasicMetrics: true, + DisableEnhancedMetrics: true, }, - SkipConnectionCheck: true, - DisableBasicMetrics: true, - DisableEnhancedMetrics: true, }) agentID := rdsExporter.RDSExporter.AgentID defer pmmapitests.RemoveAgents(t, agentID) @@ -150,14 +152,16 @@ func TestRDSExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddRDSExporter(&agents.AddRDSExporterParams{ - Body: agents.AddRDSExporterBody{ - NodeID: "", - PMMAgentID: pmmAgentID, + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + RDSExporter: &agents.AddExporterParamsBodyRDSExporter{ + NodeID: "", + PMMAgentID: pmmAgentID, + }, }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddRDSExporterRequest.NodeId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.NodeId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.RDSExporter.AgentID) } @@ -174,10 +178,12 @@ func TestRDSExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddRDSExporter(&agents.AddRDSExporterParams{ - Body: agents.AddRDSExporterBody{ - NodeID: "pmm-node-id", - PMMAgentID: pmmAgentID, + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + RDSExporter: &agents.AddExporterParamsBodyRDSExporter{ + NodeID: "pmm-node-id", + PMMAgentID: pmmAgentID, + }, }, Context: pmmapitests.Context, }) @@ -193,10 +199,12 @@ func TestRDSExporter(t *testing.T) { require.NotEmpty(t, genericNodeID) defer pmmapitests.RemoveNodes(t, genericNodeID) - res, err := client.Default.AgentsService.AddRDSExporter(&agents.AddRDSExporterParams{ - Body: agents.AddRDSExporterBody{ - NodeID: "nodeID", - PMMAgentID: "pmm-not-exist-server", + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + RDSExporter: &agents.AddExporterParamsBodyRDSExporter{ + NodeID: "nodeID", + PMMAgentID: "pmm-not-exist-server", + }, }, Context: pmmapitests.Context, }) @@ -219,15 +227,17 @@ func TestRDSExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - rdsExporter := addRDSExporter(t, agents.AddRDSExporterBody{ - NodeID: nodeID, - PMMAgentID: pmmAgentID, - CustomLabels: map[string]string{ - "custom_label_rds_exporter": "rds_exporter", + rdsExporter := addExporter(t, agents.AddExporterBody{ + RDSExporter: &agents.AddExporterParamsBodyRDSExporter{ + NodeID: nodeID, + PMMAgentID: pmmAgentID, + CustomLabels: map[string]string{ + "custom_label_rds_exporter": "rds_exporter", + }, + SkipConnectionCheck: true, + DisableBasicMetrics: true, + DisableEnhancedMetrics: true, }, - SkipConnectionCheck: true, - DisableBasicMetrics: true, - DisableEnhancedMetrics: true, }) agentID := rdsExporter.RDSExporter.AgentID defer pmmapitests.RemoveAgents(t, agentID) diff --git a/api-tests/inventory/agents_test.go b/api-tests/inventory/agents_test.go index 2c72e71107..4d42414076 100644 --- a/api-tests/inventory/agents_test.go +++ b/api-tests/inventory/agents_test.go @@ -63,13 +63,15 @@ func TestAgents(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - mySqldExporter := addMySQLdExporter(t, agents.AddMySQLdExporterBody{ - ServiceID: serviceID, - Username: "username", - Password: "password", - PMMAgentID: pmmAgentID, + mySqldExporter := addExporter(t, agents.AddExporterBody{ + MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + ServiceID: serviceID, + Username: "username", + Password: "password", + PMMAgentID: pmmAgentID, - SkipConnectionCheck: true, + SkipConnectionCheck: true, + }, }) mySqldExporterID := mySqldExporter.MysqldExporter.AgentID defer pmmapitests.RemoveAgents(t, mySqldExporterID) @@ -109,22 +111,26 @@ func TestAgents(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - mySqldExporter := addMySQLdExporter(t, agents.AddMySQLdExporterBody{ - ServiceID: serviceID, - Username: "username", - Password: "password", - PMMAgentID: pmmAgentID, + mySqldExporter := addExporter(t, agents.AddExporterBody{ + MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + ServiceID: serviceID, + Username: "username", + Password: "password", + PMMAgentID: pmmAgentID, - SkipConnectionCheck: true, + SkipConnectionCheck: true, + }, }) mySqldExporterID := mySqldExporter.MysqldExporter.AgentID defer pmmapitests.RemoveAgents(t, mySqldExporterID) - nodeExporter, err := client.Default.AgentsService.AddNodeExporter(&agents.AddNodeExporterParams{ - Body: agents.AddNodeExporterBody{ - PMMAgentID: pmmAgentID, - CustomLabels: map[string]string{ - "custom_label_node_exporter": "node_exporter", + nodeExporter, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + NodeExporter: &agents.AddExporterParamsBodyNodeExporter{ + PMMAgentID: pmmAgentID, + CustomLabels: map[string]string{ + "custom_label_node_exporter": "node_exporter", + }, }, }, Context: pmmapitests.Context, @@ -226,13 +232,15 @@ func TestAgents(t *testing.T) { }).Mysql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - _, err := client.Default.AgentsService.AddMongoDBExporter(&agents.AddMongoDBExporterParams{ - Body: agents.AddMongoDBExporterBody{ - ServiceID: serviceID, - Username: "username", - Password: "password", - PMMAgentID: pmmAgentID, - SkipConnectionCheck: true, + _, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + MongodbExporter: &agents.AddExporterParamsBodyMongodbExporter{ + ServiceID: serviceID, + Username: "username", + Password: "password", + PMMAgentID: pmmAgentID, + SkipConnectionCheck: true, + }, }, Context: pmmapitests.Context, }) @@ -318,16 +326,18 @@ func TestPMMAgent(t *testing.T) { nodeExporterOK := addNodeExporter(t, pmmAgentID, make(map[string]string)) nodeExporterID := nodeExporterOK.Payload.NodeExporter.AgentID - mySqldExporter := addMySQLdExporter(t, agents.AddMySQLdExporterBody{ - ServiceID: serviceID, - Username: "username", - Password: "password", - PMMAgentID: pmmAgentID, - CustomLabels: map[string]string{ - "custom_label_mysql_exporter": "mysql_exporter", - }, + mySqldExporter := addExporter(t, agents.AddExporterBody{ + MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + ServiceID: serviceID, + Username: "username", + Password: "password", + PMMAgentID: pmmAgentID, + CustomLabels: map[string]string{ + "custom_label_mysql_exporter": "mysql_exporter", + }, - SkipConnectionCheck: true, + SkipConnectionCheck: true, + }, }) mySqldExporterID := mySqldExporter.MysqldExporter.AgentID diff --git a/api-tests/inventory/helpers.go b/api-tests/inventory/helpers.go index 6e0376165a..9f60b56efe 100644 --- a/api-tests/inventory/helpers.go +++ b/api-tests/inventory/helpers.go @@ -47,19 +47,6 @@ func addRemoteRDSNode(t pmmapitests.TestingT, nodeName string) *nodes.AddNodeOKB return res.Payload } -func addRDSExporter(t pmmapitests.TestingT, body agents.AddRDSExporterBody) *agents.AddRDSExporterOKBody { - t.Helper() - - res, err := client.Default.AgentsService.AddRDSExporter(&agents.AddRDSExporterParams{ - Body: body, - Context: pmmapitests.Context, - }) - assert.NoError(t, err) - require.NotNil(t, res) - - return res.Payload -} - func addRemoteAzureDatabaseNode(t pmmapitests.TestingT, nodeName string) *nodes.AddNodeOKBody { t.Helper() @@ -80,19 +67,6 @@ func addRemoteAzureDatabaseNode(t pmmapitests.TestingT, nodeName string) *nodes. return res.Payload } -func addAzureDatabaseExporter(t pmmapitests.TestingT, body agents.AddAzureDatabaseExporterBody) *agents.AddAzureDatabaseExporterOKBody { - t.Helper() - - res, err := client.Default.AgentsService.AddAzureDatabaseExporter(&agents.AddAzureDatabaseExporterParams{ - Body: body, - Context: pmmapitests.Context, - }) - assert.NoError(t, err) - require.NotNil(t, res) - - return res.Payload -} - func addService(t pmmapitests.TestingT, body services.AddServiceBody) *services.AddServiceOKBody { t.Helper() @@ -107,11 +81,13 @@ func addService(t pmmapitests.TestingT, body services.AddServiceBody) *services. return res.Payload } -func addNodeExporter(t pmmapitests.TestingT, pmmAgentID string, customLabels map[string]string) *agents.AddNodeExporterOK { - res, err := client.Default.AgentsService.AddNodeExporter(&agents.AddNodeExporterParams{ - Body: agents.AddNodeExporterBody{ - PMMAgentID: pmmAgentID, - CustomLabels: customLabels, +func addNodeExporter(t pmmapitests.TestingT, pmmAgentID string, customLabels map[string]string) *agents.AddExporterOK { + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + Body: agents.AddExporterBody{ + NodeExporter: &agents.AddExporterParamsBodyNodeExporter{ + PMMAgentID: pmmAgentID, + CustomLabels: customLabels, + }, }, Context: pmmapitests.Context, }) @@ -122,58 +98,10 @@ func addNodeExporter(t pmmapitests.TestingT, pmmAgentID string, customLabels map return res } -func addMySQLdExporter(t pmmapitests.TestingT, body agents.AddMySQLdExporterBody) *agents.AddMySQLdExporterOKBody { - t.Helper() - - res, err := client.Default.AgentsService.AddMySQLdExporter(&agents.AddMySQLdExporterParams{ - Body: body, - Context: pmmapitests.Context, - }) - assert.NoError(t, err) - require.NotNil(t, res) - return res.Payload -} - -func addMongoDBExporter(t pmmapitests.TestingT, body agents.AddMongoDBExporterBody) *agents.AddMongoDBExporterOKBody { - t.Helper() - - res, err := client.Default.AgentsService.AddMongoDBExporter(&agents.AddMongoDBExporterParams{ - Body: body, - Context: pmmapitests.Context, - }) - assert.NoError(t, err) - require.NotNil(t, res) - return res.Payload -} - -func addPostgresExporter(t pmmapitests.TestingT, body agents.AddPostgresExporterBody) *agents.AddPostgresExporterOKBody { - t.Helper() - - res, err := client.Default.AgentsService.AddPostgresExporter(&agents.AddPostgresExporterParams{ - Body: body, - Context: pmmapitests.Context, - }) - assert.NoError(t, err) - require.NotNil(t, res) - return res.Payload -} - -func addProxySQLExporter(t pmmapitests.TestingT, body agents.AddProxySQLExporterBody) *agents.AddProxySQLExporterOKBody { - t.Helper() - - res, err := client.Default.AgentsService.AddProxySQLExporter(&agents.AddProxySQLExporterParams{ - Body: body, - Context: pmmapitests.Context, - }) - assert.NoError(t, err) - require.NotNil(t, res) - return res.Payload -} - -func addExternalExporter(t pmmapitests.TestingT, body agents.AddExternalExporterBody) *agents.AddExternalExporterOKBody { +func addExporter(t pmmapitests.TestingT, body agents.AddExporterBody) *agents.AddExporterOKBody { t.Helper() - res, err := client.Default.AgentsService.AddExternalExporter(&agents.AddExternalExporterParams{ + res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ Body: body, Context: pmmapitests.Context, }) diff --git a/api-tests/inventory/services_test.go b/api-tests/inventory/services_test.go index c21882b82c..20de99a32f 100644 --- a/api-tests/inventory/services_test.go +++ b/api-tests/inventory/services_test.go @@ -264,13 +264,15 @@ func TestRemoveService(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - _ = addMySQLdExporter(t, agents.AddMySQLdExporterBody{ - ServiceID: serviceID, - Username: "username", - Password: "password", - PMMAgentID: pmmAgentID, + _ = addExporter(t, agents.AddExporterBody{ + MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + ServiceID: serviceID, + Username: "username", + Password: "password", + PMMAgentID: pmmAgentID, - SkipConnectionCheck: true, + SkipConnectionCheck: true, + }, }) params := &services.RemoveServiceParams{ diff --git a/api/agentlocal/v1/json/client/agent_local_service/status2_responses.go b/api/agentlocal/v1/json/client/agent_local_service/status2_responses.go index 5c18f800de..c258785bac 100644 --- a/api/agentlocal/v1/json/client/agent_local_service/status2_responses.go +++ b/api/agentlocal/v1/json/client/agent_local_service/status2_responses.go @@ -431,7 +431,7 @@ type Status2OKBodyAgentsInfoItems0 struct { AgentID string `json:"agent_id,omitempty"` // AgentType describes supported Agent types. - // Enum: [AGENT_TYPE_UNSPECIFIED AGENT_TYPE_PMM_AGENT AGENT_TYPE_VM_AGENT AGENT_TYPE_NODE_EXPORTER AGENT_TYPE_MYSQLD_EXPORTER AGENT_TYPE_MONGODB_EXPORTER AGENT_TYPE_POSTGRES_EXPORTER AGENT_TYPE_PROXYSQL_EXPORTER AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT AGENT_TYPE_RDS_EXPORTER AGENT_TYPE_EXTERNAL_EXPORTER AGENT_TYPE_AZURE_DATABASE_EXPORTER] + // Enum: [AGENT_TYPE_UNSPECIFIED AGENT_TYPE_PMM_AGENT AGENT_TYPE_VM_AGENT AGENT_TYPE_NODE_EXPORTER AGENT_TYPE_MYSQLD_EXPORTER AGENT_TYPE_MONGODB_EXPORTER AGENT_TYPE_POSTGRES_EXPORTER AGENT_TYPE_PROXYSQL_EXPORTER AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT AGENT_TYPE_EXTERNAL_EXPORTER AGENT_TYPE_RDS_EXPORTER AGENT_TYPE_AZURE_DATABASE_EXPORTER] AgentType *string `json:"agent_type,omitempty"` // AgentStatus represents actual Agent status. @@ -475,7 +475,7 @@ var status2OkBodyAgentsInfoItems0TypeAgentTypePropEnum []interface{} func init() { var res []string - if err := json.Unmarshal([]byte(`["AGENT_TYPE_UNSPECIFIED","AGENT_TYPE_PMM_AGENT","AGENT_TYPE_VM_AGENT","AGENT_TYPE_NODE_EXPORTER","AGENT_TYPE_MYSQLD_EXPORTER","AGENT_TYPE_MONGODB_EXPORTER","AGENT_TYPE_POSTGRES_EXPORTER","AGENT_TYPE_PROXYSQL_EXPORTER","AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT","AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT","AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT","AGENT_TYPE_RDS_EXPORTER","AGENT_TYPE_EXTERNAL_EXPORTER","AGENT_TYPE_AZURE_DATABASE_EXPORTER"]`), &res); err != nil { + if err := json.Unmarshal([]byte(`["AGENT_TYPE_UNSPECIFIED","AGENT_TYPE_PMM_AGENT","AGENT_TYPE_VM_AGENT","AGENT_TYPE_NODE_EXPORTER","AGENT_TYPE_MYSQLD_EXPORTER","AGENT_TYPE_MONGODB_EXPORTER","AGENT_TYPE_POSTGRES_EXPORTER","AGENT_TYPE_PROXYSQL_EXPORTER","AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT","AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT","AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT","AGENT_TYPE_EXTERNAL_EXPORTER","AGENT_TYPE_RDS_EXPORTER","AGENT_TYPE_AZURE_DATABASE_EXPORTER"]`), &res); err != nil { panic(err) } for _, v := range res { @@ -524,12 +524,12 @@ const ( // Status2OKBodyAgentsInfoItems0AgentTypeAGENTTYPEQANPOSTGRESQLPGSTATMONITORAGENT captures enum value "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT" Status2OKBodyAgentsInfoItems0AgentTypeAGENTTYPEQANPOSTGRESQLPGSTATMONITORAGENT string = "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT" - // Status2OKBodyAgentsInfoItems0AgentTypeAGENTTYPERDSEXPORTER captures enum value "AGENT_TYPE_RDS_EXPORTER" - Status2OKBodyAgentsInfoItems0AgentTypeAGENTTYPERDSEXPORTER string = "AGENT_TYPE_RDS_EXPORTER" - // Status2OKBodyAgentsInfoItems0AgentTypeAGENTTYPEEXTERNALEXPORTER captures enum value "AGENT_TYPE_EXTERNAL_EXPORTER" Status2OKBodyAgentsInfoItems0AgentTypeAGENTTYPEEXTERNALEXPORTER string = "AGENT_TYPE_EXTERNAL_EXPORTER" + // Status2OKBodyAgentsInfoItems0AgentTypeAGENTTYPERDSEXPORTER captures enum value "AGENT_TYPE_RDS_EXPORTER" + Status2OKBodyAgentsInfoItems0AgentTypeAGENTTYPERDSEXPORTER string = "AGENT_TYPE_RDS_EXPORTER" + // Status2OKBodyAgentsInfoItems0AgentTypeAGENTTYPEAZUREDATABASEEXPORTER captures enum value "AGENT_TYPE_AZURE_DATABASE_EXPORTER" Status2OKBodyAgentsInfoItems0AgentTypeAGENTTYPEAZUREDATABASEEXPORTER string = "AGENT_TYPE_AZURE_DATABASE_EXPORTER" ) diff --git a/api/agentlocal/v1/json/client/agent_local_service/status_responses.go b/api/agentlocal/v1/json/client/agent_local_service/status_responses.go index e77975ce77..193b0d26e0 100644 --- a/api/agentlocal/v1/json/client/agent_local_service/status_responses.go +++ b/api/agentlocal/v1/json/client/agent_local_service/status_responses.go @@ -468,7 +468,7 @@ type StatusOKBodyAgentsInfoItems0 struct { AgentID string `json:"agent_id,omitempty"` // AgentType describes supported Agent types. - // Enum: [AGENT_TYPE_UNSPECIFIED AGENT_TYPE_PMM_AGENT AGENT_TYPE_VM_AGENT AGENT_TYPE_NODE_EXPORTER AGENT_TYPE_MYSQLD_EXPORTER AGENT_TYPE_MONGODB_EXPORTER AGENT_TYPE_POSTGRES_EXPORTER AGENT_TYPE_PROXYSQL_EXPORTER AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT AGENT_TYPE_RDS_EXPORTER AGENT_TYPE_EXTERNAL_EXPORTER AGENT_TYPE_AZURE_DATABASE_EXPORTER] + // Enum: [AGENT_TYPE_UNSPECIFIED AGENT_TYPE_PMM_AGENT AGENT_TYPE_VM_AGENT AGENT_TYPE_NODE_EXPORTER AGENT_TYPE_MYSQLD_EXPORTER AGENT_TYPE_MONGODB_EXPORTER AGENT_TYPE_POSTGRES_EXPORTER AGENT_TYPE_PROXYSQL_EXPORTER AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT AGENT_TYPE_EXTERNAL_EXPORTER AGENT_TYPE_RDS_EXPORTER AGENT_TYPE_AZURE_DATABASE_EXPORTER] AgentType *string `json:"agent_type,omitempty"` // AgentStatus represents actual Agent status. @@ -512,7 +512,7 @@ var statusOkBodyAgentsInfoItems0TypeAgentTypePropEnum []interface{} func init() { var res []string - if err := json.Unmarshal([]byte(`["AGENT_TYPE_UNSPECIFIED","AGENT_TYPE_PMM_AGENT","AGENT_TYPE_VM_AGENT","AGENT_TYPE_NODE_EXPORTER","AGENT_TYPE_MYSQLD_EXPORTER","AGENT_TYPE_MONGODB_EXPORTER","AGENT_TYPE_POSTGRES_EXPORTER","AGENT_TYPE_PROXYSQL_EXPORTER","AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT","AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT","AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT","AGENT_TYPE_RDS_EXPORTER","AGENT_TYPE_EXTERNAL_EXPORTER","AGENT_TYPE_AZURE_DATABASE_EXPORTER"]`), &res); err != nil { + if err := json.Unmarshal([]byte(`["AGENT_TYPE_UNSPECIFIED","AGENT_TYPE_PMM_AGENT","AGENT_TYPE_VM_AGENT","AGENT_TYPE_NODE_EXPORTER","AGENT_TYPE_MYSQLD_EXPORTER","AGENT_TYPE_MONGODB_EXPORTER","AGENT_TYPE_POSTGRES_EXPORTER","AGENT_TYPE_PROXYSQL_EXPORTER","AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT","AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT","AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT","AGENT_TYPE_EXTERNAL_EXPORTER","AGENT_TYPE_RDS_EXPORTER","AGENT_TYPE_AZURE_DATABASE_EXPORTER"]`), &res); err != nil { panic(err) } for _, v := range res { @@ -561,12 +561,12 @@ const ( // StatusOKBodyAgentsInfoItems0AgentTypeAGENTTYPEQANPOSTGRESQLPGSTATMONITORAGENT captures enum value "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT" StatusOKBodyAgentsInfoItems0AgentTypeAGENTTYPEQANPOSTGRESQLPGSTATMONITORAGENT string = "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT" - // StatusOKBodyAgentsInfoItems0AgentTypeAGENTTYPERDSEXPORTER captures enum value "AGENT_TYPE_RDS_EXPORTER" - StatusOKBodyAgentsInfoItems0AgentTypeAGENTTYPERDSEXPORTER string = "AGENT_TYPE_RDS_EXPORTER" - // StatusOKBodyAgentsInfoItems0AgentTypeAGENTTYPEEXTERNALEXPORTER captures enum value "AGENT_TYPE_EXTERNAL_EXPORTER" StatusOKBodyAgentsInfoItems0AgentTypeAGENTTYPEEXTERNALEXPORTER string = "AGENT_TYPE_EXTERNAL_EXPORTER" + // StatusOKBodyAgentsInfoItems0AgentTypeAGENTTYPERDSEXPORTER captures enum value "AGENT_TYPE_RDS_EXPORTER" + StatusOKBodyAgentsInfoItems0AgentTypeAGENTTYPERDSEXPORTER string = "AGENT_TYPE_RDS_EXPORTER" + // StatusOKBodyAgentsInfoItems0AgentTypeAGENTTYPEAZUREDATABASEEXPORTER captures enum value "AGENT_TYPE_AZURE_DATABASE_EXPORTER" StatusOKBodyAgentsInfoItems0AgentTypeAGENTTYPEAZUREDATABASEEXPORTER string = "AGENT_TYPE_AZURE_DATABASE_EXPORTER" ) diff --git a/api/agentlocal/v1/json/v1.json b/api/agentlocal/v1/json/v1.json index fe4a2f9acf..382d35766a 100644 --- a/api/agentlocal/v1/json/v1.json +++ b/api/agentlocal/v1/json/v1.json @@ -132,8 +132,8 @@ "AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT", "AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT", "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT", - "AGENT_TYPE_RDS_EXPORTER", "AGENT_TYPE_EXTERNAL_EXPORTER", + "AGENT_TYPE_RDS_EXPORTER", "AGENT_TYPE_AZURE_DATABASE_EXPORTER" ], "x-order": 1 @@ -325,8 +325,8 @@ "AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT", "AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT", "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT", - "AGENT_TYPE_RDS_EXPORTER", "AGENT_TYPE_EXTERNAL_EXPORTER", + "AGENT_TYPE_RDS_EXPORTER", "AGENT_TYPE_AZURE_DATABASE_EXPORTER" ], "x-order": 1 diff --git a/api/inventory/v1/agents.pb.go b/api/inventory/v1/agents.pb.go index 0362703f22..f391d7c7b3 100644 --- a/api/inventory/v1/agents.pb.go +++ b/api/inventory/v1/agents.pb.go @@ -30,19 +30,19 @@ type AgentType int32 const ( AgentType_AGENT_TYPE_UNSPECIFIED AgentType = 0 AgentType_AGENT_TYPE_PMM_AGENT AgentType = 1 - AgentType_AGENT_TYPE_VM_AGENT AgentType = 14 - AgentType_AGENT_TYPE_NODE_EXPORTER AgentType = 2 - AgentType_AGENT_TYPE_MYSQLD_EXPORTER AgentType = 3 - AgentType_AGENT_TYPE_MONGODB_EXPORTER AgentType = 4 - AgentType_AGENT_TYPE_POSTGRES_EXPORTER AgentType = 5 - AgentType_AGENT_TYPE_PROXYSQL_EXPORTER AgentType = 6 - AgentType_AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT AgentType = 7 - AgentType_AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT AgentType = 8 - AgentType_AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT AgentType = 9 - AgentType_AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT AgentType = 10 - AgentType_AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT AgentType = 13 - AgentType_AGENT_TYPE_RDS_EXPORTER AgentType = 11 - AgentType_AGENT_TYPE_EXTERNAL_EXPORTER AgentType = 12 + AgentType_AGENT_TYPE_VM_AGENT AgentType = 2 + AgentType_AGENT_TYPE_NODE_EXPORTER AgentType = 3 + AgentType_AGENT_TYPE_MYSQLD_EXPORTER AgentType = 4 + AgentType_AGENT_TYPE_MONGODB_EXPORTER AgentType = 5 + AgentType_AGENT_TYPE_POSTGRES_EXPORTER AgentType = 6 + AgentType_AGENT_TYPE_PROXYSQL_EXPORTER AgentType = 7 + AgentType_AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT AgentType = 8 + AgentType_AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT AgentType = 9 + AgentType_AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT AgentType = 10 + AgentType_AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT AgentType = 11 + AgentType_AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT AgentType = 12 + AgentType_AGENT_TYPE_EXTERNAL_EXPORTER AgentType = 13 + AgentType_AGENT_TYPE_RDS_EXPORTER AgentType = 14 AgentType_AGENT_TYPE_AZURE_DATABASE_EXPORTER AgentType = 15 ) @@ -51,37 +51,37 @@ var ( AgentType_name = map[int32]string{ 0: "AGENT_TYPE_UNSPECIFIED", 1: "AGENT_TYPE_PMM_AGENT", - 14: "AGENT_TYPE_VM_AGENT", - 2: "AGENT_TYPE_NODE_EXPORTER", - 3: "AGENT_TYPE_MYSQLD_EXPORTER", - 4: "AGENT_TYPE_MONGODB_EXPORTER", - 5: "AGENT_TYPE_POSTGRES_EXPORTER", - 6: "AGENT_TYPE_PROXYSQL_EXPORTER", - 7: "AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT", - 8: "AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT", - 9: "AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT", - 10: "AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT", - 13: "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT", - 11: "AGENT_TYPE_RDS_EXPORTER", - 12: "AGENT_TYPE_EXTERNAL_EXPORTER", + 2: "AGENT_TYPE_VM_AGENT", + 3: "AGENT_TYPE_NODE_EXPORTER", + 4: "AGENT_TYPE_MYSQLD_EXPORTER", + 5: "AGENT_TYPE_MONGODB_EXPORTER", + 6: "AGENT_TYPE_POSTGRES_EXPORTER", + 7: "AGENT_TYPE_PROXYSQL_EXPORTER", + 8: "AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT", + 9: "AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT", + 10: "AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT", + 11: "AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT", + 12: "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT", + 13: "AGENT_TYPE_EXTERNAL_EXPORTER", + 14: "AGENT_TYPE_RDS_EXPORTER", 15: "AGENT_TYPE_AZURE_DATABASE_EXPORTER", } AgentType_value = map[string]int32{ "AGENT_TYPE_UNSPECIFIED": 0, "AGENT_TYPE_PMM_AGENT": 1, - "AGENT_TYPE_VM_AGENT": 14, - "AGENT_TYPE_NODE_EXPORTER": 2, - "AGENT_TYPE_MYSQLD_EXPORTER": 3, - "AGENT_TYPE_MONGODB_EXPORTER": 4, - "AGENT_TYPE_POSTGRES_EXPORTER": 5, - "AGENT_TYPE_PROXYSQL_EXPORTER": 6, - "AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT": 7, - "AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT": 8, - "AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT": 9, - "AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT": 10, - "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT": 13, - "AGENT_TYPE_RDS_EXPORTER": 11, - "AGENT_TYPE_EXTERNAL_EXPORTER": 12, + "AGENT_TYPE_VM_AGENT": 2, + "AGENT_TYPE_NODE_EXPORTER": 3, + "AGENT_TYPE_MYSQLD_EXPORTER": 4, + "AGENT_TYPE_MONGODB_EXPORTER": 5, + "AGENT_TYPE_POSTGRES_EXPORTER": 6, + "AGENT_TYPE_PROXYSQL_EXPORTER": 7, + "AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT": 8, + "AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT": 9, + "AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT": 10, + "AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT": 11, + "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT": 12, + "AGENT_TYPE_EXTERNAL_EXPORTER": 13, + "AGENT_TYPE_RDS_EXPORTER": 14, "AGENT_TYPE_AZURE_DATABASE_EXPORTER": 15, } ) @@ -211,11 +211,11 @@ type VMAgent struct { // The pmm-agent identifier which runs this instance. PmmAgentId string `protobuf:"bytes,2,opt,name=pmm_agent_id,json=pmmAgentId,proto3" json:"pmm_agent_id,omitempty"` // Actual Agent status. - Status AgentStatus `protobuf:"varint,5,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,3,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Path to exec process. - ProcessExecPath string `protobuf:"bytes,6,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` + ProcessExecPath string `protobuf:"bytes,4,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` // Listen port for scraping metrics. - ListenPort uint32 `protobuf:"varint,7,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` + ListenPort uint32 `protobuf:"varint,5,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` } func (x *VMAgent) Reset() { @@ -300,13 +300,13 @@ type NodeExporter struct { // Custom user-assigned labels. CustomLabels map[string]string `protobuf:"bytes,4,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"` // True if exporter uses push metrics mode. - PushMetricsEnabled bool `protobuf:"varint,7,opt,name=push_metrics_enabled,json=pushMetricsEnabled,proto3" json:"push_metrics_enabled,omitempty"` + PushMetricsEnabled bool `protobuf:"varint,5,opt,name=push_metrics_enabled,json=pushMetricsEnabled,proto3" json:"push_metrics_enabled,omitempty"` // List of disabled collector names. - DisabledCollectors []string `protobuf:"bytes,8,rep,name=disabled_collectors,json=disabledCollectors,proto3" json:"disabled_collectors,omitempty"` + DisabledCollectors []string `protobuf:"bytes,6,rep,name=disabled_collectors,json=disabledCollectors,proto3" json:"disabled_collectors,omitempty"` // Actual Agent status. - Status AgentStatus `protobuf:"varint,5,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,7,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Listen port for scraping metrics. - ListenPort uint32 `protobuf:"varint,6,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` + ListenPort uint32 `protobuf:"varint,8,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` // Path to exec process. ProcessExecPath string `protobuf:"bytes,9,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` // Log level for exporter. @@ -445,27 +445,27 @@ type MySQLdExporter struct { // Skip TLS certificate and hostname validation. TlsSkipVerify bool `protobuf:"varint,7,opt,name=tls_skip_verify,json=tlsSkipVerify,proto3" json:"tls_skip_verify,omitempty"` // Certificate Authority certificate chain. - TlsCa string `protobuf:"bytes,15,opt,name=tls_ca,json=tlsCa,proto3" json:"tls_ca,omitempty"` + TlsCa string `protobuf:"bytes,8,opt,name=tls_ca,json=tlsCa,proto3" json:"tls_ca,omitempty"` // Client certificate. - TlsCert string `protobuf:"bytes,16,opt,name=tls_cert,json=tlsCert,proto3" json:"tls_cert,omitempty"` + TlsCert string `protobuf:"bytes,9,opt,name=tls_cert,json=tlsCert,proto3" json:"tls_cert,omitempty"` // Password for decrypting tls_cert. - TlsKey string `protobuf:"bytes,17,opt,name=tls_key,json=tlsKey,proto3" json:"tls_key,omitempty"` + TlsKey string `protobuf:"bytes,10,opt,name=tls_key,json=tlsKey,proto3" 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 `protobuf:"varint,11,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,8,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,12,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"` // True if exporter uses push metrics mode. 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 Agent status. - Status AgentStatus `protobuf:"varint,9,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,15,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Listen port for scraping metrics. - ListenPort uint32 `protobuf:"varint,10,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` + ListenPort uint32 `protobuf:"varint,16,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` // True if tablestats group collectors are currently disabled. - TablestatsGroupDisabled bool `protobuf:"varint,12,opt,name=tablestats_group_disabled,json=tablestatsGroupDisabled,proto3" json:"tablestats_group_disabled,omitempty"` + TablestatsGroupDisabled bool `protobuf:"varint,17,opt,name=tablestats_group_disabled,json=tablestatsGroupDisabled,proto3" json:"tablestats_group_disabled,omitempty"` // Path to exec process. ProcessExecPath string `protobuf:"bytes,18,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` // Log level for exporter. @@ -669,13 +669,13 @@ type MongoDBExporter struct { // Custom user-assigned labels. CustomLabels map[string]string `protobuf:"bytes,8,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"` // True if exporter uses push metrics mode. - PushMetricsEnabled bool `protobuf:"varint,11,opt,name=push_metrics_enabled,json=pushMetricsEnabled,proto3" json:"push_metrics_enabled,omitempty"` + PushMetricsEnabled bool `protobuf:"varint,9,opt,name=push_metrics_enabled,json=pushMetricsEnabled,proto3" json:"push_metrics_enabled,omitempty"` // List of disabled collector names. - DisabledCollectors []string `protobuf:"bytes,12,rep,name=disabled_collectors,json=disabledCollectors,proto3" json:"disabled_collectors,omitempty"` + DisabledCollectors []string `protobuf:"bytes,10,rep,name=disabled_collectors,json=disabledCollectors,proto3" json:"disabled_collectors,omitempty"` // Actual Agent status. - Status AgentStatus `protobuf:"varint,9,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,11,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Listen port for scraping metrics. - ListenPort uint32 `protobuf:"varint,10,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` + ListenPort uint32 `protobuf:"varint,12,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` // List of colletions to get stats from. Can use * StatsCollections []string `protobuf:"bytes,13,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 @@ -872,13 +872,13 @@ type PostgresExporter struct { // Custom user-assigned labels. CustomLabels map[string]string `protobuf:"bytes,8,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"` // True if exporter uses push metrics mode. - PushMetricsEnabled bool `protobuf:"varint,11,opt,name=push_metrics_enabled,json=pushMetricsEnabled,proto3" json:"push_metrics_enabled,omitempty"` + PushMetricsEnabled bool `protobuf:"varint,9,opt,name=push_metrics_enabled,json=pushMetricsEnabled,proto3" json:"push_metrics_enabled,omitempty"` // List of disabled collector names. - DisabledCollectors []string `protobuf:"bytes,12,rep,name=disabled_collectors,json=disabledCollectors,proto3" json:"disabled_collectors,omitempty"` + DisabledCollectors []string `protobuf:"bytes,10,rep,name=disabled_collectors,json=disabledCollectors,proto3" json:"disabled_collectors,omitempty"` // Actual Agent status. - Status AgentStatus `protobuf:"varint,9,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,11,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Listen port for scraping metrics. - ListenPort uint32 `protobuf:"varint,10,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` + ListenPort uint32 `protobuf:"varint,12,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` // Path to exec process. ProcessExecPath string `protobuf:"bytes,13,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` // Log level for exporter. @@ -1056,13 +1056,13 @@ type ProxySQLExporter struct { // Custom user-assigned labels. CustomLabels map[string]string `protobuf:"bytes,8,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"` // True if exporter uses push metrics mode. - PushMetricsEnabled bool `protobuf:"varint,11,opt,name=push_metrics_enabled,json=pushMetricsEnabled,proto3" json:"push_metrics_enabled,omitempty"` + PushMetricsEnabled bool `protobuf:"varint,9,opt,name=push_metrics_enabled,json=pushMetricsEnabled,proto3" json:"push_metrics_enabled,omitempty"` // List of disabled collector names. - DisabledCollectors []string `protobuf:"bytes,12,rep,name=disabled_collectors,json=disabledCollectors,proto3" json:"disabled_collectors,omitempty"` + DisabledCollectors []string `protobuf:"bytes,10,rep,name=disabled_collectors,json=disabledCollectors,proto3" json:"disabled_collectors,omitempty"` // Actual Agent status. - Status AgentStatus `protobuf:"varint,9,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,11,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Listen port for scraping metrics. - ListenPort uint32 `protobuf:"varint,10,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` + ListenPort uint32 `protobuf:"varint,12,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` // Path to exec process. ProcessExecPath string `protobuf:"bytes,13,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` // Log level for exporter. @@ -1229,25 +1229,25 @@ type QANMySQLPerfSchemaAgent struct { // Skip TLS certificate and hostname validation. TlsSkipVerify bool `protobuf:"varint,7,opt,name=tls_skip_verify,json=tlsSkipVerify,proto3" json:"tls_skip_verify,omitempty"` // Certificate Authority certificate chain. - TlsCa string `protobuf:"bytes,11,opt,name=tls_ca,json=tlsCa,proto3" json:"tls_ca,omitempty"` + TlsCa string `protobuf:"bytes,8,opt,name=tls_ca,json=tlsCa,proto3" json:"tls_ca,omitempty"` // Client certificate. - TlsCert string `protobuf:"bytes,12,opt,name=tls_cert,json=tlsCert,proto3" json:"tls_cert,omitempty"` + TlsCert string `protobuf:"bytes,9,opt,name=tls_cert,json=tlsCert,proto3" json:"tls_cert,omitempty"` // Password for decrypting tls_cert. - TlsKey string `protobuf:"bytes,13,opt,name=tls_key,json=tlsKey,proto3" json:"tls_key,omitempty"` + TlsKey string `protobuf:"bytes,10,opt,name=tls_key,json=tlsKey,proto3" json:"tls_key,omitempty"` // Disable parsing comments from queries and showing them in QAN. - DisableCommentsParsing bool `protobuf:"varint,18,opt,name=disable_comments_parsing,json=disableCommentsParsing,proto3" json:"disable_comments_parsing,omitempty"` + DisableCommentsParsing bool `protobuf:"varint,11,opt,name=disable_comments_parsing,json=disableCommentsParsing,proto3" json:"disable_comments_parsing,omitempty"` // Limit query length in QAN (default: server-defined; -1: no limit). - MaxQueryLength int32 `protobuf:"varint,16,opt,name=max_query_length,json=maxQueryLength,proto3" json:"max_query_length,omitempty"` + MaxQueryLength int32 `protobuf:"varint,12,opt,name=max_query_length,json=maxQueryLength,proto3" json:"max_query_length,omitempty"` // True if query examples are disabled. - QueryExamplesDisabled bool `protobuf:"varint,8,opt,name=query_examples_disabled,json=queryExamplesDisabled,proto3" json:"query_examples_disabled,omitempty"` + QueryExamplesDisabled bool `protobuf:"varint,13,opt,name=query_examples_disabled,json=queryExamplesDisabled,proto3" json:"query_examples_disabled,omitempty"` // Custom user-assigned labels. - CustomLabels map[string]string `protobuf:"bytes,9,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,14,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"` // Actual Agent status. - Status AgentStatus `protobuf:"varint,10,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,15,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Path to exec process. - ProcessExecPath string `protobuf:"bytes,14,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` + ProcessExecPath string `protobuf:"bytes,16,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,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"` + LogLevel LogLevel `protobuf:"varint,17,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` } func (x *QANMySQLPerfSchemaAgent) Reset() { @@ -1422,27 +1422,27 @@ type QANMySQLSlowlogAgent struct { // Skip TLS certificate and hostname validation. TlsSkipVerify bool `protobuf:"varint,7,opt,name=tls_skip_verify,json=tlsSkipVerify,proto3" json:"tls_skip_verify,omitempty"` // Certificate Authority certificate chain. - TlsCa string `protobuf:"bytes,12,opt,name=tls_ca,json=tlsCa,proto3" json:"tls_ca,omitempty"` + TlsCa string `protobuf:"bytes,8,opt,name=tls_ca,json=tlsCa,proto3" json:"tls_ca,omitempty"` // Client certificate. - TlsCert string `protobuf:"bytes,13,opt,name=tls_cert,json=tlsCert,proto3" json:"tls_cert,omitempty"` + TlsCert string `protobuf:"bytes,9,opt,name=tls_cert,json=tlsCert,proto3" json:"tls_cert,omitempty"` // Password for decrypting tls_cert. - TlsKey string `protobuf:"bytes,14,opt,name=tls_key,json=tlsKey,proto3" json:"tls_key,omitempty"` + TlsKey string `protobuf:"bytes,10,opt,name=tls_key,json=tlsKey,proto3" json:"tls_key,omitempty"` // Disable parsing comments from queries and showing them in QAN. - DisableCommentsParsing bool `protobuf:"varint,18,opt,name=disable_comments_parsing,json=disableCommentsParsing,proto3" json:"disable_comments_parsing,omitempty"` + DisableCommentsParsing bool `protobuf:"varint,11,opt,name=disable_comments_parsing,json=disableCommentsParsing,proto3" json:"disable_comments_parsing,omitempty"` // Limit query length in QAN (default: server-defined; -1: no limit) - MaxQueryLength int32 `protobuf:"varint,17,opt,name=max_query_length,json=maxQueryLength,proto3" json:"max_query_length,omitempty"` + MaxQueryLength int32 `protobuf:"varint,12,opt,name=max_query_length,json=maxQueryLength,proto3" json:"max_query_length,omitempty"` // True if query examples are disabled. - QueryExamplesDisabled bool `protobuf:"varint,8,opt,name=query_examples_disabled,json=queryExamplesDisabled,proto3" json:"query_examples_disabled,omitempty"` + QueryExamplesDisabled bool `protobuf:"varint,13,opt,name=query_examples_disabled,json=queryExamplesDisabled,proto3" json:"query_examples_disabled,omitempty"` // Slowlog file is rotated at this size if > 0. - MaxSlowlogFileSize int64 `protobuf:"varint,9,opt,name=max_slowlog_file_size,json=maxSlowlogFileSize,proto3" json:"max_slowlog_file_size,omitempty"` + MaxSlowlogFileSize int64 `protobuf:"varint,14,opt,name=max_slowlog_file_size,json=maxSlowlogFileSize,proto3" json:"max_slowlog_file_size,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,15,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"` // Actual Agent status. - Status AgentStatus `protobuf:"varint,11,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,16,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // mod tidy - ProcessExecPath string `protobuf:"bytes,15,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` + ProcessExecPath string `protobuf:"bytes,17,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,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"` + LogLevel LogLevel `protobuf:"varint,18,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` } func (x *QANMySQLSlowlogAgent) Reset() { @@ -1624,15 +1624,15 @@ type QANMongoDBProfilerAgent struct { // Skip TLS certificate and hostname validation. TlsSkipVerify bool `protobuf:"varint,7,opt,name=tls_skip_verify,json=tlsSkipVerify,proto3" json:"tls_skip_verify,omitempty"` // Limit query length in QAN (default: server-defined; -1: no limit). - MaxQueryLength int32 `protobuf:"varint,13,opt,name=max_query_length,json=maxQueryLength,proto3" json:"max_query_length,omitempty"` + MaxQueryLength int32 `protobuf:"varint,8,opt,name=max_query_length,json=maxQueryLength,proto3" json:"max_query_length,omitempty"` // Custom user-assigned labels. - CustomLabels map[string]string `protobuf:"bytes,9,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"` // Actual Agent status. - Status AgentStatus `protobuf:"varint,10,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,11,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Path to exec process. - ProcessExecPath string `protobuf:"bytes,11,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` + ProcessExecPath string `protobuf:"bytes,12,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,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,13,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` } func (x *QANMongoDBProfilerAgent) Reset() { @@ -1768,21 +1768,21 @@ type QANPostgreSQLPgStatementsAgent struct { // PostgreSQL username for getting pg stat statements data. Username string `protobuf:"bytes,5,opt,name=username,proto3" json:"username,omitempty"` // Disable parsing comments from queries and showing them in QAN. - DisableCommentsParsing bool `protobuf:"varint,13,opt,name=disable_comments_parsing,json=disableCommentsParsing,proto3" json:"disable_comments_parsing,omitempty"` + DisableCommentsParsing bool `protobuf:"varint,6,opt,name=disable_comments_parsing,json=disableCommentsParsing,proto3" json:"disable_comments_parsing,omitempty"` // Limit query length in QAN (default: server-defined; -1: no limit). - MaxQueryLength int32 `protobuf:"varint,12,opt,name=max_query_length,json=maxQueryLength,proto3" json:"max_query_length,omitempty"` + MaxQueryLength int32 `protobuf:"varint,7,opt,name=max_query_length,json=maxQueryLength,proto3" json:"max_query_length,omitempty"` // Use TLS for database connections. - Tls bool `protobuf:"varint,6,opt,name=tls,proto3" json:"tls,omitempty"` + Tls bool `protobuf:"varint,8,opt,name=tls,proto3" json:"tls,omitempty"` // Skip TLS certificate and hostname validation. - TlsSkipVerify bool `protobuf:"varint,7,opt,name=tls_skip_verify,json=tlsSkipVerify,proto3" json:"tls_skip_verify,omitempty"` + TlsSkipVerify bool `protobuf:"varint,9,opt,name=tls_skip_verify,json=tlsSkipVerify,proto3" json:"tls_skip_verify,omitempty"` // Custom user-assigned labels. - CustomLabels map[string]string `protobuf:"bytes,8,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"` // Actual Agent status. - Status AgentStatus `protobuf:"varint,9,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,11,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Path to exec process. - ProcessExecPath string `protobuf:"bytes,10,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` + ProcessExecPath string `protobuf:"bytes,12,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` // Log level for exporter. - LogLevel LogLevel `protobuf:"varint,11,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` + LogLevel LogLevel `protobuf:"varint,13,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` } func (x *QANPostgreSQLPgStatementsAgent) Reset() { @@ -1929,19 +1929,19 @@ type QANPostgreSQLPgStatMonitorAgent struct { // Skip TLS certificate and hostname validation. TlsSkipVerify bool `protobuf:"varint,7,opt,name=tls_skip_verify,json=tlsSkipVerify,proto3" json:"tls_skip_verify,omitempty"` // Disable parsing comments from queries and showing them in QAN. - DisableCommentsParsing bool `protobuf:"varint,14,opt,name=disable_comments_parsing,json=disableCommentsParsing,proto3" json:"disable_comments_parsing,omitempty"` + DisableCommentsParsing bool `protobuf:"varint,8,opt,name=disable_comments_parsing,json=disableCommentsParsing,proto3" json:"disable_comments_parsing,omitempty"` // Limit query length in QAN (default: server-defined; -1: no limit). - MaxQueryLength int32 `protobuf:"varint,13,opt,name=max_query_length,json=maxQueryLength,proto3" json:"max_query_length,omitempty"` + MaxQueryLength int32 `protobuf:"varint,9,opt,name=max_query_length,json=maxQueryLength,proto3" json:"max_query_length,omitempty"` // True if query examples are disabled. - QueryExamplesDisabled bool `protobuf:"varint,8,opt,name=query_examples_disabled,json=queryExamplesDisabled,proto3" json:"query_examples_disabled,omitempty"` + QueryExamplesDisabled bool `protobuf:"varint,10,opt,name=query_examples_disabled,json=queryExamplesDisabled,proto3" json:"query_examples_disabled,omitempty"` // Custom user-assigned labels. - CustomLabels map[string]string `protobuf:"bytes,9,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"` // Actual Agent status. - Status AgentStatus `protobuf:"varint,10,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,12,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Path to exec process. - ProcessExecPath string `protobuf:"bytes,11,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` + ProcessExecPath string `protobuf:"bytes,13,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,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,14,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` } func (x *QANPostgreSQLPgStatMonitorAgent) Reset() { @@ -2261,9 +2261,9 @@ type ExternalExporter struct { // Path under which metrics are exposed, used to generate URI. MetricsPath string `protobuf:"bytes,7,opt,name=metrics_path,json=metricsPath,proto3" json:"metrics_path,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,9,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"` // Listen port for scraping metrics. - ListenPort uint32 `protobuf:"varint,8,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` + ListenPort uint32 `protobuf:"varint,10,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` // True if exporter uses push metrics mode. PushMetricsEnabled bool `protobuf:"varint,11,opt,name=push_metrics_enabled,json=pushMetricsEnabled,proto3" json:"push_metrics_enabled,omitempty"` // Path to exec process. @@ -2706,19 +2706,19 @@ type ListAgentsResponse struct { unknownFields protoimpl.UnknownFields PmmAgent []*PMMAgent `protobuf:"bytes,1,rep,name=pmm_agent,json=pmmAgent,proto3" json:"pmm_agent,omitempty"` - VmAgent []*VMAgent `protobuf:"bytes,14,rep,name=vm_agent,json=vmAgent,proto3" json:"vm_agent,omitempty"` - NodeExporter []*NodeExporter `protobuf:"bytes,2,rep,name=node_exporter,json=nodeExporter,proto3" json:"node_exporter,omitempty"` - MysqldExporter []*MySQLdExporter `protobuf:"bytes,3,rep,name=mysqld_exporter,json=mysqldExporter,proto3" json:"mysqld_exporter,omitempty"` - MongodbExporter []*MongoDBExporter `protobuf:"bytes,4,rep,name=mongodb_exporter,json=mongodbExporter,proto3" json:"mongodb_exporter,omitempty"` - PostgresExporter []*PostgresExporter `protobuf:"bytes,5,rep,name=postgres_exporter,json=postgresExporter,proto3" json:"postgres_exporter,omitempty"` - ProxysqlExporter []*ProxySQLExporter `protobuf:"bytes,6,rep,name=proxysql_exporter,json=proxysqlExporter,proto3" json:"proxysql_exporter,omitempty"` - QanMysqlPerfschemaAgent []*QANMySQLPerfSchemaAgent `protobuf:"bytes,7,rep,name=qan_mysql_perfschema_agent,json=qanMysqlPerfschemaAgent,proto3" json:"qan_mysql_perfschema_agent,omitempty"` - QanMysqlSlowlogAgent []*QANMySQLSlowlogAgent `protobuf:"bytes,8,rep,name=qan_mysql_slowlog_agent,json=qanMysqlSlowlogAgent,proto3" json:"qan_mysql_slowlog_agent,omitempty"` - QanMongodbProfilerAgent []*QANMongoDBProfilerAgent `protobuf:"bytes,9,rep,name=qan_mongodb_profiler_agent,json=qanMongodbProfilerAgent,proto3" json:"qan_mongodb_profiler_agent,omitempty"` - QanPostgresqlPgstatementsAgent []*QANPostgreSQLPgStatementsAgent `protobuf:"bytes,10,rep,name=qan_postgresql_pgstatements_agent,json=qanPostgresqlPgstatementsAgent,proto3" json:"qan_postgresql_pgstatements_agent,omitempty"` - QanPostgresqlPgstatmonitorAgent []*QANPostgreSQLPgStatMonitorAgent `protobuf:"bytes,13,rep,name=qan_postgresql_pgstatmonitor_agent,json=qanPostgresqlPgstatmonitorAgent,proto3" json:"qan_postgresql_pgstatmonitor_agent,omitempty"` - RdsExporter []*RDSExporter `protobuf:"bytes,11,rep,name=rds_exporter,json=rdsExporter,proto3" json:"rds_exporter,omitempty"` - ExternalExporter []*ExternalExporter `protobuf:"bytes,12,rep,name=external_exporter,json=externalExporter,proto3" json:"external_exporter,omitempty"` + VmAgent []*VMAgent `protobuf:"bytes,2,rep,name=vm_agent,json=vmAgent,proto3" json:"vm_agent,omitempty"` + NodeExporter []*NodeExporter `protobuf:"bytes,3,rep,name=node_exporter,json=nodeExporter,proto3" json:"node_exporter,omitempty"` + MysqldExporter []*MySQLdExporter `protobuf:"bytes,4,rep,name=mysqld_exporter,json=mysqldExporter,proto3" json:"mysqld_exporter,omitempty"` + MongodbExporter []*MongoDBExporter `protobuf:"bytes,5,rep,name=mongodb_exporter,json=mongodbExporter,proto3" json:"mongodb_exporter,omitempty"` + PostgresExporter []*PostgresExporter `protobuf:"bytes,6,rep,name=postgres_exporter,json=postgresExporter,proto3" json:"postgres_exporter,omitempty"` + ProxysqlExporter []*ProxySQLExporter `protobuf:"bytes,7,rep,name=proxysql_exporter,json=proxysqlExporter,proto3" json:"proxysql_exporter,omitempty"` + QanMysqlPerfschemaAgent []*QANMySQLPerfSchemaAgent `protobuf:"bytes,8,rep,name=qan_mysql_perfschema_agent,json=qanMysqlPerfschemaAgent,proto3" json:"qan_mysql_perfschema_agent,omitempty"` + QanMysqlSlowlogAgent []*QANMySQLSlowlogAgent `protobuf:"bytes,9,rep,name=qan_mysql_slowlog_agent,json=qanMysqlSlowlogAgent,proto3" json:"qan_mysql_slowlog_agent,omitempty"` + QanMongodbProfilerAgent []*QANMongoDBProfilerAgent `protobuf:"bytes,10,rep,name=qan_mongodb_profiler_agent,json=qanMongodbProfilerAgent,proto3" json:"qan_mongodb_profiler_agent,omitempty"` + QanPostgresqlPgstatementsAgent []*QANPostgreSQLPgStatementsAgent `protobuf:"bytes,11,rep,name=qan_postgresql_pgstatements_agent,json=qanPostgresqlPgstatementsAgent,proto3" json:"qan_postgresql_pgstatements_agent,omitempty"` + QanPostgresqlPgstatmonitorAgent []*QANPostgreSQLPgStatMonitorAgent `protobuf:"bytes,12,rep,name=qan_postgresql_pgstatmonitor_agent,json=qanPostgresqlPgstatmonitorAgent,proto3" json:"qan_postgresql_pgstatmonitor_agent,omitempty"` + RdsExporter []*RDSExporter `protobuf:"bytes,13,rep,name=rds_exporter,json=rdsExporter,proto3" json:"rds_exporter,omitempty"` + ExternalExporter []*ExternalExporter `protobuf:"bytes,14,rep,name=external_exporter,json=externalExporter,proto3" json:"external_exporter,omitempty"` AzureDatabaseExporter []*AzureDatabaseExporter `protobuf:"bytes,15,rep,name=azure_database_exporter,json=azureDatabaseExporter,proto3" json:"azure_database_exporter,omitempty"` } @@ -2926,8 +2926,8 @@ type GetAgentResponse struct { // *GetAgentResponse_QanMongodbProfilerAgent // *GetAgentResponse_QanPostgresqlPgstatementsAgent // *GetAgentResponse_QanPostgresqlPgstatmonitorAgent - // *GetAgentResponse_RdsExporter // *GetAgentResponse_ExternalExporter + // *GetAgentResponse_RdsExporter // *GetAgentResponse_AzureDatabaseExporter Agent isGetAgentResponse_Agent `protobuf_oneof:"agent"` } @@ -3055,16 +3055,16 @@ func (x *GetAgentResponse) GetQanPostgresqlPgstatmonitorAgent() *QANPostgreSQLPg return nil } -func (x *GetAgentResponse) GetRdsExporter() *RDSExporter { - if x, ok := x.GetAgent().(*GetAgentResponse_RdsExporter); ok { - return x.RdsExporter +func (x *GetAgentResponse) GetExternalExporter() *ExternalExporter { + if x, ok := x.GetAgent().(*GetAgentResponse_ExternalExporter); ok { + return x.ExternalExporter } return nil } -func (x *GetAgentResponse) GetExternalExporter() *ExternalExporter { - if x, ok := x.GetAgent().(*GetAgentResponse_ExternalExporter); ok { - return x.ExternalExporter +func (x *GetAgentResponse) GetRdsExporter() *RDSExporter { + if x, ok := x.GetAgent().(*GetAgentResponse_RdsExporter); ok { + return x.RdsExporter } return nil } @@ -3085,55 +3085,55 @@ type GetAgentResponse_PmmAgent struct { } type GetAgentResponse_Vmagent struct { - Vmagent *VMAgent `protobuf:"bytes,14,opt,name=vmagent,proto3,oneof"` + Vmagent *VMAgent `protobuf:"bytes,2,opt,name=vmagent,proto3,oneof"` } type GetAgentResponse_NodeExporter struct { - NodeExporter *NodeExporter `protobuf:"bytes,2,opt,name=node_exporter,json=nodeExporter,proto3,oneof"` + NodeExporter *NodeExporter `protobuf:"bytes,3,opt,name=node_exporter,json=nodeExporter,proto3,oneof"` } type GetAgentResponse_MysqldExporter struct { - MysqldExporter *MySQLdExporter `protobuf:"bytes,3,opt,name=mysqld_exporter,json=mysqldExporter,proto3,oneof"` + MysqldExporter *MySQLdExporter `protobuf:"bytes,4,opt,name=mysqld_exporter,json=mysqldExporter,proto3,oneof"` } type GetAgentResponse_MongodbExporter struct { - MongodbExporter *MongoDBExporter `protobuf:"bytes,4,opt,name=mongodb_exporter,json=mongodbExporter,proto3,oneof"` + MongodbExporter *MongoDBExporter `protobuf:"bytes,5,opt,name=mongodb_exporter,json=mongodbExporter,proto3,oneof"` } type GetAgentResponse_PostgresExporter struct { - PostgresExporter *PostgresExporter `protobuf:"bytes,5,opt,name=postgres_exporter,json=postgresExporter,proto3,oneof"` + PostgresExporter *PostgresExporter `protobuf:"bytes,6,opt,name=postgres_exporter,json=postgresExporter,proto3,oneof"` } type GetAgentResponse_ProxysqlExporter struct { - ProxysqlExporter *ProxySQLExporter `protobuf:"bytes,6,opt,name=proxysql_exporter,json=proxysqlExporter,proto3,oneof"` + ProxysqlExporter *ProxySQLExporter `protobuf:"bytes,7,opt,name=proxysql_exporter,json=proxysqlExporter,proto3,oneof"` } type GetAgentResponse_QanMysqlPerfschemaAgent struct { - QanMysqlPerfschemaAgent *QANMySQLPerfSchemaAgent `protobuf:"bytes,7,opt,name=qan_mysql_perfschema_agent,json=qanMysqlPerfschemaAgent,proto3,oneof"` + QanMysqlPerfschemaAgent *QANMySQLPerfSchemaAgent `protobuf:"bytes,8,opt,name=qan_mysql_perfschema_agent,json=qanMysqlPerfschemaAgent,proto3,oneof"` } type GetAgentResponse_QanMysqlSlowlogAgent struct { - QanMysqlSlowlogAgent *QANMySQLSlowlogAgent `protobuf:"bytes,8,opt,name=qan_mysql_slowlog_agent,json=qanMysqlSlowlogAgent,proto3,oneof"` + QanMysqlSlowlogAgent *QANMySQLSlowlogAgent `protobuf:"bytes,9,opt,name=qan_mysql_slowlog_agent,json=qanMysqlSlowlogAgent,proto3,oneof"` } type GetAgentResponse_QanMongodbProfilerAgent struct { - QanMongodbProfilerAgent *QANMongoDBProfilerAgent `protobuf:"bytes,9,opt,name=qan_mongodb_profiler_agent,json=qanMongodbProfilerAgent,proto3,oneof"` + QanMongodbProfilerAgent *QANMongoDBProfilerAgent `protobuf:"bytes,10,opt,name=qan_mongodb_profiler_agent,json=qanMongodbProfilerAgent,proto3,oneof"` } type GetAgentResponse_QanPostgresqlPgstatementsAgent struct { - QanPostgresqlPgstatementsAgent *QANPostgreSQLPgStatementsAgent `protobuf:"bytes,10,opt,name=qan_postgresql_pgstatements_agent,json=qanPostgresqlPgstatementsAgent,proto3,oneof"` + QanPostgresqlPgstatementsAgent *QANPostgreSQLPgStatementsAgent `protobuf:"bytes,11,opt,name=qan_postgresql_pgstatements_agent,json=qanPostgresqlPgstatementsAgent,proto3,oneof"` } type GetAgentResponse_QanPostgresqlPgstatmonitorAgent struct { - QanPostgresqlPgstatmonitorAgent *QANPostgreSQLPgStatMonitorAgent `protobuf:"bytes,13,opt,name=qan_postgresql_pgstatmonitor_agent,json=qanPostgresqlPgstatmonitorAgent,proto3,oneof"` + QanPostgresqlPgstatmonitorAgent *QANPostgreSQLPgStatMonitorAgent `protobuf:"bytes,12,opt,name=qan_postgresql_pgstatmonitor_agent,json=qanPostgresqlPgstatmonitorAgent,proto3,oneof"` } -type GetAgentResponse_RdsExporter struct { - RdsExporter *RDSExporter `protobuf:"bytes,11,opt,name=rds_exporter,json=rdsExporter,proto3,oneof"` +type GetAgentResponse_ExternalExporter struct { + ExternalExporter *ExternalExporter `protobuf:"bytes,13,opt,name=external_exporter,json=externalExporter,proto3,oneof"` } -type GetAgentResponse_ExternalExporter struct { - ExternalExporter *ExternalExporter `protobuf:"bytes,12,opt,name=external_exporter,json=externalExporter,proto3,oneof"` +type GetAgentResponse_RdsExporter struct { + RdsExporter *RDSExporter `protobuf:"bytes,14,opt,name=rds_exporter,json=rdsExporter,proto3,oneof"` } type GetAgentResponse_AzureDatabaseExporter struct { @@ -3164,10 +3164,10 @@ func (*GetAgentResponse_QanPostgresqlPgstatementsAgent) isGetAgentResponse_Agent func (*GetAgentResponse_QanPostgresqlPgstatmonitorAgent) isGetAgentResponse_Agent() {} -func (*GetAgentResponse_RdsExporter) isGetAgentResponse_Agent() {} - func (*GetAgentResponse_ExternalExporter) isGetAgentResponse_Agent() {} +func (*GetAgentResponse_RdsExporter) isGetAgentResponse_Agent() {} + func (*GetAgentResponse_AzureDatabaseExporter) isGetAgentResponse_Agent() {} type GetAgentLogsRequest struct { @@ -3386,27 +3386,26 @@ func (x *AddPMMAgentResponse) GetPmmAgent() *PMMAgent { return nil } -type AddNodeExporterRequest struct { +type AddExporterRequest 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 *AddNodeExporterRequest) Reset() { - *x = AddNodeExporterRequest{} + // Types that are assignable to Exporter: + // + // *AddExporterRequest_NodeExporter + // *AddExporterRequest_MysqldExporter + // *AddExporterRequest_MongodbExporter + // *AddExporterRequest_PostgresExporter + // *AddExporterRequest_ProxysqlExporter + // *AddExporterRequest_ExternalExporter + // *AddExporterRequest_RdsExporter + // *AddExporterRequest_AzureDatabaseExporter + Exporter isAddExporterRequest_Exporter `protobuf_oneof:"exporter"` +} + +func (x *AddExporterRequest) Reset() { + *x = AddExporterRequest{} if protoimpl.UnsafeEnabled { mi := &file_inventory_v1_agents_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3414,13 +3413,13 @@ func (x *AddNodeExporterRequest) Reset() { } } -func (x *AddNodeExporterRequest) String() string { +func (x *AddExporterRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddNodeExporterRequest) ProtoMessage() {} +func (*AddExporterRequest) ProtoMessage() {} -func (x *AddNodeExporterRequest) ProtoReflect() protoreflect.Message { +func (x *AddExporterRequest) ProtoReflect() protoreflect.Message { mi := &file_inventory_v1_agents_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3432,126 +3431,163 @@ func (x *AddNodeExporterRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AddNodeExporterRequest.ProtoReflect.Descriptor instead. -func (*AddNodeExporterRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use AddExporterRequest.ProtoReflect.Descriptor instead. +func (*AddExporterRequest) Descriptor() ([]byte, []int) { return file_inventory_v1_agents_proto_rawDescGZIP(), []int{24} } -func (x *AddNodeExporterRequest) GetPmmAgentId() string { - if x != nil { - return x.PmmAgentId +func (m *AddExporterRequest) GetExporter() isAddExporterRequest_Exporter { + if m != nil { + return m.Exporter } - return "" + return nil } -func (x *AddNodeExporterRequest) GetCustomLabels() map[string]string { - if x != nil { - return x.CustomLabels +func (x *AddExporterRequest) GetNodeExporter() *AddNodeExporterParams { + if x, ok := x.GetExporter().(*AddExporterRequest_NodeExporter); ok { + return x.NodeExporter } return nil } -func (x *AddNodeExporterRequest) GetPushMetrics() bool { - if x != nil { - return x.PushMetrics +func (x *AddExporterRequest) GetMysqldExporter() *AddMySQLdExporterParams { + if x, ok := x.GetExporter().(*AddExporterRequest_MysqldExporter); ok { + return x.MysqldExporter } - return false + return nil } -func (x *AddNodeExporterRequest) GetDisableCollectors() []string { - if x != nil { - return x.DisableCollectors +func (x *AddExporterRequest) GetMongodbExporter() *AddMongoDBExporterParams { + if x, ok := x.GetExporter().(*AddExporterRequest_MongodbExporter); ok { + return x.MongodbExporter } return nil } -func (x *AddNodeExporterRequest) GetLogLevel() LogLevel { - if x != nil { - return x.LogLevel +func (x *AddExporterRequest) GetPostgresExporter() *AddPostgresExporterParams { + if x, ok := x.GetExporter().(*AddExporterRequest_PostgresExporter); ok { + return x.PostgresExporter } - return LogLevel_LOG_LEVEL_UNSPECIFIED + return nil } -func (x *AddNodeExporterRequest) GetExposeExporter() bool { - if x != nil { - return x.ExposeExporter +func (x *AddExporterRequest) GetProxysqlExporter() *AddProxySQLExporterParams { + if x, ok := x.GetExporter().(*AddExporterRequest_ProxysqlExporter); ok { + return x.ProxysqlExporter } - return false + return nil } -type AddNodeExporterResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields +func (x *AddExporterRequest) GetExternalExporter() *AddExternalExporterParams { + if x, ok := x.GetExporter().(*AddExporterRequest_ExternalExporter); ok { + return x.ExternalExporter + } + return nil +} - NodeExporter *NodeExporter `protobuf:"bytes,1,opt,name=node_exporter,json=nodeExporter,proto3" json:"node_exporter,omitempty"` +func (x *AddExporterRequest) GetRdsExporter() *AddRDSExporterParams { + if x, ok := x.GetExporter().(*AddExporterRequest_RdsExporter); ok { + return x.RdsExporter + } + return nil } -func (x *AddNodeExporterResponse) Reset() { - *x = AddNodeExporterResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[25] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) +func (x *AddExporterRequest) GetAzureDatabaseExporter() *AddAzureDatabaseExporterParams { + if x, ok := x.GetExporter().(*AddExporterRequest_AzureDatabaseExporter); ok { + return x.AzureDatabaseExporter } + return nil } -func (x *AddNodeExporterResponse) String() string { - return protoimpl.X.MessageStringOf(x) +type isAddExporterRequest_Exporter interface { + isAddExporterRequest_Exporter() } -func (*AddNodeExporterResponse) ProtoMessage() {} +type AddExporterRequest_NodeExporter struct { + NodeExporter *AddNodeExporterParams `protobuf:"bytes,1,opt,name=node_exporter,json=nodeExporter,proto3,oneof"` +} -func (x *AddNodeExporterResponse) 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 { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) +type AddExporterRequest_MysqldExporter struct { + MysqldExporter *AddMySQLdExporterParams `protobuf:"bytes,2,opt,name=mysqld_exporter,json=mysqldExporter,proto3,oneof"` } -// Deprecated: Use AddNodeExporterResponse.ProtoReflect.Descriptor instead. -func (*AddNodeExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{25} +type AddExporterRequest_MongodbExporter struct { + MongodbExporter *AddMongoDBExporterParams `protobuf:"bytes,3,opt,name=mongodb_exporter,json=mongodbExporter,proto3,oneof"` } -func (x *AddNodeExporterResponse) GetNodeExporter() *NodeExporter { - if x != nil { - return x.NodeExporter - } - return nil +type AddExporterRequest_PostgresExporter struct { + PostgresExporter *AddPostgresExporterParams `protobuf:"bytes,4,opt,name=postgres_exporter,json=postgresExporter,proto3,oneof"` } -type ChangeNodeExporterRequest struct { +type AddExporterRequest_ProxysqlExporter struct { + ProxysqlExporter *AddProxySQLExporterParams `protobuf:"bytes,5,opt,name=proxysql_exporter,json=proxysqlExporter,proto3,oneof"` +} + +type AddExporterRequest_ExternalExporter struct { + ExternalExporter *AddExternalExporterParams `protobuf:"bytes,6,opt,name=external_exporter,json=externalExporter,proto3,oneof"` +} + +type AddExporterRequest_RdsExporter struct { + RdsExporter *AddRDSExporterParams `protobuf:"bytes,7,opt,name=rds_exporter,json=rdsExporter,proto3,oneof"` +} + +type AddExporterRequest_AzureDatabaseExporter struct { + AzureDatabaseExporter *AddAzureDatabaseExporterParams `protobuf:"bytes,8,opt,name=azure_database_exporter,json=azureDatabaseExporter,proto3,oneof"` +} + +func (*AddExporterRequest_NodeExporter) isAddExporterRequest_Exporter() {} + +func (*AddExporterRequest_MysqldExporter) isAddExporterRequest_Exporter() {} + +func (*AddExporterRequest_MongodbExporter) isAddExporterRequest_Exporter() {} + +func (*AddExporterRequest_PostgresExporter) isAddExporterRequest_Exporter() {} + +func (*AddExporterRequest_ProxysqlExporter) isAddExporterRequest_Exporter() {} + +func (*AddExporterRequest_ExternalExporter) isAddExporterRequest_Exporter() {} + +func (*AddExporterRequest_RdsExporter) isAddExporterRequest_Exporter() {} + +func (*AddExporterRequest_AzureDatabaseExporter) isAddExporterRequest_Exporter() {} + +type AddExporterResponse 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 *ChangeNodeExporterRequest) Reset() { - *x = ChangeNodeExporterRequest{} + // Types that are assignable to Exporter: + // + // *AddExporterResponse_NodeExporter + // *AddExporterResponse_MysqldExporter + // *AddExporterResponse_MongodbExporter + // *AddExporterResponse_PostgresExporter + // *AddExporterResponse_ProxysqlExporter + // *AddExporterResponse_ExternalExporter + // *AddExporterResponse_RdsExporter + // *AddExporterResponse_AzureDatabaseExporter + Exporter isAddExporterResponse_Exporter `protobuf_oneof:"exporter"` + // Actual table count for SQL databases at the moment of adding. + TableCount int32 `protobuf:"varint,9,opt,name=table_count,json=tableCount,proto3" json:"table_count,omitempty"` +} + +func (x *AddExporterResponse) Reset() { + *x = AddExporterResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[26] + mi := &file_inventory_v1_agents_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ChangeNodeExporterRequest) String() string { +func (x *AddExporterResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ChangeNodeExporterRequest) ProtoMessage() {} +func (*AddExporterResponse) ProtoMessage() {} -func (x *ChangeNodeExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[26] +func (x *AddExporterResponse) 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 { @@ -3562,81 +3598,337 @@ func (x *ChangeNodeExporterRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ChangeNodeExporterRequest.ProtoReflect.Descriptor instead. -func (*ChangeNodeExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{26} +// Deprecated: Use AddExporterResponse.ProtoReflect.Descriptor instead. +func (*AddExporterResponse) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{25} } -func (x *ChangeNodeExporterRequest) GetAgentId() string { - if x != nil { - return x.AgentId +func (m *AddExporterResponse) GetExporter() isAddExporterResponse_Exporter { + if m != nil { + return m.Exporter } - return "" + return nil } -func (x *ChangeNodeExporterRequest) GetCommon() *ChangeCommonAgentParams { - if x != nil { - return x.Common +func (x *AddExporterResponse) GetNodeExporter() *NodeExporter { + if x, ok := x.GetExporter().(*AddExporterResponse_NodeExporter); ok { + return x.NodeExporter } return nil } -type ChangeNodeExporterResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields +func (x *AddExporterResponse) GetMysqldExporter() *MySQLdExporter { + if x, ok := x.GetExporter().(*AddExporterResponse_MysqldExporter); ok { + return x.MysqldExporter + } + return nil +} - NodeExporter *NodeExporter `protobuf:"bytes,1,opt,name=node_exporter,json=nodeExporter,proto3" json:"node_exporter,omitempty"` +func (x *AddExporterResponse) GetMongodbExporter() *MongoDBExporter { + if x, ok := x.GetExporter().(*AddExporterResponse_MongodbExporter); ok { + return x.MongodbExporter + } + return nil } -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) +func (x *AddExporterResponse) GetPostgresExporter() *PostgresExporter { + if x, ok := x.GetExporter().(*AddExporterResponse_PostgresExporter); ok { + return x.PostgresExporter } + return nil } -func (x *ChangeNodeExporterResponse) String() string { - return protoimpl.X.MessageStringOf(x) +func (x *AddExporterResponse) GetProxysqlExporter() *ProxySQLExporter { + if x, ok := x.GetExporter().(*AddExporterResponse_ProxysqlExporter); ok { + return x.ProxysqlExporter + } + return nil } -func (*ChangeNodeExporterResponse) ProtoMessage() {} +func (x *AddExporterResponse) GetExternalExporter() *ExternalExporter { + if x, ok := x.GetExporter().(*AddExporterResponse_ExternalExporter); ok { + return x.ExternalExporter + } + return nil +} -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 +func (x *AddExporterResponse) GetRdsExporter() *RDSExporter { + if x, ok := x.GetExporter().(*AddExporterResponse_RdsExporter); ok { + return x.RdsExporter } - return mi.MessageOf(x) + return nil } -// Deprecated: Use ChangeNodeExporterResponse.ProtoReflect.Descriptor instead. -func (*ChangeNodeExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{27} +func (x *AddExporterResponse) GetAzureDatabaseExporter() *AzureDatabaseExporter { + if x, ok := x.GetExporter().(*AddExporterResponse_AzureDatabaseExporter); ok { + return x.AzureDatabaseExporter + } + return nil } -func (x *ChangeNodeExporterResponse) GetNodeExporter() *NodeExporter { +func (x *AddExporterResponse) GetTableCount() int32 { if x != nil { - return x.NodeExporter + return x.TableCount } - return nil + return 0 } -type AddMySQLdExporterRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields +type isAddExporterResponse_Exporter interface { + isAddExporterResponse_Exporter() +} - // 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"` +type AddExporterResponse_NodeExporter struct { + NodeExporter *NodeExporter `protobuf:"bytes,1,opt,name=node_exporter,json=nodeExporter,proto3,oneof"` +} + +type AddExporterResponse_MysqldExporter struct { + MysqldExporter *MySQLdExporter `protobuf:"bytes,2,opt,name=mysqld_exporter,json=mysqldExporter,proto3,oneof"` +} + +type AddExporterResponse_MongodbExporter struct { + MongodbExporter *MongoDBExporter `protobuf:"bytes,3,opt,name=mongodb_exporter,json=mongodbExporter,proto3,oneof"` +} + +type AddExporterResponse_PostgresExporter struct { + PostgresExporter *PostgresExporter `protobuf:"bytes,4,opt,name=postgres_exporter,json=postgresExporter,proto3,oneof"` +} + +type AddExporterResponse_ProxysqlExporter struct { + ProxysqlExporter *ProxySQLExporter `protobuf:"bytes,5,opt,name=proxysql_exporter,json=proxysqlExporter,proto3,oneof"` +} + +type AddExporterResponse_ExternalExporter struct { + ExternalExporter *ExternalExporter `protobuf:"bytes,6,opt,name=external_exporter,json=externalExporter,proto3,oneof"` +} + +type AddExporterResponse_RdsExporter struct { + RdsExporter *RDSExporter `protobuf:"bytes,7,opt,name=rds_exporter,json=rdsExporter,proto3,oneof"` +} + +type AddExporterResponse_AzureDatabaseExporter struct { + AzureDatabaseExporter *AzureDatabaseExporter `protobuf:"bytes,8,opt,name=azure_database_exporter,json=azureDatabaseExporter,proto3,oneof"` +} + +func (*AddExporterResponse_NodeExporter) isAddExporterResponse_Exporter() {} + +func (*AddExporterResponse_MysqldExporter) isAddExporterResponse_Exporter() {} + +func (*AddExporterResponse_MongodbExporter) isAddExporterResponse_Exporter() {} + +func (*AddExporterResponse_PostgresExporter) isAddExporterResponse_Exporter() {} + +func (*AddExporterResponse_ProxysqlExporter) isAddExporterResponse_Exporter() {} + +func (*AddExporterResponse_ExternalExporter) isAddExporterResponse_Exporter() {} + +func (*AddExporterResponse_RdsExporter) isAddExporterResponse_Exporter() {} + +func (*AddExporterResponse_AzureDatabaseExporter) isAddExporterResponse_Exporter() {} + +type AddNodeExporterParams 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{} + if protoimpl.UnsafeEnabled { + mi := &file_inventory_v1_agents_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AddNodeExporterParams) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AddNodeExporterParams) ProtoMessage() {} + +func (x *AddNodeExporterParams) 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 + } + return mi.MessageOf(x) +} + +// Deprecated: Use AddNodeExporterParams.ProtoReflect.Descriptor instead. +func (*AddNodeExporterParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{26} +} + +func (x *AddNodeExporterParams) GetPmmAgentId() string { + if x != nil { + return x.PmmAgentId + } + return "" +} + +func (x *AddNodeExporterParams) GetCustomLabels() map[string]string { + if x != nil { + return x.CustomLabels + } + return nil +} + +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 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 *ChangeNodeExporterRequest) Reset() { + *x = ChangeNodeExporterRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_inventory_v1_agents_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ChangeNodeExporterRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ChangeNodeExporterRequest) ProtoMessage() {} + +func (x *ChangeNodeExporterRequest) 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) +} + +// Deprecated: Use ChangeNodeExporterRequest.ProtoReflect.Descriptor instead. +func (*ChangeNodeExporterRequest) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{27} +} + +func (x *ChangeNodeExporterRequest) GetAgentId() string { + if x != nil { + return x.AgentId + } + return "" +} + +func (x *ChangeNodeExporterRequest) GetCommon() *ChangeCommonAgentParams { + if x != nil { + return x.Common + } + return nil +} + +type ChangeNodeExporterResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + NodeExporter *NodeExporter `protobuf:"bytes,1,opt,name=node_exporter,json=nodeExporter,proto3" json:"node_exporter,omitempty"` +} + +func (x *ChangeNodeExporterResponse) Reset() { + *x = ChangeNodeExporterResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_inventory_v1_agents_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ChangeNodeExporterResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ChangeNodeExporterResponse) ProtoMessage() {} + +func (x *ChangeNodeExporterResponse) 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 ChangeNodeExporterResponse.ProtoReflect.Descriptor instead. +func (*ChangeNodeExporterResponse) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{28} +} + +func (x *ChangeNodeExporterResponse) GetNodeExporter() *NodeExporter { + if x != nil { + return x.NodeExporter + } + return nil +} + +type AddMySQLdExporterParams 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"` + // 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. @@ -3671,23 +3963,23 @@ type AddMySQLdExporterRequest struct { ExposeExporter bool `protobuf:"varint,17,opt,name=expose_exporter,json=exposeExporter,proto3" json:"expose_exporter,omitempty"` } -func (x *AddMySQLdExporterRequest) Reset() { - *x = AddMySQLdExporterRequest{} +func (x *AddMySQLdExporterParams) Reset() { + *x = AddMySQLdExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[28] + mi := &file_inventory_v1_agents_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AddMySQLdExporterRequest) String() string { +func (x *AddMySQLdExporterParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddMySQLdExporterRequest) ProtoMessage() {} +func (*AddMySQLdExporterParams) ProtoMessage() {} -func (x *AddMySQLdExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[28] +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 { @@ -3698,157 +3990,156 @@ func (x *AddMySQLdExporterRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AddMySQLdExporterRequest.ProtoReflect.Descriptor instead. -func (*AddMySQLdExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{28} +// Deprecated: Use AddMySQLdExporterParams.ProtoReflect.Descriptor instead. +func (*AddMySQLdExporterParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{29} } -func (x *AddMySQLdExporterRequest) GetPmmAgentId() string { +func (x *AddMySQLdExporterParams) GetPmmAgentId() string { if x != nil { return x.PmmAgentId } return "" } -func (x *AddMySQLdExporterRequest) GetServiceId() string { +func (x *AddMySQLdExporterParams) GetServiceId() string { if x != nil { return x.ServiceId } return "" } -func (x *AddMySQLdExporterRequest) GetUsername() string { +func (x *AddMySQLdExporterParams) GetUsername() string { if x != nil { return x.Username } return "" } -func (x *AddMySQLdExporterRequest) GetPassword() string { +func (x *AddMySQLdExporterParams) GetPassword() string { if x != nil { return x.Password } return "" } -func (x *AddMySQLdExporterRequest) GetTls() bool { +func (x *AddMySQLdExporterParams) GetTls() bool { if x != nil { return x.Tls } return false } -func (x *AddMySQLdExporterRequest) GetTlsSkipVerify() bool { +func (x *AddMySQLdExporterParams) GetTlsSkipVerify() bool { if x != nil { return x.TlsSkipVerify } return false } -func (x *AddMySQLdExporterRequest) GetTlsCa() string { +func (x *AddMySQLdExporterParams) GetTlsCa() string { if x != nil { return x.TlsCa } return "" } -func (x *AddMySQLdExporterRequest) GetTlsCert() string { +func (x *AddMySQLdExporterParams) GetTlsCert() string { if x != nil { return x.TlsCert } return "" } -func (x *AddMySQLdExporterRequest) GetTlsKey() string { +func (x *AddMySQLdExporterParams) GetTlsKey() string { if x != nil { return x.TlsKey } return "" } -func (x *AddMySQLdExporterRequest) GetTablestatsGroupTableLimit() int32 { +func (x *AddMySQLdExporterParams) GetTablestatsGroupTableLimit() int32 { if x != nil { return x.TablestatsGroupTableLimit } return 0 } -func (x *AddMySQLdExporterRequest) GetCustomLabels() map[string]string { +func (x *AddMySQLdExporterParams) GetCustomLabels() map[string]string { if x != nil { return x.CustomLabels } return nil } -func (x *AddMySQLdExporterRequest) GetSkipConnectionCheck() bool { +func (x *AddMySQLdExporterParams) GetSkipConnectionCheck() bool { if x != nil { return x.SkipConnectionCheck } return false } -func (x *AddMySQLdExporterRequest) GetPushMetrics() bool { +func (x *AddMySQLdExporterParams) GetPushMetrics() bool { if x != nil { return x.PushMetrics } return false } -func (x *AddMySQLdExporterRequest) GetDisableCollectors() []string { +func (x *AddMySQLdExporterParams) GetDisableCollectors() []string { if x != nil { return x.DisableCollectors } return nil } -func (x *AddMySQLdExporterRequest) GetAgentPassword() string { +func (x *AddMySQLdExporterParams) GetAgentPassword() string { if x != nil { return x.AgentPassword } return "" } -func (x *AddMySQLdExporterRequest) GetLogLevel() LogLevel { +func (x *AddMySQLdExporterParams) GetLogLevel() LogLevel { if x != nil { return x.LogLevel } return LogLevel_LOG_LEVEL_UNSPECIFIED } -func (x *AddMySQLdExporterRequest) GetExposeExporter() bool { +func (x *AddMySQLdExporterParams) GetExposeExporter() bool { if x != nil { return x.ExposeExporter } return false } -type AddMySQLdExporterResponse struct { +type ChangeMySQLdExporterRequest 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"` - // Actual table count at the moment of adding. - TableCount int32 `protobuf:"varint,2,opt,name=table_count,json=tableCount,proto3" json:"table_count,omitempty"` + 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 *AddMySQLdExporterResponse) Reset() { - *x = AddMySQLdExporterResponse{} +func (x *ChangeMySQLdExporterRequest) Reset() { + *x = ChangeMySQLdExporterRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[29] + mi := &file_inventory_v1_agents_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AddMySQLdExporterResponse) String() string { +func (x *ChangeMySQLdExporterRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddMySQLdExporterResponse) ProtoMessage() {} +func (*ChangeMySQLdExporterRequest) ProtoMessage() {} -func (x *AddMySQLdExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[29] +func (x *ChangeMySQLdExporterRequest) 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 { @@ -3859,90 +4150,35 @@ func (x *AddMySQLdExporterResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AddMySQLdExporterResponse.ProtoReflect.Descriptor instead. -func (*AddMySQLdExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{29} +// Deprecated: Use ChangeMySQLdExporterRequest.ProtoReflect.Descriptor instead. +func (*ChangeMySQLdExporterRequest) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{30} } -func (x *AddMySQLdExporterResponse) GetMysqldExporter() *MySQLdExporter { +func (x *ChangeMySQLdExporterRequest) GetAgentId() string { if x != nil { - return x.MysqldExporter + return x.AgentId } - return nil + return "" } -func (x *AddMySQLdExporterResponse) GetTableCount() int32 { +func (x *ChangeMySQLdExporterRequest) GetCommon() *ChangeCommonAgentParams { if x != nil { - return x.TableCount + return x.Common } - return 0 + return nil } -type ChangeMySQLdExporterRequest struct { +type ChangeMySQLdExporterResponse 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"` + MysqldExporter *MySQLdExporter `protobuf:"bytes,1,opt,name=mysqld_exporter,json=mysqldExporter,proto3" json:"mysqld_exporter,omitempty"` } -func (x *ChangeMySQLdExporterRequest) Reset() { - *x = ChangeMySQLdExporterRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[30] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ChangeMySQLdExporterRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ChangeMySQLdExporterRequest) ProtoMessage() {} - -func (x *ChangeMySQLdExporterRequest) 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 { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ChangeMySQLdExporterRequest.ProtoReflect.Descriptor instead. -func (*ChangeMySQLdExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{30} -} - -func (x *ChangeMySQLdExporterRequest) GetAgentId() string { - if x != nil { - return x.AgentId - } - return "" -} - -func (x *ChangeMySQLdExporterRequest) GetCommon() *ChangeCommonAgentParams { - if x != nil { - return x.Common - } - return nil -} - -type ChangeMySQLdExporterResponse 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"` -} - -func (x *ChangeMySQLdExporterResponse) Reset() { - *x = ChangeMySQLdExporterResponse{} +func (x *ChangeMySQLdExporterResponse) Reset() { + *x = ChangeMySQLdExporterResponse{} if protoimpl.UnsafeEnabled { mi := &file_inventory_v1_agents_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3980,7 +4216,7 @@ func (x *ChangeMySQLdExporterResponse) GetMysqldExporter() *MySQLdExporter { return nil } -type AddMongoDBExporterRequest struct { +type AddMongoDBExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -4030,8 +4266,8 @@ type AddMongoDBExporterRequest struct { ExposeExporter bool `protobuf:"varint,20,opt,name=expose_exporter,json=exposeExporter,proto3" json:"expose_exporter,omitempty"` } -func (x *AddMongoDBExporterRequest) Reset() { - *x = AddMongoDBExporterRequest{} +func (x *AddMongoDBExporterParams) Reset() { + *x = AddMongoDBExporterParams{} if protoimpl.UnsafeEnabled { mi := &file_inventory_v1_agents_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4039,13 +4275,13 @@ func (x *AddMongoDBExporterRequest) Reset() { } } -func (x *AddMongoDBExporterRequest) String() string { +func (x *AddMongoDBExporterParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddMongoDBExporterRequest) ProtoMessage() {} +func (*AddMongoDBExporterParams) ProtoMessage() {} -func (x *AddMongoDBExporterRequest) ProtoReflect() protoreflect.Message { +func (x *AddMongoDBExporterParams) ProtoReflect() protoreflect.Message { mi := &file_inventory_v1_agents_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -4057,198 +4293,151 @@ func (x *AddMongoDBExporterRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AddMongoDBExporterRequest.ProtoReflect.Descriptor instead. -func (*AddMongoDBExporterRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use AddMongoDBExporterParams.ProtoReflect.Descriptor instead. +func (*AddMongoDBExporterParams) Descriptor() ([]byte, []int) { return file_inventory_v1_agents_proto_rawDescGZIP(), []int{32} } -func (x *AddMongoDBExporterRequest) GetPmmAgentId() string { +func (x *AddMongoDBExporterParams) GetPmmAgentId() string { if x != nil { return x.PmmAgentId } return "" } -func (x *AddMongoDBExporterRequest) GetServiceId() string { +func (x *AddMongoDBExporterParams) GetServiceId() string { if x != nil { return x.ServiceId } return "" } -func (x *AddMongoDBExporterRequest) GetUsername() string { +func (x *AddMongoDBExporterParams) GetUsername() string { if x != nil { return x.Username } return "" } -func (x *AddMongoDBExporterRequest) GetPassword() string { +func (x *AddMongoDBExporterParams) GetPassword() string { if x != nil { return x.Password } return "" } -func (x *AddMongoDBExporterRequest) GetTls() bool { +func (x *AddMongoDBExporterParams) GetTls() bool { if x != nil { return x.Tls } return false } -func (x *AddMongoDBExporterRequest) GetTlsSkipVerify() bool { +func (x *AddMongoDBExporterParams) GetTlsSkipVerify() bool { if x != nil { return x.TlsSkipVerify } return false } -func (x *AddMongoDBExporterRequest) GetTlsCertificateKey() string { +func (x *AddMongoDBExporterParams) GetTlsCertificateKey() string { if x != nil { return x.TlsCertificateKey } return "" } -func (x *AddMongoDBExporterRequest) GetTlsCertificateKeyFilePassword() string { +func (x *AddMongoDBExporterParams) GetTlsCertificateKeyFilePassword() string { if x != nil { return x.TlsCertificateKeyFilePassword } return "" } -func (x *AddMongoDBExporterRequest) GetTlsCa() string { +func (x *AddMongoDBExporterParams) GetTlsCa() string { if x != nil { return x.TlsCa } return "" } -func (x *AddMongoDBExporterRequest) GetCustomLabels() map[string]string { +func (x *AddMongoDBExporterParams) GetCustomLabels() map[string]string { if x != nil { return x.CustomLabels } return nil } -func (x *AddMongoDBExporterRequest) GetSkipConnectionCheck() bool { +func (x *AddMongoDBExporterParams) GetSkipConnectionCheck() bool { if x != nil { return x.SkipConnectionCheck } return false } -func (x *AddMongoDBExporterRequest) GetPushMetrics() bool { +func (x *AddMongoDBExporterParams) GetPushMetrics() bool { if x != nil { return x.PushMetrics } return false } -func (x *AddMongoDBExporterRequest) GetDisableCollectors() []string { +func (x *AddMongoDBExporterParams) GetDisableCollectors() []string { if x != nil { return x.DisableCollectors } return nil } -func (x *AddMongoDBExporterRequest) GetAuthenticationMechanism() string { +func (x *AddMongoDBExporterParams) GetAuthenticationMechanism() string { if x != nil { return x.AuthenticationMechanism } return "" } -func (x *AddMongoDBExporterRequest) GetAuthenticationDatabase() string { +func (x *AddMongoDBExporterParams) GetAuthenticationDatabase() string { if x != nil { return x.AuthenticationDatabase } return "" } -func (x *AddMongoDBExporterRequest) GetAgentPassword() string { +func (x *AddMongoDBExporterParams) GetAgentPassword() string { if x != nil { return x.AgentPassword } return "" } -func (x *AddMongoDBExporterRequest) GetStatsCollections() []string { +func (x *AddMongoDBExporterParams) GetStatsCollections() []string { if x != nil { return x.StatsCollections } return nil } -func (x *AddMongoDBExporterRequest) GetCollectionsLimit() int32 { +func (x *AddMongoDBExporterParams) GetCollectionsLimit() int32 { if x != nil { return x.CollectionsLimit } return 0 } -func (x *AddMongoDBExporterRequest) GetLogLevel() LogLevel { +func (x *AddMongoDBExporterParams) GetLogLevel() LogLevel { if x != nil { return x.LogLevel } return LogLevel_LOG_LEVEL_UNSPECIFIED } -func (x *AddMongoDBExporterRequest) GetExposeExporter() bool { +func (x *AddMongoDBExporterParams) GetExposeExporter() bool { if x != nil { return x.ExposeExporter } return false } -type AddMongoDBExporterResponse 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 *AddMongoDBExporterResponse) Reset() { - *x = AddMongoDBExporterResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[33] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AddMongoDBExporterResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AddMongoDBExporterResponse) ProtoMessage() {} - -func (x *AddMongoDBExporterResponse) 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 AddMongoDBExporterResponse.ProtoReflect.Descriptor instead. -func (*AddMongoDBExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{33} -} - -func (x *AddMongoDBExporterResponse) GetMongodbExporter() *MongoDBExporter { - if x != nil { - return x.MongodbExporter - } - return nil -} - type ChangeMongoDBExporterRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -4261,7 +4450,7 @@ type ChangeMongoDBExporterRequest struct { func (x *ChangeMongoDBExporterRequest) Reset() { *x = ChangeMongoDBExporterRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[34] + mi := &file_inventory_v1_agents_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4274,7 +4463,7 @@ func (x *ChangeMongoDBExporterRequest) String() string { func (*ChangeMongoDBExporterRequest) ProtoMessage() {} func (x *ChangeMongoDBExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[34] + mi := &file_inventory_v1_agents_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4287,7 +4476,7 @@ func (x *ChangeMongoDBExporterRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeMongoDBExporterRequest.ProtoReflect.Descriptor instead. func (*ChangeMongoDBExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{34} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{33} } func (x *ChangeMongoDBExporterRequest) GetAgentId() string { @@ -4315,7 +4504,7 @@ type ChangeMongoDBExporterResponse struct { func (x *ChangeMongoDBExporterResponse) Reset() { *x = ChangeMongoDBExporterResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[35] + mi := &file_inventory_v1_agents_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4328,7 +4517,7 @@ func (x *ChangeMongoDBExporterResponse) String() string { func (*ChangeMongoDBExporterResponse) ProtoMessage() {} func (x *ChangeMongoDBExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[35] + mi := &file_inventory_v1_agents_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4341,7 +4530,7 @@ func (x *ChangeMongoDBExporterResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeMongoDBExporterResponse.ProtoReflect.Descriptor instead. func (*ChangeMongoDBExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{35} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{34} } func (x *ChangeMongoDBExporterResponse) GetMongodbExporter() *MongoDBExporter { @@ -4351,7 +4540,7 @@ func (x *ChangeMongoDBExporterResponse) GetMongodbExporter() *MongoDBExporter { return nil } -type AddPostgresExporterRequest struct { +type AddPostgresExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -4392,23 +4581,23 @@ type AddPostgresExporterRequest struct { ExposeExporter bool `protobuf:"varint,17,opt,name=expose_exporter,json=exposeExporter,proto3" json:"expose_exporter,omitempty"` } -func (x *AddPostgresExporterRequest) Reset() { - *x = AddPostgresExporterRequest{} +func (x *AddPostgresExporterParams) Reset() { + *x = AddPostgresExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[36] + mi := &file_inventory_v1_agents_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AddPostgresExporterRequest) String() string { +func (x *AddPostgresExporterParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddPostgresExporterRequest) ProtoMessage() {} +func (*AddPostgresExporterParams) ProtoMessage() {} -func (x *AddPostgresExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[36] +func (x *AddPostgresExporterParams) 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 { @@ -4419,177 +4608,130 @@ func (x *AddPostgresExporterRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AddPostgresExporterRequest.ProtoReflect.Descriptor instead. -func (*AddPostgresExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{36} +// Deprecated: Use AddPostgresExporterParams.ProtoReflect.Descriptor instead. +func (*AddPostgresExporterParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{35} } -func (x *AddPostgresExporterRequest) GetPmmAgentId() string { +func (x *AddPostgresExporterParams) GetPmmAgentId() string { if x != nil { return x.PmmAgentId } return "" } -func (x *AddPostgresExporterRequest) GetServiceId() string { +func (x *AddPostgresExporterParams) GetServiceId() string { if x != nil { return x.ServiceId } return "" } -func (x *AddPostgresExporterRequest) GetUsername() string { +func (x *AddPostgresExporterParams) GetUsername() string { if x != nil { return x.Username } return "" } -func (x *AddPostgresExporterRequest) GetPassword() string { +func (x *AddPostgresExporterParams) GetPassword() string { if x != nil { return x.Password } return "" } -func (x *AddPostgresExporterRequest) GetTls() bool { +func (x *AddPostgresExporterParams) GetTls() bool { if x != nil { return x.Tls } return false } -func (x *AddPostgresExporterRequest) GetTlsSkipVerify() bool { +func (x *AddPostgresExporterParams) GetTlsSkipVerify() bool { if x != nil { return x.TlsSkipVerify } return false } -func (x *AddPostgresExporterRequest) GetCustomLabels() map[string]string { +func (x *AddPostgresExporterParams) GetCustomLabels() map[string]string { if x != nil { return x.CustomLabels } return nil } -func (x *AddPostgresExporterRequest) GetSkipConnectionCheck() bool { +func (x *AddPostgresExporterParams) GetSkipConnectionCheck() bool { if x != nil { return x.SkipConnectionCheck } return false } -func (x *AddPostgresExporterRequest) GetPushMetrics() bool { +func (x *AddPostgresExporterParams) GetPushMetrics() bool { if x != nil { return x.PushMetrics } return false } -func (x *AddPostgresExporterRequest) GetDisableCollectors() []string { +func (x *AddPostgresExporterParams) GetDisableCollectors() []string { if x != nil { return x.DisableCollectors } return nil } -func (x *AddPostgresExporterRequest) GetTlsCa() string { +func (x *AddPostgresExporterParams) GetTlsCa() string { if x != nil { return x.TlsCa } return "" } -func (x *AddPostgresExporterRequest) GetTlsCert() string { +func (x *AddPostgresExporterParams) GetTlsCert() string { if x != nil { return x.TlsCert } return "" } -func (x *AddPostgresExporterRequest) GetTlsKey() string { +func (x *AddPostgresExporterParams) GetTlsKey() string { if x != nil { return x.TlsKey } return "" } -func (x *AddPostgresExporterRequest) GetAgentPassword() string { +func (x *AddPostgresExporterParams) GetAgentPassword() string { if x != nil { return x.AgentPassword } return "" } -func (x *AddPostgresExporterRequest) GetLogLevel() LogLevel { +func (x *AddPostgresExporterParams) GetLogLevel() LogLevel { if x != nil { return x.LogLevel } return LogLevel_LOG_LEVEL_UNSPECIFIED } -func (x *AddPostgresExporterRequest) GetAutoDiscoveryLimit() int32 { +func (x *AddPostgresExporterParams) GetAutoDiscoveryLimit() int32 { if x != nil { return x.AutoDiscoveryLimit } return 0 } -func (x *AddPostgresExporterRequest) GetExposeExporter() bool { +func (x *AddPostgresExporterParams) GetExposeExporter() bool { if x != nil { return x.ExposeExporter } return false } -type AddPostgresExporterResponse 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 *AddPostgresExporterResponse) Reset() { - *x = AddPostgresExporterResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[37] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AddPostgresExporterResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AddPostgresExporterResponse) ProtoMessage() {} - -func (x *AddPostgresExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[37] - 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 AddPostgresExporterResponse.ProtoReflect.Descriptor instead. -func (*AddPostgresExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{37} -} - -func (x *AddPostgresExporterResponse) GetPostgresExporter() *PostgresExporter { - if x != nil { - return x.PostgresExporter - } - return nil -} - type ChangePostgresExporterRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -4602,7 +4744,7 @@ type ChangePostgresExporterRequest struct { func (x *ChangePostgresExporterRequest) Reset() { *x = ChangePostgresExporterRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[38] + mi := &file_inventory_v1_agents_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4615,7 +4757,7 @@ func (x *ChangePostgresExporterRequest) String() string { func (*ChangePostgresExporterRequest) ProtoMessage() {} func (x *ChangePostgresExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[38] + mi := &file_inventory_v1_agents_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4628,7 +4770,7 @@ func (x *ChangePostgresExporterRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangePostgresExporterRequest.ProtoReflect.Descriptor instead. func (*ChangePostgresExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{38} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{36} } func (x *ChangePostgresExporterRequest) GetAgentId() string { @@ -4656,7 +4798,7 @@ type ChangePostgresExporterResponse struct { func (x *ChangePostgresExporterResponse) Reset() { *x = ChangePostgresExporterResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[39] + mi := &file_inventory_v1_agents_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4669,7 +4811,7 @@ func (x *ChangePostgresExporterResponse) String() string { func (*ChangePostgresExporterResponse) ProtoMessage() {} func (x *ChangePostgresExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[39] + mi := &file_inventory_v1_agents_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4682,7 +4824,7 @@ func (x *ChangePostgresExporterResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangePostgresExporterResponse.ProtoReflect.Descriptor instead. func (*ChangePostgresExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{39} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{37} } func (x *ChangePostgresExporterResponse) GetPostgresExporter() *PostgresExporter { @@ -4692,7 +4834,7 @@ func (x *ChangePostgresExporterResponse) GetPostgresExporter() *PostgresExporter return nil } -type AddProxySQLExporterRequest struct { +type AddProxySQLExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -4725,23 +4867,23 @@ type AddProxySQLExporterRequest struct { ExposeExporter bool `protobuf:"varint,13,opt,name=expose_exporter,json=exposeExporter,proto3" json:"expose_exporter,omitempty"` } -func (x *AddProxySQLExporterRequest) Reset() { - *x = AddProxySQLExporterRequest{} +func (x *AddProxySQLExporterParams) Reset() { + *x = AddProxySQLExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[40] + mi := &file_inventory_v1_agents_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AddProxySQLExporterRequest) String() string { +func (x *AddProxySQLExporterParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddProxySQLExporterRequest) ProtoMessage() {} +func (*AddProxySQLExporterParams) ProtoMessage() {} -func (x *AddProxySQLExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[40] +func (x *AddProxySQLExporterParams) 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 { @@ -4752,149 +4894,102 @@ func (x *AddProxySQLExporterRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AddProxySQLExporterRequest.ProtoReflect.Descriptor instead. -func (*AddProxySQLExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{40} +// Deprecated: Use AddProxySQLExporterParams.ProtoReflect.Descriptor instead. +func (*AddProxySQLExporterParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{38} } -func (x *AddProxySQLExporterRequest) GetPmmAgentId() string { +func (x *AddProxySQLExporterParams) GetPmmAgentId() string { if x != nil { return x.PmmAgentId } return "" } -func (x *AddProxySQLExporterRequest) GetServiceId() string { +func (x *AddProxySQLExporterParams) GetServiceId() string { if x != nil { return x.ServiceId } return "" } -func (x *AddProxySQLExporterRequest) GetUsername() string { +func (x *AddProxySQLExporterParams) GetUsername() string { if x != nil { return x.Username } return "" } -func (x *AddProxySQLExporterRequest) GetPassword() string { +func (x *AddProxySQLExporterParams) GetPassword() string { if x != nil { return x.Password } return "" } -func (x *AddProxySQLExporterRequest) GetTls() bool { +func (x *AddProxySQLExporterParams) GetTls() bool { if x != nil { return x.Tls } return false } -func (x *AddProxySQLExporterRequest) GetTlsSkipVerify() bool { +func (x *AddProxySQLExporterParams) GetTlsSkipVerify() bool { if x != nil { return x.TlsSkipVerify } return false } -func (x *AddProxySQLExporterRequest) GetCustomLabels() map[string]string { +func (x *AddProxySQLExporterParams) GetCustomLabels() map[string]string { if x != nil { return x.CustomLabels } return nil } -func (x *AddProxySQLExporterRequest) GetSkipConnectionCheck() bool { +func (x *AddProxySQLExporterParams) GetSkipConnectionCheck() bool { if x != nil { return x.SkipConnectionCheck } return false } -func (x *AddProxySQLExporterRequest) GetPushMetrics() bool { +func (x *AddProxySQLExporterParams) GetPushMetrics() bool { if x != nil { return x.PushMetrics } return false } -func (x *AddProxySQLExporterRequest) GetDisableCollectors() []string { +func (x *AddProxySQLExporterParams) GetDisableCollectors() []string { if x != nil { return x.DisableCollectors } return nil } -func (x *AddProxySQLExporterRequest) GetAgentPassword() string { +func (x *AddProxySQLExporterParams) GetAgentPassword() string { if x != nil { return x.AgentPassword } return "" } -func (x *AddProxySQLExporterRequest) GetLogLevel() LogLevel { +func (x *AddProxySQLExporterParams) GetLogLevel() LogLevel { if x != nil { return x.LogLevel } return LogLevel_LOG_LEVEL_UNSPECIFIED } -func (x *AddProxySQLExporterRequest) GetExposeExporter() bool { +func (x *AddProxySQLExporterParams) GetExposeExporter() bool { if x != nil { return x.ExposeExporter } return false } -type AddProxySQLExporterResponse 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"` -} - -func (x *AddProxySQLExporterResponse) Reset() { - *x = AddProxySQLExporterResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[41] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AddProxySQLExporterResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AddProxySQLExporterResponse) ProtoMessage() {} - -func (x *AddProxySQLExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[41] - 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 AddProxySQLExporterResponse.ProtoReflect.Descriptor instead. -func (*AddProxySQLExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{41} -} - -func (x *AddProxySQLExporterResponse) GetProxysqlExporter() *ProxySQLExporter { - if x != nil { - return x.ProxysqlExporter - } - return nil -} - type ChangeProxySQLExporterRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -4907,7 +5002,7 @@ type ChangeProxySQLExporterRequest struct { func (x *ChangeProxySQLExporterRequest) Reset() { *x = ChangeProxySQLExporterRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[42] + mi := &file_inventory_v1_agents_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4920,7 +5015,7 @@ func (x *ChangeProxySQLExporterRequest) String() string { func (*ChangeProxySQLExporterRequest) ProtoMessage() {} func (x *ChangeProxySQLExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[42] + mi := &file_inventory_v1_agents_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4933,7 +5028,7 @@ func (x *ChangeProxySQLExporterRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeProxySQLExporterRequest.ProtoReflect.Descriptor instead. func (*ChangeProxySQLExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{42} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{39} } func (x *ChangeProxySQLExporterRequest) GetAgentId() string { @@ -4961,7 +5056,7 @@ type ChangeProxySQLExporterResponse struct { func (x *ChangeProxySQLExporterResponse) Reset() { *x = ChangeProxySQLExporterResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[43] + mi := &file_inventory_v1_agents_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4974,7 +5069,7 @@ func (x *ChangeProxySQLExporterResponse) String() string { func (*ChangeProxySQLExporterResponse) ProtoMessage() {} func (x *ChangeProxySQLExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[43] + mi := &file_inventory_v1_agents_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4987,7 +5082,7 @@ func (x *ChangeProxySQLExporterResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeProxySQLExporterResponse.ProtoReflect.Descriptor instead. func (*ChangeProxySQLExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{43} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{40} } func (x *ChangeProxySQLExporterResponse) GetProxysqlExporter() *ProxySQLExporter { @@ -5037,7 +5132,7 @@ type AddQANMySQLPerfSchemaAgentRequest struct { func (x *AddQANMySQLPerfSchemaAgentRequest) Reset() { *x = AddQANMySQLPerfSchemaAgentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[44] + mi := &file_inventory_v1_agents_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5050,7 +5145,7 @@ func (x *AddQANMySQLPerfSchemaAgentRequest) String() string { func (*AddQANMySQLPerfSchemaAgentRequest) ProtoMessage() {} func (x *AddQANMySQLPerfSchemaAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[44] + mi := &file_inventory_v1_agents_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5063,7 +5158,7 @@ func (x *AddQANMySQLPerfSchemaAgentRequest) ProtoReflect() protoreflect.Message // Deprecated: Use AddQANMySQLPerfSchemaAgentRequest.ProtoReflect.Descriptor instead. func (*AddQANMySQLPerfSchemaAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{44} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{41} } func (x *AddQANMySQLPerfSchemaAgentRequest) GetPmmAgentId() string { @@ -5182,7 +5277,7 @@ type AddQANMySQLPerfSchemaAgentResponse struct { func (x *AddQANMySQLPerfSchemaAgentResponse) Reset() { *x = AddQANMySQLPerfSchemaAgentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[45] + mi := &file_inventory_v1_agents_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5195,7 +5290,7 @@ func (x *AddQANMySQLPerfSchemaAgentResponse) String() string { func (*AddQANMySQLPerfSchemaAgentResponse) ProtoMessage() {} func (x *AddQANMySQLPerfSchemaAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[45] + mi := &file_inventory_v1_agents_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5208,7 +5303,7 @@ func (x *AddQANMySQLPerfSchemaAgentResponse) ProtoReflect() protoreflect.Message // Deprecated: Use AddQANMySQLPerfSchemaAgentResponse.ProtoReflect.Descriptor instead. func (*AddQANMySQLPerfSchemaAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{45} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{42} } func (x *AddQANMySQLPerfSchemaAgentResponse) GetQanMysqlPerfschemaAgent() *QANMySQLPerfSchemaAgent { @@ -5230,7 +5325,7 @@ type ChangeQANMySQLPerfSchemaAgentRequest struct { func (x *ChangeQANMySQLPerfSchemaAgentRequest) Reset() { *x = ChangeQANMySQLPerfSchemaAgentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[46] + mi := &file_inventory_v1_agents_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5243,7 +5338,7 @@ func (x *ChangeQANMySQLPerfSchemaAgentRequest) String() string { func (*ChangeQANMySQLPerfSchemaAgentRequest) ProtoMessage() {} func (x *ChangeQANMySQLPerfSchemaAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[46] + mi := &file_inventory_v1_agents_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5256,7 +5351,7 @@ func (x *ChangeQANMySQLPerfSchemaAgentRequest) ProtoReflect() protoreflect.Messa // Deprecated: Use ChangeQANMySQLPerfSchemaAgentRequest.ProtoReflect.Descriptor instead. func (*ChangeQANMySQLPerfSchemaAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{46} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{43} } func (x *ChangeQANMySQLPerfSchemaAgentRequest) GetAgentId() string { @@ -5284,7 +5379,7 @@ type ChangeQANMySQLPerfSchemaAgentResponse struct { func (x *ChangeQANMySQLPerfSchemaAgentResponse) Reset() { *x = ChangeQANMySQLPerfSchemaAgentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[47] + mi := &file_inventory_v1_agents_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5297,7 +5392,7 @@ func (x *ChangeQANMySQLPerfSchemaAgentResponse) String() string { func (*ChangeQANMySQLPerfSchemaAgentResponse) ProtoMessage() {} func (x *ChangeQANMySQLPerfSchemaAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[47] + mi := &file_inventory_v1_agents_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5310,7 +5405,7 @@ func (x *ChangeQANMySQLPerfSchemaAgentResponse) ProtoReflect() protoreflect.Mess // Deprecated: Use ChangeQANMySQLPerfSchemaAgentResponse.ProtoReflect.Descriptor instead. func (*ChangeQANMySQLPerfSchemaAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{47} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{44} } func (x *ChangeQANMySQLPerfSchemaAgentResponse) GetQanMysqlPerfschemaAgent() *QANMySQLPerfSchemaAgent { @@ -5363,7 +5458,7 @@ type AddQANMySQLSlowlogAgentRequest struct { func (x *AddQANMySQLSlowlogAgentRequest) Reset() { *x = AddQANMySQLSlowlogAgentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[48] + mi := &file_inventory_v1_agents_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5376,7 +5471,7 @@ func (x *AddQANMySQLSlowlogAgentRequest) String() string { func (*AddQANMySQLSlowlogAgentRequest) ProtoMessage() {} func (x *AddQANMySQLSlowlogAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[48] + mi := &file_inventory_v1_agents_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5389,7 +5484,7 @@ func (x *AddQANMySQLSlowlogAgentRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use AddQANMySQLSlowlogAgentRequest.ProtoReflect.Descriptor instead. func (*AddQANMySQLSlowlogAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{48} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{45} } func (x *AddQANMySQLSlowlogAgentRequest) GetPmmAgentId() string { @@ -5515,7 +5610,7 @@ type AddQANMySQLSlowlogAgentResponse struct { func (x *AddQANMySQLSlowlogAgentResponse) Reset() { *x = AddQANMySQLSlowlogAgentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[49] + mi := &file_inventory_v1_agents_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5528,7 +5623,7 @@ func (x *AddQANMySQLSlowlogAgentResponse) String() string { func (*AddQANMySQLSlowlogAgentResponse) ProtoMessage() {} func (x *AddQANMySQLSlowlogAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[49] + mi := &file_inventory_v1_agents_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5541,7 +5636,7 @@ func (x *AddQANMySQLSlowlogAgentResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use AddQANMySQLSlowlogAgentResponse.ProtoReflect.Descriptor instead. func (*AddQANMySQLSlowlogAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{49} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{46} } func (x *AddQANMySQLSlowlogAgentResponse) GetQanMysqlSlowlogAgent() *QANMySQLSlowlogAgent { @@ -5563,7 +5658,7 @@ type ChangeQANMySQLSlowlogAgentRequest struct { func (x *ChangeQANMySQLSlowlogAgentRequest) Reset() { *x = ChangeQANMySQLSlowlogAgentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[50] + mi := &file_inventory_v1_agents_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5576,7 +5671,7 @@ func (x *ChangeQANMySQLSlowlogAgentRequest) String() string { func (*ChangeQANMySQLSlowlogAgentRequest) ProtoMessage() {} func (x *ChangeQANMySQLSlowlogAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[50] + mi := &file_inventory_v1_agents_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5589,7 +5684,7 @@ func (x *ChangeQANMySQLSlowlogAgentRequest) ProtoReflect() protoreflect.Message // Deprecated: Use ChangeQANMySQLSlowlogAgentRequest.ProtoReflect.Descriptor instead. func (*ChangeQANMySQLSlowlogAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{50} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{47} } func (x *ChangeQANMySQLSlowlogAgentRequest) GetAgentId() string { @@ -5617,7 +5712,7 @@ type ChangeQANMySQLSlowlogAgentResponse struct { func (x *ChangeQANMySQLSlowlogAgentResponse) Reset() { *x = ChangeQANMySQLSlowlogAgentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[51] + mi := &file_inventory_v1_agents_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5630,7 +5725,7 @@ func (x *ChangeQANMySQLSlowlogAgentResponse) String() string { func (*ChangeQANMySQLSlowlogAgentResponse) ProtoMessage() {} func (x *ChangeQANMySQLSlowlogAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[51] + mi := &file_inventory_v1_agents_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5643,7 +5738,7 @@ func (x *ChangeQANMySQLSlowlogAgentResponse) ProtoReflect() protoreflect.Message // Deprecated: Use ChangeQANMySQLSlowlogAgentResponse.ProtoReflect.Descriptor instead. func (*ChangeQANMySQLSlowlogAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{51} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{48} } func (x *ChangeQANMySQLSlowlogAgentResponse) GetQanMysqlSlowlogAgent() *QANMySQLSlowlogAgent { @@ -5695,7 +5790,7 @@ type AddQANMongoDBProfilerAgentRequest struct { func (x *AddQANMongoDBProfilerAgentRequest) Reset() { *x = AddQANMongoDBProfilerAgentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[52] + mi := &file_inventory_v1_agents_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5708,7 +5803,7 @@ func (x *AddQANMongoDBProfilerAgentRequest) String() string { func (*AddQANMongoDBProfilerAgentRequest) ProtoMessage() {} func (x *AddQANMongoDBProfilerAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[52] + mi := &file_inventory_v1_agents_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5721,7 +5816,7 @@ func (x *AddQANMongoDBProfilerAgentRequest) ProtoReflect() protoreflect.Message // Deprecated: Use AddQANMongoDBProfilerAgentRequest.ProtoReflect.Descriptor instead. func (*AddQANMongoDBProfilerAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{52} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{49} } func (x *AddQANMongoDBProfilerAgentRequest) GetPmmAgentId() string { @@ -5840,7 +5935,7 @@ type AddQANMongoDBProfilerAgentResponse struct { func (x *AddQANMongoDBProfilerAgentResponse) Reset() { *x = AddQANMongoDBProfilerAgentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[53] + mi := &file_inventory_v1_agents_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5853,7 +5948,7 @@ func (x *AddQANMongoDBProfilerAgentResponse) String() string { func (*AddQANMongoDBProfilerAgentResponse) ProtoMessage() {} func (x *AddQANMongoDBProfilerAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[53] + mi := &file_inventory_v1_agents_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5866,7 +5961,7 @@ func (x *AddQANMongoDBProfilerAgentResponse) ProtoReflect() protoreflect.Message // Deprecated: Use AddQANMongoDBProfilerAgentResponse.ProtoReflect.Descriptor instead. func (*AddQANMongoDBProfilerAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{53} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{50} } func (x *AddQANMongoDBProfilerAgentResponse) GetQanMongodbProfilerAgent() *QANMongoDBProfilerAgent { @@ -5888,7 +5983,7 @@ type ChangeQANMongoDBProfilerAgentRequest struct { func (x *ChangeQANMongoDBProfilerAgentRequest) Reset() { *x = ChangeQANMongoDBProfilerAgentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[54] + mi := &file_inventory_v1_agents_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5901,7 +5996,7 @@ func (x *ChangeQANMongoDBProfilerAgentRequest) String() string { func (*ChangeQANMongoDBProfilerAgentRequest) ProtoMessage() {} func (x *ChangeQANMongoDBProfilerAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[54] + mi := &file_inventory_v1_agents_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5914,7 +6009,7 @@ func (x *ChangeQANMongoDBProfilerAgentRequest) ProtoReflect() protoreflect.Messa // Deprecated: Use ChangeQANMongoDBProfilerAgentRequest.ProtoReflect.Descriptor instead. func (*ChangeQANMongoDBProfilerAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{54} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{51} } func (x *ChangeQANMongoDBProfilerAgentRequest) GetAgentId() string { @@ -5942,7 +6037,7 @@ type ChangeQANMongoDBProfilerAgentResponse struct { func (x *ChangeQANMongoDBProfilerAgentResponse) Reset() { *x = ChangeQANMongoDBProfilerAgentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[55] + mi := &file_inventory_v1_agents_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5955,7 +6050,7 @@ func (x *ChangeQANMongoDBProfilerAgentResponse) String() string { func (*ChangeQANMongoDBProfilerAgentResponse) ProtoMessage() {} func (x *ChangeQANMongoDBProfilerAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[55] + mi := &file_inventory_v1_agents_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5968,7 +6063,7 @@ func (x *ChangeQANMongoDBProfilerAgentResponse) ProtoReflect() protoreflect.Mess // Deprecated: Use ChangeQANMongoDBProfilerAgentResponse.ProtoReflect.Descriptor instead. func (*ChangeQANMongoDBProfilerAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{55} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{52} } func (x *ChangeQANMongoDBProfilerAgentResponse) GetQanMongodbProfilerAgent() *QANMongoDBProfilerAgent { @@ -6016,7 +6111,7 @@ type AddQANPostgreSQLPgStatementsAgentRequest struct { func (x *AddQANPostgreSQLPgStatementsAgentRequest) Reset() { *x = AddQANPostgreSQLPgStatementsAgentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[56] + mi := &file_inventory_v1_agents_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6029,7 +6124,7 @@ func (x *AddQANPostgreSQLPgStatementsAgentRequest) String() string { func (*AddQANPostgreSQLPgStatementsAgentRequest) ProtoMessage() {} func (x *AddQANPostgreSQLPgStatementsAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[56] + mi := &file_inventory_v1_agents_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6042,7 +6137,7 @@ func (x *AddQANPostgreSQLPgStatementsAgentRequest) ProtoReflect() protoreflect.M // Deprecated: Use AddQANPostgreSQLPgStatementsAgentRequest.ProtoReflect.Descriptor instead. func (*AddQANPostgreSQLPgStatementsAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{56} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{53} } func (x *AddQANPostgreSQLPgStatementsAgentRequest) GetPmmAgentId() string { @@ -6154,7 +6249,7 @@ type AddQANPostgreSQLPgStatementsAgentResponse struct { func (x *AddQANPostgreSQLPgStatementsAgentResponse) Reset() { *x = AddQANPostgreSQLPgStatementsAgentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[57] + mi := &file_inventory_v1_agents_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6167,7 +6262,7 @@ func (x *AddQANPostgreSQLPgStatementsAgentResponse) String() string { func (*AddQANPostgreSQLPgStatementsAgentResponse) ProtoMessage() {} func (x *AddQANPostgreSQLPgStatementsAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[57] + mi := &file_inventory_v1_agents_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6180,7 +6275,7 @@ func (x *AddQANPostgreSQLPgStatementsAgentResponse) ProtoReflect() protoreflect. // Deprecated: Use AddQANPostgreSQLPgStatementsAgentResponse.ProtoReflect.Descriptor instead. func (*AddQANPostgreSQLPgStatementsAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{57} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{54} } func (x *AddQANPostgreSQLPgStatementsAgentResponse) GetQanPostgresqlPgstatementsAgent() *QANPostgreSQLPgStatementsAgent { @@ -6202,7 +6297,7 @@ type ChangeQANPostgreSQLPgStatementsAgentRequest struct { func (x *ChangeQANPostgreSQLPgStatementsAgentRequest) Reset() { *x = ChangeQANPostgreSQLPgStatementsAgentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[58] + mi := &file_inventory_v1_agents_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6215,7 +6310,7 @@ func (x *ChangeQANPostgreSQLPgStatementsAgentRequest) String() string { func (*ChangeQANPostgreSQLPgStatementsAgentRequest) ProtoMessage() {} func (x *ChangeQANPostgreSQLPgStatementsAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[58] + mi := &file_inventory_v1_agents_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6228,7 +6323,7 @@ func (x *ChangeQANPostgreSQLPgStatementsAgentRequest) ProtoReflect() protoreflec // Deprecated: Use ChangeQANPostgreSQLPgStatementsAgentRequest.ProtoReflect.Descriptor instead. func (*ChangeQANPostgreSQLPgStatementsAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{58} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{55} } func (x *ChangeQANPostgreSQLPgStatementsAgentRequest) GetAgentId() string { @@ -6256,7 +6351,7 @@ type ChangeQANPostgreSQLPgStatementsAgentResponse struct { func (x *ChangeQANPostgreSQLPgStatementsAgentResponse) Reset() { *x = ChangeQANPostgreSQLPgStatementsAgentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[59] + mi := &file_inventory_v1_agents_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6269,7 +6364,7 @@ func (x *ChangeQANPostgreSQLPgStatementsAgentResponse) String() string { func (*ChangeQANPostgreSQLPgStatementsAgentResponse) ProtoMessage() {} func (x *ChangeQANPostgreSQLPgStatementsAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[59] + mi := &file_inventory_v1_agents_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6282,7 +6377,7 @@ func (x *ChangeQANPostgreSQLPgStatementsAgentResponse) ProtoReflect() protorefle // Deprecated: Use ChangeQANPostgreSQLPgStatementsAgentResponse.ProtoReflect.Descriptor instead. func (*ChangeQANPostgreSQLPgStatementsAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{59} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{56} } func (x *ChangeQANPostgreSQLPgStatementsAgentResponse) GetQanPostgresqlPgstatementsAgent() *QANPostgreSQLPgStatementsAgent { @@ -6332,7 +6427,7 @@ type AddQANPostgreSQLPgStatMonitorAgentRequest struct { func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) Reset() { *x = AddQANPostgreSQLPgStatMonitorAgentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[60] + mi := &file_inventory_v1_agents_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6345,7 +6440,7 @@ func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) String() string { func (*AddQANPostgreSQLPgStatMonitorAgentRequest) ProtoMessage() {} func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[60] + mi := &file_inventory_v1_agents_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6358,7 +6453,7 @@ func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) ProtoReflect() protoreflect. // Deprecated: Use AddQANPostgreSQLPgStatMonitorAgentRequest.ProtoReflect.Descriptor instead. func (*AddQANPostgreSQLPgStatMonitorAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{60} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{57} } func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) GetPmmAgentId() string { @@ -6477,7 +6572,7 @@ type AddQANPostgreSQLPgStatMonitorAgentResponse struct { func (x *AddQANPostgreSQLPgStatMonitorAgentResponse) Reset() { *x = AddQANPostgreSQLPgStatMonitorAgentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[61] + mi := &file_inventory_v1_agents_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6490,7 +6585,7 @@ func (x *AddQANPostgreSQLPgStatMonitorAgentResponse) String() string { func (*AddQANPostgreSQLPgStatMonitorAgentResponse) ProtoMessage() {} func (x *AddQANPostgreSQLPgStatMonitorAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[61] + mi := &file_inventory_v1_agents_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6503,7 +6598,7 @@ func (x *AddQANPostgreSQLPgStatMonitorAgentResponse) ProtoReflect() protoreflect // Deprecated: Use AddQANPostgreSQLPgStatMonitorAgentResponse.ProtoReflect.Descriptor instead. func (*AddQANPostgreSQLPgStatMonitorAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{61} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{58} } func (x *AddQANPostgreSQLPgStatMonitorAgentResponse) GetQanPostgresqlPgstatmonitorAgent() *QANPostgreSQLPgStatMonitorAgent { @@ -6525,7 +6620,7 @@ type ChangeQANPostgreSQLPgStatMonitorAgentRequest struct { func (x *ChangeQANPostgreSQLPgStatMonitorAgentRequest) Reset() { *x = ChangeQANPostgreSQLPgStatMonitorAgentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[62] + mi := &file_inventory_v1_agents_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6538,7 +6633,7 @@ func (x *ChangeQANPostgreSQLPgStatMonitorAgentRequest) String() string { func (*ChangeQANPostgreSQLPgStatMonitorAgentRequest) ProtoMessage() {} func (x *ChangeQANPostgreSQLPgStatMonitorAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[62] + mi := &file_inventory_v1_agents_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6551,7 +6646,7 @@ func (x *ChangeQANPostgreSQLPgStatMonitorAgentRequest) ProtoReflect() protorefle // Deprecated: Use ChangeQANPostgreSQLPgStatMonitorAgentRequest.ProtoReflect.Descriptor instead. func (*ChangeQANPostgreSQLPgStatMonitorAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{62} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{59} } func (x *ChangeQANPostgreSQLPgStatMonitorAgentRequest) GetAgentId() string { @@ -6579,7 +6674,7 @@ type ChangeQANPostgreSQLPgStatMonitorAgentResponse struct { func (x *ChangeQANPostgreSQLPgStatMonitorAgentResponse) Reset() { *x = ChangeQANPostgreSQLPgStatMonitorAgentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[63] + mi := &file_inventory_v1_agents_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6592,7 +6687,7 @@ func (x *ChangeQANPostgreSQLPgStatMonitorAgentResponse) String() string { func (*ChangeQANPostgreSQLPgStatMonitorAgentResponse) ProtoMessage() {} func (x *ChangeQANPostgreSQLPgStatMonitorAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[63] + mi := &file_inventory_v1_agents_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6605,7 +6700,7 @@ func (x *ChangeQANPostgreSQLPgStatMonitorAgentResponse) ProtoReflect() protorefl // Deprecated: Use ChangeQANPostgreSQLPgStatMonitorAgentResponse.ProtoReflect.Descriptor instead. func (*ChangeQANPostgreSQLPgStatMonitorAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{63} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{60} } func (x *ChangeQANPostgreSQLPgStatMonitorAgentResponse) GetQanPostgresqlPgstatmonitorAgent() *QANPostgreSQLPgStatMonitorAgent { @@ -6615,7 +6710,7 @@ func (x *ChangeQANPostgreSQLPgStatMonitorAgentResponse) GetQanPostgresqlPgstatmo return nil } -type AddRDSExporterRequest struct { +type AddRDSExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -6642,23 +6737,23 @@ type AddRDSExporterRequest struct { LogLevel LogLevel `protobuf:"varint,10,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` } -func (x *AddRDSExporterRequest) Reset() { - *x = AddRDSExporterRequest{} +func (x *AddRDSExporterParams) Reset() { + *x = AddRDSExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[64] + mi := &file_inventory_v1_agents_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AddRDSExporterRequest) String() string { +func (x *AddRDSExporterParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddRDSExporterRequest) ProtoMessage() {} +func (*AddRDSExporterParams) ProtoMessage() {} -func (x *AddRDSExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[64] +func (x *AddRDSExporterParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6669,128 +6764,81 @@ func (x *AddRDSExporterRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AddRDSExporterRequest.ProtoReflect.Descriptor instead. -func (*AddRDSExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{64} +// Deprecated: Use AddRDSExporterParams.ProtoReflect.Descriptor instead. +func (*AddRDSExporterParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{61} } -func (x *AddRDSExporterRequest) GetPmmAgentId() string { +func (x *AddRDSExporterParams) GetPmmAgentId() string { if x != nil { return x.PmmAgentId } return "" } -func (x *AddRDSExporterRequest) GetNodeId() string { +func (x *AddRDSExporterParams) GetNodeId() string { if x != nil { return x.NodeId } return "" } -func (x *AddRDSExporterRequest) GetAwsAccessKey() string { +func (x *AddRDSExporterParams) GetAwsAccessKey() string { if x != nil { return x.AwsAccessKey } return "" } -func (x *AddRDSExporterRequest) GetAwsSecretKey() string { +func (x *AddRDSExporterParams) GetAwsSecretKey() string { if x != nil { return x.AwsSecretKey } return "" } -func (x *AddRDSExporterRequest) GetCustomLabels() map[string]string { +func (x *AddRDSExporterParams) GetCustomLabels() map[string]string { if x != nil { return x.CustomLabels } return nil } -func (x *AddRDSExporterRequest) GetSkipConnectionCheck() bool { +func (x *AddRDSExporterParams) GetSkipConnectionCheck() bool { if x != nil { return x.SkipConnectionCheck } return false } -func (x *AddRDSExporterRequest) GetDisableBasicMetrics() bool { +func (x *AddRDSExporterParams) GetDisableBasicMetrics() bool { if x != nil { return x.DisableBasicMetrics } return false } -func (x *AddRDSExporterRequest) GetDisableEnhancedMetrics() bool { +func (x *AddRDSExporterParams) GetDisableEnhancedMetrics() bool { if x != nil { return x.DisableEnhancedMetrics } return false } -func (x *AddRDSExporterRequest) GetPushMetrics() bool { +func (x *AddRDSExporterParams) GetPushMetrics() bool { if x != nil { return x.PushMetrics } return false } -func (x *AddRDSExporterRequest) GetLogLevel() LogLevel { +func (x *AddRDSExporterParams) GetLogLevel() LogLevel { if x != nil { return x.LogLevel } return LogLevel_LOG_LEVEL_UNSPECIFIED } -type AddRDSExporterResponse 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 *AddRDSExporterResponse) Reset() { - *x = AddRDSExporterResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[65] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AddRDSExporterResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AddRDSExporterResponse) ProtoMessage() {} - -func (x *AddRDSExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[65] - 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 AddRDSExporterResponse.ProtoReflect.Descriptor instead. -func (*AddRDSExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{65} -} - -func (x *AddRDSExporterResponse) GetRdsExporter() *RDSExporter { - if x != nil { - return x.RdsExporter - } - return nil -} - type ChangeRDSExporterRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -6803,7 +6851,7 @@ type ChangeRDSExporterRequest struct { func (x *ChangeRDSExporterRequest) Reset() { *x = ChangeRDSExporterRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[66] + mi := &file_inventory_v1_agents_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6816,7 +6864,7 @@ func (x *ChangeRDSExporterRequest) String() string { func (*ChangeRDSExporterRequest) ProtoMessage() {} func (x *ChangeRDSExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[66] + mi := &file_inventory_v1_agents_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6829,7 +6877,7 @@ func (x *ChangeRDSExporterRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeRDSExporterRequest.ProtoReflect.Descriptor instead. func (*ChangeRDSExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{66} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{62} } func (x *ChangeRDSExporterRequest) GetAgentId() string { @@ -6857,7 +6905,7 @@ type ChangeRDSExporterResponse struct { func (x *ChangeRDSExporterResponse) Reset() { *x = ChangeRDSExporterResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[67] + mi := &file_inventory_v1_agents_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6870,7 +6918,7 @@ func (x *ChangeRDSExporterResponse) String() string { func (*ChangeRDSExporterResponse) ProtoMessage() {} func (x *ChangeRDSExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[67] + mi := &file_inventory_v1_agents_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6883,7 +6931,7 @@ func (x *ChangeRDSExporterResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeRDSExporterResponse.ProtoReflect.Descriptor instead. func (*ChangeRDSExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{67} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{63} } func (x *ChangeRDSExporterResponse) GetRdsExporter() *RDSExporter { @@ -6893,7 +6941,7 @@ func (x *ChangeRDSExporterResponse) GetRdsExporter() *RDSExporter { return nil } -type AddExternalExporterRequest struct { +type AddExternalExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -6918,23 +6966,23 @@ type AddExternalExporterRequest struct { PushMetrics bool `protobuf:"varint,11,opt,name=push_metrics,json=pushMetrics,proto3" json:"push_metrics,omitempty"` } -func (x *AddExternalExporterRequest) Reset() { - *x = AddExternalExporterRequest{} +func (x *AddExternalExporterParams) Reset() { + *x = AddExternalExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[68] + mi := &file_inventory_v1_agents_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AddExternalExporterRequest) String() string { +func (x *AddExternalExporterParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddExternalExporterRequest) ProtoMessage() {} +func (*AddExternalExporterParams) ProtoMessage() {} -func (x *AddExternalExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[68] +func (x *AddExternalExporterParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6945,121 +6993,74 @@ func (x *AddExternalExporterRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AddExternalExporterRequest.ProtoReflect.Descriptor instead. -func (*AddExternalExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{68} +// Deprecated: Use AddExternalExporterParams.ProtoReflect.Descriptor instead. +func (*AddExternalExporterParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{64} } -func (x *AddExternalExporterRequest) GetRunsOnNodeId() string { +func (x *AddExternalExporterParams) GetRunsOnNodeId() string { if x != nil { return x.RunsOnNodeId } return "" } -func (x *AddExternalExporterRequest) GetServiceId() string { +func (x *AddExternalExporterParams) GetServiceId() string { if x != nil { return x.ServiceId } return "" } -func (x *AddExternalExporterRequest) GetUsername() string { +func (x *AddExternalExporterParams) GetUsername() string { if x != nil { return x.Username } return "" } -func (x *AddExternalExporterRequest) GetPassword() string { +func (x *AddExternalExporterParams) GetPassword() string { if x != nil { return x.Password } return "" } -func (x *AddExternalExporterRequest) GetScheme() string { +func (x *AddExternalExporterParams) GetScheme() string { if x != nil { return x.Scheme } return "" } -func (x *AddExternalExporterRequest) GetMetricsPath() string { +func (x *AddExternalExporterParams) GetMetricsPath() string { if x != nil { return x.MetricsPath } return "" } -func (x *AddExternalExporterRequest) GetListenPort() uint32 { +func (x *AddExternalExporterParams) GetListenPort() uint32 { if x != nil { return x.ListenPort } return 0 } -func (x *AddExternalExporterRequest) GetCustomLabels() map[string]string { +func (x *AddExternalExporterParams) GetCustomLabels() map[string]string { if x != nil { return x.CustomLabels } return nil } -func (x *AddExternalExporterRequest) GetPushMetrics() bool { +func (x *AddExternalExporterParams) GetPushMetrics() bool { if x != nil { return x.PushMetrics } return false } -type AddExternalExporterResponse 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 *AddExternalExporterResponse) Reset() { - *x = AddExternalExporterResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[69] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AddExternalExporterResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AddExternalExporterResponse) ProtoMessage() {} - -func (x *AddExternalExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[69] - 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 AddExternalExporterResponse.ProtoReflect.Descriptor instead. -func (*AddExternalExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{69} -} - -func (x *AddExternalExporterResponse) GetExternalExporter() *ExternalExporter { - if x != nil { - return x.ExternalExporter - } - return nil -} - type ChangeExternalExporterRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -7072,7 +7073,7 @@ type ChangeExternalExporterRequest struct { func (x *ChangeExternalExporterRequest) Reset() { *x = ChangeExternalExporterRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[70] + mi := &file_inventory_v1_agents_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7085,7 +7086,7 @@ func (x *ChangeExternalExporterRequest) String() string { func (*ChangeExternalExporterRequest) ProtoMessage() {} func (x *ChangeExternalExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[70] + mi := &file_inventory_v1_agents_proto_msgTypes[65] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7098,7 +7099,7 @@ func (x *ChangeExternalExporterRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeExternalExporterRequest.ProtoReflect.Descriptor instead. func (*ChangeExternalExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{70} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{65} } func (x *ChangeExternalExporterRequest) GetAgentId() string { @@ -7126,7 +7127,7 @@ type ChangeExternalExporterResponse struct { func (x *ChangeExternalExporterResponse) Reset() { *x = ChangeExternalExporterResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[71] + mi := &file_inventory_v1_agents_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7139,7 +7140,7 @@ func (x *ChangeExternalExporterResponse) String() string { func (*ChangeExternalExporterResponse) ProtoMessage() {} func (x *ChangeExternalExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[71] + mi := &file_inventory_v1_agents_proto_msgTypes[66] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7152,7 +7153,7 @@ func (x *ChangeExternalExporterResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeExternalExporterResponse.ProtoReflect.Descriptor instead. func (*ChangeExternalExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{71} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{66} } func (x *ChangeExternalExporterResponse) GetExternalExporter() *ExternalExporter { @@ -7162,7 +7163,7 @@ func (x *ChangeExternalExporterResponse) GetExternalExporter() *ExternalExporter return nil } -type AddAzureDatabaseExporterRequest struct { +type AddAzureDatabaseExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -7193,23 +7194,23 @@ type AddAzureDatabaseExporterRequest struct { LogLevel LogLevel `protobuf:"varint,12,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` } -func (x *AddAzureDatabaseExporterRequest) Reset() { - *x = AddAzureDatabaseExporterRequest{} +func (x *AddAzureDatabaseExporterParams) Reset() { + *x = AddAzureDatabaseExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[72] + mi := &file_inventory_v1_agents_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AddAzureDatabaseExporterRequest) String() string { +func (x *AddAzureDatabaseExporterParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddAzureDatabaseExporterRequest) ProtoMessage() {} +func (*AddAzureDatabaseExporterParams) ProtoMessage() {} -func (x *AddAzureDatabaseExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[72] +func (x *AddAzureDatabaseExporterParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[67] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7220,142 +7221,95 @@ func (x *AddAzureDatabaseExporterRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AddAzureDatabaseExporterRequest.ProtoReflect.Descriptor instead. -func (*AddAzureDatabaseExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{72} +// Deprecated: Use AddAzureDatabaseExporterParams.ProtoReflect.Descriptor instead. +func (*AddAzureDatabaseExporterParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{67} } -func (x *AddAzureDatabaseExporterRequest) GetPmmAgentId() string { +func (x *AddAzureDatabaseExporterParams) GetPmmAgentId() string { if x != nil { return x.PmmAgentId } return "" } -func (x *AddAzureDatabaseExporterRequest) GetNodeId() string { +func (x *AddAzureDatabaseExporterParams) GetNodeId() string { if x != nil { return x.NodeId } return "" } -func (x *AddAzureDatabaseExporterRequest) GetAzureClientId() string { +func (x *AddAzureDatabaseExporterParams) GetAzureClientId() string { if x != nil { return x.AzureClientId } return "" } -func (x *AddAzureDatabaseExporterRequest) GetAzureClientSecret() string { +func (x *AddAzureDatabaseExporterParams) GetAzureClientSecret() string { if x != nil { return x.AzureClientSecret } return "" } -func (x *AddAzureDatabaseExporterRequest) GetAzureTenantId() string { +func (x *AddAzureDatabaseExporterParams) GetAzureTenantId() string { if x != nil { return x.AzureTenantId } return "" } -func (x *AddAzureDatabaseExporterRequest) GetAzureSubscriptionId() string { +func (x *AddAzureDatabaseExporterParams) GetAzureSubscriptionId() string { if x != nil { return x.AzureSubscriptionId } return "" } -func (x *AddAzureDatabaseExporterRequest) GetAzureResourceGroup() string { +func (x *AddAzureDatabaseExporterParams) GetAzureResourceGroup() string { if x != nil { return x.AzureResourceGroup } return "" } -func (x *AddAzureDatabaseExporterRequest) GetAzureDatabaseResourceType() string { +func (x *AddAzureDatabaseExporterParams) GetAzureDatabaseResourceType() string { if x != nil { return x.AzureDatabaseResourceType } return "" } -func (x *AddAzureDatabaseExporterRequest) GetCustomLabels() map[string]string { +func (x *AddAzureDatabaseExporterParams) GetCustomLabels() map[string]string { if x != nil { return x.CustomLabels } return nil } -func (x *AddAzureDatabaseExporterRequest) GetSkipConnectionCheck() bool { +func (x *AddAzureDatabaseExporterParams) GetSkipConnectionCheck() bool { if x != nil { return x.SkipConnectionCheck } return false } -func (x *AddAzureDatabaseExporterRequest) GetPushMetrics() bool { +func (x *AddAzureDatabaseExporterParams) GetPushMetrics() bool { if x != nil { return x.PushMetrics } return false } -func (x *AddAzureDatabaseExporterRequest) GetLogLevel() LogLevel { +func (x *AddAzureDatabaseExporterParams) GetLogLevel() LogLevel { if x != nil { return x.LogLevel } return LogLevel_LOG_LEVEL_UNSPECIFIED } -type AddAzureDatabaseExporterResponse 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 *AddAzureDatabaseExporterResponse) Reset() { - *x = AddAzureDatabaseExporterResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[73] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AddAzureDatabaseExporterResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AddAzureDatabaseExporterResponse) ProtoMessage() {} - -func (x *AddAzureDatabaseExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[73] - 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 AddAzureDatabaseExporterResponse.ProtoReflect.Descriptor instead. -func (*AddAzureDatabaseExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{73} -} - -func (x *AddAzureDatabaseExporterResponse) GetAzureDatabaseExporter() *AzureDatabaseExporter { - if x != nil { - return x.AzureDatabaseExporter - } - return nil -} - type ChangeAzureDatabaseExporterRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -7368,7 +7322,7 @@ type ChangeAzureDatabaseExporterRequest struct { func (x *ChangeAzureDatabaseExporterRequest) Reset() { *x = ChangeAzureDatabaseExporterRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[74] + mi := &file_inventory_v1_agents_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7381,7 +7335,7 @@ func (x *ChangeAzureDatabaseExporterRequest) String() string { func (*ChangeAzureDatabaseExporterRequest) ProtoMessage() {} func (x *ChangeAzureDatabaseExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[74] + mi := &file_inventory_v1_agents_proto_msgTypes[68] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7394,7 +7348,7 @@ func (x *ChangeAzureDatabaseExporterRequest) ProtoReflect() protoreflect.Message // Deprecated: Use ChangeAzureDatabaseExporterRequest.ProtoReflect.Descriptor instead. func (*ChangeAzureDatabaseExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{74} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{68} } func (x *ChangeAzureDatabaseExporterRequest) GetAgentId() string { @@ -7422,7 +7376,7 @@ type ChangeAzureDatabaseExporterResponse struct { func (x *ChangeAzureDatabaseExporterResponse) Reset() { *x = ChangeAzureDatabaseExporterResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[75] + mi := &file_inventory_v1_agents_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7435,7 +7389,7 @@ func (x *ChangeAzureDatabaseExporterResponse) String() string { func (*ChangeAzureDatabaseExporterResponse) ProtoMessage() {} func (x *ChangeAzureDatabaseExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[75] + mi := &file_inventory_v1_agents_proto_msgTypes[69] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7448,7 +7402,7 @@ func (x *ChangeAzureDatabaseExporterResponse) ProtoReflect() protoreflect.Messag // Deprecated: Use ChangeAzureDatabaseExporterResponse.ProtoReflect.Descriptor instead. func (*ChangeAzureDatabaseExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{75} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{69} } func (x *ChangeAzureDatabaseExporterResponse) GetAzureDatabaseExporter() *AzureDatabaseExporter { @@ -7471,7 +7425,7 @@ type RemoveAgentRequest struct { func (x *RemoveAgentRequest) Reset() { *x = RemoveAgentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[76] + mi := &file_inventory_v1_agents_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7484,7 +7438,7 @@ func (x *RemoveAgentRequest) String() string { func (*RemoveAgentRequest) ProtoMessage() {} func (x *RemoveAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[76] + mi := &file_inventory_v1_agents_proto_msgTypes[70] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7497,7 +7451,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{76} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{70} } func (x *RemoveAgentRequest) GetAgentId() string { @@ -7523,7 +7477,7 @@ type RemoveAgentResponse struct { func (x *RemoveAgentResponse) Reset() { *x = RemoveAgentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[77] + mi := &file_inventory_v1_agents_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7536,7 +7490,7 @@ func (x *RemoveAgentResponse) String() string { func (*RemoveAgentResponse) ProtoMessage() {} func (x *RemoveAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[77] + mi := &file_inventory_v1_agents_proto_msgTypes[71] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7549,7 +7503,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{77} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{71} } var File_inventory_v1_agents_proto protoreflect.FileDescriptor @@ -7591,14 +7545,14 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0x05, 0x20, 0x01, 0x28, + 0x64, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 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, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x04, 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, - 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x50, 0x6f, 0x72, + 0x05, 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, @@ -7612,16 +7566,16 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x70, 0x75, + 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, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x12, 0x64, + 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, 0x05, 0x20, 0x01, 0x28, + 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 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, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x65, + 0x6f, 0x72, 0x74, 0x18, 0x08, 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, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, @@ -7649,16 +7603,16 @@ 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, 0x0f, 0x20, 0x01, 0x28, + 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, 0x10, 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, 0x11, + 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, 0x08, + 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, @@ -7670,13 +7624,13 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, - 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x0f, 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, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, + 0x65, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x10, 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, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x74, 0x61, + 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x11, 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, 0x12, 0x20, 0x01, 0x28, 0x09, @@ -7712,15 +7666,15 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x70, 0x75, 0x73, 0x68, 0x4d, 0x65, 0x74, 0x72, + 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, 0x0c, 0x20, 0x03, 0x28, 0x09, 0x52, 0x12, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, + 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, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0b, 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, 0x0a, 0x20, + 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, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, @@ -7764,16 +7718,16 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0x0b, 0x20, 0x01, 0x28, 0x08, + 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, 0x0c, 0x20, 0x03, 0x28, + 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, - 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x0b, 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, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, + 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, 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, @@ -7811,16 +7765,16 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, + 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, 0x0c, 0x20, 0x03, 0x28, 0x09, 0x52, + 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, 0x09, 0x20, + 0x6f, 0x72, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0b, 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, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, + 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0c, 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, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, @@ -7849,33 +7803,33 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, + 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, - 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, + 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, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, + 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, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, + 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, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x71, 0x75, + 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, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x69, 0x6e, 0x76, + 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, 0x0a, 0x20, 0x01, 0x28, + 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0f, 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, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x10, 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, 0x0f, 0x20, + 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x11, 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, @@ -7897,43 +7851,43 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, + 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, 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, + 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, 0x12, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x64, 0x69, 0x73, 0x61, + 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, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, + 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, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x71, + 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, 0x09, 0x20, + 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, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, + 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, 0x0b, 0x20, 0x01, + 0x6c, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x10, 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, 0x0f, 0x20, 0x01, 0x28, 0x09, + 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x11, 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, 0x10, + 0x68, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x12, 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, 0xc4, 0x04, 0x0a, 0x17, 0x51, 0x41, 0x4e, 0x4d, + 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xca, 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, @@ -7949,490 +7903,572 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, + 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x08, 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, 0x09, 0x20, 0x03, + 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, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, + 0x74, 0x75, 0x73, 0x18, 0x0b, 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, + 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, 0x0c, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, + 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, 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, 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, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x4a, 0x04, + 0x08, 0x09, 0x10, 0x0a, 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, 0x0b, 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, 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, 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, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, + 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, 0x0c, 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, 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, 0x63, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, - 0x62, 0x65, 0x6c, 0x73, 0x18, 0x08, 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, 0x09, 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, 0x0a, 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, 0x0b, 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, 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, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0d, 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, 0x08, - 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, + 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, 0x0c, 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, + 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, 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, 0x07, 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, 0x08, 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, 0x09, 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, 0x0a, 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, 0x0b, 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, 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, + 0x30, 0x0a, 0x14, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, + 0x79, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x0e, 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, 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, 0x09, 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, 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, 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, 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, + 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, 0x0a, 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, 0x0b, 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, 0x0c, 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, 0x07, 0x20, 0x01, 0x28, 0x0e, + 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 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, 0x08, 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, 0x09, - 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, 0x0a, 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, 0x0b, - 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, 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, 0x30, 0x0a, 0x14, 0x61, 0x75, 0x74, - 0x6f, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x69, 0x6d, 0x69, - 0x74, 0x18, 0x0e, 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, 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, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x69, + 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, + 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, 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, 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, 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, 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, 0x3c, 0x0a, 0x0c, 0x72, 0x64, 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, + 0x74, 0x65, 0x72, 0x18, 0x0d, 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, 0x4b, 0x0a, 0x11, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x65, 0x78, + 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x0e, 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, 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, 0x08, 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, 0x0b, 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, 0x0c, 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, 0x08, 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, 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, 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, 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, 0x0e, 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, 0x02, 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, 0x03, 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, 0x04, 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, 0x05, 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, 0x06, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, + 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, 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, 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, 0x07, 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, 0x08, 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, 0x09, 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, 0x0a, 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, 0x0d, 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, 0x3c, 0x0a, - 0x0c, 0x72, 0x64, 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x0b, 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, 0x4b, 0x0a, 0x11, 0x65, - 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, - 0x18, 0x0c, 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, 0x5b, 0x0a, 0x17, 0x61, 0x7a, 0x75, 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, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x69, 0x6e, 0x76, 0x65, + 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, 0x52, 0x15, + 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, 0xde, 0x01, + 0x0a, 0x12, 0x41, 0x64, 0x64, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 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, 0x57, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, 0x4a, + 0x0a, 0x13, 0x41, 0x64, 0x64, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 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, + 0x52, 0x08, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x22, 0xcc, 0x05, 0x0a, 0x12, 0x41, + 0x64, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x4a, 0x0a, 0x0d, 0x6e, 0x6f, 0x64, 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, 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, 0x02, 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, 0x03, 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, 0x04, 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, 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, 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, 0x06, 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, 0x07, 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, 0x08, 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, 0x42, 0x0a, 0x0a, + 0x08, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x22, 0xa6, 0x05, 0x0a, 0x13, 0x41, 0x64, + 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 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, 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, 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, 0x02, 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, 0x03, 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, 0x04, + 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, 0x05, 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, 0x06, 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, 0x07, 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, 0x08, 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, 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, 0x0e, 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, 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, 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, - 0x07, 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, 0x08, 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, 0x09, 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, - 0x0a, 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, 0x0d, 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, 0x3e, 0x0a, 0x0c, 0x72, 0x64, 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, - 0x74, 0x65, 0x72, 0x18, 0x0b, 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, 0x4d, 0x0a, 0x11, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, - 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x0c, 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, 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, 0xde, 0x01, 0x0a, 0x12, 0x41, 0x64, 0x64, 0x50, - 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x57, - 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 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, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, 0x4a, 0x0a, 0x13, 0x41, 0x64, 0x64, 0x50, - 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x33, 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, 0x52, 0x08, 0x70, 0x6d, 0x6d, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x22, 0x91, 0x03, 0x0a, 0x16, 0x41, 0x64, 0x64, 0x4e, 0x6f, 0x64, 0x65, - 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x5b, 0x0a, 0x0d, 0x63, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x36, 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, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, 0x5a, 0x0a, 0x17, 0x41, 0x64, 0x64, 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, 0x7e, 0x0a, 0x19, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x4e, 0x6f, + 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 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, @@ -8446,220 +8482,198 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0x9f, 0x06, 0x0a, 0x18, 0x41, 0x64, 0x64, 0x4d, 0x79, 0x53, 0x51, 0x4c, - 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 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, 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, 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, 0x09, 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, 0x5d, 0x0a, 0x0d, 0x63, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x38, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, 0x0a, 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, 0x0b, 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, 0x83, 0x01, 0x0a, 0x19, 0x41, 0x64, 0x64, 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, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x61, - 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 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, 0xeb, 0x07, 0x0a, 0x19, 0x41, 0x64, 0x64, 0x4d, 0x6f, 0x6e, - 0x67, 0x6f, 0x44, 0x42, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 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, - 0x0a, 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, 0x0b, 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, 0x0c, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x5e, 0x0a, 0x0d, 0x63, 0x75, 0x73, + 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, 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, 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, 0x09, 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, 0x07, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x39, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, 0x0d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x64, 0x69, - 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 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, 0x0e, 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, 0x0f, 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, 0x25, 0x0a, 0x0e, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x73, - 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x67, 0x65, - 0x6e, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x74, - 0x61, 0x74, 0x73, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0x11, 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, 0x12, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x10, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, - 0x69, 0x6d, 0x69, 0x74, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, - 0x6c, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 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, 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, 0x0a, 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, 0x0b, 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, 0x14, 0x20, 0x01, + 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, 0x66, 0x0a, 0x1a, 0x41, 0x64, 0x64, 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, 0x81, 0x01, 0x0a, 0x1c, - 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, 0x94, 0x06, 0x0a, 0x1a, 0x41, - 0x64, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x5f, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, - 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, + 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, 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, 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, 0x0a, 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, 0x0b, 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, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, + 0x12, 0x5d, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 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, 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, 0x0d, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x11, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, + 0x63, 0x74, 0x6f, 0x72, 0x73, 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, 0x0e, 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, 0x0f, 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, 0x25, 0x0a, 0x0e, 0x61, 0x67, 0x65, + 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x10, 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, 0x6a, 0x0a, 0x1b, 0x41, 0x64, 0x64, 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, 0x82, 0x01, + 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x11, 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, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, + 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x13, 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, 0x14, 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, 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, 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, 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, @@ -8675,8 +8689,138 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0x97, 0x05, 0x0a, 0x1a, 0x41, 0x64, 0x64, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, - 0x4c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 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, 0xe8, 0x05, + 0x0a, 0x21, 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, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 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, 0x0a, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, + 0x63, 0x65, 0x72, 0x74, 0x18, 0x0b, 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, 0x0c, + 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, 0x0e, 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, 0x07, 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, 0x66, 0x0a, 0x0d, + 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x08, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x41, 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, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 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, 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, 0x09, 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, + 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, 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, 0x22, 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, 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, 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, 0x95, 0x06, + 0x0a, 0x1e, 0x41, 0x64, 0x64, 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, 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, @@ -8689,423 +8833,266 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0x5f, - 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, - 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, - 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, 0x6a, 0x0a, 0x1b, 0x41, - 0x64, 0x64, 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, 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, + 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, 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, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0f, 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, 0x07, 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, 0x08, 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, 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, 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, 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, 0x10, 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, 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, 0x7c, 0x0a, 0x1f, 0x41, 0x64, 0x64, 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, 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, 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, 0xe8, 0x05, 0x0a, 0x21, - 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 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, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, - 0x72, 0x74, 0x18, 0x0b, 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, 0x0c, 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, 0x0e, - 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, 0x07, - 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, 0x66, 0x0a, 0x0d, 0x63, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x41, 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, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 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, 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, 0x09, 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, 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, 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, 0x22, 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, 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, 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, 0x95, 0x06, 0x0a, 0x1e, - 0x41, 0x64, 0x64, 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, 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, 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, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, - 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0f, 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, 0x07, 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, 0x08, 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, 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, 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, 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, - 0x10, 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, 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, 0x7c, 0x0a, 0x1f, 0x41, 0x64, 0x64, 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, 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, + 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, 0xa9, 0x06, + 0x0a, 0x21, 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, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 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, 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, 0xa9, 0x06, 0x0a, 0x21, - 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 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, 0x09, 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, 0x0a, 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, 0x0b, 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, 0x0f, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, - 0x68, 0x12, 0x66, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, - 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, 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, 0x0c, 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, 0x0d, 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, 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, 0x88, 0x01, 0x0a, 0x22, 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, 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, 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, 0x89, 0x01, 0x0a, 0x24, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, + 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, + 0x09, 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, 0x0a, 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, 0x0b, 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, 0x0f, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x65, 0x6e, + 0x67, 0x74, 0x68, 0x12, 0x66, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 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, 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, 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, 0xc0, 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, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x6d, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 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, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, 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, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, - 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0d, 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, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, - 0x74, 0x18, 0x0a, 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, 0x0b, 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, 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, - 0xa4, 0x01, 0x0a, 0x29, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, + 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, + 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, 0x0c, 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, 0x0d, 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, 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, 0x88, 0x01, 0x0a, 0x22, 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, 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, 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, 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, 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, 0xc0, + 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, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x6d, 0x0a, 0x0d, 0x63, 0x75, 0x73, + 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 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, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, 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, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, + 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0d, 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, 0x09, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, + 0x65, 0x72, 0x74, 0x18, 0x0a, 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, 0x0b, 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, 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, 0xa4, 0x01, 0x0a, 0x29, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 0xf8, 0x05, 0x0a, 0x29, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x50, 0x6f, + 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, 0xf8, 0x05, 0x0a, 0x29, 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, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 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, 0x0e, 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, 0x07, 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, 0x6e, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x49, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 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, 0x0e, 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, 0x07, 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, - 0x6e, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, - 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x49, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, - 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, 0x09, 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, 0x15, 0x0a, - 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, - 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, - 0x18, 0x0b, 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, 0x0c, 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, 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, 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, 0xa8, - 0x01, 0x0a, 0x2a, 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, 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, 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, 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, + 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, 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, 0x09, 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, + 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, + 0x72, 0x74, 0x18, 0x0b, 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, 0x0c, 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, 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, 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, 0xa8, 0x01, 0x0a, 0x2a, 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, 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, @@ -9115,22 +9102,42 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0xc7, 0x04, 0x0a, 0x15, - 0x41, 0x64, 0x64, 0x52, 0x44, 0x53, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x5a, - 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, - 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, + 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 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, 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, 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, @@ -9152,666 +9159,550 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0x56, 0x0a, 0x16, 0x41, 0x64, 0x64, 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, 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, 0xd1, 0x03, 0x0a, 0x1a, 0x41, 0x64, 0x64, 0x45, - 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x5f, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e, - 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, + 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, 0x71, 0x75, 0x65, 0x73, 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, 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, 0x6a, 0x0a, 0x1b, 0x41, - 0x64, 0x64, 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, 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, 0xd1, 0x05, 0x0a, 0x1f, - 0x41, 0x64, 0x64, 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, - 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, 0x0b, 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, 0x07, 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, 0x64, 0x0a, 0x0d, - 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x08, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x3f, 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, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 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, 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, 0x09, 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, 0x0a, 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, - 0x7f, 0x0a, 0x20, 0x41, 0x64, 0x64, 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, 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, 0x0e, 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, - 0x02, 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, - 0x03, 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, 0x04, 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, 0x05, 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, 0x06, 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, - 0x07, 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, 0x08, 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, 0x09, 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, 0x0a, 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, 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, 0x0b, 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, 0x0c, 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, 0x89, 0x3a, 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, + 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, 0x0b, 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, 0x07, 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, 0x08, 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, 0x09, 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, 0x0a, + 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, 0x8e, 0x2e, 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, 0xa2, 0x01, + 0x0a, 0x0b, 0x41, 0x64, 0x64, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x20, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x21, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x4e, 0x92, 0x41, 0x20, 0x12, 0x0d, 0x41, 0x64, 0x64, 0x20, 0x50, 0x4d, 0x4d, + 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x0f, 0x41, 0x64, 0x64, 0x73, 0x20, 0x50, 0x4d, 0x4d, + 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x3a, 0x01, 0x2a, + 0x22, 0x20, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, + 0x6e, 0x74, 0x12, 0xac, 0x01, 0x0a, 0x0b, 0x41, 0x64, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, + 0x65, 0x72, 0x12, 0x20, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, + 0x31, 0x2e, 0x41, 0x64, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, + 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x58, 0x92, 0x41, 0x2a, 0x12, 0x0f, 0x41, 0x64, + 0x64, 0x20, 0x61, 0x6e, 0x20, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x17, 0x41, + 0x64, 0x64, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x20, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x3a, 0x01, 0x2a, 0x22, + 0x20, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, + 0x72, 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, 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, 0xa2, 0x01, 0x0a, 0x0b, 0x41, 0x64, 0x64, 0x50, 0x4d, - 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x20, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4e, 0x92, 0x41, 0x20, - 0x12, 0x0d, 0x41, 0x64, 0x64, 0x20, 0x50, 0x4d, 0x4d, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, - 0x0f, 0x41, 0x64, 0x64, 0x73, 0x20, 0x50, 0x4d, 0x4d, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x3a, 0x01, 0x2a, 0x22, 0x20, 0x2f, 0x76, 0x31, 0x2f, 0x69, - 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, - 0x41, 0x64, 0x64, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0xc0, 0x01, 0x0a, 0x0f, - 0x41, 0x64, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, - 0x24, 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, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x60, 0x92, 0x41, - 0x2e, 0x12, 0x11, 0x41, 0x64, 0x64, 0x20, 0x4e, 0x6f, 0x64, 0x65, 0x20, 0x45, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x1a, 0x19, 0x41, 0x64, 0x64, 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, 0x29, 0x3a, 0x01, 0x2a, 0x22, 0x24, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, - 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, - 0x64, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 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, 0xcc, 0x01, 0x0a, 0x11, 0x41, 0x64, 0x64, 0x4d, 0x79, 0x53, 0x51, 0x4c, - 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x26, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x27, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x66, 0x92, 0x41, 0x32, 0x12, - 0x13, 0x41, 0x64, 0x64, 0x20, 0x6d, 0x79, 0x73, 0x71, 0x6c, 0x64, 0x20, 0x45, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x1a, 0x1b, 0x41, 0x64, 0x64, 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, 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, 0x41, 0x64, 0x64, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x64, 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, + 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, 0x12, 0xd2, 0x01, 0x0a, 0x12, 0x41, 0x64, 0x64, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, - 0x44, 0x42, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x27, 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, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x28, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x69, 0x92, - 0x41, 0x34, 0x12, 0x14, 0x41, 0x64, 0x64, 0x20, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, 0x20, - 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x1c, 0x41, 0x64, 0x64, 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, 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, 0x41, 0x64, 0x64, 0x4d, 0x6f, 0x6e, 0x67, 0x6f, 0x44, 0x42, - 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0xe4, 0x01, 0x0a, 0x15, 0x43, 0x68, 0x61, + 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, 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, - 0xd8, 0x01, 0x0a, 0x13, 0x41, 0x64, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x45, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x28, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x29, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x6c, 0x92, 0x41, - 0x36, 0x12, 0x15, 0x41, 0x64, 0x64, 0x20, 0x50, 0x6f, 0x73, 0x74, 0x67, 0x72, 0x65, 0x73, 0x20, - 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x1d, 0x41, 0x64, 0x64, 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, 0x2d, 0x3a, 0x01, 0x2a, - 0x22, 0x28, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, 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, 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, 0xd8, 0x01, 0x0a, 0x13, 0x41, 0x64, 0x64, 0x50, - 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, - 0x28, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 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, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x6c, 0x92, 0x41, 0x36, 0x12, 0x15, 0x41, 0x64, 0x64, 0x20, 0x50, + 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, 0x1d, 0x41, 0x64, 0x64, 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, 0x2d, 0x3a, 0x01, 0x2a, 0x22, 0x28, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, - 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, - 0x64, 0x64, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, 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, - 0x91, 0x02, 0x0a, 0x1a, 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, 0x12, 0x2f, - 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x30, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x8f, 0x01, 0x92, 0x41, 0x52, 0x12, 0x20, 0x41, 0x64, 0x64, 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, 0x2e, 0x41, 0x64, 0x64, 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, 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, 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, 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, + 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, 0x91, 0x02, 0x0a, 0x1a, 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, 0x12, 0x2f, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 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, 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, 0xff, 0x01, 0x0a, 0x17, 0x41, 0x64, - 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x2c, 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, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x2d, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x86, 0x01, 0x92, 0x41, 0x4c, 0x12, 0x1d, 0x41, 0x64, 0x64, 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, 0x2b, 0x41, 0x64, 0x64, 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, 0x31, 0x3a, 0x01, 0x2a, 0x22, 0x2c, 0x2f, - 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, - 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 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, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8f, 0x01, 0x92, 0x41, 0x52, + 0x12, 0x20, 0x41, 0x64, 0x64, 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, 0x2e, 0x41, 0x64, 0x64, 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, 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, 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, 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, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, - 0x91, 0x02, 0x0a, 0x1a, 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, 0x12, 0x2f, + 0x53, 0x51, 0x4c, 0x50, 0x65, 0x72, 0x66, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x41, 0x67, 0x65, + 0x6e, 0x74, 0x12, 0xff, 0x01, 0x0a, 0x17, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, + 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x2c, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x30, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x8f, 0x01, 0x92, 0x41, 0x52, 0x12, 0x20, 0x41, 0x64, 0x64, 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, 0x2e, 0x41, 0x64, 0x64, 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, 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, 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, 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, + 0x64, 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, 0x2d, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x86, 0x01, 0x92, 0x41, + 0x4c, 0x12, 0x1d, 0x41, 0x64, 0x64, 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, 0x2b, 0x41, 0x64, 0x64, 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, 0x31, 0x3a, 0x01, 0x2a, 0x22, 0x2c, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, + 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 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, 0x91, 0x02, 0x0a, 0x1a, 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, 0x12, 0x2f, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 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, 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, 0xc7, 0x02, 0x0a, 0x21, 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, 0x12, - 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, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0xb0, 0x01, 0x92, 0x41, 0x6c, 0x12, 0x2d, 0x41, 0x64, 0x64, 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, 0x3b, 0x41, 0x64, 0x64, 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, 0x3b, 0x3a, 0x01, 0x2a, 0x22, 0x36, 0x2f, 0x76, 0x31, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8f, 0x01, 0x92, 0x41, 0x52, + 0x12, 0x20, 0x41, 0x64, 0x64, 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, 0x2e, 0x41, 0x64, 0x64, 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, 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, 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, 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, + 0x73, 0x2f, 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, 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, 0xc7, 0x02, 0x0a, 0x21, 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, 0x12, 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, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x37, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb0, 0x01, 0x92, 0x41, 0x6c, 0x12, + 0x2d, 0x41, 0x64, 0x64, 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, 0x3b, + 0x41, 0x64, 0x64, 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, - 0xc5, 0x02, 0x0a, 0x22, 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, 0x12, 0x37, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x38, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, + 0x3b, 0x3a, 0x01, 0x2a, 0x22, 0x36, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 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, 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, 0xc5, 0x02, 0x0a, 0x22, 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, 0x12, + 0x37, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xab, 0x01, 0x92, 0x41, 0x66, 0x12, - 0x2a, 0x41, 0x64, 0x64, 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, 0x38, 0x41, 0x64, 0x64, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0xab, 0x01, 0x92, 0x41, 0x66, 0x12, 0x2a, 0x41, 0x64, 0x64, 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, 0x38, 0x41, 0x64, 0x64, 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, 0x3c, 0x3a, 0x01, 0x2a, 0x22, 0x37, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, + 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 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, + 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, 0x3c, 0x3a, 0x01, 0x2a, 0x22, 0x37, + 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, 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, 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, 0xba, 0x01, 0x0a, 0x0e, 0x41, 0x64, 0x64, 0x52, 0x44, 0x53, 0x45, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x12, 0x23, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x69, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x52, 0x44, 0x53, 0x45, + 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, 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, - 0x5d, 0x92, 0x41, 0x2c, 0x12, 0x10, 0x41, 0x64, 0x64, 0x20, 0x52, 0x44, 0x53, 0x20, 0x45, 0x78, - 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x18, 0x41, 0x64, 0x64, 0x73, 0x20, 0x72, 0x64, 0x73, + 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, 0x28, 0x3a, 0x01, 0x2a, 0x22, 0x23, 0x2f, 0x76, 0x31, 0x2f, 0x69, + 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, - 0x41, 0x64, 0x64, 0x52, 0x44, 0x53, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 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, 0xd8, 0x01, - 0x0a, 0x13, 0x41, 0x64, 0x64, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x78, 0x70, - 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x28, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x29, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x6c, 0x92, 0x41, 0x36, 0x12, - 0x15, 0x41, 0x64, 0x64, 0x20, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x20, 0x45, 0x78, - 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x1d, 0x41, 0x64, 0x64, 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, 0x2d, 0x3a, 0x01, 0x2a, 0x22, 0x28, - 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, - 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, 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, 0xf8, 0x01, 0x0a, 0x18, 0x41, 0x64, 0x64, 0x41, 0x7a, 0x75, - 0x72, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x72, 0x12, 0x2d, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x2e, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x7d, 0x92, 0x41, 0x42, 0x12, 0x1b, 0x41, 0x64, 0x64, 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, 0x23, 0x41, 0x64, 0x64, 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, 0x32, 0x3a, 0x01, - 0x2a, 0x22, 0x2d, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, 0x41, 0x7a, 0x75, 0x72, 0x65, - 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 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, 0x9b, - 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, 0x47, 0x92, 0x41, 0x1e, 0x12, 0x0c, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, - 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x0e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x73, 0x20, - 0x41, 0x67, 0x65, 0x6e, 0x74, 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, + 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, 0xa1, 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, 0x4d, 0x92, 0x41, 0x24, 0x12, 0x0f, + 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, + 0x11, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, + 0x74, 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 ( @@ -9828,7 +9719,7 @@ 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, 107) + file_inventory_v1_agents_proto_msgTypes = make([]protoimpl.MessageInfo, 101) file_inventory_v1_agents_proto_goTypes = []interface{}{ (AgentType)(0), // 0: inventory.v1.AgentType (*PMMAgent)(nil), // 1: inventory.v1.PMMAgent @@ -9855,135 +9746,129 @@ var ( (*GetAgentLogsResponse)(nil), // 22: inventory.v1.GetAgentLogsResponse (*AddPMMAgentRequest)(nil), // 23: inventory.v1.AddPMMAgentRequest (*AddPMMAgentResponse)(nil), // 24: inventory.v1.AddPMMAgentResponse - (*AddNodeExporterRequest)(nil), // 25: inventory.v1.AddNodeExporterRequest - (*AddNodeExporterResponse)(nil), // 26: inventory.v1.AddNodeExporterResponse - (*ChangeNodeExporterRequest)(nil), // 27: inventory.v1.ChangeNodeExporterRequest - (*ChangeNodeExporterResponse)(nil), // 28: inventory.v1.ChangeNodeExporterResponse - (*AddMySQLdExporterRequest)(nil), // 29: inventory.v1.AddMySQLdExporterRequest - (*AddMySQLdExporterResponse)(nil), // 30: inventory.v1.AddMySQLdExporterResponse + (*AddExporterRequest)(nil), // 25: inventory.v1.AddExporterRequest + (*AddExporterResponse)(nil), // 26: inventory.v1.AddExporterResponse + (*AddNodeExporterParams)(nil), // 27: inventory.v1.AddNodeExporterParams + (*ChangeNodeExporterRequest)(nil), // 28: inventory.v1.ChangeNodeExporterRequest + (*ChangeNodeExporterResponse)(nil), // 29: inventory.v1.ChangeNodeExporterResponse + (*AddMySQLdExporterParams)(nil), // 30: inventory.v1.AddMySQLdExporterParams (*ChangeMySQLdExporterRequest)(nil), // 31: inventory.v1.ChangeMySQLdExporterRequest (*ChangeMySQLdExporterResponse)(nil), // 32: inventory.v1.ChangeMySQLdExporterResponse - (*AddMongoDBExporterRequest)(nil), // 33: inventory.v1.AddMongoDBExporterRequest - (*AddMongoDBExporterResponse)(nil), // 34: inventory.v1.AddMongoDBExporterResponse - (*ChangeMongoDBExporterRequest)(nil), // 35: inventory.v1.ChangeMongoDBExporterRequest - (*ChangeMongoDBExporterResponse)(nil), // 36: inventory.v1.ChangeMongoDBExporterResponse - (*AddPostgresExporterRequest)(nil), // 37: inventory.v1.AddPostgresExporterRequest - (*AddPostgresExporterResponse)(nil), // 38: inventory.v1.AddPostgresExporterResponse - (*ChangePostgresExporterRequest)(nil), // 39: inventory.v1.ChangePostgresExporterRequest - (*ChangePostgresExporterResponse)(nil), // 40: inventory.v1.ChangePostgresExporterResponse - (*AddProxySQLExporterRequest)(nil), // 41: inventory.v1.AddProxySQLExporterRequest - (*AddProxySQLExporterResponse)(nil), // 42: inventory.v1.AddProxySQLExporterResponse - (*ChangeProxySQLExporterRequest)(nil), // 43: inventory.v1.ChangeProxySQLExporterRequest - (*ChangeProxySQLExporterResponse)(nil), // 44: inventory.v1.ChangeProxySQLExporterResponse - (*AddQANMySQLPerfSchemaAgentRequest)(nil), // 45: inventory.v1.AddQANMySQLPerfSchemaAgentRequest - (*AddQANMySQLPerfSchemaAgentResponse)(nil), // 46: inventory.v1.AddQANMySQLPerfSchemaAgentResponse - (*ChangeQANMySQLPerfSchemaAgentRequest)(nil), // 47: inventory.v1.ChangeQANMySQLPerfSchemaAgentRequest - (*ChangeQANMySQLPerfSchemaAgentResponse)(nil), // 48: inventory.v1.ChangeQANMySQLPerfSchemaAgentResponse - (*AddQANMySQLSlowlogAgentRequest)(nil), // 49: inventory.v1.AddQANMySQLSlowlogAgentRequest - (*AddQANMySQLSlowlogAgentResponse)(nil), // 50: inventory.v1.AddQANMySQLSlowlogAgentResponse - (*ChangeQANMySQLSlowlogAgentRequest)(nil), // 51: inventory.v1.ChangeQANMySQLSlowlogAgentRequest - (*ChangeQANMySQLSlowlogAgentResponse)(nil), // 52: inventory.v1.ChangeQANMySQLSlowlogAgentResponse - (*AddQANMongoDBProfilerAgentRequest)(nil), // 53: inventory.v1.AddQANMongoDBProfilerAgentRequest - (*AddQANMongoDBProfilerAgentResponse)(nil), // 54: inventory.v1.AddQANMongoDBProfilerAgentResponse - (*ChangeQANMongoDBProfilerAgentRequest)(nil), // 55: inventory.v1.ChangeQANMongoDBProfilerAgentRequest - (*ChangeQANMongoDBProfilerAgentResponse)(nil), // 56: inventory.v1.ChangeQANMongoDBProfilerAgentResponse - (*AddQANPostgreSQLPgStatementsAgentRequest)(nil), // 57: inventory.v1.AddQANPostgreSQLPgStatementsAgentRequest - (*AddQANPostgreSQLPgStatementsAgentResponse)(nil), // 58: inventory.v1.AddQANPostgreSQLPgStatementsAgentResponse - (*ChangeQANPostgreSQLPgStatementsAgentRequest)(nil), // 59: inventory.v1.ChangeQANPostgreSQLPgStatementsAgentRequest - (*ChangeQANPostgreSQLPgStatementsAgentResponse)(nil), // 60: inventory.v1.ChangeQANPostgreSQLPgStatementsAgentResponse - (*AddQANPostgreSQLPgStatMonitorAgentRequest)(nil), // 61: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentRequest - (*AddQANPostgreSQLPgStatMonitorAgentResponse)(nil), // 62: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentResponse - (*ChangeQANPostgreSQLPgStatMonitorAgentRequest)(nil), // 63: inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentRequest - (*ChangeQANPostgreSQLPgStatMonitorAgentResponse)(nil), // 64: inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentResponse - (*AddRDSExporterRequest)(nil), // 65: inventory.v1.AddRDSExporterRequest - (*AddRDSExporterResponse)(nil), // 66: inventory.v1.AddRDSExporterResponse - (*ChangeRDSExporterRequest)(nil), // 67: inventory.v1.ChangeRDSExporterRequest - (*ChangeRDSExporterResponse)(nil), // 68: inventory.v1.ChangeRDSExporterResponse - (*AddExternalExporterRequest)(nil), // 69: inventory.v1.AddExternalExporterRequest - (*AddExternalExporterResponse)(nil), // 70: inventory.v1.AddExternalExporterResponse - (*ChangeExternalExporterRequest)(nil), // 71: inventory.v1.ChangeExternalExporterRequest - (*ChangeExternalExporterResponse)(nil), // 72: inventory.v1.ChangeExternalExporterResponse - (*AddAzureDatabaseExporterRequest)(nil), // 73: inventory.v1.AddAzureDatabaseExporterRequest - (*AddAzureDatabaseExporterResponse)(nil), // 74: inventory.v1.AddAzureDatabaseExporterResponse - (*ChangeAzureDatabaseExporterRequest)(nil), // 75: inventory.v1.ChangeAzureDatabaseExporterRequest - (*ChangeAzureDatabaseExporterResponse)(nil), // 76: inventory.v1.ChangeAzureDatabaseExporterResponse - (*RemoveAgentRequest)(nil), // 77: inventory.v1.RemoveAgentRequest - (*RemoveAgentResponse)(nil), // 78: inventory.v1.RemoveAgentResponse - nil, // 79: inventory.v1.PMMAgent.CustomLabelsEntry - nil, // 80: inventory.v1.NodeExporter.CustomLabelsEntry - nil, // 81: inventory.v1.MySQLdExporter.CustomLabelsEntry - nil, // 82: inventory.v1.MongoDBExporter.CustomLabelsEntry - nil, // 83: inventory.v1.PostgresExporter.CustomLabelsEntry - nil, // 84: inventory.v1.ProxySQLExporter.CustomLabelsEntry - nil, // 85: inventory.v1.QANMySQLPerfSchemaAgent.CustomLabelsEntry - nil, // 86: inventory.v1.QANMySQLSlowlogAgent.CustomLabelsEntry - nil, // 87: inventory.v1.QANMongoDBProfilerAgent.CustomLabelsEntry - nil, // 88: inventory.v1.QANPostgreSQLPgStatementsAgent.CustomLabelsEntry - nil, // 89: inventory.v1.QANPostgreSQLPgStatMonitorAgent.CustomLabelsEntry - nil, // 90: inventory.v1.RDSExporter.CustomLabelsEntry - nil, // 91: inventory.v1.ExternalExporter.CustomLabelsEntry - nil, // 92: inventory.v1.AzureDatabaseExporter.CustomLabelsEntry - nil, // 93: inventory.v1.ChangeCommonAgentParams.CustomLabelsEntry - nil, // 94: inventory.v1.AddPMMAgentRequest.CustomLabelsEntry - nil, // 95: inventory.v1.AddNodeExporterRequest.CustomLabelsEntry - nil, // 96: inventory.v1.AddMySQLdExporterRequest.CustomLabelsEntry - nil, // 97: inventory.v1.AddMongoDBExporterRequest.CustomLabelsEntry - nil, // 98: inventory.v1.AddPostgresExporterRequest.CustomLabelsEntry - nil, // 99: inventory.v1.AddProxySQLExporterRequest.CustomLabelsEntry - nil, // 100: inventory.v1.AddQANMySQLPerfSchemaAgentRequest.CustomLabelsEntry - nil, // 101: inventory.v1.AddQANMySQLSlowlogAgentRequest.CustomLabelsEntry - nil, // 102: inventory.v1.AddQANMongoDBProfilerAgentRequest.CustomLabelsEntry - nil, // 103: inventory.v1.AddQANPostgreSQLPgStatementsAgentRequest.CustomLabelsEntry - nil, // 104: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentRequest.CustomLabelsEntry - nil, // 105: inventory.v1.AddRDSExporterRequest.CustomLabelsEntry - nil, // 106: inventory.v1.AddExternalExporterRequest.CustomLabelsEntry - nil, // 107: inventory.v1.AddAzureDatabaseExporterRequest.CustomLabelsEntry - (AgentStatus)(0), // 108: inventory.v1.AgentStatus - (LogLevel)(0), // 109: inventory.v1.LogLevel + (*AddMongoDBExporterParams)(nil), // 33: inventory.v1.AddMongoDBExporterParams + (*ChangeMongoDBExporterRequest)(nil), // 34: inventory.v1.ChangeMongoDBExporterRequest + (*ChangeMongoDBExporterResponse)(nil), // 35: inventory.v1.ChangeMongoDBExporterResponse + (*AddPostgresExporterParams)(nil), // 36: inventory.v1.AddPostgresExporterParams + (*ChangePostgresExporterRequest)(nil), // 37: inventory.v1.ChangePostgresExporterRequest + (*ChangePostgresExporterResponse)(nil), // 38: inventory.v1.ChangePostgresExporterResponse + (*AddProxySQLExporterParams)(nil), // 39: inventory.v1.AddProxySQLExporterParams + (*ChangeProxySQLExporterRequest)(nil), // 40: inventory.v1.ChangeProxySQLExporterRequest + (*ChangeProxySQLExporterResponse)(nil), // 41: inventory.v1.ChangeProxySQLExporterResponse + (*AddQANMySQLPerfSchemaAgentRequest)(nil), // 42: inventory.v1.AddQANMySQLPerfSchemaAgentRequest + (*AddQANMySQLPerfSchemaAgentResponse)(nil), // 43: inventory.v1.AddQANMySQLPerfSchemaAgentResponse + (*ChangeQANMySQLPerfSchemaAgentRequest)(nil), // 44: inventory.v1.ChangeQANMySQLPerfSchemaAgentRequest + (*ChangeQANMySQLPerfSchemaAgentResponse)(nil), // 45: inventory.v1.ChangeQANMySQLPerfSchemaAgentResponse + (*AddQANMySQLSlowlogAgentRequest)(nil), // 46: inventory.v1.AddQANMySQLSlowlogAgentRequest + (*AddQANMySQLSlowlogAgentResponse)(nil), // 47: inventory.v1.AddQANMySQLSlowlogAgentResponse + (*ChangeQANMySQLSlowlogAgentRequest)(nil), // 48: inventory.v1.ChangeQANMySQLSlowlogAgentRequest + (*ChangeQANMySQLSlowlogAgentResponse)(nil), // 49: inventory.v1.ChangeQANMySQLSlowlogAgentResponse + (*AddQANMongoDBProfilerAgentRequest)(nil), // 50: inventory.v1.AddQANMongoDBProfilerAgentRequest + (*AddQANMongoDBProfilerAgentResponse)(nil), // 51: inventory.v1.AddQANMongoDBProfilerAgentResponse + (*ChangeQANMongoDBProfilerAgentRequest)(nil), // 52: inventory.v1.ChangeQANMongoDBProfilerAgentRequest + (*ChangeQANMongoDBProfilerAgentResponse)(nil), // 53: inventory.v1.ChangeQANMongoDBProfilerAgentResponse + (*AddQANPostgreSQLPgStatementsAgentRequest)(nil), // 54: inventory.v1.AddQANPostgreSQLPgStatementsAgentRequest + (*AddQANPostgreSQLPgStatementsAgentResponse)(nil), // 55: inventory.v1.AddQANPostgreSQLPgStatementsAgentResponse + (*ChangeQANPostgreSQLPgStatementsAgentRequest)(nil), // 56: inventory.v1.ChangeQANPostgreSQLPgStatementsAgentRequest + (*ChangeQANPostgreSQLPgStatementsAgentResponse)(nil), // 57: inventory.v1.ChangeQANPostgreSQLPgStatementsAgentResponse + (*AddQANPostgreSQLPgStatMonitorAgentRequest)(nil), // 58: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentRequest + (*AddQANPostgreSQLPgStatMonitorAgentResponse)(nil), // 59: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentResponse + (*ChangeQANPostgreSQLPgStatMonitorAgentRequest)(nil), // 60: inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentRequest + (*ChangeQANPostgreSQLPgStatMonitorAgentResponse)(nil), // 61: inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentResponse + (*AddRDSExporterParams)(nil), // 62: inventory.v1.AddRDSExporterParams + (*ChangeRDSExporterRequest)(nil), // 63: inventory.v1.ChangeRDSExporterRequest + (*ChangeRDSExporterResponse)(nil), // 64: inventory.v1.ChangeRDSExporterResponse + (*AddExternalExporterParams)(nil), // 65: inventory.v1.AddExternalExporterParams + (*ChangeExternalExporterRequest)(nil), // 66: inventory.v1.ChangeExternalExporterRequest + (*ChangeExternalExporterResponse)(nil), // 67: inventory.v1.ChangeExternalExporterResponse + (*AddAzureDatabaseExporterParams)(nil), // 68: inventory.v1.AddAzureDatabaseExporterParams + (*ChangeAzureDatabaseExporterRequest)(nil), // 69: inventory.v1.ChangeAzureDatabaseExporterRequest + (*ChangeAzureDatabaseExporterResponse)(nil), // 70: inventory.v1.ChangeAzureDatabaseExporterResponse + (*RemoveAgentRequest)(nil), // 71: inventory.v1.RemoveAgentRequest + (*RemoveAgentResponse)(nil), // 72: inventory.v1.RemoveAgentResponse + nil, // 73: inventory.v1.PMMAgent.CustomLabelsEntry + nil, // 74: inventory.v1.NodeExporter.CustomLabelsEntry + nil, // 75: inventory.v1.MySQLdExporter.CustomLabelsEntry + nil, // 76: inventory.v1.MongoDBExporter.CustomLabelsEntry + nil, // 77: inventory.v1.PostgresExporter.CustomLabelsEntry + nil, // 78: inventory.v1.ProxySQLExporter.CustomLabelsEntry + nil, // 79: inventory.v1.QANMySQLPerfSchemaAgent.CustomLabelsEntry + nil, // 80: inventory.v1.QANMySQLSlowlogAgent.CustomLabelsEntry + nil, // 81: inventory.v1.QANMongoDBProfilerAgent.CustomLabelsEntry + nil, // 82: inventory.v1.QANPostgreSQLPgStatementsAgent.CustomLabelsEntry + nil, // 83: inventory.v1.QANPostgreSQLPgStatMonitorAgent.CustomLabelsEntry + nil, // 84: inventory.v1.RDSExporter.CustomLabelsEntry + nil, // 85: inventory.v1.ExternalExporter.CustomLabelsEntry + nil, // 86: inventory.v1.AzureDatabaseExporter.CustomLabelsEntry + nil, // 87: inventory.v1.ChangeCommonAgentParams.CustomLabelsEntry + nil, // 88: inventory.v1.AddPMMAgentRequest.CustomLabelsEntry + nil, // 89: inventory.v1.AddNodeExporterParams.CustomLabelsEntry + nil, // 90: inventory.v1.AddMySQLdExporterParams.CustomLabelsEntry + nil, // 91: inventory.v1.AddMongoDBExporterParams.CustomLabelsEntry + nil, // 92: inventory.v1.AddPostgresExporterParams.CustomLabelsEntry + nil, // 93: inventory.v1.AddProxySQLExporterParams.CustomLabelsEntry + nil, // 94: inventory.v1.AddQANMySQLPerfSchemaAgentRequest.CustomLabelsEntry + nil, // 95: inventory.v1.AddQANMySQLSlowlogAgentRequest.CustomLabelsEntry + nil, // 96: inventory.v1.AddQANMongoDBProfilerAgentRequest.CustomLabelsEntry + nil, // 97: inventory.v1.AddQANPostgreSQLPgStatementsAgentRequest.CustomLabelsEntry + nil, // 98: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentRequest.CustomLabelsEntry + nil, // 99: inventory.v1.AddRDSExporterParams.CustomLabelsEntry + nil, // 100: inventory.v1.AddExternalExporterParams.CustomLabelsEntry + nil, // 101: inventory.v1.AddAzureDatabaseExporterParams.CustomLabelsEntry + (AgentStatus)(0), // 102: inventory.v1.AgentStatus + (LogLevel)(0), // 103: inventory.v1.LogLevel } ) var file_inventory_v1_agents_proto_depIdxs = []int32{ - 79, // 0: inventory.v1.PMMAgent.custom_labels:type_name -> inventory.v1.PMMAgent.CustomLabelsEntry - 108, // 1: inventory.v1.VMAgent.status:type_name -> inventory.v1.AgentStatus - 80, // 2: inventory.v1.NodeExporter.custom_labels:type_name -> inventory.v1.NodeExporter.CustomLabelsEntry - 108, // 3: inventory.v1.NodeExporter.status:type_name -> inventory.v1.AgentStatus - 109, // 4: inventory.v1.NodeExporter.log_level:type_name -> inventory.v1.LogLevel - 81, // 5: inventory.v1.MySQLdExporter.custom_labels:type_name -> inventory.v1.MySQLdExporter.CustomLabelsEntry - 108, // 6: inventory.v1.MySQLdExporter.status:type_name -> inventory.v1.AgentStatus - 109, // 7: inventory.v1.MySQLdExporter.log_level:type_name -> inventory.v1.LogLevel - 82, // 8: inventory.v1.MongoDBExporter.custom_labels:type_name -> inventory.v1.MongoDBExporter.CustomLabelsEntry - 108, // 9: inventory.v1.MongoDBExporter.status:type_name -> inventory.v1.AgentStatus - 109, // 10: inventory.v1.MongoDBExporter.log_level:type_name -> inventory.v1.LogLevel - 83, // 11: inventory.v1.PostgresExporter.custom_labels:type_name -> inventory.v1.PostgresExporter.CustomLabelsEntry - 108, // 12: inventory.v1.PostgresExporter.status:type_name -> inventory.v1.AgentStatus - 109, // 13: inventory.v1.PostgresExporter.log_level:type_name -> inventory.v1.LogLevel - 84, // 14: inventory.v1.ProxySQLExporter.custom_labels:type_name -> inventory.v1.ProxySQLExporter.CustomLabelsEntry - 108, // 15: inventory.v1.ProxySQLExporter.status:type_name -> inventory.v1.AgentStatus - 109, // 16: inventory.v1.ProxySQLExporter.log_level:type_name -> inventory.v1.LogLevel - 85, // 17: inventory.v1.QANMySQLPerfSchemaAgent.custom_labels:type_name -> inventory.v1.QANMySQLPerfSchemaAgent.CustomLabelsEntry - 108, // 18: inventory.v1.QANMySQLPerfSchemaAgent.status:type_name -> inventory.v1.AgentStatus - 109, // 19: inventory.v1.QANMySQLPerfSchemaAgent.log_level:type_name -> inventory.v1.LogLevel - 86, // 20: inventory.v1.QANMySQLSlowlogAgent.custom_labels:type_name -> inventory.v1.QANMySQLSlowlogAgent.CustomLabelsEntry - 108, // 21: inventory.v1.QANMySQLSlowlogAgent.status:type_name -> inventory.v1.AgentStatus - 109, // 22: inventory.v1.QANMySQLSlowlogAgent.log_level:type_name -> inventory.v1.LogLevel - 87, // 23: inventory.v1.QANMongoDBProfilerAgent.custom_labels:type_name -> inventory.v1.QANMongoDBProfilerAgent.CustomLabelsEntry - 108, // 24: inventory.v1.QANMongoDBProfilerAgent.status:type_name -> inventory.v1.AgentStatus - 109, // 25: inventory.v1.QANMongoDBProfilerAgent.log_level:type_name -> inventory.v1.LogLevel - 88, // 26: inventory.v1.QANPostgreSQLPgStatementsAgent.custom_labels:type_name -> inventory.v1.QANPostgreSQLPgStatementsAgent.CustomLabelsEntry - 108, // 27: inventory.v1.QANPostgreSQLPgStatementsAgent.status:type_name -> inventory.v1.AgentStatus - 109, // 28: inventory.v1.QANPostgreSQLPgStatementsAgent.log_level:type_name -> inventory.v1.LogLevel - 89, // 29: inventory.v1.QANPostgreSQLPgStatMonitorAgent.custom_labels:type_name -> inventory.v1.QANPostgreSQLPgStatMonitorAgent.CustomLabelsEntry - 108, // 30: inventory.v1.QANPostgreSQLPgStatMonitorAgent.status:type_name -> inventory.v1.AgentStatus - 109, // 31: inventory.v1.QANPostgreSQLPgStatMonitorAgent.log_level:type_name -> inventory.v1.LogLevel - 90, // 32: inventory.v1.RDSExporter.custom_labels:type_name -> inventory.v1.RDSExporter.CustomLabelsEntry - 108, // 33: inventory.v1.RDSExporter.status:type_name -> inventory.v1.AgentStatus - 109, // 34: inventory.v1.RDSExporter.log_level:type_name -> inventory.v1.LogLevel - 91, // 35: inventory.v1.ExternalExporter.custom_labels:type_name -> inventory.v1.ExternalExporter.CustomLabelsEntry - 92, // 36: inventory.v1.AzureDatabaseExporter.custom_labels:type_name -> inventory.v1.AzureDatabaseExporter.CustomLabelsEntry - 108, // 37: inventory.v1.AzureDatabaseExporter.status:type_name -> inventory.v1.AgentStatus - 109, // 38: inventory.v1.AzureDatabaseExporter.log_level:type_name -> inventory.v1.LogLevel - 93, // 39: inventory.v1.ChangeCommonAgentParams.custom_labels:type_name -> inventory.v1.ChangeCommonAgentParams.CustomLabelsEntry + 73, // 0: inventory.v1.PMMAgent.custom_labels:type_name -> inventory.v1.PMMAgent.CustomLabelsEntry + 102, // 1: inventory.v1.VMAgent.status:type_name -> inventory.v1.AgentStatus + 74, // 2: inventory.v1.NodeExporter.custom_labels:type_name -> inventory.v1.NodeExporter.CustomLabelsEntry + 102, // 3: inventory.v1.NodeExporter.status:type_name -> inventory.v1.AgentStatus + 103, // 4: inventory.v1.NodeExporter.log_level:type_name -> inventory.v1.LogLevel + 75, // 5: inventory.v1.MySQLdExporter.custom_labels:type_name -> inventory.v1.MySQLdExporter.CustomLabelsEntry + 102, // 6: inventory.v1.MySQLdExporter.status:type_name -> inventory.v1.AgentStatus + 103, // 7: inventory.v1.MySQLdExporter.log_level:type_name -> inventory.v1.LogLevel + 76, // 8: inventory.v1.MongoDBExporter.custom_labels:type_name -> inventory.v1.MongoDBExporter.CustomLabelsEntry + 102, // 9: inventory.v1.MongoDBExporter.status:type_name -> inventory.v1.AgentStatus + 103, // 10: inventory.v1.MongoDBExporter.log_level:type_name -> inventory.v1.LogLevel + 77, // 11: inventory.v1.PostgresExporter.custom_labels:type_name -> inventory.v1.PostgresExporter.CustomLabelsEntry + 102, // 12: inventory.v1.PostgresExporter.status:type_name -> inventory.v1.AgentStatus + 103, // 13: inventory.v1.PostgresExporter.log_level:type_name -> inventory.v1.LogLevel + 78, // 14: inventory.v1.ProxySQLExporter.custom_labels:type_name -> inventory.v1.ProxySQLExporter.CustomLabelsEntry + 102, // 15: inventory.v1.ProxySQLExporter.status:type_name -> inventory.v1.AgentStatus + 103, // 16: inventory.v1.ProxySQLExporter.log_level:type_name -> inventory.v1.LogLevel + 79, // 17: inventory.v1.QANMySQLPerfSchemaAgent.custom_labels:type_name -> inventory.v1.QANMySQLPerfSchemaAgent.CustomLabelsEntry + 102, // 18: inventory.v1.QANMySQLPerfSchemaAgent.status:type_name -> inventory.v1.AgentStatus + 103, // 19: inventory.v1.QANMySQLPerfSchemaAgent.log_level:type_name -> inventory.v1.LogLevel + 80, // 20: inventory.v1.QANMySQLSlowlogAgent.custom_labels:type_name -> inventory.v1.QANMySQLSlowlogAgent.CustomLabelsEntry + 102, // 21: inventory.v1.QANMySQLSlowlogAgent.status:type_name -> inventory.v1.AgentStatus + 103, // 22: inventory.v1.QANMySQLSlowlogAgent.log_level:type_name -> inventory.v1.LogLevel + 81, // 23: inventory.v1.QANMongoDBProfilerAgent.custom_labels:type_name -> inventory.v1.QANMongoDBProfilerAgent.CustomLabelsEntry + 102, // 24: inventory.v1.QANMongoDBProfilerAgent.status:type_name -> inventory.v1.AgentStatus + 103, // 25: inventory.v1.QANMongoDBProfilerAgent.log_level:type_name -> inventory.v1.LogLevel + 82, // 26: inventory.v1.QANPostgreSQLPgStatementsAgent.custom_labels:type_name -> inventory.v1.QANPostgreSQLPgStatementsAgent.CustomLabelsEntry + 102, // 27: inventory.v1.QANPostgreSQLPgStatementsAgent.status:type_name -> inventory.v1.AgentStatus + 103, // 28: inventory.v1.QANPostgreSQLPgStatementsAgent.log_level:type_name -> inventory.v1.LogLevel + 83, // 29: inventory.v1.QANPostgreSQLPgStatMonitorAgent.custom_labels:type_name -> inventory.v1.QANPostgreSQLPgStatMonitorAgent.CustomLabelsEntry + 102, // 30: inventory.v1.QANPostgreSQLPgStatMonitorAgent.status:type_name -> inventory.v1.AgentStatus + 103, // 31: inventory.v1.QANPostgreSQLPgStatMonitorAgent.log_level:type_name -> inventory.v1.LogLevel + 84, // 32: inventory.v1.RDSExporter.custom_labels:type_name -> inventory.v1.RDSExporter.CustomLabelsEntry + 102, // 33: inventory.v1.RDSExporter.status:type_name -> inventory.v1.AgentStatus + 103, // 34: inventory.v1.RDSExporter.log_level:type_name -> inventory.v1.LogLevel + 85, // 35: inventory.v1.ExternalExporter.custom_labels:type_name -> inventory.v1.ExternalExporter.CustomLabelsEntry + 86, // 36: inventory.v1.AzureDatabaseExporter.custom_labels:type_name -> inventory.v1.AzureDatabaseExporter.CustomLabelsEntry + 102, // 37: inventory.v1.AzureDatabaseExporter.status:type_name -> inventory.v1.AgentStatus + 103, // 38: inventory.v1.AzureDatabaseExporter.log_level:type_name -> inventory.v1.LogLevel + 87, // 39: inventory.v1.ChangeCommonAgentParams.custom_labels:type_name -> inventory.v1.ChangeCommonAgentParams.CustomLabelsEntry 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 @@ -10012,142 +9897,136 @@ var file_inventory_v1_agents_proto_depIdxs = []int32{ 10, // 65: inventory.v1.GetAgentResponse.qan_mongodb_profiler_agent:type_name -> inventory.v1.QANMongoDBProfilerAgent 11, // 66: inventory.v1.GetAgentResponse.qan_postgresql_pgstatements_agent:type_name -> inventory.v1.QANPostgreSQLPgStatementsAgent 12, // 67: inventory.v1.GetAgentResponse.qan_postgresql_pgstatmonitor_agent:type_name -> inventory.v1.QANPostgreSQLPgStatMonitorAgent - 13, // 68: inventory.v1.GetAgentResponse.rds_exporter:type_name -> inventory.v1.RDSExporter - 14, // 69: inventory.v1.GetAgentResponse.external_exporter:type_name -> inventory.v1.ExternalExporter + 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 - 94, // 71: inventory.v1.AddPMMAgentRequest.custom_labels:type_name -> inventory.v1.AddPMMAgentRequest.CustomLabelsEntry + 88, // 71: inventory.v1.AddPMMAgentRequest.custom_labels:type_name -> inventory.v1.AddPMMAgentRequest.CustomLabelsEntry 1, // 72: inventory.v1.AddPMMAgentResponse.pmm_agent:type_name -> inventory.v1.PMMAgent - 95, // 73: inventory.v1.AddNodeExporterRequest.custom_labels:type_name -> inventory.v1.AddNodeExporterRequest.CustomLabelsEntry - 109, // 74: inventory.v1.AddNodeExporterRequest.log_level:type_name -> inventory.v1.LogLevel - 3, // 75: inventory.v1.AddNodeExporterResponse.node_exporter:type_name -> inventory.v1.NodeExporter - 16, // 76: inventory.v1.ChangeNodeExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 3, // 77: inventory.v1.ChangeNodeExporterResponse.node_exporter:type_name -> inventory.v1.NodeExporter - 96, // 78: inventory.v1.AddMySQLdExporterRequest.custom_labels:type_name -> inventory.v1.AddMySQLdExporterRequest.CustomLabelsEntry - 109, // 79: inventory.v1.AddMySQLdExporterRequest.log_level:type_name -> inventory.v1.LogLevel - 4, // 80: inventory.v1.AddMySQLdExporterResponse.mysqld_exporter:type_name -> inventory.v1.MySQLdExporter - 16, // 81: inventory.v1.ChangeMySQLdExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 4, // 82: inventory.v1.ChangeMySQLdExporterResponse.mysqld_exporter:type_name -> inventory.v1.MySQLdExporter - 97, // 83: inventory.v1.AddMongoDBExporterRequest.custom_labels:type_name -> inventory.v1.AddMongoDBExporterRequest.CustomLabelsEntry - 109, // 84: inventory.v1.AddMongoDBExporterRequest.log_level:type_name -> inventory.v1.LogLevel - 5, // 85: inventory.v1.AddMongoDBExporterResponse.mongodb_exporter:type_name -> inventory.v1.MongoDBExporter - 16, // 86: inventory.v1.ChangeMongoDBExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 5, // 87: inventory.v1.ChangeMongoDBExporterResponse.mongodb_exporter:type_name -> inventory.v1.MongoDBExporter - 98, // 88: inventory.v1.AddPostgresExporterRequest.custom_labels:type_name -> inventory.v1.AddPostgresExporterRequest.CustomLabelsEntry - 109, // 89: inventory.v1.AddPostgresExporterRequest.log_level:type_name -> inventory.v1.LogLevel - 6, // 90: inventory.v1.AddPostgresExporterResponse.postgres_exporter:type_name -> inventory.v1.PostgresExporter - 16, // 91: inventory.v1.ChangePostgresExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 6, // 92: inventory.v1.ChangePostgresExporterResponse.postgres_exporter:type_name -> inventory.v1.PostgresExporter - 99, // 93: inventory.v1.AddProxySQLExporterRequest.custom_labels:type_name -> inventory.v1.AddProxySQLExporterRequest.CustomLabelsEntry - 109, // 94: inventory.v1.AddProxySQLExporterRequest.log_level:type_name -> inventory.v1.LogLevel - 7, // 95: inventory.v1.AddProxySQLExporterResponse.proxysql_exporter:type_name -> inventory.v1.ProxySQLExporter - 16, // 96: inventory.v1.ChangeProxySQLExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 7, // 97: inventory.v1.ChangeProxySQLExporterResponse.proxysql_exporter:type_name -> inventory.v1.ProxySQLExporter - 100, // 98: inventory.v1.AddQANMySQLPerfSchemaAgentRequest.custom_labels:type_name -> inventory.v1.AddQANMySQLPerfSchemaAgentRequest.CustomLabelsEntry - 109, // 99: inventory.v1.AddQANMySQLPerfSchemaAgentRequest.log_level:type_name -> inventory.v1.LogLevel - 8, // 100: inventory.v1.AddQANMySQLPerfSchemaAgentResponse.qan_mysql_perfschema_agent:type_name -> inventory.v1.QANMySQLPerfSchemaAgent - 16, // 101: inventory.v1.ChangeQANMySQLPerfSchemaAgentRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 8, // 102: inventory.v1.ChangeQANMySQLPerfSchemaAgentResponse.qan_mysql_perfschema_agent:type_name -> inventory.v1.QANMySQLPerfSchemaAgent - 101, // 103: inventory.v1.AddQANMySQLSlowlogAgentRequest.custom_labels:type_name -> inventory.v1.AddQANMySQLSlowlogAgentRequest.CustomLabelsEntry - 109, // 104: inventory.v1.AddQANMySQLSlowlogAgentRequest.log_level:type_name -> inventory.v1.LogLevel - 9, // 105: inventory.v1.AddQANMySQLSlowlogAgentResponse.qan_mysql_slowlog_agent:type_name -> inventory.v1.QANMySQLSlowlogAgent - 16, // 106: inventory.v1.ChangeQANMySQLSlowlogAgentRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 9, // 107: inventory.v1.ChangeQANMySQLSlowlogAgentResponse.qan_mysql_slowlog_agent:type_name -> inventory.v1.QANMySQLSlowlogAgent - 102, // 108: inventory.v1.AddQANMongoDBProfilerAgentRequest.custom_labels:type_name -> inventory.v1.AddQANMongoDBProfilerAgentRequest.CustomLabelsEntry - 109, // 109: inventory.v1.AddQANMongoDBProfilerAgentRequest.log_level:type_name -> inventory.v1.LogLevel - 10, // 110: inventory.v1.AddQANMongoDBProfilerAgentResponse.qan_mongodb_profiler_agent:type_name -> inventory.v1.QANMongoDBProfilerAgent - 16, // 111: inventory.v1.ChangeQANMongoDBProfilerAgentRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 10, // 112: inventory.v1.ChangeQANMongoDBProfilerAgentResponse.qan_mongodb_profiler_agent:type_name -> inventory.v1.QANMongoDBProfilerAgent - 103, // 113: inventory.v1.AddQANPostgreSQLPgStatementsAgentRequest.custom_labels:type_name -> inventory.v1.AddQANPostgreSQLPgStatementsAgentRequest.CustomLabelsEntry - 109, // 114: inventory.v1.AddQANPostgreSQLPgStatementsAgentRequest.log_level:type_name -> inventory.v1.LogLevel - 11, // 115: inventory.v1.AddQANPostgreSQLPgStatementsAgentResponse.qan_postgresql_pgstatements_agent:type_name -> inventory.v1.QANPostgreSQLPgStatementsAgent - 16, // 116: inventory.v1.ChangeQANPostgreSQLPgStatementsAgentRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 11, // 117: inventory.v1.ChangeQANPostgreSQLPgStatementsAgentResponse.qan_postgresql_pgstatements_agent:type_name -> inventory.v1.QANPostgreSQLPgStatementsAgent - 104, // 118: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentRequest.custom_labels:type_name -> inventory.v1.AddQANPostgreSQLPgStatMonitorAgentRequest.CustomLabelsEntry - 109, // 119: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentRequest.log_level:type_name -> inventory.v1.LogLevel - 12, // 120: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentResponse.qan_postgresql_pgstatmonitor_agent:type_name -> inventory.v1.QANPostgreSQLPgStatMonitorAgent - 16, // 121: inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 12, // 122: inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentResponse.qan_postgresql_pgstatmonitor_agent:type_name -> inventory.v1.QANPostgreSQLPgStatMonitorAgent - 105, // 123: inventory.v1.AddRDSExporterRequest.custom_labels:type_name -> inventory.v1.AddRDSExporterRequest.CustomLabelsEntry - 109, // 124: inventory.v1.AddRDSExporterRequest.log_level:type_name -> inventory.v1.LogLevel - 13, // 125: inventory.v1.AddRDSExporterResponse.rds_exporter:type_name -> inventory.v1.RDSExporter - 16, // 126: inventory.v1.ChangeRDSExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 13, // 127: inventory.v1.ChangeRDSExporterResponse.rds_exporter:type_name -> inventory.v1.RDSExporter - 106, // 128: inventory.v1.AddExternalExporterRequest.custom_labels:type_name -> inventory.v1.AddExternalExporterRequest.CustomLabelsEntry - 14, // 129: inventory.v1.AddExternalExporterResponse.external_exporter:type_name -> inventory.v1.ExternalExporter - 16, // 130: inventory.v1.ChangeExternalExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 14, // 131: inventory.v1.ChangeExternalExporterResponse.external_exporter:type_name -> inventory.v1.ExternalExporter - 107, // 132: inventory.v1.AddAzureDatabaseExporterRequest.custom_labels:type_name -> inventory.v1.AddAzureDatabaseExporterRequest.CustomLabelsEntry - 109, // 133: inventory.v1.AddAzureDatabaseExporterRequest.log_level:type_name -> inventory.v1.LogLevel - 15, // 134: inventory.v1.AddAzureDatabaseExporterResponse.azure_database_exporter:type_name -> inventory.v1.AzureDatabaseExporter - 16, // 135: inventory.v1.ChangeAzureDatabaseExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 15, // 136: inventory.v1.ChangeAzureDatabaseExporterResponse.azure_database_exporter:type_name -> inventory.v1.AzureDatabaseExporter - 17, // 137: inventory.v1.AgentsService.ListAgents:input_type -> inventory.v1.ListAgentsRequest - 19, // 138: inventory.v1.AgentsService.GetAgent:input_type -> inventory.v1.GetAgentRequest - 21, // 139: inventory.v1.AgentsService.GetAgentLogs:input_type -> inventory.v1.GetAgentLogsRequest - 23, // 140: inventory.v1.AgentsService.AddPMMAgent:input_type -> inventory.v1.AddPMMAgentRequest - 25, // 141: inventory.v1.AgentsService.AddNodeExporter:input_type -> inventory.v1.AddNodeExporterRequest - 27, // 142: inventory.v1.AgentsService.ChangeNodeExporter:input_type -> inventory.v1.ChangeNodeExporterRequest - 29, // 143: inventory.v1.AgentsService.AddMySQLdExporter:input_type -> inventory.v1.AddMySQLdExporterRequest - 31, // 144: inventory.v1.AgentsService.ChangeMySQLdExporter:input_type -> inventory.v1.ChangeMySQLdExporterRequest - 33, // 145: inventory.v1.AgentsService.AddMongoDBExporter:input_type -> inventory.v1.AddMongoDBExporterRequest - 35, // 146: inventory.v1.AgentsService.ChangeMongoDBExporter:input_type -> inventory.v1.ChangeMongoDBExporterRequest - 37, // 147: inventory.v1.AgentsService.AddPostgresExporter:input_type -> inventory.v1.AddPostgresExporterRequest - 39, // 148: inventory.v1.AgentsService.ChangePostgresExporter:input_type -> inventory.v1.ChangePostgresExporterRequest - 41, // 149: inventory.v1.AgentsService.AddProxySQLExporter:input_type -> inventory.v1.AddProxySQLExporterRequest - 43, // 150: inventory.v1.AgentsService.ChangeProxySQLExporter:input_type -> inventory.v1.ChangeProxySQLExporterRequest - 45, // 151: inventory.v1.AgentsService.AddQANMySQLPerfSchemaAgent:input_type -> inventory.v1.AddQANMySQLPerfSchemaAgentRequest - 47, // 152: inventory.v1.AgentsService.ChangeQANMySQLPerfSchemaAgent:input_type -> inventory.v1.ChangeQANMySQLPerfSchemaAgentRequest - 49, // 153: inventory.v1.AgentsService.AddQANMySQLSlowlogAgent:input_type -> inventory.v1.AddQANMySQLSlowlogAgentRequest - 51, // 154: inventory.v1.AgentsService.ChangeQANMySQLSlowlogAgent:input_type -> inventory.v1.ChangeQANMySQLSlowlogAgentRequest - 53, // 155: inventory.v1.AgentsService.AddQANMongoDBProfilerAgent:input_type -> inventory.v1.AddQANMongoDBProfilerAgentRequest - 55, // 156: inventory.v1.AgentsService.ChangeQANMongoDBProfilerAgent:input_type -> inventory.v1.ChangeQANMongoDBProfilerAgentRequest - 57, // 157: inventory.v1.AgentsService.AddQANPostgreSQLPgStatementsAgent:input_type -> inventory.v1.AddQANPostgreSQLPgStatementsAgentRequest - 59, // 158: inventory.v1.AgentsService.ChangeQANPostgreSQLPgStatementsAgent:input_type -> inventory.v1.ChangeQANPostgreSQLPgStatementsAgentRequest - 61, // 159: inventory.v1.AgentsService.AddQANPostgreSQLPgStatMonitorAgent:input_type -> inventory.v1.AddQANPostgreSQLPgStatMonitorAgentRequest - 63, // 160: inventory.v1.AgentsService.ChangeQANPostgreSQLPgStatMonitorAgent:input_type -> inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentRequest - 65, // 161: inventory.v1.AgentsService.AddRDSExporter:input_type -> inventory.v1.AddRDSExporterRequest - 67, // 162: inventory.v1.AgentsService.ChangeRDSExporter:input_type -> inventory.v1.ChangeRDSExporterRequest - 69, // 163: inventory.v1.AgentsService.AddExternalExporter:input_type -> inventory.v1.AddExternalExporterRequest - 71, // 164: inventory.v1.AgentsService.ChangeExternalExporter:input_type -> inventory.v1.ChangeExternalExporterRequest - 73, // 165: inventory.v1.AgentsService.AddAzureDatabaseExporter:input_type -> inventory.v1.AddAzureDatabaseExporterRequest - 75, // 166: inventory.v1.AgentsService.ChangeAzureDatabaseExporter:input_type -> inventory.v1.ChangeAzureDatabaseExporterRequest - 77, // 167: inventory.v1.AgentsService.RemoveAgent:input_type -> inventory.v1.RemoveAgentRequest - 18, // 168: inventory.v1.AgentsService.ListAgents:output_type -> inventory.v1.ListAgentsResponse - 20, // 169: inventory.v1.AgentsService.GetAgent:output_type -> inventory.v1.GetAgentResponse - 22, // 170: inventory.v1.AgentsService.GetAgentLogs:output_type -> inventory.v1.GetAgentLogsResponse - 24, // 171: inventory.v1.AgentsService.AddPMMAgent:output_type -> inventory.v1.AddPMMAgentResponse - 26, // 172: inventory.v1.AgentsService.AddNodeExporter:output_type -> inventory.v1.AddNodeExporterResponse - 28, // 173: inventory.v1.AgentsService.ChangeNodeExporter:output_type -> inventory.v1.ChangeNodeExporterResponse - 30, // 174: inventory.v1.AgentsService.AddMySQLdExporter:output_type -> inventory.v1.AddMySQLdExporterResponse + 27, // 73: inventory.v1.AddExporterRequest.node_exporter:type_name -> inventory.v1.AddNodeExporterParams + 30, // 74: inventory.v1.AddExporterRequest.mysqld_exporter:type_name -> inventory.v1.AddMySQLdExporterParams + 33, // 75: inventory.v1.AddExporterRequest.mongodb_exporter:type_name -> inventory.v1.AddMongoDBExporterParams + 36, // 76: inventory.v1.AddExporterRequest.postgres_exporter:type_name -> inventory.v1.AddPostgresExporterParams + 39, // 77: inventory.v1.AddExporterRequest.proxysql_exporter:type_name -> inventory.v1.AddProxySQLExporterParams + 65, // 78: inventory.v1.AddExporterRequest.external_exporter:type_name -> inventory.v1.AddExternalExporterParams + 62, // 79: inventory.v1.AddExporterRequest.rds_exporter:type_name -> inventory.v1.AddRDSExporterParams + 68, // 80: inventory.v1.AddExporterRequest.azure_database_exporter:type_name -> inventory.v1.AddAzureDatabaseExporterParams + 3, // 81: inventory.v1.AddExporterResponse.node_exporter:type_name -> inventory.v1.NodeExporter + 4, // 82: inventory.v1.AddExporterResponse.mysqld_exporter:type_name -> inventory.v1.MySQLdExporter + 5, // 83: inventory.v1.AddExporterResponse.mongodb_exporter:type_name -> inventory.v1.MongoDBExporter + 6, // 84: inventory.v1.AddExporterResponse.postgres_exporter:type_name -> inventory.v1.PostgresExporter + 7, // 85: inventory.v1.AddExporterResponse.proxysql_exporter:type_name -> inventory.v1.ProxySQLExporter + 14, // 86: inventory.v1.AddExporterResponse.external_exporter:type_name -> inventory.v1.ExternalExporter + 13, // 87: inventory.v1.AddExporterResponse.rds_exporter:type_name -> inventory.v1.RDSExporter + 15, // 88: inventory.v1.AddExporterResponse.azure_database_exporter:type_name -> inventory.v1.AzureDatabaseExporter + 89, // 89: inventory.v1.AddNodeExporterParams.custom_labels:type_name -> inventory.v1.AddNodeExporterParams.CustomLabelsEntry + 103, // 90: inventory.v1.AddNodeExporterParams.log_level:type_name -> inventory.v1.LogLevel + 16, // 91: inventory.v1.ChangeNodeExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams + 3, // 92: inventory.v1.ChangeNodeExporterResponse.node_exporter:type_name -> inventory.v1.NodeExporter + 90, // 93: inventory.v1.AddMySQLdExporterParams.custom_labels:type_name -> inventory.v1.AddMySQLdExporterParams.CustomLabelsEntry + 103, // 94: inventory.v1.AddMySQLdExporterParams.log_level:type_name -> inventory.v1.LogLevel + 16, // 95: inventory.v1.ChangeMySQLdExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams + 4, // 96: inventory.v1.ChangeMySQLdExporterResponse.mysqld_exporter:type_name -> inventory.v1.MySQLdExporter + 91, // 97: inventory.v1.AddMongoDBExporterParams.custom_labels:type_name -> inventory.v1.AddMongoDBExporterParams.CustomLabelsEntry + 103, // 98: inventory.v1.AddMongoDBExporterParams.log_level:type_name -> inventory.v1.LogLevel + 16, // 99: inventory.v1.ChangeMongoDBExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams + 5, // 100: inventory.v1.ChangeMongoDBExporterResponse.mongodb_exporter:type_name -> inventory.v1.MongoDBExporter + 92, // 101: inventory.v1.AddPostgresExporterParams.custom_labels:type_name -> inventory.v1.AddPostgresExporterParams.CustomLabelsEntry + 103, // 102: inventory.v1.AddPostgresExporterParams.log_level:type_name -> inventory.v1.LogLevel + 16, // 103: inventory.v1.ChangePostgresExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams + 6, // 104: inventory.v1.ChangePostgresExporterResponse.postgres_exporter:type_name -> inventory.v1.PostgresExporter + 93, // 105: inventory.v1.AddProxySQLExporterParams.custom_labels:type_name -> inventory.v1.AddProxySQLExporterParams.CustomLabelsEntry + 103, // 106: inventory.v1.AddProxySQLExporterParams.log_level:type_name -> inventory.v1.LogLevel + 16, // 107: inventory.v1.ChangeProxySQLExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams + 7, // 108: inventory.v1.ChangeProxySQLExporterResponse.proxysql_exporter:type_name -> inventory.v1.ProxySQLExporter + 94, // 109: inventory.v1.AddQANMySQLPerfSchemaAgentRequest.custom_labels:type_name -> inventory.v1.AddQANMySQLPerfSchemaAgentRequest.CustomLabelsEntry + 103, // 110: inventory.v1.AddQANMySQLPerfSchemaAgentRequest.log_level:type_name -> inventory.v1.LogLevel + 8, // 111: inventory.v1.AddQANMySQLPerfSchemaAgentResponse.qan_mysql_perfschema_agent:type_name -> inventory.v1.QANMySQLPerfSchemaAgent + 16, // 112: inventory.v1.ChangeQANMySQLPerfSchemaAgentRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams + 8, // 113: inventory.v1.ChangeQANMySQLPerfSchemaAgentResponse.qan_mysql_perfschema_agent:type_name -> inventory.v1.QANMySQLPerfSchemaAgent + 95, // 114: inventory.v1.AddQANMySQLSlowlogAgentRequest.custom_labels:type_name -> inventory.v1.AddQANMySQLSlowlogAgentRequest.CustomLabelsEntry + 103, // 115: inventory.v1.AddQANMySQLSlowlogAgentRequest.log_level:type_name -> inventory.v1.LogLevel + 9, // 116: inventory.v1.AddQANMySQLSlowlogAgentResponse.qan_mysql_slowlog_agent:type_name -> inventory.v1.QANMySQLSlowlogAgent + 16, // 117: inventory.v1.ChangeQANMySQLSlowlogAgentRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams + 9, // 118: inventory.v1.ChangeQANMySQLSlowlogAgentResponse.qan_mysql_slowlog_agent:type_name -> inventory.v1.QANMySQLSlowlogAgent + 96, // 119: inventory.v1.AddQANMongoDBProfilerAgentRequest.custom_labels:type_name -> inventory.v1.AddQANMongoDBProfilerAgentRequest.CustomLabelsEntry + 103, // 120: inventory.v1.AddQANMongoDBProfilerAgentRequest.log_level:type_name -> inventory.v1.LogLevel + 10, // 121: inventory.v1.AddQANMongoDBProfilerAgentResponse.qan_mongodb_profiler_agent:type_name -> inventory.v1.QANMongoDBProfilerAgent + 16, // 122: inventory.v1.ChangeQANMongoDBProfilerAgentRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams + 10, // 123: inventory.v1.ChangeQANMongoDBProfilerAgentResponse.qan_mongodb_profiler_agent:type_name -> inventory.v1.QANMongoDBProfilerAgent + 97, // 124: inventory.v1.AddQANPostgreSQLPgStatementsAgentRequest.custom_labels:type_name -> inventory.v1.AddQANPostgreSQLPgStatementsAgentRequest.CustomLabelsEntry + 103, // 125: inventory.v1.AddQANPostgreSQLPgStatementsAgentRequest.log_level:type_name -> inventory.v1.LogLevel + 11, // 126: inventory.v1.AddQANPostgreSQLPgStatementsAgentResponse.qan_postgresql_pgstatements_agent:type_name -> inventory.v1.QANPostgreSQLPgStatementsAgent + 16, // 127: inventory.v1.ChangeQANPostgreSQLPgStatementsAgentRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams + 11, // 128: inventory.v1.ChangeQANPostgreSQLPgStatementsAgentResponse.qan_postgresql_pgstatements_agent:type_name -> inventory.v1.QANPostgreSQLPgStatementsAgent + 98, // 129: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentRequest.custom_labels:type_name -> inventory.v1.AddQANPostgreSQLPgStatMonitorAgentRequest.CustomLabelsEntry + 103, // 130: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentRequest.log_level:type_name -> inventory.v1.LogLevel + 12, // 131: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentResponse.qan_postgresql_pgstatmonitor_agent:type_name -> inventory.v1.QANPostgreSQLPgStatMonitorAgent + 16, // 132: inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams + 12, // 133: inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentResponse.qan_postgresql_pgstatmonitor_agent:type_name -> inventory.v1.QANPostgreSQLPgStatMonitorAgent + 99, // 134: inventory.v1.AddRDSExporterParams.custom_labels:type_name -> inventory.v1.AddRDSExporterParams.CustomLabelsEntry + 103, // 135: inventory.v1.AddRDSExporterParams.log_level:type_name -> inventory.v1.LogLevel + 16, // 136: inventory.v1.ChangeRDSExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams + 13, // 137: inventory.v1.ChangeRDSExporterResponse.rds_exporter:type_name -> inventory.v1.RDSExporter + 100, // 138: inventory.v1.AddExternalExporterParams.custom_labels:type_name -> inventory.v1.AddExternalExporterParams.CustomLabelsEntry + 16, // 139: inventory.v1.ChangeExternalExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams + 14, // 140: inventory.v1.ChangeExternalExporterResponse.external_exporter:type_name -> inventory.v1.ExternalExporter + 101, // 141: inventory.v1.AddAzureDatabaseExporterParams.custom_labels:type_name -> inventory.v1.AddAzureDatabaseExporterParams.CustomLabelsEntry + 103, // 142: inventory.v1.AddAzureDatabaseExporterParams.log_level:type_name -> inventory.v1.LogLevel + 16, // 143: inventory.v1.ChangeAzureDatabaseExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams + 15, // 144: inventory.v1.ChangeAzureDatabaseExporterResponse.azure_database_exporter:type_name -> inventory.v1.AzureDatabaseExporter + 17, // 145: inventory.v1.AgentsService.ListAgents:input_type -> inventory.v1.ListAgentsRequest + 19, // 146: inventory.v1.AgentsService.GetAgent:input_type -> inventory.v1.GetAgentRequest + 21, // 147: inventory.v1.AgentsService.GetAgentLogs:input_type -> inventory.v1.GetAgentLogsRequest + 23, // 148: inventory.v1.AgentsService.AddPMMAgent:input_type -> inventory.v1.AddPMMAgentRequest + 25, // 149: inventory.v1.AgentsService.AddExporter:input_type -> inventory.v1.AddExporterRequest + 28, // 150: inventory.v1.AgentsService.ChangeNodeExporter:input_type -> inventory.v1.ChangeNodeExporterRequest + 31, // 151: inventory.v1.AgentsService.ChangeMySQLdExporter:input_type -> inventory.v1.ChangeMySQLdExporterRequest + 34, // 152: inventory.v1.AgentsService.ChangeMongoDBExporter:input_type -> inventory.v1.ChangeMongoDBExporterRequest + 37, // 153: inventory.v1.AgentsService.ChangePostgresExporter:input_type -> inventory.v1.ChangePostgresExporterRequest + 40, // 154: inventory.v1.AgentsService.ChangeProxySQLExporter:input_type -> inventory.v1.ChangeProxySQLExporterRequest + 42, // 155: inventory.v1.AgentsService.AddQANMySQLPerfSchemaAgent:input_type -> inventory.v1.AddQANMySQLPerfSchemaAgentRequest + 44, // 156: inventory.v1.AgentsService.ChangeQANMySQLPerfSchemaAgent:input_type -> inventory.v1.ChangeQANMySQLPerfSchemaAgentRequest + 46, // 157: inventory.v1.AgentsService.AddQANMySQLSlowlogAgent:input_type -> inventory.v1.AddQANMySQLSlowlogAgentRequest + 48, // 158: inventory.v1.AgentsService.ChangeQANMySQLSlowlogAgent:input_type -> inventory.v1.ChangeQANMySQLSlowlogAgentRequest + 50, // 159: inventory.v1.AgentsService.AddQANMongoDBProfilerAgent:input_type -> inventory.v1.AddQANMongoDBProfilerAgentRequest + 52, // 160: inventory.v1.AgentsService.ChangeQANMongoDBProfilerAgent:input_type -> inventory.v1.ChangeQANMongoDBProfilerAgentRequest + 54, // 161: inventory.v1.AgentsService.AddQANPostgreSQLPgStatementsAgent:input_type -> inventory.v1.AddQANPostgreSQLPgStatementsAgentRequest + 56, // 162: inventory.v1.AgentsService.ChangeQANPostgreSQLPgStatementsAgent:input_type -> inventory.v1.ChangeQANPostgreSQLPgStatementsAgentRequest + 58, // 163: inventory.v1.AgentsService.AddQANPostgreSQLPgStatMonitorAgent:input_type -> inventory.v1.AddQANPostgreSQLPgStatMonitorAgentRequest + 60, // 164: inventory.v1.AgentsService.ChangeQANPostgreSQLPgStatMonitorAgent:input_type -> inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentRequest + 63, // 165: inventory.v1.AgentsService.ChangeRDSExporter:input_type -> inventory.v1.ChangeRDSExporterRequest + 66, // 166: inventory.v1.AgentsService.ChangeExternalExporter:input_type -> inventory.v1.ChangeExternalExporterRequest + 69, // 167: inventory.v1.AgentsService.ChangeAzureDatabaseExporter:input_type -> inventory.v1.ChangeAzureDatabaseExporterRequest + 71, // 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 + 24, // 172: inventory.v1.AgentsService.AddPMMAgent:output_type -> inventory.v1.AddPMMAgentResponse + 26, // 173: inventory.v1.AgentsService.AddExporter:output_type -> inventory.v1.AddExporterResponse + 29, // 174: inventory.v1.AgentsService.ChangeNodeExporter:output_type -> inventory.v1.ChangeNodeExporterResponse 32, // 175: inventory.v1.AgentsService.ChangeMySQLdExporter:output_type -> inventory.v1.ChangeMySQLdExporterResponse - 34, // 176: inventory.v1.AgentsService.AddMongoDBExporter:output_type -> inventory.v1.AddMongoDBExporterResponse - 36, // 177: inventory.v1.AgentsService.ChangeMongoDBExporter:output_type -> inventory.v1.ChangeMongoDBExporterResponse - 38, // 178: inventory.v1.AgentsService.AddPostgresExporter:output_type -> inventory.v1.AddPostgresExporterResponse - 40, // 179: inventory.v1.AgentsService.ChangePostgresExporter:output_type -> inventory.v1.ChangePostgresExporterResponse - 42, // 180: inventory.v1.AgentsService.AddProxySQLExporter:output_type -> inventory.v1.AddProxySQLExporterResponse - 44, // 181: inventory.v1.AgentsService.ChangeProxySQLExporter:output_type -> inventory.v1.ChangeProxySQLExporterResponse - 46, // 182: inventory.v1.AgentsService.AddQANMySQLPerfSchemaAgent:output_type -> inventory.v1.AddQANMySQLPerfSchemaAgentResponse - 48, // 183: inventory.v1.AgentsService.ChangeQANMySQLPerfSchemaAgent:output_type -> inventory.v1.ChangeQANMySQLPerfSchemaAgentResponse - 50, // 184: inventory.v1.AgentsService.AddQANMySQLSlowlogAgent:output_type -> inventory.v1.AddQANMySQLSlowlogAgentResponse - 52, // 185: inventory.v1.AgentsService.ChangeQANMySQLSlowlogAgent:output_type -> inventory.v1.ChangeQANMySQLSlowlogAgentResponse - 54, // 186: inventory.v1.AgentsService.AddQANMongoDBProfilerAgent:output_type -> inventory.v1.AddQANMongoDBProfilerAgentResponse - 56, // 187: inventory.v1.AgentsService.ChangeQANMongoDBProfilerAgent:output_type -> inventory.v1.ChangeQANMongoDBProfilerAgentResponse - 58, // 188: inventory.v1.AgentsService.AddQANPostgreSQLPgStatementsAgent:output_type -> inventory.v1.AddQANPostgreSQLPgStatementsAgentResponse - 60, // 189: inventory.v1.AgentsService.ChangeQANPostgreSQLPgStatementsAgent:output_type -> inventory.v1.ChangeQANPostgreSQLPgStatementsAgentResponse - 62, // 190: inventory.v1.AgentsService.AddQANPostgreSQLPgStatMonitorAgent:output_type -> inventory.v1.AddQANPostgreSQLPgStatMonitorAgentResponse - 64, // 191: inventory.v1.AgentsService.ChangeQANPostgreSQLPgStatMonitorAgent:output_type -> inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentResponse - 66, // 192: inventory.v1.AgentsService.AddRDSExporter:output_type -> inventory.v1.AddRDSExporterResponse - 68, // 193: inventory.v1.AgentsService.ChangeRDSExporter:output_type -> inventory.v1.ChangeRDSExporterResponse - 70, // 194: inventory.v1.AgentsService.AddExternalExporter:output_type -> inventory.v1.AddExternalExporterResponse - 72, // 195: inventory.v1.AgentsService.ChangeExternalExporter:output_type -> inventory.v1.ChangeExternalExporterResponse - 74, // 196: inventory.v1.AgentsService.AddAzureDatabaseExporter:output_type -> inventory.v1.AddAzureDatabaseExporterResponse - 76, // 197: inventory.v1.AgentsService.ChangeAzureDatabaseExporter:output_type -> inventory.v1.ChangeAzureDatabaseExporterResponse - 78, // 198: inventory.v1.AgentsService.RemoveAgent:output_type -> inventory.v1.RemoveAgentResponse - 168, // [168:199] is the sub-list for method output_type - 137, // [137:168] is the sub-list for method input_type - 137, // [137:137] is the sub-list for extension type_name - 137, // [137:137] is the sub-list for extension extendee - 0, // [0:137] is the sub-list for field type_name + 35, // 176: inventory.v1.AgentsService.ChangeMongoDBExporter:output_type -> inventory.v1.ChangeMongoDBExporterResponse + 38, // 177: inventory.v1.AgentsService.ChangePostgresExporter:output_type -> inventory.v1.ChangePostgresExporterResponse + 41, // 178: inventory.v1.AgentsService.ChangeProxySQLExporter:output_type -> inventory.v1.ChangeProxySQLExporterResponse + 43, // 179: inventory.v1.AgentsService.AddQANMySQLPerfSchemaAgent:output_type -> inventory.v1.AddQANMySQLPerfSchemaAgentResponse + 45, // 180: inventory.v1.AgentsService.ChangeQANMySQLPerfSchemaAgent:output_type -> inventory.v1.ChangeQANMySQLPerfSchemaAgentResponse + 47, // 181: inventory.v1.AgentsService.AddQANMySQLSlowlogAgent:output_type -> inventory.v1.AddQANMySQLSlowlogAgentResponse + 49, // 182: inventory.v1.AgentsService.ChangeQANMySQLSlowlogAgent:output_type -> inventory.v1.ChangeQANMySQLSlowlogAgentResponse + 51, // 183: inventory.v1.AgentsService.AddQANMongoDBProfilerAgent:output_type -> inventory.v1.AddQANMongoDBProfilerAgentResponse + 53, // 184: inventory.v1.AgentsService.ChangeQANMongoDBProfilerAgent:output_type -> inventory.v1.ChangeQANMongoDBProfilerAgentResponse + 55, // 185: inventory.v1.AgentsService.AddQANPostgreSQLPgStatementsAgent:output_type -> inventory.v1.AddQANPostgreSQLPgStatementsAgentResponse + 57, // 186: inventory.v1.AgentsService.ChangeQANPostgreSQLPgStatementsAgent:output_type -> inventory.v1.ChangeQANPostgreSQLPgStatementsAgentResponse + 59, // 187: inventory.v1.AgentsService.AddQANPostgreSQLPgStatMonitorAgent:output_type -> inventory.v1.AddQANPostgreSQLPgStatMonitorAgentResponse + 61, // 188: inventory.v1.AgentsService.ChangeQANPostgreSQLPgStatMonitorAgent:output_type -> inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentResponse + 64, // 189: inventory.v1.AgentsService.ChangeRDSExporter:output_type -> inventory.v1.ChangeRDSExporterResponse + 67, // 190: inventory.v1.AgentsService.ChangeExternalExporter:output_type -> inventory.v1.ChangeExternalExporterResponse + 70, // 191: inventory.v1.AgentsService.ChangeAzureDatabaseExporter:output_type -> inventory.v1.ChangeAzureDatabaseExporterResponse + 72, // 192: inventory.v1.AgentsService.RemoveAgent:output_type -> inventory.v1.RemoveAgentResponse + 169, // [169:193] is the sub-list for method output_type + 145, // [145:169] is the sub-list for method input_type + 145, // [145:145] is the sub-list for extension type_name + 145, // [145:145] is the sub-list for extension extendee + 0, // [0:145] is the sub-list for field type_name } func init() { file_inventory_v1_agents_proto_init() } @@ -10447,7 +10326,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.(*AddNodeExporterRequest); i { + switch v := v.(*AddExporterRequest); i { case 0: return &v.state case 1: @@ -10459,7 +10338,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.(*AddNodeExporterResponse); i { + switch v := v.(*AddExporterResponse); i { case 0: return &v.state case 1: @@ -10471,7 +10350,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.(*AddNodeExporterParams); i { case 0: return &v.state case 1: @@ -10483,7 +10362,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.(*ChangeNodeExporterRequest); i { case 0: return &v.state case 1: @@ -10495,7 +10374,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.(*AddMySQLdExporterRequest); i { + switch v := v.(*ChangeNodeExporterResponse); i { case 0: return &v.state case 1: @@ -10507,7 +10386,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.(*AddMySQLdExporterResponse); i { + switch v := v.(*AddMySQLdExporterParams); i { case 0: return &v.state case 1: @@ -10543,7 +10422,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.(*AddMongoDBExporterRequest); i { + switch v := v.(*AddMongoDBExporterParams); i { case 0: return &v.state case 1: @@ -10555,7 +10434,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.(*AddMongoDBExporterResponse); i { + switch v := v.(*ChangeMongoDBExporterRequest); i { case 0: return &v.state case 1: @@ -10567,7 +10446,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.(*ChangeMongoDBExporterRequest); i { + switch v := v.(*ChangeMongoDBExporterResponse); i { case 0: return &v.state case 1: @@ -10579,7 +10458,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.(*ChangeMongoDBExporterResponse); i { + switch v := v.(*AddPostgresExporterParams); i { case 0: return &v.state case 1: @@ -10591,7 +10470,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.(*AddPostgresExporterRequest); i { + switch v := v.(*ChangePostgresExporterRequest); i { case 0: return &v.state case 1: @@ -10603,7 +10482,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.(*AddPostgresExporterResponse); i { + switch v := v.(*ChangePostgresExporterResponse); i { case 0: return &v.state case 1: @@ -10615,7 +10494,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.(*ChangePostgresExporterRequest); i { + switch v := v.(*AddProxySQLExporterParams); i { case 0: return &v.state case 1: @@ -10627,7 +10506,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.(*ChangePostgresExporterResponse); i { + switch v := v.(*ChangeProxySQLExporterRequest); i { case 0: return &v.state case 1: @@ -10639,7 +10518,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.(*AddProxySQLExporterRequest); i { + switch v := v.(*ChangeProxySQLExporterResponse); i { case 0: return &v.state case 1: @@ -10651,7 +10530,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.(*AddProxySQLExporterResponse); i { + switch v := v.(*AddQANMySQLPerfSchemaAgentRequest); i { case 0: return &v.state case 1: @@ -10663,7 +10542,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.(*ChangeProxySQLExporterRequest); i { + switch v := v.(*AddQANMySQLPerfSchemaAgentResponse); i { case 0: return &v.state case 1: @@ -10675,7 +10554,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.(*ChangeProxySQLExporterResponse); i { + switch v := v.(*ChangeQANMySQLPerfSchemaAgentRequest); i { case 0: return &v.state case 1: @@ -10687,7 +10566,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.(*AddQANMySQLPerfSchemaAgentRequest); i { + switch v := v.(*ChangeQANMySQLPerfSchemaAgentResponse); i { case 0: return &v.state case 1: @@ -10699,7 +10578,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.(*AddQANMySQLPerfSchemaAgentResponse); i { + switch v := v.(*AddQANMySQLSlowlogAgentRequest); i { case 0: return &v.state case 1: @@ -10711,7 +10590,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.(*ChangeQANMySQLPerfSchemaAgentRequest); i { + switch v := v.(*AddQANMySQLSlowlogAgentResponse); i { case 0: return &v.state case 1: @@ -10723,7 +10602,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.(*ChangeQANMySQLPerfSchemaAgentResponse); i { + switch v := v.(*ChangeQANMySQLSlowlogAgentRequest); i { case 0: return &v.state case 1: @@ -10735,7 +10614,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.(*AddQANMySQLSlowlogAgentRequest); i { + switch v := v.(*ChangeQANMySQLSlowlogAgentResponse); i { case 0: return &v.state case 1: @@ -10747,7 +10626,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.(*AddQANMySQLSlowlogAgentResponse); i { + switch v := v.(*AddQANMongoDBProfilerAgentRequest); i { case 0: return &v.state case 1: @@ -10759,7 +10638,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.(*ChangeQANMySQLSlowlogAgentRequest); i { + switch v := v.(*AddQANMongoDBProfilerAgentResponse); i { case 0: return &v.state case 1: @@ -10771,7 +10650,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.(*ChangeQANMySQLSlowlogAgentResponse); i { + switch v := v.(*ChangeQANMongoDBProfilerAgentRequest); i { case 0: return &v.state case 1: @@ -10783,7 +10662,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.(*AddQANMongoDBProfilerAgentRequest); i { + switch v := v.(*ChangeQANMongoDBProfilerAgentResponse); i { case 0: return &v.state case 1: @@ -10795,7 +10674,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddQANMongoDBProfilerAgentResponse); i { + switch v := v.(*AddQANPostgreSQLPgStatementsAgentRequest); i { case 0: return &v.state case 1: @@ -10807,7 +10686,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeQANMongoDBProfilerAgentRequest); i { + switch v := v.(*AddQANPostgreSQLPgStatementsAgentResponse); i { case 0: return &v.state case 1: @@ -10819,7 +10698,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeQANMongoDBProfilerAgentResponse); i { + switch v := v.(*ChangeQANPostgreSQLPgStatementsAgentRequest); i { case 0: return &v.state case 1: @@ -10831,7 +10710,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddQANPostgreSQLPgStatementsAgentRequest); i { + switch v := v.(*ChangeQANPostgreSQLPgStatementsAgentResponse); i { case 0: return &v.state case 1: @@ -10843,7 +10722,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddQANPostgreSQLPgStatementsAgentResponse); i { + switch v := v.(*AddQANPostgreSQLPgStatMonitorAgentRequest); i { case 0: return &v.state case 1: @@ -10855,7 +10734,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeQANPostgreSQLPgStatementsAgentRequest); i { + switch v := v.(*AddQANPostgreSQLPgStatMonitorAgentResponse); i { case 0: return &v.state case 1: @@ -10867,7 +10746,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeQANPostgreSQLPgStatementsAgentResponse); i { + switch v := v.(*ChangeQANPostgreSQLPgStatMonitorAgentRequest); i { case 0: return &v.state case 1: @@ -10879,7 +10758,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddQANPostgreSQLPgStatMonitorAgentRequest); i { + switch v := v.(*ChangeQANPostgreSQLPgStatMonitorAgentResponse); i { case 0: return &v.state case 1: @@ -10891,7 +10770,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddQANPostgreSQLPgStatMonitorAgentResponse); i { + switch v := v.(*AddRDSExporterParams); i { case 0: return &v.state case 1: @@ -10903,7 +10782,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeQANPostgreSQLPgStatMonitorAgentRequest); i { + switch v := v.(*ChangeRDSExporterRequest); i { case 0: return &v.state case 1: @@ -10915,7 +10794,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeQANPostgreSQLPgStatMonitorAgentResponse); i { + switch v := v.(*ChangeRDSExporterResponse); i { case 0: return &v.state case 1: @@ -10927,7 +10806,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddRDSExporterRequest); i { + switch v := v.(*AddExternalExporterParams); i { case 0: return &v.state case 1: @@ -10939,7 +10818,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddRDSExporterResponse); i { + switch v := v.(*ChangeExternalExporterRequest); i { case 0: return &v.state case 1: @@ -10951,7 +10830,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeRDSExporterRequest); i { + switch v := v.(*ChangeExternalExporterResponse); i { case 0: return &v.state case 1: @@ -10963,7 +10842,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeRDSExporterResponse); i { + switch v := v.(*AddAzureDatabaseExporterParams); i { case 0: return &v.state case 1: @@ -10975,78 +10854,6 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddExternalExporterRequest); 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[69].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddExternalExporterResponse); 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[70].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[71].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[72].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddAzureDatabaseExporterRequest); 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[73].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*AddAzureDatabaseExporterResponse); 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[74].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChangeAzureDatabaseExporterRequest); i { case 0: return &v.state @@ -11058,7 +10865,7 @@ func file_inventory_v1_agents_proto_init() { return nil } } - file_inventory_v1_agents_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { + file_inventory_v1_agents_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChangeAzureDatabaseExporterResponse); i { case 0: return &v.state @@ -11070,7 +10877,7 @@ func file_inventory_v1_agents_proto_init() { return nil } } - file_inventory_v1_agents_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { + file_inventory_v1_agents_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveAgentRequest); i { case 0: return &v.state @@ -11082,7 +10889,7 @@ func file_inventory_v1_agents_proto_init() { return nil } } - file_inventory_v1_agents_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { + file_inventory_v1_agents_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveAgentResponse); i { case 0: return &v.state @@ -11108,17 +10915,37 @@ func file_inventory_v1_agents_proto_init() { (*GetAgentResponse_QanMongodbProfilerAgent)(nil), (*GetAgentResponse_QanPostgresqlPgstatementsAgent)(nil), (*GetAgentResponse_QanPostgresqlPgstatmonitorAgent)(nil), - (*GetAgentResponse_RdsExporter)(nil), (*GetAgentResponse_ExternalExporter)(nil), + (*GetAgentResponse_RdsExporter)(nil), (*GetAgentResponse_AzureDatabaseExporter)(nil), } + file_inventory_v1_agents_proto_msgTypes[24].OneofWrappers = []interface{}{ + (*AddExporterRequest_NodeExporter)(nil), + (*AddExporterRequest_MysqldExporter)(nil), + (*AddExporterRequest_MongodbExporter)(nil), + (*AddExporterRequest_PostgresExporter)(nil), + (*AddExporterRequest_ProxysqlExporter)(nil), + (*AddExporterRequest_ExternalExporter)(nil), + (*AddExporterRequest_RdsExporter)(nil), + (*AddExporterRequest_AzureDatabaseExporter)(nil), + } + file_inventory_v1_agents_proto_msgTypes[25].OneofWrappers = []interface{}{ + (*AddExporterResponse_NodeExporter)(nil), + (*AddExporterResponse_MysqldExporter)(nil), + (*AddExporterResponse_MongodbExporter)(nil), + (*AddExporterResponse_PostgresExporter)(nil), + (*AddExporterResponse_ProxysqlExporter)(nil), + (*AddExporterResponse_ExternalExporter)(nil), + (*AddExporterResponse_RdsExporter)(nil), + (*AddExporterResponse_AzureDatabaseExporter)(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: 107, + NumMessages: 101, NumExtensions: 0, NumServices: 1, }, diff --git a/api/inventory/v1/agents.pb.gw.go b/api/inventory/v1/agents.pb.gw.go index 544e12966a..2faa4aa935 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_AddPMMAgent_0(ctx context.Context, marshaler ru return msg, metadata, err } -func request_AgentsService_AddNodeExporter_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddNodeExporterRequest +func request_AgentsService_AddExporter_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq AddExporterRequest var metadata runtime.ServerMetadata newReader, berr := utilities.IOReaderFactory(req.Body) @@ -173,12 +173,12 @@ func request_AgentsService_AddNodeExporter_0(ctx context.Context, marshaler runt return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.AddNodeExporter(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.AddExporter(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func local_request_AgentsService_AddNodeExporter_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddNodeExporterRequest +func local_request_AgentsService_AddExporter_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq AddExporterRequest var metadata runtime.ServerMetadata newReader, berr := utilities.IOReaderFactory(req.Body) @@ -189,7 +189,7 @@ func local_request_AgentsService_AddNodeExporter_0(ctx context.Context, marshale return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := server.AddNodeExporter(ctx, &protoReq) + msg, err := server.AddExporter(ctx, &protoReq) return msg, metadata, err } @@ -225,38 +225,6 @@ func local_request_AgentsService_ChangeNodeExporter_0(ctx context.Context, marsh return msg, metadata, err } -func request_AgentsService_AddMySQLdExporter_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddMySQLdExporterRequest - 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.AddMySQLdExporter(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_AddMySQLdExporter_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddMySQLdExporterRequest - 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.AddMySQLdExporter(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 @@ -289,38 +257,6 @@ func local_request_AgentsService_ChangeMySQLdExporter_0(ctx context.Context, mar return msg, metadata, err } -func request_AgentsService_AddMongoDBExporter_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddMongoDBExporterRequest - 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.AddMongoDBExporter(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_AddMongoDBExporter_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddMongoDBExporterRequest - 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.AddMongoDBExporter(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 @@ -353,38 +289,6 @@ func local_request_AgentsService_ChangeMongoDBExporter_0(ctx context.Context, ma return msg, metadata, err } -func request_AgentsService_AddPostgresExporter_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddPostgresExporterRequest - 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.AddPostgresExporter(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_AddPostgresExporter_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddPostgresExporterRequest - 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.AddPostgresExporter(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 @@ -417,38 +321,6 @@ func local_request_AgentsService_ChangePostgresExporter_0(ctx context.Context, m return msg, metadata, err } -func request_AgentsService_AddProxySQLExporter_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddProxySQLExporterRequest - 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.AddProxySQLExporter(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_AddProxySQLExporter_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddProxySQLExporterRequest - 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.AddProxySQLExporter(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 @@ -801,38 +673,6 @@ func local_request_AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_0(ctx con return msg, metadata, err } -func request_AgentsService_AddRDSExporter_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddRDSExporterRequest - 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.AddRDSExporter(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_AddRDSExporter_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddRDSExporterRequest - 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.AddRDSExporter(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 @@ -865,38 +705,6 @@ func local_request_AgentsService_ChangeRDSExporter_0(ctx context.Context, marsha return msg, metadata, err } -func request_AgentsService_AddExternalExporter_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddExternalExporterRequest - 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.AddExternalExporter(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_AddExternalExporter_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddExternalExporterRequest - 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.AddExternalExporter(ctx, &protoReq) - 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 var metadata runtime.ServerMetadata @@ -929,38 +737,6 @@ func local_request_AgentsService_ChangeExternalExporter_0(ctx context.Context, m return msg, metadata, err } -func request_AgentsService_AddAzureDatabaseExporter_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddAzureDatabaseExporterRequest - 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.AddAzureDatabaseExporter(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_AddAzureDatabaseExporter_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddAzureDatabaseExporterRequest - 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.AddAzureDatabaseExporter(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 @@ -1126,7 +902,7 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM forward_AgentsService_AddPMMAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddNodeExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_AgentsService_AddExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() var stream runtime.ServerTransportStream @@ -1134,12 +910,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/AddNodeExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddNodeExporter")) + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/AddExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddExporter")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_AgentsService_AddNodeExporter_0(annotatedContext, inboundMarshaler, server, req, pathParams) + resp, md, err := local_request_AgentsService_AddExporter_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 { @@ -1147,7 +923,7 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM return } - forward_AgentsService_AddNodeExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_AgentsService_AddExporter_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) { @@ -1174,30 +950,6 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeNodeExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddMySQLdExporter_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/AddMySQLdExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddMySQLdExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_AddMySQLdExporter_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_AddMySQLdExporter_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() @@ -1222,30 +974,6 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeMySQLdExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddMongoDBExporter_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/AddMongoDBExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddMongoDBExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_AddMongoDBExporter_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_AddMongoDBExporter_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() @@ -1270,30 +998,6 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeMongoDBExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddPostgresExporter_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/AddPostgresExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddPostgresExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_AddPostgresExporter_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_AddPostgresExporter_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() @@ -1318,30 +1022,6 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangePostgresExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddProxySQLExporter_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/AddProxySQLExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddProxySQLExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_AddProxySQLExporter_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_AddProxySQLExporter_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() @@ -1606,30 +1286,6 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddRDSExporter_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/AddRDSExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddRDSExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_AddRDSExporter_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_AddRDSExporter_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() @@ -1654,30 +1310,6 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeRDSExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddExternalExporter_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/AddExternalExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddExternalExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_AddExternalExporter_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_AddExternalExporter_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() @@ -1702,30 +1334,6 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeExternalExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddAzureDatabaseExporter_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/AddAzureDatabaseExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddAzureDatabaseExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_AddAzureDatabaseExporter_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_AddAzureDatabaseExporter_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) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -1898,25 +1506,25 @@ func RegisterAgentsServiceHandlerClient(ctx context.Context, mux *runtime.ServeM forward_AgentsService_AddPMMAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddNodeExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + mux.Handle("POST", pattern_AgentsService_AddExporter_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/AddNodeExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddNodeExporter")) + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/inventory.v1.AgentsService/AddExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddExporter")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_AgentsService_AddNodeExporter_0(annotatedContext, inboundMarshaler, client, req, pathParams) + resp, md, err := request_AgentsService_AddExporter_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_AddNodeExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + forward_AgentsService_AddExporter_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) { @@ -1940,27 +1548,6 @@ func RegisterAgentsServiceHandlerClient(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeNodeExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddMySQLdExporter_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/AddMySQLdExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddMySQLdExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_AddMySQLdExporter_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_AddMySQLdExporter_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() @@ -1982,27 +1569,6 @@ func RegisterAgentsServiceHandlerClient(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeMySQLdExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddMongoDBExporter_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/AddMongoDBExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddMongoDBExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_AddMongoDBExporter_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_AddMongoDBExporter_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() @@ -2024,27 +1590,6 @@ func RegisterAgentsServiceHandlerClient(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeMongoDBExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddPostgresExporter_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/AddPostgresExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddPostgresExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_AddPostgresExporter_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_AddPostgresExporter_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() @@ -2066,27 +1611,6 @@ func RegisterAgentsServiceHandlerClient(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangePostgresExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddProxySQLExporter_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/AddProxySQLExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddProxySQLExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_AddProxySQLExporter_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_AddProxySQLExporter_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() @@ -2318,27 +1842,6 @@ func RegisterAgentsServiceHandlerClient(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddRDSExporter_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/AddRDSExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddRDSExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_AddRDSExporter_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_AddRDSExporter_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() @@ -2360,27 +1863,6 @@ func RegisterAgentsServiceHandlerClient(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeRDSExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddExternalExporter_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/AddExternalExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddExternalExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_AddExternalExporter_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_AddExternalExporter_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() @@ -2402,27 +1884,6 @@ func RegisterAgentsServiceHandlerClient(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeExternalExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddAzureDatabaseExporter_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/AddAzureDatabaseExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddAzureDatabaseExporter")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_AddAzureDatabaseExporter_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_AddAzureDatabaseExporter_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) { ctx, cancel := context.WithCancel(req.Context()) defer cancel() @@ -2477,24 +1938,16 @@ var ( pattern_AgentsService_AddPMMAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddPMMAgent"}, "")) - pattern_AgentsService_AddNodeExporter_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddNodeExporter"}, "")) + pattern_AgentsService_AddExporter_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddExporter"}, "")) 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_AddMySQLdExporter_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddMySQLdExporter"}, "")) - 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_AddMongoDBExporter_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddMongoDBExporter"}, "")) - 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_AddPostgresExporter_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddPostgresExporter"}, "")) - 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_AddProxySQLExporter_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddProxySQLExporter"}, "")) - 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_AddQANMySQLPerfSchemaAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddQANMySQLPerfSchemaAgent"}, "")) @@ -2517,16 +1970,10 @@ var ( 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_AddRDSExporter_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddRDSExporter"}, "")) - 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_AddExternalExporter_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddExternalExporter"}, "")) - 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_AddAzureDatabaseExporter_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddAzureDatabaseExporter"}, "")) - 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_RemoveAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "Remove"}, "")) @@ -2541,24 +1988,16 @@ var ( forward_AgentsService_AddPMMAgent_0 = runtime.ForwardResponseMessage - forward_AgentsService_AddNodeExporter_0 = runtime.ForwardResponseMessage + forward_AgentsService_AddExporter_0 = runtime.ForwardResponseMessage forward_AgentsService_ChangeNodeExporter_0 = runtime.ForwardResponseMessage - forward_AgentsService_AddMySQLdExporter_0 = runtime.ForwardResponseMessage - forward_AgentsService_ChangeMySQLdExporter_0 = runtime.ForwardResponseMessage - forward_AgentsService_AddMongoDBExporter_0 = runtime.ForwardResponseMessage - forward_AgentsService_ChangeMongoDBExporter_0 = runtime.ForwardResponseMessage - forward_AgentsService_AddPostgresExporter_0 = runtime.ForwardResponseMessage - forward_AgentsService_ChangePostgresExporter_0 = runtime.ForwardResponseMessage - forward_AgentsService_AddProxySQLExporter_0 = runtime.ForwardResponseMessage - forward_AgentsService_ChangeProxySQLExporter_0 = runtime.ForwardResponseMessage forward_AgentsService_AddQANMySQLPerfSchemaAgent_0 = runtime.ForwardResponseMessage @@ -2581,16 +2020,10 @@ var ( forward_AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_0 = runtime.ForwardResponseMessage - forward_AgentsService_AddRDSExporter_0 = runtime.ForwardResponseMessage - forward_AgentsService_ChangeRDSExporter_0 = runtime.ForwardResponseMessage - forward_AgentsService_AddExternalExporter_0 = runtime.ForwardResponseMessage - forward_AgentsService_ChangeExternalExporter_0 = runtime.ForwardResponseMessage - forward_AgentsService_AddAzureDatabaseExporter_0 = runtime.ForwardResponseMessage - forward_AgentsService_ChangeAzureDatabaseExporter_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 b3d8950dbd..13c2ff1936 100644 --- a/api/inventory/v1/agents.pb.validate.go +++ b/api/inventory/v1/agents.pb.validate.go @@ -3396,7 +3396,7 @@ func (m *GetAgentResponse) validate(all bool) error { } } - case *GetAgentResponse_RdsExporter: + case *GetAgentResponse_ExternalExporter: if v == nil { err := GetAgentResponseValidationError{ field: "Agent", @@ -3409,11 +3409,11 @@ func (m *GetAgentResponse) validate(all bool) error { } if all { - switch v := interface{}(m.GetRdsExporter()).(type) { + switch v := interface{}(m.GetExternalExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { errors = append(errors, GetAgentResponseValidationError{ - field: "RdsExporter", + field: "ExternalExporter", reason: "embedded message failed validation", cause: err, }) @@ -3421,23 +3421,23 @@ func (m *GetAgentResponse) validate(all bool) error { case interface{ Validate() error }: if err := v.Validate(); err != nil { errors = append(errors, GetAgentResponseValidationError{ - field: "RdsExporter", + field: "ExternalExporter", reason: "embedded message failed validation", cause: err, }) } } - } else if v, ok := interface{}(m.GetRdsExporter()).(interface{ Validate() error }); ok { + } else if v, ok := interface{}(m.GetExternalExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { return GetAgentResponseValidationError{ - field: "RdsExporter", + field: "ExternalExporter", reason: "embedded message failed validation", cause: err, } } } - case *GetAgentResponse_ExternalExporter: + case *GetAgentResponse_RdsExporter: if v == nil { err := GetAgentResponseValidationError{ field: "Agent", @@ -3450,11 +3450,11 @@ func (m *GetAgentResponse) validate(all bool) error { } if all { - switch v := interface{}(m.GetExternalExporter()).(type) { + switch v := interface{}(m.GetRdsExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { errors = append(errors, GetAgentResponseValidationError{ - field: "ExternalExporter", + field: "RdsExporter", reason: "embedded message failed validation", cause: err, }) @@ -3462,16 +3462,16 @@ func (m *GetAgentResponse) validate(all bool) error { case interface{ Validate() error }: if err := v.Validate(); err != nil { errors = append(errors, GetAgentResponseValidationError{ - field: "ExternalExporter", + field: "RdsExporter", reason: "embedded message failed validation", cause: err, }) } } - } else if v, ok := interface{}(m.GetExternalExporter()).(interface{ Validate() error }); ok { + } else if v, ok := interface{}(m.GetRdsExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { return GetAgentResponseValidationError{ - field: "ExternalExporter", + field: "RdsExporter", reason: "embedded message failed validation", cause: err, } @@ -4066,230 +4066,971 @@ var _ interface { ErrorName() string } = AddPMMAgentResponseValidationError{} -// Validate checks the field values on AddNodeExporterRequest with the rules +// Validate checks the field values on AddExporterRequest 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 *AddNodeExporterRequest) Validate() error { +func (m *AddExporterRequest) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on AddNodeExporterRequest with the rules +// ValidateAll checks the field values on AddExporterRequest 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 -// AddNodeExporterRequestMultiError, or nil if none found. -func (m *AddNodeExporterRequest) ValidateAll() error { +// AddExporterRequestMultiError, or nil if none found. +func (m *AddExporterRequest) ValidateAll() error { return m.validate(true) } -func (m *AddNodeExporterRequest) validate(all bool) error { +func (m *AddExporterRequest) validate(all bool) error { if m == nil { return nil } var errors []error - if utf8.RuneCountInString(m.GetPmmAgentId()) < 1 { - err := AddNodeExporterRequestValidationError{ - field: "PmmAgentId", - reason: "value length must be at least 1 runes", - } - if !all { - return err + switch v := m.Exporter.(type) { + case *AddExporterRequest_NodeExporter: + if v == nil { + err := AddExporterRequestValidationError{ + field: "Exporter", + 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 AddNodeExporterRequestMultiError(errors) - } - - return nil -} - -// AddNodeExporterRequestMultiError is an error wrapping multiple validation -// errors returned by AddNodeExporterRequest.ValidateAll() if the designated -// constraints aren't met. -type AddNodeExporterRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m AddNodeExporterRequestMultiError) 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 AddNodeExporterRequestMultiError) AllErrors() []error { return m } - -// AddNodeExporterRequestValidationError is the validation error returned by -// AddNodeExporterRequest.Validate if the designated constraints aren't met. -type AddNodeExporterRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e AddNodeExporterRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e AddNodeExporterRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e AddNodeExporterRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e AddNodeExporterRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e AddNodeExporterRequestValidationError) ErrorName() string { - return "AddNodeExporterRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e AddNodeExporterRequestValidationError) 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 %sAddNodeExporterRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = AddNodeExporterRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = AddNodeExporterRequestValidationError{} - -// Validate checks the field values on AddNodeExporterResponse 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 *AddNodeExporterResponse) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on AddNodeExporterResponse 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 -// AddNodeExporterResponseMultiError, or nil if none found. -func (m *AddNodeExporterResponse) ValidateAll() error { - return m.validate(true) -} - -func (m *AddNodeExporterResponse) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - if all { - switch v := interface{}(m.GetNodeExporter()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, AddNodeExporterResponseValidationError{ - field: "NodeExporter", - reason: "embedded message failed validation", - cause: err, - }) + if all { + switch v := interface{}(m.GetNodeExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, AddExporterRequestValidationError{ + field: "NodeExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddExporterRequestValidationError{ + field: "NodeExporter", + reason: "embedded message failed validation", + cause: err, + }) + } } - case interface{ Validate() error }: + } else if v, ok := interface{}(m.GetNodeExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - errors = append(errors, AddNodeExporterResponseValidationError{ + return AddExporterRequestValidationError{ 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 AddNodeExporterResponseValidationError{ - field: "NodeExporter", - reason: "embedded message failed validation", - cause: err, + + case *AddExporterRequest_MysqldExporter: + if v == nil { + err := AddExporterRequestValidationError{ + field: "Exporter", + reason: "oneof value cannot be a typed-nil", } + if !all { + return err + } + errors = append(errors, err) } - } - - if len(errors) > 0 { - return AddNodeExporterResponseMultiError(errors) - } - - return nil -} - -// AddNodeExporterResponseMultiError is an error wrapping multiple validation -// errors returned by AddNodeExporterResponse.ValidateAll() if the designated -// constraints aren't met. -type AddNodeExporterResponseMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m AddNodeExporterResponseMultiError) 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 AddNodeExporterResponseMultiError) AllErrors() []error { return m } + if all { + switch v := interface{}(m.GetMysqldExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, AddExporterRequestValidationError{ + field: "MysqldExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddExporterRequestValidationError{ + 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 AddExporterRequestValidationError{ + field: "MysqldExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } -// AddNodeExporterResponseValidationError is the validation error returned by -// AddNodeExporterResponse.Validate if the designated constraints aren't met. -type AddNodeExporterResponseValidationError struct { - field string - reason string - cause error - key bool -} + case *AddExporterRequest_MongodbExporter: + if v == nil { + err := AddExporterRequestValidationError{ + field: "Exporter", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } -// Field function returns field value. -func (e AddNodeExporterResponseValidationError) Field() string { return e.field } + if all { + switch v := interface{}(m.GetMongodbExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, AddExporterRequestValidationError{ + field: "MongodbExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddExporterRequestValidationError{ + 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 AddExporterRequestValidationError{ + field: "MongodbExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } -// Reason function returns reason value. -func (e AddNodeExporterResponseValidationError) Reason() string { return e.reason } + case *AddExporterRequest_PostgresExporter: + if v == nil { + err := AddExporterRequestValidationError{ + field: "Exporter", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } -// Cause function returns cause value. -func (e AddNodeExporterResponseValidationError) Cause() error { return e.cause } + if all { + switch v := interface{}(m.GetPostgresExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, AddExporterRequestValidationError{ + field: "PostgresExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddExporterRequestValidationError{ + 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 AddExporterRequestValidationError{ + field: "PostgresExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *AddExporterRequest_ProxysqlExporter: + if v == nil { + err := AddExporterRequestValidationError{ + field: "Exporter", + 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, AddExporterRequestValidationError{ + field: "ProxysqlExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddExporterRequestValidationError{ + 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 AddExporterRequestValidationError{ + field: "ProxysqlExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *AddExporterRequest_ExternalExporter: + if v == nil { + err := AddExporterRequestValidationError{ + field: "Exporter", + 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, AddExporterRequestValidationError{ + field: "ExternalExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddExporterRequestValidationError{ + 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 AddExporterRequestValidationError{ + field: "ExternalExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *AddExporterRequest_RdsExporter: + if v == nil { + err := AddExporterRequestValidationError{ + field: "Exporter", + 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, AddExporterRequestValidationError{ + field: "RdsExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddExporterRequestValidationError{ + 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 AddExporterRequestValidationError{ + field: "RdsExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *AddExporterRequest_AzureDatabaseExporter: + if v == nil { + err := AddExporterRequestValidationError{ + field: "Exporter", + 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, AddExporterRequestValidationError{ + field: "AzureDatabaseExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddExporterRequestValidationError{ + 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 AddExporterRequestValidationError{ + field: "AzureDatabaseExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + default: + _ = v // ensures v is used + } + + if len(errors) > 0 { + return AddExporterRequestMultiError(errors) + } + + return nil +} + +// AddExporterRequestMultiError is an error wrapping multiple validation errors +// returned by AddExporterRequest.ValidateAll() if the designated constraints +// aren't met. +type AddExporterRequestMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m AddExporterRequestMultiError) 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 AddExporterRequestMultiError) AllErrors() []error { return m } + +// AddExporterRequestValidationError is the validation error returned by +// AddExporterRequest.Validate if the designated constraints aren't met. +type AddExporterRequestValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e AddExporterRequestValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e AddExporterRequestValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e AddExporterRequestValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e AddExporterRequestValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e AddExporterRequestValidationError) ErrorName() string { + return "AddExporterRequestValidationError" +} + +// Error satisfies the builtin error interface +func (e AddExporterRequestValidationError) 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 %sAddExporterRequest.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = AddExporterRequestValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = AddExporterRequestValidationError{} + +// Validate checks the field values on AddExporterResponse 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 *AddExporterResponse) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on AddExporterResponse 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 +// AddExporterResponseMultiError, or nil if none found. +func (m *AddExporterResponse) ValidateAll() error { + return m.validate(true) +} + +func (m *AddExporterResponse) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for TableCount + + switch v := m.Exporter.(type) { + case *AddExporterResponse_NodeExporter: + if v == nil { + err := AddExporterResponseValidationError{ + field: "Exporter", + 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, AddExporterResponseValidationError{ + field: "NodeExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddExporterResponseValidationError{ + 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 AddExporterResponseValidationError{ + field: "NodeExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *AddExporterResponse_MysqldExporter: + if v == nil { + err := AddExporterResponseValidationError{ + field: "Exporter", + 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, AddExporterResponseValidationError{ + field: "MysqldExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddExporterResponseValidationError{ + 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 AddExporterResponseValidationError{ + field: "MysqldExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *AddExporterResponse_MongodbExporter: + if v == nil { + err := AddExporterResponseValidationError{ + field: "Exporter", + 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, AddExporterResponseValidationError{ + field: "MongodbExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddExporterResponseValidationError{ + 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 AddExporterResponseValidationError{ + field: "MongodbExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *AddExporterResponse_PostgresExporter: + if v == nil { + err := AddExporterResponseValidationError{ + field: "Exporter", + 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, AddExporterResponseValidationError{ + field: "PostgresExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddExporterResponseValidationError{ + 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 AddExporterResponseValidationError{ + field: "PostgresExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *AddExporterResponse_ProxysqlExporter: + if v == nil { + err := AddExporterResponseValidationError{ + field: "Exporter", + 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, AddExporterResponseValidationError{ + field: "ProxysqlExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddExporterResponseValidationError{ + 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 AddExporterResponseValidationError{ + field: "ProxysqlExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *AddExporterResponse_ExternalExporter: + if v == nil { + err := AddExporterResponseValidationError{ + field: "Exporter", + 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, AddExporterResponseValidationError{ + field: "ExternalExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddExporterResponseValidationError{ + 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 AddExporterResponseValidationError{ + field: "ExternalExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *AddExporterResponse_RdsExporter: + if v == nil { + err := AddExporterResponseValidationError{ + field: "Exporter", + 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, AddExporterResponseValidationError{ + field: "RdsExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddExporterResponseValidationError{ + 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 AddExporterResponseValidationError{ + field: "RdsExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *AddExporterResponse_AzureDatabaseExporter: + if v == nil { + err := AddExporterResponseValidationError{ + field: "Exporter", + 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, AddExporterResponseValidationError{ + field: "AzureDatabaseExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddExporterResponseValidationError{ + 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 AddExporterResponseValidationError{ + field: "AzureDatabaseExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + default: + _ = v // ensures v is used + } + + if len(errors) > 0 { + return AddExporterResponseMultiError(errors) + } + + return nil +} + +// AddExporterResponseMultiError is an error wrapping multiple validation +// errors returned by AddExporterResponse.ValidateAll() if the designated +// constraints aren't met. +type AddExporterResponseMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m AddExporterResponseMultiError) 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 AddExporterResponseMultiError) AllErrors() []error { return m } + +// AddExporterResponseValidationError is the validation error returned by +// AddExporterResponse.Validate if the designated constraints aren't met. +type AddExporterResponseValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e AddExporterResponseValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e AddExporterResponseValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e AddExporterResponseValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e AddExporterResponseValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e AddExporterResponseValidationError) ErrorName() string { + return "AddExporterResponseValidationError" +} + +// Error satisfies the builtin error interface +func (e AddExporterResponseValidationError) 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 %sAddExporterResponse.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = AddExporterResponseValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = AddExporterResponseValidationError{} + +// 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", + } + 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 AddNodeExporterParamsMultiError(errors) + } + + return nil +} + +// 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 AddNodeExporterParamsMultiError) 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 } + +// 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 + key bool +} + +// Field function returns field value. +func (e AddNodeExporterParamsValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e AddNodeExporterParamsValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e AddNodeExporterParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e AddNodeExporterResponseValidationError) Key() bool { return e.key } +func (e AddNodeExporterParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e AddNodeExporterResponseValidationError) ErrorName() string { - return "AddNodeExporterResponseValidationError" +func (e AddNodeExporterParamsValidationError) ErrorName() string { + return "AddNodeExporterParamsValidationError" } // Error satisfies the builtin error interface -func (e AddNodeExporterResponseValidationError) Error() string { +func (e AddNodeExporterParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -4301,14 +5042,14 @@ func (e AddNodeExporterResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sAddNodeExporterResponse.%s: %s%s", + "invalid %sAddNodeExporterParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = AddNodeExporterResponseValidationError{} +var _ error = AddNodeExporterParamsValidationError{} var _ interface { Field() string @@ -4316,7 +5057,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = AddNodeExporterResponseValidationError{} +} = AddNodeExporterParamsValidationError{} // Validate checks the field values on ChangeNodeExporterRequest with the rules // defined in the proto definition for this message. If any rules are @@ -4591,22 +5332,22 @@ var _ interface { ErrorName() string } = ChangeNodeExporterResponseValidationError{} -// Validate checks the field values on AddMySQLdExporterRequest with the rules +// Validate checks the field values on AddMySQLdExporterParams 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 *AddMySQLdExporterRequest) Validate() error { +func (m *AddMySQLdExporterParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on AddMySQLdExporterRequest with the +// ValidateAll checks the field values on AddMySQLdExporterParams 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 -// AddMySQLdExporterRequestMultiError, or nil if none found. -func (m *AddMySQLdExporterRequest) ValidateAll() error { +// AddMySQLdExporterParamsMultiError, or nil if none found. +func (m *AddMySQLdExporterParams) ValidateAll() error { return m.validate(true) } -func (m *AddMySQLdExporterRequest) validate(all bool) error { +func (m *AddMySQLdExporterParams) validate(all bool) error { if m == nil { return nil } @@ -4614,7 +5355,7 @@ func (m *AddMySQLdExporterRequest) validate(all bool) error { var errors []error if utf8.RuneCountInString(m.GetPmmAgentId()) < 1 { - err := AddMySQLdExporterRequestValidationError{ + err := AddMySQLdExporterParamsValidationError{ field: "PmmAgentId", reason: "value length must be at least 1 runes", } @@ -4625,7 +5366,7 @@ func (m *AddMySQLdExporterRequest) validate(all bool) error { } if utf8.RuneCountInString(m.GetServiceId()) < 1 { - err := AddMySQLdExporterRequestValidationError{ + err := AddMySQLdExporterParamsValidationError{ field: "ServiceId", reason: "value length must be at least 1 runes", } @@ -4636,7 +5377,7 @@ func (m *AddMySQLdExporterRequest) validate(all bool) error { } if utf8.RuneCountInString(m.GetUsername()) < 1 { - err := AddMySQLdExporterRequestValidationError{ + err := AddMySQLdExporterParamsValidationError{ field: "Username", reason: "value length must be at least 1 runes", } @@ -4658,167 +5399,34 @@ func (m *AddMySQLdExporterRequest) validate(all bool) error { // no validation rules for TlsKey - // no validation rules for TablestatsGroupTableLimit - - // no validation rules for CustomLabels - - // no validation rules for SkipConnectionCheck - - // no validation rules for PushMetrics - - // no validation rules for AgentPassword - - // no validation rules for LogLevel - - // no validation rules for ExposeExporter - - if len(errors) > 0 { - return AddMySQLdExporterRequestMultiError(errors) - } - - return nil -} - -// AddMySQLdExporterRequestMultiError is an error wrapping multiple validation -// errors returned by AddMySQLdExporterRequest.ValidateAll() if the designated -// constraints aren't met. -type AddMySQLdExporterRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m AddMySQLdExporterRequestMultiError) 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 AddMySQLdExporterRequestMultiError) AllErrors() []error { return m } - -// AddMySQLdExporterRequestValidationError is the validation error returned by -// AddMySQLdExporterRequest.Validate if the designated constraints aren't met. -type AddMySQLdExporterRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e AddMySQLdExporterRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e AddMySQLdExporterRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e AddMySQLdExporterRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e AddMySQLdExporterRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e AddMySQLdExporterRequestValidationError) ErrorName() string { - return "AddMySQLdExporterRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e AddMySQLdExporterRequestValidationError) 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 %sAddMySQLdExporterRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = AddMySQLdExporterRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = AddMySQLdExporterRequestValidationError{} - -// Validate checks the field values on AddMySQLdExporterResponse 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 *AddMySQLdExporterResponse) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on AddMySQLdExporterResponse 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 -// AddMySQLdExporterResponseMultiError, or nil if none found. -func (m *AddMySQLdExporterResponse) ValidateAll() error { - return m.validate(true) -} - -func (m *AddMySQLdExporterResponse) 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, AddMySQLdExporterResponseValidationError{ - field: "MysqldExporter", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, AddMySQLdExporterResponseValidationError{ - 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 AddMySQLdExporterResponseValidationError{ - field: "MysqldExporter", - reason: "embedded message failed validation", - cause: err, - } - } - } - - // no validation rules for TableCount + // no validation rules for TablestatsGroupTableLimit + + // no validation rules for CustomLabels + + // no validation rules for SkipConnectionCheck + + // no validation rules for PushMetrics + + // no validation rules for AgentPassword + + // no validation rules for LogLevel + + // no validation rules for ExposeExporter if len(errors) > 0 { - return AddMySQLdExporterResponseMultiError(errors) + return AddMySQLdExporterParamsMultiError(errors) } return nil } -// AddMySQLdExporterResponseMultiError is an error wrapping multiple validation -// errors returned by AddMySQLdExporterResponse.ValidateAll() if the -// designated constraints aren't met. -type AddMySQLdExporterResponseMultiError []error +// AddMySQLdExporterParamsMultiError is an error wrapping multiple validation +// errors returned by AddMySQLdExporterParams.ValidateAll() if the designated +// constraints aren't met. +type AddMySQLdExporterParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m AddMySQLdExporterResponseMultiError) Error() string { +func (m AddMySQLdExporterParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -4827,11 +5435,11 @@ func (m AddMySQLdExporterResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m AddMySQLdExporterResponseMultiError) AllErrors() []error { return m } +func (m AddMySQLdExporterParamsMultiError) AllErrors() []error { return m } -// AddMySQLdExporterResponseValidationError is the validation error returned by -// AddMySQLdExporterResponse.Validate if the designated constraints aren't met. -type AddMySQLdExporterResponseValidationError struct { +// AddMySQLdExporterParamsValidationError is the validation error returned by +// AddMySQLdExporterParams.Validate if the designated constraints aren't met. +type AddMySQLdExporterParamsValidationError struct { field string reason string cause error @@ -4839,24 +5447,24 @@ type AddMySQLdExporterResponseValidationError struct { } // Field function returns field value. -func (e AddMySQLdExporterResponseValidationError) Field() string { return e.field } +func (e AddMySQLdExporterParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e AddMySQLdExporterResponseValidationError) Reason() string { return e.reason } +func (e AddMySQLdExporterParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e AddMySQLdExporterResponseValidationError) Cause() error { return e.cause } +func (e AddMySQLdExporterParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e AddMySQLdExporterResponseValidationError) Key() bool { return e.key } +func (e AddMySQLdExporterParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e AddMySQLdExporterResponseValidationError) ErrorName() string { - return "AddMySQLdExporterResponseValidationError" +func (e AddMySQLdExporterParamsValidationError) ErrorName() string { + return "AddMySQLdExporterParamsValidationError" } // Error satisfies the builtin error interface -func (e AddMySQLdExporterResponseValidationError) Error() string { +func (e AddMySQLdExporterParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -4868,14 +5476,14 @@ func (e AddMySQLdExporterResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sAddMySQLdExporterResponse.%s: %s%s", + "invalid %sAddMySQLdExporterParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = AddMySQLdExporterResponseValidationError{} +var _ error = AddMySQLdExporterParamsValidationError{} var _ interface { Field() string @@ -4883,7 +5491,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = AddMySQLdExporterResponseValidationError{} +} = AddMySQLdExporterParamsValidationError{} // Validate checks the field values on ChangeMySQLdExporterRequest with the // rules defined in the proto definition for this message. If any rules are @@ -5160,22 +5768,22 @@ var _ interface { ErrorName() string } = ChangeMySQLdExporterResponseValidationError{} -// Validate checks the field values on AddMongoDBExporterRequest with the rules +// Validate checks the field values on AddMongoDBExporterParams 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 *AddMongoDBExporterRequest) Validate() error { +func (m *AddMongoDBExporterParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on AddMongoDBExporterRequest with the +// ValidateAll checks the field values on AddMongoDBExporterParams 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 -// AddMongoDBExporterRequestMultiError, or nil if none found. -func (m *AddMongoDBExporterRequest) ValidateAll() error { +// AddMongoDBExporterParamsMultiError, or nil if none found. +func (m *AddMongoDBExporterParams) ValidateAll() error { return m.validate(true) } -func (m *AddMongoDBExporterRequest) validate(all bool) error { +func (m *AddMongoDBExporterParams) validate(all bool) error { if m == nil { return nil } @@ -5183,7 +5791,7 @@ func (m *AddMongoDBExporterRequest) validate(all bool) error { var errors []error if utf8.RuneCountInString(m.GetPmmAgentId()) < 1 { - err := AddMongoDBExporterRequestValidationError{ + err := AddMongoDBExporterParamsValidationError{ field: "PmmAgentId", reason: "value length must be at least 1 runes", } @@ -5194,7 +5802,7 @@ func (m *AddMongoDBExporterRequest) validate(all bool) error { } if utf8.RuneCountInString(m.GetServiceId()) < 1 { - err := AddMongoDBExporterRequestValidationError{ + err := AddMongoDBExporterParamsValidationError{ field: "ServiceId", reason: "value length must be at least 1 runes", } @@ -5237,150 +5845,19 @@ func (m *AddMongoDBExporterRequest) validate(all bool) error { // no validation rules for ExposeExporter if len(errors) > 0 { - return AddMongoDBExporterRequestMultiError(errors) - } - - return nil -} - -// AddMongoDBExporterRequestMultiError is an error wrapping multiple validation -// errors returned by AddMongoDBExporterRequest.ValidateAll() if the -// designated constraints aren't met. -type AddMongoDBExporterRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m AddMongoDBExporterRequestMultiError) 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 AddMongoDBExporterRequestMultiError) AllErrors() []error { return m } - -// AddMongoDBExporterRequestValidationError is the validation error returned by -// AddMongoDBExporterRequest.Validate if the designated constraints aren't met. -type AddMongoDBExporterRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e AddMongoDBExporterRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e AddMongoDBExporterRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e AddMongoDBExporterRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e AddMongoDBExporterRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e AddMongoDBExporterRequestValidationError) ErrorName() string { - return "AddMongoDBExporterRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e AddMongoDBExporterRequestValidationError) 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 %sAddMongoDBExporterRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = AddMongoDBExporterRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = AddMongoDBExporterRequestValidationError{} - -// Validate checks the field values on AddMongoDBExporterResponse 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 *AddMongoDBExporterResponse) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on AddMongoDBExporterResponse 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 -// AddMongoDBExporterResponseMultiError, or nil if none found. -func (m *AddMongoDBExporterResponse) ValidateAll() error { - return m.validate(true) -} - -func (m *AddMongoDBExporterResponse) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - - if all { - switch v := interface{}(m.GetMongodbExporter()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, AddMongoDBExporterResponseValidationError{ - field: "MongodbExporter", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, AddMongoDBExporterResponseValidationError{ - 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 AddMongoDBExporterResponseValidationError{ - field: "MongodbExporter", - reason: "embedded message failed validation", - cause: err, - } - } - } - - if len(errors) > 0 { - return AddMongoDBExporterResponseMultiError(errors) + return AddMongoDBExporterParamsMultiError(errors) } return nil } -// AddMongoDBExporterResponseMultiError is an error wrapping multiple -// validation errors returned by AddMongoDBExporterResponse.ValidateAll() if -// the designated constraints aren't met. -type AddMongoDBExporterResponseMultiError []error +// AddMongoDBExporterParamsMultiError is an error wrapping multiple validation +// errors returned by AddMongoDBExporterParams.ValidateAll() if the designated +// constraints aren't met. +type AddMongoDBExporterParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m AddMongoDBExporterResponseMultiError) Error() string { +func (m AddMongoDBExporterParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -5389,11 +5866,11 @@ func (m AddMongoDBExporterResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m AddMongoDBExporterResponseMultiError) AllErrors() []error { return m } +func (m AddMongoDBExporterParamsMultiError) AllErrors() []error { return m } -// AddMongoDBExporterResponseValidationError is the validation error returned -// by AddMongoDBExporterResponse.Validate if the designated constraints aren't met. -type AddMongoDBExporterResponseValidationError 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 @@ -5401,24 +5878,24 @@ type AddMongoDBExporterResponseValidationError struct { } // Field function returns field value. -func (e AddMongoDBExporterResponseValidationError) Field() string { return e.field } +func (e AddMongoDBExporterParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e AddMongoDBExporterResponseValidationError) Reason() string { return e.reason } +func (e AddMongoDBExporterParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e AddMongoDBExporterResponseValidationError) Cause() error { return e.cause } +func (e AddMongoDBExporterParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e AddMongoDBExporterResponseValidationError) Key() bool { return e.key } +func (e AddMongoDBExporterParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e AddMongoDBExporterResponseValidationError) ErrorName() string { - return "AddMongoDBExporterResponseValidationError" +func (e AddMongoDBExporterParamsValidationError) ErrorName() string { + return "AddMongoDBExporterParamsValidationError" } // Error satisfies the builtin error interface -func (e AddMongoDBExporterResponseValidationError) Error() string { +func (e AddMongoDBExporterParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -5430,14 +5907,14 @@ func (e AddMongoDBExporterResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sAddMongoDBExporterResponse.%s: %s%s", + "invalid %sAddMongoDBExporterParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = AddMongoDBExporterResponseValidationError{} +var _ error = AddMongoDBExporterParamsValidationError{} var _ interface { Field() string @@ -5445,7 +5922,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = AddMongoDBExporterResponseValidationError{} +} = AddMongoDBExporterParamsValidationError{} // Validate checks the field values on ChangeMongoDBExporterRequest with the // rules defined in the proto definition for this message. If any rules are @@ -5722,232 +6199,101 @@ var _ interface { ErrorName() string } = ChangeMongoDBExporterResponseValidationError{} -// Validate checks the field values on AddPostgresExporterRequest 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 *AddPostgresExporterRequest) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on AddPostgresExporterRequest 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 -// AddPostgresExporterRequestMultiError, or nil if none found. -func (m *AddPostgresExporterRequest) ValidateAll() error { - return m.validate(true) -} - -func (m *AddPostgresExporterRequest) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - - if utf8.RuneCountInString(m.GetPmmAgentId()) < 1 { - err := AddPostgresExporterRequestValidationError{ - field: "PmmAgentId", - reason: "value length must be at least 1 runes", - } - if !all { - return err - } - errors = append(errors, err) - } - - if utf8.RuneCountInString(m.GetServiceId()) < 1 { - err := AddPostgresExporterRequestValidationError{ - field: "ServiceId", - reason: "value length must be at least 1 runes", - } - if !all { - return err - } - errors = append(errors, err) - } - - if utf8.RuneCountInString(m.GetUsername()) < 1 { - err := AddPostgresExporterRequestValidationError{ - field: "Username", - reason: "value length must be at least 1 runes", - } - if !all { - return err - } - errors = append(errors, err) - } - - // no validation rules for Password - - // no validation rules for Tls - - // no validation rules for TlsSkipVerify - - // no validation rules for CustomLabels - - // no validation rules for SkipConnectionCheck - - // no validation rules for PushMetrics - - // no validation rules for TlsCa - - // no validation rules for TlsCert - - // no validation rules for TlsKey - - // no validation rules for AgentPassword - - // no validation rules for LogLevel - - // no validation rules for AutoDiscoveryLimit - - // no validation rules for ExposeExporter - - if len(errors) > 0 { - return AddPostgresExporterRequestMultiError(errors) - } - - return nil -} - -// AddPostgresExporterRequestMultiError is an error wrapping multiple -// validation errors returned by AddPostgresExporterRequest.ValidateAll() if -// the designated constraints aren't met. -type AddPostgresExporterRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m AddPostgresExporterRequestMultiError) 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 AddPostgresExporterRequestMultiError) AllErrors() []error { return m } - -// AddPostgresExporterRequestValidationError is the validation error returned -// by AddPostgresExporterRequest.Validate if the designated constraints aren't met. -type AddPostgresExporterRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e AddPostgresExporterRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e AddPostgresExporterRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e AddPostgresExporterRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e AddPostgresExporterRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e AddPostgresExporterRequestValidationError) ErrorName() string { - return "AddPostgresExporterRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e AddPostgresExporterRequestValidationError) 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 %sAddPostgresExporterRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = AddPostgresExporterRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = AddPostgresExporterRequestValidationError{} - -// Validate checks the field values on AddPostgresExporterResponse with the -// rules defined in the proto definition for this message. If any rules are +// Validate checks the field values on AddPostgresExporterParams 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 *AddPostgresExporterResponse) Validate() error { +func (m *AddPostgresExporterParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on AddPostgresExporterResponse with the +// ValidateAll checks the field values on AddPostgresExporterParams 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 -// AddPostgresExporterResponseMultiError, or nil if none found. -func (m *AddPostgresExporterResponse) ValidateAll() error { +// AddPostgresExporterParamsMultiError, or nil if none found. +func (m *AddPostgresExporterParams) ValidateAll() error { return m.validate(true) } -func (m *AddPostgresExporterResponse) validate(all bool) error { +func (m *AddPostgresExporterParams) 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, AddPostgresExporterResponseValidationError{ - field: "PostgresExporter", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, AddPostgresExporterResponseValidationError{ - field: "PostgresExporter", - reason: "embedded message failed validation", - cause: err, - }) - } + if utf8.RuneCountInString(m.GetPmmAgentId()) < 1 { + err := AddPostgresExporterParamsValidationError{ + field: "PmmAgentId", + reason: "value length must be at least 1 runes", } - } else if v, ok := interface{}(m.GetPostgresExporter()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return AddPostgresExporterResponseValidationError{ - field: "PostgresExporter", - reason: "embedded message failed validation", - cause: err, - } + if !all { + return err + } + errors = append(errors, err) + } + + if utf8.RuneCountInString(m.GetServiceId()) < 1 { + err := AddPostgresExporterParamsValidationError{ + field: "ServiceId", + reason: "value length must be at least 1 runes", + } + if !all { + return err + } + errors = append(errors, err) + } + + if utf8.RuneCountInString(m.GetUsername()) < 1 { + err := AddPostgresExporterParamsValidationError{ + field: "Username", + reason: "value length must be at least 1 runes", } + if !all { + return err + } + errors = append(errors, err) } + // no validation rules for Password + + // no validation rules for Tls + + // no validation rules for TlsSkipVerify + + // no validation rules for CustomLabels + + // no validation rules for SkipConnectionCheck + + // no validation rules for PushMetrics + + // no validation rules for TlsCa + + // no validation rules for TlsCert + + // no validation rules for TlsKey + + // no validation rules for AgentPassword + + // no validation rules for LogLevel + + // no validation rules for AutoDiscoveryLimit + + // no validation rules for ExposeExporter + if len(errors) > 0 { - return AddPostgresExporterResponseMultiError(errors) + return AddPostgresExporterParamsMultiError(errors) } return nil } -// AddPostgresExporterResponseMultiError is an error wrapping multiple -// validation errors returned by AddPostgresExporterResponse.ValidateAll() if -// the designated constraints aren't met. -type AddPostgresExporterResponseMultiError []error +// AddPostgresExporterParamsMultiError is an error wrapping multiple validation +// errors returned by AddPostgresExporterParams.ValidateAll() if the +// designated constraints aren't met. +type AddPostgresExporterParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m AddPostgresExporterResponseMultiError) Error() string { +func (m AddPostgresExporterParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -5956,12 +6302,11 @@ func (m AddPostgresExporterResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m AddPostgresExporterResponseMultiError) AllErrors() []error { return m } +func (m AddPostgresExporterParamsMultiError) AllErrors() []error { return m } -// AddPostgresExporterResponseValidationError is the validation error returned -// by AddPostgresExporterResponse.Validate if the designated constraints -// aren't met. -type AddPostgresExporterResponseValidationError struct { +// AddPostgresExporterParamsValidationError is the validation error returned by +// AddPostgresExporterParams.Validate if the designated constraints aren't met. +type AddPostgresExporterParamsValidationError struct { field string reason string cause error @@ -5969,24 +6314,24 @@ type AddPostgresExporterResponseValidationError struct { } // Field function returns field value. -func (e AddPostgresExporterResponseValidationError) Field() string { return e.field } +func (e AddPostgresExporterParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e AddPostgresExporterResponseValidationError) Reason() string { return e.reason } +func (e AddPostgresExporterParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e AddPostgresExporterResponseValidationError) Cause() error { return e.cause } +func (e AddPostgresExporterParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e AddPostgresExporterResponseValidationError) Key() bool { return e.key } +func (e AddPostgresExporterParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e AddPostgresExporterResponseValidationError) ErrorName() string { - return "AddPostgresExporterResponseValidationError" +func (e AddPostgresExporterParamsValidationError) ErrorName() string { + return "AddPostgresExporterParamsValidationError" } // Error satisfies the builtin error interface -func (e AddPostgresExporterResponseValidationError) Error() string { +func (e AddPostgresExporterParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -5998,14 +6343,14 @@ func (e AddPostgresExporterResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sAddPostgresExporterResponse.%s: %s%s", + "invalid %sAddPostgresExporterParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = AddPostgresExporterResponseValidationError{} +var _ error = AddPostgresExporterParamsValidationError{} var _ interface { Field() string @@ -6013,7 +6358,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = AddPostgresExporterResponseValidationError{} +} = AddPostgresExporterParamsValidationError{} // Validate checks the field values on ChangePostgresExporterRequest with the // rules defined in the proto definition for this message. If any rules are @@ -6290,22 +6635,22 @@ var _ interface { ErrorName() string } = ChangePostgresExporterResponseValidationError{} -// Validate checks the field values on AddProxySQLExporterRequest with the -// rules defined in the proto definition for this message. If any rules are +// Validate checks the field values on AddProxySQLExporterParams 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 *AddProxySQLExporterRequest) Validate() error { +func (m *AddProxySQLExporterParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on AddProxySQLExporterRequest with the +// ValidateAll checks the field values on AddProxySQLExporterParams 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 -// AddProxySQLExporterRequestMultiError, or nil if none found. -func (m *AddProxySQLExporterRequest) ValidateAll() error { +// AddProxySQLExporterParamsMultiError, or nil if none found. +func (m *AddProxySQLExporterParams) ValidateAll() error { return m.validate(true) } -func (m *AddProxySQLExporterRequest) validate(all bool) error { +func (m *AddProxySQLExporterParams) validate(all bool) error { if m == nil { return nil } @@ -6313,7 +6658,7 @@ func (m *AddProxySQLExporterRequest) validate(all bool) error { var errors []error if utf8.RuneCountInString(m.GetPmmAgentId()) < 1 { - err := AddProxySQLExporterRequestValidationError{ + err := AddProxySQLExporterParamsValidationError{ field: "PmmAgentId", reason: "value length must be at least 1 runes", } @@ -6324,7 +6669,7 @@ func (m *AddProxySQLExporterRequest) validate(all bool) error { } if utf8.RuneCountInString(m.GetServiceId()) < 1 { - err := AddProxySQLExporterRequestValidationError{ + err := AddProxySQLExporterParamsValidationError{ field: "ServiceId", reason: "value length must be at least 1 runes", } @@ -6335,7 +6680,7 @@ func (m *AddProxySQLExporterRequest) validate(all bool) error { } if utf8.RuneCountInString(m.GetUsername()) < 1 { - err := AddProxySQLExporterRequestValidationError{ + err := AddProxySQLExporterParamsValidationError{ field: "Username", reason: "value length must be at least 1 runes", } @@ -6364,150 +6709,19 @@ func (m *AddProxySQLExporterRequest) validate(all bool) error { // no validation rules for ExposeExporter if len(errors) > 0 { - return AddProxySQLExporterRequestMultiError(errors) - } - - return nil -} - -// AddProxySQLExporterRequestMultiError is an error wrapping multiple -// validation errors returned by AddProxySQLExporterRequest.ValidateAll() if -// the designated constraints aren't met. -type AddProxySQLExporterRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m AddProxySQLExporterRequestMultiError) 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 AddProxySQLExporterRequestMultiError) AllErrors() []error { return m } - -// AddProxySQLExporterRequestValidationError is the validation error returned -// by AddProxySQLExporterRequest.Validate if the designated constraints aren't met. -type AddProxySQLExporterRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e AddProxySQLExporterRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e AddProxySQLExporterRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e AddProxySQLExporterRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e AddProxySQLExporterRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e AddProxySQLExporterRequestValidationError) ErrorName() string { - return "AddProxySQLExporterRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e AddProxySQLExporterRequestValidationError) 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 %sAddProxySQLExporterRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = AddProxySQLExporterRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = AddProxySQLExporterRequestValidationError{} - -// Validate checks the field values on AddProxySQLExporterResponse 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 *AddProxySQLExporterResponse) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on AddProxySQLExporterResponse 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 -// AddProxySQLExporterResponseMultiError, or nil if none found. -func (m *AddProxySQLExporterResponse) ValidateAll() error { - return m.validate(true) -} - -func (m *AddProxySQLExporterResponse) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - - if all { - switch v := interface{}(m.GetProxysqlExporter()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, AddProxySQLExporterResponseValidationError{ - field: "ProxysqlExporter", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, AddProxySQLExporterResponseValidationError{ - 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 AddProxySQLExporterResponseValidationError{ - field: "ProxysqlExporter", - reason: "embedded message failed validation", - cause: err, - } - } - } - - if len(errors) > 0 { - return AddProxySQLExporterResponseMultiError(errors) + return AddProxySQLExporterParamsMultiError(errors) } return nil } -// AddProxySQLExporterResponseMultiError is an error wrapping multiple -// validation errors returned by AddProxySQLExporterResponse.ValidateAll() if -// the designated constraints aren't met. -type AddProxySQLExporterResponseMultiError []error +// AddProxySQLExporterParamsMultiError is an error wrapping multiple validation +// errors returned by AddProxySQLExporterParams.ValidateAll() if the +// designated constraints aren't met. +type AddProxySQLExporterParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m AddProxySQLExporterResponseMultiError) Error() string { +func (m AddProxySQLExporterParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -6516,12 +6730,11 @@ func (m AddProxySQLExporterResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m AddProxySQLExporterResponseMultiError) AllErrors() []error { return m } +func (m AddProxySQLExporterParamsMultiError) AllErrors() []error { return m } -// AddProxySQLExporterResponseValidationError is the validation error returned -// by AddProxySQLExporterResponse.Validate if the designated constraints -// aren't met. -type AddProxySQLExporterResponseValidationError struct { +// AddProxySQLExporterParamsValidationError is the validation error returned by +// AddProxySQLExporterParams.Validate if the designated constraints aren't met. +type AddProxySQLExporterParamsValidationError struct { field string reason string cause error @@ -6529,24 +6742,24 @@ type AddProxySQLExporterResponseValidationError struct { } // Field function returns field value. -func (e AddProxySQLExporterResponseValidationError) Field() string { return e.field } +func (e AddProxySQLExporterParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e AddProxySQLExporterResponseValidationError) Reason() string { return e.reason } +func (e AddProxySQLExporterParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e AddProxySQLExporterResponseValidationError) Cause() error { return e.cause } +func (e AddProxySQLExporterParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e AddProxySQLExporterResponseValidationError) Key() bool { return e.key } +func (e AddProxySQLExporterParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e AddProxySQLExporterResponseValidationError) ErrorName() string { - return "AddProxySQLExporterResponseValidationError" +func (e AddProxySQLExporterParamsValidationError) ErrorName() string { + return "AddProxySQLExporterParamsValidationError" } // Error satisfies the builtin error interface -func (e AddProxySQLExporterResponseValidationError) Error() string { +func (e AddProxySQLExporterParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -6558,14 +6771,14 @@ func (e AddProxySQLExporterResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sAddProxySQLExporterResponse.%s: %s%s", + "invalid %sAddProxySQLExporterParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = AddProxySQLExporterResponseValidationError{} +var _ error = AddProxySQLExporterParamsValidationError{} var _ interface { Field() string @@ -6573,7 +6786,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = AddProxySQLExporterResponseValidationError{} +} = AddProxySQLExporterParamsValidationError{} // Validate checks the field values on ChangeProxySQLExporterRequest with the // rules defined in the proto definition for this message. If any rules are @@ -9725,22 +9938,22 @@ var _ interface { ErrorName() string } = ChangeQANPostgreSQLPgStatMonitorAgentResponseValidationError{} -// Validate checks the field values on AddRDSExporterRequest with the rules +// Validate checks the field values on AddRDSExporterParams 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 *AddRDSExporterRequest) Validate() error { +func (m *AddRDSExporterParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on AddRDSExporterRequest with the rules +// ValidateAll checks the field values on AddRDSExporterParams 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 -// AddRDSExporterRequestMultiError, or nil if none found. -func (m *AddRDSExporterRequest) ValidateAll() error { +// AddRDSExporterParamsMultiError, or nil if none found. +func (m *AddRDSExporterParams) ValidateAll() error { return m.validate(true) } -func (m *AddRDSExporterRequest) validate(all bool) error { +func (m *AddRDSExporterParams) validate(all bool) error { if m == nil { return nil } @@ -9748,7 +9961,7 @@ func (m *AddRDSExporterRequest) validate(all bool) error { var errors []error if utf8.RuneCountInString(m.GetPmmAgentId()) < 1 { - err := AddRDSExporterRequestValidationError{ + err := AddRDSExporterParamsValidationError{ field: "PmmAgentId", reason: "value length must be at least 1 runes", } @@ -9759,7 +9972,7 @@ func (m *AddRDSExporterRequest) validate(all bool) error { } if utf8.RuneCountInString(m.GetNodeId()) < 1 { - err := AddRDSExporterRequestValidationError{ + err := AddRDSExporterParamsValidationError{ field: "NodeId", reason: "value length must be at least 1 runes", } @@ -9775,161 +9988,30 @@ func (m *AddRDSExporterRequest) validate(all bool) error { // no validation rules for CustomLabels - // no validation rules for SkipConnectionCheck - - // 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 AddRDSExporterRequestMultiError(errors) - } - - return nil -} - -// AddRDSExporterRequestMultiError is an error wrapping multiple validation -// errors returned by AddRDSExporterRequest.ValidateAll() if the designated -// constraints aren't met. -type AddRDSExporterRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m AddRDSExporterRequestMultiError) 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 AddRDSExporterRequestMultiError) AllErrors() []error { return m } - -// AddRDSExporterRequestValidationError is the validation error returned by -// AddRDSExporterRequest.Validate if the designated constraints aren't met. -type AddRDSExporterRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e AddRDSExporterRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e AddRDSExporterRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e AddRDSExporterRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e AddRDSExporterRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e AddRDSExporterRequestValidationError) ErrorName() string { - return "AddRDSExporterRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e AddRDSExporterRequestValidationError) 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 %sAddRDSExporterRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = AddRDSExporterRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = AddRDSExporterRequestValidationError{} - -// Validate checks the field values on AddRDSExporterResponse 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 *AddRDSExporterResponse) Validate() error { - return m.validate(false) -} + // no validation rules for SkipConnectionCheck -// ValidateAll checks the field values on AddRDSExporterResponse 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 -// AddRDSExporterResponseMultiError, or nil if none found. -func (m *AddRDSExporterResponse) ValidateAll() error { - return m.validate(true) -} + // no validation rules for DisableBasicMetrics -func (m *AddRDSExporterResponse) validate(all bool) error { - if m == nil { - return nil - } + // no validation rules for DisableEnhancedMetrics - var errors []error + // no validation rules for PushMetrics - if all { - switch v := interface{}(m.GetRdsExporter()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, AddRDSExporterResponseValidationError{ - field: "RdsExporter", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, AddRDSExporterResponseValidationError{ - 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 AddRDSExporterResponseValidationError{ - field: "RdsExporter", - reason: "embedded message failed validation", - cause: err, - } - } - } + // no validation rules for LogLevel if len(errors) > 0 { - return AddRDSExporterResponseMultiError(errors) + return AddRDSExporterParamsMultiError(errors) } return nil } -// AddRDSExporterResponseMultiError is an error wrapping multiple validation -// errors returned by AddRDSExporterResponse.ValidateAll() if the designated +// AddRDSExporterParamsMultiError is an error wrapping multiple validation +// errors returned by AddRDSExporterParams.ValidateAll() if the designated // constraints aren't met. -type AddRDSExporterResponseMultiError []error +type AddRDSExporterParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m AddRDSExporterResponseMultiError) Error() string { +func (m AddRDSExporterParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -9938,11 +10020,11 @@ func (m AddRDSExporterResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m AddRDSExporterResponseMultiError) AllErrors() []error { return m } +func (m AddRDSExporterParamsMultiError) AllErrors() []error { return m } -// AddRDSExporterResponseValidationError is the validation error returned by -// AddRDSExporterResponse.Validate if the designated constraints aren't met. -type AddRDSExporterResponseValidationError 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 @@ -9950,24 +10032,24 @@ type AddRDSExporterResponseValidationError struct { } // Field function returns field value. -func (e AddRDSExporterResponseValidationError) Field() string { return e.field } +func (e AddRDSExporterParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e AddRDSExporterResponseValidationError) Reason() string { return e.reason } +func (e AddRDSExporterParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e AddRDSExporterResponseValidationError) Cause() error { return e.cause } +func (e AddRDSExporterParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e AddRDSExporterResponseValidationError) Key() bool { return e.key } +func (e AddRDSExporterParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e AddRDSExporterResponseValidationError) ErrorName() string { - return "AddRDSExporterResponseValidationError" +func (e AddRDSExporterParamsValidationError) ErrorName() string { + return "AddRDSExporterParamsValidationError" } // Error satisfies the builtin error interface -func (e AddRDSExporterResponseValidationError) Error() string { +func (e AddRDSExporterParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -9979,14 +10061,14 @@ func (e AddRDSExporterResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sAddRDSExporterResponse.%s: %s%s", + "invalid %sAddRDSExporterParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = AddRDSExporterResponseValidationError{} +var _ error = AddRDSExporterParamsValidationError{} var _ interface { Field() string @@ -9994,7 +10076,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = AddRDSExporterResponseValidationError{} +} = AddRDSExporterParamsValidationError{} // Validate checks the field values on ChangeRDSExporterRequest with the rules // defined in the proto definition for this message. If any rules are @@ -10269,22 +10351,22 @@ var _ interface { ErrorName() string } = ChangeRDSExporterResponseValidationError{} -// Validate checks the field values on AddExternalExporterRequest with the -// rules defined in the proto definition for this message. If any rules are +// Validate checks the field values on AddExternalExporterParams 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 *AddExternalExporterRequest) Validate() error { +func (m *AddExternalExporterParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on AddExternalExporterRequest with the +// ValidateAll checks the field values on AddExternalExporterParams 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 -// AddExternalExporterRequestMultiError, or nil if none found. -func (m *AddExternalExporterRequest) ValidateAll() error { +// AddExternalExporterParamsMultiError, or nil if none found. +func (m *AddExternalExporterParams) ValidateAll() error { return m.validate(true) } -func (m *AddExternalExporterRequest) validate(all bool) error { +func (m *AddExternalExporterParams) validate(all bool) error { if m == nil { return nil } @@ -10292,7 +10374,7 @@ func (m *AddExternalExporterRequest) validate(all bool) error { var errors []error if utf8.RuneCountInString(m.GetRunsOnNodeId()) < 1 { - err := AddExternalExporterRequestValidationError{ + err := AddExternalExporterParamsValidationError{ field: "RunsOnNodeId", reason: "value length must be at least 1 runes", } @@ -10313,7 +10395,7 @@ func (m *AddExternalExporterRequest) validate(all bool) error { // no validation rules for MetricsPath if val := m.GetListenPort(); val <= 0 || val >= 65536 { - err := AddExternalExporterRequestValidationError{ + err := AddExternalExporterParamsValidationError{ field: "ListenPort", reason: "value must be inside range (0, 65536)", } @@ -10328,150 +10410,19 @@ func (m *AddExternalExporterRequest) validate(all bool) error { // no validation rules for PushMetrics if len(errors) > 0 { - return AddExternalExporterRequestMultiError(errors) - } - - return nil -} - -// AddExternalExporterRequestMultiError is an error wrapping multiple -// validation errors returned by AddExternalExporterRequest.ValidateAll() if -// the designated constraints aren't met. -type AddExternalExporterRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m AddExternalExporterRequestMultiError) 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 AddExternalExporterRequestMultiError) AllErrors() []error { return m } - -// AddExternalExporterRequestValidationError is the validation error returned -// by AddExternalExporterRequest.Validate if the designated constraints aren't met. -type AddExternalExporterRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e AddExternalExporterRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e AddExternalExporterRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e AddExternalExporterRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e AddExternalExporterRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e AddExternalExporterRequestValidationError) ErrorName() string { - return "AddExternalExporterRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e AddExternalExporterRequestValidationError) 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 %sAddExternalExporterRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = AddExternalExporterRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = AddExternalExporterRequestValidationError{} - -// Validate checks the field values on AddExternalExporterResponse 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 *AddExternalExporterResponse) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on AddExternalExporterResponse 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 -// AddExternalExporterResponseMultiError, or nil if none found. -func (m *AddExternalExporterResponse) ValidateAll() error { - return m.validate(true) -} - -func (m *AddExternalExporterResponse) 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, AddExternalExporterResponseValidationError{ - field: "ExternalExporter", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, AddExternalExporterResponseValidationError{ - 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 AddExternalExporterResponseValidationError{ - field: "ExternalExporter", - reason: "embedded message failed validation", - cause: err, - } - } - } - - if len(errors) > 0 { - return AddExternalExporterResponseMultiError(errors) + return AddExternalExporterParamsMultiError(errors) } return nil } -// AddExternalExporterResponseMultiError is an error wrapping multiple -// validation errors returned by AddExternalExporterResponse.ValidateAll() if -// the designated constraints aren't met. -type AddExternalExporterResponseMultiError []error +// AddExternalExporterParamsMultiError is an error wrapping multiple validation +// errors returned by AddExternalExporterParams.ValidateAll() if the +// designated constraints aren't met. +type AddExternalExporterParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m AddExternalExporterResponseMultiError) Error() string { +func (m AddExternalExporterParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -10480,12 +10431,11 @@ func (m AddExternalExporterResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m AddExternalExporterResponseMultiError) AllErrors() []error { return m } +func (m AddExternalExporterParamsMultiError) AllErrors() []error { return m } -// AddExternalExporterResponseValidationError is the validation error returned -// by AddExternalExporterResponse.Validate if the designated constraints -// aren't met. -type AddExternalExporterResponseValidationError struct { +// AddExternalExporterParamsValidationError is the validation error returned by +// AddExternalExporterParams.Validate if the designated constraints aren't met. +type AddExternalExporterParamsValidationError struct { field string reason string cause error @@ -10493,24 +10443,24 @@ type AddExternalExporterResponseValidationError struct { } // Field function returns field value. -func (e AddExternalExporterResponseValidationError) Field() string { return e.field } +func (e AddExternalExporterParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e AddExternalExporterResponseValidationError) Reason() string { return e.reason } +func (e AddExternalExporterParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e AddExternalExporterResponseValidationError) Cause() error { return e.cause } +func (e AddExternalExporterParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e AddExternalExporterResponseValidationError) Key() bool { return e.key } +func (e AddExternalExporterParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e AddExternalExporterResponseValidationError) ErrorName() string { - return "AddExternalExporterResponseValidationError" +func (e AddExternalExporterParamsValidationError) ErrorName() string { + return "AddExternalExporterParamsValidationError" } // Error satisfies the builtin error interface -func (e AddExternalExporterResponseValidationError) Error() string { +func (e AddExternalExporterParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -10522,14 +10472,14 @@ func (e AddExternalExporterResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sAddExternalExporterResponse.%s: %s%s", + "invalid %sAddExternalExporterParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = AddExternalExporterResponseValidationError{} +var _ error = AddExternalExporterParamsValidationError{} var _ interface { Field() string @@ -10537,7 +10487,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = AddExternalExporterResponseValidationError{} +} = AddExternalExporterParamsValidationError{} // Validate checks the field values on ChangeExternalExporterRequest with the // rules defined in the proto definition for this message. If any rules are @@ -10814,22 +10764,22 @@ var _ interface { ErrorName() string } = ChangeExternalExporterResponseValidationError{} -// Validate checks the field values on AddAzureDatabaseExporterRequest with the +// Validate checks the field values on AddAzureDatabaseExporterParams 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 *AddAzureDatabaseExporterRequest) Validate() error { +func (m *AddAzureDatabaseExporterParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on AddAzureDatabaseExporterRequest with +// ValidateAll checks the field values on AddAzureDatabaseExporterParams 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 -// AddAzureDatabaseExporterRequestMultiError, or nil if none found. -func (m *AddAzureDatabaseExporterRequest) ValidateAll() error { +// AddAzureDatabaseExporterParamsMultiError, or nil if none found. +func (m *AddAzureDatabaseExporterParams) ValidateAll() error { return m.validate(true) } -func (m *AddAzureDatabaseExporterRequest) validate(all bool) error { +func (m *AddAzureDatabaseExporterParams) validate(all bool) error { if m == nil { return nil } @@ -10837,7 +10787,7 @@ func (m *AddAzureDatabaseExporterRequest) validate(all bool) error { var errors []error if utf8.RuneCountInString(m.GetPmmAgentId()) < 1 { - err := AddAzureDatabaseExporterRequestValidationError{ + err := AddAzureDatabaseExporterParamsValidationError{ field: "PmmAgentId", reason: "value length must be at least 1 runes", } @@ -10848,7 +10798,7 @@ func (m *AddAzureDatabaseExporterRequest) validate(all bool) error { } if utf8.RuneCountInString(m.GetNodeId()) < 1 { - err := AddAzureDatabaseExporterRequestValidationError{ + err := AddAzureDatabaseExporterParamsValidationError{ field: "NodeId", reason: "value length must be at least 1 runes", } @@ -10869,7 +10819,7 @@ func (m *AddAzureDatabaseExporterRequest) validate(all bool) error { // no validation rules for AzureResourceGroup if utf8.RuneCountInString(m.GetAzureDatabaseResourceType()) < 1 { - err := AddAzureDatabaseExporterRequestValidationError{ + err := AddAzureDatabaseExporterParamsValidationError{ field: "AzureDatabaseResourceType", reason: "value length must be at least 1 runes", } @@ -10888,153 +10838,19 @@ func (m *AddAzureDatabaseExporterRequest) validate(all bool) error { // no validation rules for LogLevel if len(errors) > 0 { - return AddAzureDatabaseExporterRequestMultiError(errors) + return AddAzureDatabaseExporterParamsMultiError(errors) } return nil } -// AddAzureDatabaseExporterRequestMultiError is an error wrapping multiple -// validation errors returned by AddAzureDatabaseExporterRequest.ValidateAll() +// AddAzureDatabaseExporterParamsMultiError is an error wrapping multiple +// validation errors returned by AddAzureDatabaseExporterParams.ValidateAll() // if the designated constraints aren't met. -type AddAzureDatabaseExporterRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m AddAzureDatabaseExporterRequestMultiError) 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 AddAzureDatabaseExporterRequestMultiError) AllErrors() []error { return m } - -// AddAzureDatabaseExporterRequestValidationError is the validation error -// returned by AddAzureDatabaseExporterRequest.Validate if the designated -// constraints aren't met. -type AddAzureDatabaseExporterRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e AddAzureDatabaseExporterRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e AddAzureDatabaseExporterRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e AddAzureDatabaseExporterRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e AddAzureDatabaseExporterRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e AddAzureDatabaseExporterRequestValidationError) ErrorName() string { - return "AddAzureDatabaseExporterRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e AddAzureDatabaseExporterRequestValidationError) 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 %sAddAzureDatabaseExporterRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = AddAzureDatabaseExporterRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = AddAzureDatabaseExporterRequestValidationError{} - -// Validate checks the field values on AddAzureDatabaseExporterResponse 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 *AddAzureDatabaseExporterResponse) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on AddAzureDatabaseExporterResponse 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 -// AddAzureDatabaseExporterResponseMultiError, or nil if none found. -func (m *AddAzureDatabaseExporterResponse) ValidateAll() error { - return m.validate(true) -} - -func (m *AddAzureDatabaseExporterResponse) 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, AddAzureDatabaseExporterResponseValidationError{ - field: "AzureDatabaseExporter", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, AddAzureDatabaseExporterResponseValidationError{ - 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 AddAzureDatabaseExporterResponseValidationError{ - field: "AzureDatabaseExporter", - reason: "embedded message failed validation", - cause: err, - } - } - } - - if len(errors) > 0 { - return AddAzureDatabaseExporterResponseMultiError(errors) - } - - return nil -} - -// AddAzureDatabaseExporterResponseMultiError is an error wrapping multiple -// validation errors returned by -// AddAzureDatabaseExporterResponse.ValidateAll() if the designated -// constraints aren't met. -type AddAzureDatabaseExporterResponseMultiError []error +type AddAzureDatabaseExporterParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m AddAzureDatabaseExporterResponseMultiError) Error() string { +func (m AddAzureDatabaseExporterParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -11043,12 +10859,12 @@ func (m AddAzureDatabaseExporterResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m AddAzureDatabaseExporterResponseMultiError) AllErrors() []error { return m } +func (m AddAzureDatabaseExporterParamsMultiError) AllErrors() []error { return m } -// AddAzureDatabaseExporterResponseValidationError is the validation error -// returned by AddAzureDatabaseExporterResponse.Validate if the designated +// AddAzureDatabaseExporterParamsValidationError is the validation error +// returned by AddAzureDatabaseExporterParams.Validate if the designated // constraints aren't met. -type AddAzureDatabaseExporterResponseValidationError struct { +type AddAzureDatabaseExporterParamsValidationError struct { field string reason string cause error @@ -11056,24 +10872,24 @@ type AddAzureDatabaseExporterResponseValidationError struct { } // Field function returns field value. -func (e AddAzureDatabaseExporterResponseValidationError) Field() string { return e.field } +func (e AddAzureDatabaseExporterParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e AddAzureDatabaseExporterResponseValidationError) Reason() string { return e.reason } +func (e AddAzureDatabaseExporterParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e AddAzureDatabaseExporterResponseValidationError) Cause() error { return e.cause } +func (e AddAzureDatabaseExporterParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e AddAzureDatabaseExporterResponseValidationError) Key() bool { return e.key } +func (e AddAzureDatabaseExporterParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e AddAzureDatabaseExporterResponseValidationError) ErrorName() string { - return "AddAzureDatabaseExporterResponseValidationError" +func (e AddAzureDatabaseExporterParamsValidationError) ErrorName() string { + return "AddAzureDatabaseExporterParamsValidationError" } // Error satisfies the builtin error interface -func (e AddAzureDatabaseExporterResponseValidationError) Error() string { +func (e AddAzureDatabaseExporterParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -11085,14 +10901,14 @@ func (e AddAzureDatabaseExporterResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sAddAzureDatabaseExporterResponse.%s: %s%s", + "invalid %sAddAzureDatabaseExporterParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = AddAzureDatabaseExporterResponseValidationError{} +var _ error = AddAzureDatabaseExporterParamsValidationError{} var _ interface { Field() string @@ -11100,7 +10916,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = AddAzureDatabaseExporterResponseValidationError{} +} = AddAzureDatabaseExporterParamsValidationError{} // Validate checks the field values on ChangeAzureDatabaseExporterRequest with // the rules defined in the proto definition for this message. If any rules diff --git a/api/inventory/v1/agents.proto b/api/inventory/v1/agents.proto index e05c2df9d7..6b68cb15a1 100644 --- a/api/inventory/v1/agents.proto +++ b/api/inventory/v1/agents.proto @@ -12,19 +12,19 @@ import "validate/validate.proto"; enum AgentType { AGENT_TYPE_UNSPECIFIED = 0; AGENT_TYPE_PMM_AGENT = 1; - AGENT_TYPE_VM_AGENT = 14; - AGENT_TYPE_NODE_EXPORTER = 2; - AGENT_TYPE_MYSQLD_EXPORTER = 3; - AGENT_TYPE_MONGODB_EXPORTER = 4; - AGENT_TYPE_POSTGRES_EXPORTER = 5; - AGENT_TYPE_PROXYSQL_EXPORTER = 6; - AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT = 7; - AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT = 8; - AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT = 9; - AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT = 10; - AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT = 13; - AGENT_TYPE_RDS_EXPORTER = 11; - AGENT_TYPE_EXTERNAL_EXPORTER = 12; + AGENT_TYPE_VM_AGENT = 2; + AGENT_TYPE_NODE_EXPORTER = 3; + AGENT_TYPE_MYSQLD_EXPORTER = 4; + AGENT_TYPE_MONGODB_EXPORTER = 5; + AGENT_TYPE_POSTGRES_EXPORTER = 6; + AGENT_TYPE_PROXYSQL_EXPORTER = 7; + AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT = 8; + AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT = 9; + AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT = 10; + AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT = 11; + AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT = 12; + AGENT_TYPE_EXTERNAL_EXPORTER = 13; + AGENT_TYPE_RDS_EXPORTER = 14; AGENT_TYPE_AZURE_DATABASE_EXPORTER = 15; } @@ -59,11 +59,11 @@ message VMAgent { // // Actual Agent status. - AgentStatus status = 5; + AgentStatus status = 3; // Path to exec process. - string process_exec_path = 6; + string process_exec_path = 4; // Listen port for scraping metrics. - uint32 listen_port = 7; + uint32 listen_port = 5; } // NodeExporter runs on Generic or Container Node and exposes its metrics. @@ -77,17 +77,17 @@ message NodeExporter { // Custom user-assigned labels. map custom_labels = 4; // True if exporter uses push metrics mode. - bool push_metrics_enabled = 7; + bool push_metrics_enabled = 5; // List of disabled collector names. - repeated string disabled_collectors = 8; + repeated string disabled_collectors = 6; // // Status fields below. // // Actual Agent status. - AgentStatus status = 5; + AgentStatus status = 7; // Listen port for scraping metrics. - uint32 listen_port = 6; + uint32 listen_port = 8; // Path to exec process. string process_exec_path = 9; // Log level for exporter. @@ -114,17 +114,17 @@ message MySQLdExporter { // Skip TLS certificate and hostname validation. bool tls_skip_verify = 7; // Certificate Authority certificate chain. - string tls_ca = 15; + string tls_ca = 8; // Client certificate. - string tls_cert = 16; + string tls_cert = 9; // Password for decrypting tls_cert. - string tls_key = 17; + string tls_key = 10; // 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. int32 tablestats_group_table_limit = 11; // Custom user-assigned labels. - map custom_labels = 8; + map custom_labels = 12; // True if exporter uses push metrics mode. bool push_metrics_enabled = 13; // List of disabled collector names. @@ -134,11 +134,11 @@ message MySQLdExporter { // // Actual Agent status. - AgentStatus status = 9; + AgentStatus status = 15; // Listen port for scraping metrics. - uint32 listen_port = 10; + uint32 listen_port = 16; // True if tablestats group collectors are currently disabled. - bool tablestats_group_disabled = 12; + bool tablestats_group_disabled = 17; // Path to exec process. string process_exec_path = 18; // Log level for exporter. @@ -166,17 +166,17 @@ message MongoDBExporter { // Custom user-assigned labels. map custom_labels = 8; // True if exporter uses push metrics mode. - bool push_metrics_enabled = 11; + bool push_metrics_enabled = 9; // List of disabled collector names. - repeated string disabled_collectors = 12; + repeated string disabled_collectors = 10; // // Status fields below. // // Actual Agent status. - AgentStatus status = 9; + AgentStatus status = 11; // Listen port for scraping metrics. - uint32 listen_port = 10; + uint32 listen_port = 12; // List of colletions to get stats from. Can use * repeated string stats_collections = 13; // Collections limit. Only get Databases and collection stats if the total number of collections in the server @@ -211,13 +211,13 @@ message PostgresExporter { // Custom user-assigned labels. map custom_labels = 8; // True if exporter uses push metrics mode. - bool push_metrics_enabled = 11; + bool push_metrics_enabled = 9; // List of disabled collector names. - repeated string disabled_collectors = 12; + repeated string disabled_collectors = 10; // Actual Agent status. - AgentStatus status = 9; + AgentStatus status = 11; // Listen port for scraping metrics. - uint32 listen_port = 10; + uint32 listen_port = 12; // Path to exec process. string process_exec_path = 13; // Log level for exporter. @@ -247,17 +247,17 @@ message ProxySQLExporter { // Custom user-assigned labels. map custom_labels = 8; // True if exporter uses push metrics mode. - bool push_metrics_enabled = 11; + bool push_metrics_enabled = 9; // List of disabled collector names. - repeated string disabled_collectors = 12; + repeated string disabled_collectors = 10; // // Status fields below. // // Actual Agent status. - AgentStatus status = 9; + AgentStatus status = 11; // Listen port for scraping metrics. - uint32 listen_port = 10; + uint32 listen_port = 12; // Path to exec process. string process_exec_path = 13; // Log level for exporter. @@ -283,29 +283,29 @@ message QANMySQLPerfSchemaAgent { // Skip TLS certificate and hostname validation. bool tls_skip_verify = 7; // Certificate Authority certificate chain. - string tls_ca = 11; + string tls_ca = 8; // Client certificate. - string tls_cert = 12; + string tls_cert = 9; // Password for decrypting tls_cert. - string tls_key = 13; + string tls_key = 10; // Disable parsing comments from queries and showing them in QAN. - bool disable_comments_parsing = 18; + bool disable_comments_parsing = 11; // Limit query length in QAN (default: server-defined; -1: no limit). - int32 max_query_length = 16; + int32 max_query_length = 12; // True if query examples are disabled. - bool query_examples_disabled = 8; + bool query_examples_disabled = 13; // Custom user-assigned labels. - map custom_labels = 9; + map custom_labels = 14; // // Status fields below. // // Actual Agent status. - AgentStatus status = 10; + AgentStatus status = 15; // Path to exec process. - string process_exec_path = 14; + string process_exec_path = 16; // Log level for exporter. - LogLevel log_level = 15; + LogLevel log_level = 17; } // QANMySQLSlowlogAgent runs within pmm-agent and sends MySQL Query Analytics data to the PMM Server. @@ -325,31 +325,31 @@ message QANMySQLSlowlogAgent { // Skip TLS certificate and hostname validation. bool tls_skip_verify = 7; // Certificate Authority certificate chain. - string tls_ca = 12; + string tls_ca = 8; // Client certificate. - string tls_cert = 13; + string tls_cert = 9; // Password for decrypting tls_cert. - string tls_key = 14; + string tls_key = 10; // Disable parsing comments from queries and showing them in QAN. - bool disable_comments_parsing = 18; + bool disable_comments_parsing = 11; // Limit query length in QAN (default: server-defined; -1: no limit) - int32 max_query_length = 17; + int32 max_query_length = 12; // True if query examples are disabled. - bool query_examples_disabled = 8; + bool query_examples_disabled = 13; // Slowlog file is rotated at this size if > 0. - int64 max_slowlog_file_size = 9; + int64 max_slowlog_file_size = 14; // Custom user-assigned labels. - map custom_labels = 10; + map custom_labels = 15; // // Status fields below. // // Actual Agent status. - AgentStatus status = 11; + AgentStatus status = 16; // mod tidy - string process_exec_path = 15; + string process_exec_path = 17; // Log level for exporter. - LogLevel log_level = 16; + LogLevel log_level = 18; } // QANMongoDBProfilerAgent runs within pmm-agent and sends MongoDB Query Analytics data to the PMM Server. @@ -369,22 +369,23 @@ message QANMongoDBProfilerAgent { // Skip TLS certificate and hostname validation. bool tls_skip_verify = 7; // Limit query length in QAN (default: server-defined; -1: no limit). - int32 max_query_length = 13; + int32 max_query_length = 8; // True if query examples are disabled. - // bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650 + reserved 9; + // bool query_examples_disabled = 9; TODO https://jira.percona.com/browse/PMM-4650 // Custom user-assigned labels. - map custom_labels = 9; + map custom_labels = 10; // // Status fields below. // // Actual Agent status. - AgentStatus status = 10; + AgentStatus status = 11; // Path to exec process. - string process_exec_path = 11; + string process_exec_path = 12; // Log level for exporter. - LogLevel log_level = 12; + LogLevel log_level = 13; } // QANPostgreSQLPgStatementsAgent runs within pmm-agent and sends PostgreSQL Query Analytics data to the PMM Server. @@ -400,25 +401,25 @@ message QANPostgreSQLPgStatementsAgent { // PostgreSQL username for getting pg stat statements data. string username = 5; // Disable parsing comments from queries and showing them in QAN. - bool disable_comments_parsing = 13; + bool disable_comments_parsing = 6; // Limit query length in QAN (default: server-defined; -1: no limit). - int32 max_query_length = 12; + int32 max_query_length = 7; // Use TLS for database connections. - bool tls = 6; + bool tls = 8; // Skip TLS certificate and hostname validation. - bool tls_skip_verify = 7; + bool tls_skip_verify = 9; // Custom user-assigned labels. - map custom_labels = 8; + map custom_labels = 10; // // Status fields below. // // Actual Agent status. - AgentStatus status = 9; + AgentStatus status = 11; // Path to exec process. - string process_exec_path = 10; + string process_exec_path = 12; // Log level for exporter. - LogLevel log_level = 11; + LogLevel log_level = 13; } // QANPostgreSQLPgStatMonitorAgent runs within pmm-agent and sends PostgreSQL Query Analytics data to the PMM Server. @@ -438,23 +439,23 @@ message QANPostgreSQLPgStatMonitorAgent { // Skip TLS certificate and hostname validation. bool tls_skip_verify = 7; // Disable parsing comments from queries and showing them in QAN. - bool disable_comments_parsing = 14; + bool disable_comments_parsing = 8; // Limit query length in QAN (default: server-defined; -1: no limit). - int32 max_query_length = 13; + int32 max_query_length = 9; // True if query examples are disabled. - bool query_examples_disabled = 8; + bool query_examples_disabled = 10; // Custom user-assigned labels. - map custom_labels = 9; + map custom_labels = 11; // // Status fields below. // // Actual Agent status. - AgentStatus status = 10; + AgentStatus status = 12; // Path to exec process. - string process_exec_path = 11; + string process_exec_path = 13; // Log level for exporter. - LogLevel log_level = 12; + LogLevel log_level = 14; } // RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node metrics. @@ -514,9 +515,9 @@ message ExternalExporter { // Path under which metrics are exposed, used to generate URI. string metrics_path = 7; // Custom user-assigned labels. - map custom_labels = 10; + map custom_labels = 9; // Listen port for scraping metrics. - uint32 listen_port = 8; + uint32 listen_port = 10; // True if exporter uses push metrics mode. bool push_metrics_enabled = 11; // Path to exec process. @@ -590,19 +591,19 @@ message ListAgentsRequest { message ListAgentsResponse { repeated PMMAgent pmm_agent = 1; - repeated VMAgent vm_agent = 14; - repeated NodeExporter node_exporter = 2; - repeated MySQLdExporter mysqld_exporter = 3; - repeated MongoDBExporter mongodb_exporter = 4; - repeated PostgresExporter postgres_exporter = 5; - repeated ProxySQLExporter proxysql_exporter = 6; - repeated QANMySQLPerfSchemaAgent qan_mysql_perfschema_agent = 7; - repeated QANMySQLSlowlogAgent qan_mysql_slowlog_agent = 8; - repeated QANMongoDBProfilerAgent qan_mongodb_profiler_agent = 9; - repeated QANPostgreSQLPgStatementsAgent qan_postgresql_pgstatements_agent = 10; - repeated QANPostgreSQLPgStatMonitorAgent qan_postgresql_pgstatmonitor_agent = 13; - repeated RDSExporter rds_exporter = 11; - repeated ExternalExporter external_exporter = 12; + repeated VMAgent vm_agent = 2; + repeated NodeExporter node_exporter = 3; + repeated MySQLdExporter mysqld_exporter = 4; + repeated MongoDBExporter mongodb_exporter = 5; + repeated PostgresExporter postgres_exporter = 6; + repeated ProxySQLExporter proxysql_exporter = 7; + repeated QANMySQLPerfSchemaAgent qan_mysql_perfschema_agent = 8; + repeated QANMySQLSlowlogAgent qan_mysql_slowlog_agent = 9; + repeated QANMongoDBProfilerAgent qan_mongodb_profiler_agent = 10; + repeated QANPostgreSQLPgStatementsAgent qan_postgresql_pgstatements_agent = 11; + repeated QANPostgreSQLPgStatMonitorAgent qan_postgresql_pgstatmonitor_agent = 12; + repeated RDSExporter rds_exporter = 13; + repeated ExternalExporter external_exporter = 14; repeated AzureDatabaseExporter azure_database_exporter = 15; } @@ -616,19 +617,19 @@ message GetAgentRequest { message GetAgentResponse { oneof agent { PMMAgent pmm_agent = 1; - VMAgent vmagent = 14; - NodeExporter node_exporter = 2; - MySQLdExporter mysqld_exporter = 3; - MongoDBExporter mongodb_exporter = 4; - PostgresExporter postgres_exporter = 5; - ProxySQLExporter proxysql_exporter = 6; - QANMySQLPerfSchemaAgent qan_mysql_perfschema_agent = 7; - QANMySQLSlowlogAgent qan_mysql_slowlog_agent = 8; - QANMongoDBProfilerAgent qan_mongodb_profiler_agent = 9; - QANPostgreSQLPgStatementsAgent qan_postgresql_pgstatements_agent = 10; - QANPostgreSQLPgStatMonitorAgent qan_postgresql_pgstatmonitor_agent = 13; - RDSExporter rds_exporter = 11; - ExternalExporter external_exporter = 12; + VMAgent vmagent = 2; + NodeExporter node_exporter = 3; + MySQLdExporter mysqld_exporter = 4; + MongoDBExporter mongodb_exporter = 5; + PostgresExporter postgres_exporter = 6; + ProxySQLExporter proxysql_exporter = 7; + QANMySQLPerfSchemaAgent qan_mysql_perfschema_agent = 8; + QANMySQLSlowlogAgent qan_mysql_slowlog_agent = 9; + QANMongoDBProfilerAgent qan_mongodb_profiler_agent = 10; + QANPostgreSQLPgStatementsAgent qan_postgresql_pgstatements_agent = 11; + QANPostgreSQLPgStatMonitorAgent qan_postgresql_pgstatmonitor_agent = 12; + ExternalExporter external_exporter = 13; + RDSExporter rds_exporter = 14; AzureDatabaseExporter azure_database_exporter = 15; } } @@ -668,7 +669,35 @@ message AddPMMAgentResponse { // Add/Change NodeExporter -message AddNodeExporterRequest { +message AddExporterRequest { + oneof exporter { + AddNodeExporterParams node_exporter = 1; + AddMySQLdExporterParams mysqld_exporter = 2; + AddMongoDBExporterParams mongodb_exporter = 3; + AddPostgresExporterParams postgres_exporter = 4; + AddProxySQLExporterParams proxysql_exporter = 5; + AddExternalExporterParams external_exporter = 6; + AddRDSExporterParams rds_exporter = 7; + AddAzureDatabaseExporterParams azure_database_exporter = 8; + } +} + +message AddExporterResponse { + oneof exporter { + NodeExporter node_exporter = 1; + MySQLdExporter mysqld_exporter = 2; + MongoDBExporter mongodb_exporter = 3; + PostgresExporter postgres_exporter = 4; + ProxySQLExporter proxysql_exporter = 5; + ExternalExporter external_exporter = 6; + RDSExporter rds_exporter = 7; + AzureDatabaseExporter azure_database_exporter = 8; + } + // Actual table count for SQL databases at the moment of adding. + int32 table_count = 9; +} + +message AddNodeExporterParams { // The pmm-agent identifier which runs this instance. string pmm_agent_id = 1 [(validate.rules).string.min_len = 1]; // Custom user-assigned labels. @@ -683,10 +712,6 @@ message AddNodeExporterRequest { bool expose_exporter = 6; } -message AddNodeExporterResponse { - NodeExporter node_exporter = 1; -} - message ChangeNodeExporterRequest { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; @@ -698,7 +723,7 @@ message ChangeNodeExporterResponse { // Add/Change MySQLdExporter -message AddMySQLdExporterRequest { +message AddMySQLdExporterParams { // The pmm-agent identifier which runs this instance. string pmm_agent_id = 1 [(validate.rules).string.min_len = 1]; // Service identifier. @@ -737,12 +762,6 @@ message AddMySQLdExporterRequest { bool expose_exporter = 17; } -message AddMySQLdExporterResponse { - MySQLdExporter mysqld_exporter = 1; - // Actual table count at the moment of adding. - int32 table_count = 2; -} - message ChangeMySQLdExporterRequest { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; @@ -754,7 +773,7 @@ message ChangeMySQLdExporterResponse { // Add/Change MongoDBExporter -message AddMongoDBExporterRequest { +message AddMongoDBExporterParams { // The pmm-agent identifier which runs this instance. string pmm_agent_id = 1 [(validate.rules).string.min_len = 1]; // Service identifier. @@ -800,10 +819,6 @@ message AddMongoDBExporterRequest { bool expose_exporter = 20; } -message AddMongoDBExporterResponse { - MongoDBExporter mongodb_exporter = 1; -} - message ChangeMongoDBExporterRequest { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; @@ -815,7 +830,7 @@ message ChangeMongoDBExporterResponse { // Add/Change PostgresExporter -message AddPostgresExporterRequest { +message AddPostgresExporterParams { // The pmm-agent identifier which runs this instance. string pmm_agent_id = 1 [(validate.rules).string.min_len = 1]; // Service identifier. @@ -852,10 +867,6 @@ message AddPostgresExporterRequest { bool expose_exporter = 17; } -message AddPostgresExporterResponse { - PostgresExporter postgres_exporter = 1; -} - message ChangePostgresExporterRequest { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; @@ -867,7 +878,7 @@ message ChangePostgresExporterResponse { // Add/Change ProxySQLExporter -message AddProxySQLExporterRequest { +message AddProxySQLExporterParams { // The pmm-agent identifier which runs this instance. string pmm_agent_id = 1 [(validate.rules).string.min_len = 1]; // Service identifier. @@ -896,9 +907,7 @@ message AddProxySQLExporterRequest { bool expose_exporter = 13; } -message AddProxySQLExporterResponse { - ProxySQLExporter proxysql_exporter = 1; -} +// TODO: remove AddProxySQLExporterResponse message ChangeProxySQLExporterRequest { string agent_id = 1 [(validate.rules).string.min_len = 1]; @@ -1154,7 +1163,7 @@ message ChangeQANPostgreSQLPgStatMonitorAgentResponse { // Add/Change RDSExporter -message AddRDSExporterRequest { +message AddRDSExporterParams { // The pmm-agent identifier which runs this instance. string pmm_agent_id = 1 [(validate.rules).string.min_len = 1]; // Node identifier. @@ -1177,10 +1186,6 @@ message AddRDSExporterRequest { LogLevel log_level = 10; } -message AddRDSExporterResponse { - RDSExporter rds_exporter = 1; -} - message ChangeRDSExporterRequest { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; @@ -1192,7 +1197,7 @@ message ChangeRDSExporterResponse { // Add/Change ExternalExporter -message AddExternalExporterRequest { +message AddExternalExporterParams { // The node identifier where this instance is run. string runs_on_node_id = 1 [(validate.rules).string.min_len = 1]; // Service identifier. @@ -1216,10 +1221,6 @@ message AddExternalExporterRequest { bool push_metrics = 11; } -message AddExternalExporterResponse { - ExternalExporter external_exporter = 1; -} - message ChangeExternalExporterRequest { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; @@ -1231,7 +1232,7 @@ message ChangeExternalExporterResponse { // Add/Change AzureDatabaseExporter -message AddAzureDatabaseExporterRequest { +message AddAzureDatabaseExporterParams { // The pmm-agent identifier which runs this instance. string pmm_agent_id = 1 [(validate.rules).string.min_len = 1]; // Node identifier. @@ -1258,10 +1259,6 @@ message AddAzureDatabaseExporterRequest { LogLevel log_level = 12; } -message AddAzureDatabaseExporterResponse { - AzureDatabaseExporter azure_database_exporter = 1; -} - message ChangeAzureDatabaseExporterRequest { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; @@ -1327,15 +1324,15 @@ service AgentsService { description: "Adds PMM Agent." }; } - // AddNodeExporter adds node_exporter Agent. - rpc AddNodeExporter(AddNodeExporterRequest) returns (AddNodeExporterResponse) { + // AddExporter adds any type of exporter Agent. + rpc AddExporter(AddExporterRequest) returns (AddExporterResponse) { option (google.api.http) = { - post: "/v1/inventory/Agents/AddNodeExporter" + post: "/v1/inventory/Agents/AddExporter" body: "*" }; option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Add Node Exporter" - description: "Adds node_exporter Agent." + summary: "Add an Exporter" + description: "Adds an Exporter Agent." }; } // ChangeNodeExporter changes node_exporter Agent. @@ -1349,17 +1346,6 @@ service AgentsService { description: "Changes node_exporter Agent." }; } - // AddMySQLdExporter adds mysqld_exporter Agent. - rpc AddMySQLdExporter(AddMySQLdExporterRequest) returns (AddMySQLdExporterResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/AddMySQLdExporter" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Add mysqld Exporter" - description: "Adds mysqld_exporter Agent." - }; - } // ChangeMySQLdExporter changes mysqld_exporter Agent. rpc ChangeMySQLdExporter(ChangeMySQLdExporterRequest) returns (ChangeMySQLdExporterResponse) { option (google.api.http) = { @@ -1371,17 +1357,6 @@ service AgentsService { description: "Changes mysqld_exporter Agent." }; } - // AddMongoDBExporter adds mongodb_exporter Agent. - rpc AddMongoDBExporter(AddMongoDBExporterRequest) returns (AddMongoDBExporterResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/AddMongoDBExporter" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Add MongoDB Exporter" - description: "Adds mongodb_exporter Agent." - }; - } // ChangeMongoDBExporter changes mongodb_exporter Agent. rpc ChangeMongoDBExporter(ChangeMongoDBExporterRequest) returns (ChangeMongoDBExporterResponse) { option (google.api.http) = { @@ -1393,17 +1368,6 @@ service AgentsService { description: "Changes mongodb_exporter Agent." }; } - // AddPostgresExporter adds postgres_exporter Agent. - rpc AddPostgresExporter(AddPostgresExporterRequest) returns (AddPostgresExporterResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/AddPostgresExporter" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Add Postgres Exporter" - description: "Adds postgres_exporter Agent." - }; - } // ChangePostgresExporter changes postgres_exporter Agent. rpc ChangePostgresExporter(ChangePostgresExporterRequest) returns (ChangePostgresExporterResponse) { option (google.api.http) = { @@ -1415,17 +1379,6 @@ service AgentsService { description: "Changes postgres_exporter Agent." }; } - // AddProxySQLExporter adds proxysql_exporter Agent. - rpc AddProxySQLExporter(AddProxySQLExporterRequest) returns (AddProxySQLExporterResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/AddProxySQLExporter" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Add ProxySQL Exporter" - description: "Adds proxysql_exporter Agent." - }; - } // ChangeProxySQLExporter changes proxysql_exporter Agent. rpc ChangeProxySQLExporter(ChangeProxySQLExporterRequest) returns (ChangeProxySQLExporterResponse) { option (google.api.http) = { @@ -1547,17 +1500,6 @@ service AgentsService { description: "Changes 'Query Analytics PostgreSQL pg_stat_monitor' Agent." }; } - // AddRDSExporter adds rds_exporter Agent. - rpc AddRDSExporter(AddRDSExporterRequest) returns (AddRDSExporterResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/AddRDSExporter" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Add RDS Exporter" - description: "Adds rds_exporter Agent." - }; - } // ChangeRDSExporter changes rds_exporter Agent. rpc ChangeRDSExporter(ChangeRDSExporterRequest) returns (ChangeRDSExporterResponse) { option (google.api.http) = { @@ -1569,17 +1511,6 @@ service AgentsService { description: "Changes rds_exporter Agent." }; } - // AddExternalExporter adds external_exporter Agent. - rpc AddExternalExporter(AddExternalExporterRequest) returns (AddExternalExporterResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/AddExternalExporter" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Add External Exporter" - description: "Adds external_exporter Agent." - }; - } // ChangeExternalExporter changes external_exporter Agent. rpc ChangeExternalExporter(ChangeExternalExporterRequest) returns (ChangeExternalExporterResponse) { option (google.api.http) = { @@ -1591,17 +1522,6 @@ service AgentsService { description: "Changes external_exporter Agent." }; } - // AddAzureDatabaseExporter adds azure_database_exporter Agent. - rpc AddAzureDatabaseExporter(AddAzureDatabaseExporterRequest) returns (AddAzureDatabaseExporterResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/AddAzureDatabaseExporter" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Add Azure Database Exporter" - description: "Adds azure_database_exporter Agent." - }; - } // ChangeAzureDatabaseExporter changes azure_database_exporter Agent. rpc ChangeAzureDatabaseExporter(ChangeAzureDatabaseExporterRequest) returns (ChangeAzureDatabaseExporterResponse) { option (google.api.http) = { @@ -1613,15 +1533,15 @@ service AgentsService { description: "Changes azure_database_exporter Agent." }; } - // RemoveAgent removes Agent. + // RemoveAgent removes an Agent. rpc RemoveAgent(RemoveAgentRequest) returns (RemoveAgentResponse) { option (google.api.http) = { post: "/v1/inventory/Agents/Remove" body: "*" }; option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Remove Agent" - description: "Removes Agent." + summary: "Remove an Agent" + description: "Removes an Agent." }; } } diff --git a/api/inventory/v1/agents_grpc.pb.go b/api/inventory/v1/agents_grpc.pb.go index ddb039b925..199e0051c3 100644 --- a/api/inventory/v1/agents_grpc.pb.go +++ b/api/inventory/v1/agents_grpc.pb.go @@ -24,15 +24,11 @@ const ( AgentsService_GetAgent_FullMethodName = "/inventory.v1.AgentsService/GetAgent" AgentsService_GetAgentLogs_FullMethodName = "/inventory.v1.AgentsService/GetAgentLogs" AgentsService_AddPMMAgent_FullMethodName = "/inventory.v1.AgentsService/AddPMMAgent" - AgentsService_AddNodeExporter_FullMethodName = "/inventory.v1.AgentsService/AddNodeExporter" + AgentsService_AddExporter_FullMethodName = "/inventory.v1.AgentsService/AddExporter" AgentsService_ChangeNodeExporter_FullMethodName = "/inventory.v1.AgentsService/ChangeNodeExporter" - AgentsService_AddMySQLdExporter_FullMethodName = "/inventory.v1.AgentsService/AddMySQLdExporter" AgentsService_ChangeMySQLdExporter_FullMethodName = "/inventory.v1.AgentsService/ChangeMySQLdExporter" - AgentsService_AddMongoDBExporter_FullMethodName = "/inventory.v1.AgentsService/AddMongoDBExporter" AgentsService_ChangeMongoDBExporter_FullMethodName = "/inventory.v1.AgentsService/ChangeMongoDBExporter" - AgentsService_AddPostgresExporter_FullMethodName = "/inventory.v1.AgentsService/AddPostgresExporter" AgentsService_ChangePostgresExporter_FullMethodName = "/inventory.v1.AgentsService/ChangePostgresExporter" - AgentsService_AddProxySQLExporter_FullMethodName = "/inventory.v1.AgentsService/AddProxySQLExporter" AgentsService_ChangeProxySQLExporter_FullMethodName = "/inventory.v1.AgentsService/ChangeProxySQLExporter" AgentsService_AddQANMySQLPerfSchemaAgent_FullMethodName = "/inventory.v1.AgentsService/AddQANMySQLPerfSchemaAgent" AgentsService_ChangeQANMySQLPerfSchemaAgent_FullMethodName = "/inventory.v1.AgentsService/ChangeQANMySQLPerfSchemaAgent" @@ -44,11 +40,8 @@ const ( AgentsService_ChangeQANPostgreSQLPgStatementsAgent_FullMethodName = "/inventory.v1.AgentsService/ChangeQANPostgreSQLPgStatementsAgent" AgentsService_AddQANPostgreSQLPgStatMonitorAgent_FullMethodName = "/inventory.v1.AgentsService/AddQANPostgreSQLPgStatMonitorAgent" AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_FullMethodName = "/inventory.v1.AgentsService/ChangeQANPostgreSQLPgStatMonitorAgent" - AgentsService_AddRDSExporter_FullMethodName = "/inventory.v1.AgentsService/AddRDSExporter" AgentsService_ChangeRDSExporter_FullMethodName = "/inventory.v1.AgentsService/ChangeRDSExporter" - AgentsService_AddExternalExporter_FullMethodName = "/inventory.v1.AgentsService/AddExternalExporter" AgentsService_ChangeExternalExporter_FullMethodName = "/inventory.v1.AgentsService/ChangeExternalExporter" - AgentsService_AddAzureDatabaseExporter_FullMethodName = "/inventory.v1.AgentsService/AddAzureDatabaseExporter" AgentsService_ChangeAzureDatabaseExporter_FullMethodName = "/inventory.v1.AgentsService/ChangeAzureDatabaseExporter" AgentsService_RemoveAgent_FullMethodName = "/inventory.v1.AgentsService/RemoveAgent" ) @@ -65,24 +58,16 @@ type AgentsServiceClient interface { GetAgentLogs(ctx context.Context, in *GetAgentLogsRequest, opts ...grpc.CallOption) (*GetAgentLogsResponse, error) // AddPMMAgent adds pmm-agent Agent. AddPMMAgent(ctx context.Context, in *AddPMMAgentRequest, opts ...grpc.CallOption) (*AddPMMAgentResponse, error) - // AddNodeExporter adds node_exporter Agent. - AddNodeExporter(ctx context.Context, in *AddNodeExporterRequest, opts ...grpc.CallOption) (*AddNodeExporterResponse, error) + // AddExporter adds any type of exporter Agent. + AddExporter(ctx context.Context, in *AddExporterRequest, opts ...grpc.CallOption) (*AddExporterResponse, error) // ChangeNodeExporter changes node_exporter Agent. ChangeNodeExporter(ctx context.Context, in *ChangeNodeExporterRequest, opts ...grpc.CallOption) (*ChangeNodeExporterResponse, error) - // AddMySQLdExporter adds mysqld_exporter Agent. - AddMySQLdExporter(ctx context.Context, in *AddMySQLdExporterRequest, opts ...grpc.CallOption) (*AddMySQLdExporterResponse, error) // ChangeMySQLdExporter changes mysqld_exporter Agent. ChangeMySQLdExporter(ctx context.Context, in *ChangeMySQLdExporterRequest, opts ...grpc.CallOption) (*ChangeMySQLdExporterResponse, error) - // AddMongoDBExporter adds mongodb_exporter Agent. - AddMongoDBExporter(ctx context.Context, in *AddMongoDBExporterRequest, opts ...grpc.CallOption) (*AddMongoDBExporterResponse, error) // ChangeMongoDBExporter changes mongodb_exporter Agent. ChangeMongoDBExporter(ctx context.Context, in *ChangeMongoDBExporterRequest, opts ...grpc.CallOption) (*ChangeMongoDBExporterResponse, error) - // AddPostgresExporter adds postgres_exporter Agent. - AddPostgresExporter(ctx context.Context, in *AddPostgresExporterRequest, opts ...grpc.CallOption) (*AddPostgresExporterResponse, error) // ChangePostgresExporter changes postgres_exporter Agent. ChangePostgresExporter(ctx context.Context, in *ChangePostgresExporterRequest, opts ...grpc.CallOption) (*ChangePostgresExporterResponse, error) - // AddProxySQLExporter adds proxysql_exporter Agent. - AddProxySQLExporter(ctx context.Context, in *AddProxySQLExporterRequest, opts ...grpc.CallOption) (*AddProxySQLExporterResponse, error) // ChangeProxySQLExporter changes proxysql_exporter Agent. ChangeProxySQLExporter(ctx context.Context, in *ChangeProxySQLExporterRequest, opts ...grpc.CallOption) (*ChangeProxySQLExporterResponse, error) // AddQANMySQLPerfSchemaAgent adds QAN MySQL PerfSchema Agent. @@ -105,19 +90,13 @@ type AgentsServiceClient interface { AddQANPostgreSQLPgStatMonitorAgent(ctx context.Context, in *AddQANPostgreSQLPgStatMonitorAgentRequest, opts ...grpc.CallOption) (*AddQANPostgreSQLPgStatMonitorAgentResponse, error) // ChangeQANPostgreSQLPgStatMonitorAgent changes QAN PostgreSQL PgStat Monitor Agent. ChangeQANPostgreSQLPgStatMonitorAgent(ctx context.Context, in *ChangeQANPostgreSQLPgStatMonitorAgentRequest, opts ...grpc.CallOption) (*ChangeQANPostgreSQLPgStatMonitorAgentResponse, error) - // AddRDSExporter adds rds_exporter Agent. - AddRDSExporter(ctx context.Context, in *AddRDSExporterRequest, opts ...grpc.CallOption) (*AddRDSExporterResponse, error) // ChangeRDSExporter changes rds_exporter Agent. ChangeRDSExporter(ctx context.Context, in *ChangeRDSExporterRequest, opts ...grpc.CallOption) (*ChangeRDSExporterResponse, error) - // AddExternalExporter adds external_exporter Agent. - AddExternalExporter(ctx context.Context, in *AddExternalExporterRequest, opts ...grpc.CallOption) (*AddExternalExporterResponse, error) // ChangeExternalExporter changes external_exporter Agent. ChangeExternalExporter(ctx context.Context, in *ChangeExternalExporterRequest, opts ...grpc.CallOption) (*ChangeExternalExporterResponse, error) - // AddAzureDatabaseExporter adds azure_database_exporter Agent. - AddAzureDatabaseExporter(ctx context.Context, in *AddAzureDatabaseExporterRequest, opts ...grpc.CallOption) (*AddAzureDatabaseExporterResponse, error) // ChangeAzureDatabaseExporter changes azure_database_exporter Agent. ChangeAzureDatabaseExporter(ctx context.Context, in *ChangeAzureDatabaseExporterRequest, opts ...grpc.CallOption) (*ChangeAzureDatabaseExporterResponse, error) - // RemoveAgent removes Agent. + // RemoveAgent removes an Agent. RemoveAgent(ctx context.Context, in *RemoveAgentRequest, opts ...grpc.CallOption) (*RemoveAgentResponse, error) } @@ -165,9 +144,9 @@ func (c *agentsServiceClient) AddPMMAgent(ctx context.Context, in *AddPMMAgentRe return out, nil } -func (c *agentsServiceClient) AddNodeExporter(ctx context.Context, in *AddNodeExporterRequest, opts ...grpc.CallOption) (*AddNodeExporterResponse, error) { - out := new(AddNodeExporterResponse) - err := c.cc.Invoke(ctx, AgentsService_AddNodeExporter_FullMethodName, in, out, opts...) +func (c *agentsServiceClient) AddExporter(ctx context.Context, in *AddExporterRequest, opts ...grpc.CallOption) (*AddExporterResponse, error) { + out := new(AddExporterResponse) + err := c.cc.Invoke(ctx, AgentsService_AddExporter_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -183,15 +162,6 @@ func (c *agentsServiceClient) ChangeNodeExporter(ctx context.Context, in *Change return out, nil } -func (c *agentsServiceClient) AddMySQLdExporter(ctx context.Context, in *AddMySQLdExporterRequest, opts ...grpc.CallOption) (*AddMySQLdExporterResponse, error) { - out := new(AddMySQLdExporterResponse) - err := c.cc.Invoke(ctx, AgentsService_AddMySQLdExporter_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...) @@ -201,15 +171,6 @@ func (c *agentsServiceClient) ChangeMySQLdExporter(ctx context.Context, in *Chan return out, nil } -func (c *agentsServiceClient) AddMongoDBExporter(ctx context.Context, in *AddMongoDBExporterRequest, opts ...grpc.CallOption) (*AddMongoDBExporterResponse, error) { - out := new(AddMongoDBExporterResponse) - err := c.cc.Invoke(ctx, AgentsService_AddMongoDBExporter_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...) @@ -219,15 +180,6 @@ func (c *agentsServiceClient) ChangeMongoDBExporter(ctx context.Context, in *Cha return out, nil } -func (c *agentsServiceClient) AddPostgresExporter(ctx context.Context, in *AddPostgresExporterRequest, opts ...grpc.CallOption) (*AddPostgresExporterResponse, error) { - out := new(AddPostgresExporterResponse) - err := c.cc.Invoke(ctx, AgentsService_AddPostgresExporter_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...) @@ -237,15 +189,6 @@ func (c *agentsServiceClient) ChangePostgresExporter(ctx context.Context, in *Ch return out, nil } -func (c *agentsServiceClient) AddProxySQLExporter(ctx context.Context, in *AddProxySQLExporterRequest, opts ...grpc.CallOption) (*AddProxySQLExporterResponse, error) { - out := new(AddProxySQLExporterResponse) - err := c.cc.Invoke(ctx, AgentsService_AddProxySQLExporter_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...) @@ -345,15 +288,6 @@ func (c *agentsServiceClient) ChangeQANPostgreSQLPgStatMonitorAgent(ctx context. return out, nil } -func (c *agentsServiceClient) AddRDSExporter(ctx context.Context, in *AddRDSExporterRequest, opts ...grpc.CallOption) (*AddRDSExporterResponse, error) { - out := new(AddRDSExporterResponse) - err := c.cc.Invoke(ctx, AgentsService_AddRDSExporter_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...) @@ -363,15 +297,6 @@ func (c *agentsServiceClient) ChangeRDSExporter(ctx context.Context, in *ChangeR return out, nil } -func (c *agentsServiceClient) AddExternalExporter(ctx context.Context, in *AddExternalExporterRequest, opts ...grpc.CallOption) (*AddExternalExporterResponse, error) { - out := new(AddExternalExporterResponse) - err := c.cc.Invoke(ctx, AgentsService_AddExternalExporter_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...) @@ -381,15 +306,6 @@ func (c *agentsServiceClient) ChangeExternalExporter(ctx context.Context, in *Ch return out, nil } -func (c *agentsServiceClient) AddAzureDatabaseExporter(ctx context.Context, in *AddAzureDatabaseExporterRequest, opts ...grpc.CallOption) (*AddAzureDatabaseExporterResponse, error) { - out := new(AddAzureDatabaseExporterResponse) - err := c.cc.Invoke(ctx, AgentsService_AddAzureDatabaseExporter_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...) @@ -420,24 +336,16 @@ type AgentsServiceServer interface { GetAgentLogs(context.Context, *GetAgentLogsRequest) (*GetAgentLogsResponse, error) // AddPMMAgent adds pmm-agent Agent. AddPMMAgent(context.Context, *AddPMMAgentRequest) (*AddPMMAgentResponse, error) - // AddNodeExporter adds node_exporter Agent. - AddNodeExporter(context.Context, *AddNodeExporterRequest) (*AddNodeExporterResponse, error) + // AddExporter adds any type of exporter Agent. + AddExporter(context.Context, *AddExporterRequest) (*AddExporterResponse, error) // ChangeNodeExporter changes node_exporter Agent. ChangeNodeExporter(context.Context, *ChangeNodeExporterRequest) (*ChangeNodeExporterResponse, error) - // AddMySQLdExporter adds mysqld_exporter Agent. - AddMySQLdExporter(context.Context, *AddMySQLdExporterRequest) (*AddMySQLdExporterResponse, error) // ChangeMySQLdExporter changes mysqld_exporter Agent. ChangeMySQLdExporter(context.Context, *ChangeMySQLdExporterRequest) (*ChangeMySQLdExporterResponse, error) - // AddMongoDBExporter adds mongodb_exporter Agent. - AddMongoDBExporter(context.Context, *AddMongoDBExporterRequest) (*AddMongoDBExporterResponse, error) // ChangeMongoDBExporter changes mongodb_exporter Agent. ChangeMongoDBExporter(context.Context, *ChangeMongoDBExporterRequest) (*ChangeMongoDBExporterResponse, error) - // AddPostgresExporter adds postgres_exporter Agent. - AddPostgresExporter(context.Context, *AddPostgresExporterRequest) (*AddPostgresExporterResponse, error) // ChangePostgresExporter changes postgres_exporter Agent. ChangePostgresExporter(context.Context, *ChangePostgresExporterRequest) (*ChangePostgresExporterResponse, error) - // AddProxySQLExporter adds proxysql_exporter Agent. - AddProxySQLExporter(context.Context, *AddProxySQLExporterRequest) (*AddProxySQLExporterResponse, error) // ChangeProxySQLExporter changes proxysql_exporter Agent. ChangeProxySQLExporter(context.Context, *ChangeProxySQLExporterRequest) (*ChangeProxySQLExporterResponse, error) // AddQANMySQLPerfSchemaAgent adds QAN MySQL PerfSchema Agent. @@ -460,19 +368,13 @@ type AgentsServiceServer interface { AddQANPostgreSQLPgStatMonitorAgent(context.Context, *AddQANPostgreSQLPgStatMonitorAgentRequest) (*AddQANPostgreSQLPgStatMonitorAgentResponse, error) // ChangeQANPostgreSQLPgStatMonitorAgent changes QAN PostgreSQL PgStat Monitor Agent. ChangeQANPostgreSQLPgStatMonitorAgent(context.Context, *ChangeQANPostgreSQLPgStatMonitorAgentRequest) (*ChangeQANPostgreSQLPgStatMonitorAgentResponse, error) - // AddRDSExporter adds rds_exporter Agent. - AddRDSExporter(context.Context, *AddRDSExporterRequest) (*AddRDSExporterResponse, error) // ChangeRDSExporter changes rds_exporter Agent. ChangeRDSExporter(context.Context, *ChangeRDSExporterRequest) (*ChangeRDSExporterResponse, error) - // AddExternalExporter adds external_exporter Agent. - AddExternalExporter(context.Context, *AddExternalExporterRequest) (*AddExternalExporterResponse, error) // ChangeExternalExporter changes external_exporter Agent. ChangeExternalExporter(context.Context, *ChangeExternalExporterRequest) (*ChangeExternalExporterResponse, error) - // AddAzureDatabaseExporter adds azure_database_exporter Agent. - AddAzureDatabaseExporter(context.Context, *AddAzureDatabaseExporterRequest) (*AddAzureDatabaseExporterResponse, error) // ChangeAzureDatabaseExporter changes azure_database_exporter Agent. ChangeAzureDatabaseExporter(context.Context, *ChangeAzureDatabaseExporterRequest) (*ChangeAzureDatabaseExporterResponse, error) - // RemoveAgent removes Agent. + // RemoveAgent removes an Agent. RemoveAgent(context.Context, *RemoveAgentRequest) (*RemoveAgentResponse, error) mustEmbedUnimplementedAgentsServiceServer() } @@ -496,42 +398,26 @@ func (UnimplementedAgentsServiceServer) AddPMMAgent(context.Context, *AddPMMAgen return nil, status.Errorf(codes.Unimplemented, "method AddPMMAgent not implemented") } -func (UnimplementedAgentsServiceServer) AddNodeExporter(context.Context, *AddNodeExporterRequest) (*AddNodeExporterResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AddNodeExporter not implemented") +func (UnimplementedAgentsServiceServer) AddExporter(context.Context, *AddExporterRequest) (*AddExporterResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method AddExporter not implemented") } func (UnimplementedAgentsServiceServer) ChangeNodeExporter(context.Context, *ChangeNodeExporterRequest) (*ChangeNodeExporterResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ChangeNodeExporter not implemented") } -func (UnimplementedAgentsServiceServer) AddMySQLdExporter(context.Context, *AddMySQLdExporterRequest) (*AddMySQLdExporterResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AddMySQLdExporter not implemented") -} - func (UnimplementedAgentsServiceServer) ChangeMySQLdExporter(context.Context, *ChangeMySQLdExporterRequest) (*ChangeMySQLdExporterResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ChangeMySQLdExporter not implemented") } -func (UnimplementedAgentsServiceServer) AddMongoDBExporter(context.Context, *AddMongoDBExporterRequest) (*AddMongoDBExporterResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AddMongoDBExporter not implemented") -} - func (UnimplementedAgentsServiceServer) ChangeMongoDBExporter(context.Context, *ChangeMongoDBExporterRequest) (*ChangeMongoDBExporterResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ChangeMongoDBExporter not implemented") } -func (UnimplementedAgentsServiceServer) AddPostgresExporter(context.Context, *AddPostgresExporterRequest) (*AddPostgresExporterResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AddPostgresExporter not implemented") -} - func (UnimplementedAgentsServiceServer) ChangePostgresExporter(context.Context, *ChangePostgresExporterRequest) (*ChangePostgresExporterResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ChangePostgresExporter not implemented") } -func (UnimplementedAgentsServiceServer) AddProxySQLExporter(context.Context, *AddProxySQLExporterRequest) (*AddProxySQLExporterResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AddProxySQLExporter not implemented") -} - func (UnimplementedAgentsServiceServer) ChangeProxySQLExporter(context.Context, *ChangeProxySQLExporterRequest) (*ChangeProxySQLExporterResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ChangeProxySQLExporter not implemented") } @@ -576,26 +462,14 @@ func (UnimplementedAgentsServiceServer) ChangeQANPostgreSQLPgStatMonitorAgent(co return nil, status.Errorf(codes.Unimplemented, "method ChangeQANPostgreSQLPgStatMonitorAgent not implemented") } -func (UnimplementedAgentsServiceServer) AddRDSExporter(context.Context, *AddRDSExporterRequest) (*AddRDSExporterResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AddRDSExporter not implemented") -} - func (UnimplementedAgentsServiceServer) ChangeRDSExporter(context.Context, *ChangeRDSExporterRequest) (*ChangeRDSExporterResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ChangeRDSExporter not implemented") } -func (UnimplementedAgentsServiceServer) AddExternalExporter(context.Context, *AddExternalExporterRequest) (*AddExternalExporterResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AddExternalExporter not implemented") -} - func (UnimplementedAgentsServiceServer) ChangeExternalExporter(context.Context, *ChangeExternalExporterRequest) (*ChangeExternalExporterResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ChangeExternalExporter not implemented") } -func (UnimplementedAgentsServiceServer) AddAzureDatabaseExporter(context.Context, *AddAzureDatabaseExporterRequest) (*AddAzureDatabaseExporterResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AddAzureDatabaseExporter not implemented") -} - func (UnimplementedAgentsServiceServer) ChangeAzureDatabaseExporter(context.Context, *ChangeAzureDatabaseExporterRequest) (*ChangeAzureDatabaseExporterResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ChangeAzureDatabaseExporter not implemented") } @@ -688,20 +562,20 @@ func _AgentsService_AddPMMAgent_Handler(srv interface{}, ctx context.Context, de return interceptor(ctx, in, info, handler) } -func _AgentsService_AddNodeExporter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AddNodeExporterRequest) +func _AgentsService_AddExporter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(AddExporterRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(AgentsServiceServer).AddNodeExporter(ctx, in) + return srv.(AgentsServiceServer).AddExporter(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: AgentsService_AddNodeExporter_FullMethodName, + FullMethod: AgentsService_AddExporter_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).AddNodeExporter(ctx, req.(*AddNodeExporterRequest)) + return srv.(AgentsServiceServer).AddExporter(ctx, req.(*AddExporterRequest)) } return interceptor(ctx, in, info, handler) } @@ -724,24 +598,6 @@ func _AgentsService_ChangeNodeExporter_Handler(srv interface{}, ctx context.Cont return interceptor(ctx, in, info, handler) } -func _AgentsService_AddMySQLdExporter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AddMySQLdExporterRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).AddMySQLdExporter(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_AddMySQLdExporter_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).AddMySQLdExporter(ctx, req.(*AddMySQLdExporterRequest)) - } - 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 { @@ -760,24 +616,6 @@ func _AgentsService_ChangeMySQLdExporter_Handler(srv interface{}, ctx context.Co return interceptor(ctx, in, info, handler) } -func _AgentsService_AddMongoDBExporter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AddMongoDBExporterRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).AddMongoDBExporter(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_AddMongoDBExporter_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).AddMongoDBExporter(ctx, req.(*AddMongoDBExporterRequest)) - } - 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 { @@ -796,24 +634,6 @@ func _AgentsService_ChangeMongoDBExporter_Handler(srv interface{}, ctx context.C return interceptor(ctx, in, info, handler) } -func _AgentsService_AddPostgresExporter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AddPostgresExporterRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).AddPostgresExporter(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_AddPostgresExporter_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).AddPostgresExporter(ctx, req.(*AddPostgresExporterRequest)) - } - 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 { @@ -832,24 +652,6 @@ func _AgentsService_ChangePostgresExporter_Handler(srv interface{}, ctx context. return interceptor(ctx, in, info, handler) } -func _AgentsService_AddProxySQLExporter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AddProxySQLExporterRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).AddProxySQLExporter(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_AddProxySQLExporter_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).AddProxySQLExporter(ctx, req.(*AddProxySQLExporterRequest)) - } - 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 { @@ -1048,24 +850,6 @@ func _AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_Handler(srv interface{ return interceptor(ctx, in, info, handler) } -func _AgentsService_AddRDSExporter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AddRDSExporterRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).AddRDSExporter(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_AddRDSExporter_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).AddRDSExporter(ctx, req.(*AddRDSExporterRequest)) - } - 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 { @@ -1084,24 +868,6 @@ func _AgentsService_ChangeRDSExporter_Handler(srv interface{}, ctx context.Conte return interceptor(ctx, in, info, handler) } -func _AgentsService_AddExternalExporter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AddExternalExporterRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).AddExternalExporter(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_AddExternalExporter_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).AddExternalExporter(ctx, req.(*AddExternalExporterRequest)) - } - 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 { @@ -1120,24 +886,6 @@ func _AgentsService_ChangeExternalExporter_Handler(srv interface{}, ctx context. return interceptor(ctx, in, info, handler) } -func _AgentsService_AddAzureDatabaseExporter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AddAzureDatabaseExporterRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).AddAzureDatabaseExporter(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_AddAzureDatabaseExporter_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).AddAzureDatabaseExporter(ctx, req.(*AddAzureDatabaseExporterRequest)) - } - 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 { @@ -1198,41 +946,25 @@ var AgentsService_ServiceDesc = grpc.ServiceDesc{ Handler: _AgentsService_AddPMMAgent_Handler, }, { - MethodName: "AddNodeExporter", - Handler: _AgentsService_AddNodeExporter_Handler, + MethodName: "AddExporter", + Handler: _AgentsService_AddExporter_Handler, }, { MethodName: "ChangeNodeExporter", Handler: _AgentsService_ChangeNodeExporter_Handler, }, - { - MethodName: "AddMySQLdExporter", - Handler: _AgentsService_AddMySQLdExporter_Handler, - }, { MethodName: "ChangeMySQLdExporter", Handler: _AgentsService_ChangeMySQLdExporter_Handler, }, - { - MethodName: "AddMongoDBExporter", - Handler: _AgentsService_AddMongoDBExporter_Handler, - }, { MethodName: "ChangeMongoDBExporter", Handler: _AgentsService_ChangeMongoDBExporter_Handler, }, - { - MethodName: "AddPostgresExporter", - Handler: _AgentsService_AddPostgresExporter_Handler, - }, { MethodName: "ChangePostgresExporter", Handler: _AgentsService_ChangePostgresExporter_Handler, }, - { - MethodName: "AddProxySQLExporter", - Handler: _AgentsService_AddProxySQLExporter_Handler, - }, { MethodName: "ChangeProxySQLExporter", Handler: _AgentsService_ChangeProxySQLExporter_Handler, @@ -1277,26 +1009,14 @@ var AgentsService_ServiceDesc = grpc.ServiceDesc{ MethodName: "ChangeQANPostgreSQLPgStatMonitorAgent", Handler: _AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_Handler, }, - { - MethodName: "AddRDSExporter", - Handler: _AgentsService_AddRDSExporter_Handler, - }, { MethodName: "ChangeRDSExporter", Handler: _AgentsService_ChangeRDSExporter_Handler, }, - { - MethodName: "AddExternalExporter", - Handler: _AgentsService_AddExternalExporter_Handler, - }, { MethodName: "ChangeExternalExporter", Handler: _AgentsService_ChangeExternalExporter_Handler, }, - { - MethodName: "AddAzureDatabaseExporter", - Handler: _AgentsService_AddAzureDatabaseExporter_Handler, - }, { MethodName: "ChangeAzureDatabaseExporter", Handler: _AgentsService_ChangeAzureDatabaseExporter_Handler, diff --git a/api/inventory/v1/json/client/agents_service/add_azure_database_exporter_parameters.go b/api/inventory/v1/json/client/agents_service/add_azure_database_exporter_parameters.go deleted file mode 100644 index 1dd072c368..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_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" -) - -// NewAddAzureDatabaseExporterParams creates a new AddAzureDatabaseExporterParams 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 NewAddAzureDatabaseExporterParams() *AddAzureDatabaseExporterParams { - return &AddAzureDatabaseExporterParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewAddAzureDatabaseExporterParamsWithTimeout creates a new AddAzureDatabaseExporterParams object -// with the ability to set a timeout on a request. -func NewAddAzureDatabaseExporterParamsWithTimeout(timeout time.Duration) *AddAzureDatabaseExporterParams { - return &AddAzureDatabaseExporterParams{ - timeout: timeout, - } -} - -// NewAddAzureDatabaseExporterParamsWithContext creates a new AddAzureDatabaseExporterParams object -// with the ability to set a context for a request. -func NewAddAzureDatabaseExporterParamsWithContext(ctx context.Context) *AddAzureDatabaseExporterParams { - return &AddAzureDatabaseExporterParams{ - Context: ctx, - } -} - -// NewAddAzureDatabaseExporterParamsWithHTTPClient creates a new AddAzureDatabaseExporterParams object -// with the ability to set a custom HTTPClient for a request. -func NewAddAzureDatabaseExporterParamsWithHTTPClient(client *http.Client) *AddAzureDatabaseExporterParams { - return &AddAzureDatabaseExporterParams{ - HTTPClient: client, - } -} - -/* -AddAzureDatabaseExporterParams contains all the parameters to send to the API endpoint - - for the add azure database exporter operation. - - Typically these are written to a http.Request. -*/ -type AddAzureDatabaseExporterParams struct { - // Body. - Body AddAzureDatabaseExporterBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the add azure database exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddAzureDatabaseExporterParams) WithDefaults() *AddAzureDatabaseExporterParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the add azure database exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddAzureDatabaseExporterParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the add azure database exporter params -func (o *AddAzureDatabaseExporterParams) WithTimeout(timeout time.Duration) *AddAzureDatabaseExporterParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the add azure database exporter params -func (o *AddAzureDatabaseExporterParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the add azure database exporter params -func (o *AddAzureDatabaseExporterParams) WithContext(ctx context.Context) *AddAzureDatabaseExporterParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the add azure database exporter params -func (o *AddAzureDatabaseExporterParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the add azure database exporter params -func (o *AddAzureDatabaseExporterParams) WithHTTPClient(client *http.Client) *AddAzureDatabaseExporterParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the add azure database exporter params -func (o *AddAzureDatabaseExporterParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the add azure database exporter params -func (o *AddAzureDatabaseExporterParams) WithBody(body AddAzureDatabaseExporterBody) *AddAzureDatabaseExporterParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the add azure database exporter params -func (o *AddAzureDatabaseExporterParams) SetBody(body AddAzureDatabaseExporterBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *AddAzureDatabaseExporterParams) 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/add_azure_database_exporter_responses.go b/api/inventory/v1/json/client/agents_service/add_azure_database_exporter_responses.go deleted file mode 100644 index d152ecfe49..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_azure_database_exporter_responses.go +++ /dev/null @@ -1,694 +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" -) - -// AddAzureDatabaseExporterReader is a Reader for the AddAzureDatabaseExporter structure. -type AddAzureDatabaseExporterReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *AddAzureDatabaseExporterReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewAddAzureDatabaseExporterOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewAddAzureDatabaseExporterDefault(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 - } -} - -// NewAddAzureDatabaseExporterOK creates a AddAzureDatabaseExporterOK with default headers values -func NewAddAzureDatabaseExporterOK() *AddAzureDatabaseExporterOK { - return &AddAzureDatabaseExporterOK{} -} - -/* -AddAzureDatabaseExporterOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type AddAzureDatabaseExporterOK struct { - Payload *AddAzureDatabaseExporterOKBody -} - -func (o *AddAzureDatabaseExporterOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddAzureDatabaseExporter][%d] addAzureDatabaseExporterOk %+v", 200, o.Payload) -} - -func (o *AddAzureDatabaseExporterOK) GetPayload() *AddAzureDatabaseExporterOKBody { - return o.Payload -} - -func (o *AddAzureDatabaseExporterOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddAzureDatabaseExporterOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewAddAzureDatabaseExporterDefault creates a AddAzureDatabaseExporterDefault with default headers values -func NewAddAzureDatabaseExporterDefault(code int) *AddAzureDatabaseExporterDefault { - return &AddAzureDatabaseExporterDefault{ - _statusCode: code, - } -} - -/* -AddAzureDatabaseExporterDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type AddAzureDatabaseExporterDefault struct { - _statusCode int - - Payload *AddAzureDatabaseExporterDefaultBody -} - -// Code gets the status code for the add azure database exporter default response -func (o *AddAzureDatabaseExporterDefault) Code() int { - return o._statusCode -} - -func (o *AddAzureDatabaseExporterDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddAzureDatabaseExporter][%d] AddAzureDatabaseExporter default %+v", o._statusCode, o.Payload) -} - -func (o *AddAzureDatabaseExporterDefault) GetPayload() *AddAzureDatabaseExporterDefaultBody { - return o.Payload -} - -func (o *AddAzureDatabaseExporterDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddAzureDatabaseExporterDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -AddAzureDatabaseExporterBody add azure database exporter body -swagger:model AddAzureDatabaseExporterBody -*/ -type AddAzureDatabaseExporterBody struct { - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Node identifier. - NodeID string `json:"node_id,omitempty"` - - // Azure client ID - AzureClientID string `json:"azure_client_id,omitempty"` - - // Azure client secret - AzureClientSecret string `json:"azure_client_secret,omitempty"` - - // Azure tanant ID - AzureTenantID string `json:"azure_tenant_id,omitempty"` - - // Azure subscription ID - AzureSubscriptionID string `json:"azure_subscription_id,omitempty"` - - // Azure resource group. - AzureResourceGroup string `json:"azure_resource_group,omitempty"` - - // Azure 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"` - - // Skip connection check. - SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` - - // Enables push metrics mode for exporter. - PushMetrics bool `json:"push_metrics,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 add azure database exporter body -func (o *AddAzureDatabaseExporterBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var addAzureDatabaseExporterBodyTypeLogLevelPropEnum []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 { - addAzureDatabaseExporterBodyTypeLogLevelPropEnum = append(addAzureDatabaseExporterBodyTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddAzureDatabaseExporterBodyLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddAzureDatabaseExporterBodyLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddAzureDatabaseExporterBodyLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddAzureDatabaseExporterBodyLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddAzureDatabaseExporterBodyLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddAzureDatabaseExporterBodyLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddAzureDatabaseExporterBodyLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddAzureDatabaseExporterBodyLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddAzureDatabaseExporterBodyLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddAzureDatabaseExporterBodyLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddAzureDatabaseExporterBodyLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddAzureDatabaseExporterBodyLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddAzureDatabaseExporterBody) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addAzureDatabaseExporterBodyTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddAzureDatabaseExporterBody) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("body"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add azure database exporter body based on context it is used -func (o *AddAzureDatabaseExporterBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddAzureDatabaseExporterBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddAzureDatabaseExporterBody) UnmarshalBinary(b []byte) error { - var res AddAzureDatabaseExporterBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddAzureDatabaseExporterDefaultBody add azure database exporter default body -swagger:model AddAzureDatabaseExporterDefaultBody -*/ -type AddAzureDatabaseExporterDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*AddAzureDatabaseExporterDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this add azure database exporter default body -func (o *AddAzureDatabaseExporterDefaultBody) 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 *AddAzureDatabaseExporterDefaultBody) 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("AddAzureDatabaseExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddAzureDatabaseExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this add azure database exporter default body based on the context it is used -func (o *AddAzureDatabaseExporterDefaultBody) 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 *AddAzureDatabaseExporterDefaultBody) 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("AddAzureDatabaseExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddAzureDatabaseExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddAzureDatabaseExporterDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddAzureDatabaseExporterDefaultBody) UnmarshalBinary(b []byte) error { - var res AddAzureDatabaseExporterDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddAzureDatabaseExporterDefaultBodyDetailsItems0 add azure database exporter default body details items0 -swagger:model AddAzureDatabaseExporterDefaultBodyDetailsItems0 -*/ -type AddAzureDatabaseExporterDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this add azure database exporter default body details items0 -func (o *AddAzureDatabaseExporterDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this add azure database exporter default body details items0 based on context it is used -func (o *AddAzureDatabaseExporterDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddAzureDatabaseExporterDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddAzureDatabaseExporterDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res AddAzureDatabaseExporterDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddAzureDatabaseExporterOKBody add azure database exporter OK body -swagger:model AddAzureDatabaseExporterOKBody -*/ -type AddAzureDatabaseExporterOKBody struct { - // azure database exporter - AzureDatabaseExporter *AddAzureDatabaseExporterOKBodyAzureDatabaseExporter `json:"azure_database_exporter,omitempty"` -} - -// Validate validates this add azure database exporter OK body -func (o *AddAzureDatabaseExporterOKBody) 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 *AddAzureDatabaseExporterOKBody) 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("addAzureDatabaseExporterOk" + "." + "azure_database_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addAzureDatabaseExporterOk" + "." + "azure_database_exporter") - } - return err - } - } - - return nil -} - -// ContextValidate validate this add azure database exporter OK body based on the context it is used -func (o *AddAzureDatabaseExporterOKBody) 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 *AddAzureDatabaseExporterOKBody) 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("addAzureDatabaseExporterOk" + "." + "azure_database_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addAzureDatabaseExporterOk" + "." + "azure_database_exporter") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddAzureDatabaseExporterOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddAzureDatabaseExporterOKBody) UnmarshalBinary(b []byte) error { - var res AddAzureDatabaseExporterOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddAzureDatabaseExporterOKBodyAzureDatabaseExporter AzureDatabaseExporter runs on Generic or Container Node and exposes RemoteAzure Node metrics. -swagger:model AddAzureDatabaseExporterOKBodyAzureDatabaseExporter -*/ -type AddAzureDatabaseExporterOKBodyAzureDatabaseExporter 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. - // - // Status fields below. - 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 add azure database exporter OK body azure database exporter -func (o *AddAzureDatabaseExporterOKBodyAzureDatabaseExporter) 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 addAzureDatabaseExporterOkBodyAzureDatabaseExporterTypeStatusPropEnum []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 { - addAzureDatabaseExporterOkBodyAzureDatabaseExporterTypeStatusPropEnum = append(addAzureDatabaseExporterOkBodyAzureDatabaseExporterTypeStatusPropEnum, v) - } -} - -const ( - - // AddAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - AddAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // AddAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - AddAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // AddAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - AddAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // AddAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - AddAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // AddAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - AddAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // AddAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - AddAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // AddAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - AddAzureDatabaseExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *AddAzureDatabaseExporterOKBodyAzureDatabaseExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addAzureDatabaseExporterOkBodyAzureDatabaseExporterTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddAzureDatabaseExporterOKBodyAzureDatabaseExporter) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("addAzureDatabaseExporterOk"+"."+"azure_database_exporter"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var addAzureDatabaseExporterOkBodyAzureDatabaseExporterTypeLogLevelPropEnum []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 { - addAzureDatabaseExporterOkBodyAzureDatabaseExporterTypeLogLevelPropEnum = append(addAzureDatabaseExporterOkBodyAzureDatabaseExporterTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddAzureDatabaseExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddAzureDatabaseExporterOKBodyAzureDatabaseExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addAzureDatabaseExporterOkBodyAzureDatabaseExporterTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddAzureDatabaseExporterOKBodyAzureDatabaseExporter) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("addAzureDatabaseExporterOk"+"."+"azure_database_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add azure database exporter OK body azure database exporter based on context it is used -func (o *AddAzureDatabaseExporterOKBodyAzureDatabaseExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddAzureDatabaseExporterOKBodyAzureDatabaseExporter) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddAzureDatabaseExporterOKBodyAzureDatabaseExporter) UnmarshalBinary(b []byte) error { - var res AddAzureDatabaseExporterOKBodyAzureDatabaseExporter - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/add_exporter_parameters.go b/api/inventory/v1/json/client/agents_service/add_exporter_parameters.go new file mode 100644 index 0000000000..fabb743dbc --- /dev/null +++ b/api/inventory/v1/json/client/agents_service/add_exporter_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" +) + +// NewAddExporterParams creates a new AddExporterParams 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 NewAddExporterParams() *AddExporterParams { + return &AddExporterParams{ + timeout: cr.DefaultTimeout, + } +} + +// NewAddExporterParamsWithTimeout creates a new AddExporterParams object +// with the ability to set a timeout on a request. +func NewAddExporterParamsWithTimeout(timeout time.Duration) *AddExporterParams { + return &AddExporterParams{ + timeout: timeout, + } +} + +// NewAddExporterParamsWithContext creates a new AddExporterParams object +// with the ability to set a context for a request. +func NewAddExporterParamsWithContext(ctx context.Context) *AddExporterParams { + return &AddExporterParams{ + Context: ctx, + } +} + +// NewAddExporterParamsWithHTTPClient creates a new AddExporterParams object +// with the ability to set a custom HTTPClient for a request. +func NewAddExporterParamsWithHTTPClient(client *http.Client) *AddExporterParams { + return &AddExporterParams{ + HTTPClient: client, + } +} + +/* +AddExporterParams contains all the parameters to send to the API endpoint + + for the add exporter operation. + + Typically these are written to a http.Request. +*/ +type AddExporterParams struct { + // Body. + Body AddExporterBody + + timeout time.Duration + Context context.Context + HTTPClient *http.Client +} + +// WithDefaults hydrates default values in the add exporter params (not the query body). +// +// All values with no default are reset to their zero value. +func (o *AddExporterParams) WithDefaults() *AddExporterParams { + o.SetDefaults() + return o +} + +// SetDefaults hydrates default values in the add exporter params (not the query body). +// +// All values with no default are reset to their zero value. +func (o *AddExporterParams) SetDefaults() { + // no default values defined for this parameter +} + +// WithTimeout adds the timeout to the add exporter params +func (o *AddExporterParams) WithTimeout(timeout time.Duration) *AddExporterParams { + o.SetTimeout(timeout) + return o +} + +// SetTimeout adds the timeout to the add exporter params +func (o *AddExporterParams) SetTimeout(timeout time.Duration) { + o.timeout = timeout +} + +// WithContext adds the context to the add exporter params +func (o *AddExporterParams) WithContext(ctx context.Context) *AddExporterParams { + o.SetContext(ctx) + return o +} + +// SetContext adds the context to the add exporter params +func (o *AddExporterParams) SetContext(ctx context.Context) { + o.Context = ctx +} + +// WithHTTPClient adds the HTTPClient to the add exporter params +func (o *AddExporterParams) WithHTTPClient(client *http.Client) *AddExporterParams { + o.SetHTTPClient(client) + return o +} + +// SetHTTPClient adds the HTTPClient to the add exporter params +func (o *AddExporterParams) SetHTTPClient(client *http.Client) { + o.HTTPClient = client +} + +// WithBody adds the body to the add exporter params +func (o *AddExporterParams) WithBody(body AddExporterBody) *AddExporterParams { + o.SetBody(body) + return o +} + +// SetBody adds the body to the add exporter params +func (o *AddExporterParams) SetBody(body AddExporterBody) { + o.Body = body +} + +// WriteToRequest writes these params to a swagger request +func (o *AddExporterParams) 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/add_exporter_responses.go b/api/inventory/v1/json/client/agents_service/add_exporter_responses.go new file mode 100644 index 0000000000..fab5bd0fdd --- /dev/null +++ b/api/inventory/v1/json/client/agents_service/add_exporter_responses.go @@ -0,0 +1,3709 @@ +// 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" +) + +// AddExporterReader is a Reader for the AddExporter structure. +type AddExporterReader struct { + formats strfmt.Registry +} + +// ReadResponse reads a server response into the received o. +func (o *AddExporterReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { + switch response.Code() { + case 200: + result := NewAddExporterOK() + if err := result.readResponse(response, consumer, o.formats); err != nil { + return nil, err + } + return result, nil + default: + result := NewAddExporterDefault(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 + } +} + +// NewAddExporterOK creates a AddExporterOK with default headers values +func NewAddExporterOK() *AddExporterOK { + return &AddExporterOK{} +} + +/* +AddExporterOK describes a response with status code 200, with default header values. + +A successful response. +*/ +type AddExporterOK struct { + Payload *AddExporterOKBody +} + +func (o *AddExporterOK) Error() string { + return fmt.Sprintf("[POST /v1/inventory/Agents/AddExporter][%d] addExporterOk %+v", 200, o.Payload) +} + +func (o *AddExporterOK) GetPayload() *AddExporterOKBody { + return o.Payload +} + +func (o *AddExporterOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { + o.Payload = new(AddExporterOKBody) + + // response payload + if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { + return err + } + + return nil +} + +// NewAddExporterDefault creates a AddExporterDefault with default headers values +func NewAddExporterDefault(code int) *AddExporterDefault { + return &AddExporterDefault{ + _statusCode: code, + } +} + +/* +AddExporterDefault describes a response with status code -1, with default header values. + +An unexpected error response. +*/ +type AddExporterDefault struct { + _statusCode int + + Payload *AddExporterDefaultBody +} + +// Code gets the status code for the add exporter default response +func (o *AddExporterDefault) Code() int { + return o._statusCode +} + +func (o *AddExporterDefault) Error() string { + return fmt.Sprintf("[POST /v1/inventory/Agents/AddExporter][%d] AddExporter default %+v", o._statusCode, o.Payload) +} + +func (o *AddExporterDefault) GetPayload() *AddExporterDefaultBody { + return o.Payload +} + +func (o *AddExporterDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { + o.Payload = new(AddExporterDefaultBody) + + // response payload + if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { + return err + } + + return nil +} + +/* +AddExporterBody add exporter body +swagger:model AddExporterBody +*/ +type AddExporterBody struct { + // azure database exporter + AzureDatabaseExporter *AddExporterParamsBodyAzureDatabaseExporter `json:"azure_database_exporter,omitempty"` + + // external exporter + ExternalExporter *AddExporterParamsBodyExternalExporter `json:"external_exporter,omitempty"` + + // mongodb exporter + MongodbExporter *AddExporterParamsBodyMongodbExporter `json:"mongodb_exporter,omitempty"` + + // mysqld exporter + MysqldExporter *AddExporterParamsBodyMysqldExporter `json:"mysqld_exporter,omitempty"` + + // node exporter + NodeExporter *AddExporterParamsBodyNodeExporter `json:"node_exporter,omitempty"` + + // postgres exporter + PostgresExporter *AddExporterParamsBodyPostgresExporter `json:"postgres_exporter,omitempty"` + + // proxysql exporter + ProxysqlExporter *AddExporterParamsBodyProxysqlExporter `json:"proxysql_exporter,omitempty"` + + // rds exporter + RDSExporter *AddExporterParamsBodyRDSExporter `json:"rds_exporter,omitempty"` +} + +// Validate validates this add exporter body +func (o *AddExporterBody) 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.validateRDSExporter(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *AddExporterBody) 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 *AddExporterBody) 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 *AddExporterBody) 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 *AddExporterBody) 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 *AddExporterBody) 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 *AddExporterBody) 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 *AddExporterBody) 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 *AddExporterBody) 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 add exporter body based on the context it is used +func (o *AddExporterBody) 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.contextValidateRDSExporter(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *AddExporterBody) 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 *AddExporterBody) 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 *AddExporterBody) 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 *AddExporterBody) 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 *AddExporterBody) 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 *AddExporterBody) 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 *AddExporterBody) 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 *AddExporterBody) 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 *AddExporterBody) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddExporterBody) UnmarshalBinary(b []byte) error { + var res AddExporterBody + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddExporterDefaultBody add exporter default body +swagger:model AddExporterDefaultBody +*/ +type AddExporterDefaultBody struct { + // code + Code int32 `json:"code,omitempty"` + + // message + Message string `json:"message,omitempty"` + + // details + Details []*AddExporterDefaultBodyDetailsItems0 `json:"details"` +} + +// Validate validates this add exporter default body +func (o *AddExporterDefaultBody) 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 *AddExporterDefaultBody) 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("AddExporter default" + "." + "details" + "." + strconv.Itoa(i)) + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("AddExporter default" + "." + "details" + "." + strconv.Itoa(i)) + } + return err + } + } + + } + + return nil +} + +// ContextValidate validate this add exporter default body based on the context it is used +func (o *AddExporterDefaultBody) 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 *AddExporterDefaultBody) 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("AddExporter default" + "." + "details" + "." + strconv.Itoa(i)) + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("AddExporter default" + "." + "details" + "." + strconv.Itoa(i)) + } + return err + } + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *AddExporterDefaultBody) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddExporterDefaultBody) UnmarshalBinary(b []byte) error { + var res AddExporterDefaultBody + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddExporterDefaultBodyDetailsItems0 add exporter default body details items0 +swagger:model AddExporterDefaultBodyDetailsItems0 +*/ +type AddExporterDefaultBodyDetailsItems0 struct { + // at type + AtType string `json:"@type,omitempty"` +} + +// Validate validates this add exporter default body details items0 +func (o *AddExporterDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { + return nil +} + +// ContextValidate validates this add exporter default body details items0 based on context it is used +func (o *AddExporterDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddExporterDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddExporterDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { + var res AddExporterDefaultBodyDetailsItems0 + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddExporterOKBody add exporter OK body +swagger:model AddExporterOKBody +*/ +type AddExporterOKBody struct { + // Actual table count for SQL databases at the moment of adding. + TableCount int32 `json:"table_count,omitempty"` + + // azure database exporter + AzureDatabaseExporter *AddExporterOKBodyAzureDatabaseExporter `json:"azure_database_exporter,omitempty"` + + // external exporter + ExternalExporter *AddExporterOKBodyExternalExporter `json:"external_exporter,omitempty"` + + // mongodb exporter + MongodbExporter *AddExporterOKBodyMongodbExporter `json:"mongodb_exporter,omitempty"` + + // mysqld exporter + MysqldExporter *AddExporterOKBodyMysqldExporter `json:"mysqld_exporter,omitempty"` + + // node exporter + NodeExporter *AddExporterOKBodyNodeExporter `json:"node_exporter,omitempty"` + + // postgres exporter + PostgresExporter *AddExporterOKBodyPostgresExporter `json:"postgres_exporter,omitempty"` + + // proxysql exporter + ProxysqlExporter *AddExporterOKBodyProxysqlExporter `json:"proxysql_exporter,omitempty"` + + // rds exporter + RDSExporter *AddExporterOKBodyRDSExporter `json:"rds_exporter,omitempty"` +} + +// Validate validates this add exporter OK body +func (o *AddExporterOKBody) 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.validateRDSExporter(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *AddExporterOKBody) 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("addExporterOk" + "." + "azure_database_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addExporterOk" + "." + "azure_database_exporter") + } + return err + } + } + + return nil +} + +func (o *AddExporterOKBody) 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("addExporterOk" + "." + "external_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addExporterOk" + "." + "external_exporter") + } + return err + } + } + + return nil +} + +func (o *AddExporterOKBody) 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("addExporterOk" + "." + "mongodb_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addExporterOk" + "." + "mongodb_exporter") + } + return err + } + } + + return nil +} + +func (o *AddExporterOKBody) 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("addExporterOk" + "." + "mysqld_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addExporterOk" + "." + "mysqld_exporter") + } + return err + } + } + + return nil +} + +func (o *AddExporterOKBody) 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("addExporterOk" + "." + "node_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addExporterOk" + "." + "node_exporter") + } + return err + } + } + + return nil +} + +func (o *AddExporterOKBody) 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("addExporterOk" + "." + "postgres_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addExporterOk" + "." + "postgres_exporter") + } + return err + } + } + + return nil +} + +func (o *AddExporterOKBody) 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("addExporterOk" + "." + "proxysql_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addExporterOk" + "." + "proxysql_exporter") + } + return err + } + } + + return nil +} + +func (o *AddExporterOKBody) 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("addExporterOk" + "." + "rds_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addExporterOk" + "." + "rds_exporter") + } + return err + } + } + + return nil +} + +// ContextValidate validate this add exporter OK body based on the context it is used +func (o *AddExporterOKBody) 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.contextValidateRDSExporter(ctx, formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (o *AddExporterOKBody) 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("addExporterOk" + "." + "azure_database_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addExporterOk" + "." + "azure_database_exporter") + } + return err + } + } + + return nil +} + +func (o *AddExporterOKBody) 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("addExporterOk" + "." + "external_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addExporterOk" + "." + "external_exporter") + } + return err + } + } + + return nil +} + +func (o *AddExporterOKBody) 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("addExporterOk" + "." + "mongodb_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addExporterOk" + "." + "mongodb_exporter") + } + return err + } + } + + return nil +} + +func (o *AddExporterOKBody) 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("addExporterOk" + "." + "mysqld_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addExporterOk" + "." + "mysqld_exporter") + } + return err + } + } + + return nil +} + +func (o *AddExporterOKBody) 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("addExporterOk" + "." + "node_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addExporterOk" + "." + "node_exporter") + } + return err + } + } + + return nil +} + +func (o *AddExporterOKBody) 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("addExporterOk" + "." + "postgres_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addExporterOk" + "." + "postgres_exporter") + } + return err + } + } + + return nil +} + +func (o *AddExporterOKBody) 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("addExporterOk" + "." + "proxysql_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addExporterOk" + "." + "proxysql_exporter") + } + return err + } + } + + return nil +} + +func (o *AddExporterOKBody) 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("addExporterOk" + "." + "rds_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addExporterOk" + "." + "rds_exporter") + } + return err + } + } + + return nil +} + +// MarshalBinary interface implementation +func (o *AddExporterOKBody) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddExporterOKBody) UnmarshalBinary(b []byte) error { + var res AddExporterOKBody + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddExporterOKBodyAzureDatabaseExporter AzureDatabaseExporter runs on Generic or Container Node and exposes RemoteAzure Node metrics. +swagger:model AddExporterOKBodyAzureDatabaseExporter +*/ +type AddExporterOKBodyAzureDatabaseExporter 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. + // + // Status fields below. + 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 add exporter OK body azure database exporter +func (o *AddExporterOKBodyAzureDatabaseExporter) 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 addExporterOkBodyAzureDatabaseExporterTypeStatusPropEnum []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 { + addExporterOkBodyAzureDatabaseExporterTypeStatusPropEnum = append(addExporterOkBodyAzureDatabaseExporterTypeStatusPropEnum, v) + } +} + +const ( + + // AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *AddExporterOKBodyAzureDatabaseExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterOkBodyAzureDatabaseExporterTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterOKBodyAzureDatabaseExporter) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("addExporterOk"+"."+"azure_database_exporter"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var addExporterOkBodyAzureDatabaseExporterTypeLogLevelPropEnum []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 { + addExporterOkBodyAzureDatabaseExporterTypeLogLevelPropEnum = append(addExporterOkBodyAzureDatabaseExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddExporterOKBodyAzureDatabaseExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterOkBodyAzureDatabaseExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterOKBodyAzureDatabaseExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("addExporterOk"+"."+"azure_database_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add exporter OK body azure database exporter based on context it is used +func (o *AddExporterOKBodyAzureDatabaseExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddExporterOKBodyAzureDatabaseExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddExporterOKBodyAzureDatabaseExporter) UnmarshalBinary(b []byte) error { + var res AddExporterOKBodyAzureDatabaseExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddExporterOKBodyExternalExporter ExternalExporter runs on any Node type, including Remote Node. +swagger:model AddExporterOKBodyExternalExporter +*/ +type AddExporterOKBodyExternalExporter 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 add exporter OK body external exporter +func (o *AddExporterOKBodyExternalExporter) Validate(formats strfmt.Registry) error { + return nil +} + +// ContextValidate validates this add exporter OK body external exporter based on context it is used +func (o *AddExporterOKBodyExternalExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddExporterOKBodyExternalExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddExporterOKBodyExternalExporter) UnmarshalBinary(b []byte) error { + var res AddExporterOKBodyExternalExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddExporterOKBodyMongodbExporter MongoDBExporter runs on Generic or Container Node and exposes MongoDB Service metrics. +swagger:model AddExporterOKBodyMongodbExporter +*/ +type AddExporterOKBodyMongodbExporter 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. + // + // Status fields below. + 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 add exporter OK body mongodb exporter +func (o *AddExporterOKBodyMongodbExporter) 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 addExporterOkBodyMongodbExporterTypeStatusPropEnum []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 { + addExporterOkBodyMongodbExporterTypeStatusPropEnum = append(addExporterOkBodyMongodbExporterTypeStatusPropEnum, v) + } +} + +const ( + + // AddExporterOKBodyMongodbExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + AddExporterOKBodyMongodbExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // AddExporterOKBodyMongodbExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + AddExporterOKBodyMongodbExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // AddExporterOKBodyMongodbExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + AddExporterOKBodyMongodbExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // AddExporterOKBodyMongodbExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + AddExporterOKBodyMongodbExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // AddExporterOKBodyMongodbExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + AddExporterOKBodyMongodbExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // AddExporterOKBodyMongodbExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + AddExporterOKBodyMongodbExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // AddExporterOKBodyMongodbExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + AddExporterOKBodyMongodbExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *AddExporterOKBodyMongodbExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterOkBodyMongodbExporterTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterOKBodyMongodbExporter) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("addExporterOk"+"."+"mongodb_exporter"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var addExporterOkBodyMongodbExporterTypeLogLevelPropEnum []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 { + addExporterOkBodyMongodbExporterTypeLogLevelPropEnum = append(addExporterOkBodyMongodbExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddExporterOKBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddExporterOKBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddExporterOKBodyMongodbExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddExporterOKBodyMongodbExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddExporterOKBodyMongodbExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddExporterOKBodyMongodbExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddExporterOKBodyMongodbExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddExporterOKBodyMongodbExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddExporterOKBodyMongodbExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddExporterOKBodyMongodbExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddExporterOKBodyMongodbExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddExporterOKBodyMongodbExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddExporterOKBodyMongodbExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterOkBodyMongodbExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterOKBodyMongodbExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("addExporterOk"+"."+"mongodb_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add exporter OK body mongodb exporter based on context it is used +func (o *AddExporterOKBodyMongodbExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddExporterOKBodyMongodbExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddExporterOKBodyMongodbExporter) UnmarshalBinary(b []byte) error { + var res AddExporterOKBodyMongodbExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddExporterOKBodyMysqldExporter MySQLdExporter runs on Generic or Container Node and exposes MySQL Service metrics. +swagger:model AddExporterOKBodyMysqldExporter +*/ +type AddExporterOKBodyMysqldExporter 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. + // + // Status fields below. + 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 add exporter OK body mysqld exporter +func (o *AddExporterOKBodyMysqldExporter) 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 addExporterOkBodyMysqldExporterTypeStatusPropEnum []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 { + addExporterOkBodyMysqldExporterTypeStatusPropEnum = append(addExporterOkBodyMysqldExporterTypeStatusPropEnum, v) + } +} + +const ( + + // AddExporterOKBodyMysqldExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + AddExporterOKBodyMysqldExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // AddExporterOKBodyMysqldExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + AddExporterOKBodyMysqldExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // AddExporterOKBodyMysqldExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + AddExporterOKBodyMysqldExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // AddExporterOKBodyMysqldExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + AddExporterOKBodyMysqldExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // AddExporterOKBodyMysqldExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + AddExporterOKBodyMysqldExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // AddExporterOKBodyMysqldExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + AddExporterOKBodyMysqldExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // AddExporterOKBodyMysqldExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + AddExporterOKBodyMysqldExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *AddExporterOKBodyMysqldExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterOkBodyMysqldExporterTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterOKBodyMysqldExporter) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("addExporterOk"+"."+"mysqld_exporter"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var addExporterOkBodyMysqldExporterTypeLogLevelPropEnum []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 { + addExporterOkBodyMysqldExporterTypeLogLevelPropEnum = append(addExporterOkBodyMysqldExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddExporterOKBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddExporterOKBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddExporterOKBodyMysqldExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddExporterOKBodyMysqldExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddExporterOKBodyMysqldExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddExporterOKBodyMysqldExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddExporterOKBodyMysqldExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddExporterOKBodyMysqldExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddExporterOKBodyMysqldExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddExporterOKBodyMysqldExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddExporterOKBodyMysqldExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddExporterOKBodyMysqldExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddExporterOKBodyMysqldExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterOkBodyMysqldExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterOKBodyMysqldExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("addExporterOk"+"."+"mysqld_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add exporter OK body mysqld exporter based on context it is used +func (o *AddExporterOKBodyMysqldExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddExporterOKBodyMysqldExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddExporterOKBodyMysqldExporter) UnmarshalBinary(b []byte) error { + var res AddExporterOKBodyMysqldExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddExporterOKBodyNodeExporter NodeExporter runs on Generic or Container Node and exposes its metrics. +swagger:model AddExporterOKBodyNodeExporter +*/ +type AddExporterOKBodyNodeExporter 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. + // + // Status fields below. + 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 add exporter OK body node exporter +func (o *AddExporterOKBodyNodeExporter) 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 addExporterOkBodyNodeExporterTypeStatusPropEnum []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 { + addExporterOkBodyNodeExporterTypeStatusPropEnum = append(addExporterOkBodyNodeExporterTypeStatusPropEnum, v) + } +} + +const ( + + // AddExporterOKBodyNodeExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + AddExporterOKBodyNodeExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // AddExporterOKBodyNodeExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + AddExporterOKBodyNodeExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // AddExporterOKBodyNodeExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + AddExporterOKBodyNodeExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // AddExporterOKBodyNodeExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + AddExporterOKBodyNodeExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // AddExporterOKBodyNodeExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + AddExporterOKBodyNodeExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // AddExporterOKBodyNodeExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + AddExporterOKBodyNodeExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // AddExporterOKBodyNodeExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + AddExporterOKBodyNodeExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *AddExporterOKBodyNodeExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterOkBodyNodeExporterTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterOKBodyNodeExporter) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("addExporterOk"+"."+"node_exporter"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var addExporterOkBodyNodeExporterTypeLogLevelPropEnum []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 { + addExporterOkBodyNodeExporterTypeLogLevelPropEnum = append(addExporterOkBodyNodeExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddExporterOKBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddExporterOKBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddExporterOKBodyNodeExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddExporterOKBodyNodeExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddExporterOKBodyNodeExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddExporterOKBodyNodeExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddExporterOKBodyNodeExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddExporterOKBodyNodeExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddExporterOKBodyNodeExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddExporterOKBodyNodeExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddExporterOKBodyNodeExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddExporterOKBodyNodeExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddExporterOKBodyNodeExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterOkBodyNodeExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterOKBodyNodeExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("addExporterOk"+"."+"node_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add exporter OK body node exporter based on context it is used +func (o *AddExporterOKBodyNodeExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddExporterOKBodyNodeExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddExporterOKBodyNodeExporter) UnmarshalBinary(b []byte) error { + var res AddExporterOKBodyNodeExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddExporterOKBodyPostgresExporter PostgresExporter runs on Generic or Container Node and exposes PostgreSQL Service metrics. +swagger:model AddExporterOKBodyPostgresExporter +*/ +type AddExporterOKBodyPostgresExporter 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 add exporter OK body postgres exporter +func (o *AddExporterOKBodyPostgresExporter) 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 addExporterOkBodyPostgresExporterTypeStatusPropEnum []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 { + addExporterOkBodyPostgresExporterTypeStatusPropEnum = append(addExporterOkBodyPostgresExporterTypeStatusPropEnum, v) + } +} + +const ( + + // AddExporterOKBodyPostgresExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + AddExporterOKBodyPostgresExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // AddExporterOKBodyPostgresExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + AddExporterOKBodyPostgresExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // AddExporterOKBodyPostgresExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + AddExporterOKBodyPostgresExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // AddExporterOKBodyPostgresExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + AddExporterOKBodyPostgresExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // AddExporterOKBodyPostgresExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + AddExporterOKBodyPostgresExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // AddExporterOKBodyPostgresExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + AddExporterOKBodyPostgresExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // AddExporterOKBodyPostgresExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + AddExporterOKBodyPostgresExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *AddExporterOKBodyPostgresExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterOkBodyPostgresExporterTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterOKBodyPostgresExporter) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("addExporterOk"+"."+"postgres_exporter"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var addExporterOkBodyPostgresExporterTypeLogLevelPropEnum []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 { + addExporterOkBodyPostgresExporterTypeLogLevelPropEnum = append(addExporterOkBodyPostgresExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddExporterOKBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddExporterOKBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddExporterOKBodyPostgresExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddExporterOKBodyPostgresExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddExporterOKBodyPostgresExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddExporterOKBodyPostgresExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddExporterOKBodyPostgresExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddExporterOKBodyPostgresExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddExporterOKBodyPostgresExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddExporterOKBodyPostgresExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddExporterOKBodyPostgresExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddExporterOKBodyPostgresExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddExporterOKBodyPostgresExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterOkBodyPostgresExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterOKBodyPostgresExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("addExporterOk"+"."+"postgres_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add exporter OK body postgres exporter based on context it is used +func (o *AddExporterOKBodyPostgresExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddExporterOKBodyPostgresExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddExporterOKBodyPostgresExporter) UnmarshalBinary(b []byte) error { + var res AddExporterOKBodyPostgresExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddExporterOKBodyProxysqlExporter ProxySQLExporter runs on Generic or Container Node and exposes ProxySQL Service metrics. +swagger:model AddExporterOKBodyProxysqlExporter +*/ +type AddExporterOKBodyProxysqlExporter 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. + // + // Status fields below. + 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 add exporter OK body proxysql exporter +func (o *AddExporterOKBodyProxysqlExporter) 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 addExporterOkBodyProxysqlExporterTypeStatusPropEnum []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 { + addExporterOkBodyProxysqlExporterTypeStatusPropEnum = append(addExporterOkBodyProxysqlExporterTypeStatusPropEnum, v) + } +} + +const ( + + // AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *AddExporterOKBodyProxysqlExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterOkBodyProxysqlExporterTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterOKBodyProxysqlExporter) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("addExporterOk"+"."+"proxysql_exporter"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var addExporterOkBodyProxysqlExporterTypeLogLevelPropEnum []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 { + addExporterOkBodyProxysqlExporterTypeLogLevelPropEnum = append(addExporterOkBodyProxysqlExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddExporterOKBodyProxysqlExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterOkBodyProxysqlExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterOKBodyProxysqlExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("addExporterOk"+"."+"proxysql_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add exporter OK body proxysql exporter based on context it is used +func (o *AddExporterOKBodyProxysqlExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddExporterOKBodyProxysqlExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddExporterOKBodyProxysqlExporter) UnmarshalBinary(b []byte) error { + var res AddExporterOKBodyProxysqlExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddExporterOKBodyRDSExporter RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node metrics. +swagger:model AddExporterOKBodyRDSExporter +*/ +type AddExporterOKBodyRDSExporter 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. + // + // Status fields below. + 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). + // + // Metric collections flags below. + 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 add exporter OK body RDS exporter +func (o *AddExporterOKBodyRDSExporter) 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 addExporterOkBodyRdsExporterTypeStatusPropEnum []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 { + addExporterOkBodyRdsExporterTypeStatusPropEnum = append(addExporterOkBodyRdsExporterTypeStatusPropEnum, v) + } +} + +const ( + + // AddExporterOKBodyRDSExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + AddExporterOKBodyRDSExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // AddExporterOKBodyRDSExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + AddExporterOKBodyRDSExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // AddExporterOKBodyRDSExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + AddExporterOKBodyRDSExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // AddExporterOKBodyRDSExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + AddExporterOKBodyRDSExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // AddExporterOKBodyRDSExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + AddExporterOKBodyRDSExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // AddExporterOKBodyRDSExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + AddExporterOKBodyRDSExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // AddExporterOKBodyRDSExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + AddExporterOKBodyRDSExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *AddExporterOKBodyRDSExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterOkBodyRdsExporterTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterOKBodyRDSExporter) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("addExporterOk"+"."+"rds_exporter"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var addExporterOkBodyRdsExporterTypeLogLevelPropEnum []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 { + addExporterOkBodyRdsExporterTypeLogLevelPropEnum = append(addExporterOkBodyRdsExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddExporterOKBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddExporterOKBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddExporterOKBodyRDSExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddExporterOKBodyRDSExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddExporterOKBodyRDSExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddExporterOKBodyRDSExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddExporterOKBodyRDSExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddExporterOKBodyRDSExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddExporterOKBodyRDSExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddExporterOKBodyRDSExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddExporterOKBodyRDSExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddExporterOKBodyRDSExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddExporterOKBodyRDSExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterOkBodyRdsExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterOKBodyRDSExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("addExporterOk"+"."+"rds_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add exporter OK body RDS exporter based on context it is used +func (o *AddExporterOKBodyRDSExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddExporterOKBodyRDSExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddExporterOKBodyRDSExporter) UnmarshalBinary(b []byte) error { + var res AddExporterOKBodyRDSExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddExporterParamsBodyAzureDatabaseExporter add exporter params body azure database exporter +swagger:model AddExporterParamsBodyAzureDatabaseExporter +*/ +type AddExporterParamsBodyAzureDatabaseExporter struct { + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Node identifier. + NodeID string `json:"node_id,omitempty"` + + // Azure client ID + AzureClientID string `json:"azure_client_id,omitempty"` + + // Azure client secret + AzureClientSecret string `json:"azure_client_secret,omitempty"` + + // Azure tanant ID + AzureTenantID string `json:"azure_tenant_id,omitempty"` + + // Azure subscription ID + AzureSubscriptionID string `json:"azure_subscription_id,omitempty"` + + // Azure resource group. + AzureResourceGroup string `json:"azure_resource_group,omitempty"` + + // Azure 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"` + + // Skip connection check. + SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` + + // Enables push metrics mode for exporter. + PushMetrics bool `json:"push_metrics,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 add exporter params body azure database exporter +func (o *AddExporterParamsBodyAzureDatabaseExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var addExporterParamsBodyAzureDatabaseExporterTypeLogLevelPropEnum []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 { + addExporterParamsBodyAzureDatabaseExporterTypeLogLevelPropEnum = append(addExporterParamsBodyAzureDatabaseExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddExporterParamsBodyAzureDatabaseExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterParamsBodyAzureDatabaseExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterParamsBodyAzureDatabaseExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("body"+"."+"azure_database_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add exporter params body azure database exporter based on context it is used +func (o *AddExporterParamsBodyAzureDatabaseExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddExporterParamsBodyAzureDatabaseExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddExporterParamsBodyAzureDatabaseExporter) UnmarshalBinary(b []byte) error { + var res AddExporterParamsBodyAzureDatabaseExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddExporterParamsBodyExternalExporter add exporter params body external exporter +swagger:model AddExporterParamsBodyExternalExporter +*/ +type AddExporterParamsBodyExternalExporter struct { + // The node identifier where this instance is run. + RunsOnNodeID string `json:"runs_on_node_id,omitempty"` + + // Service identifier. + ServiceID string `json:"service_id,omitempty"` + + // HTTP basic auth username for collecting metrics. + Username string `json:"username,omitempty"` + + // HTTP basic auth password for collecting metrics. + Password string `json:"password,omitempty"` + + // Scheme to generate URI to exporter metrics endpoints(default: http). + Scheme string `json:"scheme,omitempty"` + + // Path under which metrics are exposed, used to generate URI(default: /metrics). + MetricsPath string `json:"metrics_path,omitempty"` + + // Listen port for scraping metrics. + ListenPort int64 `json:"listen_port,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // Enables push metrics mode for exporter. + PushMetrics bool `json:"push_metrics,omitempty"` +} + +// Validate validates this add exporter params body external exporter +func (o *AddExporterParamsBodyExternalExporter) Validate(formats strfmt.Registry) error { + return nil +} + +// ContextValidate validates this add exporter params body external exporter based on context it is used +func (o *AddExporterParamsBodyExternalExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddExporterParamsBodyExternalExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddExporterParamsBodyExternalExporter) UnmarshalBinary(b []byte) error { + var res AddExporterParamsBodyExternalExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddExporterParamsBodyMongodbExporter add exporter params body mongodb exporter +swagger:model AddExporterParamsBodyMongodbExporter +*/ +type AddExporterParamsBodyMongodbExporter struct { + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Service identifier. + ServiceID string `json:"service_id,omitempty"` + + // MongoDB username for scraping metrics. + Username string `json:"username,omitempty"` + + // MongoDB password for scraping metrics. + Password string `json:"password,omitempty"` + + // Use TLS for database connections. + TLS bool `json:"tls,omitempty"` + + // Skip TLS certificate and hostname validation. + TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` + + // Client certificate and key. + TLSCertificateKey string `json:"tls_certificate_key,omitempty"` + + // Password for decrypting tls_certificate_key. + TLSCertificateKeyFilePassword string `json:"tls_certificate_key_file_password,omitempty"` + + // Certificate Authority certificate chain. + TLSCa string `json:"tls_ca,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // Skip connection check. + SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` + + // Enables push metrics mode for exporter. + PushMetrics bool `json:"push_metrics,omitempty"` + + // List of collector names to disable in this exporter. + DisableCollectors []string `json:"disable_collectors"` + + // Authentication mechanism. + // See https://docs.mongodb.com/manual/reference/connection-string/#mongodb-urioption-urioption.authMechanism + // for details. + AuthenticationMechanism string `json:"authentication_mechanism,omitempty"` + + // Authentication database. + AuthenticationDatabase string `json:"authentication_database,omitempty"` + + // Custom password for exporter endpoint /metrics. + AgentPassword string `json:"agent_password,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"` + + // 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 add exporter params body mongodb exporter +func (o *AddExporterParamsBodyMongodbExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var addExporterParamsBodyMongodbExporterTypeLogLevelPropEnum []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 { + addExporterParamsBodyMongodbExporterTypeLogLevelPropEnum = append(addExporterParamsBodyMongodbExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddExporterParamsBodyMongodbExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterParamsBodyMongodbExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterParamsBodyMongodbExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("body"+"."+"mongodb_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add exporter params body mongodb exporter based on context it is used +func (o *AddExporterParamsBodyMongodbExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddExporterParamsBodyMongodbExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddExporterParamsBodyMongodbExporter) UnmarshalBinary(b []byte) error { + var res AddExporterParamsBodyMongodbExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddExporterParamsBodyMysqldExporter add exporter params body mysqld exporter +swagger:model AddExporterParamsBodyMysqldExporter +*/ +type AddExporterParamsBodyMysqldExporter struct { + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Service identifier. + ServiceID string `json:"service_id,omitempty"` + + // MySQL username for scraping metrics. + Username string `json:"username,omitempty"` + + // MySQL password for scraping metrics. + Password string `json:"password,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 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 `json:"tablestats_group_table_limit,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // Skip connection check. + SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` + + // Enables push metrics mode for exporter. + PushMetrics bool `json:"push_metrics,omitempty"` + + // List of collector names to disable in this exporter. + DisableCollectors []string `json:"disable_collectors"` + + // Custom password for exporter endpoint /metrics. + AgentPassword string `json:"agent_password,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 add exporter params body mysqld exporter +func (o *AddExporterParamsBodyMysqldExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var addExporterParamsBodyMysqldExporterTypeLogLevelPropEnum []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 { + addExporterParamsBodyMysqldExporterTypeLogLevelPropEnum = append(addExporterParamsBodyMysqldExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddExporterParamsBodyMysqldExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterParamsBodyMysqldExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterParamsBodyMysqldExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("body"+"."+"mysqld_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add exporter params body mysqld exporter based on context it is used +func (o *AddExporterParamsBodyMysqldExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddExporterParamsBodyMysqldExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddExporterParamsBodyMysqldExporter) UnmarshalBinary(b []byte) error { + var res AddExporterParamsBodyMysqldExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddExporterParamsBodyNodeExporter add exporter params body node exporter +swagger:model AddExporterParamsBodyNodeExporter +*/ +type AddExporterParamsBodyNodeExporter struct { + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // Enables push metrics mode for exporter. + PushMetrics bool `json:"push_metrics,omitempty"` + + // List of collector names to disable in this exporter. + DisableCollectors []string `json:"disable_collectors"` + + // 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"` + + // Expose the node_exporter process on all public interfaces + ExposeExporter bool `json:"expose_exporter,omitempty"` +} + +// Validate validates this add exporter params body node exporter +func (o *AddExporterParamsBodyNodeExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var addExporterParamsBodyNodeExporterTypeLogLevelPropEnum []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 { + addExporterParamsBodyNodeExporterTypeLogLevelPropEnum = append(addExporterParamsBodyNodeExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddExporterParamsBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddExporterParamsBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddExporterParamsBodyNodeExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddExporterParamsBodyNodeExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddExporterParamsBodyNodeExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddExporterParamsBodyNodeExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddExporterParamsBodyNodeExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddExporterParamsBodyNodeExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddExporterParamsBodyNodeExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddExporterParamsBodyNodeExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddExporterParamsBodyNodeExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddExporterParamsBodyNodeExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddExporterParamsBodyNodeExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterParamsBodyNodeExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterParamsBodyNodeExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("body"+"."+"node_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add exporter params body node exporter based on context it is used +func (o *AddExporterParamsBodyNodeExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddExporterParamsBodyNodeExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddExporterParamsBodyNodeExporter) UnmarshalBinary(b []byte) error { + var res AddExporterParamsBodyNodeExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddExporterParamsBodyPostgresExporter add exporter params body postgres exporter +swagger:model AddExporterParamsBodyPostgresExporter +*/ +type AddExporterParamsBodyPostgresExporter struct { + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Service identifier. + ServiceID string `json:"service_id,omitempty"` + + // PostgreSQL username for scraping metrics. + Username string `json:"username,omitempty"` + + // PostgreSQL password for scraping metrics. + Password string `json:"password,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"` + + // Skip connection check. + SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` + + // Enables push metrics mode for exporter. + PushMetrics bool `json:"push_metrics,omitempty"` + + // List of collector names to disable in this exporter. + DisableCollectors []string `json:"disable_collectors"` + + // TLS CA certificate. + TLSCa string `json:"tls_ca,omitempty"` + + // TLS Certifcate. + TLSCert string `json:"tls_cert,omitempty"` + + // TLS Certificate Key. + TLSKey string `json:"tls_key,omitempty"` + + // Custom password for exporter endpoint /metrics. + AgentPassword string `json:"agent_password,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 add exporter params body postgres exporter +func (o *AddExporterParamsBodyPostgresExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var addExporterParamsBodyPostgresExporterTypeLogLevelPropEnum []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 { + addExporterParamsBodyPostgresExporterTypeLogLevelPropEnum = append(addExporterParamsBodyPostgresExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddExporterParamsBodyPostgresExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterParamsBodyPostgresExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterParamsBodyPostgresExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("body"+"."+"postgres_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add exporter params body postgres exporter based on context it is used +func (o *AddExporterParamsBodyPostgresExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddExporterParamsBodyPostgresExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddExporterParamsBodyPostgresExporter) UnmarshalBinary(b []byte) error { + var res AddExporterParamsBodyPostgresExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddExporterParamsBodyProxysqlExporter add exporter params body proxysql exporter +swagger:model AddExporterParamsBodyProxysqlExporter +*/ +type AddExporterParamsBodyProxysqlExporter struct { + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Service identifier. + ServiceID string `json:"service_id,omitempty"` + + // ProxySQL username for scraping metrics. + Username string `json:"username,omitempty"` + + // ProxySQL password for scraping metrics. + Password string `json:"password,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"` + + // Skip connection check. + SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` + + // Enables push metrics mode for exporter. + PushMetrics bool `json:"push_metrics,omitempty"` + + // List of collector names to disable in this exporter. + DisableCollectors []string `json:"disable_collectors"` + + // Custom password for exporter endpoint /metrics. + AgentPassword string `json:"agent_password,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 add exporter params body proxysql exporter +func (o *AddExporterParamsBodyProxysqlExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var addExporterParamsBodyProxysqlExporterTypeLogLevelPropEnum []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 { + addExporterParamsBodyProxysqlExporterTypeLogLevelPropEnum = append(addExporterParamsBodyProxysqlExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddExporterParamsBodyProxysqlExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterParamsBodyProxysqlExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterParamsBodyProxysqlExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("body"+"."+"proxysql_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add exporter params body proxysql exporter based on context it is used +func (o *AddExporterParamsBodyProxysqlExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddExporterParamsBodyProxysqlExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddExporterParamsBodyProxysqlExporter) UnmarshalBinary(b []byte) error { + var res AddExporterParamsBodyProxysqlExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddExporterParamsBodyRDSExporter add exporter params body RDS exporter +swagger:model AddExporterParamsBodyRDSExporter +*/ +type AddExporterParamsBodyRDSExporter struct { + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Node identifier. + NodeID string `json:"node_id,omitempty"` + + // AWS Access Key. + AWSAccessKey string `json:"aws_access_key,omitempty"` + + // AWS Secret Key. + AWSSecretKey string `json:"aws_secret_key,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // Skip connection check. + SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` + + // Disable basic metrics. + DisableBasicMetrics bool `json:"disable_basic_metrics,omitempty"` + + // Disable enhanced metrics. + DisableEnhancedMetrics bool `json:"disable_enhanced_metrics,omitempty"` + + // Enables push metrics mode for exporter. + PushMetrics bool `json:"push_metrics,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 add exporter params body RDS exporter +func (o *AddExporterParamsBodyRDSExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var addExporterParamsBodyRdsExporterTypeLogLevelPropEnum []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 { + addExporterParamsBodyRdsExporterTypeLogLevelPropEnum = append(addExporterParamsBodyRdsExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddExporterParamsBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddExporterParamsBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddExporterParamsBodyRDSExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddExporterParamsBodyRDSExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddExporterParamsBodyRDSExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddExporterParamsBodyRDSExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddExporterParamsBodyRDSExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddExporterParamsBodyRDSExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddExporterParamsBodyRDSExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddExporterParamsBodyRDSExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddExporterParamsBodyRDSExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddExporterParamsBodyRDSExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddExporterParamsBodyRDSExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addExporterParamsBodyRdsExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddExporterParamsBodyRDSExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("body"+"."+"rds_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add exporter params body RDS exporter based on context it is used +func (o *AddExporterParamsBodyRDSExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddExporterParamsBodyRDSExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddExporterParamsBodyRDSExporter) UnmarshalBinary(b []byte) error { + var res AddExporterParamsBodyRDSExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} diff --git a/api/inventory/v1/json/client/agents_service/add_external_exporter_parameters.go b/api/inventory/v1/json/client/agents_service/add_external_exporter_parameters.go deleted file mode 100644 index 873c85094a..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_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" -) - -// NewAddExternalExporterParams creates a new AddExternalExporterParams 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 NewAddExternalExporterParams() *AddExternalExporterParams { - return &AddExternalExporterParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewAddExternalExporterParamsWithTimeout creates a new AddExternalExporterParams object -// with the ability to set a timeout on a request. -func NewAddExternalExporterParamsWithTimeout(timeout time.Duration) *AddExternalExporterParams { - return &AddExternalExporterParams{ - timeout: timeout, - } -} - -// NewAddExternalExporterParamsWithContext creates a new AddExternalExporterParams object -// with the ability to set a context for a request. -func NewAddExternalExporterParamsWithContext(ctx context.Context) *AddExternalExporterParams { - return &AddExternalExporterParams{ - Context: ctx, - } -} - -// NewAddExternalExporterParamsWithHTTPClient creates a new AddExternalExporterParams object -// with the ability to set a custom HTTPClient for a request. -func NewAddExternalExporterParamsWithHTTPClient(client *http.Client) *AddExternalExporterParams { - return &AddExternalExporterParams{ - HTTPClient: client, - } -} - -/* -AddExternalExporterParams contains all the parameters to send to the API endpoint - - for the add external exporter operation. - - Typically these are written to a http.Request. -*/ -type AddExternalExporterParams struct { - // Body. - Body AddExternalExporterBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the add external exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddExternalExporterParams) WithDefaults() *AddExternalExporterParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the add external exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddExternalExporterParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the add external exporter params -func (o *AddExternalExporterParams) WithTimeout(timeout time.Duration) *AddExternalExporterParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the add external exporter params -func (o *AddExternalExporterParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the add external exporter params -func (o *AddExternalExporterParams) WithContext(ctx context.Context) *AddExternalExporterParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the add external exporter params -func (o *AddExternalExporterParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the add external exporter params -func (o *AddExternalExporterParams) WithHTTPClient(client *http.Client) *AddExternalExporterParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the add external exporter params -func (o *AddExternalExporterParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the add external exporter params -func (o *AddExternalExporterParams) WithBody(body AddExternalExporterBody) *AddExternalExporterParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the add external exporter params -func (o *AddExternalExporterParams) SetBody(body AddExternalExporterBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *AddExternalExporterParams) 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/add_external_exporter_responses.go b/api/inventory/v1/json/client/agents_service/add_external_exporter_responses.go deleted file mode 100644 index f8ea8bad78..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_external_exporter_responses.go +++ /dev/null @@ -1,477 +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" -) - -// AddExternalExporterReader is a Reader for the AddExternalExporter structure. -type AddExternalExporterReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *AddExternalExporterReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewAddExternalExporterOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewAddExternalExporterDefault(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 - } -} - -// NewAddExternalExporterOK creates a AddExternalExporterOK with default headers values -func NewAddExternalExporterOK() *AddExternalExporterOK { - return &AddExternalExporterOK{} -} - -/* -AddExternalExporterOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type AddExternalExporterOK struct { - Payload *AddExternalExporterOKBody -} - -func (o *AddExternalExporterOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddExternalExporter][%d] addExternalExporterOk %+v", 200, o.Payload) -} - -func (o *AddExternalExporterOK) GetPayload() *AddExternalExporterOKBody { - return o.Payload -} - -func (o *AddExternalExporterOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddExternalExporterOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewAddExternalExporterDefault creates a AddExternalExporterDefault with default headers values -func NewAddExternalExporterDefault(code int) *AddExternalExporterDefault { - return &AddExternalExporterDefault{ - _statusCode: code, - } -} - -/* -AddExternalExporterDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type AddExternalExporterDefault struct { - _statusCode int - - Payload *AddExternalExporterDefaultBody -} - -// Code gets the status code for the add external exporter default response -func (o *AddExternalExporterDefault) Code() int { - return o._statusCode -} - -func (o *AddExternalExporterDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddExternalExporter][%d] AddExternalExporter default %+v", o._statusCode, o.Payload) -} - -func (o *AddExternalExporterDefault) GetPayload() *AddExternalExporterDefaultBody { - return o.Payload -} - -func (o *AddExternalExporterDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddExternalExporterDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -AddExternalExporterBody add external exporter body -swagger:model AddExternalExporterBody -*/ -type AddExternalExporterBody struct { - // The node identifier where this instance is run. - RunsOnNodeID string `json:"runs_on_node_id,omitempty"` - - // Service identifier. - ServiceID string `json:"service_id,omitempty"` - - // HTTP basic auth username for collecting metrics. - Username string `json:"username,omitempty"` - - // HTTP basic auth password for collecting metrics. - Password string `json:"password,omitempty"` - - // Scheme to generate URI to exporter metrics endpoints(default: http). - Scheme string `json:"scheme,omitempty"` - - // Path under which metrics are exposed, used to generate URI(default: /metrics). - MetricsPath string `json:"metrics_path,omitempty"` - - // Listen port for scraping metrics. - ListenPort int64 `json:"listen_port,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Enables push metrics mode for exporter. - PushMetrics bool `json:"push_metrics,omitempty"` -} - -// Validate validates this add external exporter body -func (o *AddExternalExporterBody) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this add external exporter body based on context it is used -func (o *AddExternalExporterBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddExternalExporterBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddExternalExporterBody) UnmarshalBinary(b []byte) error { - var res AddExternalExporterBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddExternalExporterDefaultBody add external exporter default body -swagger:model AddExternalExporterDefaultBody -*/ -type AddExternalExporterDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*AddExternalExporterDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this add external exporter default body -func (o *AddExternalExporterDefaultBody) 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 *AddExternalExporterDefaultBody) 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("AddExternalExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddExternalExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this add external exporter default body based on the context it is used -func (o *AddExternalExporterDefaultBody) 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 *AddExternalExporterDefaultBody) 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("AddExternalExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddExternalExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddExternalExporterDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddExternalExporterDefaultBody) UnmarshalBinary(b []byte) error { - var res AddExternalExporterDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddExternalExporterDefaultBodyDetailsItems0 add external exporter default body details items0 -swagger:model AddExternalExporterDefaultBodyDetailsItems0 -*/ -type AddExternalExporterDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this add external exporter default body details items0 -func (o *AddExternalExporterDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this add external exporter default body details items0 based on context it is used -func (o *AddExternalExporterDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddExternalExporterDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddExternalExporterDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res AddExternalExporterDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddExternalExporterOKBody add external exporter OK body -swagger:model AddExternalExporterOKBody -*/ -type AddExternalExporterOKBody struct { - // external exporter - ExternalExporter *AddExternalExporterOKBodyExternalExporter `json:"external_exporter,omitempty"` -} - -// Validate validates this add external exporter OK body -func (o *AddExternalExporterOKBody) 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 *AddExternalExporterOKBody) 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("addExternalExporterOk" + "." + "external_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addExternalExporterOk" + "." + "external_exporter") - } - return err - } - } - - return nil -} - -// ContextValidate validate this add external exporter OK body based on the context it is used -func (o *AddExternalExporterOKBody) 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 *AddExternalExporterOKBody) 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("addExternalExporterOk" + "." + "external_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addExternalExporterOk" + "." + "external_exporter") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddExternalExporterOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddExternalExporterOKBody) UnmarshalBinary(b []byte) error { - var res AddExternalExporterOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddExternalExporterOKBodyExternalExporter ExternalExporter runs on any Node type, including Remote Node. -swagger:model AddExternalExporterOKBodyExternalExporter -*/ -type AddExternalExporterOKBodyExternalExporter 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 add external exporter OK body external exporter -func (o *AddExternalExporterOKBodyExternalExporter) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this add external exporter OK body external exporter based on context it is used -func (o *AddExternalExporterOKBodyExternalExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddExternalExporterOKBodyExternalExporter) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddExternalExporterOKBodyExternalExporter) UnmarshalBinary(b []byte) error { - var res AddExternalExporterOKBodyExternalExporter - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/add_mongo_db_exporter_parameters.go b/api/inventory/v1/json/client/agents_service/add_mongo_db_exporter_parameters.go deleted file mode 100644 index 44e6422d79..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_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" -) - -// NewAddMongoDBExporterParams creates a new AddMongoDBExporterParams 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 NewAddMongoDBExporterParams() *AddMongoDBExporterParams { - return &AddMongoDBExporterParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewAddMongoDBExporterParamsWithTimeout creates a new AddMongoDBExporterParams object -// with the ability to set a timeout on a request. -func NewAddMongoDBExporterParamsWithTimeout(timeout time.Duration) *AddMongoDBExporterParams { - return &AddMongoDBExporterParams{ - timeout: timeout, - } -} - -// NewAddMongoDBExporterParamsWithContext creates a new AddMongoDBExporterParams object -// with the ability to set a context for a request. -func NewAddMongoDBExporterParamsWithContext(ctx context.Context) *AddMongoDBExporterParams { - return &AddMongoDBExporterParams{ - Context: ctx, - } -} - -// NewAddMongoDBExporterParamsWithHTTPClient creates a new AddMongoDBExporterParams object -// with the ability to set a custom HTTPClient for a request. -func NewAddMongoDBExporterParamsWithHTTPClient(client *http.Client) *AddMongoDBExporterParams { - return &AddMongoDBExporterParams{ - HTTPClient: client, - } -} - -/* -AddMongoDBExporterParams contains all the parameters to send to the API endpoint - - for the add mongo DB exporter operation. - - Typically these are written to a http.Request. -*/ -type AddMongoDBExporterParams struct { - // Body. - Body AddMongoDBExporterBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the add mongo DB exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddMongoDBExporterParams) WithDefaults() *AddMongoDBExporterParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the add mongo DB exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddMongoDBExporterParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the add mongo DB exporter params -func (o *AddMongoDBExporterParams) WithTimeout(timeout time.Duration) *AddMongoDBExporterParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the add mongo DB exporter params -func (o *AddMongoDBExporterParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the add mongo DB exporter params -func (o *AddMongoDBExporterParams) WithContext(ctx context.Context) *AddMongoDBExporterParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the add mongo DB exporter params -func (o *AddMongoDBExporterParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the add mongo DB exporter params -func (o *AddMongoDBExporterParams) WithHTTPClient(client *http.Client) *AddMongoDBExporterParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the add mongo DB exporter params -func (o *AddMongoDBExporterParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the add mongo DB exporter params -func (o *AddMongoDBExporterParams) WithBody(body AddMongoDBExporterBody) *AddMongoDBExporterParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the add mongo DB exporter params -func (o *AddMongoDBExporterParams) SetBody(body AddMongoDBExporterBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *AddMongoDBExporterParams) 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/add_mongo_db_exporter_responses.go b/api/inventory/v1/json/client/agents_service/add_mongo_db_exporter_responses.go deleted file mode 100644 index 61c29366fa..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_mongo_db_exporter_responses.go +++ /dev/null @@ -1,740 +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" -) - -// AddMongoDBExporterReader is a Reader for the AddMongoDBExporter structure. -type AddMongoDBExporterReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *AddMongoDBExporterReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewAddMongoDBExporterOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewAddMongoDBExporterDefault(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 - } -} - -// NewAddMongoDBExporterOK creates a AddMongoDBExporterOK with default headers values -func NewAddMongoDBExporterOK() *AddMongoDBExporterOK { - return &AddMongoDBExporterOK{} -} - -/* -AddMongoDBExporterOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type AddMongoDBExporterOK struct { - Payload *AddMongoDBExporterOKBody -} - -func (o *AddMongoDBExporterOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddMongoDBExporter][%d] addMongoDbExporterOk %+v", 200, o.Payload) -} - -func (o *AddMongoDBExporterOK) GetPayload() *AddMongoDBExporterOKBody { - return o.Payload -} - -func (o *AddMongoDBExporterOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddMongoDBExporterOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewAddMongoDBExporterDefault creates a AddMongoDBExporterDefault with default headers values -func NewAddMongoDBExporterDefault(code int) *AddMongoDBExporterDefault { - return &AddMongoDBExporterDefault{ - _statusCode: code, - } -} - -/* -AddMongoDBExporterDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type AddMongoDBExporterDefault struct { - _statusCode int - - Payload *AddMongoDBExporterDefaultBody -} - -// Code gets the status code for the add mongo DB exporter default response -func (o *AddMongoDBExporterDefault) Code() int { - return o._statusCode -} - -func (o *AddMongoDBExporterDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddMongoDBExporter][%d] AddMongoDBExporter default %+v", o._statusCode, o.Payload) -} - -func (o *AddMongoDBExporterDefault) GetPayload() *AddMongoDBExporterDefaultBody { - return o.Payload -} - -func (o *AddMongoDBExporterDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddMongoDBExporterDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -AddMongoDBExporterBody add mongo DB exporter body -swagger:model AddMongoDBExporterBody -*/ -type AddMongoDBExporterBody struct { - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Service identifier. - ServiceID string `json:"service_id,omitempty"` - - // MongoDB username for scraping metrics. - Username string `json:"username,omitempty"` - - // MongoDB password for scraping metrics. - Password string `json:"password,omitempty"` - - // Use TLS for database connections. - TLS bool `json:"tls,omitempty"` - - // Skip TLS certificate and hostname validation. - TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` - - // Client certificate and key. - TLSCertificateKey string `json:"tls_certificate_key,omitempty"` - - // Password for decrypting tls_certificate_key. - TLSCertificateKeyFilePassword string `json:"tls_certificate_key_file_password,omitempty"` - - // Certificate Authority certificate chain. - TLSCa string `json:"tls_ca,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Skip connection check. - SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` - - // Enables push metrics mode for exporter. - PushMetrics bool `json:"push_metrics,omitempty"` - - // List of collector names to disable in this exporter. - DisableCollectors []string `json:"disable_collectors"` - - // Authentication mechanism. - // See https://docs.mongodb.com/manual/reference/connection-string/#mongodb-urioption-urioption.authMechanism - // for details. - AuthenticationMechanism string `json:"authentication_mechanism,omitempty"` - - // Authentication database. - AuthenticationDatabase string `json:"authentication_database,omitempty"` - - // Custom password for exporter endpoint /metrics. - AgentPassword string `json:"agent_password,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"` - - // 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 add mongo DB exporter body -func (o *AddMongoDBExporterBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var addMongoDbExporterBodyTypeLogLevelPropEnum []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 { - addMongoDbExporterBodyTypeLogLevelPropEnum = append(addMongoDbExporterBodyTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddMongoDBExporterBodyLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddMongoDBExporterBodyLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddMongoDBExporterBodyLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddMongoDBExporterBodyLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddMongoDBExporterBodyLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddMongoDBExporterBodyLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddMongoDBExporterBodyLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddMongoDBExporterBodyLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddMongoDBExporterBodyLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddMongoDBExporterBodyLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddMongoDBExporterBodyLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddMongoDBExporterBodyLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddMongoDBExporterBody) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addMongoDbExporterBodyTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddMongoDBExporterBody) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("body"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add mongo DB exporter body based on context it is used -func (o *AddMongoDBExporterBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddMongoDBExporterBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddMongoDBExporterBody) UnmarshalBinary(b []byte) error { - var res AddMongoDBExporterBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddMongoDBExporterDefaultBody add mongo DB exporter default body -swagger:model AddMongoDBExporterDefaultBody -*/ -type AddMongoDBExporterDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*AddMongoDBExporterDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this add mongo DB exporter default body -func (o *AddMongoDBExporterDefaultBody) 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 *AddMongoDBExporterDefaultBody) 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("AddMongoDBExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddMongoDBExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this add mongo DB exporter default body based on the context it is used -func (o *AddMongoDBExporterDefaultBody) 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 *AddMongoDBExporterDefaultBody) 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("AddMongoDBExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddMongoDBExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddMongoDBExporterDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddMongoDBExporterDefaultBody) UnmarshalBinary(b []byte) error { - var res AddMongoDBExporterDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddMongoDBExporterDefaultBodyDetailsItems0 add mongo DB exporter default body details items0 -swagger:model AddMongoDBExporterDefaultBodyDetailsItems0 -*/ -type AddMongoDBExporterDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this add mongo DB exporter default body details items0 -func (o *AddMongoDBExporterDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this add mongo DB exporter default body details items0 based on context it is used -func (o *AddMongoDBExporterDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddMongoDBExporterDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddMongoDBExporterDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res AddMongoDBExporterDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddMongoDBExporterOKBody add mongo DB exporter OK body -swagger:model AddMongoDBExporterOKBody -*/ -type AddMongoDBExporterOKBody struct { - // mongodb exporter - MongodbExporter *AddMongoDBExporterOKBodyMongodbExporter `json:"mongodb_exporter,omitempty"` -} - -// Validate validates this add mongo DB exporter OK body -func (o *AddMongoDBExporterOKBody) 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 *AddMongoDBExporterOKBody) 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("addMongoDbExporterOk" + "." + "mongodb_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addMongoDbExporterOk" + "." + "mongodb_exporter") - } - return err - } - } - - return nil -} - -// ContextValidate validate this add mongo DB exporter OK body based on the context it is used -func (o *AddMongoDBExporterOKBody) 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 *AddMongoDBExporterOKBody) 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("addMongoDbExporterOk" + "." + "mongodb_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addMongoDbExporterOk" + "." + "mongodb_exporter") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddMongoDBExporterOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddMongoDBExporterOKBody) UnmarshalBinary(b []byte) error { - var res AddMongoDBExporterOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddMongoDBExporterOKBodyMongodbExporter MongoDBExporter runs on Generic or Container Node and exposes MongoDB Service metrics. -swagger:model AddMongoDBExporterOKBodyMongodbExporter -*/ -type AddMongoDBExporterOKBodyMongodbExporter 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. - // - // Status fields below. - 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 add mongo DB exporter OK body mongodb exporter -func (o *AddMongoDBExporterOKBodyMongodbExporter) 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 addMongoDbExporterOkBodyMongodbExporterTypeStatusPropEnum []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 { - addMongoDbExporterOkBodyMongodbExporterTypeStatusPropEnum = append(addMongoDbExporterOkBodyMongodbExporterTypeStatusPropEnum, v) - } -} - -const ( - - // AddMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - AddMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // AddMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - AddMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // AddMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - AddMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // AddMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - AddMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // AddMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - AddMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // AddMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - AddMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // AddMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - AddMongoDBExporterOKBodyMongodbExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *AddMongoDBExporterOKBodyMongodbExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addMongoDbExporterOkBodyMongodbExporterTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddMongoDBExporterOKBodyMongodbExporter) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("addMongoDbExporterOk"+"."+"mongodb_exporter"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var addMongoDbExporterOkBodyMongodbExporterTypeLogLevelPropEnum []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 { - addMongoDbExporterOkBodyMongodbExporterTypeLogLevelPropEnum = append(addMongoDbExporterOkBodyMongodbExporterTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddMongoDBExporterOKBodyMongodbExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddMongoDBExporterOKBodyMongodbExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addMongoDbExporterOkBodyMongodbExporterTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddMongoDBExporterOKBodyMongodbExporter) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("addMongoDbExporterOk"+"."+"mongodb_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add mongo DB exporter OK body mongodb exporter based on context it is used -func (o *AddMongoDBExporterOKBodyMongodbExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddMongoDBExporterOKBodyMongodbExporter) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddMongoDBExporterOKBodyMongodbExporter) UnmarshalBinary(b []byte) error { - var res AddMongoDBExporterOKBodyMongodbExporter - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/add_my_s_q_ld_exporter_parameters.go b/api/inventory/v1/json/client/agents_service/add_my_s_q_ld_exporter_parameters.go deleted file mode 100644 index b6ac854df2..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_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" -) - -// NewAddMySQLdExporterParams creates a new AddMySQLdExporterParams 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 NewAddMySQLdExporterParams() *AddMySQLdExporterParams { - return &AddMySQLdExporterParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewAddMySQLdExporterParamsWithTimeout creates a new AddMySQLdExporterParams object -// with the ability to set a timeout on a request. -func NewAddMySQLdExporterParamsWithTimeout(timeout time.Duration) *AddMySQLdExporterParams { - return &AddMySQLdExporterParams{ - timeout: timeout, - } -} - -// NewAddMySQLdExporterParamsWithContext creates a new AddMySQLdExporterParams object -// with the ability to set a context for a request. -func NewAddMySQLdExporterParamsWithContext(ctx context.Context) *AddMySQLdExporterParams { - return &AddMySQLdExporterParams{ - Context: ctx, - } -} - -// NewAddMySQLdExporterParamsWithHTTPClient creates a new AddMySQLdExporterParams object -// with the ability to set a custom HTTPClient for a request. -func NewAddMySQLdExporterParamsWithHTTPClient(client *http.Client) *AddMySQLdExporterParams { - return &AddMySQLdExporterParams{ - HTTPClient: client, - } -} - -/* -AddMySQLdExporterParams contains all the parameters to send to the API endpoint - - for the add my s q ld exporter operation. - - Typically these are written to a http.Request. -*/ -type AddMySQLdExporterParams struct { - // Body. - Body AddMySQLdExporterBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the add my s q ld exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddMySQLdExporterParams) WithDefaults() *AddMySQLdExporterParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the add my s q ld exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddMySQLdExporterParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the add my s q ld exporter params -func (o *AddMySQLdExporterParams) WithTimeout(timeout time.Duration) *AddMySQLdExporterParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the add my s q ld exporter params -func (o *AddMySQLdExporterParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the add my s q ld exporter params -func (o *AddMySQLdExporterParams) WithContext(ctx context.Context) *AddMySQLdExporterParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the add my s q ld exporter params -func (o *AddMySQLdExporterParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the add my s q ld exporter params -func (o *AddMySQLdExporterParams) WithHTTPClient(client *http.Client) *AddMySQLdExporterParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the add my s q ld exporter params -func (o *AddMySQLdExporterParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the add my s q ld exporter params -func (o *AddMySQLdExporterParams) WithBody(body AddMySQLdExporterBody) *AddMySQLdExporterParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the add my s q ld exporter params -func (o *AddMySQLdExporterParams) SetBody(body AddMySQLdExporterBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *AddMySQLdExporterParams) 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/add_my_s_q_ld_exporter_responses.go b/api/inventory/v1/json/client/agents_service/add_my_s_q_ld_exporter_responses.go deleted file mode 100644 index 3d51586acf..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_my_s_q_ld_exporter_responses.go +++ /dev/null @@ -1,740 +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" -) - -// AddMySQLdExporterReader is a Reader for the AddMySQLdExporter structure. -type AddMySQLdExporterReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *AddMySQLdExporterReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewAddMySQLdExporterOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewAddMySQLdExporterDefault(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 - } -} - -// NewAddMySQLdExporterOK creates a AddMySQLdExporterOK with default headers values -func NewAddMySQLdExporterOK() *AddMySQLdExporterOK { - return &AddMySQLdExporterOK{} -} - -/* -AddMySQLdExporterOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type AddMySQLdExporterOK struct { - Payload *AddMySQLdExporterOKBody -} - -func (o *AddMySQLdExporterOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddMySQLdExporter][%d] addMySQLdExporterOk %+v", 200, o.Payload) -} - -func (o *AddMySQLdExporterOK) GetPayload() *AddMySQLdExporterOKBody { - return o.Payload -} - -func (o *AddMySQLdExporterOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddMySQLdExporterOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewAddMySQLdExporterDefault creates a AddMySQLdExporterDefault with default headers values -func NewAddMySQLdExporterDefault(code int) *AddMySQLdExporterDefault { - return &AddMySQLdExporterDefault{ - _statusCode: code, - } -} - -/* -AddMySQLdExporterDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type AddMySQLdExporterDefault struct { - _statusCode int - - Payload *AddMySQLdExporterDefaultBody -} - -// Code gets the status code for the add my s q ld exporter default response -func (o *AddMySQLdExporterDefault) Code() int { - return o._statusCode -} - -func (o *AddMySQLdExporterDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddMySQLdExporter][%d] AddMySQLdExporter default %+v", o._statusCode, o.Payload) -} - -func (o *AddMySQLdExporterDefault) GetPayload() *AddMySQLdExporterDefaultBody { - return o.Payload -} - -func (o *AddMySQLdExporterDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddMySQLdExporterDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -AddMySQLdExporterBody add my s q ld exporter body -swagger:model AddMySQLdExporterBody -*/ -type AddMySQLdExporterBody struct { - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Service identifier. - ServiceID string `json:"service_id,omitempty"` - - // MySQL username for scraping metrics. - Username string `json:"username,omitempty"` - - // MySQL password for scraping metrics. - Password string `json:"password,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 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 `json:"tablestats_group_table_limit,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Skip connection check. - SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` - - // Enables push metrics mode for exporter. - PushMetrics bool `json:"push_metrics,omitempty"` - - // List of collector names to disable in this exporter. - DisableCollectors []string `json:"disable_collectors"` - - // Custom password for exporter endpoint /metrics. - AgentPassword string `json:"agent_password,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 add my s q ld exporter body -func (o *AddMySQLdExporterBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var addMySQLdExporterBodyTypeLogLevelPropEnum []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 { - addMySQLdExporterBodyTypeLogLevelPropEnum = append(addMySQLdExporterBodyTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddMySQLdExporterBodyLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddMySQLdExporterBodyLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddMySQLdExporterBodyLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddMySQLdExporterBodyLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddMySQLdExporterBodyLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddMySQLdExporterBodyLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddMySQLdExporterBodyLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddMySQLdExporterBodyLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddMySQLdExporterBodyLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddMySQLdExporterBodyLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddMySQLdExporterBodyLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddMySQLdExporterBodyLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddMySQLdExporterBody) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addMySQLdExporterBodyTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddMySQLdExporterBody) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("body"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add my s q ld exporter body based on context it is used -func (o *AddMySQLdExporterBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddMySQLdExporterBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddMySQLdExporterBody) UnmarshalBinary(b []byte) error { - var res AddMySQLdExporterBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddMySQLdExporterDefaultBody add my s q ld exporter default body -swagger:model AddMySQLdExporterDefaultBody -*/ -type AddMySQLdExporterDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*AddMySQLdExporterDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this add my s q ld exporter default body -func (o *AddMySQLdExporterDefaultBody) 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 *AddMySQLdExporterDefaultBody) 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("AddMySQLdExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddMySQLdExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this add my s q ld exporter default body based on the context it is used -func (o *AddMySQLdExporterDefaultBody) 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 *AddMySQLdExporterDefaultBody) 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("AddMySQLdExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddMySQLdExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddMySQLdExporterDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddMySQLdExporterDefaultBody) UnmarshalBinary(b []byte) error { - var res AddMySQLdExporterDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddMySQLdExporterDefaultBodyDetailsItems0 add my s q ld exporter default body details items0 -swagger:model AddMySQLdExporterDefaultBodyDetailsItems0 -*/ -type AddMySQLdExporterDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this add my s q ld exporter default body details items0 -func (o *AddMySQLdExporterDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this add my s q ld exporter default body details items0 based on context it is used -func (o *AddMySQLdExporterDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddMySQLdExporterDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddMySQLdExporterDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res AddMySQLdExporterDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddMySQLdExporterOKBody add my s q ld exporter OK body -swagger:model AddMySQLdExporterOKBody -*/ -type AddMySQLdExporterOKBody struct { - // Actual table count at the moment of adding. - TableCount int32 `json:"table_count,omitempty"` - - // mysqld exporter - MysqldExporter *AddMySQLdExporterOKBodyMysqldExporter `json:"mysqld_exporter,omitempty"` -} - -// Validate validates this add my s q ld exporter OK body -func (o *AddMySQLdExporterOKBody) 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 *AddMySQLdExporterOKBody) 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("addMySQLdExporterOk" + "." + "mysqld_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addMySQLdExporterOk" + "." + "mysqld_exporter") - } - return err - } - } - - return nil -} - -// ContextValidate validate this add my s q ld exporter OK body based on the context it is used -func (o *AddMySQLdExporterOKBody) 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 *AddMySQLdExporterOKBody) 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("addMySQLdExporterOk" + "." + "mysqld_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addMySQLdExporterOk" + "." + "mysqld_exporter") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddMySQLdExporterOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddMySQLdExporterOKBody) UnmarshalBinary(b []byte) error { - var res AddMySQLdExporterOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddMySQLdExporterOKBodyMysqldExporter MySQLdExporter runs on Generic or Container Node and exposes MySQL Service metrics. -swagger:model AddMySQLdExporterOKBodyMysqldExporter -*/ -type AddMySQLdExporterOKBodyMysqldExporter 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. - // - // Status fields below. - 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 add my s q ld exporter OK body mysqld exporter -func (o *AddMySQLdExporterOKBodyMysqldExporter) 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 addMySQLdExporterOkBodyMysqldExporterTypeStatusPropEnum []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 { - addMySQLdExporterOkBodyMysqldExporterTypeStatusPropEnum = append(addMySQLdExporterOkBodyMysqldExporterTypeStatusPropEnum, v) - } -} - -const ( - - // AddMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - AddMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // AddMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - AddMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // AddMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - AddMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // AddMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - AddMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // AddMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - AddMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // AddMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - AddMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // AddMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - AddMySQLdExporterOKBodyMysqldExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *AddMySQLdExporterOKBodyMysqldExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addMySQLdExporterOkBodyMysqldExporterTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddMySQLdExporterOKBodyMysqldExporter) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("addMySQLdExporterOk"+"."+"mysqld_exporter"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var addMySQLdExporterOkBodyMysqldExporterTypeLogLevelPropEnum []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 { - addMySQLdExporterOkBodyMysqldExporterTypeLogLevelPropEnum = append(addMySQLdExporterOkBodyMysqldExporterTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddMySQLdExporterOKBodyMysqldExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddMySQLdExporterOKBodyMysqldExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addMySQLdExporterOkBodyMysqldExporterTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddMySQLdExporterOKBodyMysqldExporter) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("addMySQLdExporterOk"+"."+"mysqld_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add my s q ld exporter OK body mysqld exporter based on context it is used -func (o *AddMySQLdExporterOKBodyMysqldExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddMySQLdExporterOKBodyMysqldExporter) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddMySQLdExporterOKBodyMysqldExporter) UnmarshalBinary(b []byte) error { - var res AddMySQLdExporterOKBodyMysqldExporter - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/add_node_exporter_parameters.go b/api/inventory/v1/json/client/agents_service/add_node_exporter_parameters.go deleted file mode 100644 index 54a77cc14a..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_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" -) - -// NewAddNodeExporterParams creates a new AddNodeExporterParams 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 NewAddNodeExporterParams() *AddNodeExporterParams { - return &AddNodeExporterParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewAddNodeExporterParamsWithTimeout creates a new AddNodeExporterParams object -// with the ability to set a timeout on a request. -func NewAddNodeExporterParamsWithTimeout(timeout time.Duration) *AddNodeExporterParams { - return &AddNodeExporterParams{ - timeout: timeout, - } -} - -// NewAddNodeExporterParamsWithContext creates a new AddNodeExporterParams object -// with the ability to set a context for a request. -func NewAddNodeExporterParamsWithContext(ctx context.Context) *AddNodeExporterParams { - return &AddNodeExporterParams{ - Context: ctx, - } -} - -// NewAddNodeExporterParamsWithHTTPClient creates a new AddNodeExporterParams object -// with the ability to set a custom HTTPClient for a request. -func NewAddNodeExporterParamsWithHTTPClient(client *http.Client) *AddNodeExporterParams { - return &AddNodeExporterParams{ - HTTPClient: client, - } -} - -/* -AddNodeExporterParams contains all the parameters to send to the API endpoint - - for the add node exporter operation. - - Typically these are written to a http.Request. -*/ -type AddNodeExporterParams struct { - // Body. - Body AddNodeExporterBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the add node exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddNodeExporterParams) WithDefaults() *AddNodeExporterParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the add node exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddNodeExporterParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the add node exporter params -func (o *AddNodeExporterParams) WithTimeout(timeout time.Duration) *AddNodeExporterParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the add node exporter params -func (o *AddNodeExporterParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the add node exporter params -func (o *AddNodeExporterParams) WithContext(ctx context.Context) *AddNodeExporterParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the add node exporter params -func (o *AddNodeExporterParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the add node exporter params -func (o *AddNodeExporterParams) WithHTTPClient(client *http.Client) *AddNodeExporterParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the add node exporter params -func (o *AddNodeExporterParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the add node exporter params -func (o *AddNodeExporterParams) WithBody(body AddNodeExporterBody) *AddNodeExporterParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the add node exporter params -func (o *AddNodeExporterParams) SetBody(body AddNodeExporterBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *AddNodeExporterParams) 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/add_node_exporter_responses.go b/api/inventory/v1/json/client/agents_service/add_node_exporter_responses.go deleted file mode 100644 index 5bc595ad0e..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_node_exporter_responses.go +++ /dev/null @@ -1,673 +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" -) - -// AddNodeExporterReader is a Reader for the AddNodeExporter structure. -type AddNodeExporterReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *AddNodeExporterReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewAddNodeExporterOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewAddNodeExporterDefault(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 - } -} - -// NewAddNodeExporterOK creates a AddNodeExporterOK with default headers values -func NewAddNodeExporterOK() *AddNodeExporterOK { - return &AddNodeExporterOK{} -} - -/* -AddNodeExporterOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type AddNodeExporterOK struct { - Payload *AddNodeExporterOKBody -} - -func (o *AddNodeExporterOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddNodeExporter][%d] addNodeExporterOk %+v", 200, o.Payload) -} - -func (o *AddNodeExporterOK) GetPayload() *AddNodeExporterOKBody { - return o.Payload -} - -func (o *AddNodeExporterOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddNodeExporterOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewAddNodeExporterDefault creates a AddNodeExporterDefault with default headers values -func NewAddNodeExporterDefault(code int) *AddNodeExporterDefault { - return &AddNodeExporterDefault{ - _statusCode: code, - } -} - -/* -AddNodeExporterDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type AddNodeExporterDefault struct { - _statusCode int - - Payload *AddNodeExporterDefaultBody -} - -// Code gets the status code for the add node exporter default response -func (o *AddNodeExporterDefault) Code() int { - return o._statusCode -} - -func (o *AddNodeExporterDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddNodeExporter][%d] AddNodeExporter default %+v", o._statusCode, o.Payload) -} - -func (o *AddNodeExporterDefault) GetPayload() *AddNodeExporterDefaultBody { - return o.Payload -} - -func (o *AddNodeExporterDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddNodeExporterDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -AddNodeExporterBody add node exporter body -swagger:model AddNodeExporterBody -*/ -type AddNodeExporterBody struct { - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Enables push metrics mode for exporter. - PushMetrics bool `json:"push_metrics,omitempty"` - - // List of collector names to disable in this exporter. - DisableCollectors []string `json:"disable_collectors"` - - // 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"` - - // Expose the node_exporter process on all public interfaces - ExposeExporter bool `json:"expose_exporter,omitempty"` -} - -// Validate validates this add node exporter body -func (o *AddNodeExporterBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var addNodeExporterBodyTypeLogLevelPropEnum []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 { - addNodeExporterBodyTypeLogLevelPropEnum = append(addNodeExporterBodyTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddNodeExporterBodyLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddNodeExporterBodyLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddNodeExporterBodyLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddNodeExporterBodyLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddNodeExporterBodyLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddNodeExporterBodyLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddNodeExporterBodyLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddNodeExporterBodyLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddNodeExporterBodyLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddNodeExporterBodyLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddNodeExporterBodyLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddNodeExporterBodyLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddNodeExporterBody) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addNodeExporterBodyTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddNodeExporterBody) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("body"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add node exporter body based on context it is used -func (o *AddNodeExporterBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddNodeExporterBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddNodeExporterBody) UnmarshalBinary(b []byte) error { - var res AddNodeExporterBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddNodeExporterDefaultBody add node exporter default body -swagger:model AddNodeExporterDefaultBody -*/ -type AddNodeExporterDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*AddNodeExporterDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this add node exporter default body -func (o *AddNodeExporterDefaultBody) 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 *AddNodeExporterDefaultBody) 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("AddNodeExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddNodeExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this add node exporter default body based on the context it is used -func (o *AddNodeExporterDefaultBody) 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 *AddNodeExporterDefaultBody) 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("AddNodeExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddNodeExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddNodeExporterDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddNodeExporterDefaultBody) UnmarshalBinary(b []byte) error { - var res AddNodeExporterDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddNodeExporterDefaultBodyDetailsItems0 add node exporter default body details items0 -swagger:model AddNodeExporterDefaultBodyDetailsItems0 -*/ -type AddNodeExporterDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this add node exporter default body details items0 -func (o *AddNodeExporterDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this add node exporter default body details items0 based on context it is used -func (o *AddNodeExporterDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddNodeExporterDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddNodeExporterDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res AddNodeExporterDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddNodeExporterOKBody add node exporter OK body -swagger:model AddNodeExporterOKBody -*/ -type AddNodeExporterOKBody struct { - // node exporter - NodeExporter *AddNodeExporterOKBodyNodeExporter `json:"node_exporter,omitempty"` -} - -// Validate validates this add node exporter OK body -func (o *AddNodeExporterOKBody) 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 *AddNodeExporterOKBody) 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("addNodeExporterOk" + "." + "node_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addNodeExporterOk" + "." + "node_exporter") - } - return err - } - } - - return nil -} - -// ContextValidate validate this add node exporter OK body based on the context it is used -func (o *AddNodeExporterOKBody) 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 *AddNodeExporterOKBody) 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("addNodeExporterOk" + "." + "node_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addNodeExporterOk" + "." + "node_exporter") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddNodeExporterOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddNodeExporterOKBody) UnmarshalBinary(b []byte) error { - var res AddNodeExporterOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddNodeExporterOKBodyNodeExporter NodeExporter runs on Generic or Container Node and exposes its metrics. -swagger:model AddNodeExporterOKBodyNodeExporter -*/ -type AddNodeExporterOKBodyNodeExporter 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. - // - // Status fields below. - 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 add node exporter OK body node exporter -func (o *AddNodeExporterOKBodyNodeExporter) 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 addNodeExporterOkBodyNodeExporterTypeStatusPropEnum []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 { - addNodeExporterOkBodyNodeExporterTypeStatusPropEnum = append(addNodeExporterOkBodyNodeExporterTypeStatusPropEnum, v) - } -} - -const ( - - // AddNodeExporterOKBodyNodeExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - AddNodeExporterOKBodyNodeExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // AddNodeExporterOKBodyNodeExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - AddNodeExporterOKBodyNodeExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // AddNodeExporterOKBodyNodeExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - AddNodeExporterOKBodyNodeExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // AddNodeExporterOKBodyNodeExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - AddNodeExporterOKBodyNodeExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // AddNodeExporterOKBodyNodeExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - AddNodeExporterOKBodyNodeExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // AddNodeExporterOKBodyNodeExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - AddNodeExporterOKBodyNodeExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // AddNodeExporterOKBodyNodeExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - AddNodeExporterOKBodyNodeExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *AddNodeExporterOKBodyNodeExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addNodeExporterOkBodyNodeExporterTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddNodeExporterOKBodyNodeExporter) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("addNodeExporterOk"+"."+"node_exporter"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var addNodeExporterOkBodyNodeExporterTypeLogLevelPropEnum []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 { - addNodeExporterOkBodyNodeExporterTypeLogLevelPropEnum = append(addNodeExporterOkBodyNodeExporterTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddNodeExporterOKBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddNodeExporterOKBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddNodeExporterOKBodyNodeExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddNodeExporterOKBodyNodeExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddNodeExporterOKBodyNodeExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddNodeExporterOKBodyNodeExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddNodeExporterOKBodyNodeExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddNodeExporterOKBodyNodeExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddNodeExporterOKBodyNodeExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddNodeExporterOKBodyNodeExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddNodeExporterOKBodyNodeExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddNodeExporterOKBodyNodeExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddNodeExporterOKBodyNodeExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addNodeExporterOkBodyNodeExporterTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddNodeExporterOKBodyNodeExporter) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("addNodeExporterOk"+"."+"node_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add node exporter OK body node exporter based on context it is used -func (o *AddNodeExporterOKBodyNodeExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddNodeExporterOKBodyNodeExporter) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddNodeExporterOKBodyNodeExporter) UnmarshalBinary(b []byte) error { - var res AddNodeExporterOKBodyNodeExporter - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/add_postgres_exporter_parameters.go b/api/inventory/v1/json/client/agents_service/add_postgres_exporter_parameters.go deleted file mode 100644 index 175d928c26..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_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" -) - -// NewAddPostgresExporterParams creates a new AddPostgresExporterParams 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 NewAddPostgresExporterParams() *AddPostgresExporterParams { - return &AddPostgresExporterParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewAddPostgresExporterParamsWithTimeout creates a new AddPostgresExporterParams object -// with the ability to set a timeout on a request. -func NewAddPostgresExporterParamsWithTimeout(timeout time.Duration) *AddPostgresExporterParams { - return &AddPostgresExporterParams{ - timeout: timeout, - } -} - -// NewAddPostgresExporterParamsWithContext creates a new AddPostgresExporterParams object -// with the ability to set a context for a request. -func NewAddPostgresExporterParamsWithContext(ctx context.Context) *AddPostgresExporterParams { - return &AddPostgresExporterParams{ - Context: ctx, - } -} - -// NewAddPostgresExporterParamsWithHTTPClient creates a new AddPostgresExporterParams object -// with the ability to set a custom HTTPClient for a request. -func NewAddPostgresExporterParamsWithHTTPClient(client *http.Client) *AddPostgresExporterParams { - return &AddPostgresExporterParams{ - HTTPClient: client, - } -} - -/* -AddPostgresExporterParams contains all the parameters to send to the API endpoint - - for the add postgres exporter operation. - - Typically these are written to a http.Request. -*/ -type AddPostgresExporterParams struct { - // Body. - Body AddPostgresExporterBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the add postgres exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddPostgresExporterParams) WithDefaults() *AddPostgresExporterParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the add postgres exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddPostgresExporterParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the add postgres exporter params -func (o *AddPostgresExporterParams) WithTimeout(timeout time.Duration) *AddPostgresExporterParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the add postgres exporter params -func (o *AddPostgresExporterParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the add postgres exporter params -func (o *AddPostgresExporterParams) WithContext(ctx context.Context) *AddPostgresExporterParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the add postgres exporter params -func (o *AddPostgresExporterParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the add postgres exporter params -func (o *AddPostgresExporterParams) WithHTTPClient(client *http.Client) *AddPostgresExporterParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the add postgres exporter params -func (o *AddPostgresExporterParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the add postgres exporter params -func (o *AddPostgresExporterParams) WithBody(body AddPostgresExporterBody) *AddPostgresExporterParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the add postgres exporter params -func (o *AddPostgresExporterParams) SetBody(body AddPostgresExporterBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *AddPostgresExporterParams) 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/add_postgres_exporter_responses.go b/api/inventory/v1/json/client/agents_service/add_postgres_exporter_responses.go deleted file mode 100644 index da1ba0f092..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_postgres_exporter_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" -) - -// AddPostgresExporterReader is a Reader for the AddPostgresExporter structure. -type AddPostgresExporterReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *AddPostgresExporterReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewAddPostgresExporterOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewAddPostgresExporterDefault(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 - } -} - -// NewAddPostgresExporterOK creates a AddPostgresExporterOK with default headers values -func NewAddPostgresExporterOK() *AddPostgresExporterOK { - return &AddPostgresExporterOK{} -} - -/* -AddPostgresExporterOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type AddPostgresExporterOK struct { - Payload *AddPostgresExporterOKBody -} - -func (o *AddPostgresExporterOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddPostgresExporter][%d] addPostgresExporterOk %+v", 200, o.Payload) -} - -func (o *AddPostgresExporterOK) GetPayload() *AddPostgresExporterOKBody { - return o.Payload -} - -func (o *AddPostgresExporterOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddPostgresExporterOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewAddPostgresExporterDefault creates a AddPostgresExporterDefault with default headers values -func NewAddPostgresExporterDefault(code int) *AddPostgresExporterDefault { - return &AddPostgresExporterDefault{ - _statusCode: code, - } -} - -/* -AddPostgresExporterDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type AddPostgresExporterDefault struct { - _statusCode int - - Payload *AddPostgresExporterDefaultBody -} - -// Code gets the status code for the add postgres exporter default response -func (o *AddPostgresExporterDefault) Code() int { - return o._statusCode -} - -func (o *AddPostgresExporterDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddPostgresExporter][%d] AddPostgresExporter default %+v", o._statusCode, o.Payload) -} - -func (o *AddPostgresExporterDefault) GetPayload() *AddPostgresExporterDefaultBody { - return o.Payload -} - -func (o *AddPostgresExporterDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddPostgresExporterDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -AddPostgresExporterBody add postgres exporter body -swagger:model AddPostgresExporterBody -*/ -type AddPostgresExporterBody struct { - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Service identifier. - ServiceID string `json:"service_id,omitempty"` - - // PostgreSQL username for scraping metrics. - Username string `json:"username,omitempty"` - - // PostgreSQL password for scraping metrics. - Password string `json:"password,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"` - - // Skip connection check. - SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` - - // Enables push metrics mode for exporter. - PushMetrics bool `json:"push_metrics,omitempty"` - - // List of collector names to disable in this exporter. - DisableCollectors []string `json:"disable_collectors"` - - // TLS CA certificate. - TLSCa string `json:"tls_ca,omitempty"` - - // TLS Certifcate. - TLSCert string `json:"tls_cert,omitempty"` - - // TLS Certificate Key. - TLSKey string `json:"tls_key,omitempty"` - - // Custom password for exporter endpoint /metrics. - AgentPassword string `json:"agent_password,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 add postgres exporter body -func (o *AddPostgresExporterBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var addPostgresExporterBodyTypeLogLevelPropEnum []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 { - addPostgresExporterBodyTypeLogLevelPropEnum = append(addPostgresExporterBodyTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddPostgresExporterBodyLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddPostgresExporterBodyLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddPostgresExporterBodyLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddPostgresExporterBodyLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddPostgresExporterBodyLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddPostgresExporterBodyLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddPostgresExporterBodyLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddPostgresExporterBodyLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddPostgresExporterBodyLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddPostgresExporterBodyLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddPostgresExporterBodyLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddPostgresExporterBodyLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddPostgresExporterBody) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addPostgresExporterBodyTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddPostgresExporterBody) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("body"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add postgres exporter body based on context it is used -func (o *AddPostgresExporterBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddPostgresExporterBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddPostgresExporterBody) UnmarshalBinary(b []byte) error { - var res AddPostgresExporterBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddPostgresExporterDefaultBody add postgres exporter default body -swagger:model AddPostgresExporterDefaultBody -*/ -type AddPostgresExporterDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*AddPostgresExporterDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this add postgres exporter default body -func (o *AddPostgresExporterDefaultBody) 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 *AddPostgresExporterDefaultBody) 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("AddPostgresExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddPostgresExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this add postgres exporter default body based on the context it is used -func (o *AddPostgresExporterDefaultBody) 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 *AddPostgresExporterDefaultBody) 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("AddPostgresExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddPostgresExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddPostgresExporterDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddPostgresExporterDefaultBody) UnmarshalBinary(b []byte) error { - var res AddPostgresExporterDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddPostgresExporterDefaultBodyDetailsItems0 add postgres exporter default body details items0 -swagger:model AddPostgresExporterDefaultBodyDetailsItems0 -*/ -type AddPostgresExporterDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this add postgres exporter default body details items0 -func (o *AddPostgresExporterDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this add postgres exporter default body details items0 based on context it is used -func (o *AddPostgresExporterDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddPostgresExporterDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddPostgresExporterDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res AddPostgresExporterDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddPostgresExporterOKBody add postgres exporter OK body -swagger:model AddPostgresExporterOKBody -*/ -type AddPostgresExporterOKBody struct { - // postgres exporter - PostgresExporter *AddPostgresExporterOKBodyPostgresExporter `json:"postgres_exporter,omitempty"` -} - -// Validate validates this add postgres exporter OK body -func (o *AddPostgresExporterOKBody) 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 *AddPostgresExporterOKBody) 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("addPostgresExporterOk" + "." + "postgres_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addPostgresExporterOk" + "." + "postgres_exporter") - } - return err - } - } - - return nil -} - -// ContextValidate validate this add postgres exporter OK body based on the context it is used -func (o *AddPostgresExporterOKBody) 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 *AddPostgresExporterOKBody) 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("addPostgresExporterOk" + "." + "postgres_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addPostgresExporterOk" + "." + "postgres_exporter") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddPostgresExporterOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddPostgresExporterOKBody) UnmarshalBinary(b []byte) error { - var res AddPostgresExporterOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddPostgresExporterOKBodyPostgresExporter PostgresExporter runs on Generic or Container Node and exposes PostgreSQL Service metrics. -swagger:model AddPostgresExporterOKBodyPostgresExporter -*/ -type AddPostgresExporterOKBodyPostgresExporter 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 add postgres exporter OK body postgres exporter -func (o *AddPostgresExporterOKBodyPostgresExporter) 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 addPostgresExporterOkBodyPostgresExporterTypeStatusPropEnum []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 { - addPostgresExporterOkBodyPostgresExporterTypeStatusPropEnum = append(addPostgresExporterOkBodyPostgresExporterTypeStatusPropEnum, v) - } -} - -const ( - - // AddPostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - AddPostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // AddPostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - AddPostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // AddPostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - AddPostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // AddPostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - AddPostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // AddPostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - AddPostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // AddPostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - AddPostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // AddPostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - AddPostgresExporterOKBodyPostgresExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *AddPostgresExporterOKBodyPostgresExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addPostgresExporterOkBodyPostgresExporterTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddPostgresExporterOKBodyPostgresExporter) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("addPostgresExporterOk"+"."+"postgres_exporter"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var addPostgresExporterOkBodyPostgresExporterTypeLogLevelPropEnum []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 { - addPostgresExporterOkBodyPostgresExporterTypeLogLevelPropEnum = append(addPostgresExporterOkBodyPostgresExporterTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddPostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddPostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddPostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddPostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddPostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddPostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddPostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddPostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddPostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddPostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddPostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddPostgresExporterOKBodyPostgresExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddPostgresExporterOKBodyPostgresExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addPostgresExporterOkBodyPostgresExporterTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddPostgresExporterOKBodyPostgresExporter) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("addPostgresExporterOk"+"."+"postgres_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add postgres exporter OK body postgres exporter based on context it is used -func (o *AddPostgresExporterOKBodyPostgresExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddPostgresExporterOKBodyPostgresExporter) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddPostgresExporterOKBodyPostgresExporter) UnmarshalBinary(b []byte) error { - var res AddPostgresExporterOKBodyPostgresExporter - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/add_proxy_sql_exporter_parameters.go b/api/inventory/v1/json/client/agents_service/add_proxy_sql_exporter_parameters.go deleted file mode 100644 index c7f680835a..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_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" -) - -// NewAddProxySQLExporterParams creates a new AddProxySQLExporterParams 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 NewAddProxySQLExporterParams() *AddProxySQLExporterParams { - return &AddProxySQLExporterParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewAddProxySQLExporterParamsWithTimeout creates a new AddProxySQLExporterParams object -// with the ability to set a timeout on a request. -func NewAddProxySQLExporterParamsWithTimeout(timeout time.Duration) *AddProxySQLExporterParams { - return &AddProxySQLExporterParams{ - timeout: timeout, - } -} - -// NewAddProxySQLExporterParamsWithContext creates a new AddProxySQLExporterParams object -// with the ability to set a context for a request. -func NewAddProxySQLExporterParamsWithContext(ctx context.Context) *AddProxySQLExporterParams { - return &AddProxySQLExporterParams{ - Context: ctx, - } -} - -// NewAddProxySQLExporterParamsWithHTTPClient creates a new AddProxySQLExporterParams object -// with the ability to set a custom HTTPClient for a request. -func NewAddProxySQLExporterParamsWithHTTPClient(client *http.Client) *AddProxySQLExporterParams { - return &AddProxySQLExporterParams{ - HTTPClient: client, - } -} - -/* -AddProxySQLExporterParams contains all the parameters to send to the API endpoint - - for the add proxy SQL exporter operation. - - Typically these are written to a http.Request. -*/ -type AddProxySQLExporterParams struct { - // Body. - Body AddProxySQLExporterBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the add proxy SQL exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddProxySQLExporterParams) WithDefaults() *AddProxySQLExporterParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the add proxy SQL exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddProxySQLExporterParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the add proxy SQL exporter params -func (o *AddProxySQLExporterParams) WithTimeout(timeout time.Duration) *AddProxySQLExporterParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the add proxy SQL exporter params -func (o *AddProxySQLExporterParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the add proxy SQL exporter params -func (o *AddProxySQLExporterParams) WithContext(ctx context.Context) *AddProxySQLExporterParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the add proxy SQL exporter params -func (o *AddProxySQLExporterParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the add proxy SQL exporter params -func (o *AddProxySQLExporterParams) WithHTTPClient(client *http.Client) *AddProxySQLExporterParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the add proxy SQL exporter params -func (o *AddProxySQLExporterParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the add proxy SQL exporter params -func (o *AddProxySQLExporterParams) WithBody(body AddProxySQLExporterBody) *AddProxySQLExporterParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the add proxy SQL exporter params -func (o *AddProxySQLExporterParams) SetBody(body AddProxySQLExporterBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *AddProxySQLExporterParams) 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/add_proxy_sql_exporter_responses.go b/api/inventory/v1/json/client/agents_service/add_proxy_sql_exporter_responses.go deleted file mode 100644 index 890665575c..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_proxy_sql_exporter_responses.go +++ /dev/null @@ -1,706 +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" -) - -// AddProxySQLExporterReader is a Reader for the AddProxySQLExporter structure. -type AddProxySQLExporterReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *AddProxySQLExporterReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewAddProxySQLExporterOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewAddProxySQLExporterDefault(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 - } -} - -// NewAddProxySQLExporterOK creates a AddProxySQLExporterOK with default headers values -func NewAddProxySQLExporterOK() *AddProxySQLExporterOK { - return &AddProxySQLExporterOK{} -} - -/* -AddProxySQLExporterOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type AddProxySQLExporterOK struct { - Payload *AddProxySQLExporterOKBody -} - -func (o *AddProxySQLExporterOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddProxySQLExporter][%d] addProxySqlExporterOk %+v", 200, o.Payload) -} - -func (o *AddProxySQLExporterOK) GetPayload() *AddProxySQLExporterOKBody { - return o.Payload -} - -func (o *AddProxySQLExporterOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddProxySQLExporterOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewAddProxySQLExporterDefault creates a AddProxySQLExporterDefault with default headers values -func NewAddProxySQLExporterDefault(code int) *AddProxySQLExporterDefault { - return &AddProxySQLExporterDefault{ - _statusCode: code, - } -} - -/* -AddProxySQLExporterDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type AddProxySQLExporterDefault struct { - _statusCode int - - Payload *AddProxySQLExporterDefaultBody -} - -// Code gets the status code for the add proxy SQL exporter default response -func (o *AddProxySQLExporterDefault) Code() int { - return o._statusCode -} - -func (o *AddProxySQLExporterDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddProxySQLExporter][%d] AddProxySQLExporter default %+v", o._statusCode, o.Payload) -} - -func (o *AddProxySQLExporterDefault) GetPayload() *AddProxySQLExporterDefaultBody { - return o.Payload -} - -func (o *AddProxySQLExporterDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddProxySQLExporterDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -AddProxySQLExporterBody add proxy SQL exporter body -swagger:model AddProxySQLExporterBody -*/ -type AddProxySQLExporterBody struct { - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Service identifier. - ServiceID string `json:"service_id,omitempty"` - - // ProxySQL username for scraping metrics. - Username string `json:"username,omitempty"` - - // ProxySQL password for scraping metrics. - Password string `json:"password,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"` - - // Skip connection check. - SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` - - // Enables push metrics mode for exporter. - PushMetrics bool `json:"push_metrics,omitempty"` - - // List of collector names to disable in this exporter. - DisableCollectors []string `json:"disable_collectors"` - - // Custom password for exporter endpoint /metrics. - AgentPassword string `json:"agent_password,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 add proxy SQL exporter body -func (o *AddProxySQLExporterBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var addProxySqlExporterBodyTypeLogLevelPropEnum []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 { - addProxySqlExporterBodyTypeLogLevelPropEnum = append(addProxySqlExporterBodyTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddProxySQLExporterBodyLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddProxySQLExporterBodyLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddProxySQLExporterBodyLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddProxySQLExporterBodyLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddProxySQLExporterBodyLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddProxySQLExporterBodyLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddProxySQLExporterBodyLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddProxySQLExporterBodyLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddProxySQLExporterBodyLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddProxySQLExporterBodyLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddProxySQLExporterBodyLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddProxySQLExporterBodyLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddProxySQLExporterBody) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addProxySqlExporterBodyTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddProxySQLExporterBody) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("body"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add proxy SQL exporter body based on context it is used -func (o *AddProxySQLExporterBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddProxySQLExporterBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddProxySQLExporterBody) UnmarshalBinary(b []byte) error { - var res AddProxySQLExporterBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddProxySQLExporterDefaultBody add proxy SQL exporter default body -swagger:model AddProxySQLExporterDefaultBody -*/ -type AddProxySQLExporterDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*AddProxySQLExporterDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this add proxy SQL exporter default body -func (o *AddProxySQLExporterDefaultBody) 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 *AddProxySQLExporterDefaultBody) 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("AddProxySQLExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddProxySQLExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this add proxy SQL exporter default body based on the context it is used -func (o *AddProxySQLExporterDefaultBody) 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 *AddProxySQLExporterDefaultBody) 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("AddProxySQLExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddProxySQLExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddProxySQLExporterDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddProxySQLExporterDefaultBody) UnmarshalBinary(b []byte) error { - var res AddProxySQLExporterDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddProxySQLExporterDefaultBodyDetailsItems0 add proxy SQL exporter default body details items0 -swagger:model AddProxySQLExporterDefaultBodyDetailsItems0 -*/ -type AddProxySQLExporterDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this add proxy SQL exporter default body details items0 -func (o *AddProxySQLExporterDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this add proxy SQL exporter default body details items0 based on context it is used -func (o *AddProxySQLExporterDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddProxySQLExporterDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddProxySQLExporterDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res AddProxySQLExporterDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddProxySQLExporterOKBody add proxy SQL exporter OK body -swagger:model AddProxySQLExporterOKBody -*/ -type AddProxySQLExporterOKBody struct { - // proxysql exporter - ProxysqlExporter *AddProxySQLExporterOKBodyProxysqlExporter `json:"proxysql_exporter,omitempty"` -} - -// Validate validates this add proxy SQL exporter OK body -func (o *AddProxySQLExporterOKBody) 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 *AddProxySQLExporterOKBody) 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("addProxySqlExporterOk" + "." + "proxysql_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addProxySqlExporterOk" + "." + "proxysql_exporter") - } - return err - } - } - - return nil -} - -// ContextValidate validate this add proxy SQL exporter OK body based on the context it is used -func (o *AddProxySQLExporterOKBody) 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 *AddProxySQLExporterOKBody) 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("addProxySqlExporterOk" + "." + "proxysql_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addProxySqlExporterOk" + "." + "proxysql_exporter") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddProxySQLExporterOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddProxySQLExporterOKBody) UnmarshalBinary(b []byte) error { - var res AddProxySQLExporterOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddProxySQLExporterOKBodyProxysqlExporter ProxySQLExporter runs on Generic or Container Node and exposes ProxySQL Service metrics. -swagger:model AddProxySQLExporterOKBodyProxysqlExporter -*/ -type AddProxySQLExporterOKBodyProxysqlExporter 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. - // - // Status fields below. - 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 add proxy SQL exporter OK body proxysql exporter -func (o *AddProxySQLExporterOKBodyProxysqlExporter) 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 addProxySqlExporterOkBodyProxysqlExporterTypeStatusPropEnum []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 { - addProxySqlExporterOkBodyProxysqlExporterTypeStatusPropEnum = append(addProxySqlExporterOkBodyProxysqlExporterTypeStatusPropEnum, v) - } -} - -const ( - - // AddProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - AddProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // AddProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - AddProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // AddProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - AddProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // AddProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - AddProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // AddProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - AddProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // AddProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - AddProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // AddProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - AddProxySQLExporterOKBodyProxysqlExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *AddProxySQLExporterOKBodyProxysqlExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addProxySqlExporterOkBodyProxysqlExporterTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddProxySQLExporterOKBodyProxysqlExporter) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("addProxySqlExporterOk"+"."+"proxysql_exporter"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var addProxySqlExporterOkBodyProxysqlExporterTypeLogLevelPropEnum []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 { - addProxySqlExporterOkBodyProxysqlExporterTypeLogLevelPropEnum = append(addProxySqlExporterOkBodyProxysqlExporterTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddProxySQLExporterOKBodyProxysqlExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddProxySQLExporterOKBodyProxysqlExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addProxySqlExporterOkBodyProxysqlExporterTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddProxySQLExporterOKBodyProxysqlExporter) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("addProxySqlExporterOk"+"."+"proxysql_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add proxy SQL exporter OK body proxysql exporter based on context it is used -func (o *AddProxySQLExporterOKBodyProxysqlExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddProxySQLExporterOKBodyProxysqlExporter) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddProxySQLExporterOKBodyProxysqlExporter) UnmarshalBinary(b []byte) error { - var res AddProxySQLExporterOKBodyProxysqlExporter - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/add_qan_mongo_db_profiler_agent_responses.go b/api/inventory/v1/json/client/agents_service/add_qan_mongo_db_profiler_agent_responses.go index dd8ca67fe7..2ff033b131 100644 --- a/api/inventory/v1/json/client/agents_service/add_qan_mongo_db_profiler_agent_responses.go +++ b/api/inventory/v1/json/client/agents_service/add_qan_mongo_db_profiler_agent_responses.go @@ -524,9 +524,6 @@ type AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent struct { TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` // Limit query length in QAN (default: server-defined; -1: no limit). - // - // True if query examples are disabled. - // bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650 MaxQueryLength int32 `json:"max_query_length,omitempty"` // Custom user-assigned labels. diff --git a/api/inventory/v1/json/client/agents_service/add_rds_exporter_parameters.go b/api/inventory/v1/json/client/agents_service/add_rds_exporter_parameters.go deleted file mode 100644 index d7c44f1816..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_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" -) - -// NewAddRDSExporterParams creates a new AddRDSExporterParams 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 NewAddRDSExporterParams() *AddRDSExporterParams { - return &AddRDSExporterParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewAddRDSExporterParamsWithTimeout creates a new AddRDSExporterParams object -// with the ability to set a timeout on a request. -func NewAddRDSExporterParamsWithTimeout(timeout time.Duration) *AddRDSExporterParams { - return &AddRDSExporterParams{ - timeout: timeout, - } -} - -// NewAddRDSExporterParamsWithContext creates a new AddRDSExporterParams object -// with the ability to set a context for a request. -func NewAddRDSExporterParamsWithContext(ctx context.Context) *AddRDSExporterParams { - return &AddRDSExporterParams{ - Context: ctx, - } -} - -// NewAddRDSExporterParamsWithHTTPClient creates a new AddRDSExporterParams object -// with the ability to set a custom HTTPClient for a request. -func NewAddRDSExporterParamsWithHTTPClient(client *http.Client) *AddRDSExporterParams { - return &AddRDSExporterParams{ - HTTPClient: client, - } -} - -/* -AddRDSExporterParams contains all the parameters to send to the API endpoint - - for the add RDS exporter operation. - - Typically these are written to a http.Request. -*/ -type AddRDSExporterParams struct { - // Body. - Body AddRDSExporterBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the add RDS exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddRDSExporterParams) WithDefaults() *AddRDSExporterParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the add RDS exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddRDSExporterParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the add RDS exporter params -func (o *AddRDSExporterParams) WithTimeout(timeout time.Duration) *AddRDSExporterParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the add RDS exporter params -func (o *AddRDSExporterParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the add RDS exporter params -func (o *AddRDSExporterParams) WithContext(ctx context.Context) *AddRDSExporterParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the add RDS exporter params -func (o *AddRDSExporterParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the add RDS exporter params -func (o *AddRDSExporterParams) WithHTTPClient(client *http.Client) *AddRDSExporterParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the add RDS exporter params -func (o *AddRDSExporterParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the add RDS exporter params -func (o *AddRDSExporterParams) WithBody(body AddRDSExporterBody) *AddRDSExporterParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the add RDS exporter params -func (o *AddRDSExporterParams) SetBody(body AddRDSExporterBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *AddRDSExporterParams) 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/add_rds_exporter_responses.go b/api/inventory/v1/json/client/agents_service/add_rds_exporter_responses.go deleted file mode 100644 index 446ee485a5..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_rds_exporter_responses.go +++ /dev/null @@ -1,696 +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" -) - -// AddRDSExporterReader is a Reader for the AddRDSExporter structure. -type AddRDSExporterReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *AddRDSExporterReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewAddRDSExporterOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewAddRDSExporterDefault(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 - } -} - -// NewAddRDSExporterOK creates a AddRDSExporterOK with default headers values -func NewAddRDSExporterOK() *AddRDSExporterOK { - return &AddRDSExporterOK{} -} - -/* -AddRDSExporterOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type AddRDSExporterOK struct { - Payload *AddRDSExporterOKBody -} - -func (o *AddRDSExporterOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddRDSExporter][%d] addRdsExporterOk %+v", 200, o.Payload) -} - -func (o *AddRDSExporterOK) GetPayload() *AddRDSExporterOKBody { - return o.Payload -} - -func (o *AddRDSExporterOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddRDSExporterOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewAddRDSExporterDefault creates a AddRDSExporterDefault with default headers values -func NewAddRDSExporterDefault(code int) *AddRDSExporterDefault { - return &AddRDSExporterDefault{ - _statusCode: code, - } -} - -/* -AddRDSExporterDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type AddRDSExporterDefault struct { - _statusCode int - - Payload *AddRDSExporterDefaultBody -} - -// Code gets the status code for the add RDS exporter default response -func (o *AddRDSExporterDefault) Code() int { - return o._statusCode -} - -func (o *AddRDSExporterDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddRDSExporter][%d] AddRDSExporter default %+v", o._statusCode, o.Payload) -} - -func (o *AddRDSExporterDefault) GetPayload() *AddRDSExporterDefaultBody { - return o.Payload -} - -func (o *AddRDSExporterDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddRDSExporterDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -AddRDSExporterBody add RDS exporter body -swagger:model AddRDSExporterBody -*/ -type AddRDSExporterBody struct { - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Node identifier. - NodeID string `json:"node_id,omitempty"` - - // AWS Access Key. - AWSAccessKey string `json:"aws_access_key,omitempty"` - - // AWS Secret Key. - AWSSecretKey string `json:"aws_secret_key,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Skip connection check. - SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` - - // Disable basic metrics. - DisableBasicMetrics bool `json:"disable_basic_metrics,omitempty"` - - // Disable enhanced metrics. - DisableEnhancedMetrics bool `json:"disable_enhanced_metrics,omitempty"` - - // Enables push metrics mode for exporter. - PushMetrics bool `json:"push_metrics,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 add RDS exporter body -func (o *AddRDSExporterBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var addRdsExporterBodyTypeLogLevelPropEnum []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 { - addRdsExporterBodyTypeLogLevelPropEnum = append(addRdsExporterBodyTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddRDSExporterBodyLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddRDSExporterBodyLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddRDSExporterBodyLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddRDSExporterBodyLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddRDSExporterBodyLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddRDSExporterBodyLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddRDSExporterBodyLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddRDSExporterBodyLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddRDSExporterBodyLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddRDSExporterBodyLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddRDSExporterBodyLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddRDSExporterBodyLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddRDSExporterBody) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addRdsExporterBodyTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddRDSExporterBody) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("body"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add RDS exporter body based on context it is used -func (o *AddRDSExporterBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddRDSExporterBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddRDSExporterBody) UnmarshalBinary(b []byte) error { - var res AddRDSExporterBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddRDSExporterDefaultBody add RDS exporter default body -swagger:model AddRDSExporterDefaultBody -*/ -type AddRDSExporterDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*AddRDSExporterDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this add RDS exporter default body -func (o *AddRDSExporterDefaultBody) 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 *AddRDSExporterDefaultBody) 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("AddRDSExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddRDSExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this add RDS exporter default body based on the context it is used -func (o *AddRDSExporterDefaultBody) 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 *AddRDSExporterDefaultBody) 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("AddRDSExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddRDSExporter default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddRDSExporterDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddRDSExporterDefaultBody) UnmarshalBinary(b []byte) error { - var res AddRDSExporterDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddRDSExporterDefaultBodyDetailsItems0 add RDS exporter default body details items0 -swagger:model AddRDSExporterDefaultBodyDetailsItems0 -*/ -type AddRDSExporterDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this add RDS exporter default body details items0 -func (o *AddRDSExporterDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this add RDS exporter default body details items0 based on context it is used -func (o *AddRDSExporterDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddRDSExporterDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddRDSExporterDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res AddRDSExporterDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddRDSExporterOKBody add RDS exporter OK body -swagger:model AddRDSExporterOKBody -*/ -type AddRDSExporterOKBody struct { - // rds exporter - RDSExporter *AddRDSExporterOKBodyRDSExporter `json:"rds_exporter,omitempty"` -} - -// Validate validates this add RDS exporter OK body -func (o *AddRDSExporterOKBody) 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 *AddRDSExporterOKBody) 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("addRdsExporterOk" + "." + "rds_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addRdsExporterOk" + "." + "rds_exporter") - } - return err - } - } - - return nil -} - -// ContextValidate validate this add RDS exporter OK body based on the context it is used -func (o *AddRDSExporterOKBody) 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 *AddRDSExporterOKBody) 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("addRdsExporterOk" + "." + "rds_exporter") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addRdsExporterOk" + "." + "rds_exporter") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddRDSExporterOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddRDSExporterOKBody) UnmarshalBinary(b []byte) error { - var res AddRDSExporterOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddRDSExporterOKBodyRDSExporter RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node metrics. -swagger:model AddRDSExporterOKBodyRDSExporter -*/ -type AddRDSExporterOKBodyRDSExporter 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. - // - // Status fields below. - 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). - // - // Metric collections flags below. - 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 add RDS exporter OK body RDS exporter -func (o *AddRDSExporterOKBodyRDSExporter) 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 addRdsExporterOkBodyRdsExporterTypeStatusPropEnum []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 { - addRdsExporterOkBodyRdsExporterTypeStatusPropEnum = append(addRdsExporterOkBodyRdsExporterTypeStatusPropEnum, v) - } -} - -const ( - - // AddRDSExporterOKBodyRDSExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - AddRDSExporterOKBodyRDSExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // AddRDSExporterOKBodyRDSExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - AddRDSExporterOKBodyRDSExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // AddRDSExporterOKBodyRDSExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - AddRDSExporterOKBodyRDSExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // AddRDSExporterOKBodyRDSExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - AddRDSExporterOKBodyRDSExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // AddRDSExporterOKBodyRDSExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - AddRDSExporterOKBodyRDSExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // AddRDSExporterOKBodyRDSExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - AddRDSExporterOKBodyRDSExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // AddRDSExporterOKBodyRDSExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - AddRDSExporterOKBodyRDSExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *AddRDSExporterOKBodyRDSExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addRdsExporterOkBodyRdsExporterTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddRDSExporterOKBodyRDSExporter) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("addRdsExporterOk"+"."+"rds_exporter"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var addRdsExporterOkBodyRdsExporterTypeLogLevelPropEnum []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 { - addRdsExporterOkBodyRdsExporterTypeLogLevelPropEnum = append(addRdsExporterOkBodyRdsExporterTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddRDSExporterOKBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddRDSExporterOKBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddRDSExporterOKBodyRDSExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddRDSExporterOKBodyRDSExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddRDSExporterOKBodyRDSExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddRDSExporterOKBodyRDSExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddRDSExporterOKBodyRDSExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddRDSExporterOKBodyRDSExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddRDSExporterOKBodyRDSExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddRDSExporterOKBodyRDSExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddRDSExporterOKBodyRDSExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddRDSExporterOKBodyRDSExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddRDSExporterOKBodyRDSExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addRdsExporterOkBodyRdsExporterTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddRDSExporterOKBodyRDSExporter) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("addRdsExporterOk"+"."+"rds_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add RDS exporter OK body RDS exporter based on context it is used -func (o *AddRDSExporterOKBodyRDSExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddRDSExporterOKBodyRDSExporter) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddRDSExporterOKBodyRDSExporter) UnmarshalBinary(b []byte) error { - var res AddRDSExporterOKBodyRDSExporter - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} 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 5b10d0cb95..cdc8221c8b 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 @@ -28,22 +28,10 @@ type ClientOption func(*runtime.ClientOperation) // ClientService is the interface for Client methods type ClientService interface { - AddAzureDatabaseExporter(params *AddAzureDatabaseExporterParams, opts ...ClientOption) (*AddAzureDatabaseExporterOK, error) - - AddExternalExporter(params *AddExternalExporterParams, opts ...ClientOption) (*AddExternalExporterOK, error) - - AddMongoDBExporter(params *AddMongoDBExporterParams, opts ...ClientOption) (*AddMongoDBExporterOK, error) - - AddMySQLdExporter(params *AddMySQLdExporterParams, opts ...ClientOption) (*AddMySQLdExporterOK, error) - - AddNodeExporter(params *AddNodeExporterParams, opts ...ClientOption) (*AddNodeExporterOK, error) + AddExporter(params *AddExporterParams, opts ...ClientOption) (*AddExporterOK, error) AddPMMAgent(params *AddPMMAgentParams, opts ...ClientOption) (*AddPMMAgentOK, error) - AddPostgresExporter(params *AddPostgresExporterParams, opts ...ClientOption) (*AddPostgresExporterOK, error) - - AddProxySQLExporter(params *AddProxySQLExporterParams, opts ...ClientOption) (*AddProxySQLExporterOK, error) - AddQANMongoDBProfilerAgent(params *AddQANMongoDBProfilerAgentParams, opts ...ClientOption) (*AddQANMongoDBProfilerAgentOK, error) AddQANMySQLPerfSchemaAgent(params *AddQANMySQLPerfSchemaAgentParams, opts ...ClientOption) (*AddQANMySQLPerfSchemaAgentOK, error) @@ -54,8 +42,6 @@ type ClientService interface { AddQANPostgreSQLPgStatementsAgent(params *AddQANPostgreSQLPgStatementsAgentParams, opts ...ClientOption) (*AddQANPostgreSQLPgStatementsAgentOK, error) - AddRDSExporter(params *AddRDSExporterParams, opts ...ClientOption) (*AddRDSExporterOK, error) - ChangeAzureDatabaseExporter(params *ChangeAzureDatabaseExporterParams, opts ...ClientOption) (*ChangeAzureDatabaseExporterOK, error) ChangeExternalExporter(params *ChangeExternalExporterParams, opts ...ClientOption) (*ChangeExternalExporterOK, error) @@ -94,24 +80,24 @@ type ClientService interface { } /* -AddAzureDatabaseExporter adds azure database exporter +AddExporter adds an exporter -Adds azure_database_exporter Agent. +Adds an Exporter Agent. */ -func (a *Client) AddAzureDatabaseExporter(params *AddAzureDatabaseExporterParams, opts ...ClientOption) (*AddAzureDatabaseExporterOK, error) { +func (a *Client) AddExporter(params *AddExporterParams, opts ...ClientOption) (*AddExporterOK, error) { // TODO: Validate the params before sending if params == nil { - params = NewAddAzureDatabaseExporterParams() + params = NewAddExporterParams() } op := &runtime.ClientOperation{ - ID: "AddAzureDatabaseExporter", + ID: "AddExporter", Method: "POST", - PathPattern: "/v1/inventory/Agents/AddAzureDatabaseExporter", + PathPattern: "/v1/inventory/Agents/AddExporter", ProducesMediaTypes: []string{"application/json"}, ConsumesMediaTypes: []string{"application/json"}, Schemes: []string{"http", "https"}, Params: params, - Reader: &AddAzureDatabaseExporterReader{formats: a.formats}, + Reader: &AddExporterReader{formats: a.formats}, Context: params.Context, Client: params.HTTPClient, } @@ -123,168 +109,12 @@ func (a *Client) AddAzureDatabaseExporter(params *AddAzureDatabaseExporterParams if err != nil { return nil, err } - success, ok := result.(*AddAzureDatabaseExporterOK) + success, ok := result.(*AddExporterOK) if ok { return success, nil } // unexpected success response - unexpectedSuccess := result.(*AddAzureDatabaseExporterDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -AddExternalExporter adds external exporter - -Adds external_exporter Agent. -*/ -func (a *Client) AddExternalExporter(params *AddExternalExporterParams, opts ...ClientOption) (*AddExternalExporterOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewAddExternalExporterParams() - } - op := &runtime.ClientOperation{ - ID: "AddExternalExporter", - Method: "POST", - PathPattern: "/v1/inventory/Agents/AddExternalExporter", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &AddExternalExporterReader{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.(*AddExternalExporterOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*AddExternalExporterDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -AddMongoDBExporter adds mongo DB exporter - -Adds mongodb_exporter Agent. -*/ -func (a *Client) AddMongoDBExporter(params *AddMongoDBExporterParams, opts ...ClientOption) (*AddMongoDBExporterOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewAddMongoDBExporterParams() - } - op := &runtime.ClientOperation{ - ID: "AddMongoDBExporter", - Method: "POST", - PathPattern: "/v1/inventory/Agents/AddMongoDBExporter", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &AddMongoDBExporterReader{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.(*AddMongoDBExporterOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*AddMongoDBExporterDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -AddMySQLdExporter adds mysqld exporter - -Adds mysqld_exporter Agent. -*/ -func (a *Client) AddMySQLdExporter(params *AddMySQLdExporterParams, opts ...ClientOption) (*AddMySQLdExporterOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewAddMySQLdExporterParams() - } - op := &runtime.ClientOperation{ - ID: "AddMySQLdExporter", - Method: "POST", - PathPattern: "/v1/inventory/Agents/AddMySQLdExporter", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &AddMySQLdExporterReader{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.(*AddMySQLdExporterOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*AddMySQLdExporterDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -AddNodeExporter adds node exporter - -Adds node_exporter Agent. -*/ -func (a *Client) AddNodeExporter(params *AddNodeExporterParams, opts ...ClientOption) (*AddNodeExporterOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewAddNodeExporterParams() - } - op := &runtime.ClientOperation{ - ID: "AddNodeExporter", - Method: "POST", - PathPattern: "/v1/inventory/Agents/AddNodeExporter", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &AddNodeExporterReader{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.(*AddNodeExporterOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*AddNodeExporterDefault) + unexpectedSuccess := result.(*AddExporterDefault) return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) } @@ -327,84 +157,6 @@ func (a *Client) AddPMMAgent(params *AddPMMAgentParams, opts ...ClientOption) (* return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) } -/* -AddPostgresExporter adds postgres exporter - -Adds postgres_exporter Agent. -*/ -func (a *Client) AddPostgresExporter(params *AddPostgresExporterParams, opts ...ClientOption) (*AddPostgresExporterOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewAddPostgresExporterParams() - } - op := &runtime.ClientOperation{ - ID: "AddPostgresExporter", - Method: "POST", - PathPattern: "/v1/inventory/Agents/AddPostgresExporter", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &AddPostgresExporterReader{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.(*AddPostgresExporterOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*AddPostgresExporterDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -AddProxySQLExporter adds proxy SQL exporter - -Adds proxysql_exporter Agent. -*/ -func (a *Client) AddProxySQLExporter(params *AddProxySQLExporterParams, opts ...ClientOption) (*AddProxySQLExporterOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewAddProxySQLExporterParams() - } - op := &runtime.ClientOperation{ - ID: "AddProxySQLExporter", - Method: "POST", - PathPattern: "/v1/inventory/Agents/AddProxySQLExporter", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &AddProxySQLExporterReader{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.(*AddProxySQLExporterOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*AddProxySQLExporterDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - /* AddQANMongoDBProfilerAgent adds QAN mongo DB profiler agent @@ -600,45 +352,6 @@ func (a *Client) AddQANPostgreSQLPgStatementsAgent(params *AddQANPostgreSQLPgSta return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) } -/* -AddRDSExporter adds RDS exporter - -Adds rds_exporter Agent. -*/ -func (a *Client) AddRDSExporter(params *AddRDSExporterParams, opts ...ClientOption) (*AddRDSExporterOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewAddRDSExporterParams() - } - op := &runtime.ClientOperation{ - ID: "AddRDSExporter", - Method: "POST", - PathPattern: "/v1/inventory/Agents/AddRDSExporter", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &AddRDSExporterReader{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.(*AddRDSExporterOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*AddRDSExporterDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - /* ChangeAzureDatabaseExporter changes azure database exporter @@ -1264,9 +977,9 @@ func (a *Client) ListAgents(params *ListAgentsParams, opts ...ClientOption) (*Li } /* -RemoveAgent removes agent +RemoveAgent removes an agent -Removes Agent. +Removes an Agent. */ func (a *Client) RemoveAgent(params *RemoveAgentParams, opts ...ClientOption) (*RemoveAgentOK, error) { // TODO: Validate the params before sending 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 index 578c3fbfe3..9ed66da0c1 100644 --- 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 @@ -469,9 +469,6 @@ type ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent struct { TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` // Limit query length in QAN (default: server-defined; -1: no limit). - // - // True if query examples are disabled. - // bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650 MaxQueryLength int32 `json:"max_query_length,omitempty"` // Custom user-assigned labels. 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 984ef7fd9d..a544c5f1dd 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 @@ -2465,9 +2465,6 @@ type GetAgentOKBodyQANMongodbProfilerAgent struct { TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` // Limit query length in QAN (default: server-defined; -1: no limit). - // - // True if query examples are disabled. - // bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650 MaxQueryLength int32 `json:"max_query_length,omitempty"` // Custom user-assigned labels. 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 871c129e66..a450ad266a 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 @@ -138,7 +138,7 @@ type ListAgentsBody struct { ServiceID string `json:"service_id,omitempty"` // AgentType describes supported Agent types. - // Enum: [AGENT_TYPE_UNSPECIFIED AGENT_TYPE_PMM_AGENT AGENT_TYPE_VM_AGENT AGENT_TYPE_NODE_EXPORTER AGENT_TYPE_MYSQLD_EXPORTER AGENT_TYPE_MONGODB_EXPORTER AGENT_TYPE_POSTGRES_EXPORTER AGENT_TYPE_PROXYSQL_EXPORTER AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT AGENT_TYPE_RDS_EXPORTER AGENT_TYPE_EXTERNAL_EXPORTER AGENT_TYPE_AZURE_DATABASE_EXPORTER] + // Enum: [AGENT_TYPE_UNSPECIFIED AGENT_TYPE_PMM_AGENT AGENT_TYPE_VM_AGENT AGENT_TYPE_NODE_EXPORTER AGENT_TYPE_MYSQLD_EXPORTER AGENT_TYPE_MONGODB_EXPORTER AGENT_TYPE_POSTGRES_EXPORTER AGENT_TYPE_PROXYSQL_EXPORTER AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT AGENT_TYPE_EXTERNAL_EXPORTER AGENT_TYPE_RDS_EXPORTER AGENT_TYPE_AZURE_DATABASE_EXPORTER] AgentType *string `json:"agent_type,omitempty"` } @@ -160,7 +160,7 @@ var listAgentsBodyTypeAgentTypePropEnum []interface{} func init() { var res []string - if err := json.Unmarshal([]byte(`["AGENT_TYPE_UNSPECIFIED","AGENT_TYPE_PMM_AGENT","AGENT_TYPE_VM_AGENT","AGENT_TYPE_NODE_EXPORTER","AGENT_TYPE_MYSQLD_EXPORTER","AGENT_TYPE_MONGODB_EXPORTER","AGENT_TYPE_POSTGRES_EXPORTER","AGENT_TYPE_PROXYSQL_EXPORTER","AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT","AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT","AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT","AGENT_TYPE_RDS_EXPORTER","AGENT_TYPE_EXTERNAL_EXPORTER","AGENT_TYPE_AZURE_DATABASE_EXPORTER"]`), &res); err != nil { + if err := json.Unmarshal([]byte(`["AGENT_TYPE_UNSPECIFIED","AGENT_TYPE_PMM_AGENT","AGENT_TYPE_VM_AGENT","AGENT_TYPE_NODE_EXPORTER","AGENT_TYPE_MYSQLD_EXPORTER","AGENT_TYPE_MONGODB_EXPORTER","AGENT_TYPE_POSTGRES_EXPORTER","AGENT_TYPE_PROXYSQL_EXPORTER","AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT","AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT","AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT","AGENT_TYPE_EXTERNAL_EXPORTER","AGENT_TYPE_RDS_EXPORTER","AGENT_TYPE_AZURE_DATABASE_EXPORTER"]`), &res); err != nil { panic(err) } for _, v := range res { @@ -209,12 +209,12 @@ const ( // ListAgentsBodyAgentTypeAGENTTYPEQANPOSTGRESQLPGSTATMONITORAGENT captures enum value "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT" ListAgentsBodyAgentTypeAGENTTYPEQANPOSTGRESQLPGSTATMONITORAGENT string = "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT" - // ListAgentsBodyAgentTypeAGENTTYPERDSEXPORTER captures enum value "AGENT_TYPE_RDS_EXPORTER" - ListAgentsBodyAgentTypeAGENTTYPERDSEXPORTER string = "AGENT_TYPE_RDS_EXPORTER" - // ListAgentsBodyAgentTypeAGENTTYPEEXTERNALEXPORTER captures enum value "AGENT_TYPE_EXTERNAL_EXPORTER" ListAgentsBodyAgentTypeAGENTTYPEEXTERNALEXPORTER string = "AGENT_TYPE_EXTERNAL_EXPORTER" + // ListAgentsBodyAgentTypeAGENTTYPERDSEXPORTER captures enum value "AGENT_TYPE_RDS_EXPORTER" + ListAgentsBodyAgentTypeAGENTTYPERDSEXPORTER string = "AGENT_TYPE_RDS_EXPORTER" + // ListAgentsBodyAgentTypeAGENTTYPEAZUREDATABASEEXPORTER captures enum value "AGENT_TYPE_AZURE_DATABASE_EXPORTER" ListAgentsBodyAgentTypeAGENTTYPEAZUREDATABASEEXPORTER string = "AGENT_TYPE_AZURE_DATABASE_EXPORTER" ) @@ -2706,9 +2706,6 @@ type ListAgentsOKBodyQANMongodbProfilerAgentItems0 struct { TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` // Limit query length in QAN (default: server-defined; -1: no limit). - // - // True if query examples are disabled. - // bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650 MaxQueryLength int32 `json:"max_query_length,omitempty"` // Custom user-assigned labels. diff --git a/api/inventory/v1/json/v1.json b/api/inventory/v1/json/v1.json index 5ff8ae94cf..7842aebfb8 100644 --- a/api/inventory/v1/json/v1.json +++ b/api/inventory/v1/json/v1.json @@ -15,141 +15,61 @@ "version": "v1" }, "paths": { - "/v1/inventory/Agents/AddAzureDatabaseExporter": { + "/v1/inventory/Agents/AddExporter": { "post": { - "description": "Adds azure_database_exporter Agent.", + "description": "Adds an Exporter Agent.", "tags": [ "AgentsService" ], - "summary": "Add Azure Database Exporter", - "operationId": "AddAzureDatabaseExporter", + "summary": "Add an Exporter", + "operationId": "AddExporter", "parameters": [ { "name": "body", "in": "body", "required": true, - "schema": { - "type": "object", - "properties": { - "azure_client_id": { - "type": "string", - "title": "Azure client ID", - "x-order": 2 - }, - "azure_client_secret": { - "type": "string", - "title": "Azure client secret", - "x-order": 3 - }, - "azure_database_resource_type": { - "type": "string", - "title": "Azure resource type (mysql, maria, postgres)", - "x-order": 7 - }, - "azure_resource_group": { - "description": "Azure resource group.", - "type": "string", - "x-order": 6 - }, - "azure_subscription_id": { - "type": "string", - "title": "Azure subscription ID", - "x-order": 5 - }, - "azure_tenant_id": { - "type": "string", - "title": "Azure tanant ID", - "x-order": 4 - }, - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 8 - }, - "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 - }, - "node_id": { - "description": "Node identifier.", - "type": "string", - "x-order": 1 - }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "push_metrics": { - "description": "Enables push metrics mode for exporter.", - "type": "boolean", - "x-order": 10 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 9 - } - } - } - } - ], - "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.", "type": "object", "properties": { - "agent_id": { - "description": "Unique randomly generated instance identifier.", + "azure_client_id": { "type": "string", - "x-order": 0 + "title": "Azure client ID", + "x-order": 2 + }, + "azure_client_secret": { + "type": "string", + "title": "Azure client secret", + "x-order": 3 }, "azure_database_resource_type": { "type": "string", - "title": "Azure database resource type (mysql, maria, postgres)", + "title": "Azure resource type (mysql, maria, postgres)", + "x-order": 7 + }, + "azure_resource_group": { + "description": "Azure resource group.", + "type": "string", + "x-order": 6 + }, + "azure_subscription_id": { + "type": "string", + "title": "Azure subscription ID", "x-order": 5 }, - "azure_database_subscription_id": { - "description": "Azure database subscription ID.", + "azure_tenant_id": { "type": "string", + "title": "Azure tanant ID", "x-order": 4 }, "custom_labels": { - "description": "Custom user-assigned labels.\n\nStatus fields below.", + "description": "Custom user-assigned labels.", "type": "object", "additionalProperties": { "type": "string" }, - "x-order": 6 - }, - "disabled": { - "description": "Desired Agent status: enabled (false) or disabled (true).", - "type": "boolean", - "x-order": 2 - }, - "listen_port": { - "description": "Listen port for scraping metrics (the same for several configurations).", - "type": "integer", - "format": "int64", "x-order": 8 }, "log_level": { @@ -170,162 +90,29 @@ "node_id": { "description": "Node identifier.", "type": "string", - "x-order": 3 + "x-order": 1 }, "pmm_agent_id": { "description": "The pmm-agent identifier which runs this instance.", "type": "string", - "x-order": 1 + "x-order": 0 }, - "process_exec_path": { - "description": "Path to exec process.", - "type": "string", + "push_metrics": { + "description": "Enables push metrics mode for exporter.", + "type": "boolean", "x-order": 10 }, - "push_metrics_enabled": { - "description": "True if the exporter operates in push metrics mode.", + "skip_connection_check": { + "description": "Skip connection check.", "type": "boolean", "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.", - "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 } }, - "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/AddExternalExporter": { - "post": { - "description": "Adds external_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add External Exporter", - "operationId": "AddExternalExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "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": 6 - }, - "metrics_path": { - "description": "Path under which metrics are exposed, used to generate URI(default: /metrics).", - "type": "string", - "x-order": 5 - }, - "password": { - "description": "HTTP basic auth password for collecting metrics.", - "type": "string", - "x-order": 3 - }, - "push_metrics": { - "description": "Enables push metrics mode for exporter.", - "type": "boolean", - "x-order": 8 - }, - "runs_on_node_id": { - "description": "The node identifier where this instance is run.", - "type": "string", - "x-order": 0 - }, - "scheme": { - "description": "Scheme to generate URI to exporter metrics endpoints(default: http).", - "type": "string", - "x-order": 4 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 1 - }, - "username": { - "description": "HTTP basic auth username for collecting metrics.", - "type": "string", - "x-order": 2 - } - } - } - } - ], - "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 - }, "custom_labels": { "description": "Custom user-assigned labels.", "type": "object", @@ -334,252 +121,73 @@ }, "x-order": 7 }, - "disabled": { - "description": "If disabled, metrics from this exporter will not be collected.", - "type": "boolean", - "x-order": 2 - }, "listen_port": { "description": "Listen port for scraping metrics.", "type": "integer", "format": "int64", - "x-order": 8 + "x-order": 6 }, "metrics_path": { - "description": "Path under which metrics are exposed, used to generate URI.", + "description": "Path under which metrics are exposed, used to generate URI(default: /metrics).", "type": "string", - "x-order": 6 + "x-order": 5 }, - "process_exec_path": { - "description": "Path to exec process.", + "password": { + "description": "HTTP basic auth password for collecting metrics.", "type": "string", - "x-order": 10 + "x-order": 3 }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", + "push_metrics": { + "description": "Enables push metrics mode for exporter.", "type": "boolean", - "x-order": 9 + "x-order": 8 }, "runs_on_node_id": { - "description": "Node identifier where this instance runs.", + "description": "The node identifier where this instance is run.", "type": "string", - "x-order": 1 + "x-order": 0 }, "scheme": { - "description": "Scheme to generate URI to exporter metrics endpoints.", + "description": "Scheme to generate URI to exporter metrics endpoints(default: http).", "type": "string", - "x-order": 5 + "x-order": 4 }, "service_id": { "description": "Service identifier.", "type": "string", - "x-order": 3 + "x-order": 1 }, "username": { "description": "HTTP basic auth username for collecting metrics.", "type": "string", - "x-order": 4 + "x-order": 2 } }, - "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/AddMongoDBExporter": { - "post": { - "description": "Adds mongodb_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add MongoDB Exporter", - "operationId": "AddMongoDBExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_password": { - "description": "Custom password for exporter endpoint /metrics.", - "type": "string", - "x-order": 15 - }, - "authentication_database": { - "description": "Authentication database.", - "type": "string", - "x-order": 14 - }, - "authentication_mechanism": { - "description": "Authentication mechanism.\nSee https://docs.mongodb.com/manual/reference/connection-string/#mongodb-urioption-urioption.authMechanism\nfor details.", - "type": "string", - "x-order": 13 - }, - "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": 17 - }, - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 9 - }, - "disable_collectors": { - "description": "List of collector names to disable in this exporter.", - "type": "array", - "items": { - "type": "string" - }, - "x-order": 12 - }, - "expose_exporter": { - "type": "boolean", - "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 19 - }, - "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": 18 - }, - "password": { - "description": "MongoDB password for scraping metrics.", - "type": "string", - "x-order": 3 - }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "push_metrics": { - "description": "Enables push metrics mode for exporter.", - "type": "boolean", - "x-order": 11 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 1 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 10 - }, - "stats_collections": { - "type": "array", - "title": "List of colletions to get stats from. Can use *", - "items": { - "type": "string" - }, - "x-order": 16 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 4 - }, - "tls_ca": { - "description": "Certificate Authority certificate chain.", - "type": "string", - "x-order": 8 - }, - "tls_certificate_key": { - "description": "Client certificate and key.", - "type": "string", - "x-order": 6 - }, - "tls_certificate_key_file_password": { - "description": "Password for decrypting tls_certificate_key.", - "type": "string", - "x-order": 7 - }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", "x-order": 5 }, - "username": { - "description": "MongoDB username for scraping metrics.", - "type": "string", - "x-order": 2 - } - } - } - } - ], - "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", "properties": { - "agent_id": { - "description": "Unique randomly generated instance identifier.", + "agent_password": { + "description": "Custom password for exporter endpoint /metrics.", "type": "string", - "x-order": 0 + "x-order": 15 + }, + "authentication_database": { + "description": "Authentication database.", + "type": "string", + "x-order": 14 + }, + "authentication_mechanism": { + "description": "Authentication mechanism.\nSee https://docs.mongodb.com/manual/reference/connection-string/#mongodb-urioption-urioption.authMechanism\nfor details.", + "type": "string", + "x-order": 13 }, "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 + "x-order": 17 }, "custom_labels": { "description": "Custom user-assigned labels.", @@ -587,36 +195,20 @@ "additionalProperties": { "type": "string" }, - "x-order": 7 - }, - "disabled": { - "description": "Desired Agent status: enabled (false) or disabled (true).", - "type": "boolean", - "x-order": 2 + "x-order": 9 }, - "disabled_collectors": { - "description": "List of disabled collector names.\n\nStatus fields below.", + "disable_collectors": { + "description": "List of collector names to disable in this exporter.", "type": "array", "items": { "type": "string" }, - "x-order": 9 - }, - "enable_all_collectors": { - "description": "Enable All collectors.", - "type": "boolean", - "x-order": 14 + "x-order": 12 }, "expose_exporter": { "type": "boolean", "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 17 - }, - "listen_port": { - "description": "Listen port for scraping metrics.", - "type": "integer", - "format": "int64", - "x-order": 11 + "x-order": 19 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -631,27 +223,32 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 16 + "x-order": 18 }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", + "password": { + "description": "MongoDB password for scraping metrics.", "type": "string", - "x-order": 1 + "x-order": 3 }, - "process_exec_path": { - "description": "Path to exec process.", + "pmm_agent_id": { + "description": "The pmm-agent identifier which runs this instance.", "type": "string", - "x-order": 15 + "x-order": 0 }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", + "push_metrics": { + "description": "Enables push metrics mode for exporter.", "type": "boolean", - "x-order": 8 + "x-order": 11 }, "service_id": { "description": "Service identifier.", "type": "string", - "x-order": 3 + "x-order": 1 + }, + "skip_connection_check": { + "description": "Skip connection check.", + "type": "boolean", + "x-order": 10 }, "stats_collections": { "type": "array", @@ -659,214 +256,48 @@ "items": { "type": "string" }, - "x-order": 12 - }, - "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": 10 + "x-order": 16 }, "tls": { "description": "Use TLS for database connections.", "type": "boolean", - "x-order": 5 + "x-order": 4 + }, + "tls_ca": { + "description": "Certificate Authority certificate chain.", + "type": "string", + "x-order": 8 + }, + "tls_certificate_key": { + "description": "Client certificate and key.", + "type": "string", + "x-order": 6 + }, + "tls_certificate_key_file_password": { + "description": "Password for decrypting tls_certificate_key.", + "type": "string", + "x-order": 7 }, "tls_skip_verify": { "description": "Skip TLS certificate and hostname validation.", "type": "boolean", - "x-order": 6 + "x-order": 5 }, "username": { "description": "MongoDB username for scraping metrics.", "type": "string", - "x-order": 4 + "x-order": 2 } }, - "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/AddMySQLdExporter": { - "post": { - "description": "Adds mysqld_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add mysqld Exporter", - "operationId": "AddMySQLdExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_password": { - "description": "Custom password for exporter endpoint /metrics.", - "type": "string", - "x-order": 14 - }, - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 10 - }, - "disable_collectors": { - "description": "List of collector names to disable in this exporter.", - "type": "array", - "items": { - "type": "string" - }, - "x-order": 13 - }, - "expose_exporter": { - "type": "boolean", - "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 16 - }, - "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": 15 - }, - "password": { - "description": "MySQL password for scraping metrics.", - "type": "string", - "x-order": 3 - }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "push_metrics": { - "description": "Enables push metrics mode for exporter.", - "type": "boolean", - "x-order": 12 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 1 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 11 - }, - "tablestats_group_table_limit": { - "description": "Tablestats group collectors will be 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.", - "type": "integer", - "format": "int32", - "x-order": 9 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 4 - }, - "tls_ca": { - "description": "Certificate Authority certificate chain.", - "type": "string", - "x-order": 6 - }, - "tls_cert": { - "description": "Client certificate.", - "type": "string", - "x-order": 7 - }, - "tls_key": { - "description": "Password for decrypting tls_cert.", - "type": "string", - "x-order": 8 - }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", - "x-order": 5 - }, - "username": { - "description": "MySQL username for scraping metrics.", - "type": "string", - "x-order": 2 - } - } - } - } - ], - "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.", + "agent_password": { + "description": "Custom password for exporter endpoint /metrics.", "type": "string", - "x-order": 0 + "x-order": 14 }, "custom_labels": { "description": "Custom user-assigned labels.", @@ -874,15 +305,10 @@ "additionalProperties": { "type": "string" }, - "x-order": 11 - }, - "disabled": { - "description": "Desired Agent status: enabled (false) or disabled (true).", - "type": "boolean", - "x-order": 2 + "x-order": 10 }, - "disabled_collectors": { - "description": "List of disabled collector names.\n\nStatus fields below.", + "disable_collectors": { + "description": "List of collector names to disable in this exporter.", "type": "array", "items": { "type": "string" @@ -892,13 +318,7 @@ "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 + "x-order": 16 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -913,210 +333,137 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 18 + "x-order": 15 }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", + "password": { + "description": "MySQL password for scraping metrics.", "type": "string", - "x-order": 1 + "x-order": 3 }, - "process_exec_path": { - "description": "Path to exec process.", + "pmm_agent_id": { + "description": "The pmm-agent identifier which runs this instance.", "type": "string", - "x-order": 17 + "x-order": 0 }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", + "push_metrics": { + "description": "Enables push metrics mode for exporter.", "type": "boolean", "x-order": 12 }, "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": 14 + "x-order": 1 }, - "tablestats_group_disabled": { - "description": "True if tablestats group collectors are currently disabled.", + "skip_connection_check": { + "description": "Skip connection check.", "type": "boolean", - "x-order": 16 + "x-order": 11 }, "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.", + "description": "Tablestats group collectors will be 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.", "type": "integer", "format": "int32", - "x-order": 10 + "x-order": 9 }, "tls": { "description": "Use TLS for database connections.", "type": "boolean", - "x-order": 5 + "x-order": 4 }, "tls_ca": { "description": "Certificate Authority certificate chain.", "type": "string", - "x-order": 7 + "x-order": 6 }, "tls_cert": { "description": "Client certificate.", "type": "string", - "x-order": 8 + "x-order": 7 }, "tls_key": { "description": "Password for decrypting tls_cert.", "type": "string", - "x-order": 9 + "x-order": 8 }, "tls_skip_verify": { "description": "Skip TLS certificate and hostname validation.", "type": "boolean", - "x-order": 6 + "x-order": 5 }, "username": { "description": "MySQL username for scraping metrics.", "type": "string", - "x-order": 4 + "x-order": 2 } }, - "x-order": 0 - }, - "table_count": { - "description": "Actual table count at the moment of adding.", - "type": "integer", - "format": "int32", "x-order": 1 - } - } - } - }, - "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 - } + "node_exporter": { + "type": "object", + "properties": { + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 1 }, - "additionalProperties": false - }, - "x-order": 2 - }, - "message": { - "type": "string", - "x-order": 1 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/AddNodeExporter": { - "post": { - "description": "Adds node_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add Node Exporter", - "operationId": "AddNodeExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 1 - }, - "disable_collectors": { - "description": "List of collector names to disable in this exporter.", - "type": "array", - "items": { - "type": "string" + "disable_collectors": { + "description": "List of collector names to disable in this exporter.", + "type": "array", + "items": { + "type": "string" + }, + "x-order": 3 + }, + "expose_exporter": { + "type": "boolean", + "title": "Expose the node_exporter process on all public interfaces", + "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": 4 + }, + "pmm_agent_id": { + "description": "The pmm-agent identifier which runs this instance.", + "type": "string", + "x-order": 0 + }, + "push_metrics": { + "description": "Enables push metrics mode for exporter.", + "type": "boolean", + "x-order": 2 + } }, - "x-order": 3 - }, - "expose_exporter": { - "type": "boolean", - "title": "Expose the node_exporter process on all public interfaces", - "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": 4 - }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", "x-order": 0 }, - "push_metrics": { - "description": "Enables push metrics mode for exporter.", - "type": "boolean", - "x-order": 2 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { - "node_exporter": { - "description": "NodeExporter runs on Generic or Container Node and exposes its metrics.", + "postgres_exporter": { "type": "object", "properties": { - "agent_id": { - "description": "Unique randomly generated instance identifier.", + "agent_password": { + "description": "Custom password for exporter endpoint /metrics.", "type": "string", - "x-order": 0 + "x-order": 13 + }, + "auto_discovery_limit": { + "description": "Limit of databases for auto-discovery.", + "type": "integer", + "format": "int32", + "x-order": 15 }, "custom_labels": { "description": "Custom user-assigned labels.", @@ -1124,31 +471,20 @@ "additionalProperties": { "type": "string" }, - "x-order": 3 - }, - "disabled": { - "description": "Desired Agent status: enabled (false) or disabled (true).", - "type": "boolean", - "x-order": 2 + "x-order": 6 }, - "disabled_collectors": { - "description": "List of disabled collector names.\n\nStatus fields below.", + "disable_collectors": { + "description": "List of collector names to disable in this exporter.", "type": "array", "items": { "type": "string" }, - "x-order": 5 + "x-order": 9 }, "expose_exporter": { "type": "boolean", "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 10 - }, - "listen_port": { - "description": "Listen port for scraping metrics.", - "type": "integer", - "format": "int64", - "x-order": 7 + "x-order": 16 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -1163,106 +499,221 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 9 + "x-order": 14 + }, + "password": { + "description": "PostgreSQL password for scraping metrics.", + "type": "string", + "x-order": 3 }, "pmm_agent_id": { "description": "The pmm-agent identifier which runs this instance.", "type": "string", - "x-order": 1 + "x-order": 0 }, - "process_exec_path": { - "description": "Path to exec process.", - "type": "string", + "push_metrics": { + "description": "Enables push metrics mode for exporter.", + "type": "boolean", "x-order": 8 }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", + "service_id": { + "description": "Service identifier.", + "type": "string", + "x-order": 1 + }, + "skip_connection_check": { + "description": "Skip connection check.", + "type": "boolean", + "x-order": 7 + }, + "tls": { + "description": "Use TLS for database connections.", "type": "boolean", "x-order": 4 }, - "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.", + "tls_ca": { + "description": "TLS CA certificate.", "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 - } - }, - "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 - } + "x-order": 10 }, - "additionalProperties": false + "tls_cert": { + "description": "TLS Certifcate.", + "type": "string", + "x-order": 11 + }, + "tls_key": { + "description": "TLS Certificate Key.", + "type": "string", + "x-order": 12 + }, + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation. Uses sslmode=required instead of verify-full.", + "type": "boolean", + "x-order": 5 + }, + "username": { + "description": "PostgreSQL username for scraping metrics.", + "type": "string", + "x-order": 2 + } }, - "x-order": 2 + "x-order": 3 }, - "message": { - "type": "string", - "x-order": 1 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/AddPMMAgent": { - "post": { - "description": "Adds PMM Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add PMM Agent", - "operationId": "AddPMMAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "custom_labels": { - "description": "Custom user-assigned labels.", + "proxysql_exporter": { "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 1 - }, - "runs_on_node_id": { - "description": "Node identifier where this instance runs.", - "type": "string", - "x-order": 0 + "properties": { + "agent_password": { + "description": "Custom password for exporter endpoint /metrics.", + "type": "string", + "x-order": 10 + }, + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 6 + }, + "disable_collectors": { + "description": "List of collector names to disable in this exporter.", + "type": "array", + "items": { + "type": "string" + }, + "x-order": 9 + }, + "expose_exporter": { + "type": "boolean", + "title": "Optionally expose the exporter process on all public interfaces", + "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": 11 + }, + "password": { + "description": "ProxySQL password for scraping metrics.", + "type": "string", + "x-order": 3 + }, + "pmm_agent_id": { + "description": "The pmm-agent identifier which runs this instance.", + "type": "string", + "x-order": 0 + }, + "push_metrics": { + "description": "Enables push metrics mode for exporter.", + "type": "boolean", + "x-order": 8 + }, + "service_id": { + "description": "Service identifier.", + "type": "string", + "x-order": 1 + }, + "skip_connection_check": { + "description": "Skip connection check.", + "type": "boolean", + "x-order": 7 + }, + "tls": { + "description": "Use TLS for database connections.", + "type": "boolean", + "x-order": 4 + }, + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation.", + "type": "boolean", + "x-order": 5 + }, + "username": { + "description": "ProxySQL username for scraping metrics.", + "type": "string", + "x-order": 2 + } + }, + "x-order": 4 + }, + "rds_exporter": { + "type": "object", + "properties": { + "aws_access_key": { + "description": "AWS Access Key.", + "type": "string", + "x-order": 2 + }, + "aws_secret_key": { + "description": "AWS Secret Key.", + "type": "string", + "x-order": 3 + }, + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 4 + }, + "disable_basic_metrics": { + "description": "Disable basic metrics.", + "type": "boolean", + "x-order": 6 + }, + "disable_enhanced_metrics": { + "description": "Disable enhanced metrics.", + "type": "boolean", + "x-order": 7 + }, + "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": 9 + }, + "node_id": { + "description": "Node identifier.", + "type": "string", + "x-order": 1 + }, + "pmm_agent_id": { + "description": "The pmm-agent identifier which runs this instance.", + "type": "string", + "x-order": 0 + }, + "push_metrics": { + "description": "Enables push metrics mode for exporter.", + "type": "boolean", + "x-order": 8 + }, + "skip_connection_check": { + "description": "Skip connection check.", + "type": "boolean", + "x-order": 5 + } + }, + "x-order": 6 } } } @@ -1274,8 +725,8 @@ "schema": { "type": "object", "properties": { - "pmm_agent": { - "description": "PMMAgent runs on Generic or Container Node.", + "azure_database_exporter": { + "description": "AzureDatabaseExporter runs on Generic or Container Node and exposes RemoteAzure Node metrics.", "type": "object", "properties": { "agent_id": { @@ -1283,10 +734,15 @@ "type": "string", "x-order": 0 }, - "connected": { - "description": "True if Agent is running and connected to pmm-managed.", - "type": "boolean", - "x-order": 3 + "azure_database_resource_type": { + "type": "string", + "title": "Azure database resource type (mysql, maria, postgres)", + "x-order": 5 + }, + "azure_database_subscription_id": { + "description": "Azure database subscription ID.", + "type": "string", + "x-order": 4 }, "custom_labels": { "description": "Custom user-assigned labels.\n\nStatus fields below.", @@ -1294,188 +750,716 @@ "additionalProperties": { "type": "string" }, + "x-order": 6 + }, + "disabled": { + "description": "Desired Agent status: enabled (false) or disabled (true).", + "type": "boolean", "x-order": 2 }, + "listen_port": { + "description": "Listen port for scraping metrics (the same for several configurations).", + "type": "integer", + "format": "int64", + "x-order": 8 + }, + "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 + }, + "node_id": { + "description": "Node identifier.", + "type": "string", + "x-order": 3 + }, + "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": 4 + "x-order": 10 }, - "runs_on_node_id": { - "description": "Node identifier where this instance runs.", + "push_metrics_enabled": { + "description": "True if the exporter operates in push metrics mode.", + "type": "boolean", + "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.", "type": "string", - "x-order": 1 + "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 } }, - "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 - } + "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 - }, - "x-order": 2 - }, - "message": { - "type": "string", - "x-order": 1 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/AddPostgresExporter": { - "post": { - "description": "Adds postgres_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add Postgres Exporter", - "operationId": "AddPostgresExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "agent_password": { - "description": "Custom password for exporter endpoint /metrics.", - "type": "string", - "x-order": 13 - }, - "auto_discovery_limit": { - "description": "Limit of databases for auto-discovery.", - "type": "integer", - "format": "int32", - "x-order": 15 - }, - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 7 + }, + "disabled": { + "description": "If disabled, metrics from this exporter will not be collected.", + "type": "boolean", + "x-order": 2 + }, + "listen_port": { + "description": "Listen port for scraping metrics.", + "type": "integer", + "format": "int64", + "x-order": 8 + }, + "metrics_path": { + "description": "Path under which metrics are exposed, used to generate URI.", + "type": "string", + "x-order": 6 + }, + "process_exec_path": { + "description": "Path to exec process.", + "type": "string", + "x-order": 10 + }, + "push_metrics_enabled": { + "description": "True if exporter uses push metrics mode.", + "type": "boolean", + "x-order": 9 + }, + "runs_on_node_id": { + "description": "Node identifier where this instance runs.", + "type": "string", + "x-order": 1 + }, + "scheme": { + "description": "Scheme to generate URI to exporter metrics endpoints.", + "type": "string", + "x-order": 5 + }, + "service_id": { + "description": "Service identifier.", + "type": "string", + "x-order": 3 + }, + "username": { + "description": "HTTP basic auth username for collecting metrics.", + "type": "string", + "x-order": 4 + } }, - "x-order": 6 + "x-order": 5 }, - "disable_collectors": { - "description": "List of collector names to disable in this exporter.", - "type": "array", - "items": { - "type": "string" + "mongodb_exporter": { + "description": "MongoDBExporter runs on Generic or Container Node and exposes MongoDB Service metrics.", + "type": "object", + "properties": { + "agent_id": { + "description": "Unique randomly generated instance identifier.", + "type": "string", + "x-order": 0 + }, + "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 + }, + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 7 + }, + "disabled": { + "description": "Desired Agent status: enabled (false) or disabled (true).", + "type": "boolean", + "x-order": 2 + }, + "disabled_collectors": { + "description": "List of disabled collector names.\n\nStatus fields below.", + "type": "array", + "items": { + "type": "string" + }, + "x-order": 9 + }, + "enable_all_collectors": { + "description": "Enable All collectors.", + "type": "boolean", + "x-order": 14 + }, + "expose_exporter": { + "type": "boolean", + "title": "Optionally expose the exporter process on all public interfaces", + "x-order": 17 + }, + "listen_port": { + "description": "Listen port for scraping metrics.", + "type": "integer", + "format": "int64", + "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": 16 + }, + "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": 15 + }, + "push_metrics_enabled": { + "description": "True if exporter uses push metrics mode.", + "type": "boolean", + "x-order": 8 + }, + "service_id": { + "description": "Service identifier.", + "type": "string", + "x-order": 3 + }, + "stats_collections": { + "type": "array", + "title": "List of colletions to get stats from. Can use *", + "items": { + "type": "string" + }, + "x-order": 12 + }, + "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": 10 + }, + "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 scraping metrics.", + "type": "string", + "x-order": 4 + } }, - "x-order": 9 - }, - "expose_exporter": { - "type": "boolean", - "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 16 - }, - "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": 14 - }, - "password": { - "description": "PostgreSQL password for scraping metrics.", - "type": "string", - "x-order": 3 - }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "push_metrics": { - "description": "Enables push metrics mode for exporter.", - "type": "boolean", - "x-order": 8 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 1 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 7 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 4 + "x-order": 2 }, - "tls_ca": { - "description": "TLS CA certificate.", - "type": "string", - "x-order": 10 + "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.\n\nStatus fields below.", + "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 + }, + "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": 18 + }, + "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": 17 + }, + "push_metrics_enabled": { + "description": "True if exporter uses push metrics mode.", + "type": "boolean", + "x-order": 12 + }, + "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": 14 + }, + "tablestats_group_disabled": { + "description": "True if tablestats group collectors are currently disabled.", + "type": "boolean", + "x-order": 16 + }, + "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.", + "type": "integer", + "format": "int32", + "x-order": 10 + }, + "tls": { + "description": "Use TLS for database connections.", + "type": "boolean", + "x-order": 5 + }, + "tls_ca": { + "description": "Certificate Authority certificate chain.", + "type": "string", + "x-order": 7 + }, + "tls_cert": { + "description": "Client certificate.", + "type": "string", + "x-order": 8 + }, + "tls_key": { + "description": "Password for decrypting tls_cert.", + "type": "string", + "x-order": 9 + }, + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation.", + "type": "boolean", + "x-order": 6 + }, + "username": { + "description": "MySQL username for scraping metrics.", + "type": "string", + "x-order": 4 + } + }, + "x-order": 1 }, - "tls_cert": { - "description": "TLS Certifcate.", - "type": "string", - "x-order": 11 + "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 + }, + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 3 + }, + "disabled": { + "description": "Desired Agent status: enabled (false) or disabled (true).", + "type": "boolean", + "x-order": 2 + }, + "disabled_collectors": { + "description": "List of disabled collector names.\n\nStatus fields below.", + "type": "array", + "items": { + "type": "string" + }, + "x-order": 5 + }, + "expose_exporter": { + "type": "boolean", + "title": "Optionally expose the exporter process on all public interfaces", + "x-order": 10 + }, + "listen_port": { + "description": "Listen port for scraping metrics.", + "type": "integer", + "format": "int64", + "x-order": 7 + }, + "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": 9 + }, + "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": 8 + }, + "push_metrics_enabled": { + "description": "True if exporter uses push metrics mode.", + "type": "boolean", + "x-order": 4 + }, + "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 + } + }, + "x-order": 0 }, - "tls_key": { - "description": "TLS Certificate Key.", - "type": "string", - "x-order": 12 + "postgres_exporter": { + "description": "PostgresExporter runs on Generic or Container Node and exposes PostgreSQL Service metrics.", + "type": "object", + "properties": { + "agent_id": { + "description": "Unique randomly generated instance identifier.", + "type": "string", + "x-order": 0 + }, + "auto_discovery_limit": { + "description": "Limit of databases for auto-discovery.", + "type": "integer", + "format": "int32", + "x-order": 14 + }, + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 7 + }, + "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": 9 + }, + "expose_exporter": { + "type": "boolean", + "title": "Optionally expose the exporter process on all public interfaces", + "x-order": 15 + }, + "listen_port": { + "description": "Listen port for scraping metrics.", + "type": "integer", + "format": "int64", + "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": 13 + }, + "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": 12 + }, + "push_metrics_enabled": { + "description": "True if exporter uses push metrics mode.", + "type": "boolean", + "x-order": 8 + }, + "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": 10 + }, + "tls": { + "description": "Use TLS for database connections.", + "type": "boolean", + "x-order": 5 + }, + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation. Uses sslmode=required instead of verify-full.", + "type": "boolean", + "x-order": 6 + }, + "username": { + "description": "PostgreSQL username for scraping metrics.", + "type": "string", + "x-order": 4 + } + }, + "x-order": 3 }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation. Uses sslmode=required instead of verify-full.", - "type": "boolean", - "x-order": 5 + "proxysql_exporter": { + "description": "ProxySQLExporter runs on Generic or Container Node and exposes ProxySQL 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": 7 + }, + "disabled": { + "description": "Desired Agent status: enabled (false) or disabled (true).", + "type": "boolean", + "x-order": 2 + }, + "disabled_collectors": { + "description": "List of disabled collector names.\n\nStatus fields below.", + "type": "array", + "items": { + "type": "string" + }, + "x-order": 9 + }, + "expose_exporter": { + "type": "boolean", + "title": "Optionally expose the exporter process on all public interfaces", + "x-order": 14 + }, + "listen_port": { + "description": "Listen port for scraping metrics.", + "type": "integer", + "format": "int64", + "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": 13 + }, + "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": 12 + }, + "push_metrics_enabled": { + "description": "True if exporter uses push metrics mode.", + "type": "boolean", + "x-order": 8 + }, + "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": 10 + }, + "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": "ProxySQL username for scraping metrics.", + "type": "string", + "x-order": 4 + } + }, + "x-order": 4 }, - "username": { - "description": "PostgreSQL username for scraping metrics.", - "type": "string", - "x-order": 2 - } - } - } - } - ], - "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.", + "rds_exporter": { + "description": "RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node metrics.", "type": "object", "properties": { "agent_id": { @@ -1487,39 +1471,41 @@ "description": "Limit of databases for auto-discovery.", "type": "integer", "format": "int32", - "x-order": 14 + "x-order": 13 + }, + "aws_access_key": { + "description": "AWS Access Key.", + "type": "string", + "x-order": 4 + }, + "basic_metrics_disabled": { + "description": "Basic metrics are disabled.", + "type": "boolean", + "x-order": 8 }, "custom_labels": { - "description": "Custom user-assigned labels.", + "description": "Custom user-assigned labels.\n\nStatus fields below.", "type": "object", "additionalProperties": { "type": "string" }, - "x-order": 7 + "x-order": 5 }, "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": 9 - }, - "expose_exporter": { + "enhanced_metrics_disabled": { + "description": "Enhanced metrics are disabled.", "type": "boolean", - "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 15 + "x-order": 9 }, "listen_port": { - "description": "Listen port for scraping metrics.", + "description": "Listen port for scraping metrics (the same for several configurations).\n\nMetric collections flags below.", "type": "integer", "format": "int64", - "x-order": 11 + "x-order": 7 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -1534,7 +1520,12 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 13 + "x-order": 12 + }, + "node_id": { + "description": "Node identifier.", + "type": "string", + "x-order": 3 }, "pmm_agent_id": { "description": "The pmm-agent identifier which runs this instance.", @@ -1544,17 +1535,12 @@ "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 12 + "x-order": 11 }, "push_metrics_enabled": { "description": "True if exporter uses push metrics mode.", "type": "boolean", - "x-order": 8 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 3 + "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.", @@ -1569,25 +1555,16 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 10 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 5 - }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation. Uses sslmode=required instead of verify-full.", - "type": "boolean", "x-order": 6 - }, - "username": { - "description": "PostgreSQL username for scraping metrics.", - "type": "string", - "x-order": 4 } }, - "x-order": 0 + "x-order": 6 + }, + "table_count": { + "description": "Actual table count for SQL databases at the moment of adding.", + "type": "integer", + "format": "int32", + "x-order": 8 } } } @@ -1626,14 +1603,14 @@ } } }, - "/v1/inventory/Agents/AddProxySQLExporter": { + "/v1/inventory/Agents/AddPMMAgent": { "post": { - "description": "Adds proxysql_exporter Agent.", + "description": "Adds PMM Agent.", "tags": [ "AgentsService" ], - "summary": "Add ProxySQL Exporter", - "operationId": "AddProxySQLExporter", + "summary": "Add PMM Agent", + "operationId": "AddPMMAgent", "parameters": [ { "name": "body", @@ -1642,86 +1619,18 @@ "schema": { "type": "object", "properties": { - "agent_password": { - "description": "Custom password for exporter endpoint /metrics.", - "type": "string", - "x-order": 10 - }, "custom_labels": { "description": "Custom user-assigned labels.", "type": "object", "additionalProperties": { "type": "string" }, - "x-order": 6 - }, - "disable_collectors": { - "description": "List of collector names to disable in this exporter.", - "type": "array", - "items": { - "type": "string" - }, - "x-order": 9 - }, - "expose_exporter": { - "type": "boolean", - "title": "Optionally expose the exporter process on all public interfaces", - "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": 11 - }, - "password": { - "description": "ProxySQL password for scraping metrics.", - "type": "string", - "x-order": 3 - }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "push_metrics": { - "description": "Enables push metrics mode for exporter.", - "type": "boolean", - "x-order": 8 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", "x-order": 1 }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 7 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 4 - }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", - "x-order": 5 - }, - "username": { - "description": "ProxySQL username for scraping metrics.", + "runs_on_node_id": { + "description": "Node identifier where this instance runs.", "type": "string", - "x-order": 2 + "x-order": 0 } } } @@ -1733,111 +1642,37 @@ "schema": { "type": "object", "properties": { - "proxysql_exporter": { - "description": "ProxySQLExporter runs on Generic or Container Node and exposes ProxySQL 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": 7 - }, - "disabled": { - "description": "Desired Agent status: enabled (false) or disabled (true).", - "type": "boolean", - "x-order": 2 - }, - "disabled_collectors": { - "description": "List of disabled collector names.\n\nStatus fields below.", - "type": "array", - "items": { - "type": "string" - }, - "x-order": 9 - }, - "expose_exporter": { - "type": "boolean", - "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 14 - }, - "listen_port": { - "description": "Listen port for scraping metrics.", - "type": "integer", - "format": "int64", - "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": 13 - }, - "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": 12 - }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", - "type": "boolean", - "x-order": 8 - }, - "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": 10 + "pmm_agent": { + "description": "PMMAgent runs on Generic or Container Node.", + "type": "object", + "properties": { + "agent_id": { + "description": "Unique randomly generated instance identifier.", + "type": "string", + "x-order": 0 }, - "tls": { - "description": "Use TLS for database connections.", + "connected": { + "description": "True if Agent is running and connected to pmm-managed.", "type": "boolean", - "x-order": 5 + "x-order": 3 }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", - "x-order": 6 + "custom_labels": { + "description": "Custom user-assigned labels.\n\nStatus fields below.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 2 }, - "username": { - "description": "ProxySQL username for scraping metrics.", + "process_exec_path": { + "description": "Path to exec process.", "type": "string", "x-order": 4 + }, + "runs_on_node_id": { + "description": "Node identifier where this instance runs.", + "type": "string", + "x-order": 1 } }, "x-order": 0 @@ -2032,7 +1867,7 @@ "x-order": 11 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", "type": "integer", "format": "int32", "x-order": 7 @@ -3166,234 +3001,6 @@ } } }, - "/v1/inventory/Agents/AddRDSExporter": { - "post": { - "description": "Adds rds_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add RDS Exporter", - "operationId": "AddRDSExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "aws_access_key": { - "description": "AWS Access Key.", - "type": "string", - "x-order": 2 - }, - "aws_secret_key": { - "description": "AWS Secret Key.", - "type": "string", - "x-order": 3 - }, - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 4 - }, - "disable_basic_metrics": { - "description": "Disable basic metrics.", - "type": "boolean", - "x-order": 6 - }, - "disable_enhanced_metrics": { - "description": "Disable enhanced metrics.", - "type": "boolean", - "x-order": 7 - }, - "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": 9 - }, - "node_id": { - "description": "Node identifier.", - "type": "string", - "x-order": 1 - }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "push_metrics": { - "description": "Enables push metrics mode for exporter.", - "type": "boolean", - "x-order": 8 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 5 - } - } - } - } - ], - "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", - "properties": { - "agent_id": { - "description": "Unique randomly generated instance identifier.", - "type": "string", - "x-order": 0 - }, - "auto_discovery_limit": { - "description": "Limit of databases for auto-discovery.", - "type": "integer", - "format": "int32", - "x-order": 13 - }, - "aws_access_key": { - "description": "AWS Access Key.", - "type": "string", - "x-order": 4 - }, - "basic_metrics_disabled": { - "description": "Basic metrics are disabled.", - "type": "boolean", - "x-order": 8 - }, - "custom_labels": { - "description": "Custom user-assigned labels.\n\nStatus fields below.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 5 - }, - "disabled": { - "description": "Desired Agent status: enabled (false) or disabled (true).", - "type": "boolean", - "x-order": 2 - }, - "enhanced_metrics_disabled": { - "description": "Enhanced metrics are disabled.", - "type": "boolean", - "x-order": 9 - }, - "listen_port": { - "description": "Listen port for scraping metrics (the same for several configurations).\n\nMetric collections flags below.", - "type": "integer", - "format": "int64", - "x-order": 7 - }, - "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 - }, - "node_id": { - "description": "Node identifier.", - "type": "string", - "x-order": 3 - }, - "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": 11 - }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", - "type": "boolean", - "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.", - "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 - } - }, - "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/ChangeAzureDatabaseExporter": { "post": { "description": "Changes azure_database_exporter Agent.", @@ -4984,7 +4591,7 @@ "x-order": 11 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", "type": "integer", "format": "int32", "x-order": 7 @@ -6332,7 +5939,7 @@ "x-order": 4 } }, - "x-order": 13 + "x-order": 12 }, "mongodb_exporter": { "description": "MongoDBExporter runs on Generic or Container Node and exposes MongoDB Service metrics.", @@ -6983,7 +6590,7 @@ "x-order": 11 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", "type": "integer", "format": "int32", "x-order": 7 @@ -7571,7 +7178,7 @@ "x-order": 6 } }, - "x-order": 12 + "x-order": 13 }, "vmagent": { "description": "VMAgent runs on Generic or Container Node alongside pmm-agent.\nIt scrapes other exporter Agents that are configured with push_metrics_enabled\nand uses Prometheus remote write protocol to push metrics to PMM Server.", @@ -7773,8 +7380,8 @@ "AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT", "AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT", "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT", - "AGENT_TYPE_RDS_EXPORTER", "AGENT_TYPE_EXTERNAL_EXPORTER", + "AGENT_TYPE_RDS_EXPORTER", "AGENT_TYPE_AZURE_DATABASE_EXPORTER" ], "x-order": 3 @@ -8636,7 +8243,7 @@ "x-order": 11 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", "type": "integer", "format": "int32", "x-order": 7 @@ -9327,11 +8934,11 @@ }, "/v1/inventory/Agents/Remove": { "post": { - "description": "Removes Agent.", + "description": "Removes an Agent.", "tags": [ "AgentsService" ], - "summary": "Remove Agent", + "summary": "Remove an Agent", "operationId": "RemoveAgent", "parameters": [ { diff --git a/api/management/v1/json/client/mongo_db_service/add_mongo_db_responses.go b/api/management/v1/json/client/mongo_db_service/add_mongo_db_responses.go index e6dba17385..641972fc58 100644 --- a/api/management/v1/json/client/mongo_db_service/add_mongo_db_responses.go +++ b/api/management/v1/json/client/mongo_db_service/add_mongo_db_responses.go @@ -1000,9 +1000,6 @@ type AddMongoDBOKBodyQANMongodbProfiler struct { TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` // Limit query length in QAN (default: server-defined; -1: no limit). - // - // True if query examples are disabled. - // bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650 MaxQueryLength int32 `json:"max_query_length,omitempty"` // Custom user-assigned labels. diff --git a/api/management/v1/json/v1.json b/api/management/v1/json/v1.json index 20486919ee..2d8de51391 100644 --- a/api/management/v1/json/v1.json +++ b/api/management/v1/json/v1.json @@ -2736,7 +2736,7 @@ "x-order": 11 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", "type": "integer", "format": "int32", "x-order": 7 diff --git a/api/swagger/swagger-dev.json b/api/swagger/swagger-dev.json index bc8bad3bd3..630f031140 100644 --- a/api/swagger/swagger-dev.json +++ b/api/swagger/swagger-dev.json @@ -3811,14 +3811,14 @@ } } }, - "/v1/inventory/Agents/AddAzureDatabaseExporter": { + "/v1/inventory/Agents/AddExporter": { "post": { - "description": "Adds azure_database_exporter Agent.", + "description": "Adds an Exporter Agent.", "tags": [ "AgentsService" ], - "summary": "Add Azure Database Exporter", - "operationId": "AddAzureDatabaseExporter", + "summary": "Add an Exporter", + "operationId": "AddExporter", "parameters": [ { "name": "body", @@ -3827,162 +3827,143 @@ "schema": { "type": "object", "properties": { - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "node_id": { - "description": "Node identifier.", - "type": "string", - "x-order": 1 - }, - "azure_client_id": { - "type": "string", - "title": "Azure client ID", - "x-order": 2 - }, - "azure_client_secret": { - "type": "string", - "title": "Azure client secret", - "x-order": 3 - }, - "azure_tenant_id": { - "type": "string", - "title": "Azure tanant ID", - "x-order": 4 - }, - "azure_subscription_id": { - "type": "string", - "title": "Azure subscription ID", - "x-order": 5 - }, - "azure_resource_group": { - "description": "Azure resource group.", - "type": "string", - "x-order": 6 - }, - "azure_database_resource_type": { - "type": "string", - "title": "Azure resource type (mysql, maria, postgres)", - "x-order": 7 - }, - "custom_labels": { - "description": "Custom user-assigned labels.", + "node_exporter": { "type": "object", - "additionalProperties": { - "type": "string" + "properties": { + "pmm_agent_id": { + "description": "The pmm-agent identifier which runs this instance.", + "type": "string", + "x-order": 0 + }, + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 1 + }, + "push_metrics": { + "description": "Enables push metrics mode for exporter.", + "type": "boolean", + "x-order": 2 + }, + "disable_collectors": { + "description": "List of collector names to disable in this exporter.", + "type": "array", + "items": { + "type": "string" + }, + "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": 4 + }, + "expose_exporter": { + "type": "boolean", + "title": "Expose the node_exporter process on all public interfaces", + "x-order": 5 + } }, - "x-order": 8 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 9 - }, - "push_metrics": { - "description": "Enables push metrics mode for exporter.", - "type": "boolean", - "x-order": 10 + "x-order": 0 }, - "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 - } - } - } - } - ], - "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.", + "mysqld_exporter": { "type": "object", "properties": { - "agent_id": { - "description": "Unique randomly generated instance identifier.", + "pmm_agent_id": { + "description": "The pmm-agent identifier which runs this instance.", "type": "string", "x-order": 0 }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", + "service_id": { + "description": "Service identifier.", "type": "string", "x-order": 1 }, - "disabled": { - "description": "Desired Agent status: enabled (false) or disabled (true).", - "type": "boolean", + "username": { + "description": "MySQL username for scraping metrics.", + "type": "string", "x-order": 2 }, - "node_id": { - "description": "Node identifier.", + "password": { + "description": "MySQL password for scraping metrics.", "type": "string", "x-order": 3 }, - "azure_database_subscription_id": { - "description": "Azure database subscription ID.", - "type": "string", + "tls": { + "description": "Use TLS for database connections.", + "type": "boolean", "x-order": 4 }, - "azure_database_resource_type": { - "type": "string", - "title": "Azure database resource type (mysql, maria, postgres)", + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation.", + "type": "boolean", "x-order": 5 }, - "custom_labels": { - "description": "Custom user-assigned labels.\n\nStatus fields below.", - "type": "object", - "additionalProperties": { - "type": "string" - }, + "tls_ca": { + "description": "Certificate Authority certificate chain.", + "type": "string", "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.", + "tls_cert": { + "description": "Client certificate.", "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", + "tls_key": { + "description": "Password for decrypting tls_cert.", + "type": "string", "x-order": 8 }, - "push_metrics_enabled": { - "description": "True if the exporter operates in push metrics mode.", - "type": "boolean", + "tablestats_group_table_limit": { + "description": "Tablestats group collectors will be 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.", + "type": "integer", + "format": "int32", "x-order": 9 }, - "process_exec_path": { - "description": "Path to exec process.", - "type": "string", + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, "x-order": 10 }, + "skip_connection_check": { + "description": "Skip connection check.", + "type": "boolean", + "x-order": 11 + }, + "push_metrics": { + "description": "Enables push metrics mode for exporter.", + "type": "boolean", + "x-order": 12 + }, + "disable_collectors": { + "description": "List of collector names to disable in this exporter.", + "type": "array", + "items": { + "type": "string" + }, + "x-order": 13 + }, + "agent_password": { + "description": "Custom password for exporter endpoint /metrics.", + "type": "string", + "x-order": 14 + }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", "type": "string", @@ -3996,410 +3977,282 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 11 + "x-order": 15 + }, + "expose_exporter": { + "type": "boolean", + "title": "Optionally expose the exporter process on all public interfaces", + "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 - } + "mongodb_exporter": { + "type": "object", + "properties": { + "pmm_agent_id": { + "description": "The pmm-agent identifier which runs this instance.", + "type": "string", + "x-order": 0 }, - "additionalProperties": false - }, - "x-order": 2 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/AddExternalExporter": { - "post": { - "description": "Adds external_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add External Exporter", - "operationId": "AddExternalExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "runs_on_node_id": { - "description": "The node identifier where this instance is run.", - "type": "string", - "x-order": 0 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 1 - }, - "username": { - "description": "HTTP basic auth username for collecting metrics.", - "type": "string", - "x-order": 2 - }, - "password": { - "description": "HTTP basic auth password for collecting metrics.", - "type": "string", - "x-order": 3 - }, - "scheme": { - "description": "Scheme to generate URI to exporter metrics endpoints(default: http).", - "type": "string", - "x-order": 4 - }, - "metrics_path": { - "description": "Path under which metrics are exposed, used to generate URI(default: /metrics).", - "type": "string", - "x-order": 5 - }, - "listen_port": { - "description": "Listen port for scraping metrics.", - "type": "integer", - "format": "int64", - "x-order": 6 - }, - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" + "service_id": { + "description": "Service identifier.", + "type": "string", + "x-order": 1 + }, + "username": { + "description": "MongoDB username for scraping metrics.", + "type": "string", + "x-order": 2 + }, + "password": { + "description": "MongoDB password for scraping metrics.", + "type": "string", + "x-order": 3 + }, + "tls": { + "description": "Use TLS for database connections.", + "type": "boolean", + "x-order": 4 + }, + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation.", + "type": "boolean", + "x-order": 5 + }, + "tls_certificate_key": { + "description": "Client certificate and key.", + "type": "string", + "x-order": 6 + }, + "tls_certificate_key_file_password": { + "description": "Password for decrypting tls_certificate_key.", + "type": "string", + "x-order": 7 + }, + "tls_ca": { + "description": "Certificate Authority certificate chain.", + "type": "string", + "x-order": 8 + }, + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 9 + }, + "skip_connection_check": { + "description": "Skip connection check.", + "type": "boolean", + "x-order": 10 + }, + "push_metrics": { + "description": "Enables push metrics mode for exporter.", + "type": "boolean", + "x-order": 11 + }, + "disable_collectors": { + "description": "List of collector names to disable in this exporter.", + "type": "array", + "items": { + "type": "string" + }, + "x-order": 12 + }, + "authentication_mechanism": { + "description": "Authentication mechanism.\nSee https://docs.mongodb.com/manual/reference/connection-string/#mongodb-urioption-urioption.authMechanism\nfor details.", + "type": "string", + "x-order": 13 + }, + "authentication_database": { + "description": "Authentication database.", + "type": "string", + "x-order": 14 + }, + "agent_password": { + "description": "Custom password for exporter endpoint /metrics.", + "type": "string", + "x-order": 15 + }, + "stats_collections": { + "type": "array", + "title": "List of colletions to get stats from. Can use *", + "items": { + "type": "string" + }, + "x-order": 16 + }, + "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": 17 + }, + "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": 18 + }, + "expose_exporter": { + "type": "boolean", + "title": "Optionally expose the exporter process on all public interfaces", + "x-order": 19 + } }, - "x-order": 7 + "x-order": 2 }, - "push_metrics": { - "description": "Enables push metrics mode for exporter.", - "type": "boolean", - "x-order": 8 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { - "external_exporter": { - "description": "ExternalExporter runs on any Node type, including Remote Node.", + "postgres_exporter": { "type": "object", "properties": { - "agent_id": { - "description": "Unique randomly generated instance identifier.", + "pmm_agent_id": { + "description": "The pmm-agent identifier which runs this instance.", "type": "string", "x-order": 0 }, - "runs_on_node_id": { - "description": "Node identifier where this instance runs.", + "service_id": { + "description": "Service identifier.", "type": "string", "x-order": 1 }, - "disabled": { - "description": "If disabled, metrics from this exporter will not be collected.", - "type": "boolean", + "username": { + "description": "PostgreSQL username for scraping metrics.", + "type": "string", "x-order": 2 }, - "service_id": { - "description": "Service identifier.", + "password": { + "description": "PostgreSQL password for scraping metrics.", "type": "string", "x-order": 3 }, - "username": { - "description": "HTTP basic auth username for collecting metrics.", - "type": "string", + "tls": { + "description": "Use TLS for database connections.", + "type": "boolean", "x-order": 4 }, - "scheme": { - "description": "Scheme to generate URI to exporter metrics endpoints.", - "type": "string", + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation. Uses sslmode=required instead of verify-full.", + "type": "boolean", "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": 6 + }, + "skip_connection_check": { + "description": "Skip connection check.", + "type": "boolean", "x-order": 7 }, - "listen_port": { - "description": "Listen port for scraping metrics.", - "type": "integer", - "format": "int64", + "push_metrics": { + "description": "Enables push metrics mode for exporter.", + "type": "boolean", "x-order": 8 }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", - "type": "boolean", + "disable_collectors": { + "description": "List of collector names to disable in this exporter.", + "type": "array", + "items": { + "type": "string" + }, "x-order": 9 }, - "process_exec_path": { - "description": "Path to exec process.", + "tls_ca": { + "description": "TLS CA certificate.", "type": "string", "x-order": 10 + }, + "tls_cert": { + "description": "TLS Certifcate.", + "type": "string", + "x-order": 11 + }, + "tls_key": { + "description": "TLS Certificate Key.", + "type": "string", + "x-order": 12 + }, + "agent_password": { + "description": "Custom password for exporter endpoint /metrics.", + "type": "string", + "x-order": 13 + }, + "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": 14 + }, + "auto_discovery_limit": { + "description": "Limit of databases for auto-discovery.", + "type": "integer", + "format": "int32", + "x-order": 15 + }, + "expose_exporter": { + "type": "boolean", + "title": "Optionally expose the exporter process on all public interfaces", + "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/AddMongoDBExporter": { - "post": { - "description": "Adds mongodb_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add MongoDB Exporter", - "operationId": "AddMongoDBExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 1 - }, - "username": { - "description": "MongoDB username for scraping metrics.", - "type": "string", - "x-order": 2 - }, - "password": { - "description": "MongoDB password for scraping metrics.", - "type": "string", "x-order": 3 }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 4 - }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", - "x-order": 5 - }, - "tls_certificate_key": { - "description": "Client certificate and key.", - "type": "string", - "x-order": 6 - }, - "tls_certificate_key_file_password": { - "description": "Password for decrypting tls_certificate_key.", - "type": "string", - "x-order": 7 - }, - "tls_ca": { - "description": "Certificate Authority certificate chain.", - "type": "string", - "x-order": 8 - }, - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 9 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 10 - }, - "push_metrics": { - "description": "Enables push metrics mode for exporter.", - "type": "boolean", - "x-order": 11 - }, - "disable_collectors": { - "description": "List of collector names to disable in this exporter.", - "type": "array", - "items": { - "type": "string" - }, - "x-order": 12 - }, - "authentication_mechanism": { - "description": "Authentication mechanism.\nSee https://docs.mongodb.com/manual/reference/connection-string/#mongodb-urioption-urioption.authMechanism\nfor details.", - "type": "string", - "x-order": 13 - }, - "authentication_database": { - "description": "Authentication database.", - "type": "string", - "x-order": 14 - }, - "agent_password": { - "description": "Custom password for exporter endpoint /metrics.", - "type": "string", - "x-order": 15 - }, - "stats_collections": { - "type": "array", - "title": "List of colletions to get stats from. Can use *", - "items": { - "type": "string" - }, - "x-order": 16 - }, - "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": 17 - }, - "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": 18 - }, - "expose_exporter": { - "type": "boolean", - "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 19 - } - } - } - } - ], - "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.", + "proxysql_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 + "x-order": 0 }, "service_id": { "description": "Service identifier.", "type": "string", - "x-order": 3 + "x-order": 1 }, "username": { - "description": "MongoDB username for scraping metrics.", + "description": "ProxySQL username for scraping metrics.", "type": "string", - "x-order": 4 + "x-order": 2 + }, + "password": { + "description": "ProxySQL password for scraping metrics.", + "type": "string", + "x-order": 3 }, "tls": { "description": "Use TLS for database connections.", "type": "boolean", - "x-order": 5 + "x-order": 4 }, "tls_skip_verify": { "description": "Skip TLS certificate and hostname validation.", "type": "boolean", - "x-order": 6 + "x-order": 5 }, "custom_labels": { "description": "Custom user-assigned labels.", @@ -4407,66 +4260,31 @@ "additionalProperties": { "type": "string" }, + "x-order": 6 + }, + "skip_connection_check": { + "description": "Skip connection check.", + "type": "boolean", "x-order": 7 }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", + "push_metrics": { + "description": "Enables push metrics mode for exporter.", "type": "boolean", "x-order": 8 }, - "disabled_collectors": { - "description": "List of disabled collector names.\n\nStatus fields below.", + "disable_collectors": { + "description": "List of collector names to disable in this exporter.", "type": "array", "items": { "type": "string" }, "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.", + "agent_password": { + "description": "Custom password for exporter endpoint /metrics.", "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": 10 }, - "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 - }, - "process_exec_path": { - "description": "Path to exec process.", - "type": "string", - "x-order": 15 - }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", "type": "string", @@ -4480,240 +4298,93 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 16 + "x-order": 11 }, "expose_exporter": { "type": "boolean", "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 17 + "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/AddMySQLdExporter": { - "post": { - "description": "Adds mysqld_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add mysqld Exporter", - "operationId": "AddMySQLdExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 1 - }, - "username": { - "description": "MySQL username for scraping metrics.", - "type": "string", - "x-order": 2 - }, - "password": { - "description": "MySQL password for scraping metrics.", - "type": "string", - "x-order": 3 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", "x-order": 4 }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", - "x-order": 5 - }, - "tls_ca": { - "description": "Certificate Authority certificate chain.", - "type": "string", - "x-order": 6 - }, - "tls_cert": { - "description": "Client certificate.", - "type": "string", - "x-order": 7 - }, - "tls_key": { - "description": "Password for decrypting tls_cert.", - "type": "string", - "x-order": 8 - }, - "tablestats_group_table_limit": { - "description": "Tablestats group collectors will be 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.", - "type": "integer", - "format": "int32", - "x-order": 9 - }, - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 10 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 11 - }, - "push_metrics": { - "description": "Enables push metrics mode for exporter.", - "type": "boolean", - "x-order": 12 - }, - "disable_collectors": { - "description": "List of collector names to disable in this exporter.", - "type": "array", - "items": { - "type": "string" - }, - "x-order": 13 - }, - "agent_password": { - "description": "Custom password for exporter endpoint /metrics.", - "type": "string", - "x-order": 14 - }, - "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": 15 - }, - "expose_exporter": { - "type": "boolean", - "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 16 - } - } - } - } - ], - "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.", + "external_exporter": { "type": "object", "properties": { - "agent_id": { - "description": "Unique randomly generated instance identifier.", + "runs_on_node_id": { + "description": "The node identifier where this instance is run.", "type": "string", "x-order": 0 }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", + "service_id": { + "description": "Service identifier.", "type": "string", "x-order": 1 }, - "disabled": { - "description": "Desired Agent status: enabled (false) or disabled (true).", - "type": "boolean", + "username": { + "description": "HTTP basic auth username for collecting metrics.", + "type": "string", "x-order": 2 }, - "service_id": { - "description": "Service identifier.", + "password": { + "description": "HTTP basic auth password for collecting metrics.", "type": "string", "x-order": 3 }, - "username": { - "description": "MySQL username for scraping metrics.", + "scheme": { + "description": "Scheme to generate URI to exporter metrics endpoints(default: http).", "type": "string", "x-order": 4 }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", + "metrics_path": { + "description": "Path under which metrics are exposed, used to generate URI(default: /metrics).", + "type": "string", "x-order": 5 }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", + "listen_port": { + "description": "Listen port for scraping metrics.", + "type": "integer", + "format": "int64", "x-order": 6 }, - "tls_ca": { - "description": "Certificate Authority certificate chain.", - "type": "string", + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, "x-order": 7 }, - "tls_cert": { - "description": "Client certificate.", - "type": "string", + "push_metrics": { + "description": "Enables push metrics mode for exporter.", + "type": "boolean", "x-order": 8 + } + }, + "x-order": 5 + }, + "rds_exporter": { + "type": "object", + "properties": { + "pmm_agent_id": { + "description": "The pmm-agent identifier which runs this instance.", + "type": "string", + "x-order": 0 }, - "tls_key": { - "description": "Password for decrypting tls_cert.", + "node_id": { + "description": "Node identifier.", "type": "string", - "x-order": 9 + "x-order": 1 }, - "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.", - "type": "integer", - "format": "int32", - "x-order": 10 + "aws_access_key": { + "description": "AWS Access Key.", + "type": "string", + "x-order": 2 + }, + "aws_secret_key": { + "description": "AWS Secret Key.", + "type": "string", + "x-order": 3 }, "custom_labels": { "description": "Custom user-assigned labels.", @@ -4721,51 +4392,27 @@ "additionalProperties": { "type": "string" }, - "x-order": 11 + "x-order": 4 }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", + "skip_connection_check": { + "description": "Skip connection check.", "type": "boolean", - "x-order": 12 + "x-order": 5 }, - "disabled_collectors": { - "description": "List of disabled collector names.\n\nStatus fields below.", - "type": "array", - "items": { - "type": "string" - }, - "x-order": 13 + "disable_basic_metrics": { + "description": "Disable basic metrics.", + "type": "boolean", + "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": 14 - }, - "listen_port": { - "description": "Listen port for scraping metrics.", - "type": "integer", - "format": "int64", - "x-order": 15 - }, - "tablestats_group_disabled": { - "description": "True if tablestats group collectors are currently disabled.", + "disable_enhanced_metrics": { + "description": "Disable enhanced metrics.", "type": "boolean", - "x-order": 16 + "x-order": 7 }, - "process_exec_path": { - "description": "Path to exec process.", - "type": "string", - "x-order": 17 + "push_metrics": { + "description": "Enables push metrics mode for exporter.", + "type": "boolean", + "x-order": 8 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -4780,120 +4427,89 @@ "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": 9 } }, - "x-order": 0 - }, - "table_count": { - "description": "Actual table count at the moment of adding.", - "type": "integer", - "format": "int32", - "x-order": 1 - } - } - } - }, - "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/AddNodeExporter": { - "post": { - "description": "Adds node_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add Node Exporter", - "operationId": "AddNodeExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 + "x-order": 6 }, - "custom_labels": { - "description": "Custom user-assigned labels.", + "azure_database_exporter": { "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 1 - }, - "push_metrics": { - "description": "Enables push metrics mode for exporter.", - "type": "boolean", - "x-order": 2 - }, - "disable_collectors": { - "description": "List of collector names to disable in this exporter.", - "type": "array", - "items": { - "type": "string" + "properties": { + "pmm_agent_id": { + "description": "The pmm-agent identifier which runs this instance.", + "type": "string", + "x-order": 0 + }, + "node_id": { + "description": "Node identifier.", + "type": "string", + "x-order": 1 + }, + "azure_client_id": { + "type": "string", + "title": "Azure client ID", + "x-order": 2 + }, + "azure_client_secret": { + "type": "string", + "title": "Azure client secret", + "x-order": 3 + }, + "azure_tenant_id": { + "type": "string", + "title": "Azure tanant ID", + "x-order": 4 + }, + "azure_subscription_id": { + "type": "string", + "title": "Azure subscription ID", + "x-order": 5 + }, + "azure_resource_group": { + "description": "Azure resource group.", + "type": "string", + "x-order": 6 + }, + "azure_database_resource_type": { + "type": "string", + "title": "Azure resource type (mysql, maria, postgres)", + "x-order": 7 + }, + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 8 + }, + "skip_connection_check": { + "description": "Skip connection check.", + "type": "boolean", + "x-order": 9 + }, + "push_metrics": { + "description": "Enables push metrics mode for exporter.", + "type": "boolean", + "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": 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": 4 - }, - "expose_exporter": { - "type": "boolean", - "title": "Expose the node_exporter process on all public interfaces", - "x-order": 5 + "x-order": 7 } } } @@ -4993,85 +4609,9 @@ } }, "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/AddPMMAgent": { - "post": { - "description": "Adds PMM Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add PMM Agent", - "operationId": "AddPMMAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "runs_on_node_id": { - "description": "Node identifier where this instance runs.", - "type": "string", - "x-order": 0 }, - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { - "pmm_agent": { - "description": "PMMAgent runs on Generic or Container Node.", + "mysqld_exporter": { + "description": "MySQLdExporter runs on Generic or Container Node and exposes MySQL Service metrics.", "type": "object", "properties": { "agent_id": { @@ -5079,197 +4619,260 @@ "type": "string", "x-order": 0 }, - "runs_on_node_id": { - "description": "Node identifier where this instance runs.", + "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": "MySQL 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 + }, + "tls_ca": { + "description": "Certificate Authority certificate chain.", + "type": "string", + "x-order": 7 + }, + "tls_cert": { + "description": "Client certificate.", + "type": "string", + "x-order": 8 + }, + "tls_key": { + "description": "Password for decrypting tls_cert.", + "type": "string", + "x-order": 9 + }, + "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.", + "type": "integer", + "format": "int32", + "x-order": 10 + }, "custom_labels": { - "description": "Custom user-assigned labels.\n\nStatus fields below.", + "description": "Custom user-assigned labels.", "type": "object", "additionalProperties": { "type": "string" }, - "x-order": 2 + "x-order": 11 }, - "connected": { - "description": "True if Agent is running and connected to pmm-managed.", + "push_metrics_enabled": { + "description": "True if exporter uses push metrics mode.", "type": "boolean", - "x-order": 3 + "x-order": 12 + }, + "disabled_collectors": { + "description": "List of disabled collector names.\n\nStatus fields below.", + "type": "array", + "items": { + "type": "string" + }, + "x-order": 13 + }, + "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": 14 + }, + "listen_port": { + "description": "Listen port for scraping metrics.", + "type": "integer", + "format": "int64", + "x-order": 15 + }, + "tablestats_group_disabled": { + "description": "True if tablestats group collectors are currently disabled.", + "type": "boolean", + "x-order": 16 }, "process_exec_path": { "description": "Path to exec process.", "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 - }, - "message": { - "type": "string", - "x-order": 1 - }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } + "x-order": 17 }, - "additionalProperties": false + "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": 18 + }, + "expose_exporter": { + "type": "boolean", + "title": "Optionally expose the exporter process on all public interfaces", + "x-order": 19 + } }, - "x-order": 2 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/AddPostgresExporter": { - "post": { - "description": "Adds postgres_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add Postgres Exporter", - "operationId": "AddPostgresExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", "x-order": 1 }, - "username": { - "description": "PostgreSQL username for scraping metrics.", - "type": "string", - "x-order": 2 - }, - "password": { - "description": "PostgreSQL password for scraping metrics.", - "type": "string", - "x-order": 3 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 4 - }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation. Uses sslmode=required instead of verify-full.", - "type": "boolean", - "x-order": 5 - }, - "custom_labels": { - "description": "Custom user-assigned labels.", + "mongodb_exporter": { + "description": "MongoDBExporter runs on Generic or Container Node and exposes MongoDB Service metrics.", "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 6 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 7 - }, - "push_metrics": { - "description": "Enables push metrics mode for exporter.", - "type": "boolean", - "x-order": 8 - }, - "disable_collectors": { - "description": "List of collector names to disable in this exporter.", - "type": "array", - "items": { - "type": "string" - }, - "x-order": 9 - }, - "tls_ca": { - "description": "TLS CA certificate.", - "type": "string", - "x-order": 10 - }, - "tls_cert": { - "description": "TLS Certifcate.", - "type": "string", - "x-order": 11 - }, - "tls_key": { - "description": "TLS Certificate Key.", - "type": "string", - "x-order": 12 - }, - "agent_password": { - "description": "Custom password for exporter endpoint /metrics.", - "type": "string", - "x-order": 13 - }, - "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": 14 - }, - "auto_discovery_limit": { - "description": "Limit of databases for auto-discovery.", - "type": "integer", - "format": "int32", - "x-order": 15 + "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 + }, + "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": 7 + }, + "push_metrics_enabled": { + "description": "True if exporter uses push metrics mode.", + "type": "boolean", + "x-order": 8 + }, + "disabled_collectors": { + "description": "List of disabled collector names.\n\nStatus fields below.", + "type": "array", + "items": { + "type": "string" + }, + "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.", + "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": 10 + }, + "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 + }, + "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 + }, + "expose_exporter": { + "type": "boolean", + "title": "Optionally expose the exporter process on all public interfaces", + "x-order": 17 + } + }, + "x-order": 2 }, - "expose_exporter": { - "type": "boolean", - "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 16 - } - } - } - } - ], - "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", @@ -5289,46 +4892,420 @@ "type": "boolean", "x-order": 2 }, - "service_id": { - "description": "Service identifier.", + "service_id": { + "description": "Service identifier.", + "type": "string", + "x-order": 3 + }, + "username": { + "description": "PostgreSQL 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. Uses sslmode=required instead of verify-full.", + "type": "boolean", + "x-order": 6 + }, + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 7 + }, + "push_metrics_enabled": { + "description": "True if exporter uses push metrics mode.", + "type": "boolean", + "x-order": 8 + }, + "disabled_collectors": { + "description": "List of disabled collector names.", + "type": "array", + "items": { + "type": "string" + }, + "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.", + "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": 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": 3 + }, + "proxysql_exporter": { + "description": "ProxySQLExporter runs on Generic or Container Node and exposes ProxySQL Service 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": "ProxySQL 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": 7 + }, + "push_metrics_enabled": { + "description": "True if exporter uses push metrics mode.", + "type": "boolean", + "x-order": 8 + }, + "disabled_collectors": { + "description": "List of disabled collector names.\n\nStatus fields below.", + "type": "array", + "items": { + "type": "string" + }, + "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.", + "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": 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 + }, + "expose_exporter": { + "type": "boolean", + "title": "Optionally expose the exporter process on all public interfaces", + "x-order": 14 + } + }, + "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", + "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": 5 + }, + "rds_exporter": { + "description": "RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node 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 + }, + "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": "Custom user-assigned labels.\n\nStatus fields below.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "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).\n\nMetric collections flags below.", + "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 + }, + "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": 6 + }, + "azure_database_exporter": { + "description": "AzureDatabaseExporter runs on Generic or Container Node and exposes RemoteAzure Node 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 + }, + "node_id": { + "description": "Node identifier.", "type": "string", "x-order": 3 }, - "username": { - "description": "PostgreSQL username for scraping metrics.", + "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. Uses sslmode=required instead of verify-full.", - "type": "boolean", - "x-order": 6 - }, "custom_labels": { - "description": "Custom user-assigned labels.", + "description": "Custom user-assigned labels.\n\nStatus fields below.", "type": "object", "additionalProperties": { "type": "string" }, - "x-order": 7 - }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", - "type": "boolean", - "x-order": 8 - }, - "disabled_collectors": { - "description": "List of disabled collector names.", - "type": "array", - "items": { - "type": "string" - }, - "x-order": 9 + "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.", @@ -5343,18 +5320,23 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 10 + "x-order": 7 }, "listen_port": { - "description": "Listen port for scraping metrics.", + "description": "Listen port for scraping metrics (the same for several configurations).", "type": "integer", "format": "int64", - "x-order": 11 + "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": 12 + "x-order": 10 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -5369,21 +5351,16 @@ "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": 11 } }, - "x-order": 0 + "x-order": 7 + }, + "table_count": { + "description": "Actual table count for SQL databases at the moment of adding.", + "type": "integer", + "format": "int32", + "x-order": 8 } } } @@ -5422,14 +5399,14 @@ } } }, - "/v1/inventory/Agents/AddProxySQLExporter": { + "/v1/inventory/Agents/AddPMMAgent": { "post": { - "description": "Adds proxysql_exporter Agent.", + "description": "Adds PMM Agent.", "tags": [ "AgentsService" ], - "summary": "Add ProxySQL Exporter", - "operationId": "AddProxySQLExporter", + "summary": "Add PMM Agent", + "operationId": "AddPMMAgent", "parameters": [ { "name": "body", @@ -5438,86 +5415,18 @@ "schema": { "type": "object", "properties": { - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", + "runs_on_node_id": { + "description": "Node identifier where this instance runs.", "type": "string", "x-order": 0 }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 1 - }, - "username": { - "description": "ProxySQL username for scraping metrics.", - "type": "string", - "x-order": 2 - }, - "password": { - "description": "ProxySQL password for scraping metrics.", - "type": "string", - "x-order": 3 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 4 - }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", - "x-order": 5 - }, "custom_labels": { "description": "Custom user-assigned labels.", "type": "object", "additionalProperties": { "type": "string" }, - "x-order": 6 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 7 - }, - "push_metrics": { - "description": "Enables push metrics mode for exporter.", - "type": "boolean", - "x-order": 8 - }, - "disable_collectors": { - "description": "List of collector names to disable in this exporter.", - "type": "array", - "items": { - "type": "string" - }, - "x-order": 9 - }, - "agent_password": { - "description": "Custom password for exporter endpoint /metrics.", - "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 - }, - "expose_exporter": { - "type": "boolean", - "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 12 + "x-order": 1 } } } @@ -5529,8 +5438,8 @@ "schema": { "type": "object", "properties": { - "proxysql_exporter": { - "description": "ProxySQLExporter runs on Generic or Container Node and exposes ProxySQL Service metrics.", + "pmm_agent": { + "description": "PMMAgent runs on Generic or Container Node.", "type": "object", "properties": { "agent_id": { @@ -5538,102 +5447,28 @@ "type": "string", "x-order": 0 }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", + "runs_on_node_id": { + "description": "Node identifier where this instance runs.", "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": "ProxySQL 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": 7 - }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", - "type": "boolean", - "x-order": 8 - }, - "disabled_collectors": { - "description": "List of disabled collector names.\n\nStatus fields below.", - "type": "array", - "items": { - "type": "string" - }, - "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.", - "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": 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 + "description": "Custom user-assigned labels.\n\nStatus fields below.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 2 }, - "expose_exporter": { + "connected": { + "description": "True if Agent is running and connected to pmm-managed.", "type": "boolean", - "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 14 + "x-order": 3 + }, + "process_exec_path": { + "description": "Path to exec process.", + "type": "string", + "x-order": 4 } }, "x-order": 0 @@ -5830,7 +5665,7 @@ "x-order": 6 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", "type": "integer", "format": "int32", "x-order": 7 @@ -6740,292 +6575,70 @@ "type": "string", "x-order": 0 }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 1 - }, - "username": { - "description": "PostgreSQL username for getting pg stat statements data.", - "type": "string", - "x-order": 2 - }, - "password": { - "description": "PostgreSQL password for getting pg stat statements data.", - "type": "string", - "x-order": 3 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 4 - }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", - "x-order": 5 - }, - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 6 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 7 - }, - "disable_comments_parsing": { - "description": "Disable parsing comments from queries and showing them in QAN.", - "type": "boolean", - "x-order": 8 - }, - "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", - "type": "integer", - "format": "int32", - "x-order": 9 - }, - "tls_ca": { - "description": "TLS CA certificate.", - "type": "string", - "x-order": 10 - }, - "tls_cert": { - "description": "TLS Certifcate.", - "type": "string", - "x-order": 11 - }, - "tls_key": { - "description": "TLS Certificate Key.", - "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 - } - } - } - } - ], - "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.", - "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": "PostgreSQL username for getting pg stat statements data.", - "type": "string", - "x-order": 4 - }, - "disable_comments_parsing": { - "description": "Disable parsing comments from queries and showing them in QAN.", - "type": "boolean", - "x-order": 5 - }, - "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", - "type": "integer", - "format": "int32", - "x-order": 6 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 7 - }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", - "x-order": 8 - }, - "custom_labels": { - "description": "Custom user-assigned labels.\n\nStatus fields below.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "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.", - "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": 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 - } - }, - "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/AddRDSExporter": { - "post": { - "description": "Adds rds_exporter Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add RDS Exporter", - "operationId": "AddRDSExporter", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "node_id": { - "description": "Node identifier.", + "service_id": { + "description": "Service identifier.", "type": "string", "x-order": 1 }, - "aws_access_key": { - "description": "AWS Access Key.", + "username": { + "description": "PostgreSQL username for getting pg stat statements data.", "type": "string", "x-order": 2 }, - "aws_secret_key": { - "description": "AWS Secret Key.", + "password": { + "description": "PostgreSQL password for getting pg stat statements data.", "type": "string", "x-order": 3 }, + "tls": { + "description": "Use TLS for database connections.", + "type": "boolean", + "x-order": 4 + }, + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation.", + "type": "boolean", + "x-order": 5 + }, "custom_labels": { "description": "Custom user-assigned labels.", "type": "object", "additionalProperties": { "type": "string" }, - "x-order": 4 + "x-order": 6 }, "skip_connection_check": { "description": "Skip connection check.", "type": "boolean", - "x-order": 5 - }, - "disable_basic_metrics": { - "description": "Disable basic metrics.", - "type": "boolean", - "x-order": 6 - }, - "disable_enhanced_metrics": { - "description": "Disable enhanced metrics.", - "type": "boolean", "x-order": 7 }, - "push_metrics": { - "description": "Enables push metrics mode for exporter.", + "disable_comments_parsing": { + "description": "Disable parsing comments from queries and showing them in QAN.", "type": "boolean", "x-order": 8 }, + "max_query_length": { + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "type": "integer", + "format": "int32", + "x-order": 9 + }, + "tls_ca": { + "description": "TLS CA certificate.", + "type": "string", + "x-order": 10 + }, + "tls_cert": { + "description": "TLS Certifcate.", + "type": "string", + "x-order": 11 + }, + "tls_key": { + "description": "TLS Certificate Key.", + "type": "string", + "x-order": 12 + }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", "type": "string", @@ -7039,7 +6652,7 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 9 + "x-order": 13 } } } @@ -7051,8 +6664,8 @@ "schema": { "type": "object", "properties": { - "rds_exporter": { - "description": "RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node metrics.", + "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": { @@ -7070,23 +6683,44 @@ "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 statements data.", "type": "string", "x-order": 4 }, + "disable_comments_parsing": { + "description": "Disable parsing comments from queries and showing them in QAN.", + "type": "boolean", + "x-order": 5 + }, + "max_query_length": { + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "type": "integer", + "format": "int32", + "x-order": 6 + }, + "tls": { + "description": "Use TLS for database connections.", + "type": "boolean", + "x-order": 7 + }, + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation.", + "type": "boolean", + "x-order": 8 + }, "custom_labels": { "description": "Custom user-assigned labels.\n\nStatus fields below.", "type": "object", "additionalProperties": { "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.", @@ -7101,27 +6735,6 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 6 - }, - "listen_port": { - "description": "Listen port for scraping metrics (the same for several configurations).\n\nMetric collections flags below.", - "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 }, "process_exec_path": { @@ -7143,12 +6756,6 @@ "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 @@ -8782,7 +8389,7 @@ "x-order": 6 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", "type": "integer", "format": "int32", "x-order": 7 @@ -10905,7 +10512,7 @@ "x-order": 6 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", "type": "integer", "format": "int32", "x-order": 7 @@ -11153,6 +10760,72 @@ }, "x-order": 11 }, + "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", + "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": 12 + }, "rds_exporter": { "description": "RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node metrics.", "type": "object", @@ -11253,72 +10926,6 @@ "x-order": 13 } }, - "x-order": 12 - }, - "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", - "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": 13 }, "azure_database_exporter": { @@ -11584,8 +11191,8 @@ "AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT", "AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT", "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT", - "AGENT_TYPE_RDS_EXPORTER", "AGENT_TYPE_EXTERNAL_EXPORTER", + "AGENT_TYPE_RDS_EXPORTER", "AGENT_TYPE_AZURE_DATABASE_EXPORTER" ], "x-order": 3 @@ -12561,7 +12168,7 @@ "x-order": 6 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", "type": "integer", "format": "int32", "x-order": 7 @@ -13123,11 +12730,11 @@ }, "/v1/inventory/Agents/Remove": { "post": { - "description": "Removes Agent.", + "description": "Removes an Agent.", "tags": [ "AgentsService" ], - "summary": "Remove Agent", + "summary": "Remove an Agent", "operationId": "RemoveAgent", "parameters": [ { @@ -19723,7 +19330,7 @@ "x-order": 6 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", "type": "integer", "format": "int32", "x-order": 7 diff --git a/api/swagger/swagger.json b/api/swagger/swagger.json index 0f0386a131..ab922c4327 100644 --- a/api/swagger/swagger.json +++ b/api/swagger/swagger.json @@ -3811,7 +3811,7 @@ "x-order": 6 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", "type": "integer", "format": "int32", "x-order": 7 diff --git a/managed/services/inventory/agents.go b/managed/services/inventory/agents.go index 2b7b53faeb..eec3a39ec3 100644 --- a/managed/services/inventory/agents.go +++ b/managed/services/inventory/agents.go @@ -200,11 +200,11 @@ func (as *AgentsService) AddPMMAgent(ctx context.Context, req *inventoryv1.AddPM } // AddNodeExporter inserts node_exporter Agent with given parameters. -func (as *AgentsService) AddNodeExporter(ctx context.Context, req *inventoryv1.AddNodeExporterRequest) (*inventoryv1.NodeExporter, error) { +func (as *AgentsService) AddNodeExporter(ctx context.Context, p *inventoryv1.AddNodeExporterParams) (*inventoryv1.NodeExporter, error) { var res *inventoryv1.NodeExporter - e := as.db.InTransaction(func(tx *reform.TX) error { - row, err := models.CreateNodeExporter(tx.Querier, req.PmmAgentId, req.CustomLabels, req.PushMetrics, req.ExposeExporter, - req.DisableCollectors, nil, services.SpecifyLogLevel(req.LogLevel, inventoryv1.LogLevel_LOG_LEVEL_ERROR)) + 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)) if err != nil { return err } @@ -220,7 +220,7 @@ func (as *AgentsService) AddNodeExporter(ctx context.Context, req *inventoryv1.A return nil, e } - as.state.RequestStateUpdate(ctx, req.PmmAgentId) + as.state.RequestStateUpdate(ctx, p.PmmAgentId) return res, nil } @@ -237,24 +237,24 @@ func (as *AgentsService) ChangeNodeExporter(ctx context.Context, req *inventoryv } // AddMySQLdExporter inserts mysqld_exporter Agent with given parameters and returns it and an actual table count. -func (as *AgentsService) AddMySQLdExporter(ctx context.Context, req *inventoryv1.AddMySQLdExporterRequest) (*inventoryv1.MySQLdExporter, int32, error) { //nolint:unparam +func (as *AgentsService) AddMySQLdExporter(ctx context.Context, p *inventoryv1.AddMySQLdExporterParams) (*inventoryv1.MySQLdExporter, int32, error) { //nolint:unparam var row *models.Agent var res *inventoryv1.MySQLdExporter e := as.db.InTransaction(func(tx *reform.TX) error { params := &models.CreateAgentParams{ - PMMAgentID: req.PmmAgentId, - ServiceID: req.ServiceId, - Username: req.Username, - Password: req.Password, - AgentPassword: req.AgentPassword, - CustomLabels: req.CustomLabels, - TLS: req.Tls, - TLSSkipVerify: req.TlsSkipVerify, - MySQLOptions: models.MySQLOptionsFromRequest(req), - TableCountTablestatsGroupLimit: req.TablestatsGroupTableLimit, - PushMetrics: req.PushMetrics, - DisableCollectors: req.DisableCollectors, - LogLevel: services.SpecifyLogLevel(req.LogLevel, inventoryv1.LogLevel_LOG_LEVEL_ERROR), + PMMAgentID: p.PmmAgentId, + ServiceID: p.ServiceId, + Username: p.Username, + Password: p.Password, + AgentPassword: p.AgentPassword, + CustomLabels: p.CustomLabels, + TLS: p.Tls, + TLSSkipVerify: p.TlsSkipVerify, + MySQLOptions: models.MySQLOptionsFromRequest(p), + TableCountTablestatsGroupLimit: p.TablestatsGroupTableLimit, + PushMetrics: p.PushMetrics, + DisableCollectors: p.DisableCollectors, + LogLevel: services.SpecifyLogLevel(p.LogLevel, inventoryv1.LogLevel_LOG_LEVEL_ERROR), } var err error row, err = models.CreateAgent(tx.Querier, models.MySQLdExporterType, params) @@ -262,8 +262,8 @@ func (as *AgentsService) AddMySQLdExporter(ctx context.Context, req *inventoryv1 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 } @@ -288,7 +288,7 @@ func (as *AgentsService) AddMySQLdExporter(ctx context.Context, req *inventoryv1 return nil, 0, e } - as.state.RequestStateUpdate(ctx, req.PmmAgentId) + as.state.RequestStateUpdate(ctx, p.PmmAgentId) return res, pointer.GetInt32(row.TableCount), nil } @@ -305,30 +305,30 @@ func (as *AgentsService) ChangeMySQLdExporter(ctx context.Context, req *inventor } // AddMongoDBExporter inserts mongodb_exporter Agent with given parameters. -func (as *AgentsService) AddMongoDBExporter(ctx context.Context, req *inventoryv1.AddMongoDBExporterRequest) (*inventoryv1.MongoDBExporter, error) { +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 { params := &models.CreateAgentParams{ - PMMAgentID: req.PmmAgentId, - ServiceID: req.ServiceId, - Username: req.Username, - Password: req.Password, - AgentPassword: req.AgentPassword, - CustomLabels: req.CustomLabels, - TLS: req.Tls, - TLSSkipVerify: req.TlsSkipVerify, - MongoDBOptions: models.MongoDBOptionsFromRequest(req), - PushMetrics: req.PushMetrics, - DisableCollectors: req.DisableCollectors, - LogLevel: services.SpecifyLogLevel(req.LogLevel, inventoryv1.LogLevel_LOG_LEVEL_FATAL), + PMMAgentID: p.PmmAgentId, + ServiceID: p.ServiceId, + Username: p.Username, + Password: p.Password, + AgentPassword: p.AgentPassword, + CustomLabels: p.CustomLabels, + TLS: p.Tls, + TLSSkipVerify: p.TlsSkipVerify, + MongoDBOptions: models.MongoDBOptionsFromRequest(p), + PushMetrics: p.PushMetrics, + DisableCollectors: p.DisableCollectors, + LogLevel: services.SpecifyLogLevel(p.LogLevel, inventoryv1.LogLevel_LOG_LEVEL_FATAL), } row, err := models.CreateAgent(tx.Querier, models.MongoDBExporterType, 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 } @@ -353,7 +353,7 @@ func (as *AgentsService) AddMongoDBExporter(ctx context.Context, req *inventoryv return nil, e } - as.state.RequestStateUpdate(ctx, req.PmmAgentId) + as.state.RequestStateUpdate(ctx, p.PmmAgentId) return res, nil } @@ -499,30 +499,30 @@ func (as *AgentsService) ChangeQANMySQLSlowlogAgent(ctx context.Context, req *in } // AddPostgresExporter inserts postgres_exporter Agent with given parameters. -func (as *AgentsService) AddPostgresExporter(ctx context.Context, req *inventoryv1.AddPostgresExporterRequest) (*inventoryv1.PostgresExporter, error) { +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 { params := &models.CreateAgentParams{ - PMMAgentID: req.PmmAgentId, - ServiceID: req.ServiceId, - Username: req.Username, - Password: req.Password, - AgentPassword: req.AgentPassword, - CustomLabels: req.CustomLabels, - TLS: req.Tls, - TLSSkipVerify: req.TlsSkipVerify, - PushMetrics: req.PushMetrics, - DisableCollectors: req.DisableCollectors, - PostgreSQLOptions: models.PostgreSQLOptionsFromRequest(req), - LogLevel: services.SpecifyLogLevel(req.LogLevel, inventoryv1.LogLevel_LOG_LEVEL_ERROR), + PMMAgentID: p.PmmAgentId, + ServiceID: p.ServiceId, + Username: p.Username, + Password: p.Password, + AgentPassword: p.AgentPassword, + CustomLabels: p.CustomLabels, + TLS: p.Tls, + TLSSkipVerify: p.TlsSkipVerify, + PushMetrics: p.PushMetrics, + DisableCollectors: p.DisableCollectors, + PostgreSQLOptions: models.PostgreSQLOptionsFromRequest(p), + LogLevel: services.SpecifyLogLevel(p.LogLevel, inventoryv1.LogLevel_LOG_LEVEL_ERROR), } row, err := models.CreateAgent(tx.Querier, models.PostgresExporterType, 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 } @@ -547,7 +547,7 @@ func (as *AgentsService) AddPostgresExporter(ctx context.Context, req *inventory return nil, e } - as.state.RequestStateUpdate(ctx, req.PmmAgentId) + as.state.RequestStateUpdate(ctx, p.PmmAgentId) return res, nil } @@ -628,29 +628,29 @@ func (as *AgentsService) ChangeQANMongoDBProfilerAgent(ctx context.Context, req } // AddProxySQLExporter inserts proxysql_exporter Agent with given parameters. -func (as *AgentsService) AddProxySQLExporter(ctx context.Context, req *inventoryv1.AddProxySQLExporterRequest) (*inventoryv1.ProxySQLExporter, error) { +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 { params := &models.CreateAgentParams{ - PMMAgentID: req.PmmAgentId, - ServiceID: req.ServiceId, - Username: req.Username, - Password: req.Password, - AgentPassword: req.AgentPassword, - CustomLabels: req.CustomLabels, - TLS: req.Tls, - TLSSkipVerify: req.TlsSkipVerify, - PushMetrics: req.PushMetrics, - DisableCollectors: req.DisableCollectors, - LogLevel: services.SpecifyLogLevel(req.LogLevel, inventoryv1.LogLevel_LOG_LEVEL_FATAL), + PMMAgentID: p.PmmAgentId, + ServiceID: p.ServiceId, + Username: p.Username, + Password: p.Password, + AgentPassword: p.AgentPassword, + CustomLabels: p.CustomLabels, + TLS: p.Tls, + TLSSkipVerify: p.TlsSkipVerify, + PushMetrics: p.PushMetrics, + DisableCollectors: p.DisableCollectors, + LogLevel: services.SpecifyLogLevel(p.LogLevel, inventoryv1.LogLevel_LOG_LEVEL_FATAL), } row, err := models.CreateAgent(tx.Querier, models.ProxySQLExporterType, 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 } @@ -675,7 +675,7 @@ func (as *AgentsService) AddProxySQLExporter(ctx context.Context, req *inventory return nil, e } - as.state.RequestStateUpdate(ctx, req.PmmAgentId) + as.state.RequestStateUpdate(ctx, p.PmmAgentId) return res, nil } @@ -815,19 +815,19 @@ func (as *AgentsService) ChangeQANPostgreSQLPgStatMonitorAgent(ctx context.Conte } // AddRDSExporter inserts rds_exporter Agent with given parameters. -func (as *AgentsService) AddRDSExporter(ctx context.Context, req *inventoryv1.AddRDSExporterRequest) (*inventoryv1.RDSExporter, error) { +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 { params := &models.CreateAgentParams{ - PMMAgentID: req.PmmAgentId, - NodeID: req.NodeId, - AWSAccessKey: req.AwsAccessKey, - AWSSecretKey: req.AwsSecretKey, - CustomLabels: req.CustomLabels, - RDSBasicMetricsDisabled: req.DisableBasicMetrics, - RDSEnhancedMetricsDisabled: req.DisableEnhancedMetrics, - PushMetrics: req.PushMetrics, - LogLevel: services.SpecifyLogLevel(req.LogLevel, inventoryv1.LogLevel_LOG_LEVEL_FATAL), + PMMAgentID: p.PmmAgentId, + NodeID: p.NodeId, + AWSAccessKey: p.AwsAccessKey, + AWSSecretKey: p.AwsSecretKey, + CustomLabels: p.CustomLabels, + RDSBasicMetricsDisabled: p.DisableBasicMetrics, + RDSEnhancedMetricsDisabled: p.DisableEnhancedMetrics, + PushMetrics: p.PushMetrics, + LogLevel: services.SpecifyLogLevel(p.LogLevel, inventoryv1.LogLevel_LOG_LEVEL_FATAL), } row, err := models.CreateAgent(tx.Querier, models.RDSExporterType, params) if err != nil { @@ -835,7 +835,7 @@ func (as *AgentsService) AddRDSExporter(ctx context.Context, req *inventoryv1.Ad } // TODO check connection to AWS: https://jira.percona.com/browse/PMM-5024 - // if !req.SkipConnectionCheck { + // if !p.SkipConnectionCheck { // ... // } @@ -850,7 +850,7 @@ func (as *AgentsService) AddRDSExporter(ctx context.Context, req *inventoryv1.Ad return nil, e } - as.state.RequestStateUpdate(ctx, req.PmmAgentId) + as.state.RequestStateUpdate(ctx, p.PmmAgentId) return res, nil } @@ -867,22 +867,22 @@ func (as *AgentsService) ChangeRDSExporter(ctx context.Context, req *inventoryv1 } // AddExternalExporter inserts external-exporter Agent with given parameters. -func (as *AgentsService) AddExternalExporter(ctx context.Context, req *inventoryv1.AddExternalExporterRequest) (*inventoryv1.ExternalExporter, error) { +func (as *AgentsService) AddExternalExporter(ctx context.Context, p *inventoryv1.AddExternalExporterParams) (*inventoryv1.ExternalExporter, error) { var ( res *inventoryv1.ExternalExporter PMMAgentID *string ) e := as.db.InTransaction(func(tx *reform.TX) error { params := &models.CreateExternalExporterParams{ - RunsOnNodeID: req.RunsOnNodeId, - ServiceID: req.ServiceId, - Username: req.Username, - Password: req.Password, - Scheme: req.Scheme, - MetricsPath: req.MetricsPath, - ListenPort: req.ListenPort, - CustomLabels: req.CustomLabels, - PushMetrics: req.PushMetrics, + RunsOnNodeID: p.RunsOnNodeId, + ServiceID: p.ServiceId, + Username: p.Username, + Password: p.Password, + Scheme: p.Scheme, + MetricsPath: p.MetricsPath, + ListenPort: p.ListenPort, + CustomLabels: p.CustomLabels, + PushMetrics: p.PushMetrics, } row, err := models.CreateExternalExporter(tx.Querier, params) if err != nil { @@ -926,17 +926,17 @@ func (as *AgentsService) ChangeExternalExporter(req *inventoryv1.ChangeExternalE } // AddAzureDatabaseExporter inserts azure_exporter Agent with given parameters. -func (as *AgentsService) AddAzureDatabaseExporter(ctx context.Context, req *inventoryv1.AddAzureDatabaseExporterRequest) (*inventoryv1.AzureDatabaseExporter, error) { +func (as *AgentsService) AddAzureDatabaseExporter(ctx context.Context, p *inventoryv1.AddAzureDatabaseExporterParams) (*inventoryv1.AzureDatabaseExporter, error) { var res *inventoryv1.AzureDatabaseExporter e := as.db.InTransaction(func(tx *reform.TX) error { params := &models.CreateAgentParams{ - PMMAgentID: req.PmmAgentId, - NodeID: req.NodeId, - AzureOptions: models.AzureOptionsFromRequest(req), - CustomLabels: req.CustomLabels, - PushMetrics: req.PushMetrics, - LogLevel: services.SpecifyLogLevel(req.LogLevel, inventoryv1.LogLevel_LOG_LEVEL_FATAL), + PMMAgentID: p.PmmAgentId, + NodeID: p.NodeId, + AzureOptions: models.AzureOptionsFromRequest(p), + CustomLabels: p.CustomLabels, + PushMetrics: p.PushMetrics, + LogLevel: services.SpecifyLogLevel(p.LogLevel, inventoryv1.LogLevel_LOG_LEVEL_FATAL), } row, err := models.CreateAgent(tx.Querier, models.AzureDatabaseExporterType, params) if err != nil { @@ -954,7 +954,7 @@ func (as *AgentsService) AddAzureDatabaseExporter(ctx context.Context, req *inve return nil, e } - as.state.RequestStateUpdate(ctx, req.PmmAgentId) + as.state.RequestStateUpdate(ctx, p.PmmAgentId) return res, nil } diff --git a/managed/services/inventory/agents_test.go b/managed/services/inventory/agents_test.go index 76d31a5f11..5221c9ce95 100644 --- a/managed/services/inventory/agents_test.go +++ b/managed/services/inventory/agents_test.go @@ -67,7 +67,7 @@ func TestAgents(t *testing.T) { } assert.Equal(t, expectedPMMAgent, pmmAgent) - actualNodeExporter, err := as.AddNodeExporter(ctx, &inventoryv1.AddNodeExporterRequest{ + actualNodeExporter, err := as.AddNodeExporter(ctx, &inventoryv1.AddNodeExporterParams{ PmmAgentId: pmmAgent.AgentId, }) require.NoError(t, err) @@ -106,7 +106,7 @@ func TestAgents(t *testing.T) { }) require.NoError(t, err) - actualAgent, _, err = as.AddMySQLdExporter(ctx, &inventoryv1.AddMySQLdExporterRequest{ + actualAgent, _, err = as.AddMySQLdExporter(ctx, &inventoryv1.AddMySQLdExporterParams{ PmmAgentId: pmmAgent.AgentId, ServiceId: s.ServiceId, Username: "username", @@ -133,7 +133,7 @@ func TestAgents(t *testing.T) { }) require.NoError(t, err) - actualAgent, err = as.AddMongoDBExporter(ctx, &inventoryv1.AddMongoDBExporterRequest{ + actualAgent, err = as.AddMongoDBExporter(ctx, &inventoryv1.AddMongoDBExporterParams{ PmmAgentId: pmmAgent.AgentId, ServiceId: ms.ServiceId, Username: "username", @@ -181,7 +181,7 @@ func TestAgents(t *testing.T) { }) require.NoError(t, err) - actualAgent, err = as.AddPostgresExporter(ctx, &inventoryv1.AddPostgresExporterRequest{ + actualAgent, err = as.AddPostgresExporter(ctx, &inventoryv1.AddPostgresExporterParams{ PmmAgentId: pmmAgent.AgentId, ServiceId: ps.ServiceId, Username: "username", @@ -200,7 +200,7 @@ func TestAgents(t *testing.T) { require.NoError(t, err) assert.Equal(t, expectedPostgresExporter, actualAgent) - actualAgent, err = as.AddExternalExporter(ctx, &inventoryv1.AddExternalExporterRequest{ + actualAgent, err = as.AddExternalExporter(ctx, &inventoryv1.AddExternalExporterParams{ RunsOnNodeId: models.PMMServerNodeID, ServiceId: ps.ServiceId, Username: "username", @@ -330,7 +330,7 @@ func TestAgents(t *testing.T) { _, as, _, teardown, ctx, _ := setup(t) defer teardown(t) - _, err := as.AddNodeExporter(ctx, &inventoryv1.AddNodeExporterRequest{ + _, err := as.AddNodeExporter(ctx, &inventoryv1.AddNodeExporterParams{ PmmAgentId: "no-such-id", }) tests.AssertGRPCError(t, status.New(codes.NotFound, `Agent with ID "no-such-id" not found.`), err) @@ -362,7 +362,7 @@ func TestAgents(t *testing.T) { as.state.(*mockAgentsStateUpdater).On("RequestStateUpdate", ctx, "pmm-server") - agent, err := as.AddRDSExporter(ctx, &inventoryv1.AddRDSExporterRequest{ + agent, err := as.AddRDSExporter(ctx, &inventoryv1.AddRDSExporterParams{ PmmAgentId: "pmm-server", NodeId: node.NodeId, AwsAccessKey: "EXAMPLE_ACCESS_KEY", @@ -395,7 +395,7 @@ func TestAgents(t *testing.T) { require.NoError(t, err) require.NotNil(t, service) - agent, err := as.AddExternalExporter(ctx, &inventoryv1.AddExternalExporterRequest{ + agent, err := as.AddExternalExporter(ctx, &inventoryv1.AddExternalExporterParams{ RunsOnNodeId: models.PMMServerNodeID, ServiceId: service.ServiceId, Username: "username", @@ -428,7 +428,7 @@ func TestAgents(t *testing.T) { }) require.NoError(t, err) - _, _, err = as.AddMySQLdExporter(ctx, &inventoryv1.AddMySQLdExporterRequest{ + _, _, err = as.AddMySQLdExporter(ctx, &inventoryv1.AddMySQLdExporterParams{ PmmAgentId: pmmAgent.AgentId, ServiceId: "no-such-id", }) @@ -479,7 +479,7 @@ func TestAgents(t *testing.T) { Port: pointer.ToUint16(27017), }) require.NoError(t, err) - actualAgent, err := as.AddMongoDBExporter(ctx, &inventoryv1.AddMongoDBExporterRequest{ + actualAgent, err := as.AddMongoDBExporter(ctx, &inventoryv1.AddMongoDBExporterParams{ PmmAgentId: pmmAgent.AgentId, ServiceId: ms.ServiceId, Username: "username", @@ -519,7 +519,7 @@ func TestAgents(t *testing.T) { } assert.Equal(t, expectedPMMAgent, pmmAgent) - actualNodeExporter, err := as.AddNodeExporter(ctx, &inventoryv1.AddNodeExporterRequest{ + actualNodeExporter, err := as.AddNodeExporter(ctx, &inventoryv1.AddNodeExporterParams{ PmmAgentId: pmmAgent.AgentId, PushMetrics: true, }) @@ -570,7 +570,7 @@ func TestAgents(t *testing.T) { }) require.NoError(t, err) - actualAgent, err := as.AddPostgresExporter(ctx, &inventoryv1.AddPostgresExporterRequest{ + actualAgent, err := as.AddPostgresExporter(ctx, &inventoryv1.AddPostgresExporterParams{ PmmAgentId: pmmAgent.AgentId, ServiceId: ps.ServiceId, Username: "username", @@ -627,7 +627,7 @@ func TestAgents(t *testing.T) { }) require.NoError(t, err) - actualAgent, _, err := as.AddMySQLdExporter(ctx, &inventoryv1.AddMySQLdExporterRequest{ + actualAgent, _, err := as.AddMySQLdExporter(ctx, &inventoryv1.AddMySQLdExporterParams{ PmmAgentId: pmmAgent.AgentId, ServiceId: s.ServiceId, Username: "username", @@ -670,7 +670,7 @@ func TestAgents(t *testing.T) { as.state.(*mockAgentsStateUpdater).On("RequestStateUpdate", ctx, "pmm-server") - agent, err := as.AddRDSExporter(ctx, &inventoryv1.AddRDSExporterRequest{ + agent, err := as.AddRDSExporter(ctx, &inventoryv1.AddRDSExporterParams{ PmmAgentId: "pmm-server", NodeId: node.NodeId, AwsAccessKey: "EXAMPLE_ACCESS_KEY", @@ -703,7 +703,7 @@ func TestAgents(t *testing.T) { require.NoError(t, err) require.NotNil(t, service) - agent, err := as.AddExternalExporter(ctx, &inventoryv1.AddExternalExporterRequest{ + agent, err := as.AddExternalExporter(ctx, &inventoryv1.AddExternalExporterParams{ RunsOnNodeId: models.PMMServerNodeID, ServiceId: service.ServiceId, Username: "username", diff --git a/managed/services/inventory/grpc/agents_server.go b/managed/services/inventory/grpc/agents_server.go index 07d42eda96..875f548f26 100644 --- a/managed/services/inventory/grpc/agents_server.go +++ b/managed/services/inventory/grpc/agents_server.go @@ -186,15 +186,41 @@ func (s *agentsServer) AddPMMAgent(ctx context.Context, req *inventoryv1.AddPMMA return res, nil } -// AddNodeExporter adds node_exporter Agent. -func (s *agentsServer) AddNodeExporter(ctx context.Context, req *inventoryv1.AddNodeExporterRequest) (*inventoryv1.AddNodeExporterResponse, error) { - agent, err := s.s.AddNodeExporter(ctx, req) +// AddExporter adds an exporter Agent. +func (s *agentsServer) AddExporter(ctx context.Context, req *inventoryv1.AddExporterRequest) (*inventoryv1.AddExporterResponse, error) { + switch req.Exporter.(type) { + case *inventoryv1.AddExporterRequest_NodeExporter: + return s.addNodeExporter(ctx, req.GetNodeExporter()) + case *inventoryv1.AddExporterRequest_MysqldExporter: + return s.addMySQLdExporter(ctx, req.GetMysqldExporter()) + case *inventoryv1.AddExporterRequest_MongodbExporter: + return s.addMongoDBExporter(ctx, req.GetMongodbExporter()) + case *inventoryv1.AddExporterRequest_PostgresExporter: + return s.addPostgresExporter(ctx, req.GetPostgresExporter()) + case *inventoryv1.AddExporterRequest_ProxysqlExporter: + return s.addProxySQLExporter(ctx, req.GetProxysqlExporter()) + case *inventoryv1.AddExporterRequest_RdsExporter: + return s.addRDSExporter(ctx, req.GetRdsExporter()) + case *inventoryv1.AddExporterRequest_ExternalExporter: + return s.addExternalExporter(ctx, req.GetExternalExporter()) + case *inventoryv1.AddExporterRequest_AzureDatabaseExporter: + return s.addAzureDatabaseExporter(ctx, req.GetAzureDatabaseExporter()) + 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.AddExporterResponse, error) { + agent, err := s.s.AddNodeExporter(ctx, params) if err != nil { return nil, err } - res := &inventoryv1.AddNodeExporterResponse{ - NodeExporter: agent, + res := &inventoryv1.AddExporterResponse{ + Exporter: &inventoryv1.AddExporterResponse_NodeExporter{ + NodeExporter: agent, + }, } return res, nil } @@ -212,16 +238,18 @@ func (s *agentsServer) ChangeNodeExporter(ctx context.Context, req *inventoryv1. return res, nil } -// AddMySQLdExporter adds mysqld_exporter Agent. -func (s *agentsServer) AddMySQLdExporter(ctx context.Context, req *inventoryv1.AddMySQLdExporterRequest) (*inventoryv1.AddMySQLdExporterResponse, error) { - agent, tableCount, err := s.s.AddMySQLdExporter(ctx, req) +// addMySQLdExporter adds mysqld_exporter Agent. +func (s *agentsServer) addMySQLdExporter(ctx context.Context, params *inventoryv1.AddMySQLdExporterParams) (*inventoryv1.AddExporterResponse, error) { + agent, tableCount, err := s.s.AddMySQLdExporter(ctx, params) if err != nil { return nil, err } - res := &inventoryv1.AddMySQLdExporterResponse{ - MysqldExporter: agent, - TableCount: tableCount, + res := &inventoryv1.AddExporterResponse{ + Exporter: &inventoryv1.AddExporterResponse_MysqldExporter{ + MysqldExporter: agent, + }, + TableCount: tableCount, } return res, nil } @@ -239,15 +267,17 @@ func (s *agentsServer) ChangeMySQLdExporter(ctx context.Context, req *inventoryv return res, nil } -// AddMongoDBExporter adds mongodb_exporter Agent. -func (s *agentsServer) AddMongoDBExporter(ctx context.Context, req *inventoryv1.AddMongoDBExporterRequest) (*inventoryv1.AddMongoDBExporterResponse, error) { - agent, err := s.s.AddMongoDBExporter(ctx, req) +// addMongoDBExporter adds mongodb_exporter Agent. +func (s *agentsServer) addMongoDBExporter(ctx context.Context, params *inventoryv1.AddMongoDBExporterParams) (*inventoryv1.AddExporterResponse, error) { + agent, err := s.s.AddMongoDBExporter(ctx, params) if err != nil { return nil, err } - res := &inventoryv1.AddMongoDBExporterResponse{ - MongodbExporter: agent, + res := &inventoryv1.AddExporterResponse{ + Exporter: &inventoryv1.AddExporterResponse_MongodbExporter{ + MongodbExporter: agent, + }, } return res, nil } @@ -325,15 +355,17 @@ func (s *agentsServer) ChangeQANMySQLSlowlogAgent(ctx context.Context, req *inve return res, nil } -// AddPostgresExporter adds postgres_exporter Agent. -func (s *agentsServer) AddPostgresExporter(ctx context.Context, req *inventoryv1.AddPostgresExporterRequest) (*inventoryv1.AddPostgresExporterResponse, error) { - agent, err := s.s.AddPostgresExporter(ctx, req) +// addPostgresExporter adds postgres_exporter Agent. +func (s *agentsServer) addPostgresExporter(ctx context.Context, params *inventoryv1.AddPostgresExporterParams) (*inventoryv1.AddExporterResponse, error) { + agent, err := s.s.AddPostgresExporter(ctx, params) if err != nil { return nil, err } - res := &inventoryv1.AddPostgresExporterResponse{ - PostgresExporter: agent, + res := &inventoryv1.AddExporterResponse{ + Exporter: &inventoryv1.AddExporterResponse_PostgresExporter{ + PostgresExporter: agent, + }, } return res, nil } @@ -381,15 +413,17 @@ func (s *agentsServer) ChangeQANMongoDBProfilerAgent(ctx context.Context, req *i return res, nil } -// AddProxySQLExporter adds proxysql_exporter Agent. -func (s *agentsServer) AddProxySQLExporter(ctx context.Context, req *inventoryv1.AddProxySQLExporterRequest) (*inventoryv1.AddProxySQLExporterResponse, error) { - agent, err := s.s.AddProxySQLExporter(ctx, req) +// addProxySQLExporter adds proxysql_exporter Agent. +func (s *agentsServer) addProxySQLExporter(ctx context.Context, params *inventoryv1.AddProxySQLExporterParams) (*inventoryv1.AddExporterResponse, error) { + agent, err := s.s.AddProxySQLExporter(ctx, params) if err != nil { return nil, err } - res := &inventoryv1.AddProxySQLExporterResponse{ - ProxysqlExporter: agent, + res := &inventoryv1.AddExporterResponse{ + Exporter: &inventoryv1.AddExporterResponse_ProxysqlExporter{ + ProxysqlExporter: agent, + }, } return res, nil } @@ -459,15 +493,17 @@ func (s *agentsServer) ChangeQANPostgreSQLPgStatMonitorAgent(ctx context.Context return res, nil } -// AddRDSExporter adds rds_exporter Agent. -func (s *agentsServer) AddRDSExporter(ctx context.Context, req *inventoryv1.AddRDSExporterRequest) (*inventoryv1.AddRDSExporterResponse, error) { - agent, err := s.s.AddRDSExporter(ctx, req) +// addRDSExporter adds rds_exporter Agent. +func (s *agentsServer) addRDSExporter(ctx context.Context, params *inventoryv1.AddRDSExporterParams) (*inventoryv1.AddExporterResponse, error) { + agent, err := s.s.AddRDSExporter(ctx, params) if err != nil { return nil, err } - res := &inventoryv1.AddRDSExporterResponse{ - RdsExporter: agent, + res := &inventoryv1.AddExporterResponse{ + Exporter: &inventoryv1.AddExporterResponse_RdsExporter{ + RdsExporter: agent, + }, } return res, nil } @@ -485,14 +521,17 @@ func (s *agentsServer) ChangeRDSExporter(ctx context.Context, req *inventoryv1.C return res, nil } -func (s *agentsServer) AddExternalExporter(ctx context.Context, req *inventoryv1.AddExternalExporterRequest) (*inventoryv1.AddExternalExporterResponse, error) { - agent, err := s.s.AddExternalExporter(ctx, req) +// addExternalExporter adds external_exporter Agent. +func (s *agentsServer) addExternalExporter(ctx context.Context, params *inventoryv1.AddExternalExporterParams) (*inventoryv1.AddExporterResponse, error) { + agent, err := s.s.AddExternalExporter(ctx, params) if err != nil { return nil, err } - res := &inventoryv1.AddExternalExporterResponse{ - ExternalExporter: agent, + res := &inventoryv1.AddExporterResponse{ + Exporter: &inventoryv1.AddExporterResponse_ExternalExporter{ + ExternalExporter: agent, + }, } return res, nil } @@ -509,18 +548,20 @@ func (s *agentsServer) ChangeExternalExporter(ctx context.Context, req *inventor return res, nil } -// AddAzureDatabaseExporter adds azure_database_exporter Agent. -func (s *agentsServer) AddAzureDatabaseExporter( +// addAzureDatabaseExporter adds azure_database_exporter Agent. +func (s *agentsServer) addAzureDatabaseExporter( ctx context.Context, - req *inventoryv1.AddAzureDatabaseExporterRequest, -) (*inventoryv1.AddAzureDatabaseExporterResponse, error) { - agent, err := s.s.AddAzureDatabaseExporter(ctx, req) + params *inventoryv1.AddAzureDatabaseExporterParams, +) (*inventoryv1.AddExporterResponse, error) { + agent, err := s.s.AddAzureDatabaseExporter(ctx, params) if err != nil { return nil, err } - res := &inventoryv1.AddAzureDatabaseExporterResponse{ - AzureDatabaseExporter: agent, + res := &inventoryv1.AddExporterResponse{ + Exporter: &inventoryv1.AddExporterResponse_AzureDatabaseExporter{ + AzureDatabaseExporter: agent, + }, } return res, nil } diff --git a/managed/services/inventory/services_test.go b/managed/services/inventory/services_test.go index 133ac98139..273f7693ac 100644 --- a/managed/services/inventory/services_test.go +++ b/managed/services/inventory/services_test.go @@ -152,7 +152,7 @@ func TestServices(t *testing.T) { node, err := ns.AddRemoteRDSNode(ctx, &inventoryv1.AddRemoteRDSNodeParams{NodeName: "test1", Region: "test-region", Address: "test"}) require.NoError(t, err) - rdsAgent, err := as.AddRDSExporter(ctx, &inventoryv1.AddRDSExporterRequest{ + rdsAgent, err := as.AddRDSExporter(ctx, &inventoryv1.AddRDSExporterParams{ PmmAgentId: "pmm-server", NodeId: node.NodeId, AwsAccessKey: "EXAMPLE_ACCESS_KEY", @@ -169,7 +169,7 @@ func TestServices(t *testing.T) { }) require.NoError(t, err) - mySQLAgent, _, err := as.AddMySQLdExporter(ctx, &inventoryv1.AddMySQLdExporterRequest{ + mySQLAgent, _, err := as.AddMySQLdExporter(ctx, &inventoryv1.AddMySQLdExporterParams{ PmmAgentId: "pmm-server", ServiceId: mySQLService.ServiceId, Username: "username", @@ -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.AddAzureDatabaseExporterRequest{ + rdsAgent, 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.AddMySQLdExporterRequest{ + mySQLAgent, _, err := as.AddMySQLdExporter(ctx, &inventoryv1.AddMySQLdExporterParams{ PmmAgentId: "pmm-server", ServiceId: mySQLService.ServiceId, Username: "username", From 03415335adc968fae8f8edf8acf34eb3c7e29558 Mon Sep 17 00:00:00 2001 From: Alex Demidoff Date: Fri, 22 Dec 2023 17:30:59 +0000 Subject: [PATCH 02/10] PMM-12624 update descriptors to silence errors --- descriptor.bin | Bin 700235 -> 698411 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/descriptor.bin b/descriptor.bin index bf7d2a9c780293e09047b251440d644bc14d238a..b086f56ea6f89808e68d8071853154bf35e3f4ba 100644 GIT binary patch delta 31722 zcma)lcbHYx_4d7I?^Ev-<_=7QfjbNi3@`&jACNLs1q%WiV-gdBBpM4wOrH4tk_=4| z5fKUQ5JW(!qQHnaDj-D>L6joWrHFI^X(H0TckOZy`Q`cYe1D+#J$t`vud~kD?=Gjz zXL}pZ-_&^6sOUS^h&_DeUONz7mU?;B)Av|qmbj(4Q!K`wvucT%1MO^4w9iV9+M>-q z>oEQ|@SxQ^>WG!!S%qTL6|1-CeB7#4y=lKSBO3L@u!bxr>Wddvdb!a+to)l-BDQ>E zwQy4stWm5*sfeE7nWFANOGMMf<||g)Xbo}dpj8^psLub^Dz`u-`{Lf6PM(;5&b7`bP_Rk|$A93QG)m2>i-a7Li zA^9&hTfRFgh7wPA${)i94q)bOM#OD20VKgpQm9Ph+>qY5#>#F$a0Xr-D zOHuV5&x*Dc!v}dciN9a4no!_6O={1w#DXJMnpoO_Js9iFJ-WY_t zu&Qt^=>(&$7}AE-65}sgE}X79W98#w9JplF6zeWp86xeR<%sBXE?Na*SVxv3obRnB(UkCH z>Eft3R&Tg$tz@D`XU7q3zO&NBtKC@*(eNOc$cq9oz+yRK`Y|g{e0bGrvZOEjxgE8{ z8#ZebW#WL%x-y<%Vth6(;?Epbli5Jc26-)owc4vCn2Qjd{)s!{{$rLeh83{5IO(t~ z=Aznx7|RsRFLPHUTvpCJ96DX;H5Pk|(d4TxtAh|Nb=j|2fRfIwSXc2Yj}^Jw2*Q@!1_LEvN6m zCk8$`^p;4!6dWIHs>l0^7b?9R@#lP&E;{vP8Lg7_(jI+k=pP?R8jkl5YCJmRvEL7Q z;J0DGnLMc?ao{eNXp>~7>w3vX?g=s;A2RgG-#;<>>qKFsoW(7A^e`3gA$k!XHQ#4&iSAYHiR?s4}KKL)lmB$8#)qDM~AiI)R zUnB;xI@w8H45^lE;df%6&+=SP)@&;NPfu3lsG8ze=`8Q2An*q3D^h>99c2F76&m{Z zkjI7&j#r4hOmrrhfYU2Y0%Jvs2Vj|~3xpdo*H?8zJ?aU;85AP;q;BVBJiiSaC`g_F4BhTPHTTUwVj zjov4!GFVo$wODosx?jd^PLW87v$Nv9Ot!D~R42#=_x7jy-*sCupF;LV(V!N4Ui`K@ zNR)z#UavFD6Q>GU6Oq!3)FTdk`D+&2Ck|w@<8_X?K@ORugzVncT$a%005R^2l_EMm zWj7J+8?p{!K`xsh7S&>nMV)>u?cbXiP@Phny%iM&`RsK5OHPmr%YAje{-^1U(fdVJ zEqHTJ9u#F^e~73&U*qtj;twmmp!!rjRvzUeqCviRZUD=FIfp$Ua_X}oe3BjHio5P+ znI>Tnz<;;-;wA2h%Db5t8m>kpT1KnK-NZ)aW*Rbn$FYSPTQ0)`8U)S9-F^d~`IZFaCZPuPvtcWG=<8dipJ_R}}hv^j4M+{dRh@ zdQmQldPBw^?2W|v8UBNQ@lbD80Kp#Hn>Dt*coEEu?~NgOV{ev*fo3lq4&u#&rlNBn zFiZNdRLo8~^kFR^$z%IKFdyv$`)T5>KCIY!p|pBOA2!cw{AM(WA?haN@kHrEkNtV@ zV^0ow;;GUn3U?=H6G4aovAk_~JW?9wu-owVHh?#@fMsdercCxz7 z?{R|B8KTF7Y(T;7FI6;%r}rED=#W1TCfgOihp%}V>HxJS-g%If#x{J;0yl0)BF|yc zkmWZPed~HLQU4*fG@2*&KE!HAbE|)Ph&74kmjo$+ZAYviimqriG{^#K+*EXZnBCvA zfj*duD!Eo&gHR>6pfHF99Q3p}%d_g~qBK;@vvLhW#k@Los}DcS%2T5?MdB%TcUopp zKj55MUYz|IQ^(=ckS^bE_PCh#6l;)DD`+lD{W$xJ*gTCjs=oLX>mL<=%(9EbAmO7t0;;w(9cCG5C{>dJWMjMFcGgyg;|BE$DEev|f+Np6q&k~Pk+4V)=N6|q> z{tH*6QT4)qu|Fiu_nMY8?~(a++I%-yUNepTL0cY>Ss2_5qn-t$Us_gSUTLDgc=dU& zsrYCHl)QfR_cPcZqs}N6&3h;z%FbKa)qj7Tb!4gi!166O&d*s^zL;N&_Yvdfu!iY% zf@h)uD+xfl}k6C`?WbND7j==wG`X(z`kT<6&lD07BvbQNH(0hE*^i4C0hEH?*PC< zUDF5gx|LSbKoGB6*}1_@k{HDKaIxwgRsdpP10V%;P4oajKhHoAhqL^8K|@K5#ra6F zXD%ylHIi9@t`h@gB#W80VxS<&a)aT~z~VvN8O=Boe( zRuq)6EGIX(RZcT$;|Hg-n zF)+t7KT|WAtece`+#(y}aXvvjJfHP$J|U!VP$q<@#6g)rr*wy;!2CpJH4s-E-m6Vu z*$Nv+ZEzUl>sG1{M-v64S{GR~>MHU0vA$cM|h*3qjOwt2_ zILjnGAc(W5MNEn;9*aBkSY*9OEM&ve=P|FLO!XM0`h1n@_zg$q8%F?PZ@$S3K-ima zQawf)`WB^nrmknl#V4JQXg0ndQE*`iAhS7g1E#aWsLejH6>+v8~g^bIwVpD zs5YsIQV^>tHL2spNcrDSc053EfmO!?1owT@@c_Yn-*mhfiTF~}@zAaZF0kr&fZ#4Q z9S;!PrPT3S$#&5tmQ%YlEaDRR-~yX=sY5JhZe7`(PzvsHhS>%U9x>_=D{kmc?P$Qk zQN&<{=~I9(vBLBzK$uuz`c#a1#v0Y9#0&2*r(})kQYZp(jpnHEp@4e zC2PZrN_}Fj=}f2t%39NzVl*VLlbs3YnF=S@na%_V;yTlr06|Df?0i^`(ufFX1=Bw$bH$yZ@h)Q7%e z*lMGzhB{P_sE4*Ul3WO%03Lr$7>M=6LW zO}eL04>>K<9WBz>aoVIiAc&_;x&wlEn$o?E^cDT&jA*u$wJSYiR3t_AkTcAyqn)H4 za)#9_fO=UxHSSzsk>|yvrR?_f3nVo(u}Y;La*=vSmy(OdX&gk`7fs&)grSSnH_9ai zg_p$r%UFk!OCg1N#UPzvT~jG#7_L$r0L(F5_a{Iw$8eqEfMAZ{ zI>l3I92qMr*06&1_zmLNuu1A0W4T@ppcKTh9IJsxk#=cuXFQL*$)kC{PE?5KE!f+2 zUtrC|+bdaNjq%*emuZ+rX*hw4s)ejv)LjMLoM6nO2<9hnJ--Kp`3W4?jOO=gltUB6 zU8`94(upC3l5wI5JnDclkpfTi`!q_%NnDIy#JaZuz`0B^K>!4E64%pwKrkoK)h3Zn zBP4K<#J*NMwo~T37?ZP!+F{p(!X_%&pA4vPAcX zhKhlo;FikyPguP+;o|t)x2)KV0Kh;kfI-Ot6rXniu+Gsd$QiA z?D-NLF-}spe!yL|>`#~3`T@_c8$2S}xb(}!j!)TR_bdx3l&#Cc7AaeoQHwPZ;Tmyg z6_0$*qb;1oZ4V87GQb8I<2Aro#l75M5;;|a;{7ocHt!iRa6R@gtJblq$I_1wzIn@BCT5)XXF z9xlNF(;~%vJ=g2`8Zz$dIR+n6*cx;dHi#>qvG$c4xD}I^69+-rz*E$U7mzA(EGtqF zg^akfkw^A%Y_8($Gf;CQ_o#^T3_AHu+^R3l0O0}wserAz^R$*odtioq11F~wl&OCHNLrEuy? zo>y$3Te;O-7jho2By3D^nA*x?Dsxd8rnd6hO-yZ=+R96tX;Vn#uejAh z7uv84Xe`;V^c9bp&`^GV#p{%q%CPhmZ(asVmE;vFZwpO1Fa>B#kvwk;O_4lr3r&$c zZ&Rko66AS1x4Pw9>%+JyzI zgsD9o8&fJjF=79jTP<}vsW1g-OwmgB>o5~&rTcZ52{e!Ynm2EuEv3czUT$^LmeODe z&{#@?rM*0cZho8Wez?B?T%gA13@Z($_VNxLgG?w-JnkIik;BkmJJD;fmftuC2f3Fm z=VfscphL)&mw)TD6fagXE}CyTff(TEi4F+vcRWLF#sGr*9WSV_xj-j5SF^oLi}Vdpi7p_hCwZpo#DKE$ zO+}iD%Y2G+m5P;_76}@#@sR}W6tCGpMM{p$r+7n^dzmzkJk7aMJ0MU2)!G{n)YH6H zk*3lJeVP|H*3F{s_aT)O3$W5~NwU5Vxg=TNhg?Y38O}Rs!=zDw=5mono#A!bm{L&B z@N&uux;{vovz)iqg``P<=5l$J;GX5VO6*Y?+_Su8E6s%{o#R}|Tc#8tK+`OV(7CW# z5}|XvT`5jYG&r98>xM2*NO1ukHZR z&M;f+2Ott*n634Lpwf?FHuQt`Mr%@k8zGK=#oAPk2#rz?9%1`xHjO$kI>N?mnk1)I z+={I@-pps16*=iaXESkqP3|HdZ_Syp6daZM$TV zZ!g$ZH!*M-YjF=CECMTwfUx+2t@mF5VethU`!A%!fQaJ@c79i>!vs|vU$E;|$lZu6 za`#1B?nYDsAQxV=^=<^9EY!OZfUy0djg;mjtN|6$|q zHaP(VtAHw;fT;TqTQ9x%AW@->G7@S4q)rT~EoC^Mmw zN@Z~!rJ;b}zGmwgV-Bs)UbnfLF#>@LsA3NY>gzV19-t@yg8I5Gr-;-n&`g`R(uFi6 z0IE4W3PGJ|SJrK2ie>E#3 zX2V>&u)Qe-b*|m96Akwk&y728+L8Blp5?;BH!063D{?6--mk&JbuHC{)TMyZQ;4Z|(M!E<{#kL-@0l{5p>mfUr zvSN{~hio8F0o8~N24!M*Si$g9dzhmGH_=4vVc1S+8FwSdvyg!M=S4DJ%URqNn(y7V+t zc+bXSy>p^s(35`}_((!NzL$_s^d){bcq=K&80TBEot{Lk1}hy*ngOHx(B~ubGZ>@ zK-64r>&;(4*j#R7V}hChgx|~Uyv|aP2`WKeZrAQ41v!uMV}%mrRse{}3M0sXvQP^$ zAZ)K7L8h&rJj%OOw&>iHw`ci<0oB*&fMQOOkXg^B9 zT|?SW8?<@k@>+3u7wb`p-vmPcNt)K$`q=@Lg1A z0pVl;)wKqcrFm-W1rXLZ*oE|{n8oX0_s5QG);`xk&5gFFmJ4;PNN4Qe*p}*3fG`WF zW;KAQyvfGHN0d>3FuRHRR58rv$DOb2$WP+SJ*+`yJ}Q1?V*`_NHlHG~UFPh)_>DMh zH*o+&&Fv;<0bz2x$yq>zVY|s$f+`H#DQ63%Y0!7tRwuD)JgakezD1KBU=?LRS*$nC z0AYP6_g$Oz$?c zNI;n0ZLS|dWqP-nMdnleuf@wS-4efH`s>g%rTN#PX-f02$u!-H$)_~mC#sI(zC3<| zxX+|2Ac*^H{bURvi2H2)WK2H!f4~+MZ?Se@Qj#ACnUv%QOp>D%%mb9#{@P>5|$W zvTJ7P(?uYU*z}lTQ+Q1xdL(3$h#s-^?GKcKdBo1F75qTEs`+&5>4ey~pPdDh?mV3^ z@(T#&3ENXj0tn^_8Vj3BA{J#QwGigZ2NzBnAp`{Tq^*Sz5X_S#ghi5xCE00P{P8L) zK$~=5_H-CyT9KW$UDbO~3g&6*JtU#|bYJ$2EehK47GS1;c_w7ig6xcuP?Ums#?H!- z5}HpBFr2f+$`h<}Hvpu^Iiq@jFm%ocC?E`-GXe?-L+9*<#qy>>J{}Y07i=+Pg4af0 zs5G!IgyE(I+67zR=tp(1FW7l?r2OVv=~(I6@~#ImIvpuQKoFNJ4LTl1H~ysQD@B|DcU`xdVocdpox>srX_qUIIbE0pqB zmn7$^5nmu!1yr&Ch`Luz#sR|W)ui|WBj>J~&Pz~r-m6A@>r&spX2cf=Ckv>=7f_aJ z@dbqSYeszQ#hu|!WTc~(g7r{yxPvStNv|ixcZ8!g9S~*#)vOT^l}9)kO49*hc7y{> zZ;VhR;?8I%vRKSL%!+G_cD#fX-ULNqj3W*lX5IRYarEiqC@hU}^gIC&mc}@Go&bom zALHnG0zq~5V;rry2|D|+j@I0J01;eZ64$yc<+uo)=EgJXMJ8$5^LQ5mHDn zh2yK`5bA&;oRVfztP?cyOm;%C#sN4yIb@S)PIk0dqZI7P4#b+IFCm|WbmXGEB>?=M z;^;*=Aed7eEq#DsPI0vKC1@vWs(Ab=ZhGQ3nw%O2hct7lqm>V(AWn6(@+IhY=`=@9 z9?>Le=CqJWnmNtUlSh<-IgOHuCXWfy%o$?E3D&dI3`bA&a1a(|IC{?n5Ef=Qdd>(4 z3o{%@-b@-J5+t6p9I-o#PlMZ}mb1c0ky_4jd^H(DDX6oY21P+5$%IB z<(!a7N;${zRbNFZm~$LF^+We_6Qq>$9I3NyX(ECHV9yKLq?Yp>t+OZvd!7TGRcxr` ze6i~!tLQX8JZX~6`Qb^EY|eM$YA-Nhk!;R)aAQE;ZcJDiSa3RG(I_?*u4jO{z|jj6 zKu{MrxEZQk%K&wOQ>U&J`Ggh6n$b}r4}kPo6#78>_=_C9yMj_M7dcww6ILdced3ST zA@cZ*Cf^P(GHt@Y9rm3}5Z`vR$QQ(&B~Ii$EtmzUxx@%&0m<9Dj-Fuy!78BAAwbl9 z*YtisSbdjzznozMqo2I%=zTtdN{HTd^bEUz6sOv#F%V7`P{jpMmTHj)g!O7tV;Y$1 z$DI$H$TID7eboHG@othLUtfy+QU~vHP<#Pl7EtZ*0iyC!C$9D<0AY5igXMh_m@SMu zE1k$e@vAeesAeH5u5_^0pc!@{MPjuS`i}PkAP}ofAOKNywUK*3*j#Po9uRR@ZRDPy zio|k-3NxTA)^ZOB>mM7r2ZZ&HjocGd);}h>r#;3(lKW3^4Mo8i z)&kZ^U4e~tYWx#(5m5^3pU_35-~qz=C*~RwRMtPCYpATF{-+LJ`KY(SD;3R$Gv2CD z&bD#TG(n@pr(qK`N_=WYi9#AB)~ivXB>0k`U86u8>BLZKB`@R<9DjLEIKzAR0ZknE?x>Aa0`piylcW zq|sxCV`b-MBnI5pKhbUQ6Hh+$yFmk=99*gv{-^+Js9`QQjVL?9%S|K74hO3ZdUd4` zBZ|d$iB&(a1g;v5B)dW;jU>Aqz1l!2n7bUTHb|BWX&~97L|smvaRBT+A)5x1Jx0_~ z3icinb=tcqq^b8_rK@OH-cb$XC~v45T}3IFdr4Pm>QhLA$$m#PU&_jmpfr%|H(Cye zHupRF=}bT{_tV^hrrm`W29j@-BI7rR--Oqk#*c5p1f}ug8>7e#;?5x_a#X8Z1JpcZ z)U5&O&|#yRQUrwA z6Ao62q{u~a=X)nIR@D9pid=+>-y20PqDY+8iVT22oHc;}MAfrKkpW@ztWjh@#Nn(_ zWP&OVXN@8kQ5?=2MZOyl)`3-+0cEjPWI$LyZxk62*3TP7CaA2RCq<@}Xb~y$58@Y> zS<7GJH%$K!nx>Y2Fjo+zF#Us(V?dbx!CXLs%JdI(0hMXg{}FPWSDfgJ_s7N5y?A4* zND49z8~;g=e+(NTLH^MQauEsgPg;-x;NDLrZ2`gj$p|tam_M0$dl8+=6`Hq~qe&9v zDPU=DNjq_~JeIl`5bVzfz$JR)S0B9CzOq!^`Oj&Sv)xQG;al&iJ_01&QG zuAUnM!q6yJ&y4|LXq2nx#(*$1%GKKeMI_13;L94=4v^DS9024f>6jhkH)8f|=mkmev#y>fq7=kuT|H4OqDlR8t{C_&>)jIoO+FW% zIZ5zyu3lxK6wK#b%oN+9Gd9F?zi#9uH`=0cV!)lf^35Z5tboCqr5LfC&SI;8}s-%C>)$_=P)MqBR zm3mnZh+s@`wQK>(Vl7*Mus*@n6Ujz#=O1q5WmoMMG(ydPxLURvkuKarM3dAOi7V1P^3dF0f*{cPFbzl`{Kv}G13lP>{ zrL3l@9w4m0>gs(1g39`FIO@m1)#}&4p~0ifaL{BdT!^x>d21EgUxflWe^fHbS!X8Z|<@4aFo|GZ9zp zHh@X8HPd7@Aeb{^|oy>Y1bQK751gzFiF=NA(5o(jqp@Sy54a0j%_i8 z^G#Rn*aCq0X2>MzdehZ&D3pTvri(e$T{1|Jt_7}GFrD4jrdVp#0#~m~0l{40>K8=; z!Cc_h&X@D2V$!Nbu2o;$^)t85%QtZjpGmE7Og%{q2>v2hzqNz(cm~Xp!+XE2Hw_UyMQA~36j+S@;wE0fhCdt)1M&eNl<~tanZF)bW?OR=MnMKnMY#np**)?lLz|Ju?6ZtIOQB z?bLnpCUIwl8(FQ*HbK=DuGdsfu9}e9l}1^CaF&3o%K)P8N|Q%`FuT(9OF$&jO4Bb1 zs(!iBC~FfdT8Vp!u2xn+I1Q+r288uhu2xn+SYKt7wQ1b>*o}OmeQt`HAG@A&SqZ8@Y%t1NLi+YaQdt3E9ax1KP!?-t1%&l4jIsj4 z`WHr72`cMfkh0S4pAu45EGq-v>Tdjo=}n<&YI&2nf+&UQP38&$!t^F{1qmwCo9GHE z)2P2iT!QIVB~nkfgr-SPw}hriPq!F7Eg?PKs`V5APHi=v2N2AyMo$63+-mf+gic_a z)>8n9v`7Ggxy|S)Aeh^Xo|cfF?zlluaRBTcp~s}BJB*&96zm;FPfJKov9csR#cvRI zg+$WRUE!&cp6)VwT0%kGqxBR3%snBK^mLEWQmJkLM_J4!)3XoR?g3FgjcscTTyH@3r`pqUI?V@8Z*Hw3KAxw5y-m27*;U^~4__>YjG9 z)!PezuzK1pYoT46MlNWx%~16$&Fjc)GctS5=r9n@5>N>QAnKko`3DHI=S(jK zL;{{Oy_lft#pjF;H#+BgKMdxMgwYsvCJ#hz!hd%TV*Gnc5-mZq@WbGM|zljDkjj=9wx9& z#a&17meq>d+!qgL@_4HkO3w5J6D5X{k@ zp2Y%!Ioi{+*fR2Vj3;NYZ2%-nGD&sEczRWbQZUDO`rcU?sqR>hKDBs^HGsdQxxmI> z(%iA0zI}#LaL0O>V$sCCj5K$gCw3fTZCe6>IWA<9=#KOBT{M(}InL8}(aK14$BT+u zycLL~x#L43Y3_JWPn%H+;&>0!X42d;(%cCmqb|P#zLMll@bnZG5X1?dp27lxIKjgd zmZqR(B)JnkH3bF0Sx@xz6ciB5iJqQ<0)jcw(^Jqgn!HZJ_Yvu#0|2x+DZDDAwv#-) z%YafaCsBOl?XNPD+sR^A7N3sOq{-{#@H9znCwuzt7fQjL?CHB-Wu&%K#9P^%E(xja zl#objJH^vCzfcO|6c0DQXs5G`)OM;T?;uqI;54UtdV2y8%&DH<7ytxws;4KfE#l5} zFY=nF*1|1NbGoM|uPvxg&+zo*6$n-VmHq&t?hH>)UIAfshG!ifXZn=SfB0b$txhN&-V1TK&!Yj&x_30KDR>6d7hrUwj!V3Frff~RX}AG5Ov=$ zp~wS<**7Q_d-XlYPHeT)}*WNYh49^Q}3G|3<&1? zMppsBeBbD5YdV3YN>|Y)>FUyuNxHh!=qgIVTuQo1defS8b-C6X0Ex8T0D`&P=nWv4 z%Z=W&CRJUb^#%ZKt_a&CRb6592Bl!GAibd_Z)=L+Do-tW0l-`pGD%ifd3woaP`E;1oPIiUi~p@uO>8oV~V_N2jUJ$=im zHA(O~Pdv88t1S`@v2%eVpsx$*B*g3J>&K)lC8JE3oo)si%1*P{KE6-EmF?gQ2*ZOS-oV7K(Gp^o@M|<-Hl#BS5peB z8@(Pq)g-iS+}YwqzS3sfqUsjUQ*RHnC9_`|Jq5yP0;(thqVAU_N`Nr?rRjWtNS!ZD z=Od^(-2QC#(CEfZ{je zu+PK+5H@xydP8xQ=2^dK(bjbG8a8%NOy4x2{EhlA!)q7;oBG?x+(jT|(WlAvnj zAYDq;2F6P&qvfQdN3@Otz^NlfUjV^8VssP`%p*oe z%jpD;DIIMIAd#M*0)lzW=qMnV$4Ey>naW8=Pe^3~ktU}nj4}a&c)}7e2O8iG34VikGW3;H^rWXZD^UvKNl$N9mQ(yrYvl$&`=`xJ5fIGNM!5mOJZ+S_ zoK*CTR&D^ac_wU=Wb}+tZj^#~#wd3=$>=$y+?4=eo(q{Im*ctj0!M^8pa$c=*2K;NI@?e0WK#6 zy>z1h;|S=NLORLlB_qHn1^to{;BuPKUe*E(fU9xY2rwX+myG}ef_d2paC^Mb=tYM4 zYC_u{HLrP|dgHo1>BDu;x>ZUn5Uc{K2hjjg_qtafuZ3bj0EE@+Uawn}0C$KxBmBtI z+H40@9pP&+>p*5l`g%eOgwq66Q36EWk-lC+0>bP_Ur%TOk#!?|J)tG2dhJMGPiQ+x z0UqV+2`wO;22=tJ24h0ab z0;*5|qVBW44n-C)%s%TQ7DW)?j&Wz4A9+or7W0D4j;J}#$FmS5z#Yjd)_29c)7|)u zIE*)O07T94zMjDX!sK{g&tL%&hw;9i!4gz)81G{SOP}oNNa8m^>}kd8+=JgRJs~tr zL73p{p&X?!J;BFkK~PKGTuVB;Tro$7Cvg)<4mI@SrE~5^bNsPwB^GPyyCZLnQ+stW657 zkNOC((bZUy%z403jPYa2pw$prlCmy9B zPV=#&LjvEC)OLoimbw7&e}=D@x`1HL@byv`5X>3AUg~zjn$(ZX(cPgFYR>fWNH^NQFET}sW+iI%O`B!@bLv|%5y-N1yr9d0z~CE{518Y z6hN4L!^by%=n0!Hac7|)StIT%5yMp-5EuRyTa(XuyMm6OW0qTkXO@ z4-HK`@u$ahR-+E$gGwqsfUr>I>sOWm(NvYMUs(o3c&dE;$}&L}o+=-&EYn!lg~GGg zmml2~-xqVIba7~!g0tAy6D!n&>BW=^^nti8a^30655&o*!*BqOEeY9Vd5O7jCxWA!C{I5%Jr)R7 z0o54;qVA{WssY04r^y}*42M27J(i$K$xls>t)RqNXL>9UP8Lx0SU_2-dn_QVuQNTi zYuwr3N50TLcSX$&zJ9o*tL(9#`}*k;K$rzoPnQ6q^5?#Ox&#nrKlkx)Nppmv8y0|m zRW3L6@Kk!&Wos zcB3$ClY{Qv_zlzBLemt4ZD!C#DNJuOgDxOUZ!?1~L1lWI8Faf*-`yc@Z_R7B#BZ41 z5t^oEcNjfEDNOGmJt4K|MrfCq(wf%;k%re@A(1-kE?;k3qm-)Bh(&{SH(JK*5hqoP zw2Iji5~+*s30tHtx`$f4NfJ?aujtT*7obJzn0rGab;8~PeR99=tNV4`WS`vcC+f=`_HNYOz7Yr8@OFqhEn>b2iPY1+@%0xcP>L46 z@$p_hsTUyP{*B-GPC3~jsN(*O-{cP2leagj>fM6arQw2aU4^!Z&`*)*N&QaO@Tj4i|M?)ela*mqrk5UkiQun8! zz8fuaj_aWw0L~saLp>mv$IVa=2~)$UH+<&+T)Aov5Q zgaZ(DPZ{9=gw<0?;Q&VTP8s1KsKR^72uF8H-P1-mfZ#Kr5)MFFs)Yj()=wMZ=z;r; ze&oFNxd&>V^*!}Xiyl@4k7S(lE%l@bAj|@)r?>!7`JA7lJ}v5J9N;A8jrOvLaY@|-B|zg`jB$MiaV17>ow)XHF9Dy?t9U-LaQXZlY`761L4Hvpsa^> z0ut%`E8tU;PFUIreNZ_;wO$SQjHDBmbV47(6-PTP?#v9Vx8Ou!LM-gaODbmuj(i=5 z3gN`eKs_K!5KhbtnswDq;9~{Otbor=I>EFP`k-=xYRwDyn@J~_bV48MB%MH&g@N@R zoG4A?-|$Cl5(Cv=sd*~#DvG1vMaus#YztTXRi`9a{wPp}{`HXQgM$Zer7 z77Z>R1RZ~-x3BI zg?Ff=(P>TK$i)L3!E^h7wdIFB2*QyyLB+4MBlsGk^GU$hB^`0JBl@6ngler1_~%JS z9O;NY)JruWdpM>5tEZrgi0wDrwBy6gcuDK4>2g0ItrG!1m2|?FPUu7U zI1A1Wf7j(qVEq(`svf*oB@NnV0!MDwQz4u<6R0~E1QCfd!Rbav3h;7ZW{FWMb^Mbfz%@L@3{_A%{_KB(NGTEk;}6ly84k4bm*A(gE7 zQw5`A){8Nhk`?MAs!H)u?E8Ch{JEy?__p5Ym?LL*a47{YjgHm5S-V6#rK4lLey3f+ z=O~?LV|;AVr4;RwKB!!xTF=M$_@qlI(j|RJT_$`R{-u~TCC2hPCd8uq@Mq@=ZsEn1 zwA1=hEP1_B;mu32xEApI1^+1<)k;M+8cdPc|)~CjQ=a?O{(-pA5z}n zli^ci)@-_7aOXe^xO0TukH0dxuFUH?Y zI+3oO&CIQ__ia>4ZM?8=1rSRPy4OwJaun(VO2_NiT#gjydwJRisG`II%d^ zs4qT-MPoJI53?7?elaSl^P~pszZ2utNiS+>FZ4m>1=V^l#+N3&s3E=3hkhr$z^95o zj9F`KB+5MrQSfVg$NE=&c)Ln^OZmf?BVU1s0~zq=!&sAhv_E)h+5Rv#aGdcc11+tH z@zqIxGPFPXpz?=meH7!LB>l;d{^Ɲ^Rhfa$uJg|7{>ygS7Gy?M6!3$Pt-<1Ivu zThW)+#hgaE^TgrQx>#{P?Nl62t&9C?v~enq=GMpf=SipVK)RgF>4VBCs`W*TZ%#Ue zE&#dFhaQkl;ghCYW7gO3X@L0tHvWrBdZBu2%#ojtgVULCWNWPHz1k7HUu|!V4SLZy zg6F`TuVQ>h(veKPj2}sQQB!)M525iz=|q-xLLXF4P_3V0{A$vPEa`+k)J!^oFC`93vBu!TzH4NN^<_24M&HiB_5?rr|88Pva-nI`QdKp~`#3l?V}5az8e#f= z8nnrj%ngIp(OkfjgH>~L{?|ckE_VqvX8qovso8gI7@B{4sT-TUdxMdg_&f1xB=PEG zZs@GKnd#pIBh8_G!G1HY<_DIW{?PImbP%+sdt=fSsT^v%@i8u9Sr`IG1CUCvEK`Z`Pu~| zbAs7FM0GG5z7CH4zdUGo<(pu&vez{5qoA?*MO_q`ekZBOG#m-~nMU6-_U8twrHuJ# zGjvBV@?W!6i)^NmS(;S?RZy!;?^dd}X&$O(N`cNOs9JMcsJfV|Khe!iqg@#7_w%S^ z?hRFQm8Hd#pG2KZ+m#f3E=8d&sxnPJ*Ew@Wk*-(wP$e@wr`j{0FUYA27~m&!>O8I= z)Y4o(kPd$tsje!9yQ)(4Gi{Hf*X@z&rYb4gxH3A+{4}qcssd<#Bh}XYBdkRjLt${jo~*e;D7FS4IQOZyTx3O^3zB zD=)t4{7e3F#pPH2;gTy`7R=s8>L_zVBh{R&YSI(;?pm`_>$4igxTLi4aoeb>DvM)uQ;MhW@%GZG`}AcbvOTLq4tO8#x0;2)k^)u z{H>*Wv-zAbZb`|wzn*>OX%~Oj%udOQ38v~B&3vy>q4~HSmvW@3sx%|^L?g`U?Nu)` z^JK~vOJ}#XR&VC6$;7S1e73DR&)ok%*$&x`<1=w<)8s5J<*V-Mx8_hA_3P>nb4jyt zmtXel%SVkYciLfqde{8Co%&nm7iL2ZHc#os9N4*E=b~~O>AHcgGeP*PxJLTg-a%bt ze$+wj&CLvL$$4FvAYb)RFJ;cRc7}hYTbU&#l{dfZqH<>Jo@j`;f6lD#s#Qai&g#TW z_+N2rG4@s$^(#Fg6Sp;o&sJ?`^-!0Y>^Z8b`K*gNCug$O{{C}R3v;lCdfC~}3^C__ zN)KP1qZ)tD_?zBryC37x-+QRj8{X`$Cbld+qvPguch;!0%NHgCXKp!3bu{ZosMAX4 z#+ASP<5hpS{CDSHdf`QvTzXZ@tT~|t-3}Y63Q7DM{xOni9R4Jk0%pJ{b(UFlqS}_* zsH~G0jzQu3nhr-JJS#`3t@wK5d%7B57mY>b{`)>P+02(fDp2l{%X_ zO_7Yp!)#5GLSxRlEfO#G{AFQcrS(6u9eeaU5i z=sRK4yEg?rhGcqn>};C+QZ>)H&P?Ak)sD&+GO<{*323grkjVaXzmCkeHO$u)7c%B$ z*sbiuuV#$sU#b!(e)rd_et+r3sT;{Oo_iL)cf3fo&Zm~uS!z$qS2A%)ioTzDrEX?; z2^GBjOnN)LMAFSZQ#F`)w#SbA~b9|9z&ajZUS(<3eEQNFHAXN(wFlGLd67Sf*EO3zoEquPgkB$nNiSSl%8 zdX8#i-aK2qUGDzM%l{&R_MPs1hBnFcu-V%6$Es=VclvXbAM|(LkH6nvK`zcUZFu+` z^=z@(qnWr7rQb>BQYX`Aq-v8t>yqF9@sg|lP}4bqqsmu#-i#5wOHJU^LP|Rn9lome zyDP$XCs22}=uXK+|DZclf1%poFMaf1SV=Cs@Y3&Gx=;9sOHV#Oc9F{G%a?98UZkpY z65S6k`oFK%8#H4sQU~@-OFIIgE2RErWSISmYY%7`v8|QnPel4Pc>3fM%~k|)rlhKaZXN}op1sWJzgE8()7}+U(xg?;$|IVzYSS(*#2R{|lBx+hyQ)Ss ztO?qAM8ld6of&qk^6iRxTCB@^_o1rDOzLplXiP>zBFX=5NQ_u0@ zPuHrGt&vfgmJQj->K@n08`mf8PsNQ;+J7VMPcr{8O^x!MJ~9nIS~k2jO&!!`STo(< z6lSV!jhn@tAmzAxJtwf&eEd zYaWkGh*VBd=EAw^__~<$t{`_cz@##7;|YX0MYU`dpPVp*lAa24q8c?I4g#1{RS>#P z0+>@(uCa$Or>as_GAZK#G|gOaujH97RbZRox;Un{=j2db$d#YlfJk z{;pb?4fm?veJQYUCqj^?r`M<!=5r)%P*IW~W4%(X&;q+I1O0oUK~bBv}!QK-{W+ zkjDcl<|1xYE-Qf8xK+8V0Ak}-<+36UnA>wzU{w&uW4K_O7eKgkmCFkt+_|bn%Oo#i zk-R%?UcfAH$#zDo=Mea`oZ0fafCc7JAQs*k9pR z9xrz30f4zUWlDN1RxUlLg}KB|be0f|g2pv>(7{ zh)dHhB}tb0B%xNCN|KCb<`e>wWSN)sbt2Alqs39!cS9bVXlyAD%n_&%y`&kBLL>Z zDN{1zVV{lE!hG0gV?kv9QJake0Wcr+*$9OBsLw_q%ts{~>ykc6jmH!>qgeO);BOu- z*s2u}?qe#~E=emO+{aW0yF3;oC06|~t*{}fvC5|v5F4v}S^=@K%BNL9QsZgvoycMX zfcdmfDj>|KeNq8oJ}nbm7Mp^k#yXc&0Q_E;4y~ldI-gY3!d&N*svwK*vo@(r{evnT z_^i(0Nmdmlt6p+h zHT@wK_LrP`$vZ|h_FwXI4v77id`=Z*@^7#?H2?r}L&}t#+Te4FT9_MrP8B7mUYYff zI}*Vt{PNAeO2X~B;yWD8do)o z+b2}AX*08}hpwqB1{yavr%Xwz%_`r*F(s)stD4q{5Emt>w*GL&45FBE-|A-!5F1I2oOOFSr{kXCz?x&O~<0O5@Z*`Aas z$+So1T05pB(;n5XHc5%1B-2MWC73_5&U}F5)DcwMxmJ1K(Mb22z621O6(27(L+g2Z+%Fl0SnJI+X`i(AK=w zJloey-=y?_$|Q{_v@;u+w8`7O2@nGZRqHm10#`~JeQhcqQD^k|+Q*ziC|~t+KgDr9l@PfhFLB#hn0!i?U{hkCu+B60z#jtyLM03&`MdB zCTX+(QciM@uVn8%DeYIXW|DS^MoWm3G>IlDP$?U>$=ap>fNPzs-I@f1Ia#|D0K%NC zT?$mnnlwcxM-ZHqNk!A9`wG&XCZ{ zA)=8?#hEZUM3~c8sj$yX9|5W$&eZM<0fabHhPgH&f@YbkSE-JDW~F_}RGg)qpf^gU z;w+7zAC*v;inGmzRqE(Ivr~%9zu7w9Ey>?Tfy}?zx@WIs{xy>McdP091Usr*Q;N*L zTXnvRqsaWbRd?@^h<_uQf4A%J@51B$xBIz7J?z{4Tmr(rT|3!tB%7l<_4j0dKpzUM z;!_RzPVE#Q2>DK#PydlzAQN%EnZ8>6tk3+^TbY9M{S<7JOu_j=IWeIy1@AG{PpZ*< z?@1#sbMGEM_ZlU0?;bz*8p+&S;N~8H2rWoElexFR&pm4KZ-LA`IsY~i;a;ed^RGGb zqzVTt)b9986~u+w9e;rk7ivWKd?szXV#hrkK@MakDgK^8!ypO`}hP5 zHDjT&i<6bU;il)lHf@3YE)Dqcu>Lr4*T~%XF?$GO~@6xw=d@ zEhXvNSmx?-^WSUKkUq=(a8d|mxgSm-y)2jEJT`F*w8FfzMh)(}BJD+H=?Wj-#>p&Q zq1&~O?~xlJjb#`Ah&knHwV=-gRs)HU#l)Vb7e}A zX}U7)MyBaX>82SWZBhzX>xvh2rhiy_+HbDBM-w4qDdSl+tU=qG!}^`%vs{NX*x3cdMXD67%(%6-QLHiHyMW=EP^!koxDj4VMfh zg;1W?MSF4vN+ZpYq)0HDmco~G#SWcGg3y$fFX>3Cv~DUfcv%M>6Eh$N2WU_3K$87s zU9k5ofKXr7&FmhjX;3e*d0DebvZkorpo0$1R0dN(Zz_YS4V-6vZPK{P?tq#mVcH-m zXe|+?jXLP*+RBUpdP|}}8+D;YTrUf5(`1Hj)Ge)C0dZ=h$dxq(dPN6)ohgMWpf{y3 z^@=XE^0heiimvJ5VZ!a*$6129NeBI0rPif-!QPa{)Fxf96S!$|!)B9i-OIPe)F$2c zC})cK{HhN6yUHwmAqhHkp9~znFuj)2^d}A!Vs{0*{rFt1Z8o!pB3NZ!rroyDQ zY)Yj0wbYbI^J~_WSVEdN>tLkoCx<1Vwz=3j##s8dKK%^m6gt062WQv2 z+5)D)-jp1Fx9LJpUyG@2y4N@lF||#fah5a1j{S8V_->0>0(whwr|5NEuu0uC*~q`H zTiE-(z+-c%)~wx^RycJR0llS0Sb9SjIQ5*Cq#utfz#Rtp)|h%jA9s9Qh4Pe2;oG|6J!Cjrd(tINg-a0L z)=`UOYgQ5gdY8Fket#uTt+}_W>nS5aD71PAgz>K5oB`?LUD=#T{sWn9@9OH~;-)e4 z1NcDHD3GESL%5zmSCzu|b;Vas{;II`zUHXX2>GjuDoWu8Iyk6RVho%itv}FFWfF=i z@ou-)HWxu$JFsXQCw}eLm3Dln#jo8~bTKU=zDH}TEg+~stJlD!wrG_V2z8IHZYjOi z!^Qs(wYDP-f(x|gcp%&lbyIsg2MG5=&FvhS233MS(%SC#Kv02Jc7aeo(p5H%fl1>o zT^*Hy{#fgJI~%J4ku#KXe6ICru2O^s=x2#+F+bOx$M{;P zpX-xPbyS4ri?kn67N9+1Rwc^vg>GUG`SoD9UuaJGHc}|d0j+yG!y+X>KRzNQ2h#Bo zDLJ5f^m0_B+ElJyErSMx_F(I4jAB%R> zUV8bjud>^?X3)OXQR_rNnn{Wt`JRCMm@=j#g;qd-FphWu0n*VCFCai>!VxbZ0zh{$;otUC_Qr2yhKyZQf zs)0$ZJI4WWa8j0yQ5zhrE``@+E2b0OMz!+ofiuR98zJ8?u@SC@d0m!0qTGi5MhuWXuFrBKMx+@?WUtS*9hpe8KpWZXv+YJCw4+(IKQaB@9G1CRO1ubV}nGq7;7UJ(s zSst~E6CkVtZGeHay(#NXVnD3kl;ylwkoyNMOW{AW+&{SORqh}BGaI!_ZUD3ti*vK4 zzE&Uq698eJ>q7v<;M}ac_X5P=+$;wM=^aQ2=4NY7NJ1dchG1^C^{^xaEhPkZ+7Ju^ z;Ow0~1i+-yg#d`{J0%2i`f4ew#QZFWi5}*Rr}>WC1@EYq11ZHlitWvRASUK#b5_NH zn3$jCFfl4I0lFs}^e{`_QOA#N8OZ(^Y-0t))IEMO0x@+@wq#cTU_xdEkkfBV*`+Ta z>ZbN@s&)X7D*<~`vU)7=VW$@E0tvg^CTS@yFEnqzu144MSwQN)tQ`xp?wKI95Et46 z2z0Abcz?Fy0XGX;(enN*hh~`ttz^uWWZiKDggZc+tw7o?$u_nV6^PX(+4i+@y-co} zQutuDV!1P0L(>Pdkrl%lF}p15_O>9L1=@4~(so(a-9`dpc3IZ#RDjHdWm&gV5oqVa zvTU+b(Yhwc)R*)_*}$GN zMy#%KNdX`bt9&4UG+pJB0*K93J}H0%VwFz{fi@7UBq=&Ecx`0TuFjh2t#rF{0oY!h z+Lkb^&bs3f7*0=Q}wIkGp3(TO-m|0 zotlaFa-p3AyB($vCyE?ctS!D%B0#}~5p zJ2-9VRUUbQeGp|6_Ck84a!c=pY_n>2rNr>1thsTfk}H)*o-d_L*@C^4b$2_dh51sp zs(E}sZl$!5yUVYbE8bF{!jzlKuVmd<7l1Hd$wpSFfG}UlB2>K-B0I2Gt>6x5lRV~p z)e9~V=BrsJxImb%ir{ulnC!ncn|*Jqj&vyxW;Un6mEG6oY|aV_wGcN;5{Xi`kq0wd z`3mYl-5;hr<=mPw<@wB3FVNJ&+?wSmAOhV+o^oy@Kp(0TP6RM9ws}njVrZL}XCQ{Q zd3gq6Xj`^hkK~468@^+vw=<^>s3Ew}2+#>|r)sSAx^?(nisEzBKR?rZ)ialQ$U;mrPb)v5Juf+lpiGrelL7q>H=j7=c! z%(jvhJkV`R;XB!i_nnrtrR6(bf7^=cyz3PbggZccGy>B0-E32mv!o>|Qb3lTg(1+%H=( z*Zg&t>e1wL85(&^QY!`z*agAt-KD}a4)_>Qg}DQMJpf|vfL{-Qgy4W*4+Po}9PsNw zt%Ts9T@QW&Aif7v+Y*6;em$TT+Xwx60L1n|za9v*whzjBAdf(6Wj**hYa0KLI=T*k z?XOeY((%`R?5M@|*D`dL2|AQD?LJV)_C1txMB5Lg9MSeeUfXL$+Yei9HxGQk^X|hw zC#ZsW*h@PQ;$biCwc^wd+9$yLb<}aFOl%5Z zPYB%v1;U;X=B;)CVNVD-{mGXbYen8ChC#m?e#>KnP?S>kNiK(I6Py;bBHFO*5T2cCGX8MO}%&=*p+x$|9g=wKX)B&+DEp+>6AQq;D z2=#nf*lI=cXM|>Rb3KPE7mc5h#!NJRMwquZ*{Ov(BkbHY?w&Bw_?e-(uUdD)ZPECd zDN{6lW|+6qNG;5nA>USzCrq`X@w3bg2h?$N*%;!ilqeEED|CwkwGd~8EDn~4#Lo`R zu<>fhsM??jlY4f0*&_L~)5{jgpB_P;U!)a%1OjQ>eFve0^F@9<@QKr0)pr0tH~I+>!cFf_X>ij(gO?yd!iARBcej z*N4p+d)1lsbJ78pTZD7cWU7KPCv;0whf;WFSTR4e2m21Ryfbv$><*%TcZGZlT$}{q z2+*G7fwa9VEZI9fK&;*sCb!-K-LX_3-V;{b=gfAb={=zpYTZ%H-W$3T2Z+c3ZTbOe zdvEAY96-$88@dw*5b?V=bSDmhR{ZV_-HD^4=-YxY=wk0>192K`0}V{7-Qoho`hw7% zI69TWMPbGL&gV|FToguKk_EAo_`KMM0)$nd4F!<4i+w17SZ%UcV$qAmr89@Gu;Nv- zb)V{5)tQzLN`Pg7=`2@|0}gEQTSKr4jj~C`(KjrGR{D3|0{F{4uRJ8zd{xmxqs4G z7MKPG(DeDc>W_6%afG}5v?yv!bxiaLi@!Nz+ z+sDJ8bXIY%qipmc^k`` znRL`-sd~mQkJQ3^MwUnU_FiXMs@8{QXIs9#2Y|UgWy%V*J{@maq1J~Sx#Widon?i3 zKAhE6w;#Y~h|i})S(u&=-HD4@h|hZd!y`JV9fHpCN8ahga63P3f$ZwP=&q_%5Yzb6By}30oIhZVuf} zzl%uFme4)01934x`*;ON+bv<0J$C}Jx+Ub?ncP+CS_-#?6>m7RU1_?_>t$Cl`?}Y7 z5Y7T^{sL+Hx*tyIn7_&Pi7NYUpOW}KA z#dtIPD>S}4E#LDR-(9S}Z#ACJ#NmA(2Ourq_ZknxDN}8vmgg|Fs%`X%YAjQ`6G# zhkp2|#q@`M_<)%H&<~$LYx+YOK5LrxADieKzDU|VQTC5h)1vGjr=~^OKlaMrU6g&V zRd$%7?0bCz0AcR+$_|9NSCn0TqtRV1V81(S021Vs5eRd?PaPo4{a(3|mJ@PL<$6dGUXybw2f`hoO>H1;ugN);17h`>oL9M? zrEpTN;vddzPnu53xm{sTF?(&!?PNhX3$!W+r0umix03~8_S&4=$pRVVYjbWVE6}FN zwK=zw?U|_DnO*yxd1rmpwa&9Lp(8l4WoZHFv7PYxKm+WMJ48ZoyscnhE%{jM| zr54*a=iE*fi0zwmZYL|y+P*o5%E`Te-lB5G+?dgWFfAfsQq$6}@xwk>RtZX@84p7wAECy%UwYB{eN7cS~woRPGirE&JErqH?!!y>hc0fK#{ST+#z! z-j;LwS0K#Wa!%!X%LUw#vv*Vg2`V#1=<@5&`N%Lf2p-jy;% z-tNk|tsAv4@5-@tJ2Qz9@^-hmOzUwFMbGZexuZ1@;@vs-Ge022yL0@oNVaahMbGXv zPZo72Vk>%fZyH}0cB&~TlDNcULPd4Zve#WzMNYJfH3dNx!X5D znD^z}?VH}BXNz*l?HiaPXp7Q5MbH-I-0d4`VJ^yX`$m3w)mt{G_rv6OkX)whQ14Hf zvO~Q;=Y9uCEzJ9K{0`DyCOgyz%A z;t^-IFHKkEBKfJg)_uingV#_HR|&N92T0onKYxIjZSYA5WCAt#Bot_qu)%9+-$X+n z_8JPrX`po)i1mlPh61tvu-DL|O5w^}#pBNBqiDG@7ul~)9wk0M=0gF(D$rU5()KYQ zifS-sACp)dMTGm6!Y6YT@0f0p?%Av#EuR!+mb(G{#OfL+q5uN1#s>mO(=}d1f!JK* zMHEON)_4&WXaljvi)cR)v$a-4&jnz6ZE9P>u-1zxwb)+kMHGnbwO&L8TH9+yMCD0a zKM~Pq7{QvJ^8B%lnVQ#CKcZVMNZdyIqfHM`n;1<08TyclL!d&c`v6xn9qAT?I#!TqLWiV zf}ETJVZP|)6bSQ0FQ@%PPG5F%3V``?>aED>%U({Yh553V(|#hS8_RMEgbVgT6gl0P zUa83GMlYxRB!-)uoC08ON|_?3o4lM-3v-jmsr+oZpX?T2GsBDe^Z|T^_?nkfAjH?a zoB|=f=H;}X$my0uP9ch%Zb@S+a=OLKDYX!{h@Ac==@B{IW?EG0OBhZ$?Qcta6gAzJ zy%tjobEnthesbo2+iEeNarkYo#XyK} zdo2b+eA{dB(WUUcT*doNfR3i+dpUk3Euwj}NX4$4`)(`Cj|YjOWXi$C;Q48&=mRZSq)KlEA*#QKL`iwE%7FITb8`8+c9|#~#4|pvG zV)KC4VjzJy;I&ww4a5Pj#dV^D2b~rJuzfJKEnzt5wU}CLAM{!b#P&h2#R9GEgQCSl z7{NNx;;*^Nof^6AC$%uAN_>(BcXgt*)6Hwm^;`lZ8`tUSb&AwZkKA)R zYGF=~+;h9S_D2{7P*bse0$^${{s`Tyd!dle;`f+t1a%R!~^o~U9?lCp3ZNF#3nO@k-HTj(3)Ntp`7x@nn9wRiy6-E zys@S${);kEY=;#{CyV{C0_kM2A66ipEcU}H&~~y|hShdL`z7Y~8a-;jphQ}iq^3n$ zm!zgeT9=4vxhXJ6q;;vep`-2tQIvJ5Phud%rIEWQ0EDWc3bfy<0Md3{ z)M2Er#p=3f^ccI998wC`M-?wPvqNaQK8gk;W`~H`=e#PTr^j0s20P zf%LS^52ird(>57Q+Y{}#M{HS-HS=n8kED|ULlbqR*mol8xIOJe)N#94$DyK*JFGhL z8Si#@*#JV^;nficafesOp>icVtvd2qKuQ#K-09VkT8KME9c3psRMhcpx03_FeB0{{ z5a!!nZ-6l07QK-q9xCeiE^kBDx?>#x=DTU1qK@xI?iM7qFyD>bEy$q~$z4v70eG;> z?*V}@cX>qy!rbK*d8nx42TqXz^!Y*Br>NrxUXiJV`GHsDp`wm^tRgceB9D7grpV(S zugKKG+#`xCx;j+k@gsA77j%`+5I;%>Q{?d@udCET{75#*qN_ti9zU_V%4dk5q(qU& zPtsW+^7x6@)uAGf`>d|=8REW_DC)S+>ngPn_jz3%D!a~4ovs21?5AE=fiOSyx(bB( zsn^xxOW_w$#g|S@j;G}pQDlE~dc36lfhagRQBDw6f%bcDK-wONI@+Jb0kL`@I%%xc z)nTRZtEl3TGdql?UwMrhCT73(x(eblfi_EkwEf!02Z-6PeJTQ(KwtY*6lhcNYp<)r z5?%eq>naeZfmT<6SpUZBDiG`6cwIfA6dsN$#^>z@`~+Gaj-q3dwcrHt`G^k%2&+IF z3LtHd_)t`XF?&Q}(G^`CUJ57XD{e7Scio}ca9U2xb7M$!b+}laluw>H{TM(XCh-c% zB-}unPRhG|CJ>vG@@}6ABoLGGZl5X824Yg4eWtvvWVlG$Wb<-&-3HSltdmpI5{1cm zw?tEm>B)Ish#+^XfS8_~Z$2dXwT3`zdUC#ca5BAzi?B{H!+Wr8;4`MDq^70YDS7wJ zL~1cTCC^)`Brk>wnrfy&tm8ApsVPy^acW8wb(|_h*~twTb)1&BXGZ|hpO$w!IUvkw zd3SaM!km_OXUE~<-t>HOcEnlH$LV=@E(gM#o_A+QAk67`c5?E|g5jc%GtAVUx+6r9 z#~CS6#2yI|d7Nq9>Z!X78lI@*%#h>2Nw_gz;YCT8V1B#1N*7nz*R8|r!AXFY&Rn4Nd0Paw?Md3X8* z!knFVr_T`_6Y~{!xXC|)mbc~ksh#YvM#wb1Js;S&1Awp!v@baU()RXzBm0&GAXabB z^O}(43pOK5;hcQMozCn?n$F4dVMPh<$U19#uQTkl^mc(C?5+(6hcx|N?;tJ8$0SPfI zg%9V0mHDjMS+9EjY*do{l=yBX`ybA`H*8T0`{6vln{14H0wbZfTAAk+x^a{gJU|Ll zRFd9^H2IzU<6hK&^zpbCH6VRFp683%^7W%pA{0-U%LnQK^?c^i zp78Pjg!qJ)2Oz{J^40PdgFufig-_)xo^~^PG%cUXyYH8bmN~d4@4jCG!X2RfQU#E< zYx3^ysRa(?FZ#K&(IOlN^ZkXMK{NR0^NZSG?$aK8cpk=iT>9 zP7vKYwA`5Ifrl*iW5wzw zx7Y&+#3mmIAWb*<2?@mJCcoGN3B)G9*bB6Q*yI=cv670f*~OmEn0_raEm3&QFZR@8 z`Zd4U12O%YU+e{1)35o(eyl9^Tg>ePSnTg>2{0PCTcOgMYKtjXRM%qn>_>A zJ@Xmjzf+>*{=f6?rZ%QfgzEbfO6i+oJIjHXcq{LI^bf?uTX}x;FWW63 zBk)$f=Z})@mOwiKZ{>TPo`}U*$@X{L<_CbU?|7X6V*4Gh6F_Xg<2OHJWjFAi+x!6V z>OC(MK$!3OJq!@$dol*1Fk|J=^nRi+b$o{SeoB-x)B9dwsD=2xD2!}C#>$y#x7&aK zaCW!ffB<3c_8Sl&%-wzia&jsBC|~i3OURRH`B6TyZ!$SqQs?7*V859G!Ya^y*&j&T zkMk{$O5zE`>c{#11MCLmlv21aU-6kUdkRhW<=tKNQ^f3kuT3B>6KF>bNZb8hn}C?z z@3jfYpzQbBB+!o9ey>fZB--?;*CrrN1FbdzvHq#oCLq>7_1bhQXR>_7m(J%?Y57Gy zvTyG=ReV0+Ljl4n(1rp?+XFrn^zm6?WVCg{6 zJ-6&c;GA%U)(L4fFV^$RP6UY)u80{xKdKbo8wX2qqEoF|aGdT_e{UQnKSPpAoVYi( zKf@D<6ZghPjdV`%DvWSJtQVD?P|gWgXq}K&i(~yj*$I_6;fnaxF@|ZfEDl!UM6cQ! zUbgbxzYbJ;Vfjz}nBNc8t?QS?Ve(=t;o;x1xH@_7jzIid79V@M^N*K0g%8DgMcF^? z{BwoYKWWtv>qpD}>BK)*G$Qej{o>Ou&$6@knU3$&p#N%OTKTIz z-~TIO5+<|rc-^`F**HuDNGQ1WY}_(=MUy~Wdp17q9OoLZ!VA~O`h~J

xd@TGyo2 zi?QBNb}dX?b4A>6#c-|^Zi<8LxOPmfSxbD(>S4SlYf~I1=TK>ZC!6Bd$&020;>o6X z#CgsWUZoel8tW}(Pjb!^S7<$vR$F8JdfAg);)yG=BSntwh=cc&k*by;egBUyB~juJ zDs`xrm3l`yh!OtnNC#0C?j7kM@_xSX%~-!(_Ahe&xkBrow0bAjyUPAWiGQx>q$E;# zzAO_5pT?$sm>y9ti~jC7OkQ+ERM^!5+axcF6NnSL;}b7%LE=mI;htE3Ty`SwoN$HK z32F67toN6l$R|#?q7xG*_+uiU$HBL8YgIEq-fiUn{FDDPMoE+|I6-%;m(9iJahNQV zcogH{=dpdXEf5Dkk54$)IminG!!KfeutPhnPj1vc4(aDK}{85J^ zaWJ`HPB=lISTFmOBXOAg_?lh|IB_IyJH+LiY+H`Rqkrj~;8la+_=3Ks;Ma(PbHWu` zC#2QHg1(kkc8w?`PPif)C0>I+r4ZayC`aiBf9EQR5`VI)#*81Tqk6fMJf%<$RS_?z z6w0BJ8_QD)um<=)81=)=O!11D=(=EGAyMA{#2+Fn)6(_-Danh7&5e zD}8gJ9I8s3xVcacmE5Ghxlj%j@5%^g74$7-Cn}v2uFyImt!^#oJIYQ}CQi7bamje` zQt7#c;J!jm$-0jaz4aIV65d!s-HO6VzjE&Ii}A3b zpdT%})5N*s3avZRYGpyMD!bDpamN+eQQ|GPPZomb#GT`7%_l!)<_yy2Gn4Unm5x70l}= z>XYhAIPpU2LPB5aIY)b2)aV+gtXdN(65%A;I=U9gDbN0 zgjZi~DFizUX5J{~iTtj8OFB=gaAHe3PvmFrThe(_h54-o{d(DnD(8eNv`$E??FId2 z*@>#e30HJMGFf?%-`j=Y!-DzUXnk(Iyu9!2LYVwWp4rh1C*Ce}KZDnC%D%9fDrMg; z{O3gejH1QZf2W{#mAz=@yl{nStM?0fPuYuRi5ITuSBV$Ak?-R|a3EVyH9x5}=U>1d zS(0z$n9IlLLG|*2zK;uG@(v5UXpU1K7kd4~In^AeJ}z8%y?3fPPJL3)`^!!>cTTxN z>y)(mw4lEzJJmdK$`x_fkdAl@-@!s~wJxff)6Es5bqiDbRZukJPGYw#@8COF2)nzy zsm7;+g&t=)pQ`ccVBx%Ly-(Hj_EkY2D*IIJd~$`>Cu#L8e`!74_n>mo`v>% z9aqHHrkEkT)b7z@utwY&=KhTA#&Nl}=C4C_<9d0?-J`|OpO4$%)1$@q!(1A+!KX)y zC;!IHrZ)7pvZz;;eQM);a)s6>Y4t==KUMarP2!U);u!=!@y@HY#o#6JX;iKKo0We$ zMITi!Z@*ew43nq7(hPUj7VU#@fw;4__@gVGJ8kJ`T~V(uyVKUW;|i@i((1XQezELM z+r%AL)H`v9w_R;02LI+A(=~0}4V)43e$d)0lRukzmHWG!$=e8ej4A{}+M&&HMlW From f7aab5f248ad20af75df159b563f9da108239ccf Mon Sep 17 00:00:00 2001 From: Alex Demidoff Date: Fri, 22 Dec 2023 23:14:27 +0000 Subject: [PATCH 03/10] PMM-12624 upgrade mongo to at least 4.4 --- .github/workflows/agent.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/agent.yml b/.github/workflows/agent.yml index c01f0ec084..1294a45307 100644 --- a/.github/workflows/agent.yml +++ b/.github/workflows/agent.yml @@ -27,13 +27,13 @@ jobs: strategy: matrix: images: - - { mysql: 'mysql:5.6', mongo: 'mongo:4.2', postgres: 'postgres:10', pmm_server: 'perconalab/pmm-server:3-dev-latest' } + - { mysql: 'mysql:5.6', mongo: 'mongo:4.4', postgres: 'postgres:10', pmm_server: 'perconalab/pmm-server:3-dev-latest' } - { mysql: 'mysql:5.7', mongo: 'mongo:4.4', postgres: 'postgres:11', pmm_server: 'perconalab/pmm-server:3-dev-latest' } - { mysql: 'mysql:8.0', mongo: 'mongo:4.4', postgres: 'postgres:12', pmm_server: 'perconalab/pmm-server:3-dev-latest' } - { mysql: 'mysql:8.0', mongo: 'mongo:4.4', postgres: 'postgres:13', pmm_server: 'perconalab/pmm-server:3-dev-latest' } # Percona + latest PMM Server release - - { mysql: 'percona:5.6', mongo: 'percona/percona-server-mongodb:4.2', postgres: 'perconalab/percona-distribution-postgresql:11', pg_libs: 'pg_stat_statements,pg_stat_monitor', pmm_server: 'perconalab/pmm-server:3-dev-latest' } + - { mysql: 'percona:5.6', mongo: 'percona/percona-server-mongodb:4.4', postgres: 'perconalab/percona-distribution-postgresql:11', pg_libs: 'pg_stat_statements,pg_stat_monitor', pmm_server: 'perconalab/pmm-server:3-dev-latest' } - { mysql: 'percona:5.7', mongo: 'percona/percona-server-mongodb:4.4', postgres: 'perconalab/percona-distribution-postgresql:12.8-pg_stat', pg_libs: 'pg_stat_statements,pg_stat_monitor', pmm_server: 'perconalab/pmm-server:3-dev-latest' } - { mysql: 'percona:8.0', mongo: 'percona/percona-server-mongodb:4.4', postgres: 'perconalab/percona-distribution-postgresql:13.5-pg_stat', pg_libs: 'pg_stat_statements,pg_stat_monitor', pmm_server: 'perconalab/pmm-server:3-dev-latest' } @@ -113,8 +113,8 @@ jobs: - name: Run debug commands on failure if: ${{ failure() }} run: | - env - go version - go env - pwd + echo "--- Environment variables ---" + env | sort + echo "--- GO Environment ---" + go env | sort git status From c6f9e147e4d41fc7820282dfebdb58091b3092d3 Mon Sep 17 00:00:00 2001 From: Alex Demidoff Date: Tue, 26 Dec 2023 01:40:40 +0000 Subject: [PATCH 04/10] PMM-12624 revert proto fields renumbering --- .../agent_local_service/status2_responses.go | 10 +- .../agent_local_service/status_responses.go | 10 +- api/agentlocal/v1/json/v1.json | 4 +- api/inventory/v1/agents.pb.go | 3780 ++++++++--------- api/inventory/v1/agents.pb.validate.go | 24 +- api/inventory/v1/agents.proto | 221 +- ...d_qan_mongo_db_profiler_agent_responses.go | 3 + ...e_qan_mongo_db_profiler_agent_responses.go | 3 + .../agents_service/get_agent_responses.go | 3 + .../agents_service/list_agents_responses.go | 13 +- api/inventory/v1/json/v1.json | 14 +- .../add_mongo_db_responses.go | 3 + api/management/v1/json/v1.json | 2 +- api/swagger/swagger-dev.json | 144 +- api/swagger/swagger.json | 2 +- descriptor.bin | Bin 698411 -> 698302 bytes 16 files changed, 2124 insertions(+), 2112 deletions(-) diff --git a/api/agentlocal/v1/json/client/agent_local_service/status2_responses.go b/api/agentlocal/v1/json/client/agent_local_service/status2_responses.go index c258785bac..5c18f800de 100644 --- a/api/agentlocal/v1/json/client/agent_local_service/status2_responses.go +++ b/api/agentlocal/v1/json/client/agent_local_service/status2_responses.go @@ -431,7 +431,7 @@ type Status2OKBodyAgentsInfoItems0 struct { AgentID string `json:"agent_id,omitempty"` // AgentType describes supported Agent types. - // Enum: [AGENT_TYPE_UNSPECIFIED AGENT_TYPE_PMM_AGENT AGENT_TYPE_VM_AGENT AGENT_TYPE_NODE_EXPORTER AGENT_TYPE_MYSQLD_EXPORTER AGENT_TYPE_MONGODB_EXPORTER AGENT_TYPE_POSTGRES_EXPORTER AGENT_TYPE_PROXYSQL_EXPORTER AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT AGENT_TYPE_EXTERNAL_EXPORTER AGENT_TYPE_RDS_EXPORTER AGENT_TYPE_AZURE_DATABASE_EXPORTER] + // Enum: [AGENT_TYPE_UNSPECIFIED AGENT_TYPE_PMM_AGENT AGENT_TYPE_VM_AGENT AGENT_TYPE_NODE_EXPORTER AGENT_TYPE_MYSQLD_EXPORTER AGENT_TYPE_MONGODB_EXPORTER AGENT_TYPE_POSTGRES_EXPORTER AGENT_TYPE_PROXYSQL_EXPORTER AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT AGENT_TYPE_RDS_EXPORTER AGENT_TYPE_EXTERNAL_EXPORTER AGENT_TYPE_AZURE_DATABASE_EXPORTER] AgentType *string `json:"agent_type,omitempty"` // AgentStatus represents actual Agent status. @@ -475,7 +475,7 @@ var status2OkBodyAgentsInfoItems0TypeAgentTypePropEnum []interface{} func init() { var res []string - if err := json.Unmarshal([]byte(`["AGENT_TYPE_UNSPECIFIED","AGENT_TYPE_PMM_AGENT","AGENT_TYPE_VM_AGENT","AGENT_TYPE_NODE_EXPORTER","AGENT_TYPE_MYSQLD_EXPORTER","AGENT_TYPE_MONGODB_EXPORTER","AGENT_TYPE_POSTGRES_EXPORTER","AGENT_TYPE_PROXYSQL_EXPORTER","AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT","AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT","AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT","AGENT_TYPE_EXTERNAL_EXPORTER","AGENT_TYPE_RDS_EXPORTER","AGENT_TYPE_AZURE_DATABASE_EXPORTER"]`), &res); err != nil { + if err := json.Unmarshal([]byte(`["AGENT_TYPE_UNSPECIFIED","AGENT_TYPE_PMM_AGENT","AGENT_TYPE_VM_AGENT","AGENT_TYPE_NODE_EXPORTER","AGENT_TYPE_MYSQLD_EXPORTER","AGENT_TYPE_MONGODB_EXPORTER","AGENT_TYPE_POSTGRES_EXPORTER","AGENT_TYPE_PROXYSQL_EXPORTER","AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT","AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT","AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT","AGENT_TYPE_RDS_EXPORTER","AGENT_TYPE_EXTERNAL_EXPORTER","AGENT_TYPE_AZURE_DATABASE_EXPORTER"]`), &res); err != nil { panic(err) } for _, v := range res { @@ -524,12 +524,12 @@ const ( // Status2OKBodyAgentsInfoItems0AgentTypeAGENTTYPEQANPOSTGRESQLPGSTATMONITORAGENT captures enum value "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT" Status2OKBodyAgentsInfoItems0AgentTypeAGENTTYPEQANPOSTGRESQLPGSTATMONITORAGENT string = "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT" - // Status2OKBodyAgentsInfoItems0AgentTypeAGENTTYPEEXTERNALEXPORTER captures enum value "AGENT_TYPE_EXTERNAL_EXPORTER" - Status2OKBodyAgentsInfoItems0AgentTypeAGENTTYPEEXTERNALEXPORTER string = "AGENT_TYPE_EXTERNAL_EXPORTER" - // Status2OKBodyAgentsInfoItems0AgentTypeAGENTTYPERDSEXPORTER captures enum value "AGENT_TYPE_RDS_EXPORTER" Status2OKBodyAgentsInfoItems0AgentTypeAGENTTYPERDSEXPORTER string = "AGENT_TYPE_RDS_EXPORTER" + // Status2OKBodyAgentsInfoItems0AgentTypeAGENTTYPEEXTERNALEXPORTER captures enum value "AGENT_TYPE_EXTERNAL_EXPORTER" + Status2OKBodyAgentsInfoItems0AgentTypeAGENTTYPEEXTERNALEXPORTER string = "AGENT_TYPE_EXTERNAL_EXPORTER" + // Status2OKBodyAgentsInfoItems0AgentTypeAGENTTYPEAZUREDATABASEEXPORTER captures enum value "AGENT_TYPE_AZURE_DATABASE_EXPORTER" Status2OKBodyAgentsInfoItems0AgentTypeAGENTTYPEAZUREDATABASEEXPORTER string = "AGENT_TYPE_AZURE_DATABASE_EXPORTER" ) diff --git a/api/agentlocal/v1/json/client/agent_local_service/status_responses.go b/api/agentlocal/v1/json/client/agent_local_service/status_responses.go index 193b0d26e0..e77975ce77 100644 --- a/api/agentlocal/v1/json/client/agent_local_service/status_responses.go +++ b/api/agentlocal/v1/json/client/agent_local_service/status_responses.go @@ -468,7 +468,7 @@ type StatusOKBodyAgentsInfoItems0 struct { AgentID string `json:"agent_id,omitempty"` // AgentType describes supported Agent types. - // Enum: [AGENT_TYPE_UNSPECIFIED AGENT_TYPE_PMM_AGENT AGENT_TYPE_VM_AGENT AGENT_TYPE_NODE_EXPORTER AGENT_TYPE_MYSQLD_EXPORTER AGENT_TYPE_MONGODB_EXPORTER AGENT_TYPE_POSTGRES_EXPORTER AGENT_TYPE_PROXYSQL_EXPORTER AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT AGENT_TYPE_EXTERNAL_EXPORTER AGENT_TYPE_RDS_EXPORTER AGENT_TYPE_AZURE_DATABASE_EXPORTER] + // Enum: [AGENT_TYPE_UNSPECIFIED AGENT_TYPE_PMM_AGENT AGENT_TYPE_VM_AGENT AGENT_TYPE_NODE_EXPORTER AGENT_TYPE_MYSQLD_EXPORTER AGENT_TYPE_MONGODB_EXPORTER AGENT_TYPE_POSTGRES_EXPORTER AGENT_TYPE_PROXYSQL_EXPORTER AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT AGENT_TYPE_RDS_EXPORTER AGENT_TYPE_EXTERNAL_EXPORTER AGENT_TYPE_AZURE_DATABASE_EXPORTER] AgentType *string `json:"agent_type,omitempty"` // AgentStatus represents actual Agent status. @@ -512,7 +512,7 @@ var statusOkBodyAgentsInfoItems0TypeAgentTypePropEnum []interface{} func init() { var res []string - if err := json.Unmarshal([]byte(`["AGENT_TYPE_UNSPECIFIED","AGENT_TYPE_PMM_AGENT","AGENT_TYPE_VM_AGENT","AGENT_TYPE_NODE_EXPORTER","AGENT_TYPE_MYSQLD_EXPORTER","AGENT_TYPE_MONGODB_EXPORTER","AGENT_TYPE_POSTGRES_EXPORTER","AGENT_TYPE_PROXYSQL_EXPORTER","AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT","AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT","AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT","AGENT_TYPE_EXTERNAL_EXPORTER","AGENT_TYPE_RDS_EXPORTER","AGENT_TYPE_AZURE_DATABASE_EXPORTER"]`), &res); err != nil { + if err := json.Unmarshal([]byte(`["AGENT_TYPE_UNSPECIFIED","AGENT_TYPE_PMM_AGENT","AGENT_TYPE_VM_AGENT","AGENT_TYPE_NODE_EXPORTER","AGENT_TYPE_MYSQLD_EXPORTER","AGENT_TYPE_MONGODB_EXPORTER","AGENT_TYPE_POSTGRES_EXPORTER","AGENT_TYPE_PROXYSQL_EXPORTER","AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT","AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT","AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT","AGENT_TYPE_RDS_EXPORTER","AGENT_TYPE_EXTERNAL_EXPORTER","AGENT_TYPE_AZURE_DATABASE_EXPORTER"]`), &res); err != nil { panic(err) } for _, v := range res { @@ -561,12 +561,12 @@ const ( // StatusOKBodyAgentsInfoItems0AgentTypeAGENTTYPEQANPOSTGRESQLPGSTATMONITORAGENT captures enum value "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT" StatusOKBodyAgentsInfoItems0AgentTypeAGENTTYPEQANPOSTGRESQLPGSTATMONITORAGENT string = "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT" - // StatusOKBodyAgentsInfoItems0AgentTypeAGENTTYPEEXTERNALEXPORTER captures enum value "AGENT_TYPE_EXTERNAL_EXPORTER" - StatusOKBodyAgentsInfoItems0AgentTypeAGENTTYPEEXTERNALEXPORTER string = "AGENT_TYPE_EXTERNAL_EXPORTER" - // StatusOKBodyAgentsInfoItems0AgentTypeAGENTTYPERDSEXPORTER captures enum value "AGENT_TYPE_RDS_EXPORTER" StatusOKBodyAgentsInfoItems0AgentTypeAGENTTYPERDSEXPORTER string = "AGENT_TYPE_RDS_EXPORTER" + // StatusOKBodyAgentsInfoItems0AgentTypeAGENTTYPEEXTERNALEXPORTER captures enum value "AGENT_TYPE_EXTERNAL_EXPORTER" + StatusOKBodyAgentsInfoItems0AgentTypeAGENTTYPEEXTERNALEXPORTER string = "AGENT_TYPE_EXTERNAL_EXPORTER" + // StatusOKBodyAgentsInfoItems0AgentTypeAGENTTYPEAZUREDATABASEEXPORTER captures enum value "AGENT_TYPE_AZURE_DATABASE_EXPORTER" StatusOKBodyAgentsInfoItems0AgentTypeAGENTTYPEAZUREDATABASEEXPORTER string = "AGENT_TYPE_AZURE_DATABASE_EXPORTER" ) diff --git a/api/agentlocal/v1/json/v1.json b/api/agentlocal/v1/json/v1.json index 382d35766a..fe4a2f9acf 100644 --- a/api/agentlocal/v1/json/v1.json +++ b/api/agentlocal/v1/json/v1.json @@ -132,8 +132,8 @@ "AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT", "AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT", "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT", - "AGENT_TYPE_EXTERNAL_EXPORTER", "AGENT_TYPE_RDS_EXPORTER", + "AGENT_TYPE_EXTERNAL_EXPORTER", "AGENT_TYPE_AZURE_DATABASE_EXPORTER" ], "x-order": 1 @@ -325,8 +325,8 @@ "AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT", "AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT", "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT", - "AGENT_TYPE_EXTERNAL_EXPORTER", "AGENT_TYPE_RDS_EXPORTER", + "AGENT_TYPE_EXTERNAL_EXPORTER", "AGENT_TYPE_AZURE_DATABASE_EXPORTER" ], "x-order": 1 diff --git a/api/inventory/v1/agents.pb.go b/api/inventory/v1/agents.pb.go index f391d7c7b3..a494cd0842 100644 --- a/api/inventory/v1/agents.pb.go +++ b/api/inventory/v1/agents.pb.go @@ -30,19 +30,19 @@ type AgentType int32 const ( AgentType_AGENT_TYPE_UNSPECIFIED AgentType = 0 AgentType_AGENT_TYPE_PMM_AGENT AgentType = 1 - AgentType_AGENT_TYPE_VM_AGENT AgentType = 2 - AgentType_AGENT_TYPE_NODE_EXPORTER AgentType = 3 - AgentType_AGENT_TYPE_MYSQLD_EXPORTER AgentType = 4 - AgentType_AGENT_TYPE_MONGODB_EXPORTER AgentType = 5 - AgentType_AGENT_TYPE_POSTGRES_EXPORTER AgentType = 6 - AgentType_AGENT_TYPE_PROXYSQL_EXPORTER AgentType = 7 - AgentType_AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT AgentType = 8 - AgentType_AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT AgentType = 9 - AgentType_AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT AgentType = 10 - AgentType_AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT AgentType = 11 - AgentType_AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT AgentType = 12 - AgentType_AGENT_TYPE_EXTERNAL_EXPORTER AgentType = 13 - AgentType_AGENT_TYPE_RDS_EXPORTER AgentType = 14 + AgentType_AGENT_TYPE_VM_AGENT AgentType = 14 + AgentType_AGENT_TYPE_NODE_EXPORTER AgentType = 2 + AgentType_AGENT_TYPE_MYSQLD_EXPORTER AgentType = 3 + AgentType_AGENT_TYPE_MONGODB_EXPORTER AgentType = 4 + AgentType_AGENT_TYPE_POSTGRES_EXPORTER AgentType = 5 + AgentType_AGENT_TYPE_PROXYSQL_EXPORTER AgentType = 6 + AgentType_AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT AgentType = 7 + AgentType_AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT AgentType = 8 + AgentType_AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT AgentType = 9 + AgentType_AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT AgentType = 10 + AgentType_AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT AgentType = 13 + AgentType_AGENT_TYPE_RDS_EXPORTER AgentType = 11 + AgentType_AGENT_TYPE_EXTERNAL_EXPORTER AgentType = 12 AgentType_AGENT_TYPE_AZURE_DATABASE_EXPORTER AgentType = 15 ) @@ -51,37 +51,37 @@ var ( AgentType_name = map[int32]string{ 0: "AGENT_TYPE_UNSPECIFIED", 1: "AGENT_TYPE_PMM_AGENT", - 2: "AGENT_TYPE_VM_AGENT", - 3: "AGENT_TYPE_NODE_EXPORTER", - 4: "AGENT_TYPE_MYSQLD_EXPORTER", - 5: "AGENT_TYPE_MONGODB_EXPORTER", - 6: "AGENT_TYPE_POSTGRES_EXPORTER", - 7: "AGENT_TYPE_PROXYSQL_EXPORTER", - 8: "AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT", - 9: "AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT", - 10: "AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT", - 11: "AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT", - 12: "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT", - 13: "AGENT_TYPE_EXTERNAL_EXPORTER", - 14: "AGENT_TYPE_RDS_EXPORTER", + 14: "AGENT_TYPE_VM_AGENT", + 2: "AGENT_TYPE_NODE_EXPORTER", + 3: "AGENT_TYPE_MYSQLD_EXPORTER", + 4: "AGENT_TYPE_MONGODB_EXPORTER", + 5: "AGENT_TYPE_POSTGRES_EXPORTER", + 6: "AGENT_TYPE_PROXYSQL_EXPORTER", + 7: "AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT", + 8: "AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT", + 9: "AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT", + 10: "AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT", + 13: "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT", + 11: "AGENT_TYPE_RDS_EXPORTER", + 12: "AGENT_TYPE_EXTERNAL_EXPORTER", 15: "AGENT_TYPE_AZURE_DATABASE_EXPORTER", } AgentType_value = map[string]int32{ "AGENT_TYPE_UNSPECIFIED": 0, "AGENT_TYPE_PMM_AGENT": 1, - "AGENT_TYPE_VM_AGENT": 2, - "AGENT_TYPE_NODE_EXPORTER": 3, - "AGENT_TYPE_MYSQLD_EXPORTER": 4, - "AGENT_TYPE_MONGODB_EXPORTER": 5, - "AGENT_TYPE_POSTGRES_EXPORTER": 6, - "AGENT_TYPE_PROXYSQL_EXPORTER": 7, - "AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT": 8, - "AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT": 9, - "AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT": 10, - "AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT": 11, - "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT": 12, - "AGENT_TYPE_EXTERNAL_EXPORTER": 13, - "AGENT_TYPE_RDS_EXPORTER": 14, + "AGENT_TYPE_VM_AGENT": 14, + "AGENT_TYPE_NODE_EXPORTER": 2, + "AGENT_TYPE_MYSQLD_EXPORTER": 3, + "AGENT_TYPE_MONGODB_EXPORTER": 4, + "AGENT_TYPE_POSTGRES_EXPORTER": 5, + "AGENT_TYPE_PROXYSQL_EXPORTER": 6, + "AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT": 7, + "AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT": 8, + "AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT": 9, + "AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT": 10, + "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT": 13, + "AGENT_TYPE_RDS_EXPORTER": 11, + "AGENT_TYPE_EXTERNAL_EXPORTER": 12, "AGENT_TYPE_AZURE_DATABASE_EXPORTER": 15, } ) @@ -211,11 +211,11 @@ type VMAgent struct { // The pmm-agent identifier which runs this instance. PmmAgentId string `protobuf:"bytes,2,opt,name=pmm_agent_id,json=pmmAgentId,proto3" json:"pmm_agent_id,omitempty"` // Actual Agent status. - Status AgentStatus `protobuf:"varint,3,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,5,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Path to exec process. - ProcessExecPath string `protobuf:"bytes,4,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` + ProcessExecPath string `protobuf:"bytes,6,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` // Listen port for scraping metrics. - ListenPort uint32 `protobuf:"varint,5,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` + ListenPort uint32 `protobuf:"varint,7,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` } func (x *VMAgent) Reset() { @@ -300,13 +300,13 @@ type NodeExporter struct { // Custom user-assigned labels. CustomLabels map[string]string `protobuf:"bytes,4,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"` // True if exporter uses push metrics mode. - PushMetricsEnabled bool `protobuf:"varint,5,opt,name=push_metrics_enabled,json=pushMetricsEnabled,proto3" json:"push_metrics_enabled,omitempty"` + PushMetricsEnabled bool `protobuf:"varint,7,opt,name=push_metrics_enabled,json=pushMetricsEnabled,proto3" json:"push_metrics_enabled,omitempty"` // List of disabled collector names. - DisabledCollectors []string `protobuf:"bytes,6,rep,name=disabled_collectors,json=disabledCollectors,proto3" json:"disabled_collectors,omitempty"` + DisabledCollectors []string `protobuf:"bytes,8,rep,name=disabled_collectors,json=disabledCollectors,proto3" json:"disabled_collectors,omitempty"` // Actual Agent status. - Status AgentStatus `protobuf:"varint,7,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,5,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Listen port for scraping metrics. - ListenPort uint32 `protobuf:"varint,8,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` + ListenPort uint32 `protobuf:"varint,6,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` // Path to exec process. ProcessExecPath string `protobuf:"bytes,9,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` // Log level for exporter. @@ -445,27 +445,27 @@ type MySQLdExporter struct { // Skip TLS certificate and hostname validation. TlsSkipVerify bool `protobuf:"varint,7,opt,name=tls_skip_verify,json=tlsSkipVerify,proto3" json:"tls_skip_verify,omitempty"` // Certificate Authority certificate chain. - TlsCa string `protobuf:"bytes,8,opt,name=tls_ca,json=tlsCa,proto3" json:"tls_ca,omitempty"` + TlsCa string `protobuf:"bytes,15,opt,name=tls_ca,json=tlsCa,proto3" json:"tls_ca,omitempty"` // Client certificate. - TlsCert string `protobuf:"bytes,9,opt,name=tls_cert,json=tlsCert,proto3" json:"tls_cert,omitempty"` + TlsCert string `protobuf:"bytes,16,opt,name=tls_cert,json=tlsCert,proto3" json:"tls_cert,omitempty"` // Password for decrypting tls_cert. - TlsKey string `protobuf:"bytes,10,opt,name=tls_key,json=tlsKey,proto3" json:"tls_key,omitempty"` + TlsKey string `protobuf:"bytes,17,opt,name=tls_key,json=tlsKey,proto3" 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 `protobuf:"varint,11,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,12,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,8,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"` // True if exporter uses push metrics mode. 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 Agent status. - Status AgentStatus `protobuf:"varint,15,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,9,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Listen port for scraping metrics. - ListenPort uint32 `protobuf:"varint,16,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` + ListenPort uint32 `protobuf:"varint,10,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` // True if tablestats group collectors are currently disabled. - TablestatsGroupDisabled bool `protobuf:"varint,17,opt,name=tablestats_group_disabled,json=tablestatsGroupDisabled,proto3" json:"tablestats_group_disabled,omitempty"` + TablestatsGroupDisabled bool `protobuf:"varint,12,opt,name=tablestats_group_disabled,json=tablestatsGroupDisabled,proto3" json:"tablestats_group_disabled,omitempty"` // Path to exec process. ProcessExecPath string `protobuf:"bytes,18,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` // Log level for exporter. @@ -669,13 +669,13 @@ type MongoDBExporter struct { // Custom user-assigned labels. CustomLabels map[string]string `protobuf:"bytes,8,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"` // True if exporter uses push metrics mode. - PushMetricsEnabled bool `protobuf:"varint,9,opt,name=push_metrics_enabled,json=pushMetricsEnabled,proto3" json:"push_metrics_enabled,omitempty"` + PushMetricsEnabled bool `protobuf:"varint,11,opt,name=push_metrics_enabled,json=pushMetricsEnabled,proto3" json:"push_metrics_enabled,omitempty"` // List of disabled collector names. - DisabledCollectors []string `protobuf:"bytes,10,rep,name=disabled_collectors,json=disabledCollectors,proto3" json:"disabled_collectors,omitempty"` + DisabledCollectors []string `protobuf:"bytes,12,rep,name=disabled_collectors,json=disabledCollectors,proto3" json:"disabled_collectors,omitempty"` // Actual Agent status. - Status AgentStatus `protobuf:"varint,11,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,9,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Listen port for scraping metrics. - ListenPort uint32 `protobuf:"varint,12,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` + ListenPort uint32 `protobuf:"varint,10,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` // List of colletions to get stats from. Can use * StatsCollections []string `protobuf:"bytes,13,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 @@ -872,13 +872,13 @@ type PostgresExporter struct { // Custom user-assigned labels. CustomLabels map[string]string `protobuf:"bytes,8,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"` // True if exporter uses push metrics mode. - PushMetricsEnabled bool `protobuf:"varint,9,opt,name=push_metrics_enabled,json=pushMetricsEnabled,proto3" json:"push_metrics_enabled,omitempty"` + PushMetricsEnabled bool `protobuf:"varint,11,opt,name=push_metrics_enabled,json=pushMetricsEnabled,proto3" json:"push_metrics_enabled,omitempty"` // List of disabled collector names. - DisabledCollectors []string `protobuf:"bytes,10,rep,name=disabled_collectors,json=disabledCollectors,proto3" json:"disabled_collectors,omitempty"` + DisabledCollectors []string `protobuf:"bytes,12,rep,name=disabled_collectors,json=disabledCollectors,proto3" json:"disabled_collectors,omitempty"` // Actual Agent status. - Status AgentStatus `protobuf:"varint,11,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,9,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Listen port for scraping metrics. - ListenPort uint32 `protobuf:"varint,12,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` + ListenPort uint32 `protobuf:"varint,10,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` // Path to exec process. ProcessExecPath string `protobuf:"bytes,13,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` // Log level for exporter. @@ -1056,13 +1056,13 @@ type ProxySQLExporter struct { // Custom user-assigned labels. CustomLabels map[string]string `protobuf:"bytes,8,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"` // True if exporter uses push metrics mode. - PushMetricsEnabled bool `protobuf:"varint,9,opt,name=push_metrics_enabled,json=pushMetricsEnabled,proto3" json:"push_metrics_enabled,omitempty"` + PushMetricsEnabled bool `protobuf:"varint,11,opt,name=push_metrics_enabled,json=pushMetricsEnabled,proto3" json:"push_metrics_enabled,omitempty"` // List of disabled collector names. - DisabledCollectors []string `protobuf:"bytes,10,rep,name=disabled_collectors,json=disabledCollectors,proto3" json:"disabled_collectors,omitempty"` + DisabledCollectors []string `protobuf:"bytes,12,rep,name=disabled_collectors,json=disabledCollectors,proto3" json:"disabled_collectors,omitempty"` // Actual Agent status. - Status AgentStatus `protobuf:"varint,11,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,9,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Listen port for scraping metrics. - ListenPort uint32 `protobuf:"varint,12,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` + ListenPort uint32 `protobuf:"varint,10,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` // Path to exec process. ProcessExecPath string `protobuf:"bytes,13,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` // Log level for exporter. @@ -1229,25 +1229,25 @@ type QANMySQLPerfSchemaAgent struct { // Skip TLS certificate and hostname validation. TlsSkipVerify bool `protobuf:"varint,7,opt,name=tls_skip_verify,json=tlsSkipVerify,proto3" json:"tls_skip_verify,omitempty"` // Certificate Authority certificate chain. - TlsCa string `protobuf:"bytes,8,opt,name=tls_ca,json=tlsCa,proto3" json:"tls_ca,omitempty"` + TlsCa string `protobuf:"bytes,11,opt,name=tls_ca,json=tlsCa,proto3" json:"tls_ca,omitempty"` // Client certificate. - TlsCert string `protobuf:"bytes,9,opt,name=tls_cert,json=tlsCert,proto3" json:"tls_cert,omitempty"` + TlsCert string `protobuf:"bytes,12,opt,name=tls_cert,json=tlsCert,proto3" json:"tls_cert,omitempty"` // Password for decrypting tls_cert. - TlsKey string `protobuf:"bytes,10,opt,name=tls_key,json=tlsKey,proto3" json:"tls_key,omitempty"` + TlsKey string `protobuf:"bytes,13,opt,name=tls_key,json=tlsKey,proto3" json:"tls_key,omitempty"` // Disable parsing comments from queries and showing them in QAN. - DisableCommentsParsing bool `protobuf:"varint,11,opt,name=disable_comments_parsing,json=disableCommentsParsing,proto3" json:"disable_comments_parsing,omitempty"` + DisableCommentsParsing bool `protobuf:"varint,18,opt,name=disable_comments_parsing,json=disableCommentsParsing,proto3" json:"disable_comments_parsing,omitempty"` // Limit query length in QAN (default: server-defined; -1: no limit). - MaxQueryLength int32 `protobuf:"varint,12,opt,name=max_query_length,json=maxQueryLength,proto3" json:"max_query_length,omitempty"` + MaxQueryLength int32 `protobuf:"varint,16,opt,name=max_query_length,json=maxQueryLength,proto3" json:"max_query_length,omitempty"` // True if query examples are disabled. - QueryExamplesDisabled bool `protobuf:"varint,13,opt,name=query_examples_disabled,json=queryExamplesDisabled,proto3" json:"query_examples_disabled,omitempty"` + QueryExamplesDisabled bool `protobuf:"varint,8,opt,name=query_examples_disabled,json=queryExamplesDisabled,proto3" json:"query_examples_disabled,omitempty"` // Custom user-assigned labels. - CustomLabels map[string]string `protobuf:"bytes,14,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,9,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"` // Actual Agent status. - Status AgentStatus `protobuf:"varint,15,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,10,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Path to exec process. - ProcessExecPath string `protobuf:"bytes,16,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` + ProcessExecPath string `protobuf:"bytes,14,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` // Log level for exporter. - LogLevel LogLevel `protobuf:"varint,17,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"` } func (x *QANMySQLPerfSchemaAgent) Reset() { @@ -1422,27 +1422,27 @@ type QANMySQLSlowlogAgent struct { // Skip TLS certificate and hostname validation. TlsSkipVerify bool `protobuf:"varint,7,opt,name=tls_skip_verify,json=tlsSkipVerify,proto3" json:"tls_skip_verify,omitempty"` // Certificate Authority certificate chain. - TlsCa string `protobuf:"bytes,8,opt,name=tls_ca,json=tlsCa,proto3" json:"tls_ca,omitempty"` + TlsCa string `protobuf:"bytes,12,opt,name=tls_ca,json=tlsCa,proto3" json:"tls_ca,omitempty"` // Client certificate. - TlsCert string `protobuf:"bytes,9,opt,name=tls_cert,json=tlsCert,proto3" json:"tls_cert,omitempty"` + TlsCert string `protobuf:"bytes,13,opt,name=tls_cert,json=tlsCert,proto3" json:"tls_cert,omitempty"` // Password for decrypting tls_cert. - TlsKey string `protobuf:"bytes,10,opt,name=tls_key,json=tlsKey,proto3" json:"tls_key,omitempty"` + TlsKey string `protobuf:"bytes,14,opt,name=tls_key,json=tlsKey,proto3" json:"tls_key,omitempty"` // Disable parsing comments from queries and showing them in QAN. - DisableCommentsParsing bool `protobuf:"varint,11,opt,name=disable_comments_parsing,json=disableCommentsParsing,proto3" json:"disable_comments_parsing,omitempty"` + DisableCommentsParsing bool `protobuf:"varint,18,opt,name=disable_comments_parsing,json=disableCommentsParsing,proto3" json:"disable_comments_parsing,omitempty"` // Limit query length in QAN (default: server-defined; -1: no limit) - MaxQueryLength int32 `protobuf:"varint,12,opt,name=max_query_length,json=maxQueryLength,proto3" json:"max_query_length,omitempty"` + MaxQueryLength int32 `protobuf:"varint,17,opt,name=max_query_length,json=maxQueryLength,proto3" json:"max_query_length,omitempty"` // True if query examples are disabled. - QueryExamplesDisabled bool `protobuf:"varint,13,opt,name=query_examples_disabled,json=queryExamplesDisabled,proto3" json:"query_examples_disabled,omitempty"` + QueryExamplesDisabled bool `protobuf:"varint,8,opt,name=query_examples_disabled,json=queryExamplesDisabled,proto3" json:"query_examples_disabled,omitempty"` // Slowlog file is rotated at this size if > 0. - MaxSlowlogFileSize int64 `protobuf:"varint,14,opt,name=max_slowlog_file_size,json=maxSlowlogFileSize,proto3" json:"max_slowlog_file_size,omitempty"` + MaxSlowlogFileSize int64 `protobuf:"varint,9,opt,name=max_slowlog_file_size,json=maxSlowlogFileSize,proto3" json:"max_slowlog_file_size,omitempty"` // Custom user-assigned labels. - CustomLabels map[string]string `protobuf:"bytes,15,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"` // Actual Agent status. - Status AgentStatus `protobuf:"varint,16,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,11,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // mod tidy - ProcessExecPath string `protobuf:"bytes,17,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` + ProcessExecPath string `protobuf:"bytes,15,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` // Log level for exporter. - LogLevel LogLevel `protobuf:"varint,18,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"` } func (x *QANMySQLSlowlogAgent) Reset() { @@ -1624,15 +1624,15 @@ type QANMongoDBProfilerAgent struct { // Skip TLS certificate and hostname validation. TlsSkipVerify bool `protobuf:"varint,7,opt,name=tls_skip_verify,json=tlsSkipVerify,proto3" json:"tls_skip_verify,omitempty"` // Limit query length in QAN (default: server-defined; -1: no limit). - MaxQueryLength int32 `protobuf:"varint,8,opt,name=max_query_length,json=maxQueryLength,proto3" json:"max_query_length,omitempty"` + MaxQueryLength int32 `protobuf:"varint,13,opt,name=max_query_length,json=maxQueryLength,proto3" json:"max_query_length,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,9,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"` // Actual Agent status. - Status AgentStatus `protobuf:"varint,11,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,10,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Path to exec process. - ProcessExecPath string `protobuf:"bytes,12,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` + ProcessExecPath string `protobuf:"bytes,11,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` // Log level for exporter. - LogLevel LogLevel `protobuf:"varint,13,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` + LogLevel LogLevel `protobuf:"varint,12,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` } func (x *QANMongoDBProfilerAgent) Reset() { @@ -1768,21 +1768,21 @@ type QANPostgreSQLPgStatementsAgent struct { // PostgreSQL username for getting pg stat statements data. Username string `protobuf:"bytes,5,opt,name=username,proto3" json:"username,omitempty"` // Disable parsing comments from queries and showing them in QAN. - DisableCommentsParsing bool `protobuf:"varint,6,opt,name=disable_comments_parsing,json=disableCommentsParsing,proto3" json:"disable_comments_parsing,omitempty"` + DisableCommentsParsing bool `protobuf:"varint,13,opt,name=disable_comments_parsing,json=disableCommentsParsing,proto3" json:"disable_comments_parsing,omitempty"` // Limit query length in QAN (default: server-defined; -1: no limit). - MaxQueryLength int32 `protobuf:"varint,7,opt,name=max_query_length,json=maxQueryLength,proto3" json:"max_query_length,omitempty"` + MaxQueryLength int32 `protobuf:"varint,12,opt,name=max_query_length,json=maxQueryLength,proto3" json:"max_query_length,omitempty"` // Use TLS for database connections. - Tls bool `protobuf:"varint,8,opt,name=tls,proto3" json:"tls,omitempty"` + Tls bool `protobuf:"varint,6,opt,name=tls,proto3" json:"tls,omitempty"` // Skip TLS certificate and hostname validation. - TlsSkipVerify bool `protobuf:"varint,9,opt,name=tls_skip_verify,json=tlsSkipVerify,proto3" json:"tls_skip_verify,omitempty"` + TlsSkipVerify bool `protobuf:"varint,7,opt,name=tls_skip_verify,json=tlsSkipVerify,proto3" json:"tls_skip_verify,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,8,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"` // Actual Agent status. - Status AgentStatus `protobuf:"varint,11,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,9,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Path to exec process. - ProcessExecPath string `protobuf:"bytes,12,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` + ProcessExecPath string `protobuf:"bytes,10,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` // Log level for exporter. - LogLevel LogLevel `protobuf:"varint,13,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` + LogLevel LogLevel `protobuf:"varint,11,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` } func (x *QANPostgreSQLPgStatementsAgent) Reset() { @@ -1929,19 +1929,19 @@ type QANPostgreSQLPgStatMonitorAgent struct { // Skip TLS certificate and hostname validation. TlsSkipVerify bool `protobuf:"varint,7,opt,name=tls_skip_verify,json=tlsSkipVerify,proto3" json:"tls_skip_verify,omitempty"` // Disable parsing comments from queries and showing them in QAN. - DisableCommentsParsing bool `protobuf:"varint,8,opt,name=disable_comments_parsing,json=disableCommentsParsing,proto3" json:"disable_comments_parsing,omitempty"` + DisableCommentsParsing bool `protobuf:"varint,14,opt,name=disable_comments_parsing,json=disableCommentsParsing,proto3" json:"disable_comments_parsing,omitempty"` // Limit query length in QAN (default: server-defined; -1: no limit). - MaxQueryLength int32 `protobuf:"varint,9,opt,name=max_query_length,json=maxQueryLength,proto3" json:"max_query_length,omitempty"` + MaxQueryLength int32 `protobuf:"varint,13,opt,name=max_query_length,json=maxQueryLength,proto3" json:"max_query_length,omitempty"` // True if query examples are disabled. - QueryExamplesDisabled bool `protobuf:"varint,10,opt,name=query_examples_disabled,json=queryExamplesDisabled,proto3" json:"query_examples_disabled,omitempty"` + QueryExamplesDisabled bool `protobuf:"varint,8,opt,name=query_examples_disabled,json=queryExamplesDisabled,proto3" json:"query_examples_disabled,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"` + CustomLabels map[string]string `protobuf:"bytes,9,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"` // Actual Agent status. - Status AgentStatus `protobuf:"varint,12,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` + Status AgentStatus `protobuf:"varint,10,opt,name=status,proto3,enum=inventory.v1.AgentStatus" json:"status,omitempty"` // Path to exec process. - ProcessExecPath string `protobuf:"bytes,13,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` + ProcessExecPath string `protobuf:"bytes,11,opt,name=process_exec_path,json=processExecPath,proto3" json:"process_exec_path,omitempty"` // Log level for exporter. - LogLevel LogLevel `protobuf:"varint,14,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` + LogLevel LogLevel `protobuf:"varint,12,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` } func (x *QANPostgreSQLPgStatMonitorAgent) Reset() { @@ -2261,9 +2261,9 @@ type ExternalExporter struct { // Path under which metrics are exposed, used to generate URI. MetricsPath string `protobuf:"bytes,7,opt,name=metrics_path,json=metricsPath,proto3" json:"metrics_path,omitempty"` // Custom user-assigned labels. - CustomLabels map[string]string `protobuf:"bytes,9,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"` // Listen port for scraping metrics. - ListenPort uint32 `protobuf:"varint,10,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` + ListenPort uint32 `protobuf:"varint,8,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"` // True if exporter uses push metrics mode. PushMetricsEnabled bool `protobuf:"varint,11,opt,name=push_metrics_enabled,json=pushMetricsEnabled,proto3" json:"push_metrics_enabled,omitempty"` // Path to exec process. @@ -2706,19 +2706,19 @@ type ListAgentsResponse struct { unknownFields protoimpl.UnknownFields PmmAgent []*PMMAgent `protobuf:"bytes,1,rep,name=pmm_agent,json=pmmAgent,proto3" json:"pmm_agent,omitempty"` - VmAgent []*VMAgent `protobuf:"bytes,2,rep,name=vm_agent,json=vmAgent,proto3" json:"vm_agent,omitempty"` - NodeExporter []*NodeExporter `protobuf:"bytes,3,rep,name=node_exporter,json=nodeExporter,proto3" json:"node_exporter,omitempty"` - MysqldExporter []*MySQLdExporter `protobuf:"bytes,4,rep,name=mysqld_exporter,json=mysqldExporter,proto3" json:"mysqld_exporter,omitempty"` - MongodbExporter []*MongoDBExporter `protobuf:"bytes,5,rep,name=mongodb_exporter,json=mongodbExporter,proto3" json:"mongodb_exporter,omitempty"` - PostgresExporter []*PostgresExporter `protobuf:"bytes,6,rep,name=postgres_exporter,json=postgresExporter,proto3" json:"postgres_exporter,omitempty"` - ProxysqlExporter []*ProxySQLExporter `protobuf:"bytes,7,rep,name=proxysql_exporter,json=proxysqlExporter,proto3" json:"proxysql_exporter,omitempty"` - QanMysqlPerfschemaAgent []*QANMySQLPerfSchemaAgent `protobuf:"bytes,8,rep,name=qan_mysql_perfschema_agent,json=qanMysqlPerfschemaAgent,proto3" json:"qan_mysql_perfschema_agent,omitempty"` - QanMysqlSlowlogAgent []*QANMySQLSlowlogAgent `protobuf:"bytes,9,rep,name=qan_mysql_slowlog_agent,json=qanMysqlSlowlogAgent,proto3" json:"qan_mysql_slowlog_agent,omitempty"` - QanMongodbProfilerAgent []*QANMongoDBProfilerAgent `protobuf:"bytes,10,rep,name=qan_mongodb_profiler_agent,json=qanMongodbProfilerAgent,proto3" json:"qan_mongodb_profiler_agent,omitempty"` - QanPostgresqlPgstatementsAgent []*QANPostgreSQLPgStatementsAgent `protobuf:"bytes,11,rep,name=qan_postgresql_pgstatements_agent,json=qanPostgresqlPgstatementsAgent,proto3" json:"qan_postgresql_pgstatements_agent,omitempty"` - QanPostgresqlPgstatmonitorAgent []*QANPostgreSQLPgStatMonitorAgent `protobuf:"bytes,12,rep,name=qan_postgresql_pgstatmonitor_agent,json=qanPostgresqlPgstatmonitorAgent,proto3" json:"qan_postgresql_pgstatmonitor_agent,omitempty"` - RdsExporter []*RDSExporter `protobuf:"bytes,13,rep,name=rds_exporter,json=rdsExporter,proto3" json:"rds_exporter,omitempty"` - ExternalExporter []*ExternalExporter `protobuf:"bytes,14,rep,name=external_exporter,json=externalExporter,proto3" json:"external_exporter,omitempty"` + VmAgent []*VMAgent `protobuf:"bytes,14,rep,name=vm_agent,json=vmAgent,proto3" json:"vm_agent,omitempty"` + NodeExporter []*NodeExporter `protobuf:"bytes,2,rep,name=node_exporter,json=nodeExporter,proto3" json:"node_exporter,omitempty"` + MysqldExporter []*MySQLdExporter `protobuf:"bytes,3,rep,name=mysqld_exporter,json=mysqldExporter,proto3" json:"mysqld_exporter,omitempty"` + MongodbExporter []*MongoDBExporter `protobuf:"bytes,4,rep,name=mongodb_exporter,json=mongodbExporter,proto3" json:"mongodb_exporter,omitempty"` + PostgresExporter []*PostgresExporter `protobuf:"bytes,5,rep,name=postgres_exporter,json=postgresExporter,proto3" json:"postgres_exporter,omitempty"` + ProxysqlExporter []*ProxySQLExporter `protobuf:"bytes,6,rep,name=proxysql_exporter,json=proxysqlExporter,proto3" json:"proxysql_exporter,omitempty"` + QanMysqlPerfschemaAgent []*QANMySQLPerfSchemaAgent `protobuf:"bytes,7,rep,name=qan_mysql_perfschema_agent,json=qanMysqlPerfschemaAgent,proto3" json:"qan_mysql_perfschema_agent,omitempty"` + QanMysqlSlowlogAgent []*QANMySQLSlowlogAgent `protobuf:"bytes,8,rep,name=qan_mysql_slowlog_agent,json=qanMysqlSlowlogAgent,proto3" json:"qan_mysql_slowlog_agent,omitempty"` + QanMongodbProfilerAgent []*QANMongoDBProfilerAgent `protobuf:"bytes,9,rep,name=qan_mongodb_profiler_agent,json=qanMongodbProfilerAgent,proto3" json:"qan_mongodb_profiler_agent,omitempty"` + QanPostgresqlPgstatementsAgent []*QANPostgreSQLPgStatementsAgent `protobuf:"bytes,10,rep,name=qan_postgresql_pgstatements_agent,json=qanPostgresqlPgstatementsAgent,proto3" json:"qan_postgresql_pgstatements_agent,omitempty"` + QanPostgresqlPgstatmonitorAgent []*QANPostgreSQLPgStatMonitorAgent `protobuf:"bytes,13,rep,name=qan_postgresql_pgstatmonitor_agent,json=qanPostgresqlPgstatmonitorAgent,proto3" json:"qan_postgresql_pgstatmonitor_agent,omitempty"` + RdsExporter []*RDSExporter `protobuf:"bytes,11,rep,name=rds_exporter,json=rdsExporter,proto3" json:"rds_exporter,omitempty"` + ExternalExporter []*ExternalExporter `protobuf:"bytes,12,rep,name=external_exporter,json=externalExporter,proto3" json:"external_exporter,omitempty"` AzureDatabaseExporter []*AzureDatabaseExporter `protobuf:"bytes,15,rep,name=azure_database_exporter,json=azureDatabaseExporter,proto3" json:"azure_database_exporter,omitempty"` } @@ -2926,8 +2926,8 @@ type GetAgentResponse struct { // *GetAgentResponse_QanMongodbProfilerAgent // *GetAgentResponse_QanPostgresqlPgstatementsAgent // *GetAgentResponse_QanPostgresqlPgstatmonitorAgent - // *GetAgentResponse_ExternalExporter // *GetAgentResponse_RdsExporter + // *GetAgentResponse_ExternalExporter // *GetAgentResponse_AzureDatabaseExporter Agent isGetAgentResponse_Agent `protobuf_oneof:"agent"` } @@ -3055,16 +3055,16 @@ func (x *GetAgentResponse) GetQanPostgresqlPgstatmonitorAgent() *QANPostgreSQLPg return nil } -func (x *GetAgentResponse) GetExternalExporter() *ExternalExporter { - if x, ok := x.GetAgent().(*GetAgentResponse_ExternalExporter); ok { - return x.ExternalExporter +func (x *GetAgentResponse) GetRdsExporter() *RDSExporter { + if x, ok := x.GetAgent().(*GetAgentResponse_RdsExporter); ok { + return x.RdsExporter } return nil } -func (x *GetAgentResponse) GetRdsExporter() *RDSExporter { - if x, ok := x.GetAgent().(*GetAgentResponse_RdsExporter); ok { - return x.RdsExporter +func (x *GetAgentResponse) GetExternalExporter() *ExternalExporter { + if x, ok := x.GetAgent().(*GetAgentResponse_ExternalExporter); ok { + return x.ExternalExporter } return nil } @@ -3085,55 +3085,55 @@ type GetAgentResponse_PmmAgent struct { } type GetAgentResponse_Vmagent struct { - Vmagent *VMAgent `protobuf:"bytes,2,opt,name=vmagent,proto3,oneof"` + Vmagent *VMAgent `protobuf:"bytes,14,opt,name=vmagent,proto3,oneof"` } type GetAgentResponse_NodeExporter struct { - NodeExporter *NodeExporter `protobuf:"bytes,3,opt,name=node_exporter,json=nodeExporter,proto3,oneof"` + NodeExporter *NodeExporter `protobuf:"bytes,2,opt,name=node_exporter,json=nodeExporter,proto3,oneof"` } type GetAgentResponse_MysqldExporter struct { - MysqldExporter *MySQLdExporter `protobuf:"bytes,4,opt,name=mysqld_exporter,json=mysqldExporter,proto3,oneof"` + MysqldExporter *MySQLdExporter `protobuf:"bytes,3,opt,name=mysqld_exporter,json=mysqldExporter,proto3,oneof"` } type GetAgentResponse_MongodbExporter struct { - MongodbExporter *MongoDBExporter `protobuf:"bytes,5,opt,name=mongodb_exporter,json=mongodbExporter,proto3,oneof"` + MongodbExporter *MongoDBExporter `protobuf:"bytes,4,opt,name=mongodb_exporter,json=mongodbExporter,proto3,oneof"` } type GetAgentResponse_PostgresExporter struct { - PostgresExporter *PostgresExporter `protobuf:"bytes,6,opt,name=postgres_exporter,json=postgresExporter,proto3,oneof"` + PostgresExporter *PostgresExporter `protobuf:"bytes,5,opt,name=postgres_exporter,json=postgresExporter,proto3,oneof"` } type GetAgentResponse_ProxysqlExporter struct { - ProxysqlExporter *ProxySQLExporter `protobuf:"bytes,7,opt,name=proxysql_exporter,json=proxysqlExporter,proto3,oneof"` + ProxysqlExporter *ProxySQLExporter `protobuf:"bytes,6,opt,name=proxysql_exporter,json=proxysqlExporter,proto3,oneof"` } type GetAgentResponse_QanMysqlPerfschemaAgent struct { - QanMysqlPerfschemaAgent *QANMySQLPerfSchemaAgent `protobuf:"bytes,8,opt,name=qan_mysql_perfschema_agent,json=qanMysqlPerfschemaAgent,proto3,oneof"` + QanMysqlPerfschemaAgent *QANMySQLPerfSchemaAgent `protobuf:"bytes,7,opt,name=qan_mysql_perfschema_agent,json=qanMysqlPerfschemaAgent,proto3,oneof"` } type GetAgentResponse_QanMysqlSlowlogAgent struct { - QanMysqlSlowlogAgent *QANMySQLSlowlogAgent `protobuf:"bytes,9,opt,name=qan_mysql_slowlog_agent,json=qanMysqlSlowlogAgent,proto3,oneof"` + QanMysqlSlowlogAgent *QANMySQLSlowlogAgent `protobuf:"bytes,8,opt,name=qan_mysql_slowlog_agent,json=qanMysqlSlowlogAgent,proto3,oneof"` } type GetAgentResponse_QanMongodbProfilerAgent struct { - QanMongodbProfilerAgent *QANMongoDBProfilerAgent `protobuf:"bytes,10,opt,name=qan_mongodb_profiler_agent,json=qanMongodbProfilerAgent,proto3,oneof"` + QanMongodbProfilerAgent *QANMongoDBProfilerAgent `protobuf:"bytes,9,opt,name=qan_mongodb_profiler_agent,json=qanMongodbProfilerAgent,proto3,oneof"` } type GetAgentResponse_QanPostgresqlPgstatementsAgent struct { - QanPostgresqlPgstatementsAgent *QANPostgreSQLPgStatementsAgent `protobuf:"bytes,11,opt,name=qan_postgresql_pgstatements_agent,json=qanPostgresqlPgstatementsAgent,proto3,oneof"` + QanPostgresqlPgstatementsAgent *QANPostgreSQLPgStatementsAgent `protobuf:"bytes,10,opt,name=qan_postgresql_pgstatements_agent,json=qanPostgresqlPgstatementsAgent,proto3,oneof"` } type GetAgentResponse_QanPostgresqlPgstatmonitorAgent struct { - QanPostgresqlPgstatmonitorAgent *QANPostgreSQLPgStatMonitorAgent `protobuf:"bytes,12,opt,name=qan_postgresql_pgstatmonitor_agent,json=qanPostgresqlPgstatmonitorAgent,proto3,oneof"` + QanPostgresqlPgstatmonitorAgent *QANPostgreSQLPgStatMonitorAgent `protobuf:"bytes,13,opt,name=qan_postgresql_pgstatmonitor_agent,json=qanPostgresqlPgstatmonitorAgent,proto3,oneof"` } -type GetAgentResponse_ExternalExporter struct { - ExternalExporter *ExternalExporter `protobuf:"bytes,13,opt,name=external_exporter,json=externalExporter,proto3,oneof"` +type GetAgentResponse_RdsExporter struct { + RdsExporter *RDSExporter `protobuf:"bytes,11,opt,name=rds_exporter,json=rdsExporter,proto3,oneof"` } -type GetAgentResponse_RdsExporter struct { - RdsExporter *RDSExporter `protobuf:"bytes,14,opt,name=rds_exporter,json=rdsExporter,proto3,oneof"` +type GetAgentResponse_ExternalExporter struct { + ExternalExporter *ExternalExporter `protobuf:"bytes,12,opt,name=external_exporter,json=externalExporter,proto3,oneof"` } type GetAgentResponse_AzureDatabaseExporter struct { @@ -3164,10 +3164,10 @@ func (*GetAgentResponse_QanPostgresqlPgstatementsAgent) isGetAgentResponse_Agent func (*GetAgentResponse_QanPostgresqlPgstatmonitorAgent) isGetAgentResponse_Agent() {} -func (*GetAgentResponse_ExternalExporter) isGetAgentResponse_Agent() {} - func (*GetAgentResponse_RdsExporter) isGetAgentResponse_Agent() {} +func (*GetAgentResponse_ExternalExporter) isGetAgentResponse_Agent() {} + func (*GetAgentResponse_AzureDatabaseExporter) isGetAgentResponse_Agent() {} type GetAgentLogsRequest struct { @@ -7545,14 +7545,14 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0x03, 0x20, 0x01, 0x28, + 0x64, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x05, 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, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x06, 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, - 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x50, 0x6f, 0x72, + 0x07, 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, @@ -7566,16 +7566,16 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0x07, 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, 0x08, 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, 0x07, 0x20, 0x01, 0x28, + 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x05, 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, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x65, + 0x6f, 0x72, 0x74, 0x18, 0x06, 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, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, 0x61, 0x74, @@ -7603,16 +7603,16 @@ 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, + 0x79, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, 0x0f, 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, + 0x63, 0x65, 0x72, 0x74, 0x18, 0x10, 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, 0x11, 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, + 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x08, 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, @@ -7624,13 +7624,13 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, - 0x0f, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x09, 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, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, + 0x65, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0a, 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, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x74, 0x61, + 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0c, 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, 0x12, 0x20, 0x01, 0x28, 0x09, @@ -7666,15 +7666,15 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, + 0x18, 0x0b, 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, + 0x73, 0x18, 0x0c, 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, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x09, 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, 0x0c, 0x20, + 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0a, 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, 0x0d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, @@ -7718,16 +7718,16 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, + 0x63, 0x73, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0b, 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, + 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x0c, 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, - 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x09, 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, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, + 0x65, 0x6e, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0a, 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, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, @@ -7765,16 +7765,16 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, + 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0b, 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, + 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x0c, 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, 0x0b, 0x20, + 0x6f, 0x72, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x09, 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, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, + 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0a, 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, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x45, 0x78, 0x65, 0x63, 0x50, @@ -7803,33 +7803,33 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, + 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, - 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, + 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, 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, + 0x69, 0x6e, 0x67, 0x18, 0x12, 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, + 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x10, 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, + 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x08, 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, + 0x62, 0x65, 0x6c, 0x73, 0x18, 0x09, 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, 0x0f, 0x20, 0x01, 0x28, + 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, 0x2a, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, - 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x0e, 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, 0x11, 0x20, + 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, @@ -7851,43 +7851,43 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, + 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, 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, + 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, 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, + 0x73, 0x69, 0x6e, 0x67, 0x18, 0x12, 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, + 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x11, 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, + 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x08, 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, + 0x6c, 0x6f, 0x67, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x09, 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, + 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0a, 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, 0x10, 0x20, 0x01, + 0x6c, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0b, 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, 0x11, 0x20, 0x01, 0x28, 0x09, + 0x5f, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x0f, 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, 0x12, + 0x68, 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, 0xca, 0x04, 0x0a, 0x17, 0x51, 0x41, 0x4e, 0x4d, + 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xc4, 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, @@ -7903,924 +7903,729 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, + 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0d, 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, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x09, 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, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6e, 0x76, 0x65, + 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, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, + 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, 0x0d, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x69, 0x6e, + 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, 0x4a, 0x04, - 0x08, 0x09, 0x10, 0x0a, 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, 0x0b, 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, 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, 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, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 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, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, + 0x67, 0x18, 0x0d, 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, 0x0c, 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, - 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, 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, 0x07, 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, 0x08, 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, 0x09, 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, 0x0a, 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, 0x0b, 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, 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, - 0x30, 0x0a, 0x14, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, - 0x79, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x0e, 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, 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, + 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, 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, 0x63, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x73, 0x18, 0x08, 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, 0x09, 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, 0x0a, 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, 0x0b, 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, 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, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, + 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0d, 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, 0x08, + 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, 0x09, 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, 0x0a, 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, 0x0b, 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, 0x0c, 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, + 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, 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, 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, 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, 0x08, 0x20, 0x01, 0x28, 0x0e, + 0x12, 0x31, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 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, 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, - 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, + 0x72, 0x74, 0x18, 0x08, 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, 0x09, + 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, 0x0a, 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, 0x0b, + 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, 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, 0x30, 0x0a, 0x14, 0x61, 0x75, 0x74, + 0x6f, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x69, 0x6d, 0x69, + 0x74, 0x18, 0x0e, 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, 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, 0x0a, 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, 0x08, 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, 0x0b, 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, 0x0c, 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, 0x08, 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, 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, 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, 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, 0x0e, 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, 0x02, 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, 0x03, 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, 0x04, 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, 0x05, 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, 0x06, 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, 0x07, 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, 0x08, 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, 0x09, 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, 0x0a, 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, 0x0d, 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, 0x3c, 0x0a, + 0x0c, 0x72, 0x64, 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x0b, 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, 0x4b, 0x0a, 0x11, 0x65, + 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, + 0x18, 0x0c, 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, 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, 0x0e, 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, 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, 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, + 0x07, 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, 0x08, 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, 0x09, 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, + 0x0a, 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, 0x0d, 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, 0x3e, 0x0a, 0x0c, 0x72, 0x64, 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, + 0x74, 0x65, 0x72, 0x18, 0x0b, 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, 0x4d, 0x0a, 0x11, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, + 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x0c, 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, 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, 0xde, 0x01, 0x0a, 0x12, 0x41, 0x64, 0x64, 0x50, + 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x57, + 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 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, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, + 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x4a, 0x0a, 0x13, 0x41, 0x64, 0x64, 0x50, + 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x33, 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, 0x52, 0x08, 0x70, 0x6d, 0x6d, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x22, 0xcc, 0x05, 0x0a, 0x12, 0x41, 0x64, 0x64, 0x45, 0x78, 0x70, 0x6f, + 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4a, 0x0a, 0x0d, 0x6e, + 0x6f, 0x64, 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, 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, 0x02, 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, 0x03, 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, 0x04, 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, 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, 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, 0x06, 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, 0x07, 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, 0x08, 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, 0x42, 0x0a, 0x0a, 0x08, 0x65, 0x78, 0x70, 0x6f, 0x72, + 0x74, 0x65, 0x72, 0x22, 0xa6, 0x05, 0x0a, 0x13, 0x41, 0x64, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, + 0x74, 0x65, 0x72, 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, 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, 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, 0x02, 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, 0x03, 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, 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, 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, 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, 0x3c, 0x0a, 0x0c, 0x72, 0x64, 0x73, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, - 0x74, 0x65, 0x72, 0x18, 0x0d, 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, 0x4b, 0x0a, 0x11, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x65, 0x78, - 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x69, + 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, 0x04, 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, 0x05, 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, 0x06, 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, 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, 0xde, 0x01, - 0x0a, 0x12, 0x41, 0x64, 0x64, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 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, 0x57, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, - 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x43, 0x75, + 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, 0x07, 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, 0x08, 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, + 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, + 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, 0x1a, 0x3f, 0x0a, + 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, 0x4a, - 0x0a, 0x13, 0x41, 0x64, 0x64, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 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, - 0x52, 0x08, 0x70, 0x6d, 0x6d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x22, 0xcc, 0x05, 0x0a, 0x12, 0x41, - 0x64, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x4a, 0x0a, 0x0d, 0x6e, 0x6f, 0x64, 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, 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, 0x02, 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, 0x03, 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, 0x04, 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, 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, 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, 0x06, 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, 0x07, 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, 0x08, 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, 0x42, 0x0a, 0x0a, - 0x08, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x22, 0xa6, 0x05, 0x0a, 0x13, 0x41, 0x64, - 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 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, 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, 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, 0x02, 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, 0x03, 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, 0x04, - 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, 0x05, 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, 0x06, 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, 0x07, 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, 0x08, 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, 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 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, 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, 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, 0x09, 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, 0x07, 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, 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, 0x0a, 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, 0x0b, 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, 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, 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, 0x0a, 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, 0x0b, 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, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, - 0x12, 0x5d, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, - 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 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, 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, 0x0d, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x11, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, - 0x63, 0x74, 0x6f, 0x72, 0x73, 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, 0x0e, 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, 0x0f, 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, 0x25, 0x0a, 0x0e, 0x61, 0x67, 0x65, - 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, - 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x11, 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, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, - 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x13, 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, 0x14, 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, 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, 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, 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, + 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, 0x6d, - 0x0a, 0x1e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, + 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, 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, 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, 0x09, 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, 0x07, 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, 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, 0x0a, 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, 0x0b, + 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, 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, 0xe8, 0x05, - 0x0a, 0x21, 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, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 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, 0x0a, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, - 0x63, 0x65, 0x72, 0x74, 0x18, 0x0b, 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, 0x0c, - 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, 0x0e, 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, 0x07, 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, 0x66, 0x0a, 0x0d, - 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x08, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x41, 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, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 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, 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, 0x09, 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, - 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, 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, 0x22, 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, 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, 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, 0x95, 0x06, - 0x0a, 0x1e, 0x41, 0x64, 0x64, 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, 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, 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, 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, 0x0a, 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, 0x0b, + 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, 0x0c, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x5d, 0x0a, 0x0d, 0x63, 0x75, + 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x38, 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, 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, 0x0d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x64, 0x69, + 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 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, 0x0e, 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, 0x0f, 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, 0x25, 0x0a, 0x0e, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x73, + 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x67, 0x65, + 0x6e, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x74, + 0x61, 0x74, 0x73, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, + 0x11, 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, 0x12, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x10, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, + 0x69, 0x6d, 0x69, 0x74, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, + 0x6c, 0x18, 0x13, 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, 0x14, 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, 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, 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, @@ -8833,135 +8638,312 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 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, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, - 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0f, 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, 0x07, 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, 0x08, 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, 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, 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, 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, 0x10, 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, 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, 0x7c, 0x0a, 0x1f, 0x41, 0x64, 0x64, 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, 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, + 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, 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, 0xa9, 0x06, - 0x0a, 0x21, 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, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 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, + 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, 0xe8, 0x05, 0x0a, 0x21, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, + 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x0b, + 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, 0x0c, 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, 0x0e, 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, 0x07, 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, 0x66, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, + 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, 0x09, 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, 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, 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, 0x22, 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, 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, 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, 0x95, 0x06, 0x0a, 0x1e, 0x41, 0x64, 0x64, 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, 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, 0x2e, 0x0a, 0x13, 0x74, 0x6c, 0x73, 0x5f, - 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x6b, 0x65, 0x79, 0x18, - 0x09, 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, 0x0a, 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, 0x0b, 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, 0x0f, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x65, 0x6e, - 0x67, 0x74, 0x68, 0x12, 0x66, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, - 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 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, + 0x69, 0x70, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 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, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, + 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0f, 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, 0x07, 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, 0x08, 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, 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, + 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, 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, + 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, - 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, 0x0c, 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, 0x0d, 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, 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, 0x88, 0x01, 0x0a, 0x22, 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, 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, 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, 0x89, 0x01, 0x0a, 0x24, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, + 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, 0x10, 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, 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, + 0x7c, 0x0a, 0x1f, 0x41, 0x64, 0x64, 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, 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, 0xa9, 0x06, 0x0a, 0x21, 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, 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, + 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x09, 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, 0x0a, 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, 0x0b, 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, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, + 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x66, 0x0a, + 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 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, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 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, 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, 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, 0x0c, 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, + 0x0d, 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, 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, 0x88, 0x01, 0x0a, 0x22, 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, 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, @@ -8969,44 +8951,310 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0xc0, - 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, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x6d, 0x0a, 0x0d, 0x63, 0x75, 0x73, - 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x48, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, + 0x62, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 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, 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, 0xc0, 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, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x6d, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, + 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 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, + 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 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, 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, 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, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0d, 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, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, + 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x0a, 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, 0x0b, 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, 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, 0xa4, 0x01, 0x0a, 0x29, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, 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, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, - 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0d, 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, 0x09, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, - 0x65, 0x72, 0x74, 0x18, 0x0a, 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, 0x0b, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x6c, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x33, 0x0a, 0x09, 0x6c, + 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, 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, 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, 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, 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, + 0xf8, 0x05, 0x0a, 0x29, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, + 0x0e, 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, + 0x07, 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, 0x6e, 0x0a, 0x0d, 0x63, + 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x49, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, 0x09, 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, 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, + 0x5f, 0x63, 0x61, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, + 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x0b, 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, 0x0c, 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, 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, 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, 0xa8, 0x01, 0x0a, 0x2a, 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, 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, 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, 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, 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, + 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, 0x0b, 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, 0x07, 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, 0x08, 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, 0x09, 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, 0x0a, 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, @@ -9014,695 +9262,447 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0xa4, 0x01, 0x0a, 0x29, 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, 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, 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, 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, + 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, 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, 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, 0xf8, 0x05, 0x0a, 0x29, 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, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 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, 0x0e, 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, 0x07, 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, 0x6e, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, - 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x49, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 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, 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, 0x09, 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, - 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, - 0x72, 0x74, 0x18, 0x0b, 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, 0x0c, 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, 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, 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, 0xa8, 0x01, 0x0a, 0x2a, 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, 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, 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, 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, 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, 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, 0x0b, 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, 0x07, 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, 0x08, 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, 0x09, 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, 0x0a, - 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, 0x8e, 0x2e, 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, + 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, 0x0e, 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, 0x02, 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, 0x03, 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, 0x04, 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, 0x05, 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, 0x06, 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, 0x07, 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, 0x08, 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, 0x09, 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, 0x0a, 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, 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, 0x0b, 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, 0x0c, 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, 0x8e, 0x2e, 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, 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, 0xa2, 0x01, - 0x0a, 0x0b, 0x41, 0x64, 0x64, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x20, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x21, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x4e, 0x92, 0x41, 0x20, 0x12, 0x0d, 0x41, 0x64, 0x64, 0x20, 0x50, 0x4d, 0x4d, - 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x0f, 0x41, 0x64, 0x64, 0x73, 0x20, 0x50, 0x4d, 0x4d, - 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x3a, 0x01, 0x2a, - 0x22, 0x20, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, - 0x6e, 0x74, 0x12, 0xac, 0x01, 0x0a, 0x0b, 0x41, 0x64, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, - 0x65, 0x72, 0x12, 0x20, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, - 0x31, 0x2e, 0x41, 0x64, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x58, 0x92, 0x41, 0x2a, 0x12, 0x0f, 0x41, 0x64, - 0x64, 0x20, 0x61, 0x6e, 0x20, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x17, 0x41, - 0x64, 0x64, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x20, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x3a, 0x01, 0x2a, 0x22, - 0x20, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, - 0x72, 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, + 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, 0xa2, 0x01, 0x0a, 0x0b, 0x41, 0x64, 0x64, 0x50, + 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x20, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4e, 0x92, 0x41, + 0x20, 0x12, 0x0d, 0x41, 0x64, 0x64, 0x20, 0x50, 0x4d, 0x4d, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x1a, 0x0f, 0x41, 0x64, 0x64, 0x73, 0x20, 0x50, 0x4d, 0x4d, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, + 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x3a, 0x01, 0x2a, 0x22, 0x20, 0x2f, 0x76, 0x31, 0x2f, + 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, + 0x2f, 0x41, 0x64, 0x64, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0xac, 0x01, 0x0a, + 0x0b, 0x41, 0x64, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x20, 0x2e, 0x69, + 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x45, + 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, + 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, + 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x58, 0x92, 0x41, 0x2a, 0x12, 0x0f, 0x41, 0x64, 0x64, 0x20, 0x61, 0x6e, 0x20, 0x45, + 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x17, 0x41, 0x64, 0x64, 0x73, 0x20, 0x61, 0x6e, + 0x20, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, + 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x3a, 0x01, 0x2a, 0x22, 0x20, 0x2f, 0x76, 0x31, 0x2f, 0x69, + 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, + 0x41, 0x64, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 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, 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, + 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, 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, 0x91, 0x02, 0x0a, 0x1a, 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, 0x12, 0x2f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, + 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, 0x91, 0x02, 0x0a, 0x1a, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, + 0x74, 0x12, 0x2f, 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, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x30, 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, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8f, 0x01, 0x92, 0x41, 0x52, 0x12, 0x20, 0x41, 0x64, 0x64, 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, 0x2e, 0x41, 0x64, + 0x64, 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, 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, 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, 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, 0xff, 0x01, 0x0a, + 0x17, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, + 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x2c, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8f, 0x01, 0x92, 0x41, 0x52, - 0x12, 0x20, 0x41, 0x64, 0x64, 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, 0x2e, 0x41, 0x64, 0x64, 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, 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, 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, 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, + 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 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, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x86, 0x01, 0x92, 0x41, 0x4c, 0x12, 0x1d, 0x41, 0x64, 0x64, + 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, 0x2b, 0x41, 0x64, 0x64, 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, 0x31, 0x3a, 0x01, 0x2a, + 0x22, 0x2c, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, + 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 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, 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, 0xff, 0x01, 0x0a, 0x17, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, - 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x2c, - 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x86, 0x01, 0x92, 0x41, - 0x4c, 0x12, 0x1d, 0x41, 0x64, 0x64, 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, 0x2b, 0x41, 0x64, 0x64, 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, 0x31, 0x3a, 0x01, 0x2a, 0x22, 0x2c, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, - 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 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, 0x91, 0x02, 0x0a, 0x1a, 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, 0x12, 0x2f, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x6f, 0x6e, + 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, 0x91, 0x02, 0x0a, 0x1a, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8f, 0x01, 0x92, 0x41, 0x52, - 0x12, 0x20, 0x41, 0x64, 0x64, 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, 0x2e, 0x41, 0x64, 0x64, 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, 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, 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, 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, + 0x74, 0x12, 0x2f, 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, 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, 0xc7, 0x02, 0x0a, 0x21, 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, 0x12, 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, 0x65, 0x6d, - 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x37, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb0, 0x01, 0x92, 0x41, 0x6c, 0x12, - 0x2d, 0x41, 0x64, 0x64, 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, 0x3b, - 0x41, 0x64, 0x64, 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, - 0x3b, 0x3a, 0x01, 0x2a, 0x22, 0x36, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 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, 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, + 0x73, 0x74, 0x1a, 0x30, 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, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8f, 0x01, 0x92, 0x41, 0x52, 0x12, 0x20, 0x41, 0x64, 0x64, 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, 0x2e, 0x41, 0x64, + 0x64, 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, 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, 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, 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, 0xc7, 0x02, 0x0a, + 0x21, 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, 0x12, 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, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, + 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0xb0, 0x01, 0x92, 0x41, 0x6c, 0x12, 0x2d, 0x41, 0x64, 0x64, 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, 0x3b, 0x41, 0x64, 0x64, 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, 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, 0xc5, 0x02, 0x0a, 0x22, 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, 0x12, - 0x37, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0xab, 0x01, 0x92, 0x41, 0x66, 0x12, 0x2a, 0x41, 0x64, 0x64, 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, 0x38, 0x41, 0x64, 0x64, 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, 0x3c, 0x3a, 0x01, 0x2a, 0x22, 0x37, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, - 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 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, - 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, + 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3b, 0x3a, 0x01, 0x2a, 0x22, 0x36, + 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, + 0x65, 0x6e, 0x74, 0x73, 0x2f, 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, 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, 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, + 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, 0xc5, 0x02, 0x0a, 0x22, 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, 0x12, 0x37, 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, 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, + 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x38, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xab, 0x01, 0x92, + 0x41, 0x66, 0x12, 0x2a, 0x41, 0x64, 0x64, 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, 0x38, + 0x41, 0x64, 0x64, 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, 0x3c, 0x3a, 0x01, + 0x2a, 0x22, 0x37, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, + 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 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, 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, 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, 0xa1, 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, 0x4d, 0x92, 0x41, 0x24, 0x12, 0x0f, - 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, - 0x11, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x20, 0x3a, 0x01, 0x2a, 0x22, 0x1b, 0x2f, 0x76, 0x31, + 0x6e, 0x69, 0x74, 0x6f, 0x72, 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, 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, + 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, 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, 0xa1, + 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, 0x4d, 0x92, 0x41, 0x24, 0x12, 0x0f, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, + 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x11, 0x52, 0x65, 0x6d, 0x6f, 0x76, + 0x65, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 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 ( @@ -9897,8 +9897,8 @@ var file_inventory_v1_agents_proto_depIdxs = []int32{ 10, // 65: inventory.v1.GetAgentResponse.qan_mongodb_profiler_agent:type_name -> inventory.v1.QANMongoDBProfilerAgent 11, // 66: inventory.v1.GetAgentResponse.qan_postgresql_pgstatements_agent:type_name -> inventory.v1.QANPostgreSQLPgStatementsAgent 12, // 67: inventory.v1.GetAgentResponse.qan_postgresql_pgstatmonitor_agent:type_name -> inventory.v1.QANPostgreSQLPgStatMonitorAgent - 14, // 68: inventory.v1.GetAgentResponse.external_exporter:type_name -> inventory.v1.ExternalExporter - 13, // 69: inventory.v1.GetAgentResponse.rds_exporter:type_name -> inventory.v1.RDSExporter + 13, // 68: inventory.v1.GetAgentResponse.rds_exporter:type_name -> inventory.v1.RDSExporter + 14, // 69: inventory.v1.GetAgentResponse.external_exporter:type_name -> inventory.v1.ExternalExporter 15, // 70: inventory.v1.GetAgentResponse.azure_database_exporter:type_name -> inventory.v1.AzureDatabaseExporter 88, // 71: inventory.v1.AddPMMAgentRequest.custom_labels:type_name -> inventory.v1.AddPMMAgentRequest.CustomLabelsEntry 1, // 72: inventory.v1.AddPMMAgentResponse.pmm_agent:type_name -> inventory.v1.PMMAgent @@ -10915,8 +10915,8 @@ func file_inventory_v1_agents_proto_init() { (*GetAgentResponse_QanMongodbProfilerAgent)(nil), (*GetAgentResponse_QanPostgresqlPgstatementsAgent)(nil), (*GetAgentResponse_QanPostgresqlPgstatmonitorAgent)(nil), - (*GetAgentResponse_ExternalExporter)(nil), (*GetAgentResponse_RdsExporter)(nil), + (*GetAgentResponse_ExternalExporter)(nil), (*GetAgentResponse_AzureDatabaseExporter)(nil), } file_inventory_v1_agents_proto_msgTypes[24].OneofWrappers = []interface{}{ diff --git a/api/inventory/v1/agents.pb.validate.go b/api/inventory/v1/agents.pb.validate.go index 13c2ff1936..bc3e802f7a 100644 --- a/api/inventory/v1/agents.pb.validate.go +++ b/api/inventory/v1/agents.pb.validate.go @@ -3396,7 +3396,7 @@ func (m *GetAgentResponse) validate(all bool) error { } } - case *GetAgentResponse_ExternalExporter: + case *GetAgentResponse_RdsExporter: if v == nil { err := GetAgentResponseValidationError{ field: "Agent", @@ -3409,11 +3409,11 @@ func (m *GetAgentResponse) validate(all bool) error { } if all { - switch v := interface{}(m.GetExternalExporter()).(type) { + switch v := interface{}(m.GetRdsExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { errors = append(errors, GetAgentResponseValidationError{ - field: "ExternalExporter", + field: "RdsExporter", reason: "embedded message failed validation", cause: err, }) @@ -3421,23 +3421,23 @@ func (m *GetAgentResponse) validate(all bool) error { case interface{ Validate() error }: if err := v.Validate(); err != nil { errors = append(errors, GetAgentResponseValidationError{ - field: "ExternalExporter", + field: "RdsExporter", reason: "embedded message failed validation", cause: err, }) } } - } else if v, ok := interface{}(m.GetExternalExporter()).(interface{ Validate() error }); ok { + } else if v, ok := interface{}(m.GetRdsExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { return GetAgentResponseValidationError{ - field: "ExternalExporter", + field: "RdsExporter", reason: "embedded message failed validation", cause: err, } } } - case *GetAgentResponse_RdsExporter: + case *GetAgentResponse_ExternalExporter: if v == nil { err := GetAgentResponseValidationError{ field: "Agent", @@ -3450,11 +3450,11 @@ func (m *GetAgentResponse) validate(all bool) error { } if all { - switch v := interface{}(m.GetRdsExporter()).(type) { + switch v := interface{}(m.GetExternalExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { errors = append(errors, GetAgentResponseValidationError{ - field: "RdsExporter", + field: "ExternalExporter", reason: "embedded message failed validation", cause: err, }) @@ -3462,16 +3462,16 @@ func (m *GetAgentResponse) validate(all bool) error { case interface{ Validate() error }: if err := v.Validate(); err != nil { errors = append(errors, GetAgentResponseValidationError{ - field: "RdsExporter", + field: "ExternalExporter", reason: "embedded message failed validation", cause: err, }) } } - } else if v, ok := interface{}(m.GetRdsExporter()).(interface{ Validate() error }); ok { + } else if v, ok := interface{}(m.GetExternalExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { return GetAgentResponseValidationError{ - field: "RdsExporter", + field: "ExternalExporter", reason: "embedded message failed validation", cause: err, } diff --git a/api/inventory/v1/agents.proto b/api/inventory/v1/agents.proto index 6b68cb15a1..eb628377f4 100644 --- a/api/inventory/v1/agents.proto +++ b/api/inventory/v1/agents.proto @@ -12,19 +12,19 @@ import "validate/validate.proto"; enum AgentType { AGENT_TYPE_UNSPECIFIED = 0; AGENT_TYPE_PMM_AGENT = 1; - AGENT_TYPE_VM_AGENT = 2; - AGENT_TYPE_NODE_EXPORTER = 3; - AGENT_TYPE_MYSQLD_EXPORTER = 4; - AGENT_TYPE_MONGODB_EXPORTER = 5; - AGENT_TYPE_POSTGRES_EXPORTER = 6; - AGENT_TYPE_PROXYSQL_EXPORTER = 7; - AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT = 8; - AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT = 9; - AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT = 10; - AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT = 11; - AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT = 12; - AGENT_TYPE_EXTERNAL_EXPORTER = 13; - AGENT_TYPE_RDS_EXPORTER = 14; + AGENT_TYPE_VM_AGENT = 14; + AGENT_TYPE_NODE_EXPORTER = 2; + AGENT_TYPE_MYSQLD_EXPORTER = 3; + AGENT_TYPE_MONGODB_EXPORTER = 4; + AGENT_TYPE_POSTGRES_EXPORTER = 5; + AGENT_TYPE_PROXYSQL_EXPORTER = 6; + AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT = 7; + AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT = 8; + AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT = 9; + AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT = 10; + AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT = 13; + AGENT_TYPE_RDS_EXPORTER = 11; + AGENT_TYPE_EXTERNAL_EXPORTER = 12; AGENT_TYPE_AZURE_DATABASE_EXPORTER = 15; } @@ -59,11 +59,11 @@ message VMAgent { // // Actual Agent status. - AgentStatus status = 3; + AgentStatus status = 5; // Path to exec process. - string process_exec_path = 4; + string process_exec_path = 6; // Listen port for scraping metrics. - uint32 listen_port = 5; + uint32 listen_port = 7; } // NodeExporter runs on Generic or Container Node and exposes its metrics. @@ -77,17 +77,17 @@ message NodeExporter { // Custom user-assigned labels. map custom_labels = 4; // True if exporter uses push metrics mode. - bool push_metrics_enabled = 5; + bool push_metrics_enabled = 7; // List of disabled collector names. - repeated string disabled_collectors = 6; + repeated string disabled_collectors = 8; // // Status fields below. // // Actual Agent status. - AgentStatus status = 7; + AgentStatus status = 5; // Listen port for scraping metrics. - uint32 listen_port = 8; + uint32 listen_port = 6; // Path to exec process. string process_exec_path = 9; // Log level for exporter. @@ -114,17 +114,17 @@ message MySQLdExporter { // Skip TLS certificate and hostname validation. bool tls_skip_verify = 7; // Certificate Authority certificate chain. - string tls_ca = 8; + string tls_ca = 15; // Client certificate. - string tls_cert = 9; + string tls_cert = 16; // Password for decrypting tls_cert. - string tls_key = 10; + string tls_key = 17; // 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. int32 tablestats_group_table_limit = 11; // Custom user-assigned labels. - map custom_labels = 12; + map custom_labels = 8; // True if exporter uses push metrics mode. bool push_metrics_enabled = 13; // List of disabled collector names. @@ -134,11 +134,11 @@ message MySQLdExporter { // // Actual Agent status. - AgentStatus status = 15; + AgentStatus status = 9; // Listen port for scraping metrics. - uint32 listen_port = 16; + uint32 listen_port = 10; // True if tablestats group collectors are currently disabled. - bool tablestats_group_disabled = 17; + bool tablestats_group_disabled = 12; // Path to exec process. string process_exec_path = 18; // Log level for exporter. @@ -166,17 +166,17 @@ message MongoDBExporter { // Custom user-assigned labels. map custom_labels = 8; // True if exporter uses push metrics mode. - bool push_metrics_enabled = 9; + bool push_metrics_enabled = 11; // List of disabled collector names. - repeated string disabled_collectors = 10; + repeated string disabled_collectors = 12; // // Status fields below. // // Actual Agent status. - AgentStatus status = 11; + AgentStatus status = 9; // Listen port for scraping metrics. - uint32 listen_port = 12; + uint32 listen_port = 10; // List of colletions to get stats from. Can use * repeated string stats_collections = 13; // Collections limit. Only get Databases and collection stats if the total number of collections in the server @@ -211,13 +211,13 @@ message PostgresExporter { // Custom user-assigned labels. map custom_labels = 8; // True if exporter uses push metrics mode. - bool push_metrics_enabled = 9; + bool push_metrics_enabled = 11; // List of disabled collector names. - repeated string disabled_collectors = 10; + repeated string disabled_collectors = 12; // Actual Agent status. - AgentStatus status = 11; + AgentStatus status = 9; // Listen port for scraping metrics. - uint32 listen_port = 12; + uint32 listen_port = 10; // Path to exec process. string process_exec_path = 13; // Log level for exporter. @@ -247,17 +247,17 @@ message ProxySQLExporter { // Custom user-assigned labels. map custom_labels = 8; // True if exporter uses push metrics mode. - bool push_metrics_enabled = 9; + bool push_metrics_enabled = 11; // List of disabled collector names. - repeated string disabled_collectors = 10; + repeated string disabled_collectors = 12; // // Status fields below. // // Actual Agent status. - AgentStatus status = 11; + AgentStatus status = 9; // Listen port for scraping metrics. - uint32 listen_port = 12; + uint32 listen_port = 10; // Path to exec process. string process_exec_path = 13; // Log level for exporter. @@ -283,29 +283,29 @@ message QANMySQLPerfSchemaAgent { // Skip TLS certificate and hostname validation. bool tls_skip_verify = 7; // Certificate Authority certificate chain. - string tls_ca = 8; + string tls_ca = 11; // Client certificate. - string tls_cert = 9; + string tls_cert = 12; // Password for decrypting tls_cert. - string tls_key = 10; + string tls_key = 13; // Disable parsing comments from queries and showing them in QAN. - bool disable_comments_parsing = 11; + bool disable_comments_parsing = 18; // Limit query length in QAN (default: server-defined; -1: no limit). - int32 max_query_length = 12; + int32 max_query_length = 16; // True if query examples are disabled. - bool query_examples_disabled = 13; + bool query_examples_disabled = 8; // Custom user-assigned labels. - map custom_labels = 14; + map custom_labels = 9; // // Status fields below. // // Actual Agent status. - AgentStatus status = 15; + AgentStatus status = 10; // Path to exec process. - string process_exec_path = 16; + string process_exec_path = 14; // Log level for exporter. - LogLevel log_level = 17; + LogLevel log_level = 15; } // QANMySQLSlowlogAgent runs within pmm-agent and sends MySQL Query Analytics data to the PMM Server. @@ -325,31 +325,31 @@ message QANMySQLSlowlogAgent { // Skip TLS certificate and hostname validation. bool tls_skip_verify = 7; // Certificate Authority certificate chain. - string tls_ca = 8; + string tls_ca = 12; // Client certificate. - string tls_cert = 9; + string tls_cert = 13; // Password for decrypting tls_cert. - string tls_key = 10; + string tls_key = 14; // Disable parsing comments from queries and showing them in QAN. - bool disable_comments_parsing = 11; + bool disable_comments_parsing = 18; // Limit query length in QAN (default: server-defined; -1: no limit) - int32 max_query_length = 12; + int32 max_query_length = 17; // True if query examples are disabled. - bool query_examples_disabled = 13; + bool query_examples_disabled = 8; // Slowlog file is rotated at this size if > 0. - int64 max_slowlog_file_size = 14; + int64 max_slowlog_file_size = 9; // Custom user-assigned labels. - map custom_labels = 15; + map custom_labels = 10; // // Status fields below. // // Actual Agent status. - AgentStatus status = 16; + AgentStatus status = 11; // mod tidy - string process_exec_path = 17; + string process_exec_path = 15; // Log level for exporter. - LogLevel log_level = 18; + LogLevel log_level = 16; } // QANMongoDBProfilerAgent runs within pmm-agent and sends MongoDB Query Analytics data to the PMM Server. @@ -369,23 +369,22 @@ message QANMongoDBProfilerAgent { // Skip TLS certificate and hostname validation. bool tls_skip_verify = 7; // Limit query length in QAN (default: server-defined; -1: no limit). - int32 max_query_length = 8; + int32 max_query_length = 13; // True if query examples are disabled. - reserved 9; - // bool query_examples_disabled = 9; TODO https://jira.percona.com/browse/PMM-4650 + // bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650 // Custom user-assigned labels. - map custom_labels = 10; + map custom_labels = 9; // // Status fields below. // // Actual Agent status. - AgentStatus status = 11; + AgentStatus status = 10; // Path to exec process. - string process_exec_path = 12; + string process_exec_path = 11; // Log level for exporter. - LogLevel log_level = 13; + LogLevel log_level = 12; } // QANPostgreSQLPgStatementsAgent runs within pmm-agent and sends PostgreSQL Query Analytics data to the PMM Server. @@ -401,25 +400,25 @@ message QANPostgreSQLPgStatementsAgent { // PostgreSQL username for getting pg stat statements data. string username = 5; // Disable parsing comments from queries and showing them in QAN. - bool disable_comments_parsing = 6; + bool disable_comments_parsing = 13; // Limit query length in QAN (default: server-defined; -1: no limit). - int32 max_query_length = 7; + int32 max_query_length = 12; // Use TLS for database connections. - bool tls = 8; + bool tls = 6; // Skip TLS certificate and hostname validation. - bool tls_skip_verify = 9; + bool tls_skip_verify = 7; // Custom user-assigned labels. - map custom_labels = 10; + map custom_labels = 8; // // Status fields below. // // Actual Agent status. - AgentStatus status = 11; + AgentStatus status = 9; // Path to exec process. - string process_exec_path = 12; + string process_exec_path = 10; // Log level for exporter. - LogLevel log_level = 13; + LogLevel log_level = 11; } // QANPostgreSQLPgStatMonitorAgent runs within pmm-agent and sends PostgreSQL Query Analytics data to the PMM Server. @@ -439,23 +438,23 @@ message QANPostgreSQLPgStatMonitorAgent { // Skip TLS certificate and hostname validation. bool tls_skip_verify = 7; // Disable parsing comments from queries and showing them in QAN. - bool disable_comments_parsing = 8; + bool disable_comments_parsing = 14; // Limit query length in QAN (default: server-defined; -1: no limit). - int32 max_query_length = 9; + int32 max_query_length = 13; // True if query examples are disabled. - bool query_examples_disabled = 10; + bool query_examples_disabled = 8; // Custom user-assigned labels. - map custom_labels = 11; + map custom_labels = 9; // // Status fields below. // // Actual Agent status. - AgentStatus status = 12; + AgentStatus status = 10; // Path to exec process. - string process_exec_path = 13; + string process_exec_path = 11; // Log level for exporter. - LogLevel log_level = 14; + LogLevel log_level = 12; } // RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node metrics. @@ -515,9 +514,9 @@ message ExternalExporter { // Path under which metrics are exposed, used to generate URI. string metrics_path = 7; // Custom user-assigned labels. - map custom_labels = 9; + map custom_labels = 10; // Listen port for scraping metrics. - uint32 listen_port = 10; + uint32 listen_port = 8; // True if exporter uses push metrics mode. bool push_metrics_enabled = 11; // Path to exec process. @@ -591,19 +590,19 @@ message ListAgentsRequest { message ListAgentsResponse { repeated PMMAgent pmm_agent = 1; - repeated VMAgent vm_agent = 2; - repeated NodeExporter node_exporter = 3; - repeated MySQLdExporter mysqld_exporter = 4; - repeated MongoDBExporter mongodb_exporter = 5; - repeated PostgresExporter postgres_exporter = 6; - repeated ProxySQLExporter proxysql_exporter = 7; - repeated QANMySQLPerfSchemaAgent qan_mysql_perfschema_agent = 8; - repeated QANMySQLSlowlogAgent qan_mysql_slowlog_agent = 9; - repeated QANMongoDBProfilerAgent qan_mongodb_profiler_agent = 10; - repeated QANPostgreSQLPgStatementsAgent qan_postgresql_pgstatements_agent = 11; - repeated QANPostgreSQLPgStatMonitorAgent qan_postgresql_pgstatmonitor_agent = 12; - repeated RDSExporter rds_exporter = 13; - repeated ExternalExporter external_exporter = 14; + repeated VMAgent vm_agent = 14; + repeated NodeExporter node_exporter = 2; + repeated MySQLdExporter mysqld_exporter = 3; + repeated MongoDBExporter mongodb_exporter = 4; + repeated PostgresExporter postgres_exporter = 5; + repeated ProxySQLExporter proxysql_exporter = 6; + repeated QANMySQLPerfSchemaAgent qan_mysql_perfschema_agent = 7; + repeated QANMySQLSlowlogAgent qan_mysql_slowlog_agent = 8; + repeated QANMongoDBProfilerAgent qan_mongodb_profiler_agent = 9; + repeated QANPostgreSQLPgStatementsAgent qan_postgresql_pgstatements_agent = 10; + repeated QANPostgreSQLPgStatMonitorAgent qan_postgresql_pgstatmonitor_agent = 13; + repeated RDSExporter rds_exporter = 11; + repeated ExternalExporter external_exporter = 12; repeated AzureDatabaseExporter azure_database_exporter = 15; } @@ -617,19 +616,19 @@ message GetAgentRequest { message GetAgentResponse { oneof agent { PMMAgent pmm_agent = 1; - VMAgent vmagent = 2; - NodeExporter node_exporter = 3; - MySQLdExporter mysqld_exporter = 4; - MongoDBExporter mongodb_exporter = 5; - PostgresExporter postgres_exporter = 6; - ProxySQLExporter proxysql_exporter = 7; - QANMySQLPerfSchemaAgent qan_mysql_perfschema_agent = 8; - QANMySQLSlowlogAgent qan_mysql_slowlog_agent = 9; - QANMongoDBProfilerAgent qan_mongodb_profiler_agent = 10; - QANPostgreSQLPgStatementsAgent qan_postgresql_pgstatements_agent = 11; - QANPostgreSQLPgStatMonitorAgent qan_postgresql_pgstatmonitor_agent = 12; - ExternalExporter external_exporter = 13; - RDSExporter rds_exporter = 14; + VMAgent vmagent = 14; + NodeExporter node_exporter = 2; + MySQLdExporter mysqld_exporter = 3; + MongoDBExporter mongodb_exporter = 4; + PostgresExporter postgres_exporter = 5; + ProxySQLExporter proxysql_exporter = 6; + QANMySQLPerfSchemaAgent qan_mysql_perfschema_agent = 7; + QANMySQLSlowlogAgent qan_mysql_slowlog_agent = 8; + QANMongoDBProfilerAgent qan_mongodb_profiler_agent = 9; + QANPostgreSQLPgStatementsAgent qan_postgresql_pgstatements_agent = 10; + QANPostgreSQLPgStatMonitorAgent qan_postgresql_pgstatmonitor_agent = 13; + RDSExporter rds_exporter = 11; + ExternalExporter external_exporter = 12; AzureDatabaseExporter azure_database_exporter = 15; } } @@ -907,8 +906,6 @@ message AddProxySQLExporterParams { bool expose_exporter = 13; } -// TODO: remove AddProxySQLExporterResponse - message ChangeProxySQLExporterRequest { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; diff --git a/api/inventory/v1/json/client/agents_service/add_qan_mongo_db_profiler_agent_responses.go b/api/inventory/v1/json/client/agents_service/add_qan_mongo_db_profiler_agent_responses.go index 2ff033b131..dd8ca67fe7 100644 --- a/api/inventory/v1/json/client/agents_service/add_qan_mongo_db_profiler_agent_responses.go +++ b/api/inventory/v1/json/client/agents_service/add_qan_mongo_db_profiler_agent_responses.go @@ -524,6 +524,9 @@ type AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent struct { TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` // Limit query length in QAN (default: server-defined; -1: no limit). + // + // True if query examples are disabled. + // bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650 MaxQueryLength int32 `json:"max_query_length,omitempty"` // Custom user-assigned labels. 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 index 9ed66da0c1..578c3fbfe3 100644 --- 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 @@ -469,6 +469,9 @@ type ChangeQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent struct { TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` // Limit query length in QAN (default: server-defined; -1: no limit). + // + // True if query examples are disabled. + // bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650 MaxQueryLength int32 `json:"max_query_length,omitempty"` // Custom user-assigned labels. 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 a544c5f1dd..984ef7fd9d 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 @@ -2465,6 +2465,9 @@ type GetAgentOKBodyQANMongodbProfilerAgent struct { TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` // Limit query length in QAN (default: server-defined; -1: no limit). + // + // True if query examples are disabled. + // bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650 MaxQueryLength int32 `json:"max_query_length,omitempty"` // Custom user-assigned labels. 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 a450ad266a..871c129e66 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 @@ -138,7 +138,7 @@ type ListAgentsBody struct { ServiceID string `json:"service_id,omitempty"` // AgentType describes supported Agent types. - // Enum: [AGENT_TYPE_UNSPECIFIED AGENT_TYPE_PMM_AGENT AGENT_TYPE_VM_AGENT AGENT_TYPE_NODE_EXPORTER AGENT_TYPE_MYSQLD_EXPORTER AGENT_TYPE_MONGODB_EXPORTER AGENT_TYPE_POSTGRES_EXPORTER AGENT_TYPE_PROXYSQL_EXPORTER AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT AGENT_TYPE_EXTERNAL_EXPORTER AGENT_TYPE_RDS_EXPORTER AGENT_TYPE_AZURE_DATABASE_EXPORTER] + // Enum: [AGENT_TYPE_UNSPECIFIED AGENT_TYPE_PMM_AGENT AGENT_TYPE_VM_AGENT AGENT_TYPE_NODE_EXPORTER AGENT_TYPE_MYSQLD_EXPORTER AGENT_TYPE_MONGODB_EXPORTER AGENT_TYPE_POSTGRES_EXPORTER AGENT_TYPE_PROXYSQL_EXPORTER AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT AGENT_TYPE_RDS_EXPORTER AGENT_TYPE_EXTERNAL_EXPORTER AGENT_TYPE_AZURE_DATABASE_EXPORTER] AgentType *string `json:"agent_type,omitempty"` } @@ -160,7 +160,7 @@ var listAgentsBodyTypeAgentTypePropEnum []interface{} func init() { var res []string - if err := json.Unmarshal([]byte(`["AGENT_TYPE_UNSPECIFIED","AGENT_TYPE_PMM_AGENT","AGENT_TYPE_VM_AGENT","AGENT_TYPE_NODE_EXPORTER","AGENT_TYPE_MYSQLD_EXPORTER","AGENT_TYPE_MONGODB_EXPORTER","AGENT_TYPE_POSTGRES_EXPORTER","AGENT_TYPE_PROXYSQL_EXPORTER","AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT","AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT","AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT","AGENT_TYPE_EXTERNAL_EXPORTER","AGENT_TYPE_RDS_EXPORTER","AGENT_TYPE_AZURE_DATABASE_EXPORTER"]`), &res); err != nil { + if err := json.Unmarshal([]byte(`["AGENT_TYPE_UNSPECIFIED","AGENT_TYPE_PMM_AGENT","AGENT_TYPE_VM_AGENT","AGENT_TYPE_NODE_EXPORTER","AGENT_TYPE_MYSQLD_EXPORTER","AGENT_TYPE_MONGODB_EXPORTER","AGENT_TYPE_POSTGRES_EXPORTER","AGENT_TYPE_PROXYSQL_EXPORTER","AGENT_TYPE_QAN_MYSQL_PERFSCHEMA_AGENT","AGENT_TYPE_QAN_MYSQL_SLOWLOG_AGENT","AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT","AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT","AGENT_TYPE_RDS_EXPORTER","AGENT_TYPE_EXTERNAL_EXPORTER","AGENT_TYPE_AZURE_DATABASE_EXPORTER"]`), &res); err != nil { panic(err) } for _, v := range res { @@ -209,12 +209,12 @@ const ( // ListAgentsBodyAgentTypeAGENTTYPEQANPOSTGRESQLPGSTATMONITORAGENT captures enum value "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT" ListAgentsBodyAgentTypeAGENTTYPEQANPOSTGRESQLPGSTATMONITORAGENT string = "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT" - // ListAgentsBodyAgentTypeAGENTTYPEEXTERNALEXPORTER captures enum value "AGENT_TYPE_EXTERNAL_EXPORTER" - ListAgentsBodyAgentTypeAGENTTYPEEXTERNALEXPORTER string = "AGENT_TYPE_EXTERNAL_EXPORTER" - // ListAgentsBodyAgentTypeAGENTTYPERDSEXPORTER captures enum value "AGENT_TYPE_RDS_EXPORTER" ListAgentsBodyAgentTypeAGENTTYPERDSEXPORTER string = "AGENT_TYPE_RDS_EXPORTER" + // ListAgentsBodyAgentTypeAGENTTYPEEXTERNALEXPORTER captures enum value "AGENT_TYPE_EXTERNAL_EXPORTER" + ListAgentsBodyAgentTypeAGENTTYPEEXTERNALEXPORTER string = "AGENT_TYPE_EXTERNAL_EXPORTER" + // ListAgentsBodyAgentTypeAGENTTYPEAZUREDATABASEEXPORTER captures enum value "AGENT_TYPE_AZURE_DATABASE_EXPORTER" ListAgentsBodyAgentTypeAGENTTYPEAZUREDATABASEEXPORTER string = "AGENT_TYPE_AZURE_DATABASE_EXPORTER" ) @@ -2706,6 +2706,9 @@ type ListAgentsOKBodyQANMongodbProfilerAgentItems0 struct { TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` // Limit query length in QAN (default: server-defined; -1: no limit). + // + // True if query examples are disabled. + // bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650 MaxQueryLength int32 `json:"max_query_length,omitempty"` // Custom user-assigned labels. diff --git a/api/inventory/v1/json/v1.json b/api/inventory/v1/json/v1.json index 7842aebfb8..85dbd06dcf 100644 --- a/api/inventory/v1/json/v1.json +++ b/api/inventory/v1/json/v1.json @@ -1867,7 +1867,7 @@ "x-order": 11 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", "type": "integer", "format": "int32", "x-order": 7 @@ -4591,7 +4591,7 @@ "x-order": 11 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", "type": "integer", "format": "int32", "x-order": 7 @@ -5939,7 +5939,7 @@ "x-order": 4 } }, - "x-order": 12 + "x-order": 13 }, "mongodb_exporter": { "description": "MongoDBExporter runs on Generic or Container Node and exposes MongoDB Service metrics.", @@ -6590,7 +6590,7 @@ "x-order": 11 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", "type": "integer", "format": "int32", "x-order": 7 @@ -7178,7 +7178,7 @@ "x-order": 6 } }, - "x-order": 13 + "x-order": 12 }, "vmagent": { "description": "VMAgent runs on Generic or Container Node alongside pmm-agent.\nIt scrapes other exporter Agents that are configured with push_metrics_enabled\nand uses Prometheus remote write protocol to push metrics to PMM Server.", @@ -7380,8 +7380,8 @@ "AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT", "AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT", "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT", - "AGENT_TYPE_EXTERNAL_EXPORTER", "AGENT_TYPE_RDS_EXPORTER", + "AGENT_TYPE_EXTERNAL_EXPORTER", "AGENT_TYPE_AZURE_DATABASE_EXPORTER" ], "x-order": 3 @@ -8243,7 +8243,7 @@ "x-order": 11 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", "type": "integer", "format": "int32", "x-order": 7 diff --git a/api/management/v1/json/client/mongo_db_service/add_mongo_db_responses.go b/api/management/v1/json/client/mongo_db_service/add_mongo_db_responses.go index 641972fc58..e6dba17385 100644 --- a/api/management/v1/json/client/mongo_db_service/add_mongo_db_responses.go +++ b/api/management/v1/json/client/mongo_db_service/add_mongo_db_responses.go @@ -1000,6 +1000,9 @@ type AddMongoDBOKBodyQANMongodbProfiler struct { TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` // Limit query length in QAN (default: server-defined; -1: no limit). + // + // True if query examples are disabled. + // bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650 MaxQueryLength int32 `json:"max_query_length,omitempty"` // Custom user-assigned labels. diff --git a/api/management/v1/json/v1.json b/api/management/v1/json/v1.json index 2d8de51391..20486919ee 100644 --- a/api/management/v1/json/v1.json +++ b/api/management/v1/json/v1.json @@ -2736,7 +2736,7 @@ "x-order": 11 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", "type": "integer", "format": "int32", "x-order": 7 diff --git a/api/swagger/swagger-dev.json b/api/swagger/swagger-dev.json index 630f031140..a4d464ebd0 100644 --- a/api/swagger/swagger-dev.json +++ b/api/swagger/swagger-dev.json @@ -5665,7 +5665,7 @@ "x-order": 6 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", "type": "integer", "format": "int32", "x-order": 7 @@ -8389,7 +8389,7 @@ "x-order": 6 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", "type": "integer", "format": "int32", "x-order": 7 @@ -10512,7 +10512,7 @@ "x-order": 6 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", "type": "integer", "format": "int32", "x-order": 7 @@ -10760,72 +10760,6 @@ }, "x-order": 11 }, - "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", - "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": 12 - }, "rds_exporter": { "description": "RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node metrics.", "type": "object", @@ -10926,6 +10860,72 @@ "x-order": 13 } }, + "x-order": 12 + }, + "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", + "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": 13 }, "azure_database_exporter": { @@ -11191,8 +11191,8 @@ "AGENT_TYPE_QAN_MONGODB_PROFILER_AGENT", "AGENT_TYPE_QAN_POSTGRESQL_PGSTATEMENTS_AGENT", "AGENT_TYPE_QAN_POSTGRESQL_PGSTATMONITOR_AGENT", - "AGENT_TYPE_EXTERNAL_EXPORTER", "AGENT_TYPE_RDS_EXPORTER", + "AGENT_TYPE_EXTERNAL_EXPORTER", "AGENT_TYPE_AZURE_DATABASE_EXPORTER" ], "x-order": 3 @@ -12168,7 +12168,7 @@ "x-order": 6 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", "type": "integer", "format": "int32", "x-order": 7 @@ -19330,7 +19330,7 @@ "x-order": 6 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", "type": "integer", "format": "int32", "x-order": 7 diff --git a/api/swagger/swagger.json b/api/swagger/swagger.json index ab922c4327..0f0386a131 100644 --- a/api/swagger/swagger.json +++ b/api/swagger/swagger.json @@ -3811,7 +3811,7 @@ "x-order": 6 }, "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", "type": "integer", "format": "int32", "x-order": 7 diff --git a/descriptor.bin b/descriptor.bin index b086f56ea6f89808e68d8071853154bf35e3f4ba..55c9dcc1fbb819dc27c91b9178447e6768dcc069 100644 GIT binary patch delta 29589 zcmajIdz==- z%;xayv+oWNR6-C5vJ}As2NBN*h~NPc5K$xwh#&|kARbiba)!ldV%$()HtzQ3l$N&A zdz$@@rIq?;FGN+Pt@YSyzd^sV*XytQ9`eG{M!n}F)kb&z$kU~<^mUQ`rh%|I{K@Y%Rb-lJ^BCByOAca~fKz2$+7M5|v#Rr<_vI@tY%7wWd3 zdDrP-r@Uc|XKM75PS$AY8r^upJEK=N`|b4|U#K4Xw(mzB^nZQs_5N#T^c>H>M@kF&=3w68DZ|nP@(RsgCUmN<} z_1MFzovzrA(Z1i03i{E|Z|4WJSamq6(={(qbV70{O_FMaT z(6I`?M*lAM>xkc{W4~J|&TmZo!KI$=RRyg+@1I}l>#@Iyy6M~Ve$P^+%fF9{FXjDu zeP27Kal>aSoL=TP>3w;S^Ydc7o73R8)w9d|>u~W%nSV1bx*{chw$cAl?vG&DmzVqh zoB7@FQq-h>QsJN9dRS6+$B%w-^R2(R{kA*){nk4==Jk;ZzmLAR!f!`bRrbJcHW%xp z^apz5)qeG|=2rf5mv9M3uJLQQgz{?{CSNyP>(}D=b=Ue`N&DORUl11RlkR%ewPeYY z*ZQsT_T_82x=4R~t=|hrD@Tz=iN0)<-@kKtp;OXf#8p>Zchk)`{p08>ZocvIZ{2*w zcSm1;<4srGSee(q9EI7kWlKi+LptO?{*#~N3PDN9-DP@FtGJi$+ab#9##{ZDN;~O; zxB8t*tCxlU;`c7CxiBe9f}q4pN(+8_uct#Es8?@&-H-i$y0VKcET>78SLF~*s?O`2 zjnRJ)L;MLm;U(`ZIf<^Qoa`z{9kz; z^oVJM&Biw)rJtm>wEeP;zx3}a)!n`o_R#zMRQ zO|&YgiMn!v->~ew|K*Pf^nzde{q@`b#YooblmF#Uccdp;iX`Rb3u>_;C1d;#LqqCx zH!W&Yvw;^E)O)(L1ug&8-TpU?k;_XvE(<33^KB=)?n&EUgBzi=|61B#rT<~Ff4S@Q zg~|BQaoL{9{wbx0wN?FfewyF2RokQvQjW`4vpjSCBf083r};lAEv?hX{@cH)yjyZ* z+NQjq9`|(DZ-w3T_y5)Jq<6pKD}CQ|?Dkyt(sciSTD$*nf6;CvcGp?E=jq3(!T6^8 z{r_o=H|T$Tkk;LjOXwl;=wY+xbN8J|C{y3?y8T)Yd(iKpTOKB)2kY4n`~7sMhyC8=HL1t3^nU8^Jsv=DDCJ(eq&x|* z7?lcaU+17Nut(42{IoxY^Q@;=-0gRP8N)p5dF8fg4D+l<3>iZ)%(GsHs-%0$ObTj@ zuYW!PAjC0#O_!u+N+c%6`FhU1ezzg9m#52dzL(ghd6?t; zyz4R#bDU3?V@nfHC57-VzvL0WwE7pdvRZV}vmWukUwM}w^+<+cI`K*hYJ#s9{+mBg z51;QRjT4+tRAG67AGc0B0%CcB-?m+HSxTgGqOX5A+aEe0VRIqKUJWpF znvoGDqG$NI_O{Ci;tap4I?aki1Y)NDcX>RBVlHB)Z?gi3jhVj93LrLS`Zg;PkJz5= zdqxFuJb?=~c>#nw+qZcEgge{s&@s)6L?myn$qSfyE_rS?K@#3`U1CrRbFNE_#49VP zc{VWs^f}KZ1`y^vml!~p^CU6GNn+#+;bVTuIuhgGYxSI4{4VwI;N}qsbAd|_Aj}0WJ@SGUN_uo@;%|rxvo0k`7P=&%R+>tZTtVdIJ(6Uxp7peU zRpa7}BB`-ByFN*c#d3YJw&lgIB_>Su@C5|hlFUiTj3q8gX$f(Oi_*NuBrP>j%8*KC zEX|mb8B1N5QVVmbgsEg>UNYl(n~eaN&u2`@jOSf8QVa8WmyLOm{TEF(4g$b@(PbkL z=8G;HfiPc`Y#fmGNop+j+4-~XHQ;Xy7i`oD2zR-k>zt+)5bkont63iNk`gQaKCQ4J zsjxca%r`~psQH}k#UCaTo|F+AiG70{T zCa0PJFgIpQ$*GMlr>KRw(dAT`eH#yC6iKTCey-M1 zB&`nkb={M}DTTB;=^b>YYtkS} zFnZEm1rVbrUH$+udQ$SIIi*v1%J*vYo_0Z_p0e3jP337CQD`C?n6`<{-UNt&Q+}uO zQUxxTH2O-Hzu=E<_{xnrg;2h7c?5*=m0Od_1)WaUqyhYmv!}DZB#TbFHHlhjDr?g4 z)LF9Vtgr7K6NrbK@Fe;qf?wwAV#Msdx!vHbc$k{ z5sdxii) zoF>y;n-W3O_1G1Dw}$CiUlNMbl@;`gG!&;R1iep6ArxomjVt_q4Kp%|#NP}R_e}G* z!jt%$p?dXBDa1g&oz*j3V(jQ^nmaMdEL!x}ZK4{|bq}2h`v0!jt|FxLBed z_5&`KfUqA>R`x4ob2L}|jqEoyP+%0FYRGeyReT`ixe`zRkX|5xI8RSm>HlNHyv$n( z!FetOE7B00CzO#Xg%F&t+pqGkXq=yoyu{vo7kd?H?9F$vS0S zF7~L!zsDr@ zzM)nxy4dfauV3w7)@p%@x+IrkxRr$OLOpx6KcZowy9x?1xlrZI&;c>IP*t|J6e<_% zidUg5&L|SAi&d^7o!M4ttS(lq3u(Hxl2~1$|MOLUNW&60ofJY@;-(WwFH2-PFG?K) zE!7{r>Nhto&3ch2UFwFnRT`yBRp&0re7O8341T3HBJs**pc(*9xXwg38ye^0p4 z=Br8=D^*mL{I_^gDZ~1z{@^uV4|vs0F@-dG)#Wn~v#&}%&oUfp*D^ZQQ%ZIDiLgqq zUh9t=K#5tID$|u|txHiL^tFBnq@iH#i@5xb-jZr_reBi3F>C$^|h5s6-2`rX4R>;YmKSRst!nrPdwmG?d&;}SRz{ctI#Y5N^F5U}ccfaU2ix~l?M1FJmfllC zF1D7??`@e=F_wVVQcHU4XIti#==!$IDcMtO%bY^jw=3@k+fRZipmR!2yW3UXO}*&+ zcGc?|*BDFN)pet-Q|SEr%KKJ}t<7T!>`ck=_kES`7K}@}`M&D>nv18w% zJlAa*mVnNZ+$q|j@+PTUryKbls)M=T3v9vE4%w!eNM|R%Q+Z9cpK?qAovCt6?aYEo zcJ({6NRVCqPSv-+wNz11yOcM~TB^Vj&{?X$(k_+f)N^f`emt%KcOC3nV``VWcxciF zQ<}51qgdp)FIuP6-0pc5i9!VckuX$d%LQIG7^MBqlZ8k``qRX zNEiELb0+x@B--|=_7^9u6XFB-OjO}XQHLR1kEhxc!cSDmmsbATVCxgbQKbU;YZH|e z!UM`XrTo+wxRkU$prZ10DB6g3e^$!mB8Y1TmYK$>Uw>BRW`3x}uRj~n#k7d{L8Xkg zfS>}6UIWwGGNY_Os0UU1j?!xjT>Sr3DKpa`xIlA`2g3bSwKlhNfN(!m+|H3OXd~#5 zQf9vgf(kUU3xs+|wJ~W7OdEIaVW~{?UzBPw(b&clNdr3{Wr_ZaYJ0xDcv+(VqI#O> zYa=_!!%7*w13?9v12_;W&q{k(sw~xqRedkpEp3lv)Ud^1#}&~!l5s_}j$~X!>!?x} zTf?GKKsQ~YQb*N!gIq1tqpDe=LI#SkIi}P=TPdmpT27q=nl|Li0DqsXR7XUR}J?wb=5a*w+PP( zrLMJ=A~Zl3C9=glq0Yb3)j~a?zIlzMA~c_8{fM#v%@MOrsw|(YN^{6>0mJ=VamqI% zg|eJf>OyN+qy*^ZN2KIrHa{XICsloKOGQe)P|ApV8&9+Y=yF1&;|o>Y&l;|P`h^-W zXi(CTv~61mdL23U)w4?T?xBd7RW*gTQ+8GsfN(H2?r0BW75s+_FMmSPv1Oy1< zoD&cr9i4Lm0wfa7IRO!91mv6uh}>RnD+xDN_j|`5)G{_G8kH0t8^mTaO&g4k4cJVJ z=Cmt>2A+u)5LpK_@(RTBJA=G=ngxV(J;woY@UDQ3(Rn!7z7YOCD4D|OR@9F8(T{3Jj~X@N z$G85>N_2aezYo|W$_<(J;_y9zH?q2St-f`$KX5d_^g$IZ?+NUU7$AMz6L2F&q#4M_ z-V@YZmP)fgGqU#tokyg%Cfdsd+#Bd0{xa;@0w6r@4eVVBU|MPKN&vBaZ@|$*2Dn2Z zoEnr&vjg0LmQw>FLI${l_|7puZG6J$pbd+UcR^UArm}LTtky$}hnReJwI-DKY1Od?@(DV{H%Rx5(kqHugZM4+kxs`?%_~b^j*oG66d;~&HXfl?jVRU8O+L10($Dv63`0%aC)5LBR9#DP$s3G5;cg!)Wi7x5}V3j@1|SGA;J z0X9lcE!>5HUB!WEYrBe9$suh~k(=%vfQ~9ru_&WTR4fXLRH9;WMwO@lwl&-9s&w

pmO_vAu)-DjE%LDF5NFP8PSsqkhnkuY7 zqp-_^PQy}#t(FO2VH9>SfQww=6c(6PT7?B-dxa>h+}x>_Kw24aucBU$Uc*~qw|wMx z97HMZQEZ+q0x_{N$eC*fVq&FS^W~`t(CWae*9$)Khh9t^sYJtThX(r#cnFbwSCW>|}MK<+>m;yP-}pS#JjRa0|jX(5#0*+P)ds z`^Z47z8Tn~N+*_Yrt8hXo>i!})AeSMo>kaF%5bg^JfmYE<_l!B!Wt0!_$n zm5{AVZA0G{=qXjI^Y?1fP0hB*xnX&9Ga$sKx2DbP<2VV zm8+4UexKQ^?xBzUQQmAE8@17If8ZzAQ)(uWHuUknn?xXeyzeFvNFVRJITUF6cwgpF zwu?2=ey8sFp+Bf`XJ%BQduL`;qI;(pmG=~CB)UJ~lI3+80K@r#i&P-Y4+8r-4G`uB zfqk8(MuK~HkiJd>Q(peroiQcGce@y;7Uph=ak-ILBP+w+Ko4!Jng#)2?#;Xv<=h+C zXHe9_+#3|kTX!|0ocjXv*4=sZDla*J-SEk=YhQMyqMZAJw(aeeGJ5+1{fBA3T&cX| zus>spfbI|M^9^cY?ho3uOHRto(;9i6bWq>E$3NA0(1|XEa1I8MQ4JuRgR-Jsm{K@x z9Wv_IRFl5aaLB125ayx4svi*MAyK~`DU-9-VSRM3e?jBnY(V9VbvVeGOsPq4;~$nx z5y7mH$FE0uHFc2c&!x$`3`aAjJcT{#bdp*+I~s7{7oDt;cNvZ|D4+V5jsy@4$DOtT zF?8IiBoIT#ok{{RbUf%;pWgPb;Z0I?f;c+q55a{Bm?yH)mE+clz&_Nc7Uqed`n*(M zYdqcpJsFsX7c2Imt|v1OT0uPN)RmSHPX;`^xIXp0l4q~_*gpS;mQ&f~%B}WOS>#nh zITcjN2HjJg3*py6$yuvZooV@X5Y?qywa%g|r=7ZjxB{SwEFf)9yT}4!^|VXO&PH8N zyUe88X69+9uAL>Z&p34jkpV!XuE4a`sw)udXPmlrDTHIfl5wFq&~>5Zn2?y0?PVA7 zd2Hx)H|h$+EZFSyfHWQ(wl<;-#O&A*(eA}i)E2_K!ji@Mf9?0{Tiq2#wW+$+ip2?f z(SHB((Gx;@^%P=gLTGmaKnzU??M?tlVoeC`PC%fMr3s;x)mpjuiD4?M-vKbP6EoX# z?Gr;QtJGq9VrXR*i0z4?l~sYp_QVibmDdPrMOG(;y4C;V_iF-Rds1dwI-V5THIZ6u zPYO{!!vsy%H3$5`jgvEqh~?yrB4RmNC?b}%B9>FQ5X4eHbAVSyri6AoLKVa*q18$t z#3`ZG%3ASjYG||)kfI_}v~p@__XE_zoEoB)^3F)DXyr7RKaRRxA}b9Au%~4Xi(XC( zVdUDKKG8HRS1GY>qZS$kW4yKB-LC z%5pO!Ol5iifNp1GOcBf(p_OTBVa^DVX%WBL^o2=&8pGilX8M|BXb;ywm@`8wen6Nr zLo0r@@(lEWP#@dtcO49%&j+$07TJ6tv>He)%m+fNfwl4s^r7%?H;qJuyv0JX*)#$% z@la?tjX+F1B+({fSSvC*TTl7azjD~@(C+Xk#KP>*-WLI4VRmTuia;#P4pG5*vQpHF zp3V#P)^=(ZS1tlNFB>xv(0O5Ojtta7ofn?pBe@`DBB1j_{djv-hub2c^E0Lh==?A? znM^Ir`5`a-$V1v%5zxo9Q5X$1S1I2A(z*B zl?3+_*=1K^=!xvIMOL2(3+9#|jWP5@$P<9{>0+(dnnPr$myhuu#D~^UpAPNe1PJx% zkcXcpep^F*I^-7!vb(PJ3Y-JORQh z@{;wr8!cZ5qwcBvcN3pq485L4{(+bUn>%Gm|{;9?Gt4{ub*nZW?zd&RARgr(WLs%#B{~FV#8}9V`V_k$6Y~~G! z_1E0I0kQs?n>QfVUvtwY&{%&>rp;KV{p%sW7(2HnYE0i!t4oiLl(`;cy?8zALDq}c z-Fi_c>%}^=UJM4{+d3DiK$z>?f&qlNP8N)xq}N5;^`Y0P`Um><`}{`z;Aj4jMhc9M z)up#4*1IqVLS8RxhRAQ7tQl`v`30oN$}f;^-*WN`g!z_}-#S?@Hdy%u;KYWkPgyKB zIQgX(<_0IfbuyNl{$745#RSF9ZCN!oIr*g)6Puj;*2$`|S>$*4Nd9K%HajH%VrR2c zBOrD*I}rwAXS0Z~oZ{+a4cQXvTe_>x0{}3$Wb-9!$QHM5Q44d6tXuMCYMrbh?}d7I z4R59bV7`|zW$Ab?n`v1(-U~Tg$d6v?Wa-!*PVb?*H1RjY?HN&4jP0R4TTlyed&t>B zG`LO{j2$B0BN}&P6j>>DIN7ERlpP}5BAIov)!t~jkZwN=?JJi+*dNMXLbls=9;?M3(c5cU_#5J$Y+hw` z*pr2$tPXpe>YiT+_k|^&SOq(umiwH7oiBRxu~S_TR)HqBfVBPCjW`giA4_hfuU~)( zxsP4?3N-2au~XgiCHwa~)di6VK%=_AwAQLF5bOJ$>UJ-Le-2ANwLW*J<)1@-5hR=L z?q12I9P~o_=p2Yypt(f~r18P9jX4zpF?%rNR4A(3qYxemOD5{!U!uB4oa*+FQ8*@> z?qT2IZ^q!58v`KbjydfGV(ysJULZqo%xSMcGX%$+_V$n=_{?bUw*lDxEVC^m@R`$I zYO(#9(_SF9KXckE(AfS=v{z1@Jw$sy*JHl&o3H;oGb%lP?k0^k82#KyE)b)iyEzkR zjD9Y2W{lGQ3mtvUi(Ox2Mnz@6$c&20e&JNMhp6nAMr8*8xW+GCWCCG+=~Na7^Gmla z?;)$j*LGVDNRiblAk42_Oaozl?IgB`NbDIav49j=i3P$u<0KXc^Nf?&9wM>lti%H7 z^ITZ$QzZ7BlUQnDo^ul0L&k1w?(cTElwyKnBe6hCjLq2{E)WxAb9RT@LnQXMdh{9p z%Avo_*&Qy0Som$u?r?!v_-)SaaDiC(ZO)$adx*H+nM=?4O#qm8@>|GsUju}BXU^_6 zfiUmPS=s6#;(E9Kd8q1`C3%8;cjkd;>)koK(W4gP-8s9_>ml0uyPUq^h<|kpfG&TR zU9O1h?{fC=L@mtU5cE8tCl3;Sq?)N}kEzl?rFs-%91H}5|oZatTPze8! zE4k15d;u;0kh98jL8?4cb5?nPm<1Z;0n&JC&MFTOvr}^@Pk)rBz7XnM$!M|1AxDG)B$#5@r0quG^;_B@)i zH&5$j^d8TpH&2@YFdxsDA~}!e>;{Kgn2+b!;M|ao5t8$y{+UwWYIrhd&xG}<#ypv` zKk)=Yc{0b3%4CC6FBSQS(HofJHQl;S(NoD8nY;8?>kTnb5V}_4%el9 zvVnURCclBz!$K7{Jev_^8~1F^{sgu@-Nrqe<0r7@D%r+8Cwf@l@|;t`dQUcR&p9Oo z(${mMgmM<_RS2KYmAq)Rp%*Qm&qd~4re2cDFXTLP6a;bYK%+Q7+P;vhHc#DwSbZUP z(csi-??OwsJXi9HHQSq}%X5)@Uw~Jm#O%vXCP54g(1Z+-wlBMo0b=%LmvKO1=4F?0 z0!{PP1BY4_ge&LuOPIbAwaN22spSRxtrw?IxElK$x4HVgg}qa*Ej?in-Y; zCLl#tF@Z2QJH-UT-0T#yK@@X~QOqU)%q^L>qL^EpVp0opi&M-7QOx)BTHc+;ULdtL98)Q?qLk}-gH#O{V3P~Z9 z9Zn&EPNs0IR(Pp>*N$jXM3HTHpr=VUrs+WJgP}=n^3^8@5@{j zW!&c^m0H;Qa_NuzWI#~H{YFxmFu4`FKVynO?su9>EzJE+Qyb)jdm!Co>T?w;Y&qbB zl^S>loUj7n9dN?hSO`DOmHfr3Nh2*k&G9>TQNTvY{X;qXb~A`k0Gik0fV4f7>tNpU z2V(V5uAjWl?5REo>ycc^aci~@O^?XdOU(8Wvqzn8V)m#@Odv6K z)Fq}slbA=Hu=bI>K2{V~AWnmg1On4)E381QA9KRmw-BDlm7KIb_od|tx5o4ppFej) z0m3TK3I$Z@~`>fMd zfyVY((bXYLUO&;*F%cilxKPiY!{?ZOT2K}JM4%`%Q%DoK7!%ne1duMqL~I<50nj*o zSwUUWFfOBra*oR=qMYM|B74n#qMYOPz1>tp6Mxg!_{hp15aRgAZZ&}r$47Rnnfi5? zKGID!58`i#cV$G;&ATFddZHHMU6FnC)K7GCLgaPTH~iT@Uq94_y$#S^p9trK$Ub+X zEz}7Sniqs5iAy!x|=L6cNsek$u`k8z>Va`?RT_29e7JBB#^!mUe1> z!}RP5MMtMc_Ms4M;7pI~L!o}6qcikl?NzVF85u>yb4FyJ2GIt}jEJW}vaReV;yE)) zAE>kdxU`v(J?R5s&W!9i8whh|WOtYS3*m!N$*jnnmiyE4!N~3|`%9ia6xrP+2&+J& zCqUXh6xrP+5UUSG?5NWB7@G>=oTy};HQPkfIg#C6Hi_A}kv)Wi7)_vwFd%K`x^w_y zcCMs@ELA|_Wo~58-~vsO&W-FDyvZwV;oKD2LpTtpfyQYd)*p_n2m-PGaAXhR0}A2% zsN^y0^8i}TkL>PpfcX5V8wwCsfyOG3wvW1@s0L&9Q5lP7L~vjsd@3qg7nSz!t%ua| zt)c5L@$*&Y)$)N5pNgWs>4tNlbh1GISFIZMZT@Ch7Pw&n(sDs$&*eaRSP!3#wFj)56TM49UXCsv-@syfCt-av+u$M)p)L&{$p= zp^EY;p@E``i*vu-BP8Pda1=7i4H>*H8S?p$2py_0>%&O^x_Dl2w z)#~boC7DrC&Lx>qQO+e!IR}bzE=`qF5ATGCEp-V?4ZNjJIDzn%I^i5Bjz6CY=K%f| zkP$^VpLfDZEyU+VI7M9sig3PY)di3ut1dv8FFJJr!hF%G%Rtf1A02=!(dmL#c(iBC?-i8Yn8d(x_+?0Om@kqCl7{ zor(fst`rrO2Q33dMOW*4YS|rrac#uzTJ&(BNa!1SOlOYS zZ#W^O5Xu`)2!T-Ea6&k!5U!6(-m=+0h?eW4NPhOH)F4UBKSkbEsR)6XTcCL^52Wp% zqOO;@TCDyly5h=oH+T`d!3|N#JJ#$)G~EzI=FRqt#Oy{VgdnaDXi^49+l_8ufSBFr zQU=J(Z*(am(4@>pCxjPC#%)3e%`qE@(_kZ6z_i*5ArR}EoDdE!gzrWrTdmK7Y58sx znV%vJ7N57cp#WhOXodnv+bwP=fLN{EB4aTGA#5&$??=4aIjB}Ow|ZX&SB}}uVsWRa z-sRWtbXQLymUcS517c~X(>ownzticRKy&pwo!&Le)qfy**ZrmsGNW?QA2_L_4Msn3 zQU}E72Ttk)8lxYG)XC>Fnnmh%i_~3I{AyaIe(Pz!&G)Ec@~AVD2c)OnZt{TiwA)P{ zke+tC$rEUL+AWi3dZPVa*=k;-=Txiuw3DXh^eHsOt`pI}y;&!se|w$&HH-f36a8yy z*yl8XLMZ#3^Z}vlbJEu=*RWrt@6yKo8AU{IzY{&$K-n*%C!4Wm5xoO;GX}uG0Vg9s zmrq9)>u<>BlrD)#4$lmUwCB%b~z1`O=gLla4EC2@% zxm_F(<{_uEK$wS|&NhqY9X2|vpE;i{4`*G9A^u5a#+SRT(NPBibh6HD4aIWGHK5zA)Lyb~gpT^mkh6j8eq z*<6d-op3VQENXXBWU@!&$&4auchU(YZJ?ZV0@*AZ##45~2w)UXIh_Q;Jmqu}2=kQF z$sxQ=8I_!|;xL4kUq_MoCGQYP<%!cve zLU=AJ85f&<=*2WW=QQVHF*_!<8%7Z04>VZ-r0tm49=U*+9TVFPBamnr6Wa}=K$B`? zV!L6yINdOgjqQdJh|@r$lR&JGjjc`su|77o8^%it;rO`ZF6;9pv>YEt1Jfnr67l)Y z*bW5ZI-ROE7s9$rr%Psxl*S5sp9w2(F! zof7k@FNyu3f~M-pP#ULZ6w$e<8AWt%s!(LxHB@wNT5Jw=0LFP*Y`0xNnA2i=r~|^B z7TZJJP?5XoaeAn00;I?uu7NP8$M#SMggHHC+a)h+4;9s$p(piH7c|U>ixiQ&85u?7 zZiZ0mQwnl7Q}5}ediS51QAFrw#&(M~G!?p;akskkq4-b{x(DLFeeyeiQXHk&JoyD; z;(^#c`32JJ12Nlo5!s=lcn|RfWj>MG0>JHuVtXtE!h9&U$3h^?hhlpy9LD)AE}3UT zdl)U}#JnvmyP;tch;v;!g761u(h*48xh@@nSe+~Bn7+ON=A!1hd=zM+X0FS}VGOHV->1rQF+h z^nX61q=zggWy8%OOQftRrG)&hE%siH1HHS&@AZ$v(>(_zuEX@8727X_QA>v}#{4p? z6`BQ%gkJS>%qM`8C@pw~e4?!S<=9UJWw>liUWv2Mmo-sBw7lX}1;|jo;#37lAFsr` z6)Uf@44153rEeRgnp*gqD_rGr6$o*a%T*x6RdIXy3WKLc6v8!e$?GOjY+qX# zA+h$F%Qz5Lf##Bdw0+G@5D=@c6*CTuL$A4v6KI0&HJ5QCBr?{zj0178K$CI6wAN-E z5bJAQ#$8qj*Tp64tK=axHkj8Ju_O%5dX5Wl?ZJ{qi zF|rVDh)WLW@AX%GDmRElSpY}MC~UF|Ab>&GJp?%(RTaX15Gdi|Ng783bZ_vs(rQ8q=HIGB{F}!7ciMCYHf1 znNjI*ixUdkV04QJg~-52LGS5e;X(qe%Mgh-34$586Q45%WV~Ltzqk=?|b>v@4@X z&h3h0^Ehc_nsdA2TJy2;k&;dy#@^`a#@Z48@yk2(h*$i^?@&tT6q^_ZV&cQtemek2 zuOG(zo?5mVK*spPxYzaRRzsi};}7HB*QGf-Qj%_u-2?#ea*s<_Ah!3obOmC2kJ|){ zloj$Ly9of`)kiL0fiORED>@M7M>67)=p*G&@UbL%bK}PuMNR`ByA-Dll#eCFWjP)x zr-4uGaty%DPuy}0g!zeEj)5>gam(@Lh45fp@)w(Em(%iKZ12)uE@|2JTZQ4g$@{e(J>Ga*5MJP8>k^3^d{ZOlz$;0I`0^iNh6z@JL*8 z%=&x!sQ+nxOHSoq$Zt5wN(l}?n)&s=oskl{TlHm1K9FyV_`S%xm zbrtQtj`>ypHGBiTq!6Bs`G+4$tB2N(kS}8VLZ5An8ud?_`HtGzI7%NKg(X~1I41Fa z$3IJ=np?&sVft$?DMww#B(2le{RPtLn55xSS?>g@LO3>2jGPt zwYoD=6KK^s$)&BPvQXM09{N*MS_pric+(QU`hr@07Qh`ey3{UuFv@CF7f%-xbyg^fA|)i>GA9YsUtdTiPRvQnTa*HEVouWMGV27tM-S&F>XD)ozIDPD8YiUH z{6sxobiz-autj|G7Q-}oD)FAfiN;!e(ugTQnkdf{oL%#9N6I{c3f7sJggiSrVpS$iTw@Czd5u{q1zf zIeq&< zOIubaVY-pW30}}vtCLRYHx~rr#Oh?k53Cb>y)Jw;QEQ7%gw_dLXq=E%uP5rwq7z~2 zge|%%bs|>?-%7l#IB`*}{_QX|qUEh5Ouwo^ue__N-b&6(zgQ*^C*Dd%-eR5L!*}7^ ziP}_jB4?ejg~kbK^-iL;6rISWPS_$oJAh%bWn1Fy!HMQtJ@QgDvSnKmroRxBN}Sl1 z)TCb>5r`Apk}Lk%I>9IN!tIILS#%<@PS`@@gtXd~sNF>;qSOgnWSoc#;YW#g$T$%U z$BBOi7CEjkgWPS_&8mciBW?|U3h zyf1KKXsyrZhV-7_@GnN~8BVSqPQvtNwY0*U!-=_XFOVTQoQ%574hbLZ3y&n~c+neD zCY4TGXuOeDpC#&K(VHao#uj}m^@e{`;mgDum-nkj*6Mpks8KCnCSm%MI(p6H#FxqW z->_*StNxeCw|--t;8TC$SBW}PbRut^u!Y76X>~SHWAjeG^QjZI$V4cgp&y_3?!gHn zbi{Z0=;R8K3WbiSFJ{1_=nO76&!>lA_))QN3 zJdswv%d1I6Ps&nHY>}B9zT$mv-kX6ZLu>Wn@A}ocX(SVKZ@xG&<#=*$zBn;*&-Ls-owU|4@au2T4rWW$T$6F zW=^CJ%`+$XNMU$?UOiNFqQW|13yl-fYF1v&Ejm$=I$?`UbnrFaNAlhR6CICSPINqy zFGfczoOmQ(j1GBy>5+UfI$B|VeqKFZbfT4Y!WJ4Qq}3C7^>opRR;d%V=$14@`F`!f zy!Qf5jIPx`ze0VlWnn%{zaT|mRN}w5j(sWbt-*`$@J~VAd<*|DjXW#Yw_T|&X?ZCh zraxH5gVs3oQoi?htV8^?GY!`C^vd+8tJI*DwfXP@n<)j{S(~rF(YnL$RfDzpAKdNS zDbUgDdG%(|9Y!-15?g58kyh*T>g}RC+~Y*hZPAZXclfg8ro8t)?%brkZ>XDFHs!FRMNisUPi&#_L|Prnt0P5E+NGY@B5r?iiG0`Yc;5ROPcE<3U9aX} z`})<@-1#}457S%y(gIJ8=gqBtfp~H}fBhYHOxn}OXL)t9=t+C)i7hmqNUJaM>Z_tB z?Nd)|QJ>TkzEF22@7-1AS9ht^7hJ=G?=$)0wzLCIoXHorr5$kMOuo1+?ST2Sc{R4o zX?q9jge^2qNUL#W>P}jjQ$mN-2~+fcg}2{v+rQt|lpOv`Y0~kBa*(-u<28!^0{#p6 SFUNlo|HaETUX%Qf@BbenN$r3D delta 29601 zcma*Qd7KtSmhWAa8JSOJK1Bgfu@>6{#a2L->;eL^xU>r{ZMV}iJ$AP<|B}Y|4|z@=-1v0h8C*IVgKULMm@M&*j4x28{AykT5tI}IJL5k{$y{^SlPC@ z+xx-jK&Y74FKvly^^(0orvKq+P_K9H#eu5k_df`p`oA~PhyOO}+x)$cgE9X<+G*OI zuXmNhn&w3ZgY*82_dSmU^_4}v@Up0zKIO}xo&N8~gAV#{zYMxmw$e+F1YPxpLqXfh zYW>ck;8J@%{q3mzzx#vp^o3)>N&4$ggTw#lsQiD~9f8UBj|2lS*>h6ZPQO~P*+*f&yEOxR=H6(einSAe|cHdq4Mwbw?~2wm8a?+N!UmK@mMfW zMsfVyF<}S2bbnB-FB}y9taz?U(l%MI8>6hdZu{e~M*sSimTRso=$-?^ z_IlRwpir6U<%ffA%+a0`jK+rJL0esYG>G-?RDrPD*lvfugb4oCeDs;^QNzY zH6b1i`70j%ZecflX&kmE$ghmUb9Go?#1=l8^wOVD8Ww1{r^rbCm@0G={o~bJjPul4_o=n>4uqqtD{F#Cuf6CC{a-zRm6%J!g_OvCa4jl?Q z>g848sf^$=L&N^MZ7crHY~^LG!XFU+dupWN@u0i@uvK_YSXHjPEe(h0E2_iZl~eTK zvy*mY1AX+?VQT`VLx->p@jGNv+)gj84!bmWY8`GK%Qbv-Uf7KxFPtCts8qV&`C(cA z{QR)3{sI4k+rKzJ?1{5Co*xc~l2YHSm%inE%xykDtj4)rQk<0rXM^;FDKHzSgst#x z?38dQ!+7JAu&4gj6zo?wFP##O=~&$Ka+noLQANd{s`TY)G(i9HWLnhyuLxIltIevi zD5?m8%2HSzwD%|gb?W@sKZgS=D;xBnpN3s32kGzpH2l$7yu^*Hu>5>x=(ecur-1J^#Oj-{|LV3%l#b{=kHHZr=Ha@bO5We^uD1 z+dLa8{o)@f?x8>ZV|bfwcXyL%x2Y-YSoja^+RrfU#?1)-r)~F^6m)JrIU~I1KiYfi zCe!ZZP2S#$n@ziSZVtat_9BMp=+9xl)-_oj7g69M)E$Animv)^sNpJ_{v7^GWo2)D z$1*Ot(`{kDs=Dkf)4Ekj-LETeM<8#axUzrq%G<(UIKw}1HWRVAp~dE1^Nr1y=7+y% zvH6b+!hSV%*;s5Q0XAO`g1Xwq@+G?MwaFm8VL>>kvRCux3&P)2#@B?EwLdTGA)f^u zo3FVe92d6wF03>tl+@86=%x?%Qs?P8cX35sv+F9eP^D=}9See1;(h<1*Ts6=U17O$ zwEodu;gFG4!c8lrMX@Stl|_Oo|1%66lq*i(7>ARzV(F-Rbu2s+ex7z*s$ zKkIFXxN%aixh*V1Od+1cC)YBCcrvJN=OM(CLC4NnA4AMaYMQ?J?yz6uG-AxP$)HRN z(^?OqObfg9$od&dv81Mldhpd@uQ6#*q_gQ^kh!KsnA5|e@2m)OdPrx}DziXkrFceI zaSvnsyK>8FQq-3%4lipxBTV{c2N&+>50aQ=<}-Z3ENZwS-2rZ*twZwTA9 z&n6inl`}*AliA@on3XVR=FCb{ncC5$7Us;bQ|Ig)!(nJTH-`ZxE6=MJ8o zQxufh`IRXsv*pSzFcdtR69&EYqNU;4BeNi~*n1ekof8&%xb7mjbHZMAnZ#}uFhO%e z7rTs03>RE*jbpfT!=#gkaOZ|yx@JQRm$=vAZFh!)AQm9%d{_z)S^Mn7Qwvdtt*Wze zhDadKV=C@sMQXY~j0exli4w^3!a@hvV*+tr*tyo^d=?PM^FuasXj)nS>b9^4Jxf4S z=;uxXdVc6Kfm#gA4_zi?0Rg=z)X&0XDl?diLYE3an2SP}3P6~PBswJ(vVge0OH!dH zT^706yYktQu)fPD1ho+F@(GazRVB69B?N#j7yE<&!d&bV0tj=lba}NTM6nd#A69H6 zA%0)h&z_~q`n)CK-?zR$O!}EzC`v9YF}a{WT@uEPOT0_eV0eiS7$An1_*5uL%s%8& z0l>vPlrtq29tvG5Pz&=Rp9;l*R9NOx0RVHEpE@ASWj+;vFqipMC<e?wfJ zcPR<6+$RLJ(o_=SOa{IfkPs{Mj~)uoZd{R5Bq3Jh*Cz?FLat8&vnYP8G=Zs4KE$}J z%zcz(Sn1=EhVWMUxGYLCG~2iw3BXEo&XiPW_JK()%w`EpNx`Bl0Z+IToHCfdZ1PbK z>j|HHKv+-sk}-U;UpGh%zplLYqK946ODE1f<*5K7opo2J2h`0bs842?T_> z&LC>pppa zFkhGCDKl+Vg5C)A#Am`TFeQ85$orJ+c_ZW;COZLYP1~AwSr5Y`d){Kc-j6%z1uMd= z@vWRFIrLVTc63C^p|`@?E+$f{#J%mIzWBFsFC(<0C}Fm@`#1qY-|piC2z`6lw_kRy z>6f;r|uuw$p}e;Ny<)SggZv?iRQ z+pG)+H|)thm#o?orgk4uWwL6I5C<9}S+!sPa%I@iusb42TeXelm+EretnWi2Yo(J3-O@Ohbl>=LweU^VSVEvp9vH~ zIpi||2<4Du!bsyRDRh{~>l8KU3CBZ45VfMm!(MBE&<}@6SLdoE(&4a2Pt+|?txEB+ zu;NBNzd4-J`j`lk?8I70?i{x}G5*Hfaeo0o%pLa`1jO8N$)M4ONacx8Z~j?0_*9A6 zRwj#13mFb>R9Wkf_*Y)OA4LLuTxU!q+F-0T&*O9 zrm3J^?Wy{fMm1tgqumWrZY%758iG-!<2-YnRhJ-HB-5h2emL~Do!51BucAG@hnyGpuXy< z@X9u`RMO2vX|+V@Y^5*%AK~cX0PM~7_JG)%t=xeDh`rg0>5~IPwS?3hWe*Ghm~(Qb zgyWJQ*MxuDusC;7LT|ATy=oJBi-j`TPzb$y^&4x# zGaK*Chg*W}ULS1LCfM%v!B#E7cE1ZY0K;;B-kAj3{XW>J#lQO{*yNa7E$Y2QnPaYg z=GibFwnVv8E>#ehD0j*QLR=yV@?)a3btzt^DxOxAwHKH5v~$Cby85|rQtM?Z>5-j| z;notb%k__+3nw-#_g6t7CYP&%9XcQ;m#a2y9fisj`emW4$SD$`D^#J{OlNBop(|9| zl1bCn5}_;gY0rma8dm!0q!7wVKb=5&St-+bs&Nd|tnYlDJZjE+k4aEQ$(RnVhWSL!VTR0rK>ZFpk?B~}Vr2NI@Fs)D_h0Hlv6Rk!Zhm4?lHJf(N8 z4S#jBTpfHr2#H!9X2QPVau1Dka4VmPL0 zlM0GvDk+4rNmbb+GEf>RP9jx|K-*IMs;bzfD$SL*rRA$Ckt(Iy%7t%MK`&zl#N+_& zq68$vH>;w(D*=SMS+%qKrM5wn49I51hRK?uc8dz^)~Ibzi7B8rRf(xB9A8~WGAvtE zjok*(7)x7Z#;heqZ-Kv7Yu2QK|lVER3VQQ-?+Nf=7f_SUy zGSIii)K=AaiZewJzoCMmt}?5H^$N%YVZ&&HOc(Z_|4o@ zj47Zu6`R@?QzFf8=B7lN-?XO064LyZ3MRRJ3RnVqO9d>wrHVdIM5o_sQg!2eYfQbR zCQNkKhfr@*!B|(BU<&9>$z95As%Y;$wKXT&ZK`~#Z;YjFYRqZQ68gPe1(RK6iY1`4 z)MRe+Y|p(CUEiKNC7X!tYQiLE3SEC&1s6M08K!{VDLL=Ht%`o?Md#mE1J3h}vGlgO z;38)UoqtCKmo&NBBBsFJlpKKHQN;ni7E|x2fm1xh)H~{;?>bZL+jpqIcUy%eptmG9 zhIXi;P3pF0JHJD9wD)s?O_D2^t13P~ zd!zE%S2*b{LD;L3j%F`b5&_z$FW-Wk@i&RF&+8zNmizox42bD{vK5oO2NGrbREN{D zwi$5&T$WS^Qq*w_*Ab|iQv9K+_|nN<4Yod1oKvciy_%$=6n~_G6Dl;uz?G!)M=EJ$ zhM-2g`dBHOgCMRMXz$1avGuWPW#+vV5U2i*5WoMBNXpr0;Lr^Bl2NM8%} zuo^8buZ8$=G7<-`=VGa|P)0>K5^s|K1{cU}YH;Eag9P*)u6P>OGiDrPgV)#Zu*^iSoBrc9am z(<^@ERJjAp8zZ)bayzDjIDB&yOs*YR*1ca3M_dH3eNaWqnz_#MD8vGRi@6}g#cpumWacKjBm$M zJSVD{>&CYuE$2kUf{brRare&=kH*CZ5a9;2;|rwipCfnn0%G;g5hp~sL(r)d#dky% z59q(!8eZ9ShYWx$5S?U!SQrKOM|Ob#V`O2Jv@soak`5O|F0DXx2(qVsvH}Bw3N)e7B(s*Q-j4GaRan>0RACx$g zsOT(F@lX^z=Ar^j^+P@?I!jb6jhrxp=oM&}Zy;@#MsE2A((BU5E#IAG?v^!0Zv6(r zUB)iQxCoT$$gST%xXU89es`9rcsNpa`36A++T|Mv_2I}Z-$1AjM{fD{qeV`WZ^2n{>7ZcDpB!BPL-&5Bx<1&6)SS8L|a~_Y}<2VYr%Eu#~9EtD%p*$X$?OdR0OYy3x z;zbuowX|FnaR*ZFBi2f!JRRxZd=QSi6u@vi?FAM{)2AbMBNvF#rz37VNFP8Pc{-{+ z-3Y8eE3i*TUB(-Mt(6I1?F4r4+uWyJ?FE)9Q|AO0i0RcLuyQx2R^sT{DCnf84pxIl z0&xp$@5=z;J{uM6wF2QjE7y94;ewuzcnbgNykzt_)>AobQ)Xqj*4$)&-Y;`N%sn5K z?6wkU3=o%cE3H;yYaN2FpS@ll>c11l4M1;6Vr!ijblO5)CxR|FT5HAY^?K1e;dxE# zbLT~A)<^CY0@^@XZ`ag7bt%Ogql%Z^M0KI%#wf8HnJzL>FR{xogAc+u&@P2Q+P>sB z89=PQE z1*$9ebfSta&gZVQd^Jk!QJ|~%yg3Sbjy6sMF$=c479fo`N4$biHs{%zifxB)5Q+D$CJ<-!%fAiU)V0f@b~e7FL!_m&S=AY<^B4_ARUT;Gy# ztuwZvZ;$3KSKYtgEs*WZ_T03L!1l=92%{F$+a=`0b0DU-N1eu*Ob}>IZ;v{UHJi9@ z643AH%Xfw&FMTIBDue!xpETNF^c_EGK#acQ=S-kA`i|cjc9Zt+MnQ+#zU3);%a>vO zaEfr7G8+~^dU!YQK|=do=|LW*bd%8D6`40=_#5IbAEiKuyCV073=rb3$h{%cO#*vQ zWZsaWOL< zdbvNUX`g*AcSF0$gQ5fals(}WjR(BOQV8cjlvtqv(#-)`zy=u#$Et%??6@>JRUPzd z2ZVVra%u;Jc~I1@uVHeiIuz-iy;V<`^04(#KAdudUHMeaF1&0!ylYP%YB?H07=tOlF+ z@tD=t4BGMBjn*)advT=}=JALp6&IRIZ^L6({qXzY#Z4#jYnGeoC-UHH1LZ{2S@!0E z>RyV!jw((%q3TY{ucM^S$X|Dnm2bSbg17{r%_1OezwzM(#OgObPrF-j{l+IM)haT!o)K59(4#&G>s!x=ld=)lvRJ%9|N4XQjEioF z-PKcwp&Mei2>@c~hS+TafMnMVvD*X)v?_H&>{PWZ7e6x=RsB2uW?*OLrsdLS#!gkK z#q`YBsVWfDGh?T!0ha*9ajtehg!IZG%aon?{E*?QuK;jo6;vD=qW2xWHc zL=y;QcI-s6EFR6#i#`lbZ9S4JJ8}+O|^UnCUKjn@4`5*CW4W)iGL@srl+T#oqEaoGrR}f9w>OTG;o;D6VCrn@jXB4u%uQFUc>u4HlN< z7cDZnBre(edgVZ5bVW}1!R0H#o*eQR{QoJ&*c-*OIPg<_@D%w*t@3Gizt3g-=+Drk`_AxI4K&(C{B48f) zfytG}Vt4aSpjD{HVz;gCDZ0~)Mw^iUakW4@FhEo5lpl!oW|3%Ft$LN>C*z8zoX@>z z`DC2*G0NX7s5qS?TpZZjIzY?)I2im`=FFz8V*6?C(R2GF7bEC2-yyzE&I$0Dp z%A(LPoWJpAqYqCY#EpJw07Bd-OT)jItD)_tSRcGL{AYd3QQkt_loMrv*yQ87&MXj{ zWPuRHt&;`f6{olWgPh_5VZP!O7f6?{c*U)gbz-wsTs`44j^>;5E@gSx>;;#W5I1|l zt&@R!twnHw_zt#$3xxZc7hE9R*Sz4?$pW!e1b4zD{${kc`pgGnXRB8rAa=HT*#%-} ztH`b#)aqopcvJuI7(ZNiGoKq-C*JgH6K$ZpDQlCwX<8@i#5VoVv9M?3wwxl%!?t`n zWqH^Zb8e8|rPRst@OG@9?WTG#pRz2xoik-wcsq8-2Wnxy9dmpTjjfYaVTV;{Bajrp z-jTCqW!T{rnp)U9M4{!5L!IoXcUpneyFMoxcIKmG9&vhoq$R|iqK~qVsgs3acii$G zW!AXcOEOjTxI1=lPy!+DmQ91~rRxILg!i1V0`T>{d`4w0crOn?Sqt9t!rHqO?~5xw zbRyN8mixR&^%hC_zzZt~t3aEbK-zxbM;?gP4_bs3Oq6}#(^H^L&kww?_Ll74?}Zga z=mV{=0!^(GRv^~*dtvQUia(Ak{_1@0L(7k2e!e4H>OMwT55(>%I1sZyd+!rS;{$Px zJ^ukQdm!fgC&Jpd6n`35%+x2pKv+NZ!rE6x;fQRh$6w0djKL8<20+Xm@$w49+z~IY zK!)Immsf#y2#$Dp?JGm@nUUA;^EakH%T3DweCFkqT1jeaguW{uMR3%wqr4PWF&MNz-V zjf$dv;T5&7DC(C+QHSw2m-wZROCZEAy`lmke(5*cePu29S~lCGhx509oG6O=wGU`& zA%5)@wXZ1Zw@y(32029q!u-}NDiG$kUQzpsqE6+v#GK+s0_byU!O0>J=G21Q!vbMW zEx0{wUm3Zp3w{p^gbTKk3WR%g!R=vzaIY@7J#1f*)N6F>Z^E<2UQ=*;SPHRlO~LJ9 zfmpbv;P$XUEL>A?2l&1srq}7&-|&9kb^OTDtdA5zxvt>$kU%Kc6`Vr#6*0YDpZtb* zysytY6*0ZO;P!5`fpUGp?cMr{nEt6?_HKINw>)e6Q+|P>rGF~8GY~By{;9y$Z4_zM zkN0K^6}J{DhYl!z@4_=K98>=76~Dad->#77h8O+zsz3bqOD;bD%s>44s^9+pir;?s zir@YEs$c!?3j2(ab{-yZOg^Jq>_JrS`rhhIt zIqEM?&n-AL0$~kkp%PUcDIn zOTpai|2}{*_=_I{Aol)JaOZp=_Wn|E=X@Yz@Rx!+=L@uB@Rx!+=hw>^+&=eV)#tmn z=QiciZ!fq5K25NByTq<+!hqPkz2FY`0bLvHR9@f(s)W(PNK@{D2xZr*WLmMa$7kIBzw!8JBJC79X1N)Oo#f^^?oHkPh z@sWbNzW{{zNWtA-s2BBl)N1o^0Au)Q-lfRTqh6b-h54vxv;3Z;Ubb?N74#iT!*gKD zHtw;UDciWm3huY7)WUqM(5tt*KDKd>7tA@gsouPI^0?PZAk4?TRsvx@E?OxkzX3e0 zD^xt~6kz}@R}~WbrqTdO;HL_~Xp=x7VgqP}21whd3bpphIuNT*6;2&xpC%71#j6Vy z&pERLX}Y?Q3^Mzkfns)zS4R++3AAYjr0p6XEI`bz@o5GmTGse96KKTEz)}Qs_IH(k_EmXYVd>%y0wS~mK1v^N5Ugw7bgjJxm3Z(5i zKNPiK%&wEMIE4{z;4xdF;;$?!J@p=b5u=mCL6zQFP+6OeBEE7YZV>yMoK^xDl1+X{ zfSBLpwGxQ+O+UMZ1P&!Aj0(uTG`|K{E6jPa?3ItuXx3z7R#@A#ROvc z6|a~At>srlG35bEgDB=^zPh2tT(~(mD*bKtGe{eZZuT<>#OP)}g95G5%`$`5DD7X< zGg39C@wMEj2<2ZL3@L2*LD{4!met{FaTG#)5|3g z=1wn{K$ttdTsDYY?iRVMgD7`Mcjp5tqPg3PCbbZEi)jAbbcty0)elsue`(yC_a$<< zx4=sPvJy8Kx!mh@wn5}_pVirs0LFEn7g`|9eO_pRbhgh6ZG*_={zA}8_xvpEp;xzJ zXn=MnOC{9(UTJ|)_ZQ61_+)6%%a5$ma)ok3^rM_9dijx8T54f_42A53ZWeE5(|WKz)NgnDgLBT@u}05Mp}MS;AiV{25gkPKU8pUFN3&xpnV4pNZUh& zj`l5nAXX0*hREy6fjXts6dx&69CKz*q3IFXdWqRn#OzTou^_GwXeAa%+oL|%fS5h% z6BJ0a9rXz+&?e|nFR`acet(9-+SgWqI1RR92sG7BVu4uy%uDRxQhdBnal-jLn3l)= zYBN}T{=yFh2&+Il6hPX3;fDf<)iz(qSjYx+NGblNP;tBN(?$(x^Nrtt4iSqdt*BlK zU=U9FK>%X#q!(2n22XlX1u_UHy{HPbgK*M|>JS-(X^DA!&)=Ay#`jfBd;?9L+lK-% zJuPwjP#~tKC2k)o(3+l>psHh-ydk2h)Af~Y)!3oabEDGX^u!$+XoJz|2|Gng0bQH$ zY-*6+v!Bl=ecD#_Y^1<@BP8RjNR>-o=93tvDBQe`d{^n9`?#a^-5!G4x)fzRX zVOCBNJ)M=fEiP@K%u3keik=P;J)N!Z=&CLl&foMkJ8`>DAjH{;+kFBd&Q92U%2slS z$myKKZY6iMW3iZ%xUD2r5a%RrD+z=+CvjWJA+iUZtINGrFM5=xO>^_95mB9+xKlp0 z5a-GunP){qL{;bMpS4%_G|bB{Pvmr7;vN#w2F|?1JtP_;aynn1)R{s?6woYtS(60eE}fM1&KSN17R*m+_rOQDPEXV+?m*e=ulcN zOx(6}sHE+p#BDo4SOr>n0n&C+;czLPGx+LuGrb$tr!7uS&|Gkd(RQl$#UJctj1r;-wexgKP*66E>GMs z9Y_z$6L(ApGAzpzcT5*(hh=%|i0Ktx zB?Vg3D?}yb<3J-sC08)x>M_bH_litV%l>13s!Rv?|M^wSEYla+p2 z1=>zl%Cy=}Xy2?)sa5ATHs?k~O`CJ0qNdGWO-G2DK4I0Azwzb?pRz!RPk1#2LVUuj z=?L+Bl~q%HdKdOGt8$`<=_)U#w1l`y#8lK}gox?WR$Ybx407@Ug!#0W7a+{1y}XPN zDP3*kMIVwLSLZ#7cCPm7LPL0~MP1~aIzqM1_EKeiZek-Zi?tC6a%eRum{`hE=_`J;z1qiD^I}||LZu3LY0gTygG8SXdz|p1n-K64c zy`hI1-TGY_Tsdry7K^(?@Xoksm%n-nv9!xe9S}piywm}?`dwb?1lp_L<)v=4D9s)t zbwA*526j(wS}uK$mpW=Oy~j%(5Yv0S)Cshv_lVTV$1_HY)a_-~^yLqQwEpQ3AEPt%CuSQwBM(f_Ecv#?#qpe#_h|EipK5p8aG-rZoknu zePJ&-b@}Y42Ht)zaX@(cy~K?c$3Lskgn7v8DG=r%ucxC$-42VM_HR6#cP8p~*h?vGpd9v6I$G52sFhN^x;JBaG$)G2 z9ra2|ONd8BNktY%i^d&G^xq!~yAKC2B**gE6OB9O)sb45$7CBT>Nr|7?zmM){o_9D zMvv!2QM%*#w2RUm_u@EOl1BUd z2*m2i&%`;)2mY_H>Zi&>8aZ$g1Ahe%{3rxr>E`|2E^?2)NK=i zM9%coZ4(9BT$`S{ZQ^N0BCko^HW7%^Kr4|ztY4G5Z6Xls*Q9QnIJOkeNGon|K98m4 zj5HZxR*SLX^Yy743J_L-b|`?fy*_nA(E*Iv>r=*}FA_Pf6yKCq+^OgHQ+?Xpl=948 zByyZsoR!*VHvk4HWZeZ~d3M@7rrDV#tE9Md)9Mmo|{ud1Lx)x(ZIPvkzLm~(LkNr z_YVOKxlY}#3kXxE?obDWsZ)2T8z(9_k1sd#>~IHCf&!_ag<{+W%fqdIP*?rAY?q27^lr$eN7oT%ZV)E*82_`WE0 zheIIDMX5U+0%0yn-QjRNr?|A@UKi@)X?b_bTf?$38ZUvl*rz9mO99&S1k!e~Pfs9L z7fX7YH|W4z%wnIP0&M^-_W3zpg5(~bo*;Y%+VljPT9=+ctl#6)^K?#eX~h!f^Xas_ zKTYh9X-+pUdOVQwL1P(zAZCH~3pPL+Kaf`2PiO!!`#{QvU*tuP38i>hTCq;wI!Fy@ zy-Y01J3kX-6qf6k2C0b`E%#SXA%>Qx?iZ>+3@uOHFI0hC{PNWOLRFx>_~j|TP?Z&B zf?WKHRG05%MFB9fD{|X%?JH7uTB8=*D`ckS+h7ySSq!z{+hFDuBnn`!%-LdkrJomS zVXu^Vv20MYVYk;q8`YqO=A3AbS~<}iwS@RR)2$q}^vp(eX~Ppa#T>FycME5NJ!GYv z41Q!N__az`pQ3&;WK~Wv$15*r6YTLy1Z|k1#HIM@G+2}B-4`VNZsYa8A5Jh^5DIPF z0lB`XQ}-P(AXoHs$}h88GvB~OEOcIz@?GC7F$K#wG*MQ&CJl|8Optxbb16S0+cGZd zGYm+Kfb9(kARRpC1qDb4&!xO0D>*tra&)c!UxU@?rnNpdDTK1t=Oz%!+O$I_(kM_9 zOY!=&Vxx=JiL_jwx|bIwN^HI8GYrIt0qvCnY5Ss|5Fl1x^b6ob`|E@keTGr(g6u_~ zVG|`1Huww!ahX7yVL(&sG7O0I4L-vrmEuil#VgL|NwnOQx_1{QiO(-HdZSH-0Wk}< zFE0RT{Br7EUI1eD<&>8f1~U|sIWDCY2lT-q>XbIGiA7leCyT|cZUF=^2wVLi0I|2# z#|sd9Tm1qEWIDF`1yG<(w5@&toGfGTrYwNHE_^dLD%bv|U;Ai-(Kr3t2gK-`e(e)z zjlSvEzR8k<+w>{JRL_QOxl!qAo0kOIV04>Ef+YN8L2v8-HB25woZSVrI@LuXZ69B}|_fmd4EwT(`h~G;GTxhlz0__mLmkzwZB$z1HXI&A$}m^EvY?Ojt3t~Y7ZOE z-(1ayIZ=)WANmBR7UGAJ;IjBmmgB+4Zt(@+>&Jfa1;YH;FTOySAN$4kj8c3st@zZX z*%`Dvn7TW&XGl_f;-vwEKR`RWK-zxdr2&Z5Pg)jVFr)X0mj;1$ct7#daE8R{AukOe zd$GxcQvR-a5zO8`Jqykksr!`JSu!Xm{Gfms6rddx zU}b3{*qs=_ba288CXhin;Ri*a9h4I?D6;yTC4=&nK4+8~aq(Av>M4}cv|vBX1H|Z8 zY3nvwhSz6vNJ=ZZn~$EIO}lSXe#U25{wV+qg+j&_{Uk`C&UN+=R=L9+#|9hquv^WtsCtRU*LR#IP zsYNYL1jY$h#Qf7wSc>n?f`@RTuB=ZxO*J&#oyF$I7gC86cW3rpOMy6XcXrAo=LA1Q zj~8d^z7{7!=Y%V?PDrc!GxcDL6QOa!6^%De&}3N_JdP8MWxfA2HL7V@?u5dLWw{fg z{>ySF_!v|CaHdwYIH8;quFyImtsc!(bBhzoIN^#W8YkE>J(&g114i4kS}gK_Hgrgd3tw(dB=%iC&Q*2R2iK_E`7%O+mtoZusM@e7&S(Beew zoN$HK32C)4Q!lqT5gR95(b>j{LMh&y1>14r)Uxg{UQKM;oW!fnlYioz;QMy*mP~DJaiZXyaD~FiyClbBq&Y%R5={K2D4->o>=% z$xZKMvH6`KP9!+-PS(wQYD6GTypx^zkIo6cj2G|7)UFmM66b^~v`$E?-I?0k;zVMc za7EUMv=o1k1&6E?m)G;?d+F(<$OpM6>;lyXxhH0M%{}3FA@Tl9eca+n>O66U))Q%U zAXA^Tc#;}VToK>N;1c;yb{x)vFY#ntS#PQ5lbFAsfG3Bu*xag?7I<`8wS9To825PRpHW%V)wDm zCAsl9qj>f|JD2!CV0?X1&1`Y0%DLnUtxMAC#-f_l;!>4y$ragY;sf5d7K8akW#*}A zDD(8fBx#6}MfLA3uCy|) zxFYKcUuj-Y4DMlch?w6_R%bUY$eoZ+`Yp(vFb~gjC-^pDe0xzXYH_04IpGSe6VmF= zqFUVIM743k71?0nBfR$&gXK0@e)B_uh2f~yda~-?Bri4HS8R!z*0^+Eu_bEc9jE(> zEm6~&&h9U&2U}cf?Obw&)+K565b@OFQfuRqEBc9vU%p(sq8L0?yzNZ&qox(b*!=L2 z5NSjID~kOu;+sUW0Q1|RXhrdd*HpR~X@luUi>kTBfi}(oS7;rOR*x6esul;@7zbR@ zKN|=5aO^Y1U_E1UX=PbYy^Q}lSa6ma+w@E^Hosz~^S1c%OmX0)&KG`k8a-3I{3h>9 zTY6btRL`~e($@Ln3au~F>iMF2p~aWB#urz_{R%qbQ<58s!E5+(0lpj>g~Ba6TeZ@C z&s1IX*Jr8PrVYiozss5uUTrAWf7f|c!mAC%%Vv15O7yp}s9tXIir1aZ_RJMpucXy0 zMYW~HE5aX%aYg@Ryy6>^TZ_TFc=bI!_iXj!rme-;e7XydYj9#~anKK(6Z|$d+FJa_ zTf7rBn17?FwzW7>vta)gQNJsBDnA$n4L-Ipe7#|TUNsMc=BJo5aiFL^Y4N1J^TZWe zPo&kMqB_#zNqggoE8<=lSIlSbjunG%@#KuM{^T5WLDR8fY#sqfB~BbG+D8BaapG9< z!r!{#=z#gpi|Ry+6CIoruFyImt-dU(Z(5w_V4QG8rx+*rSl!gB;D)NOwntg7I#<>I zVro^(X0; Date: Tue, 26 Dec 2023 08:40:39 +0000 Subject: [PATCH 05/10] PMM-12624 rename AddExporter to AddAgent --- .../inventory/add_agent_external_exporter.go | 10 +- .../inventory/add_agent_mongodb_exporter.go | 10 +- .../inventory/add_agent_mysqld_exporter.go | 12 +- .../add_agent_mysqld_exporter_test.go | 10 +- .../inventory/add_agent_node_exporter.go | 10 +- .../inventory/add_agent_postgres_exporter.go | 10 +- .../add_agent_postgres_exporter_test.go | 2 +- .../inventory/add_agent_proxysql_exporter.go | 10 +- .../inventory/add_agent_rds_exporter.go | 10 +- .../agents_azure_database_exporter_test.go | 26 +- .../agents_external_exporter_test.go | 46 +- .../inventory/agents_mongodb_exporter_test.go | 36 +- .../inventory/agents_mysqld_exporter_test.go | 40 +- .../inventory/agents_node_exporter_test.go | 20 +- .../agents_postgres_exporter_test.go | 36 +- .../agents_proxysql_exporter_test.go | 36 +- .../inventory/agents_rds_exporter_test.go | 28 +- api-tests/inventory/agents_test.go | 24 +- api-tests/inventory/helpers.go | 12 +- api-tests/inventory/services_test.go | 4 +- api/inventory/v1/agents.pb.go | 2830 ++++++++--------- api/inventory/v1/agents.pb.gw.go | 32 +- api/inventory/v1/agents.pb.validate.go | 270 +- api/inventory/v1/agents.proto | 14 +- api/inventory/v1/agents_grpc.pb.go | 34 +- .../agents_service/add_agent_parameters.go | 144 + ...er_responses.go => add_agent_responses.go} | 1402 ++++---- .../agents_service/add_exporter_parameters.go | 144 - .../agents_service/agents_service_client.go | 20 +- api/inventory/v1/json/v1.json | 8 +- api/swagger/swagger-dev.json | 8 +- descriptor.bin | Bin 698302 -> 698260 bytes .../services/inventory/grpc/agents_server.go | 68 +- 33 files changed, 2680 insertions(+), 2686 deletions(-) create mode 100644 api/inventory/v1/json/client/agents_service/add_agent_parameters.go rename api/inventory/v1/json/client/agents_service/{add_exporter_responses.go => add_agent_responses.go} (55%) delete mode 100644 api/inventory/v1/json/client/agents_service/add_exporter_parameters.go diff --git a/admin/commands/inventory/add_agent_external_exporter.go b/admin/commands/inventory/add_agent_external_exporter.go index 03ede6d759..7c8b26de57 100644 --- a/admin/commands/inventory/add_agent_external_exporter.go +++ b/admin/commands/inventory/add_agent_external_exporter.go @@ -38,7 +38,7 @@ Custom labels : {{ .Agent.CustomLabels }} `) type addAgentExternalExporterResult struct { - Agent *agents.AddExporterOKBodyExternalExporter `json:"external_exporter"` + Agent *agents.AddAgentOKBodyExternalExporter `json:"external_exporter"` } func (res *addAgentExternalExporterResult) Result() {} @@ -67,9 +67,9 @@ func (cmd *AddAgentExternalExporterCommand) RunCmd() (commands.Result, error) { cmd.MetricsPath = fmt.Sprintf("/%s", cmd.MetricsPath) } - params := &agents.AddExporterParams{ - Body: agents.AddExporterBody{ - ExternalExporter: &agents.AddExporterParamsBodyExternalExporter{ + params := &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + ExternalExporter: &agents.AddAgentParamsBodyExternalExporter{ RunsOnNodeID: cmd.RunsOnNodeID, ServiceID: cmd.ServiceID, Username: cmd.Username, @@ -84,7 +84,7 @@ func (cmd *AddAgentExternalExporterCommand) RunCmd() (commands.Result, error) { Context: commands.Ctx, } - resp, err := client.Default.AgentsService.AddExporter(params) + resp, err := client.Default.AgentsService.AddAgent(params) if err != nil { return nil, err } diff --git a/admin/commands/inventory/add_agent_mongodb_exporter.go b/admin/commands/inventory/add_agent_mongodb_exporter.go index 4e939ed3e4..adfcb06ffd 100644 --- a/admin/commands/inventory/add_agent_mongodb_exporter.go +++ b/admin/commands/inventory/add_agent_mongodb_exporter.go @@ -36,7 +36,7 @@ Custom labels : {{ .Agent.CustomLabels }} `) type addAgentMongodbExporterResult struct { - Agent *agents.AddExporterOKBodyMongodbExporter `json:"mongodb_exporter"` + Agent *agents.AddAgentOKBodyMongodbExporter `json:"mongodb_exporter"` } func (res *addAgentMongodbExporterResult) Result() {} @@ -81,9 +81,9 @@ func (cmd *AddAgentMongodbExporterCommand) RunCmd() (commands.Result, error) { return nil, err } - params := &agents.AddExporterParams{ - Body: agents.AddExporterBody{ - MongodbExporter: &agents.AddExporterParamsBodyMongodbExporter{ + params := &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + MongodbExporter: &agents.AddAgentParamsBodyMongodbExporter{ PMMAgentID: cmd.PMMAgentID, ServiceID: cmd.ServiceID, Username: cmd.Username, @@ -107,7 +107,7 @@ func (cmd *AddAgentMongodbExporterCommand) RunCmd() (commands.Result, error) { Context: commands.Ctx, } - resp, err := client.Default.AgentsService.AddExporter(params) + resp, err := client.Default.AgentsService.AddAgent(params) if err != nil { return nil, err } diff --git a/admin/commands/inventory/add_agent_mysqld_exporter.go b/admin/commands/inventory/add_agent_mysqld_exporter.go index 3c881833e7..095eb92704 100644 --- a/admin/commands/inventory/add_agent_mysqld_exporter.go +++ b/admin/commands/inventory/add_agent_mysqld_exporter.go @@ -41,8 +41,8 @@ Tablestat collectors : {{ .TablestatStatus }} `) type addAgentMysqldExporterResult struct { - Agent *agents.AddExporterOKBodyMysqldExporter `json:"mysqld_exporter"` - TableCount int32 `json:"table_count,omitempty"` + Agent *agents.AddAgentOKBodyMysqldExporter `json:"mysqld_exporter"` + TableCount int32 `json:"table_count,omitempty"` } func (res *addAgentMysqldExporterResult) Result() {} @@ -125,9 +125,9 @@ func (cmd *AddAgentMysqldExporterCommand) RunCmd() (commands.Result, error) { } } - params := &agents.AddExporterParams{ - Body: agents.AddExporterBody{ - MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + params := &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + MysqldExporter: &agents.AddAgentParamsBodyMysqldExporter{ PMMAgentID: cmd.PMMAgentID, ServiceID: cmd.ServiceID, Username: cmd.Username, @@ -150,7 +150,7 @@ func (cmd *AddAgentMysqldExporterCommand) RunCmd() (commands.Result, error) { Context: commands.Ctx, } - resp, err := client.Default.AgentsService.AddExporter(params) + resp, err := client.Default.AgentsService.AddAgent(params) if err != nil { return nil, err } diff --git a/admin/commands/inventory/add_agent_mysqld_exporter_test.go b/admin/commands/inventory/add_agent_mysqld_exporter_test.go index 8e38592027..4dc57b9e60 100644 --- a/admin/commands/inventory/add_agent_mysqld_exporter_test.go +++ b/admin/commands/inventory/add_agent_mysqld_exporter_test.go @@ -27,7 +27,7 @@ import ( func TestAddAgentMysqldExporter(t *testing.T) { t.Run("TablestatEnabled", func(t *testing.T) { res := &addAgentMysqldExporterResult{ - Agent: &agents.AddExporterOKBodyMysqldExporter{ + Agent: &agents.AddAgentOKBodyMysqldExporter{ AgentID: "/agent_id/1", PMMAgentID: "/agent_id/2", Username: "username", @@ -61,7 +61,7 @@ Tablestat collectors : enabled (the limit is 1000, the actual table count is 50 t.Run("TablestatEnabledNoLimit", func(t *testing.T) { res := &addAgentMysqldExporterResult{ - Agent: &agents.AddExporterOKBodyMysqldExporter{ + Agent: &agents.AddAgentOKBodyMysqldExporter{ AgentID: "/agent_id/1", PMMAgentID: "/agent_id/2", Username: "username", @@ -95,7 +95,7 @@ Tablestat collectors : enabled (the table count limit is not set). t.Run("TablestatEnabledUnknown", func(t *testing.T) { res := &addAgentMysqldExporterResult{ - Agent: &agents.AddExporterOKBodyMysqldExporter{ + Agent: &agents.AddAgentOKBodyMysqldExporter{ AgentID: "/agent_id/1", PMMAgentID: "/agent_id/2", Username: "username", @@ -129,7 +129,7 @@ Tablestat collectors : enabled (the limit is 1000, the actual table count is un t.Run("TablestatDisabled", func(t *testing.T) { res := &addAgentMysqldExporterResult{ - Agent: &agents.AddExporterOKBodyMysqldExporter{ + Agent: &agents.AddAgentOKBodyMysqldExporter{ AgentID: "/agent_id/1", PMMAgentID: "/agent_id/2", Username: "username", @@ -163,7 +163,7 @@ Tablestat collectors : disabled (the limit is 1000, the actual table count is 2 t.Run("TablestatDisabledAlways", func(t *testing.T) { res := &addAgentMysqldExporterResult{ - Agent: &agents.AddExporterOKBodyMysqldExporter{ + Agent: &agents.AddAgentOKBodyMysqldExporter{ AgentID: "/agent_id/1", PMMAgentID: "/agent_id/2", Username: "username", diff --git a/admin/commands/inventory/add_agent_node_exporter.go b/admin/commands/inventory/add_agent_node_exporter.go index 9521d02621..ad7a223e69 100644 --- a/admin/commands/inventory/add_agent_node_exporter.go +++ b/admin/commands/inventory/add_agent_node_exporter.go @@ -32,7 +32,7 @@ Custom labels: {{ .Agent.CustomLabels }} `) type addAgentNodeExporterResult struct { - Agent *agents.AddExporterOKBodyNodeExporter `json:"node_exporter"` + Agent *agents.AddAgentOKBodyNodeExporter `json:"node_exporter"` } func (res *addAgentNodeExporterResult) Result() {} @@ -53,9 +53,9 @@ type AddAgentNodeExporterCommand struct { func (cmd *AddAgentNodeExporterCommand) RunCmd() (commands.Result, error) { customLabels := commands.ParseCustomLabels(cmd.CustomLabels) - params := &agents.AddExporterParams{ - Body: agents.AddExporterBody{ - NodeExporter: &agents.AddExporterParamsBodyNodeExporter{ + params := &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + NodeExporter: &agents.AddAgentParamsBodyNodeExporter{ PMMAgentID: cmd.PMMAgentID, CustomLabels: customLabels, PushMetrics: cmd.PushMetrics, @@ -67,7 +67,7 @@ func (cmd *AddAgentNodeExporterCommand) RunCmd() (commands.Result, error) { Context: commands.Ctx, } - resp, err := client.Default.AgentsService.AddExporter(params) + resp, err := client.Default.AgentsService.AddAgent(params) if err != nil { return nil, err } diff --git a/admin/commands/inventory/add_agent_postgres_exporter.go b/admin/commands/inventory/add_agent_postgres_exporter.go index 1c9959c271..061688617c 100644 --- a/admin/commands/inventory/add_agent_postgres_exporter.go +++ b/admin/commands/inventory/add_agent_postgres_exporter.go @@ -36,7 +36,7 @@ Custom labels : {{ .Agent.CustomLabels }} `) type addAgentPostgresExporterResult struct { - Agent *agents.AddExporterOKBodyPostgresExporter `json:"postgres_exporter"` + Agent *agents.AddAgentOKBodyPostgresExporter `json:"postgres_exporter"` } func (res *addAgentPostgresExporterResult) Result() {} @@ -92,9 +92,9 @@ func (cmd *AddAgentPostgresExporterCommand) RunCmd() (commands.Result, error) { } } - params := &agents.AddExporterParams{ - Body: agents.AddExporterBody{ - PostgresExporter: &agents.AddExporterParamsBodyPostgresExporter{ + params := &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + PostgresExporter: &agents.AddAgentParamsBodyPostgresExporter{ PMMAgentID: cmd.PMMAgentID, ServiceID: cmd.ServiceID, Username: cmd.Username, @@ -118,7 +118,7 @@ func (cmd *AddAgentPostgresExporterCommand) RunCmd() (commands.Result, error) { Context: commands.Ctx, } - resp, err := client.Default.AgentsService.AddExporter(params) + resp, err := client.Default.AgentsService.AddAgent(params) if err != nil { return nil, err } diff --git a/admin/commands/inventory/add_agent_postgres_exporter_test.go b/admin/commands/inventory/add_agent_postgres_exporter_test.go index 5ec6137cfd..9f5e06f121 100644 --- a/admin/commands/inventory/add_agent_postgres_exporter_test.go +++ b/admin/commands/inventory/add_agent_postgres_exporter_test.go @@ -27,7 +27,7 @@ import ( func TestAddAgentPostgresExporter(t *testing.T) { t.Run("TablestatEnabled", func(t *testing.T) { res := &addAgentPostgresExporterResult{ - Agent: &agents.AddExporterOKBodyPostgresExporter{ + Agent: &agents.AddAgentOKBodyPostgresExporter{ AgentID: "/agent_id/1", PMMAgentID: "/agent_id/2", Username: "username", diff --git a/admin/commands/inventory/add_agent_proxysql_exporter.go b/admin/commands/inventory/add_agent_proxysql_exporter.go index 298b9c8ccb..c0e292ce2c 100644 --- a/admin/commands/inventory/add_agent_proxysql_exporter.go +++ b/admin/commands/inventory/add_agent_proxysql_exporter.go @@ -36,7 +36,7 @@ Custom labels : {{ .Agent.CustomLabels }} `) type addAgentProxysqlExporterResult struct { - Agent *agents.AddExporterOKBodyProxysqlExporter `json:"proxysql_exporter"` + Agent *agents.AddAgentOKBodyProxysqlExporter `json:"proxysql_exporter"` } func (res *addAgentProxysqlExporterResult) Result() {} @@ -64,9 +64,9 @@ type AddAgentProxysqlExporterCommand struct { func (cmd *AddAgentProxysqlExporterCommand) RunCmd() (commands.Result, error) { customLabels := commands.ParseCustomLabels(cmd.CustomLabels) - params := &agents.AddExporterParams{ - Body: agents.AddExporterBody{ - ProxysqlExporter: &agents.AddExporterParamsBodyProxysqlExporter{ + params := &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + ProxysqlExporter: &agents.AddAgentParamsBodyProxysqlExporter{ PMMAgentID: cmd.PMMAgentID, ServiceID: cmd.ServiceID, Username: cmd.Username, @@ -85,7 +85,7 @@ func (cmd *AddAgentProxysqlExporterCommand) RunCmd() (commands.Result, error) { Context: commands.Ctx, } - resp, err := client.Default.AgentsService.AddExporter(params) + resp, err := client.Default.AgentsService.AddAgent(params) if err != nil { return nil, err } diff --git a/admin/commands/inventory/add_agent_rds_exporter.go b/admin/commands/inventory/add_agent_rds_exporter.go index 2b14745747..b5276e9dbc 100644 --- a/admin/commands/inventory/add_agent_rds_exporter.go +++ b/admin/commands/inventory/add_agent_rds_exporter.go @@ -35,7 +35,7 @@ Custom labels : {{ .Agent.CustomLabels }} `) type addAgentRDSExporterResult struct { - Agent *agents.AddExporterOKBodyRDSExporter `json:"rds_exporter"` + Agent *agents.AddAgentOKBodyRDSExporter `json:"rds_exporter"` } func (res *addAgentRDSExporterResult) Result() {} @@ -60,9 +60,9 @@ type AddAgentRDSExporterCommand struct { func (cmd *AddAgentRDSExporterCommand) RunCmd() (commands.Result, error) { customLabels := commands.ParseCustomLabels(cmd.CustomLabels) - params := &agents.AddExporterParams{ - Body: agents.AddExporterBody{ - RDSExporter: &agents.AddExporterParamsBodyRDSExporter{ + params := &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + RDSExporter: &agents.AddAgentParamsBodyRDSExporter{ PMMAgentID: cmd.PMMAgentID, NodeID: cmd.NodeID, AWSAccessKey: cmd.AWSAccessKey, @@ -78,7 +78,7 @@ func (cmd *AddAgentRDSExporterCommand) RunCmd() (commands.Result, error) { Context: commands.Ctx, } - resp, err := client.Default.AgentsService.AddExporter(params) + resp, err := client.Default.AgentsService.AddAgent(params) if err != nil { return nil, err } diff --git a/api-tests/inventory/agents_azure_database_exporter_test.go b/api-tests/inventory/agents_azure_database_exporter_test.go index 58604dcf4e..141076a0ea 100644 --- a/api-tests/inventory/agents_azure_database_exporter_test.go +++ b/api-tests/inventory/agents_azure_database_exporter_test.go @@ -45,8 +45,8 @@ func TestAzureDatabaseExporter(t *testing.T) { //nolint:tparallel pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - azureDatabaseExporter := addExporter(t, agents.AddExporterBody{ - AzureDatabaseExporter: &agents.AddExporterParamsBodyAzureDatabaseExporter{ + azureDatabaseExporter := addExporter(t, agents.AddAgentBody{ + AzureDatabaseExporter: &agents.AddAgentParamsBodyAzureDatabaseExporter{ NodeID: nodeID, PMMAgentID: pmmAgentID, AzureDatabaseResourceType: "mysql", @@ -150,9 +150,9 @@ func TestAzureDatabaseExporter(t *testing.T) { //nolint:tparallel pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - AzureDatabaseExporter: &agents.AddExporterParamsBodyAzureDatabaseExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + AzureDatabaseExporter: &agents.AddAgentParamsBodyAzureDatabaseExporter{ NodeID: "", PMMAgentID: pmmAgentID, }, @@ -176,9 +176,9 @@ func TestAzureDatabaseExporter(t *testing.T) { //nolint:tparallel pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - AzureDatabaseExporter: &agents.AddExporterParamsBodyAzureDatabaseExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + AzureDatabaseExporter: &agents.AddAgentParamsBodyAzureDatabaseExporter{ NodeID: "pmm-node-id", PMMAgentID: pmmAgentID, AzureDatabaseResourceType: "mysql", @@ -198,9 +198,9 @@ func TestAzureDatabaseExporter(t *testing.T) { //nolint:tparallel require.NotEmpty(t, genericNodeID) defer pmmapitests.RemoveNodes(t, genericNodeID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - AzureDatabaseExporter: &agents.AddExporterParamsBodyAzureDatabaseExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + AzureDatabaseExporter: &agents.AddAgentParamsBodyAzureDatabaseExporter{ NodeID: "nodeID", PMMAgentID: "pmm-not-exist-server", AzureDatabaseResourceType: "mysql", @@ -227,8 +227,8 @@ func TestAzureDatabaseExporter(t *testing.T) { //nolint:tparallel pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - azureDatabaseExporter := addExporter(t, agents.AddExporterBody{ - AzureDatabaseExporter: &agents.AddExporterParamsBodyAzureDatabaseExporter{ + azureDatabaseExporter := addExporter(t, agents.AddAgentBody{ + AzureDatabaseExporter: &agents.AddAgentParamsBodyAzureDatabaseExporter{ NodeID: nodeID, PMMAgentID: pmmAgentID, AzureSubscriptionID: "azure_subscription_id", diff --git a/api-tests/inventory/agents_external_exporter_test.go b/api-tests/inventory/agents_external_exporter_test.go index bb49bfa6bb..5cd7b08369 100644 --- a/api-tests/inventory/agents_external_exporter_test.go +++ b/api-tests/inventory/agents_external_exporter_test.go @@ -47,8 +47,8 @@ func TestExternalExporter(t *testing.T) { serviceID := service.External.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - ExternalExporter := addExporter(t, agents.AddExporterBody{ - ExternalExporter: &agents.AddExporterParamsBodyExternalExporter{ + ExternalExporter := addExporter(t, agents.AddAgentBody{ + ExternalExporter: &agents.AddAgentParamsBodyExternalExporter{ RunsOnNodeID: genericNodeID, ServiceID: serviceID, ListenPort: 12345, @@ -101,8 +101,8 @@ func TestExternalExporter(t *testing.T) { serviceID := service.External.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - ExternalExporter := addExporter(t, agents.AddExporterBody{ - ExternalExporter: &agents.AddExporterParamsBodyExternalExporter{ + ExternalExporter := addExporter(t, agents.AddAgentBody{ + ExternalExporter: &agents.AddAgentParamsBodyExternalExporter{ RunsOnNodeID: genericNodeID, ServiceID: serviceID, Username: "username", @@ -201,9 +201,9 @@ func TestExternalExporter(t *testing.T) { require.NotEmpty(t, genericNodeID) defer pmmapitests.RemoveNodes(t, genericNodeID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - ExternalExporter: &agents.AddExporterParamsBodyExternalExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + ExternalExporter: &agents.AddAgentParamsBodyExternalExporter{ ServiceID: "", RunsOnNodeID: genericNodeID, ListenPort: 12345, @@ -234,16 +234,16 @@ func TestExternalExporter(t *testing.T) { serviceID := service.External.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - ExternalExporter: &agents.AddExporterParamsBodyExternalExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + ExternalExporter: &agents.AddAgentParamsBodyExternalExporter{ ServiceID: serviceID, RunsOnNodeID: genericNodeID, }, }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.ListenPort: value must be inside range (0, 65536)") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.ListenPort: value must be inside range (0, 65536)") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.ExternalExporter.AgentID) } @@ -266,9 +266,9 @@ func TestExternalExporter(t *testing.T) { serviceID := service.External.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - ExternalExporter: &agents.AddExporterParamsBodyExternalExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + ExternalExporter: &agents.AddAgentParamsBodyExternalExporter{ ServiceID: serviceID, RunsOnNodeID: "", ListenPort: 12345, @@ -276,7 +276,7 @@ func TestExternalExporter(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.RunsOnNodeId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.RunsOnNodeId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.ExternalExporter.AgentID) } @@ -289,9 +289,9 @@ func TestExternalExporter(t *testing.T) { require.NotEmpty(t, genericNodeID) defer pmmapitests.RemoveNodes(t, genericNodeID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - ExternalExporter: &agents.AddExporterParamsBodyExternalExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + ExternalExporter: &agents.AddAgentParamsBodyExternalExporter{ ServiceID: "pmm-service-id", RunsOnNodeID: genericNodeID, ListenPort: 12345, @@ -322,9 +322,9 @@ func TestExternalExporter(t *testing.T) { serviceID := service.External.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - ExternalExporter: &agents.AddExporterParamsBodyExternalExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + ExternalExporter: &agents.AddAgentParamsBodyExternalExporter{ ServiceID: serviceID, RunsOnNodeID: "pmm-not-exist-server", ListenPort: 12345, @@ -357,8 +357,8 @@ func TestExternalExporter(t *testing.T) { serviceID := service.External.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - ExternalExporter := addExporter(t, agents.AddExporterBody{ - ExternalExporter: &agents.AddExporterParamsBodyExternalExporter{ + ExternalExporter := addExporter(t, agents.AddAgentBody{ + ExternalExporter: &agents.AddAgentParamsBodyExternalExporter{ RunsOnNodeID: genericNodeID, ServiceID: serviceID, ListenPort: 12345, diff --git a/api-tests/inventory/agents_mongodb_exporter_test.go b/api-tests/inventory/agents_mongodb_exporter_test.go index e11410ee4d..1fb3626326 100644 --- a/api-tests/inventory/agents_mongodb_exporter_test.go +++ b/api-tests/inventory/agents_mongodb_exporter_test.go @@ -57,8 +57,8 @@ func TestMongoDBExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - mongoDBExporter := addExporter(t, agents.AddExporterBody{ - MongodbExporter: &agents.AddExporterParamsBodyMongodbExporter{ + mongoDBExporter := addExporter(t, agents.AddAgentBody{ + MongodbExporter: &agents.AddAgentParamsBodyMongodbExporter{ ServiceID: serviceID, Username: "username", Password: "password", @@ -169,16 +169,16 @@ func TestMongoDBExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - MongodbExporter: &agents.AddExporterParamsBodyMongodbExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + MongodbExporter: &agents.AddAgentParamsBodyMongodbExporter{ ServiceID: "", PMMAgentID: pmmAgentID, }, }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.ServiceId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.ServiceId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.MongodbExporter.AgentID) } @@ -202,9 +202,9 @@ func TestMongoDBExporter(t *testing.T) { serviceID := service.Mongodb.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - MongodbExporter: &agents.AddExporterParamsBodyMongodbExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + MongodbExporter: &agents.AddAgentParamsBodyMongodbExporter{ ServiceID: serviceID, PMMAgentID: "", Username: "username", @@ -213,7 +213,7 @@ func TestMongoDBExporter(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.PmmAgentId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.MongodbExporter.AgentID) } @@ -230,9 +230,9 @@ func TestMongoDBExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - MongodbExporter: &agents.AddExporterParamsBodyMongodbExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + MongodbExporter: &agents.AddAgentParamsBodyMongodbExporter{ ServiceID: "pmm-service-id", PMMAgentID: pmmAgentID, Username: "username", @@ -265,9 +265,9 @@ func TestMongoDBExporter(t *testing.T) { serviceID := service.Mongodb.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - MongodbExporter: &agents.AddExporterParamsBodyMongodbExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + MongodbExporter: &agents.AddAgentParamsBodyMongodbExporter{ ServiceID: serviceID, PMMAgentID: "pmm-not-exist-server", Username: "username", @@ -308,8 +308,8 @@ func TestMongoDBExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - mongoDBExporter := addExporter(t, agents.AddExporterBody{ - MongodbExporter: &agents.AddExporterParamsBodyMongodbExporter{ + mongoDBExporter := addExporter(t, agents.AddAgentBody{ + MongodbExporter: &agents.AddAgentParamsBodyMongodbExporter{ ServiceID: serviceID, Username: "username", Password: "password", diff --git a/api-tests/inventory/agents_mysqld_exporter_test.go b/api-tests/inventory/agents_mysqld_exporter_test.go index f1756e0dc9..2116af1fdf 100644 --- a/api-tests/inventory/agents_mysqld_exporter_test.go +++ b/api-tests/inventory/agents_mysqld_exporter_test.go @@ -57,8 +57,8 @@ func TestMySQLdExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - mySqldExporter := addExporter(t, agents.AddExporterBody{ - MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + mySqldExporter := addExporter(t, agents.AddAgentBody{ + MysqldExporter: &agents.AddAgentParamsBodyMysqldExporter{ ServiceID: serviceID, Username: "username", Password: "password", @@ -193,8 +193,8 @@ func TestMySQLdExporter(t *testing.T) { t.Skip("There are no connected agents") } - mySqldExporter := addExporter(t, agents.AddExporterBody{ - MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + mySqldExporter := addExporter(t, agents.AddAgentBody{ + MysqldExporter: &agents.AddAgentParamsBodyMysqldExporter{ ServiceID: serviceID, Username: "pmm-agent", // from pmm-agent docker-compose.yml Password: "pmm-agent-password", // from pmm-agent docker-compose.yml @@ -223,16 +223,16 @@ func TestMySQLdExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + MysqldExporter: &agents.AddAgentParamsBodyMysqldExporter{ ServiceID: "", PMMAgentID: pmmAgentID, }, }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.ServiceId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.ServiceId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.MysqldExporter.AgentID) } @@ -256,9 +256,9 @@ func TestMySQLdExporter(t *testing.T) { serviceID := service.Mysql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + MysqldExporter: &agents.AddAgentParamsBodyMysqldExporter{ ServiceID: serviceID, PMMAgentID: "", Username: "username", @@ -267,7 +267,7 @@ func TestMySQLdExporter(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.PmmAgentId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.MysqldExporter.AgentID) } @@ -284,9 +284,9 @@ func TestMySQLdExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + MysqldExporter: &agents.AddAgentParamsBodyMysqldExporter{ ServiceID: "pmm-service-id", PMMAgentID: pmmAgentID, Username: "username", @@ -319,9 +319,9 @@ func TestMySQLdExporter(t *testing.T) { serviceID := service.Mysql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + MysqldExporter: &agents.AddAgentParamsBodyMysqldExporter{ ServiceID: serviceID, PMMAgentID: "pmm-not-exist-server", Username: "username", @@ -362,8 +362,8 @@ func TestMySQLdExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - mySqldExporter := addExporter(t, agents.AddExporterBody{ - MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + mySqldExporter := addExporter(t, agents.AddAgentBody{ + MysqldExporter: &agents.AddAgentParamsBodyMysqldExporter{ ServiceID: serviceID, Username: "username", Password: "password", diff --git a/api-tests/inventory/agents_node_exporter_test.go b/api-tests/inventory/agents_node_exporter_test.go index b65e560c43..b0d7deb71d 100644 --- a/api-tests/inventory/agents_node_exporter_test.go +++ b/api-tests/inventory/agents_node_exporter_test.go @@ -126,15 +126,15 @@ func TestNodeExporter(t *testing.T) { t.Run("AddPMMAgentIDEmpty", func(t *testing.T) { t.Parallel() - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - NodeExporter: &agents.AddExporterParamsBodyNodeExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + NodeExporter: &agents.AddAgentParamsBodyNodeExporter{ PMMAgentID: "", }, }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.PmmAgentId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.NodeExporter.AgentID) } @@ -143,9 +143,9 @@ func TestNodeExporter(t *testing.T) { t.Run("NotExistPmmAgentID", func(t *testing.T) { t.Parallel() - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - NodeExporter: &agents.AddExporterParamsBodyNodeExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + NodeExporter: &agents.AddAgentParamsBodyNodeExporter{ PMMAgentID: "pmm-node-exporter-node", }, }, @@ -171,9 +171,9 @@ func TestNodeExporter(t *testing.T) { customLabels := map[string]string{ "custom_label_node_exporter": "node_exporter", } - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - NodeExporter: &agents.AddExporterParamsBodyNodeExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + NodeExporter: &agents.AddAgentParamsBodyNodeExporter{ PMMAgentID: pmmAgentID, CustomLabels: customLabels, PushMetrics: true, diff --git a/api-tests/inventory/agents_postgres_exporter_test.go b/api-tests/inventory/agents_postgres_exporter_test.go index 33ee72e32c..50383cbe0f 100644 --- a/api-tests/inventory/agents_postgres_exporter_test.go +++ b/api-tests/inventory/agents_postgres_exporter_test.go @@ -57,8 +57,8 @@ func TestPostgresExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - PostgresExporter := addExporter(t, agents.AddExporterBody{ - PostgresExporter: &agents.AddExporterParamsBodyPostgresExporter{ + PostgresExporter := addExporter(t, agents.AddAgentBody{ + PostgresExporter: &agents.AddAgentParamsBodyPostgresExporter{ ServiceID: serviceID, Username: "username", Password: "password", @@ -166,16 +166,16 @@ func TestPostgresExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - PostgresExporter: &agents.AddExporterParamsBodyPostgresExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + PostgresExporter: &agents.AddAgentParamsBodyPostgresExporter{ ServiceID: "", PMMAgentID: pmmAgentID, }, }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.ServiceId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.ServiceId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.PostgresExporter.AgentID) } @@ -199,9 +199,9 @@ func TestPostgresExporter(t *testing.T) { serviceID := service.Postgresql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - PostgresExporter: &agents.AddExporterParamsBodyPostgresExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + PostgresExporter: &agents.AddAgentParamsBodyPostgresExporter{ ServiceID: serviceID, PMMAgentID: "", Username: "username", @@ -210,7 +210,7 @@ func TestPostgresExporter(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.PmmAgentId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.PostgresExporter.AgentID) } @@ -227,9 +227,9 @@ func TestPostgresExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - PostgresExporter: &agents.AddExporterParamsBodyPostgresExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + PostgresExporter: &agents.AddAgentParamsBodyPostgresExporter{ ServiceID: "pmm-service-id", PMMAgentID: pmmAgentID, Username: "username", @@ -262,9 +262,9 @@ func TestPostgresExporter(t *testing.T) { serviceID := service.Postgresql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - PostgresExporter: &agents.AddExporterParamsBodyPostgresExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + PostgresExporter: &agents.AddAgentParamsBodyPostgresExporter{ ServiceID: serviceID, PMMAgentID: "pmm-not-exist-server", Username: "username", @@ -305,8 +305,8 @@ func TestPostgresExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - PostgresExporter := addExporter(t, agents.AddExporterBody{ - PostgresExporter: &agents.AddExporterParamsBodyPostgresExporter{ + PostgresExporter := addExporter(t, agents.AddAgentBody{ + PostgresExporter: &agents.AddAgentParamsBodyPostgresExporter{ ServiceID: serviceID, Username: "username", Password: "password", diff --git a/api-tests/inventory/agents_proxysql_exporter_test.go b/api-tests/inventory/agents_proxysql_exporter_test.go index 468ceb4b47..db5d185f5b 100644 --- a/api-tests/inventory/agents_proxysql_exporter_test.go +++ b/api-tests/inventory/agents_proxysql_exporter_test.go @@ -57,8 +57,8 @@ func TestProxySQLExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - ProxySQLExporter := addExporter(t, agents.AddExporterBody{ - ProxysqlExporter: &agents.AddExporterParamsBodyProxysqlExporter{ + ProxySQLExporter := addExporter(t, agents.AddAgentBody{ + ProxysqlExporter: &agents.AddAgentParamsBodyProxysqlExporter{ ServiceID: serviceID, Username: "username", Password: "password", @@ -166,16 +166,16 @@ func TestProxySQLExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - ProxysqlExporter: &agents.AddExporterParamsBodyProxysqlExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + ProxysqlExporter: &agents.AddAgentParamsBodyProxysqlExporter{ ServiceID: "", PMMAgentID: pmmAgentID, }, }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.ServiceId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.ServiceId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.ProxysqlExporter.AgentID) } @@ -199,9 +199,9 @@ func TestProxySQLExporter(t *testing.T) { serviceID := service.Proxysql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - ProxysqlExporter: &agents.AddExporterParamsBodyProxysqlExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + ProxysqlExporter: &agents.AddAgentParamsBodyProxysqlExporter{ ServiceID: serviceID, PMMAgentID: "", Username: "username", @@ -210,7 +210,7 @@ func TestProxySQLExporter(t *testing.T) { }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.PmmAgentId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.ProxysqlExporter.AgentID) } @@ -227,9 +227,9 @@ func TestProxySQLExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - ProxysqlExporter: &agents.AddExporterParamsBodyProxysqlExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + ProxysqlExporter: &agents.AddAgentParamsBodyProxysqlExporter{ ServiceID: "pmm-service-id", PMMAgentID: pmmAgentID, Username: "username", @@ -262,9 +262,9 @@ func TestProxySQLExporter(t *testing.T) { serviceID := service.Proxysql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - ProxysqlExporter: &agents.AddExporterParamsBodyProxysqlExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + ProxysqlExporter: &agents.AddAgentParamsBodyProxysqlExporter{ ServiceID: serviceID, PMMAgentID: "pmm-not-exist-server", Username: "username", @@ -302,8 +302,8 @@ func TestProxySQLExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - ProxySQLExporter := addExporter(t, agents.AddExporterBody{ - ProxysqlExporter: &agents.AddExporterParamsBodyProxysqlExporter{ + ProxySQLExporter := addExporter(t, agents.AddAgentBody{ + ProxysqlExporter: &agents.AddAgentParamsBodyProxysqlExporter{ ServiceID: serviceID, Username: "username", Password: "password", diff --git a/api-tests/inventory/agents_rds_exporter_test.go b/api-tests/inventory/agents_rds_exporter_test.go index 3367b4b1fd..7b1e57749d 100644 --- a/api-tests/inventory/agents_rds_exporter_test.go +++ b/api-tests/inventory/agents_rds_exporter_test.go @@ -43,8 +43,8 @@ func TestRDSExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - rdsExporter := addExporter(t, agents.AddExporterBody{ - RDSExporter: &agents.AddExporterParamsBodyRDSExporter{ + rdsExporter := addExporter(t, agents.AddAgentBody{ + RDSExporter: &agents.AddAgentParamsBodyRDSExporter{ NodeID: nodeID, PMMAgentID: pmmAgentID, CustomLabels: map[string]string{ @@ -152,16 +152,16 @@ func TestRDSExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - RDSExporter: &agents.AddExporterParamsBodyRDSExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + RDSExporter: &agents.AddAgentParamsBodyRDSExporter{ NodeID: "", PMMAgentID: pmmAgentID, }, }, Context: pmmapitests.Context, }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddExporterRequest.NodeId: value length must be at least 1 runes") + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.NodeId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.RDSExporter.AgentID) } @@ -178,9 +178,9 @@ func TestRDSExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - RDSExporter: &agents.AddExporterParamsBodyRDSExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + RDSExporter: &agents.AddAgentParamsBodyRDSExporter{ NodeID: "pmm-node-id", PMMAgentID: pmmAgentID, }, @@ -199,9 +199,9 @@ func TestRDSExporter(t *testing.T) { require.NotEmpty(t, genericNodeID) defer pmmapitests.RemoveNodes(t, genericNodeID) - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - RDSExporter: &agents.AddExporterParamsBodyRDSExporter{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + RDSExporter: &agents.AddAgentParamsBodyRDSExporter{ NodeID: "nodeID", PMMAgentID: "pmm-not-exist-server", }, @@ -227,8 +227,8 @@ func TestRDSExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - rdsExporter := addExporter(t, agents.AddExporterBody{ - RDSExporter: &agents.AddExporterParamsBodyRDSExporter{ + rdsExporter := addExporter(t, agents.AddAgentBody{ + RDSExporter: &agents.AddAgentParamsBodyRDSExporter{ NodeID: nodeID, PMMAgentID: pmmAgentID, CustomLabels: map[string]string{ diff --git a/api-tests/inventory/agents_test.go b/api-tests/inventory/agents_test.go index 4d42414076..e14446c2ea 100644 --- a/api-tests/inventory/agents_test.go +++ b/api-tests/inventory/agents_test.go @@ -63,8 +63,8 @@ func TestAgents(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - mySqldExporter := addExporter(t, agents.AddExporterBody{ - MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + mySqldExporter := addExporter(t, agents.AddAgentBody{ + MysqldExporter: &agents.AddAgentParamsBodyMysqldExporter{ ServiceID: serviceID, Username: "username", Password: "password", @@ -111,8 +111,8 @@ func TestAgents(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - mySqldExporter := addExporter(t, agents.AddExporterBody{ - MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + mySqldExporter := addExporter(t, agents.AddAgentBody{ + MysqldExporter: &agents.AddAgentParamsBodyMysqldExporter{ ServiceID: serviceID, Username: "username", Password: "password", @@ -124,9 +124,9 @@ func TestAgents(t *testing.T) { mySqldExporterID := mySqldExporter.MysqldExporter.AgentID defer pmmapitests.RemoveAgents(t, mySqldExporterID) - nodeExporter, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - NodeExporter: &agents.AddExporterParamsBodyNodeExporter{ + nodeExporter, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + NodeExporter: &agents.AddAgentParamsBodyNodeExporter{ PMMAgentID: pmmAgentID, CustomLabels: map[string]string{ "custom_label_node_exporter": "node_exporter", @@ -232,9 +232,9 @@ func TestAgents(t *testing.T) { }).Mysql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - _, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - MongodbExporter: &agents.AddExporterParamsBodyMongodbExporter{ + _, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + MongodbExporter: &agents.AddAgentParamsBodyMongodbExporter{ ServiceID: serviceID, Username: "username", Password: "password", @@ -326,8 +326,8 @@ func TestPMMAgent(t *testing.T) { nodeExporterOK := addNodeExporter(t, pmmAgentID, make(map[string]string)) nodeExporterID := nodeExporterOK.Payload.NodeExporter.AgentID - mySqldExporter := addExporter(t, agents.AddExporterBody{ - MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + mySqldExporter := addExporter(t, agents.AddAgentBody{ + MysqldExporter: &agents.AddAgentParamsBodyMysqldExporter{ ServiceID: serviceID, Username: "username", Password: "password", diff --git a/api-tests/inventory/helpers.go b/api-tests/inventory/helpers.go index 9f60b56efe..624c489ea8 100644 --- a/api-tests/inventory/helpers.go +++ b/api-tests/inventory/helpers.go @@ -81,10 +81,10 @@ func addService(t pmmapitests.TestingT, body services.AddServiceBody) *services. return res.Payload } -func addNodeExporter(t pmmapitests.TestingT, pmmAgentID string, customLabels map[string]string) *agents.AddExporterOK { - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ - Body: agents.AddExporterBody{ - NodeExporter: &agents.AddExporterParamsBodyNodeExporter{ +func addNodeExporter(t pmmapitests.TestingT, pmmAgentID string, customLabels map[string]string) *agents.AddAgentOK { + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + NodeExporter: &agents.AddAgentParamsBodyNodeExporter{ PMMAgentID: pmmAgentID, CustomLabels: customLabels, }, @@ -98,10 +98,10 @@ func addNodeExporter(t pmmapitests.TestingT, pmmAgentID string, customLabels map return res } -func addExporter(t pmmapitests.TestingT, body agents.AddExporterBody) *agents.AddExporterOKBody { +func addExporter(t pmmapitests.TestingT, body agents.AddAgentBody) *agents.AddAgentOKBody { t.Helper() - res, err := client.Default.AgentsService.AddExporter(&agents.AddExporterParams{ + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ Body: body, Context: pmmapitests.Context, }) diff --git a/api-tests/inventory/services_test.go b/api-tests/inventory/services_test.go index 20de99a32f..28a058e753 100644 --- a/api-tests/inventory/services_test.go +++ b/api-tests/inventory/services_test.go @@ -264,8 +264,8 @@ func TestRemoveService(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - _ = addExporter(t, agents.AddExporterBody{ - MysqldExporter: &agents.AddExporterParamsBodyMysqldExporter{ + _ = addExporter(t, agents.AddAgentBody{ + MysqldExporter: &agents.AddAgentParamsBodyMysqldExporter{ ServiceID: serviceID, Username: "username", Password: "password", diff --git a/api/inventory/v1/agents.pb.go b/api/inventory/v1/agents.pb.go index a494cd0842..cd487a77f1 100644 --- a/api/inventory/v1/agents.pb.go +++ b/api/inventory/v1/agents.pb.go @@ -3386,26 +3386,26 @@ func (x *AddPMMAgentResponse) GetPmmAgent() *PMMAgent { return nil } -type AddExporterRequest struct { +type AddAgentRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Types that are assignable to Exporter: // - // *AddExporterRequest_NodeExporter - // *AddExporterRequest_MysqldExporter - // *AddExporterRequest_MongodbExporter - // *AddExporterRequest_PostgresExporter - // *AddExporterRequest_ProxysqlExporter - // *AddExporterRequest_ExternalExporter - // *AddExporterRequest_RdsExporter - // *AddExporterRequest_AzureDatabaseExporter - Exporter isAddExporterRequest_Exporter `protobuf_oneof:"exporter"` -} - -func (x *AddExporterRequest) Reset() { - *x = AddExporterRequest{} + // *AddAgentRequest_NodeExporter + // *AddAgentRequest_MysqldExporter + // *AddAgentRequest_MongodbExporter + // *AddAgentRequest_PostgresExporter + // *AddAgentRequest_ProxysqlExporter + // *AddAgentRequest_ExternalExporter + // *AddAgentRequest_RdsExporter + // *AddAgentRequest_AzureDatabaseExporter + Exporter isAddAgentRequest_Exporter `protobuf_oneof:"exporter"` +} + +func (x *AddAgentRequest) Reset() { + *x = AddAgentRequest{} if protoimpl.UnsafeEnabled { mi := &file_inventory_v1_agents_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3413,13 +3413,13 @@ func (x *AddExporterRequest) Reset() { } } -func (x *AddExporterRequest) String() string { +func (x *AddAgentRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddExporterRequest) ProtoMessage() {} +func (*AddAgentRequest) ProtoMessage() {} -func (x *AddExporterRequest) ProtoReflect() protoreflect.Message { +func (x *AddAgentRequest) ProtoReflect() protoreflect.Message { mi := &file_inventory_v1_agents_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3431,148 +3431,148 @@ func (x *AddExporterRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AddExporterRequest.ProtoReflect.Descriptor instead. -func (*AddExporterRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use AddAgentRequest.ProtoReflect.Descriptor instead. +func (*AddAgentRequest) Descriptor() ([]byte, []int) { return file_inventory_v1_agents_proto_rawDescGZIP(), []int{24} } -func (m *AddExporterRequest) GetExporter() isAddExporterRequest_Exporter { +func (m *AddAgentRequest) GetExporter() isAddAgentRequest_Exporter { if m != nil { return m.Exporter } return nil } -func (x *AddExporterRequest) GetNodeExporter() *AddNodeExporterParams { - if x, ok := x.GetExporter().(*AddExporterRequest_NodeExporter); ok { +func (x *AddAgentRequest) GetNodeExporter() *AddNodeExporterParams { + if x, ok := x.GetExporter().(*AddAgentRequest_NodeExporter); ok { return x.NodeExporter } return nil } -func (x *AddExporterRequest) GetMysqldExporter() *AddMySQLdExporterParams { - if x, ok := x.GetExporter().(*AddExporterRequest_MysqldExporter); ok { +func (x *AddAgentRequest) GetMysqldExporter() *AddMySQLdExporterParams { + if x, ok := x.GetExporter().(*AddAgentRequest_MysqldExporter); ok { return x.MysqldExporter } return nil } -func (x *AddExporterRequest) GetMongodbExporter() *AddMongoDBExporterParams { - if x, ok := x.GetExporter().(*AddExporterRequest_MongodbExporter); ok { +func (x *AddAgentRequest) GetMongodbExporter() *AddMongoDBExporterParams { + if x, ok := x.GetExporter().(*AddAgentRequest_MongodbExporter); ok { return x.MongodbExporter } return nil } -func (x *AddExporterRequest) GetPostgresExporter() *AddPostgresExporterParams { - if x, ok := x.GetExporter().(*AddExporterRequest_PostgresExporter); ok { +func (x *AddAgentRequest) GetPostgresExporter() *AddPostgresExporterParams { + if x, ok := x.GetExporter().(*AddAgentRequest_PostgresExporter); ok { return x.PostgresExporter } return nil } -func (x *AddExporterRequest) GetProxysqlExporter() *AddProxySQLExporterParams { - if x, ok := x.GetExporter().(*AddExporterRequest_ProxysqlExporter); ok { +func (x *AddAgentRequest) GetProxysqlExporter() *AddProxySQLExporterParams { + if x, ok := x.GetExporter().(*AddAgentRequest_ProxysqlExporter); ok { return x.ProxysqlExporter } return nil } -func (x *AddExporterRequest) GetExternalExporter() *AddExternalExporterParams { - if x, ok := x.GetExporter().(*AddExporterRequest_ExternalExporter); ok { +func (x *AddAgentRequest) GetExternalExporter() *AddExternalExporterParams { + if x, ok := x.GetExporter().(*AddAgentRequest_ExternalExporter); ok { return x.ExternalExporter } return nil } -func (x *AddExporterRequest) GetRdsExporter() *AddRDSExporterParams { - if x, ok := x.GetExporter().(*AddExporterRequest_RdsExporter); ok { +func (x *AddAgentRequest) GetRdsExporter() *AddRDSExporterParams { + if x, ok := x.GetExporter().(*AddAgentRequest_RdsExporter); ok { return x.RdsExporter } return nil } -func (x *AddExporterRequest) GetAzureDatabaseExporter() *AddAzureDatabaseExporterParams { - if x, ok := x.GetExporter().(*AddExporterRequest_AzureDatabaseExporter); ok { +func (x *AddAgentRequest) GetAzureDatabaseExporter() *AddAzureDatabaseExporterParams { + if x, ok := x.GetExporter().(*AddAgentRequest_AzureDatabaseExporter); ok { return x.AzureDatabaseExporter } return nil } -type isAddExporterRequest_Exporter interface { - isAddExporterRequest_Exporter() +type isAddAgentRequest_Exporter interface { + isAddAgentRequest_Exporter() } -type AddExporterRequest_NodeExporter struct { +type AddAgentRequest_NodeExporter struct { NodeExporter *AddNodeExporterParams `protobuf:"bytes,1,opt,name=node_exporter,json=nodeExporter,proto3,oneof"` } -type AddExporterRequest_MysqldExporter struct { +type AddAgentRequest_MysqldExporter struct { MysqldExporter *AddMySQLdExporterParams `protobuf:"bytes,2,opt,name=mysqld_exporter,json=mysqldExporter,proto3,oneof"` } -type AddExporterRequest_MongodbExporter struct { +type AddAgentRequest_MongodbExporter struct { MongodbExporter *AddMongoDBExporterParams `protobuf:"bytes,3,opt,name=mongodb_exporter,json=mongodbExporter,proto3,oneof"` } -type AddExporterRequest_PostgresExporter struct { +type AddAgentRequest_PostgresExporter struct { PostgresExporter *AddPostgresExporterParams `protobuf:"bytes,4,opt,name=postgres_exporter,json=postgresExporter,proto3,oneof"` } -type AddExporterRequest_ProxysqlExporter struct { +type AddAgentRequest_ProxysqlExporter struct { ProxysqlExporter *AddProxySQLExporterParams `protobuf:"bytes,5,opt,name=proxysql_exporter,json=proxysqlExporter,proto3,oneof"` } -type AddExporterRequest_ExternalExporter struct { +type AddAgentRequest_ExternalExporter struct { ExternalExporter *AddExternalExporterParams `protobuf:"bytes,6,opt,name=external_exporter,json=externalExporter,proto3,oneof"` } -type AddExporterRequest_RdsExporter struct { +type AddAgentRequest_RdsExporter struct { RdsExporter *AddRDSExporterParams `protobuf:"bytes,7,opt,name=rds_exporter,json=rdsExporter,proto3,oneof"` } -type AddExporterRequest_AzureDatabaseExporter struct { +type AddAgentRequest_AzureDatabaseExporter struct { AzureDatabaseExporter *AddAzureDatabaseExporterParams `protobuf:"bytes,8,opt,name=azure_database_exporter,json=azureDatabaseExporter,proto3,oneof"` } -func (*AddExporterRequest_NodeExporter) isAddExporterRequest_Exporter() {} +func (*AddAgentRequest_NodeExporter) isAddAgentRequest_Exporter() {} -func (*AddExporterRequest_MysqldExporter) isAddExporterRequest_Exporter() {} +func (*AddAgentRequest_MysqldExporter) isAddAgentRequest_Exporter() {} -func (*AddExporterRequest_MongodbExporter) isAddExporterRequest_Exporter() {} +func (*AddAgentRequest_MongodbExporter) isAddAgentRequest_Exporter() {} -func (*AddExporterRequest_PostgresExporter) isAddExporterRequest_Exporter() {} +func (*AddAgentRequest_PostgresExporter) isAddAgentRequest_Exporter() {} -func (*AddExporterRequest_ProxysqlExporter) isAddExporterRequest_Exporter() {} +func (*AddAgentRequest_ProxysqlExporter) isAddAgentRequest_Exporter() {} -func (*AddExporterRequest_ExternalExporter) isAddExporterRequest_Exporter() {} +func (*AddAgentRequest_ExternalExporter) isAddAgentRequest_Exporter() {} -func (*AddExporterRequest_RdsExporter) isAddExporterRequest_Exporter() {} +func (*AddAgentRequest_RdsExporter) isAddAgentRequest_Exporter() {} -func (*AddExporterRequest_AzureDatabaseExporter) isAddExporterRequest_Exporter() {} +func (*AddAgentRequest_AzureDatabaseExporter) isAddAgentRequest_Exporter() {} -type AddExporterResponse struct { +type AddAgentResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Types that are assignable to Exporter: // - // *AddExporterResponse_NodeExporter - // *AddExporterResponse_MysqldExporter - // *AddExporterResponse_MongodbExporter - // *AddExporterResponse_PostgresExporter - // *AddExporterResponse_ProxysqlExporter - // *AddExporterResponse_ExternalExporter - // *AddExporterResponse_RdsExporter - // *AddExporterResponse_AzureDatabaseExporter - Exporter isAddExporterResponse_Exporter `protobuf_oneof:"exporter"` + // *AddAgentResponse_NodeExporter + // *AddAgentResponse_MysqldExporter + // *AddAgentResponse_MongodbExporter + // *AddAgentResponse_PostgresExporter + // *AddAgentResponse_ProxysqlExporter + // *AddAgentResponse_ExternalExporter + // *AddAgentResponse_RdsExporter + // *AddAgentResponse_AzureDatabaseExporter + Exporter isAddAgentResponse_Exporter `protobuf_oneof:"exporter"` // Actual table count for SQL databases at the moment of adding. TableCount int32 `protobuf:"varint,9,opt,name=table_count,json=tableCount,proto3" json:"table_count,omitempty"` } -func (x *AddExporterResponse) Reset() { - *x = AddExporterResponse{} +func (x *AddAgentResponse) Reset() { + *x = AddAgentResponse{} if protoimpl.UnsafeEnabled { mi := &file_inventory_v1_agents_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3580,13 +3580,13 @@ func (x *AddExporterResponse) Reset() { } } -func (x *AddExporterResponse) String() string { +func (x *AddAgentResponse) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddExporterResponse) ProtoMessage() {} +func (*AddAgentResponse) ProtoMessage() {} -func (x *AddExporterResponse) ProtoReflect() protoreflect.Message { +func (x *AddAgentResponse) ProtoReflect() protoreflect.Message { mi := &file_inventory_v1_agents_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3598,132 +3598,132 @@ func (x *AddExporterResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AddExporterResponse.ProtoReflect.Descriptor instead. -func (*AddExporterResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use AddAgentResponse.ProtoReflect.Descriptor instead. +func (*AddAgentResponse) Descriptor() ([]byte, []int) { return file_inventory_v1_agents_proto_rawDescGZIP(), []int{25} } -func (m *AddExporterResponse) GetExporter() isAddExporterResponse_Exporter { +func (m *AddAgentResponse) GetExporter() isAddAgentResponse_Exporter { if m != nil { return m.Exporter } return nil } -func (x *AddExporterResponse) GetNodeExporter() *NodeExporter { - if x, ok := x.GetExporter().(*AddExporterResponse_NodeExporter); ok { +func (x *AddAgentResponse) GetNodeExporter() *NodeExporter { + if x, ok := x.GetExporter().(*AddAgentResponse_NodeExporter); ok { return x.NodeExporter } return nil } -func (x *AddExporterResponse) GetMysqldExporter() *MySQLdExporter { - if x, ok := x.GetExporter().(*AddExporterResponse_MysqldExporter); ok { +func (x *AddAgentResponse) GetMysqldExporter() *MySQLdExporter { + if x, ok := x.GetExporter().(*AddAgentResponse_MysqldExporter); ok { return x.MysqldExporter } return nil } -func (x *AddExporterResponse) GetMongodbExporter() *MongoDBExporter { - if x, ok := x.GetExporter().(*AddExporterResponse_MongodbExporter); ok { +func (x *AddAgentResponse) GetMongodbExporter() *MongoDBExporter { + if x, ok := x.GetExporter().(*AddAgentResponse_MongodbExporter); ok { return x.MongodbExporter } return nil } -func (x *AddExporterResponse) GetPostgresExporter() *PostgresExporter { - if x, ok := x.GetExporter().(*AddExporterResponse_PostgresExporter); ok { +func (x *AddAgentResponse) GetPostgresExporter() *PostgresExporter { + if x, ok := x.GetExporter().(*AddAgentResponse_PostgresExporter); ok { return x.PostgresExporter } return nil } -func (x *AddExporterResponse) GetProxysqlExporter() *ProxySQLExporter { - if x, ok := x.GetExporter().(*AddExporterResponse_ProxysqlExporter); ok { +func (x *AddAgentResponse) GetProxysqlExporter() *ProxySQLExporter { + if x, ok := x.GetExporter().(*AddAgentResponse_ProxysqlExporter); ok { return x.ProxysqlExporter } return nil } -func (x *AddExporterResponse) GetExternalExporter() *ExternalExporter { - if x, ok := x.GetExporter().(*AddExporterResponse_ExternalExporter); ok { +func (x *AddAgentResponse) GetExternalExporter() *ExternalExporter { + if x, ok := x.GetExporter().(*AddAgentResponse_ExternalExporter); ok { return x.ExternalExporter } return nil } -func (x *AddExporterResponse) GetRdsExporter() *RDSExporter { - if x, ok := x.GetExporter().(*AddExporterResponse_RdsExporter); ok { +func (x *AddAgentResponse) GetRdsExporter() *RDSExporter { + if x, ok := x.GetExporter().(*AddAgentResponse_RdsExporter); ok { return x.RdsExporter } return nil } -func (x *AddExporterResponse) GetAzureDatabaseExporter() *AzureDatabaseExporter { - if x, ok := x.GetExporter().(*AddExporterResponse_AzureDatabaseExporter); ok { +func (x *AddAgentResponse) GetAzureDatabaseExporter() *AzureDatabaseExporter { + if x, ok := x.GetExporter().(*AddAgentResponse_AzureDatabaseExporter); ok { return x.AzureDatabaseExporter } return nil } -func (x *AddExporterResponse) GetTableCount() int32 { +func (x *AddAgentResponse) GetTableCount() int32 { if x != nil { return x.TableCount } return 0 } -type isAddExporterResponse_Exporter interface { - isAddExporterResponse_Exporter() +type isAddAgentResponse_Exporter interface { + isAddAgentResponse_Exporter() } -type AddExporterResponse_NodeExporter struct { +type AddAgentResponse_NodeExporter struct { NodeExporter *NodeExporter `protobuf:"bytes,1,opt,name=node_exporter,json=nodeExporter,proto3,oneof"` } -type AddExporterResponse_MysqldExporter struct { +type AddAgentResponse_MysqldExporter struct { MysqldExporter *MySQLdExporter `protobuf:"bytes,2,opt,name=mysqld_exporter,json=mysqldExporter,proto3,oneof"` } -type AddExporterResponse_MongodbExporter struct { +type AddAgentResponse_MongodbExporter struct { MongodbExporter *MongoDBExporter `protobuf:"bytes,3,opt,name=mongodb_exporter,json=mongodbExporter,proto3,oneof"` } -type AddExporterResponse_PostgresExporter struct { +type AddAgentResponse_PostgresExporter struct { PostgresExporter *PostgresExporter `protobuf:"bytes,4,opt,name=postgres_exporter,json=postgresExporter,proto3,oneof"` } -type AddExporterResponse_ProxysqlExporter struct { +type AddAgentResponse_ProxysqlExporter struct { ProxysqlExporter *ProxySQLExporter `protobuf:"bytes,5,opt,name=proxysql_exporter,json=proxysqlExporter,proto3,oneof"` } -type AddExporterResponse_ExternalExporter struct { +type AddAgentResponse_ExternalExporter struct { ExternalExporter *ExternalExporter `protobuf:"bytes,6,opt,name=external_exporter,json=externalExporter,proto3,oneof"` } -type AddExporterResponse_RdsExporter struct { +type AddAgentResponse_RdsExporter struct { RdsExporter *RDSExporter `protobuf:"bytes,7,opt,name=rds_exporter,json=rdsExporter,proto3,oneof"` } -type AddExporterResponse_AzureDatabaseExporter struct { +type AddAgentResponse_AzureDatabaseExporter struct { AzureDatabaseExporter *AzureDatabaseExporter `protobuf:"bytes,8,opt,name=azure_database_exporter,json=azureDatabaseExporter,proto3,oneof"` } -func (*AddExporterResponse_NodeExporter) isAddExporterResponse_Exporter() {} +func (*AddAgentResponse_NodeExporter) isAddAgentResponse_Exporter() {} -func (*AddExporterResponse_MysqldExporter) isAddExporterResponse_Exporter() {} +func (*AddAgentResponse_MysqldExporter) isAddAgentResponse_Exporter() {} -func (*AddExporterResponse_MongodbExporter) isAddExporterResponse_Exporter() {} +func (*AddAgentResponse_MongodbExporter) isAddAgentResponse_Exporter() {} -func (*AddExporterResponse_PostgresExporter) isAddExporterResponse_Exporter() {} +func (*AddAgentResponse_PostgresExporter) isAddAgentResponse_Exporter() {} -func (*AddExporterResponse_ProxysqlExporter) isAddExporterResponse_Exporter() {} +func (*AddAgentResponse_ProxysqlExporter) isAddAgentResponse_Exporter() {} -func (*AddExporterResponse_ExternalExporter) isAddExporterResponse_Exporter() {} +func (*AddAgentResponse_ExternalExporter) isAddAgentResponse_Exporter() {} -func (*AddExporterResponse_RdsExporter) isAddExporterResponse_Exporter() {} +func (*AddAgentResponse_RdsExporter) isAddAgentResponse_Exporter() {} -func (*AddExporterResponse_AzureDatabaseExporter) isAddExporterResponse_Exporter() {} +func (*AddAgentResponse_AzureDatabaseExporter) isAddAgentResponse_Exporter() {} type AddNodeExporterParams struct { state protoimpl.MessageState @@ -8355,472 +8355,277 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 0x33, 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, 0x52, 0x08, 0x70, 0x6d, 0x6d, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x22, 0xcc, 0x05, 0x0a, 0x12, 0x41, 0x64, 0x64, 0x45, 0x78, 0x70, 0x6f, - 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4a, 0x0a, 0x0d, 0x6e, - 0x6f, 0x64, 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, 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, 0x02, 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, 0x03, 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, 0x04, 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, 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, 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, 0x06, 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, 0x07, 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, 0x08, 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, 0x42, 0x0a, 0x0a, 0x08, 0x65, 0x78, 0x70, 0x6f, 0x72, - 0x74, 0x65, 0x72, 0x22, 0xa6, 0x05, 0x0a, 0x13, 0x41, 0x64, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, - 0x74, 0x65, 0x72, 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, 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, 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, 0x02, 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, 0x03, 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, 0x04, 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, 0x05, 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, 0x06, 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, 0x07, 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, 0x08, 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, - 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, - 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, 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, 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, 0x09, 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, 0x07, 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, 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, 0x0a, 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, 0x0b, - 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, 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, 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, 0x0a, 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, 0x0b, - 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, 0x0c, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x5d, 0x0a, 0x0d, 0x63, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x38, 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, 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, 0x0d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x64, 0x69, - 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 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, 0x0e, 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, 0x0f, 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, 0x25, 0x0a, 0x0e, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x73, - 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x67, 0x65, - 0x6e, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x74, - 0x61, 0x74, 0x73, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0x11, 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, 0x12, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x10, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, - 0x69, 0x6d, 0x69, 0x74, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, - 0x6c, 0x18, 0x13, 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, 0x14, 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, 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, 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, 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, + 0x67, 0x65, 0x6e, 0x74, 0x22, 0xc9, 0x05, 0x0a, 0x0f, 0x41, 0x64, 0x64, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4a, 0x0a, 0x0d, 0x6e, 0x6f, 0x64, 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, + 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, 0x02, 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, 0x03, 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, 0x04, 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, 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, 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, 0x06, 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, 0x07, 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, 0x08, 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, 0x42, 0x0a, 0x0a, 0x08, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, + 0x22, 0xa3, 0x05, 0x0a, 0x10, 0x41, 0x64, 0x64, 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, 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, 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, 0x02, 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, 0x03, 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, 0x04, 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, 0x05, 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, 0x06, 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, 0x07, 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, 0x08, 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, 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x62, + 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 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, 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, + 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, 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, 0xe8, 0x05, 0x0a, 0x21, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, - 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x0b, - 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, 0x0c, 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, 0x0e, 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, 0x07, 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, 0x66, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, - 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, 0x09, 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, 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, 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, 0x22, 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, 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, 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, 0x95, 0x06, 0x0a, 0x1e, 0x41, 0x64, 0x64, 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, 0x29, 0x0a, 0x0c, 0x70, 0x6d, + 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, 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, 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, 0x09, 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, 0x07, + 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, 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, + 0x0a, 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, 0x0b, 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, 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, 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, 0x0a, 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, 0x0b, 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, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, + 0x6c, 0x73, 0x43, 0x61, 0x12, 0x5d, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, + 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 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, 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, 0x0d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, + 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 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, 0x0e, 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, + 0x0f, 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, 0x25, 0x0a, + 0x0e, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, + 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x73, 0x73, + 0x77, 0x6f, 0x72, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x63, 0x6f, + 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x11, 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, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x63, 0x6f, + 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x33, + 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x13, 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, 0x14, 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, 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, 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, @@ -8833,58 +8638,236 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 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, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, - 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0f, 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, 0x07, 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, 0x08, 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, 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, - 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, 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, 0x10, 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, 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, - 0x7c, 0x0a, 0x1f, 0x41, 0x64, 0x64, 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, 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, + 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, 0x7f, 0x0a, 0x22, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, + 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, 0xe8, 0x05, 0x0a, 0x21, 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, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, + 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, + 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x0b, 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, 0x0c, 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, 0x0e, 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, 0x07, 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, 0x66, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, 0x09, 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, 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, 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, + 0x22, 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, 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, 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, 0x95, 0x06, 0x0a, 0x1e, 0x41, 0x64, 0x64, 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, 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, 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, 0x28, 0x0a, + 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, + 0x68, 0x18, 0x0f, 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, 0x07, 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, 0x08, 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, 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, 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, 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, 0x10, 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, 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, 0x7c, 0x0a, 0x1f, 0x41, 0x64, 0x64, 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, @@ -8892,817 +8875,832 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0xa9, 0x06, 0x0a, 0x21, 0x41, 0x64, 0x64, 0x51, + 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 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, 0xa9, 0x06, 0x0a, 0x21, 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, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x09, 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, 0x0a, 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, 0x0b, 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, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x66, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, + 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, + 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, + 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, 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, + 0x0c, 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, 0x0d, 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, 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, 0x88, 0x01, + 0x0a, 0x22, 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, 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, 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, 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, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x09, 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, 0x0a, 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, 0x0b, 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, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, - 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x66, 0x0a, + 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, 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, 0xc0, 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, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x6d, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 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, 0x52, 0x65, + 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, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, 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, 0x28, 0x0a, 0x10, 0x6d, 0x61, + 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0d, + 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, 0x09, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, + 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x0a, 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, 0x0b, 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, 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, 0xa4, 0x01, 0x0a, 0x29, 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, 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, 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, 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, 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, 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, 0xf8, 0x05, 0x0a, 0x29, 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, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x0e, 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, 0x07, 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, 0x6e, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, + 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x49, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x18, 0x09, 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, 0x0c, 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, - 0x0d, 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, 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, 0x88, 0x01, 0x0a, 0x22, 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, 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, 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, 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, + 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, 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, + 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x0b, 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, 0x0c, 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, 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, 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, 0xa8, 0x01, 0x0a, 0x2a, 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, 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, + 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, 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, 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, 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, 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, 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, 0xc0, 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, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x6d, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, - 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 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, - 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 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, 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, 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, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, - 0x6e, 0x67, 0x74, 0x68, 0x18, 0x0d, 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, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, - 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x0a, 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, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, - 0x6c, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, + 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, 0x0b, 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, + 0x07, 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, 0x08, 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, 0x09, 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, 0x0a, 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, 0xa4, 0x01, 0x0a, 0x29, - 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, 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, 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, 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, + 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, 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, 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, - 0xf8, 0x05, 0x0a, 0x29, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, - 0x0e, 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, - 0x07, 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, 0x6e, 0x0a, 0x0d, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x49, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, 0x09, 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, 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, - 0x5f, 0x63, 0x61, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, - 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x0b, 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, 0x0c, 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, 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, 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, 0xa8, 0x01, 0x0a, 0x2a, 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, 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, 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, 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, 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, - 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, 0x0b, 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, 0x07, 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, 0x08, 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, 0x09, 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, 0x0a, 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, 0x0e, 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, 0x02, 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, 0x03, 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, 0x04, 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, 0x05, 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, 0x06, 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, 0x07, 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, 0x08, 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, 0x09, 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, 0x0a, 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, 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, 0x0b, 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, 0x0c, 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, 0x8e, 0x2e, 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, + 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, 0x0e, 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, 0x02, 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, 0x03, 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, 0x04, 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, 0x05, 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, + 0x06, 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, 0x07, 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, 0x08, 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, 0x09, 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, + 0x0a, 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, 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, + 0x0b, 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, 0x0c, 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, 0xf6, 0x2d, 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, - 0x47, 0x65, 0x74, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0xa2, 0x01, 0x0a, 0x0b, 0x41, 0x64, 0x64, 0x50, - 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x20, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4e, 0x92, 0x41, - 0x20, 0x12, 0x0d, 0x41, 0x64, 0x64, 0x20, 0x50, 0x4d, 0x4d, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x1a, 0x0f, 0x41, 0x64, 0x64, 0x73, 0x20, 0x50, 0x4d, 0x4d, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, - 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x3a, 0x01, 0x2a, 0x22, 0x20, 0x2f, 0x76, 0x31, 0x2f, - 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, - 0x2f, 0x41, 0x64, 0x64, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0xac, 0x01, 0x0a, - 0x0b, 0x41, 0x64, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x20, 0x2e, 0x69, - 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x45, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, - 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, - 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x58, 0x92, 0x41, 0x2a, 0x12, 0x0f, 0x41, 0x64, 0x64, 0x20, 0x61, 0x6e, 0x20, 0x45, - 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x1a, 0x17, 0x41, 0x64, 0x64, 0x73, 0x20, 0x61, 0x6e, - 0x20, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x3a, 0x01, 0x2a, 0x22, 0x20, 0x2f, 0x76, 0x31, 0x2f, 0x69, + 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, 0xa2, 0x01, 0x0a, 0x0b, 0x41, 0x64, 0x64, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, + 0x74, 0x12, 0x20, 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, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x21, 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, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4e, 0x92, 0x41, 0x20, 0x12, 0x0d, 0x41, 0x64, 0x64, + 0x20, 0x50, 0x4d, 0x4d, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x0f, 0x41, 0x64, 0x64, 0x73, + 0x20, 0x50, 0x4d, 0x4d, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, + 0x25, 0x3a, 0x01, 0x2a, 0x22, 0x20, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, + 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, 0x50, 0x4d, + 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x94, 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, 0x49, 0x92, 0x41, 0x1e, 0x12, 0x0c, 0x41, 0x64, 0x64, 0x20, 0x61, 0x6e, 0x20, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x0e, 0x41, 0x64, 0x64, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x41, + 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x3a, 0x01, 0x2a, 0x22, 0x1d, + 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, + 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 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, - 0x41, 0x64, 0x64, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, 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, + 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, 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, 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, 0x30, 0x3a, 0x01, 0x2a, 0x22, 0x2b, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, + 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, 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, + 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, 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, + 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, 0x91, 0x02, 0x0a, 0x1a, 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, 0x12, 0x2f, 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, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x30, 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, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8f, 0x01, 0x92, 0x41, 0x52, 0x12, 0x20, 0x41, 0x64, 0x64, 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, 0x2e, 0x41, 0x64, - 0x64, 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, 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, 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, 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, 0xff, 0x01, 0x0a, - 0x17, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, - 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x2c, 0x2e, 0x69, 0x6e, 0x76, 0x65, 0x6e, + 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, 0x91, 0x02, 0x0a, 0x1a, 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, 0x12, 0x2f, 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, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 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, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8f, 0x01, 0x92, 0x41, 0x52, 0x12, 0x20, 0x41, 0x64, + 0x64, 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, 0x2e, + 0x41, 0x64, 0x64, 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, 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, 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, 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, 0xff, + 0x01, 0x0a, 0x17, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, + 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x2c, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 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, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 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, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x86, 0x01, 0x92, 0x41, 0x4c, 0x12, 0x1d, 0x41, 0x64, 0x64, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x86, 0x01, 0x92, 0x41, 0x4c, 0x12, 0x1d, 0x41, + 0x64, 0x64, 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, 0x2b, 0x41, 0x64, + 0x64, 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, 0x31, 0x3a, + 0x01, 0x2a, 0x22, 0x2c, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, + 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 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, 0x2b, 0x41, 0x64, 0x64, 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, 0x31, 0x3a, 0x01, 0x2a, - 0x22, 0x2c, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, - 0x51, 0x4c, 0x53, 0x6c, 0x6f, 0x77, 0x6c, 0x6f, 0x67, 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, + 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, 0x91, 0x02, 0x0a, 0x1a, 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, 0x12, 0x2f, 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, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 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, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8f, 0x01, 0x92, 0x41, 0x52, 0x12, 0x20, 0x41, 0x64, + 0x64, 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, 0x2e, + 0x41, 0x64, 0x64, 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, 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, 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, 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, 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, 0x91, 0x02, 0x0a, 0x1a, 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, 0x12, 0x2f, 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, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x30, 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, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8f, 0x01, 0x92, 0x41, 0x52, 0x12, 0x20, 0x41, 0x64, 0x64, 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, 0x2e, 0x41, 0x64, - 0x64, 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, 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, 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, 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, + 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, 0xc7, + 0x02, 0x0a, 0x21, 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, 0x12, 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, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 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, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb0, 0x01, 0x92, 0x41, 0x6c, 0x12, 0x2d, 0x41, 0x64, 0x64, + 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, 0x3b, 0x41, 0x64, 0x64, 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, 0x3b, 0x3a, 0x01, 0x2a, + 0x22, 0x36, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, + 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 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, 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, 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, 0xc7, 0x02, 0x0a, - 0x21, 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, 0x12, 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, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x69, 0x6e, 0x76, - 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, + 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, 0xc5, 0x02, 0x0a, 0x22, 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, 0x12, 0x37, 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, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xab, + 0x01, 0x92, 0x41, 0x66, 0x12, 0x2a, 0x41, 0x64, 0x64, 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, 0x38, 0x41, 0x64, 0x64, 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, 0x3c, + 0x3a, 0x01, 0x2a, 0x22, 0x37, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, + 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x22, 0xb0, 0x01, 0x92, 0x41, 0x6c, 0x12, 0x2d, 0x41, 0x64, 0x64, 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, 0x3b, 0x41, 0x64, 0x64, 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, 0x3b, 0x3a, 0x01, 0x2a, 0x22, 0x36, - 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x73, 0x2f, 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, 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, 0xc5, 0x02, 0x0a, 0x22, 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, 0x12, 0x37, 0x2e, 0x69, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x50, + 0x4d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 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, 0x38, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xab, 0x01, 0x92, - 0x41, 0x66, 0x12, 0x2a, 0x41, 0x64, 0x64, 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, 0x38, - 0x41, 0x64, 0x64, 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, 0x3c, 0x3a, 0x01, - 0x2a, 0x22, 0x37, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 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, 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, 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, + 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, 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, + 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, 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, 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, 0xa1, - 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, 0x4d, 0x92, 0x41, 0x24, 0x12, 0x0f, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, - 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x11, 0x52, 0x65, 0x6d, 0x6f, 0x76, - 0x65, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 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, 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, 0xa1, 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, 0x4d, 0x92, 0x41, 0x24, 0x12, 0x0f, 0x52, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x11, 0x52, 0x65, 0x6d, + 0x6f, 0x76, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 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 ( @@ -9746,8 +9744,8 @@ var ( (*GetAgentLogsResponse)(nil), // 22: inventory.v1.GetAgentLogsResponse (*AddPMMAgentRequest)(nil), // 23: inventory.v1.AddPMMAgentRequest (*AddPMMAgentResponse)(nil), // 24: inventory.v1.AddPMMAgentResponse - (*AddExporterRequest)(nil), // 25: inventory.v1.AddExporterRequest - (*AddExporterResponse)(nil), // 26: inventory.v1.AddExporterResponse + (*AddAgentRequest)(nil), // 25: inventory.v1.AddAgentRequest + (*AddAgentResponse)(nil), // 26: inventory.v1.AddAgentResponse (*AddNodeExporterParams)(nil), // 27: inventory.v1.AddNodeExporterParams (*ChangeNodeExporterRequest)(nil), // 28: inventory.v1.ChangeNodeExporterRequest (*ChangeNodeExporterResponse)(nil), // 29: inventory.v1.ChangeNodeExporterResponse @@ -9902,22 +9900,22 @@ var file_inventory_v1_agents_proto_depIdxs = []int32{ 15, // 70: inventory.v1.GetAgentResponse.azure_database_exporter:type_name -> inventory.v1.AzureDatabaseExporter 88, // 71: inventory.v1.AddPMMAgentRequest.custom_labels:type_name -> inventory.v1.AddPMMAgentRequest.CustomLabelsEntry 1, // 72: inventory.v1.AddPMMAgentResponse.pmm_agent:type_name -> inventory.v1.PMMAgent - 27, // 73: inventory.v1.AddExporterRequest.node_exporter:type_name -> inventory.v1.AddNodeExporterParams - 30, // 74: inventory.v1.AddExporterRequest.mysqld_exporter:type_name -> inventory.v1.AddMySQLdExporterParams - 33, // 75: inventory.v1.AddExporterRequest.mongodb_exporter:type_name -> inventory.v1.AddMongoDBExporterParams - 36, // 76: inventory.v1.AddExporterRequest.postgres_exporter:type_name -> inventory.v1.AddPostgresExporterParams - 39, // 77: inventory.v1.AddExporterRequest.proxysql_exporter:type_name -> inventory.v1.AddProxySQLExporterParams - 65, // 78: inventory.v1.AddExporterRequest.external_exporter:type_name -> inventory.v1.AddExternalExporterParams - 62, // 79: inventory.v1.AddExporterRequest.rds_exporter:type_name -> inventory.v1.AddRDSExporterParams - 68, // 80: inventory.v1.AddExporterRequest.azure_database_exporter:type_name -> inventory.v1.AddAzureDatabaseExporterParams - 3, // 81: inventory.v1.AddExporterResponse.node_exporter:type_name -> inventory.v1.NodeExporter - 4, // 82: inventory.v1.AddExporterResponse.mysqld_exporter:type_name -> inventory.v1.MySQLdExporter - 5, // 83: inventory.v1.AddExporterResponse.mongodb_exporter:type_name -> inventory.v1.MongoDBExporter - 6, // 84: inventory.v1.AddExporterResponse.postgres_exporter:type_name -> inventory.v1.PostgresExporter - 7, // 85: inventory.v1.AddExporterResponse.proxysql_exporter:type_name -> inventory.v1.ProxySQLExporter - 14, // 86: inventory.v1.AddExporterResponse.external_exporter:type_name -> inventory.v1.ExternalExporter - 13, // 87: inventory.v1.AddExporterResponse.rds_exporter:type_name -> inventory.v1.RDSExporter - 15, // 88: inventory.v1.AddExporterResponse.azure_database_exporter:type_name -> inventory.v1.AzureDatabaseExporter + 27, // 73: inventory.v1.AddAgentRequest.node_exporter:type_name -> inventory.v1.AddNodeExporterParams + 30, // 74: inventory.v1.AddAgentRequest.mysqld_exporter:type_name -> inventory.v1.AddMySQLdExporterParams + 33, // 75: inventory.v1.AddAgentRequest.mongodb_exporter:type_name -> inventory.v1.AddMongoDBExporterParams + 36, // 76: inventory.v1.AddAgentRequest.postgres_exporter:type_name -> inventory.v1.AddPostgresExporterParams + 39, // 77: inventory.v1.AddAgentRequest.proxysql_exporter:type_name -> inventory.v1.AddProxySQLExporterParams + 65, // 78: inventory.v1.AddAgentRequest.external_exporter:type_name -> inventory.v1.AddExternalExporterParams + 62, // 79: inventory.v1.AddAgentRequest.rds_exporter:type_name -> inventory.v1.AddRDSExporterParams + 68, // 80: inventory.v1.AddAgentRequest.azure_database_exporter:type_name -> inventory.v1.AddAzureDatabaseExporterParams + 3, // 81: inventory.v1.AddAgentResponse.node_exporter:type_name -> inventory.v1.NodeExporter + 4, // 82: inventory.v1.AddAgentResponse.mysqld_exporter:type_name -> inventory.v1.MySQLdExporter + 5, // 83: inventory.v1.AddAgentResponse.mongodb_exporter:type_name -> inventory.v1.MongoDBExporter + 6, // 84: inventory.v1.AddAgentResponse.postgres_exporter:type_name -> inventory.v1.PostgresExporter + 7, // 85: inventory.v1.AddAgentResponse.proxysql_exporter:type_name -> inventory.v1.ProxySQLExporter + 14, // 86: inventory.v1.AddAgentResponse.external_exporter:type_name -> inventory.v1.ExternalExporter + 13, // 87: inventory.v1.AddAgentResponse.rds_exporter:type_name -> inventory.v1.RDSExporter + 15, // 88: inventory.v1.AddAgentResponse.azure_database_exporter:type_name -> inventory.v1.AzureDatabaseExporter 89, // 89: inventory.v1.AddNodeExporterParams.custom_labels:type_name -> inventory.v1.AddNodeExporterParams.CustomLabelsEntry 103, // 90: inventory.v1.AddNodeExporterParams.log_level:type_name -> inventory.v1.LogLevel 16, // 91: inventory.v1.ChangeNodeExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams @@ -9978,7 +9976,7 @@ var file_inventory_v1_agents_proto_depIdxs = []int32{ 19, // 146: inventory.v1.AgentsService.GetAgent:input_type -> inventory.v1.GetAgentRequest 21, // 147: inventory.v1.AgentsService.GetAgentLogs:input_type -> inventory.v1.GetAgentLogsRequest 23, // 148: inventory.v1.AgentsService.AddPMMAgent:input_type -> inventory.v1.AddPMMAgentRequest - 25, // 149: inventory.v1.AgentsService.AddExporter:input_type -> inventory.v1.AddExporterRequest + 25, // 149: inventory.v1.AgentsService.AddAgent:input_type -> inventory.v1.AddAgentRequest 28, // 150: inventory.v1.AgentsService.ChangeNodeExporter:input_type -> inventory.v1.ChangeNodeExporterRequest 31, // 151: inventory.v1.AgentsService.ChangeMySQLdExporter:input_type -> inventory.v1.ChangeMySQLdExporterRequest 34, // 152: inventory.v1.AgentsService.ChangeMongoDBExporter:input_type -> inventory.v1.ChangeMongoDBExporterRequest @@ -10002,7 +10000,7 @@ var file_inventory_v1_agents_proto_depIdxs = []int32{ 20, // 170: inventory.v1.AgentsService.GetAgent:output_type -> inventory.v1.GetAgentResponse 22, // 171: inventory.v1.AgentsService.GetAgentLogs:output_type -> inventory.v1.GetAgentLogsResponse 24, // 172: inventory.v1.AgentsService.AddPMMAgent:output_type -> inventory.v1.AddPMMAgentResponse - 26, // 173: inventory.v1.AgentsService.AddExporter:output_type -> inventory.v1.AddExporterResponse + 26, // 173: inventory.v1.AgentsService.AddAgent:output_type -> inventory.v1.AddAgentResponse 29, // 174: inventory.v1.AgentsService.ChangeNodeExporter:output_type -> inventory.v1.ChangeNodeExporterResponse 32, // 175: inventory.v1.AgentsService.ChangeMySQLdExporter:output_type -> inventory.v1.ChangeMySQLdExporterResponse 35, // 176: inventory.v1.AgentsService.ChangeMongoDBExporter:output_type -> inventory.v1.ChangeMongoDBExporterResponse @@ -10326,7 +10324,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.(*AddExporterRequest); i { + switch v := v.(*AddAgentRequest); i { case 0: return &v.state case 1: @@ -10338,7 +10336,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.(*AddExporterResponse); i { + switch v := v.(*AddAgentResponse); i { case 0: return &v.state case 1: @@ -10920,24 +10918,24 @@ func file_inventory_v1_agents_proto_init() { (*GetAgentResponse_AzureDatabaseExporter)(nil), } file_inventory_v1_agents_proto_msgTypes[24].OneofWrappers = []interface{}{ - (*AddExporterRequest_NodeExporter)(nil), - (*AddExporterRequest_MysqldExporter)(nil), - (*AddExporterRequest_MongodbExporter)(nil), - (*AddExporterRequest_PostgresExporter)(nil), - (*AddExporterRequest_ProxysqlExporter)(nil), - (*AddExporterRequest_ExternalExporter)(nil), - (*AddExporterRequest_RdsExporter)(nil), - (*AddExporterRequest_AzureDatabaseExporter)(nil), + (*AddAgentRequest_NodeExporter)(nil), + (*AddAgentRequest_MysqldExporter)(nil), + (*AddAgentRequest_MongodbExporter)(nil), + (*AddAgentRequest_PostgresExporter)(nil), + (*AddAgentRequest_ProxysqlExporter)(nil), + (*AddAgentRequest_ExternalExporter)(nil), + (*AddAgentRequest_RdsExporter)(nil), + (*AddAgentRequest_AzureDatabaseExporter)(nil), } file_inventory_v1_agents_proto_msgTypes[25].OneofWrappers = []interface{}{ - (*AddExporterResponse_NodeExporter)(nil), - (*AddExporterResponse_MysqldExporter)(nil), - (*AddExporterResponse_MongodbExporter)(nil), - (*AddExporterResponse_PostgresExporter)(nil), - (*AddExporterResponse_ProxysqlExporter)(nil), - (*AddExporterResponse_ExternalExporter)(nil), - (*AddExporterResponse_RdsExporter)(nil), - (*AddExporterResponse_AzureDatabaseExporter)(nil), + (*AddAgentResponse_NodeExporter)(nil), + (*AddAgentResponse_MysqldExporter)(nil), + (*AddAgentResponse_MongodbExporter)(nil), + (*AddAgentResponse_PostgresExporter)(nil), + (*AddAgentResponse_ProxysqlExporter)(nil), + (*AddAgentResponse_ExternalExporter)(nil), + (*AddAgentResponse_RdsExporter)(nil), + (*AddAgentResponse_AzureDatabaseExporter)(nil), } type x struct{} out := protoimpl.TypeBuilder{ diff --git a/api/inventory/v1/agents.pb.gw.go b/api/inventory/v1/agents.pb.gw.go index 2faa4aa935..fe3a4bd268 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_AddPMMAgent_0(ctx context.Context, marshaler ru return msg, metadata, err } -func request_AgentsService_AddExporter_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddExporterRequest +func request_AgentsService_AddAgent_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq AddAgentRequest var metadata runtime.ServerMetadata newReader, berr := utilities.IOReaderFactory(req.Body) @@ -173,12 +173,12 @@ func request_AgentsService_AddExporter_0(ctx context.Context, marshaler runtime. return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := client.AddExporter(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + msg, err := client.AddAgent(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) return msg, metadata, err } -func local_request_AgentsService_AddExporter_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddExporterRequest +func local_request_AgentsService_AddAgent_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq AddAgentRequest var metadata runtime.ServerMetadata newReader, berr := utilities.IOReaderFactory(req.Body) @@ -189,7 +189,7 @@ func local_request_AgentsService_AddExporter_0(ctx context.Context, marshaler ru return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) } - msg, err := server.AddExporter(ctx, &protoReq) + msg, err := server.AddAgent(ctx, &protoReq) return msg, metadata, err } @@ -902,7 +902,7 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM forward_AgentsService_AddPMMAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddExporter_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 @@ -910,12 +910,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/AddExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddExporter")) + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/inventory.v1.AgentsService/AddAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddAgent")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := local_request_AgentsService_AddExporter_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 { @@ -923,7 +923,7 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM return } - forward_AgentsService_AddExporter_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_ChangeNodeExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { @@ -1506,25 +1506,25 @@ func RegisterAgentsServiceHandlerClient(ctx context.Context, mux *runtime.ServeM forward_AgentsService_AddPMMAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddExporter_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() inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/inventory.v1.AgentsService/AddExporter", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddExporter")) + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/inventory.v1.AgentsService/AddAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddAgent")) if err != nil { runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) return } - resp, md, err := request_AgentsService_AddExporter_0(annotatedContext, inboundMarshaler, client, req, pathParams) + resp, md, err := request_AgentsService_AddAgent_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_AddExporter_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_ChangeNodeExporter_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { @@ -1938,7 +1938,7 @@ var ( pattern_AgentsService_AddPMMAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddPMMAgent"}, "")) - pattern_AgentsService_AddExporter_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddExporter"}, "")) + pattern_AgentsService_AddAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddAgent"}, "")) pattern_AgentsService_ChangeNodeExporter_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "ChangeNodeExporter"}, "")) @@ -1988,7 +1988,7 @@ var ( forward_AgentsService_AddPMMAgent_0 = runtime.ForwardResponseMessage - forward_AgentsService_AddExporter_0 = runtime.ForwardResponseMessage + forward_AgentsService_AddAgent_0 = runtime.ForwardResponseMessage forward_AgentsService_ChangeNodeExporter_0 = runtime.ForwardResponseMessage diff --git a/api/inventory/v1/agents.pb.validate.go b/api/inventory/v1/agents.pb.validate.go index bc3e802f7a..97b2460945 100644 --- a/api/inventory/v1/agents.pb.validate.go +++ b/api/inventory/v1/agents.pb.validate.go @@ -4066,22 +4066,22 @@ var _ interface { ErrorName() string } = AddPMMAgentResponseValidationError{} -// Validate checks the field values on AddExporterRequest 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 *AddExporterRequest) Validate() error { +// 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. +func (m *AddAgentRequest) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on AddExporterRequest with the rules +// ValidateAll checks the field values on AddAgentRequest 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 -// AddExporterRequestMultiError, or nil if none found. -func (m *AddExporterRequest) ValidateAll() error { +// AddAgentRequestMultiError, or nil if none found. +func (m *AddAgentRequest) ValidateAll() error { return m.validate(true) } -func (m *AddExporterRequest) validate(all bool) error { +func (m *AddAgentRequest) validate(all bool) error { if m == nil { return nil } @@ -4089,9 +4089,9 @@ func (m *AddExporterRequest) validate(all bool) error { var errors []error switch v := m.Exporter.(type) { - case *AddExporterRequest_NodeExporter: + case *AddAgentRequest_NodeExporter: if v == nil { - err := AddExporterRequestValidationError{ + err := AddAgentRequestValidationError{ field: "Exporter", reason: "oneof value cannot be a typed-nil", } @@ -4105,7 +4105,7 @@ func (m *AddExporterRequest) validate(all bool) error { switch v := interface{}(m.GetNodeExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, AddExporterRequestValidationError{ + errors = append(errors, AddAgentRequestValidationError{ field: "NodeExporter", reason: "embedded message failed validation", cause: err, @@ -4113,7 +4113,7 @@ func (m *AddExporterRequest) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, AddExporterRequestValidationError{ + errors = append(errors, AddAgentRequestValidationError{ field: "NodeExporter", reason: "embedded message failed validation", cause: err, @@ -4122,7 +4122,7 @@ func (m *AddExporterRequest) validate(all bool) error { } } else if v, ok := interface{}(m.GetNodeExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return AddExporterRequestValidationError{ + return AddAgentRequestValidationError{ field: "NodeExporter", reason: "embedded message failed validation", cause: err, @@ -4130,9 +4130,9 @@ func (m *AddExporterRequest) validate(all bool) error { } } - case *AddExporterRequest_MysqldExporter: + case *AddAgentRequest_MysqldExporter: if v == nil { - err := AddExporterRequestValidationError{ + err := AddAgentRequestValidationError{ field: "Exporter", reason: "oneof value cannot be a typed-nil", } @@ -4146,7 +4146,7 @@ func (m *AddExporterRequest) validate(all bool) error { switch v := interface{}(m.GetMysqldExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, AddExporterRequestValidationError{ + errors = append(errors, AddAgentRequestValidationError{ field: "MysqldExporter", reason: "embedded message failed validation", cause: err, @@ -4154,7 +4154,7 @@ func (m *AddExporterRequest) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, AddExporterRequestValidationError{ + errors = append(errors, AddAgentRequestValidationError{ field: "MysqldExporter", reason: "embedded message failed validation", cause: err, @@ -4163,7 +4163,7 @@ func (m *AddExporterRequest) validate(all bool) error { } } else if v, ok := interface{}(m.GetMysqldExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return AddExporterRequestValidationError{ + return AddAgentRequestValidationError{ field: "MysqldExporter", reason: "embedded message failed validation", cause: err, @@ -4171,9 +4171,9 @@ func (m *AddExporterRequest) validate(all bool) error { } } - case *AddExporterRequest_MongodbExporter: + case *AddAgentRequest_MongodbExporter: if v == nil { - err := AddExporterRequestValidationError{ + err := AddAgentRequestValidationError{ field: "Exporter", reason: "oneof value cannot be a typed-nil", } @@ -4187,7 +4187,7 @@ func (m *AddExporterRequest) validate(all bool) error { switch v := interface{}(m.GetMongodbExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, AddExporterRequestValidationError{ + errors = append(errors, AddAgentRequestValidationError{ field: "MongodbExporter", reason: "embedded message failed validation", cause: err, @@ -4195,7 +4195,7 @@ func (m *AddExporterRequest) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, AddExporterRequestValidationError{ + errors = append(errors, AddAgentRequestValidationError{ field: "MongodbExporter", reason: "embedded message failed validation", cause: err, @@ -4204,7 +4204,7 @@ func (m *AddExporterRequest) validate(all bool) error { } } else if v, ok := interface{}(m.GetMongodbExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return AddExporterRequestValidationError{ + return AddAgentRequestValidationError{ field: "MongodbExporter", reason: "embedded message failed validation", cause: err, @@ -4212,9 +4212,9 @@ func (m *AddExporterRequest) validate(all bool) error { } } - case *AddExporterRequest_PostgresExporter: + case *AddAgentRequest_PostgresExporter: if v == nil { - err := AddExporterRequestValidationError{ + err := AddAgentRequestValidationError{ field: "Exporter", reason: "oneof value cannot be a typed-nil", } @@ -4228,7 +4228,7 @@ func (m *AddExporterRequest) validate(all bool) error { switch v := interface{}(m.GetPostgresExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, AddExporterRequestValidationError{ + errors = append(errors, AddAgentRequestValidationError{ field: "PostgresExporter", reason: "embedded message failed validation", cause: err, @@ -4236,7 +4236,7 @@ func (m *AddExporterRequest) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, AddExporterRequestValidationError{ + errors = append(errors, AddAgentRequestValidationError{ field: "PostgresExporter", reason: "embedded message failed validation", cause: err, @@ -4245,7 +4245,7 @@ func (m *AddExporterRequest) validate(all bool) error { } } else if v, ok := interface{}(m.GetPostgresExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return AddExporterRequestValidationError{ + return AddAgentRequestValidationError{ field: "PostgresExporter", reason: "embedded message failed validation", cause: err, @@ -4253,9 +4253,9 @@ func (m *AddExporterRequest) validate(all bool) error { } } - case *AddExporterRequest_ProxysqlExporter: + case *AddAgentRequest_ProxysqlExporter: if v == nil { - err := AddExporterRequestValidationError{ + err := AddAgentRequestValidationError{ field: "Exporter", reason: "oneof value cannot be a typed-nil", } @@ -4269,7 +4269,7 @@ func (m *AddExporterRequest) validate(all bool) error { switch v := interface{}(m.GetProxysqlExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, AddExporterRequestValidationError{ + errors = append(errors, AddAgentRequestValidationError{ field: "ProxysqlExporter", reason: "embedded message failed validation", cause: err, @@ -4277,7 +4277,7 @@ func (m *AddExporterRequest) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, AddExporterRequestValidationError{ + errors = append(errors, AddAgentRequestValidationError{ field: "ProxysqlExporter", reason: "embedded message failed validation", cause: err, @@ -4286,7 +4286,7 @@ func (m *AddExporterRequest) validate(all bool) error { } } else if v, ok := interface{}(m.GetProxysqlExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return AddExporterRequestValidationError{ + return AddAgentRequestValidationError{ field: "ProxysqlExporter", reason: "embedded message failed validation", cause: err, @@ -4294,9 +4294,9 @@ func (m *AddExporterRequest) validate(all bool) error { } } - case *AddExporterRequest_ExternalExporter: + case *AddAgentRequest_ExternalExporter: if v == nil { - err := AddExporterRequestValidationError{ + err := AddAgentRequestValidationError{ field: "Exporter", reason: "oneof value cannot be a typed-nil", } @@ -4310,7 +4310,7 @@ func (m *AddExporterRequest) validate(all bool) error { switch v := interface{}(m.GetExternalExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, AddExporterRequestValidationError{ + errors = append(errors, AddAgentRequestValidationError{ field: "ExternalExporter", reason: "embedded message failed validation", cause: err, @@ -4318,7 +4318,7 @@ func (m *AddExporterRequest) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, AddExporterRequestValidationError{ + errors = append(errors, AddAgentRequestValidationError{ field: "ExternalExporter", reason: "embedded message failed validation", cause: err, @@ -4327,7 +4327,7 @@ func (m *AddExporterRequest) validate(all bool) error { } } else if v, ok := interface{}(m.GetExternalExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return AddExporterRequestValidationError{ + return AddAgentRequestValidationError{ field: "ExternalExporter", reason: "embedded message failed validation", cause: err, @@ -4335,9 +4335,9 @@ func (m *AddExporterRequest) validate(all bool) error { } } - case *AddExporterRequest_RdsExporter: + case *AddAgentRequest_RdsExporter: if v == nil { - err := AddExporterRequestValidationError{ + err := AddAgentRequestValidationError{ field: "Exporter", reason: "oneof value cannot be a typed-nil", } @@ -4351,7 +4351,7 @@ func (m *AddExporterRequest) validate(all bool) error { switch v := interface{}(m.GetRdsExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, AddExporterRequestValidationError{ + errors = append(errors, AddAgentRequestValidationError{ field: "RdsExporter", reason: "embedded message failed validation", cause: err, @@ -4359,7 +4359,7 @@ func (m *AddExporterRequest) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, AddExporterRequestValidationError{ + errors = append(errors, AddAgentRequestValidationError{ field: "RdsExporter", reason: "embedded message failed validation", cause: err, @@ -4368,7 +4368,7 @@ func (m *AddExporterRequest) validate(all bool) error { } } else if v, ok := interface{}(m.GetRdsExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return AddExporterRequestValidationError{ + return AddAgentRequestValidationError{ field: "RdsExporter", reason: "embedded message failed validation", cause: err, @@ -4376,9 +4376,9 @@ func (m *AddExporterRequest) validate(all bool) error { } } - case *AddExporterRequest_AzureDatabaseExporter: + case *AddAgentRequest_AzureDatabaseExporter: if v == nil { - err := AddExporterRequestValidationError{ + err := AddAgentRequestValidationError{ field: "Exporter", reason: "oneof value cannot be a typed-nil", } @@ -4392,7 +4392,7 @@ func (m *AddExporterRequest) validate(all bool) error { switch v := interface{}(m.GetAzureDatabaseExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, AddExporterRequestValidationError{ + errors = append(errors, AddAgentRequestValidationError{ field: "AzureDatabaseExporter", reason: "embedded message failed validation", cause: err, @@ -4400,7 +4400,7 @@ func (m *AddExporterRequest) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, AddExporterRequestValidationError{ + errors = append(errors, AddAgentRequestValidationError{ field: "AzureDatabaseExporter", reason: "embedded message failed validation", cause: err, @@ -4409,7 +4409,7 @@ func (m *AddExporterRequest) validate(all bool) error { } } else if v, ok := interface{}(m.GetAzureDatabaseExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return AddExporterRequestValidationError{ + return AddAgentRequestValidationError{ field: "AzureDatabaseExporter", reason: "embedded message failed validation", cause: err, @@ -4422,19 +4422,19 @@ func (m *AddExporterRequest) validate(all bool) error { } if len(errors) > 0 { - return AddExporterRequestMultiError(errors) + return AddAgentRequestMultiError(errors) } return nil } -// AddExporterRequestMultiError is an error wrapping multiple validation errors -// returned by AddExporterRequest.ValidateAll() if the designated constraints +// AddAgentRequestMultiError is an error wrapping multiple validation errors +// returned by AddAgentRequest.ValidateAll() if the designated constraints // aren't met. -type AddExporterRequestMultiError []error +type AddAgentRequestMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m AddExporterRequestMultiError) Error() string { +func (m AddAgentRequestMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -4443,11 +4443,11 @@ func (m AddExporterRequestMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m AddExporterRequestMultiError) AllErrors() []error { return m } +func (m AddAgentRequestMultiError) AllErrors() []error { return m } -// AddExporterRequestValidationError is the validation error returned by -// AddExporterRequest.Validate if the designated constraints aren't met. -type AddExporterRequestValidationError struct { +// AddAgentRequestValidationError is the validation error returned by +// AddAgentRequest.Validate if the designated constraints aren't met. +type AddAgentRequestValidationError struct { field string reason string cause error @@ -4455,24 +4455,22 @@ type AddExporterRequestValidationError struct { } // Field function returns field value. -func (e AddExporterRequestValidationError) Field() string { return e.field } +func (e AddAgentRequestValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e AddExporterRequestValidationError) Reason() string { return e.reason } +func (e AddAgentRequestValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e AddExporterRequestValidationError) Cause() error { return e.cause } +func (e AddAgentRequestValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e AddExporterRequestValidationError) Key() bool { return e.key } +func (e AddAgentRequestValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e AddExporterRequestValidationError) ErrorName() string { - return "AddExporterRequestValidationError" -} +func (e AddAgentRequestValidationError) ErrorName() string { return "AddAgentRequestValidationError" } // Error satisfies the builtin error interface -func (e AddExporterRequestValidationError) Error() string { +func (e AddAgentRequestValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -4484,14 +4482,14 @@ func (e AddExporterRequestValidationError) Error() string { } return fmt.Sprintf( - "invalid %sAddExporterRequest.%s: %s%s", + "invalid %sAddAgentRequest.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = AddExporterRequestValidationError{} +var _ error = AddAgentRequestValidationError{} var _ interface { Field() string @@ -4499,24 +4497,24 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = AddExporterRequestValidationError{} +} = AddAgentRequestValidationError{} -// Validate checks the field values on AddExporterResponse 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 *AddExporterResponse) Validate() error { +// Validate checks the field values on AddAgentResponse 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 *AddAgentResponse) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on AddExporterResponse with the rules +// ValidateAll checks the field values on AddAgentResponse 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 -// AddExporterResponseMultiError, or nil if none found. -func (m *AddExporterResponse) ValidateAll() error { +// AddAgentResponseMultiError, or nil if none found. +func (m *AddAgentResponse) ValidateAll() error { return m.validate(true) } -func (m *AddExporterResponse) validate(all bool) error { +func (m *AddAgentResponse) validate(all bool) error { if m == nil { return nil } @@ -4526,9 +4524,9 @@ func (m *AddExporterResponse) validate(all bool) error { // no validation rules for TableCount switch v := m.Exporter.(type) { - case *AddExporterResponse_NodeExporter: + case *AddAgentResponse_NodeExporter: if v == nil { - err := AddExporterResponseValidationError{ + err := AddAgentResponseValidationError{ field: "Exporter", reason: "oneof value cannot be a typed-nil", } @@ -4542,7 +4540,7 @@ func (m *AddExporterResponse) validate(all bool) error { switch v := interface{}(m.GetNodeExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, AddExporterResponseValidationError{ + errors = append(errors, AddAgentResponseValidationError{ field: "NodeExporter", reason: "embedded message failed validation", cause: err, @@ -4550,7 +4548,7 @@ func (m *AddExporterResponse) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, AddExporterResponseValidationError{ + errors = append(errors, AddAgentResponseValidationError{ field: "NodeExporter", reason: "embedded message failed validation", cause: err, @@ -4559,7 +4557,7 @@ func (m *AddExporterResponse) validate(all bool) error { } } else if v, ok := interface{}(m.GetNodeExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return AddExporterResponseValidationError{ + return AddAgentResponseValidationError{ field: "NodeExporter", reason: "embedded message failed validation", cause: err, @@ -4567,9 +4565,9 @@ func (m *AddExporterResponse) validate(all bool) error { } } - case *AddExporterResponse_MysqldExporter: + case *AddAgentResponse_MysqldExporter: if v == nil { - err := AddExporterResponseValidationError{ + err := AddAgentResponseValidationError{ field: "Exporter", reason: "oneof value cannot be a typed-nil", } @@ -4583,7 +4581,7 @@ func (m *AddExporterResponse) validate(all bool) error { switch v := interface{}(m.GetMysqldExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, AddExporterResponseValidationError{ + errors = append(errors, AddAgentResponseValidationError{ field: "MysqldExporter", reason: "embedded message failed validation", cause: err, @@ -4591,7 +4589,7 @@ func (m *AddExporterResponse) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, AddExporterResponseValidationError{ + errors = append(errors, AddAgentResponseValidationError{ field: "MysqldExporter", reason: "embedded message failed validation", cause: err, @@ -4600,7 +4598,7 @@ func (m *AddExporterResponse) validate(all bool) error { } } else if v, ok := interface{}(m.GetMysqldExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return AddExporterResponseValidationError{ + return AddAgentResponseValidationError{ field: "MysqldExporter", reason: "embedded message failed validation", cause: err, @@ -4608,9 +4606,9 @@ func (m *AddExporterResponse) validate(all bool) error { } } - case *AddExporterResponse_MongodbExporter: + case *AddAgentResponse_MongodbExporter: if v == nil { - err := AddExporterResponseValidationError{ + err := AddAgentResponseValidationError{ field: "Exporter", reason: "oneof value cannot be a typed-nil", } @@ -4624,7 +4622,7 @@ func (m *AddExporterResponse) validate(all bool) error { switch v := interface{}(m.GetMongodbExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, AddExporterResponseValidationError{ + errors = append(errors, AddAgentResponseValidationError{ field: "MongodbExporter", reason: "embedded message failed validation", cause: err, @@ -4632,7 +4630,7 @@ func (m *AddExporterResponse) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, AddExporterResponseValidationError{ + errors = append(errors, AddAgentResponseValidationError{ field: "MongodbExporter", reason: "embedded message failed validation", cause: err, @@ -4641,7 +4639,7 @@ func (m *AddExporterResponse) validate(all bool) error { } } else if v, ok := interface{}(m.GetMongodbExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return AddExporterResponseValidationError{ + return AddAgentResponseValidationError{ field: "MongodbExporter", reason: "embedded message failed validation", cause: err, @@ -4649,9 +4647,9 @@ func (m *AddExporterResponse) validate(all bool) error { } } - case *AddExporterResponse_PostgresExporter: + case *AddAgentResponse_PostgresExporter: if v == nil { - err := AddExporterResponseValidationError{ + err := AddAgentResponseValidationError{ field: "Exporter", reason: "oneof value cannot be a typed-nil", } @@ -4665,7 +4663,7 @@ func (m *AddExporterResponse) validate(all bool) error { switch v := interface{}(m.GetPostgresExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, AddExporterResponseValidationError{ + errors = append(errors, AddAgentResponseValidationError{ field: "PostgresExporter", reason: "embedded message failed validation", cause: err, @@ -4673,7 +4671,7 @@ func (m *AddExporterResponse) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, AddExporterResponseValidationError{ + errors = append(errors, AddAgentResponseValidationError{ field: "PostgresExporter", reason: "embedded message failed validation", cause: err, @@ -4682,7 +4680,7 @@ func (m *AddExporterResponse) validate(all bool) error { } } else if v, ok := interface{}(m.GetPostgresExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return AddExporterResponseValidationError{ + return AddAgentResponseValidationError{ field: "PostgresExporter", reason: "embedded message failed validation", cause: err, @@ -4690,9 +4688,9 @@ func (m *AddExporterResponse) validate(all bool) error { } } - case *AddExporterResponse_ProxysqlExporter: + case *AddAgentResponse_ProxysqlExporter: if v == nil { - err := AddExporterResponseValidationError{ + err := AddAgentResponseValidationError{ field: "Exporter", reason: "oneof value cannot be a typed-nil", } @@ -4706,7 +4704,7 @@ func (m *AddExporterResponse) validate(all bool) error { switch v := interface{}(m.GetProxysqlExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, AddExporterResponseValidationError{ + errors = append(errors, AddAgentResponseValidationError{ field: "ProxysqlExporter", reason: "embedded message failed validation", cause: err, @@ -4714,7 +4712,7 @@ func (m *AddExporterResponse) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, AddExporterResponseValidationError{ + errors = append(errors, AddAgentResponseValidationError{ field: "ProxysqlExporter", reason: "embedded message failed validation", cause: err, @@ -4723,7 +4721,7 @@ func (m *AddExporterResponse) validate(all bool) error { } } else if v, ok := interface{}(m.GetProxysqlExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return AddExporterResponseValidationError{ + return AddAgentResponseValidationError{ field: "ProxysqlExporter", reason: "embedded message failed validation", cause: err, @@ -4731,9 +4729,9 @@ func (m *AddExporterResponse) validate(all bool) error { } } - case *AddExporterResponse_ExternalExporter: + case *AddAgentResponse_ExternalExporter: if v == nil { - err := AddExporterResponseValidationError{ + err := AddAgentResponseValidationError{ field: "Exporter", reason: "oneof value cannot be a typed-nil", } @@ -4747,7 +4745,7 @@ func (m *AddExporterResponse) validate(all bool) error { switch v := interface{}(m.GetExternalExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, AddExporterResponseValidationError{ + errors = append(errors, AddAgentResponseValidationError{ field: "ExternalExporter", reason: "embedded message failed validation", cause: err, @@ -4755,7 +4753,7 @@ func (m *AddExporterResponse) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, AddExporterResponseValidationError{ + errors = append(errors, AddAgentResponseValidationError{ field: "ExternalExporter", reason: "embedded message failed validation", cause: err, @@ -4764,7 +4762,7 @@ func (m *AddExporterResponse) validate(all bool) error { } } else if v, ok := interface{}(m.GetExternalExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return AddExporterResponseValidationError{ + return AddAgentResponseValidationError{ field: "ExternalExporter", reason: "embedded message failed validation", cause: err, @@ -4772,9 +4770,9 @@ func (m *AddExporterResponse) validate(all bool) error { } } - case *AddExporterResponse_RdsExporter: + case *AddAgentResponse_RdsExporter: if v == nil { - err := AddExporterResponseValidationError{ + err := AddAgentResponseValidationError{ field: "Exporter", reason: "oneof value cannot be a typed-nil", } @@ -4788,7 +4786,7 @@ func (m *AddExporterResponse) validate(all bool) error { switch v := interface{}(m.GetRdsExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, AddExporterResponseValidationError{ + errors = append(errors, AddAgentResponseValidationError{ field: "RdsExporter", reason: "embedded message failed validation", cause: err, @@ -4796,7 +4794,7 @@ func (m *AddExporterResponse) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, AddExporterResponseValidationError{ + errors = append(errors, AddAgentResponseValidationError{ field: "RdsExporter", reason: "embedded message failed validation", cause: err, @@ -4805,7 +4803,7 @@ func (m *AddExporterResponse) validate(all bool) error { } } else if v, ok := interface{}(m.GetRdsExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return AddExporterResponseValidationError{ + return AddAgentResponseValidationError{ field: "RdsExporter", reason: "embedded message failed validation", cause: err, @@ -4813,9 +4811,9 @@ func (m *AddExporterResponse) validate(all bool) error { } } - case *AddExporterResponse_AzureDatabaseExporter: + case *AddAgentResponse_AzureDatabaseExporter: if v == nil { - err := AddExporterResponseValidationError{ + err := AddAgentResponseValidationError{ field: "Exporter", reason: "oneof value cannot be a typed-nil", } @@ -4829,7 +4827,7 @@ func (m *AddExporterResponse) validate(all bool) error { switch v := interface{}(m.GetAzureDatabaseExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { - errors = append(errors, AddExporterResponseValidationError{ + errors = append(errors, AddAgentResponseValidationError{ field: "AzureDatabaseExporter", reason: "embedded message failed validation", cause: err, @@ -4837,7 +4835,7 @@ func (m *AddExporterResponse) validate(all bool) error { } case interface{ Validate() error }: if err := v.Validate(); err != nil { - errors = append(errors, AddExporterResponseValidationError{ + errors = append(errors, AddAgentResponseValidationError{ field: "AzureDatabaseExporter", reason: "embedded message failed validation", cause: err, @@ -4846,7 +4844,7 @@ func (m *AddExporterResponse) validate(all bool) error { } } else if v, ok := interface{}(m.GetAzureDatabaseExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { - return AddExporterResponseValidationError{ + return AddAgentResponseValidationError{ field: "AzureDatabaseExporter", reason: "embedded message failed validation", cause: err, @@ -4859,19 +4857,19 @@ func (m *AddExporterResponse) validate(all bool) error { } if len(errors) > 0 { - return AddExporterResponseMultiError(errors) + return AddAgentResponseMultiError(errors) } return nil } -// AddExporterResponseMultiError is an error wrapping multiple validation -// errors returned by AddExporterResponse.ValidateAll() if the designated -// constraints aren't met. -type AddExporterResponseMultiError []error +// AddAgentResponseMultiError is an error wrapping multiple validation errors +// returned by AddAgentResponse.ValidateAll() if the designated constraints +// aren't met. +type AddAgentResponseMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m AddExporterResponseMultiError) Error() string { +func (m AddAgentResponseMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -4880,11 +4878,11 @@ func (m AddExporterResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m AddExporterResponseMultiError) AllErrors() []error { return m } +func (m AddAgentResponseMultiError) AllErrors() []error { return m } -// AddExporterResponseValidationError is the validation error returned by -// AddExporterResponse.Validate if the designated constraints aren't met. -type AddExporterResponseValidationError struct { +// AddAgentResponseValidationError is the validation error returned by +// AddAgentResponse.Validate if the designated constraints aren't met. +type AddAgentResponseValidationError struct { field string reason string cause error @@ -4892,24 +4890,22 @@ type AddExporterResponseValidationError struct { } // Field function returns field value. -func (e AddExporterResponseValidationError) Field() string { return e.field } +func (e AddAgentResponseValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e AddExporterResponseValidationError) Reason() string { return e.reason } +func (e AddAgentResponseValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e AddExporterResponseValidationError) Cause() error { return e.cause } +func (e AddAgentResponseValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e AddExporterResponseValidationError) Key() bool { return e.key } +func (e AddAgentResponseValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e AddExporterResponseValidationError) ErrorName() string { - return "AddExporterResponseValidationError" -} +func (e AddAgentResponseValidationError) ErrorName() string { return "AddAgentResponseValidationError" } // Error satisfies the builtin error interface -func (e AddExporterResponseValidationError) Error() string { +func (e AddAgentResponseValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -4921,14 +4917,14 @@ func (e AddExporterResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sAddExporterResponse.%s: %s%s", + "invalid %sAddAgentResponse.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = AddExporterResponseValidationError{} +var _ error = AddAgentResponseValidationError{} var _ interface { Field() string @@ -4936,7 +4932,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = AddExporterResponseValidationError{} +} = AddAgentResponseValidationError{} // Validate checks the field values on AddNodeExporterParams 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 eb628377f4..7d7ac79314 100644 --- a/api/inventory/v1/agents.proto +++ b/api/inventory/v1/agents.proto @@ -668,7 +668,7 @@ message AddPMMAgentResponse { // Add/Change NodeExporter -message AddExporterRequest { +message AddAgentRequest { oneof exporter { AddNodeExporterParams node_exporter = 1; AddMySQLdExporterParams mysqld_exporter = 2; @@ -681,7 +681,7 @@ message AddExporterRequest { } } -message AddExporterResponse { +message AddAgentResponse { oneof exporter { NodeExporter node_exporter = 1; MySQLdExporter mysqld_exporter = 2; @@ -1321,15 +1321,15 @@ service AgentsService { description: "Adds PMM Agent." }; } - // AddExporter adds any type of exporter Agent. - rpc AddExporter(AddExporterRequest) returns (AddExporterResponse) { + // AddAgent adds any type of Agent. + rpc AddAgent(AddAgentRequest) returns (AddAgentResponse) { option (google.api.http) = { - post: "/v1/inventory/Agents/AddExporter" + post: "/v1/inventory/Agents/AddAgent" body: "*" }; option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Add an Exporter" - description: "Adds an Exporter Agent." + summary: "Add an Agent" + description: "Adds an Agent." }; } // ChangeNodeExporter changes node_exporter Agent. diff --git a/api/inventory/v1/agents_grpc.pb.go b/api/inventory/v1/agents_grpc.pb.go index 199e0051c3..0cba0616ed 100644 --- a/api/inventory/v1/agents_grpc.pb.go +++ b/api/inventory/v1/agents_grpc.pb.go @@ -24,7 +24,7 @@ const ( AgentsService_GetAgent_FullMethodName = "/inventory.v1.AgentsService/GetAgent" AgentsService_GetAgentLogs_FullMethodName = "/inventory.v1.AgentsService/GetAgentLogs" AgentsService_AddPMMAgent_FullMethodName = "/inventory.v1.AgentsService/AddPMMAgent" - AgentsService_AddExporter_FullMethodName = "/inventory.v1.AgentsService/AddExporter" + 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" @@ -58,8 +58,8 @@ type AgentsServiceClient interface { GetAgentLogs(ctx context.Context, in *GetAgentLogsRequest, opts ...grpc.CallOption) (*GetAgentLogsResponse, error) // AddPMMAgent adds pmm-agent Agent. AddPMMAgent(ctx context.Context, in *AddPMMAgentRequest, opts ...grpc.CallOption) (*AddPMMAgentResponse, error) - // AddExporter adds any type of exporter Agent. - AddExporter(ctx context.Context, in *AddExporterRequest, opts ...grpc.CallOption) (*AddExporterResponse, error) + // AddAgent adds any type of Agent. + 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. @@ -144,9 +144,9 @@ func (c *agentsServiceClient) AddPMMAgent(ctx context.Context, in *AddPMMAgentRe return out, nil } -func (c *agentsServiceClient) AddExporter(ctx context.Context, in *AddExporterRequest, opts ...grpc.CallOption) (*AddExporterResponse, error) { - out := new(AddExporterResponse) - err := c.cc.Invoke(ctx, AgentsService_AddExporter_FullMethodName, in, out, opts...) +func (c *agentsServiceClient) AddAgent(ctx context.Context, in *AddAgentRequest, opts ...grpc.CallOption) (*AddAgentResponse, error) { + out := new(AddAgentResponse) + err := c.cc.Invoke(ctx, AgentsService_AddAgent_FullMethodName, in, out, opts...) if err != nil { return nil, err } @@ -336,8 +336,8 @@ type AgentsServiceServer interface { GetAgentLogs(context.Context, *GetAgentLogsRequest) (*GetAgentLogsResponse, error) // AddPMMAgent adds pmm-agent Agent. AddPMMAgent(context.Context, *AddPMMAgentRequest) (*AddPMMAgentResponse, error) - // AddExporter adds any type of exporter Agent. - AddExporter(context.Context, *AddExporterRequest) (*AddExporterResponse, error) + // AddAgent adds any type of Agent. + AddAgent(context.Context, *AddAgentRequest) (*AddAgentResponse, error) // ChangeNodeExporter changes node_exporter Agent. ChangeNodeExporter(context.Context, *ChangeNodeExporterRequest) (*ChangeNodeExporterResponse, error) // ChangeMySQLdExporter changes mysqld_exporter Agent. @@ -398,8 +398,8 @@ func (UnimplementedAgentsServiceServer) AddPMMAgent(context.Context, *AddPMMAgen return nil, status.Errorf(codes.Unimplemented, "method AddPMMAgent not implemented") } -func (UnimplementedAgentsServiceServer) AddExporter(context.Context, *AddExporterRequest) (*AddExporterResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AddExporter not implemented") +func (UnimplementedAgentsServiceServer) AddAgent(context.Context, *AddAgentRequest) (*AddAgentResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method AddAgent not implemented") } func (UnimplementedAgentsServiceServer) ChangeNodeExporter(context.Context, *ChangeNodeExporterRequest) (*ChangeNodeExporterResponse, error) { @@ -562,20 +562,20 @@ func _AgentsService_AddPMMAgent_Handler(srv interface{}, ctx context.Context, de return interceptor(ctx, in, info, handler) } -func _AgentsService_AddExporter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AddExporterRequest) +func _AgentsService_AddAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(AddAgentRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { - return srv.(AgentsServiceServer).AddExporter(ctx, in) + return srv.(AgentsServiceServer).AddAgent(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, - FullMethod: AgentsService_AddExporter_FullMethodName, + FullMethod: AgentsService_AddAgent_FullMethodName, } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).AddExporter(ctx, req.(*AddExporterRequest)) + return srv.(AgentsServiceServer).AddAgent(ctx, req.(*AddAgentRequest)) } return interceptor(ctx, in, info, handler) } @@ -946,8 +946,8 @@ var AgentsService_ServiceDesc = grpc.ServiceDesc{ Handler: _AgentsService_AddPMMAgent_Handler, }, { - MethodName: "AddExporter", - Handler: _AgentsService_AddExporter_Handler, + MethodName: "AddAgent", + Handler: _AgentsService_AddAgent_Handler, }, { MethodName: "ChangeNodeExporter", diff --git a/api/inventory/v1/json/client/agents_service/add_agent_parameters.go b/api/inventory/v1/json/client/agents_service/add_agent_parameters.go new file mode 100644 index 0000000000..eca4592652 --- /dev/null +++ b/api/inventory/v1/json/client/agents_service/add_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" +) + +// NewAddAgentParams creates a new AddAgentParams 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 NewAddAgentParams() *AddAgentParams { + return &AddAgentParams{ + timeout: cr.DefaultTimeout, + } +} + +// NewAddAgentParamsWithTimeout creates a new AddAgentParams object +// with the ability to set a timeout on a request. +func NewAddAgentParamsWithTimeout(timeout time.Duration) *AddAgentParams { + return &AddAgentParams{ + timeout: timeout, + } +} + +// NewAddAgentParamsWithContext creates a new AddAgentParams object +// with the ability to set a context for a request. +func NewAddAgentParamsWithContext(ctx context.Context) *AddAgentParams { + return &AddAgentParams{ + Context: ctx, + } +} + +// NewAddAgentParamsWithHTTPClient creates a new AddAgentParams object +// with the ability to set a custom HTTPClient for a request. +func NewAddAgentParamsWithHTTPClient(client *http.Client) *AddAgentParams { + return &AddAgentParams{ + HTTPClient: client, + } +} + +/* +AddAgentParams contains all the parameters to send to the API endpoint + + for the add agent operation. + + Typically these are written to a http.Request. +*/ +type AddAgentParams struct { + // Body. + Body AddAgentBody + + timeout time.Duration + Context context.Context + HTTPClient *http.Client +} + +// WithDefaults hydrates default values in the add agent params (not the query body). +// +// All values with no default are reset to their zero value. +func (o *AddAgentParams) WithDefaults() *AddAgentParams { + o.SetDefaults() + return o +} + +// SetDefaults hydrates default values in the add agent params (not the query body). +// +// All values with no default are reset to their zero value. +func (o *AddAgentParams) SetDefaults() { + // no default values defined for this parameter +} + +// WithTimeout adds the timeout to the add agent params +func (o *AddAgentParams) WithTimeout(timeout time.Duration) *AddAgentParams { + o.SetTimeout(timeout) + return o +} + +// SetTimeout adds the timeout to the add agent params +func (o *AddAgentParams) SetTimeout(timeout time.Duration) { + o.timeout = timeout +} + +// WithContext adds the context to the add agent params +func (o *AddAgentParams) WithContext(ctx context.Context) *AddAgentParams { + o.SetContext(ctx) + return o +} + +// SetContext adds the context to the add agent params +func (o *AddAgentParams) SetContext(ctx context.Context) { + o.Context = ctx +} + +// WithHTTPClient adds the HTTPClient to the add agent params +func (o *AddAgentParams) WithHTTPClient(client *http.Client) *AddAgentParams { + o.SetHTTPClient(client) + return o +} + +// SetHTTPClient adds the HTTPClient to the add agent params +func (o *AddAgentParams) SetHTTPClient(client *http.Client) { + o.HTTPClient = client +} + +// WithBody adds the body to the add agent params +func (o *AddAgentParams) WithBody(body AddAgentBody) *AddAgentParams { + o.SetBody(body) + return o +} + +// SetBody adds the body to the add agent params +func (o *AddAgentParams) SetBody(body AddAgentBody) { + o.Body = body +} + +// WriteToRequest writes these params to a swagger request +func (o *AddAgentParams) 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/add_exporter_responses.go b/api/inventory/v1/json/client/agents_service/add_agent_responses.go similarity index 55% rename from api/inventory/v1/json/client/agents_service/add_exporter_responses.go rename to api/inventory/v1/json/client/agents_service/add_agent_responses.go index fab5bd0fdd..cbf50788b2 100644 --- a/api/inventory/v1/json/client/agents_service/add_exporter_responses.go +++ b/api/inventory/v1/json/client/agents_service/add_agent_responses.go @@ -19,22 +19,22 @@ import ( "github.com/go-openapi/validate" ) -// AddExporterReader is a Reader for the AddExporter structure. -type AddExporterReader struct { +// AddAgentReader is a Reader for the AddAgent structure. +type AddAgentReader struct { formats strfmt.Registry } // ReadResponse reads a server response into the received o. -func (o *AddExporterReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { +func (o *AddAgentReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { switch response.Code() { case 200: - result := NewAddExporterOK() + result := NewAddAgentOK() if err := result.readResponse(response, consumer, o.formats); err != nil { return nil, err } return result, nil default: - result := NewAddExporterDefault(response.Code()) + result := NewAddAgentDefault(response.Code()) if err := result.readResponse(response, consumer, o.formats); err != nil { return nil, err } @@ -45,30 +45,30 @@ func (o *AddExporterReader) ReadResponse(response runtime.ClientResponse, consum } } -// NewAddExporterOK creates a AddExporterOK with default headers values -func NewAddExporterOK() *AddExporterOK { - return &AddExporterOK{} +// NewAddAgentOK creates a AddAgentOK with default headers values +func NewAddAgentOK() *AddAgentOK { + return &AddAgentOK{} } /* -AddExporterOK describes a response with status code 200, with default header values. +AddAgentOK describes a response with status code 200, with default header values. A successful response. */ -type AddExporterOK struct { - Payload *AddExporterOKBody +type AddAgentOK struct { + Payload *AddAgentOKBody } -func (o *AddExporterOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddExporter][%d] addExporterOk %+v", 200, o.Payload) +func (o *AddAgentOK) Error() string { + return fmt.Sprintf("[POST /v1/inventory/Agents/AddAgent][%d] addAgentOk %+v", 200, o.Payload) } -func (o *AddExporterOK) GetPayload() *AddExporterOKBody { +func (o *AddAgentOK) GetPayload() *AddAgentOKBody { return o.Payload } -func (o *AddExporterOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddExporterOKBody) +func (o *AddAgentOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { + o.Payload = new(AddAgentOKBody) // response payload if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { @@ -78,39 +78,39 @@ func (o *AddExporterOK) readResponse(response runtime.ClientResponse, consumer r return nil } -// NewAddExporterDefault creates a AddExporterDefault with default headers values -func NewAddExporterDefault(code int) *AddExporterDefault { - return &AddExporterDefault{ +// NewAddAgentDefault creates a AddAgentDefault with default headers values +func NewAddAgentDefault(code int) *AddAgentDefault { + return &AddAgentDefault{ _statusCode: code, } } /* -AddExporterDefault describes a response with status code -1, with default header values. +AddAgentDefault describes a response with status code -1, with default header values. An unexpected error response. */ -type AddExporterDefault struct { +type AddAgentDefault struct { _statusCode int - Payload *AddExporterDefaultBody + Payload *AddAgentDefaultBody } -// Code gets the status code for the add exporter default response -func (o *AddExporterDefault) Code() int { +// Code gets the status code for the add agent default response +func (o *AddAgentDefault) Code() int { return o._statusCode } -func (o *AddExporterDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddExporter][%d] AddExporter default %+v", o._statusCode, o.Payload) +func (o *AddAgentDefault) Error() string { + return fmt.Sprintf("[POST /v1/inventory/Agents/AddAgent][%d] AddAgent default %+v", o._statusCode, o.Payload) } -func (o *AddExporterDefault) GetPayload() *AddExporterDefaultBody { +func (o *AddAgentDefault) GetPayload() *AddAgentDefaultBody { return o.Payload } -func (o *AddExporterDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddExporterDefaultBody) +func (o *AddAgentDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { + o.Payload = new(AddAgentDefaultBody) // response payload if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { @@ -121,37 +121,37 @@ func (o *AddExporterDefault) readResponse(response runtime.ClientResponse, consu } /* -AddExporterBody add exporter body -swagger:model AddExporterBody +AddAgentBody add agent body +swagger:model AddAgentBody */ -type AddExporterBody struct { +type AddAgentBody struct { // azure database exporter - AzureDatabaseExporter *AddExporterParamsBodyAzureDatabaseExporter `json:"azure_database_exporter,omitempty"` + AzureDatabaseExporter *AddAgentParamsBodyAzureDatabaseExporter `json:"azure_database_exporter,omitempty"` // external exporter - ExternalExporter *AddExporterParamsBodyExternalExporter `json:"external_exporter,omitempty"` + ExternalExporter *AddAgentParamsBodyExternalExporter `json:"external_exporter,omitempty"` // mongodb exporter - MongodbExporter *AddExporterParamsBodyMongodbExporter `json:"mongodb_exporter,omitempty"` + MongodbExporter *AddAgentParamsBodyMongodbExporter `json:"mongodb_exporter,omitempty"` // mysqld exporter - MysqldExporter *AddExporterParamsBodyMysqldExporter `json:"mysqld_exporter,omitempty"` + MysqldExporter *AddAgentParamsBodyMysqldExporter `json:"mysqld_exporter,omitempty"` // node exporter - NodeExporter *AddExporterParamsBodyNodeExporter `json:"node_exporter,omitempty"` + NodeExporter *AddAgentParamsBodyNodeExporter `json:"node_exporter,omitempty"` // postgres exporter - PostgresExporter *AddExporterParamsBodyPostgresExporter `json:"postgres_exporter,omitempty"` + PostgresExporter *AddAgentParamsBodyPostgresExporter `json:"postgres_exporter,omitempty"` // proxysql exporter - ProxysqlExporter *AddExporterParamsBodyProxysqlExporter `json:"proxysql_exporter,omitempty"` + ProxysqlExporter *AddAgentParamsBodyProxysqlExporter `json:"proxysql_exporter,omitempty"` // rds exporter - RDSExporter *AddExporterParamsBodyRDSExporter `json:"rds_exporter,omitempty"` + RDSExporter *AddAgentParamsBodyRDSExporter `json:"rds_exporter,omitempty"` } -// Validate validates this add exporter body -func (o *AddExporterBody) Validate(formats strfmt.Registry) error { +// Validate validates this add agent body +func (o *AddAgentBody) Validate(formats strfmt.Registry) error { var res []error if err := o.validateAzureDatabaseExporter(formats); err != nil { @@ -192,7 +192,7 @@ func (o *AddExporterBody) Validate(formats strfmt.Registry) error { return nil } -func (o *AddExporterBody) validateAzureDatabaseExporter(formats strfmt.Registry) error { +func (o *AddAgentBody) validateAzureDatabaseExporter(formats strfmt.Registry) error { if swag.IsZero(o.AzureDatabaseExporter) { // not required return nil } @@ -211,7 +211,7 @@ func (o *AddExporterBody) validateAzureDatabaseExporter(formats strfmt.Registry) return nil } -func (o *AddExporterBody) validateExternalExporter(formats strfmt.Registry) error { +func (o *AddAgentBody) validateExternalExporter(formats strfmt.Registry) error { if swag.IsZero(o.ExternalExporter) { // not required return nil } @@ -230,7 +230,7 @@ func (o *AddExporterBody) validateExternalExporter(formats strfmt.Registry) erro return nil } -func (o *AddExporterBody) validateMongodbExporter(formats strfmt.Registry) error { +func (o *AddAgentBody) validateMongodbExporter(formats strfmt.Registry) error { if swag.IsZero(o.MongodbExporter) { // not required return nil } @@ -249,7 +249,7 @@ func (o *AddExporterBody) validateMongodbExporter(formats strfmt.Registry) error return nil } -func (o *AddExporterBody) validateMysqldExporter(formats strfmt.Registry) error { +func (o *AddAgentBody) validateMysqldExporter(formats strfmt.Registry) error { if swag.IsZero(o.MysqldExporter) { // not required return nil } @@ -268,7 +268,7 @@ func (o *AddExporterBody) validateMysqldExporter(formats strfmt.Registry) error return nil } -func (o *AddExporterBody) validateNodeExporter(formats strfmt.Registry) error { +func (o *AddAgentBody) validateNodeExporter(formats strfmt.Registry) error { if swag.IsZero(o.NodeExporter) { // not required return nil } @@ -287,7 +287,7 @@ func (o *AddExporterBody) validateNodeExporter(formats strfmt.Registry) error { return nil } -func (o *AddExporterBody) validatePostgresExporter(formats strfmt.Registry) error { +func (o *AddAgentBody) validatePostgresExporter(formats strfmt.Registry) error { if swag.IsZero(o.PostgresExporter) { // not required return nil } @@ -306,7 +306,7 @@ func (o *AddExporterBody) validatePostgresExporter(formats strfmt.Registry) erro return nil } -func (o *AddExporterBody) validateProxysqlExporter(formats strfmt.Registry) error { +func (o *AddAgentBody) validateProxysqlExporter(formats strfmt.Registry) error { if swag.IsZero(o.ProxysqlExporter) { // not required return nil } @@ -325,7 +325,7 @@ func (o *AddExporterBody) validateProxysqlExporter(formats strfmt.Registry) erro return nil } -func (o *AddExporterBody) validateRDSExporter(formats strfmt.Registry) error { +func (o *AddAgentBody) validateRDSExporter(formats strfmt.Registry) error { if swag.IsZero(o.RDSExporter) { // not required return nil } @@ -344,8 +344,8 @@ func (o *AddExporterBody) validateRDSExporter(formats strfmt.Registry) error { return nil } -// ContextValidate validate this add exporter body based on the context it is used -func (o *AddExporterBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validate this add agent body based on the context it is used +func (o *AddAgentBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { var res []error if err := o.contextValidateAzureDatabaseExporter(ctx, formats); err != nil { @@ -386,7 +386,7 @@ func (o *AddExporterBody) ContextValidate(ctx context.Context, formats strfmt.Re return nil } -func (o *AddExporterBody) contextValidateAzureDatabaseExporter(ctx context.Context, formats strfmt.Registry) error { +func (o *AddAgentBody) 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 { @@ -401,7 +401,7 @@ func (o *AddExporterBody) contextValidateAzureDatabaseExporter(ctx context.Conte return nil } -func (o *AddExporterBody) contextValidateExternalExporter(ctx context.Context, formats strfmt.Registry) error { +func (o *AddAgentBody) 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 { @@ -416,7 +416,7 @@ func (o *AddExporterBody) contextValidateExternalExporter(ctx context.Context, f return nil } -func (o *AddExporterBody) contextValidateMongodbExporter(ctx context.Context, formats strfmt.Registry) error { +func (o *AddAgentBody) 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 { @@ -431,7 +431,7 @@ func (o *AddExporterBody) contextValidateMongodbExporter(ctx context.Context, fo return nil } -func (o *AddExporterBody) contextValidateMysqldExporter(ctx context.Context, formats strfmt.Registry) error { +func (o *AddAgentBody) 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 { @@ -446,7 +446,7 @@ func (o *AddExporterBody) contextValidateMysqldExporter(ctx context.Context, for return nil } -func (o *AddExporterBody) contextValidateNodeExporter(ctx context.Context, formats strfmt.Registry) error { +func (o *AddAgentBody) 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 { @@ -461,7 +461,7 @@ func (o *AddExporterBody) contextValidateNodeExporter(ctx context.Context, forma return nil } -func (o *AddExporterBody) contextValidatePostgresExporter(ctx context.Context, formats strfmt.Registry) error { +func (o *AddAgentBody) 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 { @@ -476,7 +476,7 @@ func (o *AddExporterBody) contextValidatePostgresExporter(ctx context.Context, f return nil } -func (o *AddExporterBody) contextValidateProxysqlExporter(ctx context.Context, formats strfmt.Registry) error { +func (o *AddAgentBody) 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 { @@ -491,7 +491,7 @@ func (o *AddExporterBody) contextValidateProxysqlExporter(ctx context.Context, f return nil } -func (o *AddExporterBody) contextValidateRDSExporter(ctx context.Context, formats strfmt.Registry) error { +func (o *AddAgentBody) 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 { @@ -507,7 +507,7 @@ func (o *AddExporterBody) contextValidateRDSExporter(ctx context.Context, format } // MarshalBinary interface implementation -func (o *AddExporterBody) MarshalBinary() ([]byte, error) { +func (o *AddAgentBody) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -515,8 +515,8 @@ func (o *AddExporterBody) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddExporterBody) UnmarshalBinary(b []byte) error { - var res AddExporterBody +func (o *AddAgentBody) UnmarshalBinary(b []byte) error { + var res AddAgentBody if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -525,10 +525,10 @@ func (o *AddExporterBody) UnmarshalBinary(b []byte) error { } /* -AddExporterDefaultBody add exporter default body -swagger:model AddExporterDefaultBody +AddAgentDefaultBody add agent default body +swagger:model AddAgentDefaultBody */ -type AddExporterDefaultBody struct { +type AddAgentDefaultBody struct { // code Code int32 `json:"code,omitempty"` @@ -536,11 +536,11 @@ type AddExporterDefaultBody struct { Message string `json:"message,omitempty"` // details - Details []*AddExporterDefaultBodyDetailsItems0 `json:"details"` + Details []*AddAgentDefaultBodyDetailsItems0 `json:"details"` } -// Validate validates this add exporter default body -func (o *AddExporterDefaultBody) Validate(formats strfmt.Registry) error { +// Validate validates this add agent default body +func (o *AddAgentDefaultBody) Validate(formats strfmt.Registry) error { var res []error if err := o.validateDetails(formats); err != nil { @@ -553,7 +553,7 @@ func (o *AddExporterDefaultBody) Validate(formats strfmt.Registry) error { return nil } -func (o *AddExporterDefaultBody) validateDetails(formats strfmt.Registry) error { +func (o *AddAgentDefaultBody) validateDetails(formats strfmt.Registry) error { if swag.IsZero(o.Details) { // not required return nil } @@ -566,9 +566,9 @@ func (o *AddExporterDefaultBody) validateDetails(formats strfmt.Registry) error if o.Details[i] != nil { if err := o.Details[i].Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("AddExporter default" + "." + "details" + "." + strconv.Itoa(i)) + return ve.ValidateName("AddAgent default" + "." + "details" + "." + strconv.Itoa(i)) } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddExporter default" + "." + "details" + "." + strconv.Itoa(i)) + return ce.ValidateName("AddAgent default" + "." + "details" + "." + strconv.Itoa(i)) } return err } @@ -579,8 +579,8 @@ func (o *AddExporterDefaultBody) validateDetails(formats strfmt.Registry) error return nil } -// ContextValidate validate this add exporter default body based on the context it is used -func (o *AddExporterDefaultBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validate this add agent default body based on the context it is used +func (o *AddAgentDefaultBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { var res []error if err := o.contextValidateDetails(ctx, formats); err != nil { @@ -593,14 +593,14 @@ func (o *AddExporterDefaultBody) ContextValidate(ctx context.Context, formats st return nil } -func (o *AddExporterDefaultBody) contextValidateDetails(ctx context.Context, formats strfmt.Registry) error { +func (o *AddAgentDefaultBody) 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("AddExporter default" + "." + "details" + "." + strconv.Itoa(i)) + return ve.ValidateName("AddAgent default" + "." + "details" + "." + strconv.Itoa(i)) } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddExporter default" + "." + "details" + "." + strconv.Itoa(i)) + return ce.ValidateName("AddAgent default" + "." + "details" + "." + strconv.Itoa(i)) } return err } @@ -611,7 +611,7 @@ func (o *AddExporterDefaultBody) contextValidateDetails(ctx context.Context, for } // MarshalBinary interface implementation -func (o *AddExporterDefaultBody) MarshalBinary() ([]byte, error) { +func (o *AddAgentDefaultBody) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -619,8 +619,8 @@ func (o *AddExporterDefaultBody) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddExporterDefaultBody) UnmarshalBinary(b []byte) error { - var res AddExporterDefaultBody +func (o *AddAgentDefaultBody) UnmarshalBinary(b []byte) error { + var res AddAgentDefaultBody if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -629,26 +629,26 @@ func (o *AddExporterDefaultBody) UnmarshalBinary(b []byte) error { } /* -AddExporterDefaultBodyDetailsItems0 add exporter default body details items0 -swagger:model AddExporterDefaultBodyDetailsItems0 +AddAgentDefaultBodyDetailsItems0 add agent default body details items0 +swagger:model AddAgentDefaultBodyDetailsItems0 */ -type AddExporterDefaultBodyDetailsItems0 struct { +type AddAgentDefaultBodyDetailsItems0 struct { // at type AtType string `json:"@type,omitempty"` } -// Validate validates this add exporter default body details items0 -func (o *AddExporterDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { +// Validate validates this add agent default body details items0 +func (o *AddAgentDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { return nil } -// ContextValidate validates this add exporter default body details items0 based on context it is used -func (o *AddExporterDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent default body details items0 based on context it is used +func (o *AddAgentDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddExporterDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { +func (o *AddAgentDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -656,8 +656,8 @@ func (o *AddExporterDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddExporterDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res AddExporterDefaultBodyDetailsItems0 +func (o *AddAgentDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { + var res AddAgentDefaultBodyDetailsItems0 if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -666,40 +666,40 @@ func (o *AddExporterDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { } /* -AddExporterOKBody add exporter OK body -swagger:model AddExporterOKBody +AddAgentOKBody add agent OK body +swagger:model AddAgentOKBody */ -type AddExporterOKBody struct { +type AddAgentOKBody struct { // Actual table count for SQL databases at the moment of adding. TableCount int32 `json:"table_count,omitempty"` // azure database exporter - AzureDatabaseExporter *AddExporterOKBodyAzureDatabaseExporter `json:"azure_database_exporter,omitempty"` + AzureDatabaseExporter *AddAgentOKBodyAzureDatabaseExporter `json:"azure_database_exporter,omitempty"` // external exporter - ExternalExporter *AddExporterOKBodyExternalExporter `json:"external_exporter,omitempty"` + ExternalExporter *AddAgentOKBodyExternalExporter `json:"external_exporter,omitempty"` // mongodb exporter - MongodbExporter *AddExporterOKBodyMongodbExporter `json:"mongodb_exporter,omitempty"` + MongodbExporter *AddAgentOKBodyMongodbExporter `json:"mongodb_exporter,omitempty"` // mysqld exporter - MysqldExporter *AddExporterOKBodyMysqldExporter `json:"mysqld_exporter,omitempty"` + MysqldExporter *AddAgentOKBodyMysqldExporter `json:"mysqld_exporter,omitempty"` // node exporter - NodeExporter *AddExporterOKBodyNodeExporter `json:"node_exporter,omitempty"` + NodeExporter *AddAgentOKBodyNodeExporter `json:"node_exporter,omitempty"` // postgres exporter - PostgresExporter *AddExporterOKBodyPostgresExporter `json:"postgres_exporter,omitempty"` + PostgresExporter *AddAgentOKBodyPostgresExporter `json:"postgres_exporter,omitempty"` // proxysql exporter - ProxysqlExporter *AddExporterOKBodyProxysqlExporter `json:"proxysql_exporter,omitempty"` + ProxysqlExporter *AddAgentOKBodyProxysqlExporter `json:"proxysql_exporter,omitempty"` // rds exporter - RDSExporter *AddExporterOKBodyRDSExporter `json:"rds_exporter,omitempty"` + RDSExporter *AddAgentOKBodyRDSExporter `json:"rds_exporter,omitempty"` } -// Validate validates this add exporter OK body -func (o *AddExporterOKBody) Validate(formats strfmt.Registry) error { +// Validate validates this add agent OK body +func (o *AddAgentOKBody) Validate(formats strfmt.Registry) error { var res []error if err := o.validateAzureDatabaseExporter(formats); err != nil { @@ -740,7 +740,7 @@ func (o *AddExporterOKBody) Validate(formats strfmt.Registry) error { return nil } -func (o *AddExporterOKBody) validateAzureDatabaseExporter(formats strfmt.Registry) error { +func (o *AddAgentOKBody) validateAzureDatabaseExporter(formats strfmt.Registry) error { if swag.IsZero(o.AzureDatabaseExporter) { // not required return nil } @@ -748,9 +748,9 @@ func (o *AddExporterOKBody) validateAzureDatabaseExporter(formats strfmt.Registr if o.AzureDatabaseExporter != nil { if err := o.AzureDatabaseExporter.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("addExporterOk" + "." + "azure_database_exporter") + return ve.ValidateName("addAgentOk" + "." + "azure_database_exporter") } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addExporterOk" + "." + "azure_database_exporter") + return ce.ValidateName("addAgentOk" + "." + "azure_database_exporter") } return err } @@ -759,7 +759,7 @@ func (o *AddExporterOKBody) validateAzureDatabaseExporter(formats strfmt.Registr return nil } -func (o *AddExporterOKBody) validateExternalExporter(formats strfmt.Registry) error { +func (o *AddAgentOKBody) validateExternalExporter(formats strfmt.Registry) error { if swag.IsZero(o.ExternalExporter) { // not required return nil } @@ -767,9 +767,9 @@ func (o *AddExporterOKBody) validateExternalExporter(formats strfmt.Registry) er if o.ExternalExporter != nil { if err := o.ExternalExporter.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("addExporterOk" + "." + "external_exporter") + return ve.ValidateName("addAgentOk" + "." + "external_exporter") } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addExporterOk" + "." + "external_exporter") + return ce.ValidateName("addAgentOk" + "." + "external_exporter") } return err } @@ -778,7 +778,7 @@ func (o *AddExporterOKBody) validateExternalExporter(formats strfmt.Registry) er return nil } -func (o *AddExporterOKBody) validateMongodbExporter(formats strfmt.Registry) error { +func (o *AddAgentOKBody) validateMongodbExporter(formats strfmt.Registry) error { if swag.IsZero(o.MongodbExporter) { // not required return nil } @@ -786,9 +786,9 @@ func (o *AddExporterOKBody) validateMongodbExporter(formats strfmt.Registry) err if o.MongodbExporter != nil { if err := o.MongodbExporter.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("addExporterOk" + "." + "mongodb_exporter") + return ve.ValidateName("addAgentOk" + "." + "mongodb_exporter") } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addExporterOk" + "." + "mongodb_exporter") + return ce.ValidateName("addAgentOk" + "." + "mongodb_exporter") } return err } @@ -797,7 +797,7 @@ func (o *AddExporterOKBody) validateMongodbExporter(formats strfmt.Registry) err return nil } -func (o *AddExporterOKBody) validateMysqldExporter(formats strfmt.Registry) error { +func (o *AddAgentOKBody) validateMysqldExporter(formats strfmt.Registry) error { if swag.IsZero(o.MysqldExporter) { // not required return nil } @@ -805,9 +805,9 @@ func (o *AddExporterOKBody) validateMysqldExporter(formats strfmt.Registry) erro if o.MysqldExporter != nil { if err := o.MysqldExporter.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("addExporterOk" + "." + "mysqld_exporter") + return ve.ValidateName("addAgentOk" + "." + "mysqld_exporter") } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addExporterOk" + "." + "mysqld_exporter") + return ce.ValidateName("addAgentOk" + "." + "mysqld_exporter") } return err } @@ -816,7 +816,7 @@ func (o *AddExporterOKBody) validateMysqldExporter(formats strfmt.Registry) erro return nil } -func (o *AddExporterOKBody) validateNodeExporter(formats strfmt.Registry) error { +func (o *AddAgentOKBody) validateNodeExporter(formats strfmt.Registry) error { if swag.IsZero(o.NodeExporter) { // not required return nil } @@ -824,9 +824,9 @@ func (o *AddExporterOKBody) validateNodeExporter(formats strfmt.Registry) error if o.NodeExporter != nil { if err := o.NodeExporter.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("addExporterOk" + "." + "node_exporter") + return ve.ValidateName("addAgentOk" + "." + "node_exporter") } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addExporterOk" + "." + "node_exporter") + return ce.ValidateName("addAgentOk" + "." + "node_exporter") } return err } @@ -835,7 +835,7 @@ func (o *AddExporterOKBody) validateNodeExporter(formats strfmt.Registry) error return nil } -func (o *AddExporterOKBody) validatePostgresExporter(formats strfmt.Registry) error { +func (o *AddAgentOKBody) validatePostgresExporter(formats strfmt.Registry) error { if swag.IsZero(o.PostgresExporter) { // not required return nil } @@ -843,9 +843,9 @@ func (o *AddExporterOKBody) validatePostgresExporter(formats strfmt.Registry) er if o.PostgresExporter != nil { if err := o.PostgresExporter.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("addExporterOk" + "." + "postgres_exporter") + return ve.ValidateName("addAgentOk" + "." + "postgres_exporter") } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addExporterOk" + "." + "postgres_exporter") + return ce.ValidateName("addAgentOk" + "." + "postgres_exporter") } return err } @@ -854,7 +854,7 @@ func (o *AddExporterOKBody) validatePostgresExporter(formats strfmt.Registry) er return nil } -func (o *AddExporterOKBody) validateProxysqlExporter(formats strfmt.Registry) error { +func (o *AddAgentOKBody) validateProxysqlExporter(formats strfmt.Registry) error { if swag.IsZero(o.ProxysqlExporter) { // not required return nil } @@ -862,9 +862,9 @@ func (o *AddExporterOKBody) validateProxysqlExporter(formats strfmt.Registry) er if o.ProxysqlExporter != nil { if err := o.ProxysqlExporter.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("addExporterOk" + "." + "proxysql_exporter") + return ve.ValidateName("addAgentOk" + "." + "proxysql_exporter") } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addExporterOk" + "." + "proxysql_exporter") + return ce.ValidateName("addAgentOk" + "." + "proxysql_exporter") } return err } @@ -873,7 +873,7 @@ func (o *AddExporterOKBody) validateProxysqlExporter(formats strfmt.Registry) er return nil } -func (o *AddExporterOKBody) validateRDSExporter(formats strfmt.Registry) error { +func (o *AddAgentOKBody) validateRDSExporter(formats strfmt.Registry) error { if swag.IsZero(o.RDSExporter) { // not required return nil } @@ -881,9 +881,9 @@ func (o *AddExporterOKBody) validateRDSExporter(formats strfmt.Registry) error { if o.RDSExporter != nil { if err := o.RDSExporter.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("addExporterOk" + "." + "rds_exporter") + return ve.ValidateName("addAgentOk" + "." + "rds_exporter") } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addExporterOk" + "." + "rds_exporter") + return ce.ValidateName("addAgentOk" + "." + "rds_exporter") } return err } @@ -892,8 +892,8 @@ func (o *AddExporterOKBody) validateRDSExporter(formats strfmt.Registry) error { return nil } -// ContextValidate validate this add exporter OK body based on the context it is used -func (o *AddExporterOKBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validate this add agent OK body based on the context it is used +func (o *AddAgentOKBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { var res []error if err := o.contextValidateAzureDatabaseExporter(ctx, formats); err != nil { @@ -934,13 +934,13 @@ func (o *AddExporterOKBody) ContextValidate(ctx context.Context, formats strfmt. return nil } -func (o *AddExporterOKBody) contextValidateAzureDatabaseExporter(ctx context.Context, formats strfmt.Registry) error { +func (o *AddAgentOKBody) 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("addExporterOk" + "." + "azure_database_exporter") + return ve.ValidateName("addAgentOk" + "." + "azure_database_exporter") } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addExporterOk" + "." + "azure_database_exporter") + return ce.ValidateName("addAgentOk" + "." + "azure_database_exporter") } return err } @@ -949,13 +949,13 @@ func (o *AddExporterOKBody) contextValidateAzureDatabaseExporter(ctx context.Con return nil } -func (o *AddExporterOKBody) contextValidateExternalExporter(ctx context.Context, formats strfmt.Registry) error { +func (o *AddAgentOKBody) 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("addExporterOk" + "." + "external_exporter") + return ve.ValidateName("addAgentOk" + "." + "external_exporter") } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addExporterOk" + "." + "external_exporter") + return ce.ValidateName("addAgentOk" + "." + "external_exporter") } return err } @@ -964,13 +964,13 @@ func (o *AddExporterOKBody) contextValidateExternalExporter(ctx context.Context, return nil } -func (o *AddExporterOKBody) contextValidateMongodbExporter(ctx context.Context, formats strfmt.Registry) error { +func (o *AddAgentOKBody) 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("addExporterOk" + "." + "mongodb_exporter") + return ve.ValidateName("addAgentOk" + "." + "mongodb_exporter") } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addExporterOk" + "." + "mongodb_exporter") + return ce.ValidateName("addAgentOk" + "." + "mongodb_exporter") } return err } @@ -979,13 +979,13 @@ func (o *AddExporterOKBody) contextValidateMongodbExporter(ctx context.Context, return nil } -func (o *AddExporterOKBody) contextValidateMysqldExporter(ctx context.Context, formats strfmt.Registry) error { +func (o *AddAgentOKBody) 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("addExporterOk" + "." + "mysqld_exporter") + return ve.ValidateName("addAgentOk" + "." + "mysqld_exporter") } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addExporterOk" + "." + "mysqld_exporter") + return ce.ValidateName("addAgentOk" + "." + "mysqld_exporter") } return err } @@ -994,13 +994,13 @@ func (o *AddExporterOKBody) contextValidateMysqldExporter(ctx context.Context, f return nil } -func (o *AddExporterOKBody) contextValidateNodeExporter(ctx context.Context, formats strfmt.Registry) error { +func (o *AddAgentOKBody) 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("addExporterOk" + "." + "node_exporter") + return ve.ValidateName("addAgentOk" + "." + "node_exporter") } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addExporterOk" + "." + "node_exporter") + return ce.ValidateName("addAgentOk" + "." + "node_exporter") } return err } @@ -1009,13 +1009,13 @@ func (o *AddExporterOKBody) contextValidateNodeExporter(ctx context.Context, for return nil } -func (o *AddExporterOKBody) contextValidatePostgresExporter(ctx context.Context, formats strfmt.Registry) error { +func (o *AddAgentOKBody) 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("addExporterOk" + "." + "postgres_exporter") + return ve.ValidateName("addAgentOk" + "." + "postgres_exporter") } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addExporterOk" + "." + "postgres_exporter") + return ce.ValidateName("addAgentOk" + "." + "postgres_exporter") } return err } @@ -1024,13 +1024,13 @@ func (o *AddExporterOKBody) contextValidatePostgresExporter(ctx context.Context, return nil } -func (o *AddExporterOKBody) contextValidateProxysqlExporter(ctx context.Context, formats strfmt.Registry) error { +func (o *AddAgentOKBody) 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("addExporterOk" + "." + "proxysql_exporter") + return ve.ValidateName("addAgentOk" + "." + "proxysql_exporter") } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addExporterOk" + "." + "proxysql_exporter") + return ce.ValidateName("addAgentOk" + "." + "proxysql_exporter") } return err } @@ -1039,13 +1039,13 @@ func (o *AddExporterOKBody) contextValidateProxysqlExporter(ctx context.Context, return nil } -func (o *AddExporterOKBody) contextValidateRDSExporter(ctx context.Context, formats strfmt.Registry) error { +func (o *AddAgentOKBody) 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("addExporterOk" + "." + "rds_exporter") + return ve.ValidateName("addAgentOk" + "." + "rds_exporter") } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addExporterOk" + "." + "rds_exporter") + return ce.ValidateName("addAgentOk" + "." + "rds_exporter") } return err } @@ -1055,7 +1055,7 @@ func (o *AddExporterOKBody) contextValidateRDSExporter(ctx context.Context, form } // MarshalBinary interface implementation -func (o *AddExporterOKBody) MarshalBinary() ([]byte, error) { +func (o *AddAgentOKBody) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -1063,8 +1063,8 @@ func (o *AddExporterOKBody) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddExporterOKBody) UnmarshalBinary(b []byte) error { - var res AddExporterOKBody +func (o *AddAgentOKBody) UnmarshalBinary(b []byte) error { + var res AddAgentOKBody if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -1073,10 +1073,10 @@ func (o *AddExporterOKBody) UnmarshalBinary(b []byte) error { } /* -AddExporterOKBodyAzureDatabaseExporter AzureDatabaseExporter runs on Generic or Container Node and exposes RemoteAzure Node metrics. -swagger:model AddExporterOKBodyAzureDatabaseExporter +AddAgentOKBodyAzureDatabaseExporter AzureDatabaseExporter runs on Generic or Container Node and exposes RemoteAzure Node metrics. +swagger:model AddAgentOKBodyAzureDatabaseExporter */ -type AddExporterOKBodyAzureDatabaseExporter struct { +type AddAgentOKBodyAzureDatabaseExporter struct { // Unique randomly generated instance identifier. AgentID string `json:"agent_id,omitempty"` @@ -1127,8 +1127,8 @@ type AddExporterOKBodyAzureDatabaseExporter struct { LogLevel *string `json:"log_level,omitempty"` } -// Validate validates this add exporter OK body azure database exporter -func (o *AddExporterOKBodyAzureDatabaseExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent OK body azure database exporter +func (o *AddAgentOKBodyAzureDatabaseExporter) Validate(formats strfmt.Registry) error { var res []error if err := o.validateStatus(formats); err != nil { @@ -1145,7 +1145,7 @@ func (o *AddExporterOKBodyAzureDatabaseExporter) Validate(formats strfmt.Registr return nil } -var addExporterOkBodyAzureDatabaseExporterTypeStatusPropEnum []interface{} +var addAgentOkBodyAzureDatabaseExporterTypeStatusPropEnum []interface{} func init() { var res []string @@ -1153,56 +1153,56 @@ func init() { panic(err) } for _, v := range res { - addExporterOkBodyAzureDatabaseExporterTypeStatusPropEnum = append(addExporterOkBodyAzureDatabaseExporterTypeStatusPropEnum, v) + addAgentOkBodyAzureDatabaseExporterTypeStatusPropEnum = append(addAgentOkBodyAzureDatabaseExporterTypeStatusPropEnum, v) } } const ( - // AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + // AddAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + AddAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - // AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + // AddAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + AddAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - // AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + // AddAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + AddAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - // AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + // AddAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + AddAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - // AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + // AddAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + AddAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - // AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + // AddAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + AddAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - // AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - AddExporterOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" + // AddAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + AddAgentOKBodyAzureDatabaseExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" ) // prop value enum -func (o *AddExporterOKBodyAzureDatabaseExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterOkBodyAzureDatabaseExporterTypeStatusPropEnum, true); err != nil { +func (o *AddAgentOKBodyAzureDatabaseExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyAzureDatabaseExporterTypeStatusPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterOKBodyAzureDatabaseExporter) validateStatus(formats strfmt.Registry) error { +func (o *AddAgentOKBodyAzureDatabaseExporter) validateStatus(formats strfmt.Registry) error { if swag.IsZero(o.Status) { // not required return nil } // value enum - if err := o.validateStatusEnum("addExporterOk"+"."+"azure_database_exporter"+"."+"status", "body", *o.Status); err != nil { + if err := o.validateStatusEnum("addAgentOk"+"."+"azure_database_exporter"+"."+"status", "body", *o.Status); err != nil { return err } return nil } -var addExporterOkBodyAzureDatabaseExporterTypeLogLevelPropEnum []interface{} +var addAgentOkBodyAzureDatabaseExporterTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -1210,59 +1210,59 @@ func init() { panic(err) } for _, v := range res { - addExporterOkBodyAzureDatabaseExporterTypeLogLevelPropEnum = append(addExporterOkBodyAzureDatabaseExporterTypeLogLevelPropEnum, v) + addAgentOkBodyAzureDatabaseExporterTypeLogLevelPropEnum = append(addAgentOkBodyAzureDatabaseExporterTypeLogLevelPropEnum, v) } } const ( - // AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddExporterOKBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentOKBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddExporterOKBodyAzureDatabaseExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterOkBodyAzureDatabaseExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentOKBodyAzureDatabaseExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyAzureDatabaseExporterTypeLogLevelPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterOKBodyAzureDatabaseExporter) validateLogLevel(formats strfmt.Registry) error { +func (o *AddAgentOKBodyAzureDatabaseExporter) validateLogLevel(formats strfmt.Registry) error { if swag.IsZero(o.LogLevel) { // not required return nil } // value enum - if err := o.validateLogLevelEnum("addExporterOk"+"."+"azure_database_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + if err := o.validateLogLevelEnum("addAgentOk"+"."+"azure_database_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { return err } return nil } -// ContextValidate validates this add exporter OK body azure database exporter based on context it is used -func (o *AddExporterOKBodyAzureDatabaseExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent OK body azure database exporter based on context it is used +func (o *AddAgentOKBodyAzureDatabaseExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddExporterOKBodyAzureDatabaseExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentOKBodyAzureDatabaseExporter) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -1270,8 +1270,8 @@ func (o *AddExporterOKBodyAzureDatabaseExporter) MarshalBinary() ([]byte, error) } // UnmarshalBinary interface implementation -func (o *AddExporterOKBodyAzureDatabaseExporter) UnmarshalBinary(b []byte) error { - var res AddExporterOKBodyAzureDatabaseExporter +func (o *AddAgentOKBodyAzureDatabaseExporter) UnmarshalBinary(b []byte) error { + var res AddAgentOKBodyAzureDatabaseExporter if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -1280,10 +1280,10 @@ func (o *AddExporterOKBodyAzureDatabaseExporter) UnmarshalBinary(b []byte) error } /* -AddExporterOKBodyExternalExporter ExternalExporter runs on any Node type, including Remote Node. -swagger:model AddExporterOKBodyExternalExporter +AddAgentOKBodyExternalExporter ExternalExporter runs on any Node type, including Remote Node. +swagger:model AddAgentOKBodyExternalExporter */ -type AddExporterOKBodyExternalExporter struct { +type AddAgentOKBodyExternalExporter struct { // Unique randomly generated instance identifier. AgentID string `json:"agent_id,omitempty"` @@ -1318,18 +1318,18 @@ type AddExporterOKBodyExternalExporter struct { ProcessExecPath string `json:"process_exec_path,omitempty"` } -// Validate validates this add exporter OK body external exporter -func (o *AddExporterOKBodyExternalExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent OK body external exporter +func (o *AddAgentOKBodyExternalExporter) Validate(formats strfmt.Registry) error { return nil } -// ContextValidate validates this add exporter OK body external exporter based on context it is used -func (o *AddExporterOKBodyExternalExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent OK body external exporter based on context it is used +func (o *AddAgentOKBodyExternalExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddExporterOKBodyExternalExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentOKBodyExternalExporter) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -1337,8 +1337,8 @@ func (o *AddExporterOKBodyExternalExporter) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddExporterOKBodyExternalExporter) UnmarshalBinary(b []byte) error { - var res AddExporterOKBodyExternalExporter +func (o *AddAgentOKBodyExternalExporter) UnmarshalBinary(b []byte) error { + var res AddAgentOKBodyExternalExporter if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -1347,10 +1347,10 @@ func (o *AddExporterOKBodyExternalExporter) UnmarshalBinary(b []byte) error { } /* -AddExporterOKBodyMongodbExporter MongoDBExporter runs on Generic or Container Node and exposes MongoDB Service metrics. -swagger:model AddExporterOKBodyMongodbExporter +AddAgentOKBodyMongodbExporter MongoDBExporter runs on Generic or Container Node and exposes MongoDB Service metrics. +swagger:model AddAgentOKBodyMongodbExporter */ -type AddExporterOKBodyMongodbExporter struct { +type AddAgentOKBodyMongodbExporter struct { // Unique randomly generated instance identifier. AgentID string `json:"agent_id,omitempty"` @@ -1420,8 +1420,8 @@ type AddExporterOKBodyMongodbExporter struct { ExposeExporter bool `json:"expose_exporter,omitempty"` } -// Validate validates this add exporter OK body mongodb exporter -func (o *AddExporterOKBodyMongodbExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent OK body mongodb exporter +func (o *AddAgentOKBodyMongodbExporter) Validate(formats strfmt.Registry) error { var res []error if err := o.validateStatus(formats); err != nil { @@ -1438,7 +1438,7 @@ func (o *AddExporterOKBodyMongodbExporter) Validate(formats strfmt.Registry) err return nil } -var addExporterOkBodyMongodbExporterTypeStatusPropEnum []interface{} +var addAgentOkBodyMongodbExporterTypeStatusPropEnum []interface{} func init() { var res []string @@ -1446,56 +1446,56 @@ func init() { panic(err) } for _, v := range res { - addExporterOkBodyMongodbExporterTypeStatusPropEnum = append(addExporterOkBodyMongodbExporterTypeStatusPropEnum, v) + addAgentOkBodyMongodbExporterTypeStatusPropEnum = append(addAgentOkBodyMongodbExporterTypeStatusPropEnum, v) } } const ( - // AddExporterOKBodyMongodbExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - AddExporterOKBodyMongodbExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + // AddAgentOKBodyMongodbExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + AddAgentOKBodyMongodbExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - // AddExporterOKBodyMongodbExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - AddExporterOKBodyMongodbExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + // AddAgentOKBodyMongodbExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + AddAgentOKBodyMongodbExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - // AddExporterOKBodyMongodbExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - AddExporterOKBodyMongodbExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + // AddAgentOKBodyMongodbExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + AddAgentOKBodyMongodbExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - // AddExporterOKBodyMongodbExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - AddExporterOKBodyMongodbExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + // AddAgentOKBodyMongodbExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + AddAgentOKBodyMongodbExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - // AddExporterOKBodyMongodbExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - AddExporterOKBodyMongodbExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + // AddAgentOKBodyMongodbExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + AddAgentOKBodyMongodbExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - // AddExporterOKBodyMongodbExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - AddExporterOKBodyMongodbExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + // AddAgentOKBodyMongodbExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + AddAgentOKBodyMongodbExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - // AddExporterOKBodyMongodbExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - AddExporterOKBodyMongodbExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" + // AddAgentOKBodyMongodbExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + AddAgentOKBodyMongodbExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" ) // prop value enum -func (o *AddExporterOKBodyMongodbExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterOkBodyMongodbExporterTypeStatusPropEnum, true); err != nil { +func (o *AddAgentOKBodyMongodbExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyMongodbExporterTypeStatusPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterOKBodyMongodbExporter) validateStatus(formats strfmt.Registry) error { +func (o *AddAgentOKBodyMongodbExporter) validateStatus(formats strfmt.Registry) error { if swag.IsZero(o.Status) { // not required return nil } // value enum - if err := o.validateStatusEnum("addExporterOk"+"."+"mongodb_exporter"+"."+"status", "body", *o.Status); err != nil { + if err := o.validateStatusEnum("addAgentOk"+"."+"mongodb_exporter"+"."+"status", "body", *o.Status); err != nil { return err } return nil } -var addExporterOkBodyMongodbExporterTypeLogLevelPropEnum []interface{} +var addAgentOkBodyMongodbExporterTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -1503,59 +1503,59 @@ func init() { panic(err) } for _, v := range res { - addExporterOkBodyMongodbExporterTypeLogLevelPropEnum = append(addExporterOkBodyMongodbExporterTypeLogLevelPropEnum, v) + addAgentOkBodyMongodbExporterTypeLogLevelPropEnum = append(addAgentOkBodyMongodbExporterTypeLogLevelPropEnum, v) } } const ( - // AddExporterOKBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddExporterOKBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentOKBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentOKBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddExporterOKBodyMongodbExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddExporterOKBodyMongodbExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentOKBodyMongodbExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentOKBodyMongodbExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddExporterOKBodyMongodbExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddExporterOKBodyMongodbExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentOKBodyMongodbExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentOKBodyMongodbExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddExporterOKBodyMongodbExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddExporterOKBodyMongodbExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentOKBodyMongodbExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentOKBodyMongodbExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddExporterOKBodyMongodbExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddExporterOKBodyMongodbExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentOKBodyMongodbExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentOKBodyMongodbExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddExporterOKBodyMongodbExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddExporterOKBodyMongodbExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentOKBodyMongodbExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentOKBodyMongodbExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddExporterOKBodyMongodbExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterOkBodyMongodbExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentOKBodyMongodbExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyMongodbExporterTypeLogLevelPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterOKBodyMongodbExporter) validateLogLevel(formats strfmt.Registry) error { +func (o *AddAgentOKBodyMongodbExporter) validateLogLevel(formats strfmt.Registry) error { if swag.IsZero(o.LogLevel) { // not required return nil } // value enum - if err := o.validateLogLevelEnum("addExporterOk"+"."+"mongodb_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + if err := o.validateLogLevelEnum("addAgentOk"+"."+"mongodb_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { return err } return nil } -// ContextValidate validates this add exporter OK body mongodb exporter based on context it is used -func (o *AddExporterOKBodyMongodbExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent OK body mongodb exporter based on context it is used +func (o *AddAgentOKBodyMongodbExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddExporterOKBodyMongodbExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentOKBodyMongodbExporter) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -1563,8 +1563,8 @@ func (o *AddExporterOKBodyMongodbExporter) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddExporterOKBodyMongodbExporter) UnmarshalBinary(b []byte) error { - var res AddExporterOKBodyMongodbExporter +func (o *AddAgentOKBodyMongodbExporter) UnmarshalBinary(b []byte) error { + var res AddAgentOKBodyMongodbExporter if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -1573,10 +1573,10 @@ func (o *AddExporterOKBodyMongodbExporter) UnmarshalBinary(b []byte) error { } /* -AddExporterOKBodyMysqldExporter MySQLdExporter runs on Generic or Container Node and exposes MySQL Service metrics. -swagger:model AddExporterOKBodyMysqldExporter +AddAgentOKBodyMysqldExporter MySQLdExporter runs on Generic or Container Node and exposes MySQL Service metrics. +swagger:model AddAgentOKBodyMysqldExporter */ -type AddExporterOKBodyMysqldExporter struct { +type AddAgentOKBodyMysqldExporter struct { // Unique randomly generated instance identifier. AgentID string `json:"agent_id,omitempty"` @@ -1653,8 +1653,8 @@ type AddExporterOKBodyMysqldExporter struct { ExposeExporter bool `json:"expose_exporter,omitempty"` } -// Validate validates this add exporter OK body mysqld exporter -func (o *AddExporterOKBodyMysqldExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent OK body mysqld exporter +func (o *AddAgentOKBodyMysqldExporter) Validate(formats strfmt.Registry) error { var res []error if err := o.validateStatus(formats); err != nil { @@ -1671,7 +1671,7 @@ func (o *AddExporterOKBodyMysqldExporter) Validate(formats strfmt.Registry) erro return nil } -var addExporterOkBodyMysqldExporterTypeStatusPropEnum []interface{} +var addAgentOkBodyMysqldExporterTypeStatusPropEnum []interface{} func init() { var res []string @@ -1679,56 +1679,56 @@ func init() { panic(err) } for _, v := range res { - addExporterOkBodyMysqldExporterTypeStatusPropEnum = append(addExporterOkBodyMysqldExporterTypeStatusPropEnum, v) + addAgentOkBodyMysqldExporterTypeStatusPropEnum = append(addAgentOkBodyMysqldExporterTypeStatusPropEnum, v) } } const ( - // AddExporterOKBodyMysqldExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - AddExporterOKBodyMysqldExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + // AddAgentOKBodyMysqldExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + AddAgentOKBodyMysqldExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - // AddExporterOKBodyMysqldExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - AddExporterOKBodyMysqldExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + // AddAgentOKBodyMysqldExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + AddAgentOKBodyMysqldExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - // AddExporterOKBodyMysqldExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - AddExporterOKBodyMysqldExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + // AddAgentOKBodyMysqldExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + AddAgentOKBodyMysqldExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - // AddExporterOKBodyMysqldExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - AddExporterOKBodyMysqldExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + // AddAgentOKBodyMysqldExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + AddAgentOKBodyMysqldExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - // AddExporterOKBodyMysqldExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - AddExporterOKBodyMysqldExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + // AddAgentOKBodyMysqldExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + AddAgentOKBodyMysqldExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - // AddExporterOKBodyMysqldExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - AddExporterOKBodyMysqldExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + // AddAgentOKBodyMysqldExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + AddAgentOKBodyMysqldExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - // AddExporterOKBodyMysqldExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - AddExporterOKBodyMysqldExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" + // AddAgentOKBodyMysqldExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + AddAgentOKBodyMysqldExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" ) // prop value enum -func (o *AddExporterOKBodyMysqldExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterOkBodyMysqldExporterTypeStatusPropEnum, true); err != nil { +func (o *AddAgentOKBodyMysqldExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyMysqldExporterTypeStatusPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterOKBodyMysqldExporter) validateStatus(formats strfmt.Registry) error { +func (o *AddAgentOKBodyMysqldExporter) validateStatus(formats strfmt.Registry) error { if swag.IsZero(o.Status) { // not required return nil } // value enum - if err := o.validateStatusEnum("addExporterOk"+"."+"mysqld_exporter"+"."+"status", "body", *o.Status); err != nil { + if err := o.validateStatusEnum("addAgentOk"+"."+"mysqld_exporter"+"."+"status", "body", *o.Status); err != nil { return err } return nil } -var addExporterOkBodyMysqldExporterTypeLogLevelPropEnum []interface{} +var addAgentOkBodyMysqldExporterTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -1736,59 +1736,59 @@ func init() { panic(err) } for _, v := range res { - addExporterOkBodyMysqldExporterTypeLogLevelPropEnum = append(addExporterOkBodyMysqldExporterTypeLogLevelPropEnum, v) + addAgentOkBodyMysqldExporterTypeLogLevelPropEnum = append(addAgentOkBodyMysqldExporterTypeLogLevelPropEnum, v) } } const ( - // AddExporterOKBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddExporterOKBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentOKBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentOKBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddExporterOKBodyMysqldExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddExporterOKBodyMysqldExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentOKBodyMysqldExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentOKBodyMysqldExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddExporterOKBodyMysqldExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddExporterOKBodyMysqldExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentOKBodyMysqldExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentOKBodyMysqldExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddExporterOKBodyMysqldExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddExporterOKBodyMysqldExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentOKBodyMysqldExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentOKBodyMysqldExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddExporterOKBodyMysqldExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddExporterOKBodyMysqldExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentOKBodyMysqldExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentOKBodyMysqldExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddExporterOKBodyMysqldExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddExporterOKBodyMysqldExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentOKBodyMysqldExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentOKBodyMysqldExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddExporterOKBodyMysqldExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterOkBodyMysqldExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentOKBodyMysqldExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyMysqldExporterTypeLogLevelPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterOKBodyMysqldExporter) validateLogLevel(formats strfmt.Registry) error { +func (o *AddAgentOKBodyMysqldExporter) validateLogLevel(formats strfmt.Registry) error { if swag.IsZero(o.LogLevel) { // not required return nil } // value enum - if err := o.validateLogLevelEnum("addExporterOk"+"."+"mysqld_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + if err := o.validateLogLevelEnum("addAgentOk"+"."+"mysqld_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { return err } return nil } -// ContextValidate validates this add exporter OK body mysqld exporter based on context it is used -func (o *AddExporterOKBodyMysqldExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent OK body mysqld exporter based on context it is used +func (o *AddAgentOKBodyMysqldExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddExporterOKBodyMysqldExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentOKBodyMysqldExporter) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -1796,8 +1796,8 @@ func (o *AddExporterOKBodyMysqldExporter) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddExporterOKBodyMysqldExporter) UnmarshalBinary(b []byte) error { - var res AddExporterOKBodyMysqldExporter +func (o *AddAgentOKBodyMysqldExporter) UnmarshalBinary(b []byte) error { + var res AddAgentOKBodyMysqldExporter if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -1806,10 +1806,10 @@ func (o *AddExporterOKBodyMysqldExporter) UnmarshalBinary(b []byte) error { } /* -AddExporterOKBodyNodeExporter NodeExporter runs on Generic or Container Node and exposes its metrics. -swagger:model AddExporterOKBodyNodeExporter +AddAgentOKBodyNodeExporter NodeExporter runs on Generic or Container Node and exposes its metrics. +swagger:model AddAgentOKBodyNodeExporter */ -type AddExporterOKBodyNodeExporter struct { +type AddAgentOKBodyNodeExporter struct { // Unique randomly generated instance identifier. AgentID string `json:"agent_id,omitempty"` @@ -1857,8 +1857,8 @@ type AddExporterOKBodyNodeExporter struct { ExposeExporter bool `json:"expose_exporter,omitempty"` } -// Validate validates this add exporter OK body node exporter -func (o *AddExporterOKBodyNodeExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent OK body node exporter +func (o *AddAgentOKBodyNodeExporter) Validate(formats strfmt.Registry) error { var res []error if err := o.validateStatus(formats); err != nil { @@ -1875,7 +1875,7 @@ func (o *AddExporterOKBodyNodeExporter) Validate(formats strfmt.Registry) error return nil } -var addExporterOkBodyNodeExporterTypeStatusPropEnum []interface{} +var addAgentOkBodyNodeExporterTypeStatusPropEnum []interface{} func init() { var res []string @@ -1883,56 +1883,56 @@ func init() { panic(err) } for _, v := range res { - addExporterOkBodyNodeExporterTypeStatusPropEnum = append(addExporterOkBodyNodeExporterTypeStatusPropEnum, v) + addAgentOkBodyNodeExporterTypeStatusPropEnum = append(addAgentOkBodyNodeExporterTypeStatusPropEnum, v) } } const ( - // AddExporterOKBodyNodeExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - AddExporterOKBodyNodeExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + // AddAgentOKBodyNodeExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + AddAgentOKBodyNodeExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - // AddExporterOKBodyNodeExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - AddExporterOKBodyNodeExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + // AddAgentOKBodyNodeExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + AddAgentOKBodyNodeExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - // AddExporterOKBodyNodeExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - AddExporterOKBodyNodeExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + // AddAgentOKBodyNodeExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + AddAgentOKBodyNodeExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - // AddExporterOKBodyNodeExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - AddExporterOKBodyNodeExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + // AddAgentOKBodyNodeExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + AddAgentOKBodyNodeExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - // AddExporterOKBodyNodeExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - AddExporterOKBodyNodeExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + // AddAgentOKBodyNodeExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + AddAgentOKBodyNodeExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - // AddExporterOKBodyNodeExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - AddExporterOKBodyNodeExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + // AddAgentOKBodyNodeExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + AddAgentOKBodyNodeExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - // AddExporterOKBodyNodeExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - AddExporterOKBodyNodeExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" + // AddAgentOKBodyNodeExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + AddAgentOKBodyNodeExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" ) // prop value enum -func (o *AddExporterOKBodyNodeExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterOkBodyNodeExporterTypeStatusPropEnum, true); err != nil { +func (o *AddAgentOKBodyNodeExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyNodeExporterTypeStatusPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterOKBodyNodeExporter) validateStatus(formats strfmt.Registry) error { +func (o *AddAgentOKBodyNodeExporter) validateStatus(formats strfmt.Registry) error { if swag.IsZero(o.Status) { // not required return nil } // value enum - if err := o.validateStatusEnum("addExporterOk"+"."+"node_exporter"+"."+"status", "body", *o.Status); err != nil { + if err := o.validateStatusEnum("addAgentOk"+"."+"node_exporter"+"."+"status", "body", *o.Status); err != nil { return err } return nil } -var addExporterOkBodyNodeExporterTypeLogLevelPropEnum []interface{} +var addAgentOkBodyNodeExporterTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -1940,59 +1940,59 @@ func init() { panic(err) } for _, v := range res { - addExporterOkBodyNodeExporterTypeLogLevelPropEnum = append(addExporterOkBodyNodeExporterTypeLogLevelPropEnum, v) + addAgentOkBodyNodeExporterTypeLogLevelPropEnum = append(addAgentOkBodyNodeExporterTypeLogLevelPropEnum, v) } } const ( - // AddExporterOKBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddExporterOKBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentOKBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentOKBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddExporterOKBodyNodeExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddExporterOKBodyNodeExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentOKBodyNodeExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentOKBodyNodeExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddExporterOKBodyNodeExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddExporterOKBodyNodeExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentOKBodyNodeExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentOKBodyNodeExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddExporterOKBodyNodeExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddExporterOKBodyNodeExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentOKBodyNodeExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentOKBodyNodeExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddExporterOKBodyNodeExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddExporterOKBodyNodeExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentOKBodyNodeExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentOKBodyNodeExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddExporterOKBodyNodeExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddExporterOKBodyNodeExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentOKBodyNodeExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentOKBodyNodeExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddExporterOKBodyNodeExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterOkBodyNodeExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentOKBodyNodeExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyNodeExporterTypeLogLevelPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterOKBodyNodeExporter) validateLogLevel(formats strfmt.Registry) error { +func (o *AddAgentOKBodyNodeExporter) validateLogLevel(formats strfmt.Registry) error { if swag.IsZero(o.LogLevel) { // not required return nil } // value enum - if err := o.validateLogLevelEnum("addExporterOk"+"."+"node_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + if err := o.validateLogLevelEnum("addAgentOk"+"."+"node_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { return err } return nil } -// ContextValidate validates this add exporter OK body node exporter based on context it is used -func (o *AddExporterOKBodyNodeExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent OK body node exporter based on context it is used +func (o *AddAgentOKBodyNodeExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddExporterOKBodyNodeExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentOKBodyNodeExporter) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -2000,8 +2000,8 @@ func (o *AddExporterOKBodyNodeExporter) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddExporterOKBodyNodeExporter) UnmarshalBinary(b []byte) error { - var res AddExporterOKBodyNodeExporter +func (o *AddAgentOKBodyNodeExporter) UnmarshalBinary(b []byte) error { + var res AddAgentOKBodyNodeExporter if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -2010,10 +2010,10 @@ func (o *AddExporterOKBodyNodeExporter) UnmarshalBinary(b []byte) error { } /* -AddExporterOKBodyPostgresExporter PostgresExporter runs on Generic or Container Node and exposes PostgreSQL Service metrics. -swagger:model AddExporterOKBodyPostgresExporter +AddAgentOKBodyPostgresExporter PostgresExporter runs on Generic or Container Node and exposes PostgreSQL Service metrics. +swagger:model AddAgentOKBodyPostgresExporter */ -type AddExporterOKBodyPostgresExporter struct { +type AddAgentOKBodyPostgresExporter struct { // Unique randomly generated instance identifier. AgentID string `json:"agent_id,omitempty"` @@ -2074,8 +2074,8 @@ type AddExporterOKBodyPostgresExporter struct { ExposeExporter bool `json:"expose_exporter,omitempty"` } -// Validate validates this add exporter OK body postgres exporter -func (o *AddExporterOKBodyPostgresExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent OK body postgres exporter +func (o *AddAgentOKBodyPostgresExporter) Validate(formats strfmt.Registry) error { var res []error if err := o.validateStatus(formats); err != nil { @@ -2092,7 +2092,7 @@ func (o *AddExporterOKBodyPostgresExporter) Validate(formats strfmt.Registry) er return nil } -var addExporterOkBodyPostgresExporterTypeStatusPropEnum []interface{} +var addAgentOkBodyPostgresExporterTypeStatusPropEnum []interface{} func init() { var res []string @@ -2100,56 +2100,56 @@ func init() { panic(err) } for _, v := range res { - addExporterOkBodyPostgresExporterTypeStatusPropEnum = append(addExporterOkBodyPostgresExporterTypeStatusPropEnum, v) + addAgentOkBodyPostgresExporterTypeStatusPropEnum = append(addAgentOkBodyPostgresExporterTypeStatusPropEnum, v) } } const ( - // AddExporterOKBodyPostgresExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - AddExporterOKBodyPostgresExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + // AddAgentOKBodyPostgresExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + AddAgentOKBodyPostgresExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - // AddExporterOKBodyPostgresExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - AddExporterOKBodyPostgresExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + // AddAgentOKBodyPostgresExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + AddAgentOKBodyPostgresExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - // AddExporterOKBodyPostgresExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - AddExporterOKBodyPostgresExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + // AddAgentOKBodyPostgresExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + AddAgentOKBodyPostgresExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - // AddExporterOKBodyPostgresExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - AddExporterOKBodyPostgresExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + // AddAgentOKBodyPostgresExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + AddAgentOKBodyPostgresExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - // AddExporterOKBodyPostgresExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - AddExporterOKBodyPostgresExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + // AddAgentOKBodyPostgresExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + AddAgentOKBodyPostgresExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - // AddExporterOKBodyPostgresExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - AddExporterOKBodyPostgresExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + // AddAgentOKBodyPostgresExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + AddAgentOKBodyPostgresExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - // AddExporterOKBodyPostgresExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - AddExporterOKBodyPostgresExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" + // AddAgentOKBodyPostgresExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + AddAgentOKBodyPostgresExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" ) // prop value enum -func (o *AddExporterOKBodyPostgresExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterOkBodyPostgresExporterTypeStatusPropEnum, true); err != nil { +func (o *AddAgentOKBodyPostgresExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyPostgresExporterTypeStatusPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterOKBodyPostgresExporter) validateStatus(formats strfmt.Registry) error { +func (o *AddAgentOKBodyPostgresExporter) validateStatus(formats strfmt.Registry) error { if swag.IsZero(o.Status) { // not required return nil } // value enum - if err := o.validateStatusEnum("addExporterOk"+"."+"postgres_exporter"+"."+"status", "body", *o.Status); err != nil { + if err := o.validateStatusEnum("addAgentOk"+"."+"postgres_exporter"+"."+"status", "body", *o.Status); err != nil { return err } return nil } -var addExporterOkBodyPostgresExporterTypeLogLevelPropEnum []interface{} +var addAgentOkBodyPostgresExporterTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -2157,59 +2157,59 @@ func init() { panic(err) } for _, v := range res { - addExporterOkBodyPostgresExporterTypeLogLevelPropEnum = append(addExporterOkBodyPostgresExporterTypeLogLevelPropEnum, v) + addAgentOkBodyPostgresExporterTypeLogLevelPropEnum = append(addAgentOkBodyPostgresExporterTypeLogLevelPropEnum, v) } } const ( - // AddExporterOKBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddExporterOKBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentOKBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentOKBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddExporterOKBodyPostgresExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddExporterOKBodyPostgresExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentOKBodyPostgresExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentOKBodyPostgresExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddExporterOKBodyPostgresExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddExporterOKBodyPostgresExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentOKBodyPostgresExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentOKBodyPostgresExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddExporterOKBodyPostgresExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddExporterOKBodyPostgresExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentOKBodyPostgresExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentOKBodyPostgresExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddExporterOKBodyPostgresExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddExporterOKBodyPostgresExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentOKBodyPostgresExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentOKBodyPostgresExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddExporterOKBodyPostgresExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddExporterOKBodyPostgresExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentOKBodyPostgresExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentOKBodyPostgresExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddExporterOKBodyPostgresExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterOkBodyPostgresExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentOKBodyPostgresExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyPostgresExporterTypeLogLevelPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterOKBodyPostgresExporter) validateLogLevel(formats strfmt.Registry) error { +func (o *AddAgentOKBodyPostgresExporter) validateLogLevel(formats strfmt.Registry) error { if swag.IsZero(o.LogLevel) { // not required return nil } // value enum - if err := o.validateLogLevelEnum("addExporterOk"+"."+"postgres_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + if err := o.validateLogLevelEnum("addAgentOk"+"."+"postgres_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { return err } return nil } -// ContextValidate validates this add exporter OK body postgres exporter based on context it is used -func (o *AddExporterOKBodyPostgresExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent OK body postgres exporter based on context it is used +func (o *AddAgentOKBodyPostgresExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddExporterOKBodyPostgresExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentOKBodyPostgresExporter) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -2217,8 +2217,8 @@ func (o *AddExporterOKBodyPostgresExporter) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddExporterOKBodyPostgresExporter) UnmarshalBinary(b []byte) error { - var res AddExporterOKBodyPostgresExporter +func (o *AddAgentOKBodyPostgresExporter) UnmarshalBinary(b []byte) error { + var res AddAgentOKBodyPostgresExporter if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -2227,10 +2227,10 @@ func (o *AddExporterOKBodyPostgresExporter) UnmarshalBinary(b []byte) error { } /* -AddExporterOKBodyProxysqlExporter ProxySQLExporter runs on Generic or Container Node and exposes ProxySQL Service metrics. -swagger:model AddExporterOKBodyProxysqlExporter +AddAgentOKBodyProxysqlExporter ProxySQLExporter runs on Generic or Container Node and exposes ProxySQL Service metrics. +swagger:model AddAgentOKBodyProxysqlExporter */ -type AddExporterOKBodyProxysqlExporter struct { +type AddAgentOKBodyProxysqlExporter struct { // Unique randomly generated instance identifier. AgentID string `json:"agent_id,omitempty"` @@ -2290,8 +2290,8 @@ type AddExporterOKBodyProxysqlExporter struct { ExposeExporter bool `json:"expose_exporter,omitempty"` } -// Validate validates this add exporter OK body proxysql exporter -func (o *AddExporterOKBodyProxysqlExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent OK body proxysql exporter +func (o *AddAgentOKBodyProxysqlExporter) Validate(formats strfmt.Registry) error { var res []error if err := o.validateStatus(formats); err != nil { @@ -2308,7 +2308,7 @@ func (o *AddExporterOKBodyProxysqlExporter) Validate(formats strfmt.Registry) er return nil } -var addExporterOkBodyProxysqlExporterTypeStatusPropEnum []interface{} +var addAgentOkBodyProxysqlExporterTypeStatusPropEnum []interface{} func init() { var res []string @@ -2316,56 +2316,56 @@ func init() { panic(err) } for _, v := range res { - addExporterOkBodyProxysqlExporterTypeStatusPropEnum = append(addExporterOkBodyProxysqlExporterTypeStatusPropEnum, v) + addAgentOkBodyProxysqlExporterTypeStatusPropEnum = append(addAgentOkBodyProxysqlExporterTypeStatusPropEnum, v) } } const ( - // AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + // AddAgentOKBodyProxysqlExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + AddAgentOKBodyProxysqlExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - // AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + // AddAgentOKBodyProxysqlExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + AddAgentOKBodyProxysqlExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - // AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + // AddAgentOKBodyProxysqlExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + AddAgentOKBodyProxysqlExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - // AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + // AddAgentOKBodyProxysqlExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + AddAgentOKBodyProxysqlExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - // AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + // AddAgentOKBodyProxysqlExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + AddAgentOKBodyProxysqlExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - // AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + // AddAgentOKBodyProxysqlExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + AddAgentOKBodyProxysqlExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - // AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - AddExporterOKBodyProxysqlExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" + // AddAgentOKBodyProxysqlExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + AddAgentOKBodyProxysqlExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" ) // prop value enum -func (o *AddExporterOKBodyProxysqlExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterOkBodyProxysqlExporterTypeStatusPropEnum, true); err != nil { +func (o *AddAgentOKBodyProxysqlExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyProxysqlExporterTypeStatusPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterOKBodyProxysqlExporter) validateStatus(formats strfmt.Registry) error { +func (o *AddAgentOKBodyProxysqlExporter) validateStatus(formats strfmt.Registry) error { if swag.IsZero(o.Status) { // not required return nil } // value enum - if err := o.validateStatusEnum("addExporterOk"+"."+"proxysql_exporter"+"."+"status", "body", *o.Status); err != nil { + if err := o.validateStatusEnum("addAgentOk"+"."+"proxysql_exporter"+"."+"status", "body", *o.Status); err != nil { return err } return nil } -var addExporterOkBodyProxysqlExporterTypeLogLevelPropEnum []interface{} +var addAgentOkBodyProxysqlExporterTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -2373,59 +2373,59 @@ func init() { panic(err) } for _, v := range res { - addExporterOkBodyProxysqlExporterTypeLogLevelPropEnum = append(addExporterOkBodyProxysqlExporterTypeLogLevelPropEnum, v) + addAgentOkBodyProxysqlExporterTypeLogLevelPropEnum = append(addAgentOkBodyProxysqlExporterTypeLogLevelPropEnum, v) } } const ( - // AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentOKBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentOKBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentOKBodyProxysqlExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentOKBodyProxysqlExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentOKBodyProxysqlExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentOKBodyProxysqlExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentOKBodyProxysqlExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentOKBodyProxysqlExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentOKBodyProxysqlExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentOKBodyProxysqlExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddExporterOKBodyProxysqlExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentOKBodyProxysqlExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentOKBodyProxysqlExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddExporterOKBodyProxysqlExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterOkBodyProxysqlExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentOKBodyProxysqlExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyProxysqlExporterTypeLogLevelPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterOKBodyProxysqlExporter) validateLogLevel(formats strfmt.Registry) error { +func (o *AddAgentOKBodyProxysqlExporter) validateLogLevel(formats strfmt.Registry) error { if swag.IsZero(o.LogLevel) { // not required return nil } // value enum - if err := o.validateLogLevelEnum("addExporterOk"+"."+"proxysql_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + if err := o.validateLogLevelEnum("addAgentOk"+"."+"proxysql_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { return err } return nil } -// ContextValidate validates this add exporter OK body proxysql exporter based on context it is used -func (o *AddExporterOKBodyProxysqlExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent OK body proxysql exporter based on context it is used +func (o *AddAgentOKBodyProxysqlExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddExporterOKBodyProxysqlExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentOKBodyProxysqlExporter) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -2433,8 +2433,8 @@ func (o *AddExporterOKBodyProxysqlExporter) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddExporterOKBodyProxysqlExporter) UnmarshalBinary(b []byte) error { - var res AddExporterOKBodyProxysqlExporter +func (o *AddAgentOKBodyProxysqlExporter) UnmarshalBinary(b []byte) error { + var res AddAgentOKBodyProxysqlExporter if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -2443,10 +2443,10 @@ func (o *AddExporterOKBodyProxysqlExporter) UnmarshalBinary(b []byte) error { } /* -AddExporterOKBodyRDSExporter RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node metrics. -swagger:model AddExporterOKBodyRDSExporter +AddAgentOKBodyRDSExporter RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node metrics. +swagger:model AddAgentOKBodyRDSExporter */ -type AddExporterOKBodyRDSExporter struct { +type AddAgentOKBodyRDSExporter struct { // Unique randomly generated instance identifier. AgentID string `json:"agent_id,omitempty"` @@ -2505,8 +2505,8 @@ type AddExporterOKBodyRDSExporter struct { AutoDiscoveryLimit int32 `json:"auto_discovery_limit,omitempty"` } -// Validate validates this add exporter OK body RDS exporter -func (o *AddExporterOKBodyRDSExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent OK body RDS exporter +func (o *AddAgentOKBodyRDSExporter) Validate(formats strfmt.Registry) error { var res []error if err := o.validateStatus(formats); err != nil { @@ -2523,7 +2523,7 @@ func (o *AddExporterOKBodyRDSExporter) Validate(formats strfmt.Registry) error { return nil } -var addExporterOkBodyRdsExporterTypeStatusPropEnum []interface{} +var addAgentOkBodyRdsExporterTypeStatusPropEnum []interface{} func init() { var res []string @@ -2531,56 +2531,56 @@ func init() { panic(err) } for _, v := range res { - addExporterOkBodyRdsExporterTypeStatusPropEnum = append(addExporterOkBodyRdsExporterTypeStatusPropEnum, v) + addAgentOkBodyRdsExporterTypeStatusPropEnum = append(addAgentOkBodyRdsExporterTypeStatusPropEnum, v) } } const ( - // AddExporterOKBodyRDSExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - AddExporterOKBodyRDSExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + // AddAgentOKBodyRDSExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + AddAgentOKBodyRDSExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - // AddExporterOKBodyRDSExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - AddExporterOKBodyRDSExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + // AddAgentOKBodyRDSExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + AddAgentOKBodyRDSExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - // AddExporterOKBodyRDSExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - AddExporterOKBodyRDSExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + // AddAgentOKBodyRDSExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + AddAgentOKBodyRDSExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - // AddExporterOKBodyRDSExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - AddExporterOKBodyRDSExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + // AddAgentOKBodyRDSExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + AddAgentOKBodyRDSExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - // AddExporterOKBodyRDSExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - AddExporterOKBodyRDSExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + // AddAgentOKBodyRDSExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + AddAgentOKBodyRDSExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - // AddExporterOKBodyRDSExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - AddExporterOKBodyRDSExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + // AddAgentOKBodyRDSExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + AddAgentOKBodyRDSExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - // AddExporterOKBodyRDSExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - AddExporterOKBodyRDSExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" + // AddAgentOKBodyRDSExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + AddAgentOKBodyRDSExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" ) // prop value enum -func (o *AddExporterOKBodyRDSExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterOkBodyRdsExporterTypeStatusPropEnum, true); err != nil { +func (o *AddAgentOKBodyRDSExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyRdsExporterTypeStatusPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterOKBodyRDSExporter) validateStatus(formats strfmt.Registry) error { +func (o *AddAgentOKBodyRDSExporter) validateStatus(formats strfmt.Registry) error { if swag.IsZero(o.Status) { // not required return nil } // value enum - if err := o.validateStatusEnum("addExporterOk"+"."+"rds_exporter"+"."+"status", "body", *o.Status); err != nil { + if err := o.validateStatusEnum("addAgentOk"+"."+"rds_exporter"+"."+"status", "body", *o.Status); err != nil { return err } return nil } -var addExporterOkBodyRdsExporterTypeLogLevelPropEnum []interface{} +var addAgentOkBodyRdsExporterTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -2588,59 +2588,59 @@ func init() { panic(err) } for _, v := range res { - addExporterOkBodyRdsExporterTypeLogLevelPropEnum = append(addExporterOkBodyRdsExporterTypeLogLevelPropEnum, v) + addAgentOkBodyRdsExporterTypeLogLevelPropEnum = append(addAgentOkBodyRdsExporterTypeLogLevelPropEnum, v) } } const ( - // AddExporterOKBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddExporterOKBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentOKBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentOKBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddExporterOKBodyRDSExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddExporterOKBodyRDSExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentOKBodyRDSExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentOKBodyRDSExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddExporterOKBodyRDSExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddExporterOKBodyRDSExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentOKBodyRDSExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentOKBodyRDSExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddExporterOKBodyRDSExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddExporterOKBodyRDSExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentOKBodyRDSExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentOKBodyRDSExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddExporterOKBodyRDSExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddExporterOKBodyRDSExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentOKBodyRDSExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentOKBodyRDSExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddExporterOKBodyRDSExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddExporterOKBodyRDSExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentOKBodyRDSExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentOKBodyRDSExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddExporterOKBodyRDSExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterOkBodyRdsExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentOKBodyRDSExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyRdsExporterTypeLogLevelPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterOKBodyRDSExporter) validateLogLevel(formats strfmt.Registry) error { +func (o *AddAgentOKBodyRDSExporter) validateLogLevel(formats strfmt.Registry) error { if swag.IsZero(o.LogLevel) { // not required return nil } // value enum - if err := o.validateLogLevelEnum("addExporterOk"+"."+"rds_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + if err := o.validateLogLevelEnum("addAgentOk"+"."+"rds_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { return err } return nil } -// ContextValidate validates this add exporter OK body RDS exporter based on context it is used -func (o *AddExporterOKBodyRDSExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent OK body RDS exporter based on context it is used +func (o *AddAgentOKBodyRDSExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddExporterOKBodyRDSExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentOKBodyRDSExporter) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -2648,8 +2648,8 @@ func (o *AddExporterOKBodyRDSExporter) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddExporterOKBodyRDSExporter) UnmarshalBinary(b []byte) error { - var res AddExporterOKBodyRDSExporter +func (o *AddAgentOKBodyRDSExporter) UnmarshalBinary(b []byte) error { + var res AddAgentOKBodyRDSExporter if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -2658,10 +2658,10 @@ func (o *AddExporterOKBodyRDSExporter) UnmarshalBinary(b []byte) error { } /* -AddExporterParamsBodyAzureDatabaseExporter add exporter params body azure database exporter -swagger:model AddExporterParamsBodyAzureDatabaseExporter +AddAgentParamsBodyAzureDatabaseExporter add agent params body azure database exporter +swagger:model AddAgentParamsBodyAzureDatabaseExporter */ -type AddExporterParamsBodyAzureDatabaseExporter struct { +type AddAgentParamsBodyAzureDatabaseExporter struct { // The pmm-agent identifier which runs this instance. PMMAgentID string `json:"pmm_agent_id,omitempty"` @@ -2702,8 +2702,8 @@ type AddExporterParamsBodyAzureDatabaseExporter struct { LogLevel *string `json:"log_level,omitempty"` } -// Validate validates this add exporter params body azure database exporter -func (o *AddExporterParamsBodyAzureDatabaseExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent params body azure database exporter +func (o *AddAgentParamsBodyAzureDatabaseExporter) Validate(formats strfmt.Registry) error { var res []error if err := o.validateLogLevel(formats); err != nil { @@ -2716,7 +2716,7 @@ func (o *AddExporterParamsBodyAzureDatabaseExporter) Validate(formats strfmt.Reg return nil } -var addExporterParamsBodyAzureDatabaseExporterTypeLogLevelPropEnum []interface{} +var addAgentParamsBodyAzureDatabaseExporterTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -2724,40 +2724,40 @@ func init() { panic(err) } for _, v := range res { - addExporterParamsBodyAzureDatabaseExporterTypeLogLevelPropEnum = append(addExporterParamsBodyAzureDatabaseExporterTypeLogLevelPropEnum, v) + addAgentParamsBodyAzureDatabaseExporterTypeLogLevelPropEnum = append(addAgentParamsBodyAzureDatabaseExporterTypeLogLevelPropEnum, v) } } const ( - // AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddExporterParamsBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddExporterParamsBodyAzureDatabaseExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterParamsBodyAzureDatabaseExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentParamsBodyAzureDatabaseExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentParamsBodyAzureDatabaseExporterTypeLogLevelPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterParamsBodyAzureDatabaseExporter) validateLogLevel(formats strfmt.Registry) error { +func (o *AddAgentParamsBodyAzureDatabaseExporter) validateLogLevel(formats strfmt.Registry) error { if swag.IsZero(o.LogLevel) { // not required return nil } @@ -2770,13 +2770,13 @@ func (o *AddExporterParamsBodyAzureDatabaseExporter) validateLogLevel(formats st return nil } -// ContextValidate validates this add exporter params body azure database exporter based on context it is used -func (o *AddExporterParamsBodyAzureDatabaseExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent params body azure database exporter based on context it is used +func (o *AddAgentParamsBodyAzureDatabaseExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddExporterParamsBodyAzureDatabaseExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentParamsBodyAzureDatabaseExporter) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -2784,8 +2784,8 @@ func (o *AddExporterParamsBodyAzureDatabaseExporter) MarshalBinary() ([]byte, er } // UnmarshalBinary interface implementation -func (o *AddExporterParamsBodyAzureDatabaseExporter) UnmarshalBinary(b []byte) error { - var res AddExporterParamsBodyAzureDatabaseExporter +func (o *AddAgentParamsBodyAzureDatabaseExporter) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyAzureDatabaseExporter if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -2794,10 +2794,10 @@ func (o *AddExporterParamsBodyAzureDatabaseExporter) UnmarshalBinary(b []byte) e } /* -AddExporterParamsBodyExternalExporter add exporter params body external exporter -swagger:model AddExporterParamsBodyExternalExporter +AddAgentParamsBodyExternalExporter add agent params body external exporter +swagger:model AddAgentParamsBodyExternalExporter */ -type AddExporterParamsBodyExternalExporter struct { +type AddAgentParamsBodyExternalExporter struct { // The node identifier where this instance is run. RunsOnNodeID string `json:"runs_on_node_id,omitempty"` @@ -2826,18 +2826,18 @@ type AddExporterParamsBodyExternalExporter struct { PushMetrics bool `json:"push_metrics,omitempty"` } -// Validate validates this add exporter params body external exporter -func (o *AddExporterParamsBodyExternalExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent params body external exporter +func (o *AddAgentParamsBodyExternalExporter) Validate(formats strfmt.Registry) error { return nil } -// ContextValidate validates this add exporter params body external exporter based on context it is used -func (o *AddExporterParamsBodyExternalExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent params body external exporter based on context it is used +func (o *AddAgentParamsBodyExternalExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddExporterParamsBodyExternalExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentParamsBodyExternalExporter) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -2845,8 +2845,8 @@ func (o *AddExporterParamsBodyExternalExporter) MarshalBinary() ([]byte, error) } // UnmarshalBinary interface implementation -func (o *AddExporterParamsBodyExternalExporter) UnmarshalBinary(b []byte) error { - var res AddExporterParamsBodyExternalExporter +func (o *AddAgentParamsBodyExternalExporter) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyExternalExporter if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -2855,10 +2855,10 @@ func (o *AddExporterParamsBodyExternalExporter) UnmarshalBinary(b []byte) error } /* -AddExporterParamsBodyMongodbExporter add exporter params body mongodb exporter -swagger:model AddExporterParamsBodyMongodbExporter +AddAgentParamsBodyMongodbExporter add agent params body mongodb exporter +swagger:model AddAgentParamsBodyMongodbExporter */ -type AddExporterParamsBodyMongodbExporter struct { +type AddAgentParamsBodyMongodbExporter struct { // The pmm-agent identifier which runs this instance. PMMAgentID string `json:"pmm_agent_id,omitempty"` @@ -2926,8 +2926,8 @@ type AddExporterParamsBodyMongodbExporter struct { ExposeExporter bool `json:"expose_exporter,omitempty"` } -// Validate validates this add exporter params body mongodb exporter -func (o *AddExporterParamsBodyMongodbExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent params body mongodb exporter +func (o *AddAgentParamsBodyMongodbExporter) Validate(formats strfmt.Registry) error { var res []error if err := o.validateLogLevel(formats); err != nil { @@ -2940,7 +2940,7 @@ func (o *AddExporterParamsBodyMongodbExporter) Validate(formats strfmt.Registry) return nil } -var addExporterParamsBodyMongodbExporterTypeLogLevelPropEnum []interface{} +var addAgentParamsBodyMongodbExporterTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -2948,40 +2948,40 @@ func init() { panic(err) } for _, v := range res { - addExporterParamsBodyMongodbExporterTypeLogLevelPropEnum = append(addExporterParamsBodyMongodbExporterTypeLogLevelPropEnum, v) + addAgentParamsBodyMongodbExporterTypeLogLevelPropEnum = append(addAgentParamsBodyMongodbExporterTypeLogLevelPropEnum, v) } } const ( - // AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddExporterParamsBodyMongodbExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddExporterParamsBodyMongodbExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterParamsBodyMongodbExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentParamsBodyMongodbExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentParamsBodyMongodbExporterTypeLogLevelPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterParamsBodyMongodbExporter) validateLogLevel(formats strfmt.Registry) error { +func (o *AddAgentParamsBodyMongodbExporter) validateLogLevel(formats strfmt.Registry) error { if swag.IsZero(o.LogLevel) { // not required return nil } @@ -2994,13 +2994,13 @@ func (o *AddExporterParamsBodyMongodbExporter) validateLogLevel(formats strfmt.R return nil } -// ContextValidate validates this add exporter params body mongodb exporter based on context it is used -func (o *AddExporterParamsBodyMongodbExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent params body mongodb exporter based on context it is used +func (o *AddAgentParamsBodyMongodbExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddExporterParamsBodyMongodbExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentParamsBodyMongodbExporter) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -3008,8 +3008,8 @@ func (o *AddExporterParamsBodyMongodbExporter) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddExporterParamsBodyMongodbExporter) UnmarshalBinary(b []byte) error { - var res AddExporterParamsBodyMongodbExporter +func (o *AddAgentParamsBodyMongodbExporter) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyMongodbExporter if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -3018,10 +3018,10 @@ func (o *AddExporterParamsBodyMongodbExporter) UnmarshalBinary(b []byte) error { } /* -AddExporterParamsBodyMysqldExporter add exporter params body mysqld exporter -swagger:model AddExporterParamsBodyMysqldExporter +AddAgentParamsBodyMysqldExporter add agent params body mysqld exporter +swagger:model AddAgentParamsBodyMysqldExporter */ -type AddExporterParamsBodyMysqldExporter struct { +type AddAgentParamsBodyMysqldExporter struct { // The pmm-agent identifier which runs this instance. PMMAgentID string `json:"pmm_agent_id,omitempty"` @@ -3079,8 +3079,8 @@ type AddExporterParamsBodyMysqldExporter struct { ExposeExporter bool `json:"expose_exporter,omitempty"` } -// Validate validates this add exporter params body mysqld exporter -func (o *AddExporterParamsBodyMysqldExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent params body mysqld exporter +func (o *AddAgentParamsBodyMysqldExporter) Validate(formats strfmt.Registry) error { var res []error if err := o.validateLogLevel(formats); err != nil { @@ -3093,7 +3093,7 @@ func (o *AddExporterParamsBodyMysqldExporter) Validate(formats strfmt.Registry) return nil } -var addExporterParamsBodyMysqldExporterTypeLogLevelPropEnum []interface{} +var addAgentParamsBodyMysqldExporterTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -3101,40 +3101,40 @@ func init() { panic(err) } for _, v := range res { - addExporterParamsBodyMysqldExporterTypeLogLevelPropEnum = append(addExporterParamsBodyMysqldExporterTypeLogLevelPropEnum, v) + addAgentParamsBodyMysqldExporterTypeLogLevelPropEnum = append(addAgentParamsBodyMysqldExporterTypeLogLevelPropEnum, v) } } const ( - // AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddExporterParamsBodyMysqldExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddExporterParamsBodyMysqldExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterParamsBodyMysqldExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentParamsBodyMysqldExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentParamsBodyMysqldExporterTypeLogLevelPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterParamsBodyMysqldExporter) validateLogLevel(formats strfmt.Registry) error { +func (o *AddAgentParamsBodyMysqldExporter) validateLogLevel(formats strfmt.Registry) error { if swag.IsZero(o.LogLevel) { // not required return nil } @@ -3147,13 +3147,13 @@ func (o *AddExporterParamsBodyMysqldExporter) validateLogLevel(formats strfmt.Re return nil } -// ContextValidate validates this add exporter params body mysqld exporter based on context it is used -func (o *AddExporterParamsBodyMysqldExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent params body mysqld exporter based on context it is used +func (o *AddAgentParamsBodyMysqldExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddExporterParamsBodyMysqldExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentParamsBodyMysqldExporter) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -3161,8 +3161,8 @@ func (o *AddExporterParamsBodyMysqldExporter) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddExporterParamsBodyMysqldExporter) UnmarshalBinary(b []byte) error { - var res AddExporterParamsBodyMysqldExporter +func (o *AddAgentParamsBodyMysqldExporter) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyMysqldExporter if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -3171,10 +3171,10 @@ func (o *AddExporterParamsBodyMysqldExporter) UnmarshalBinary(b []byte) error { } /* -AddExporterParamsBodyNodeExporter add exporter params body node exporter -swagger:model AddExporterParamsBodyNodeExporter +AddAgentParamsBodyNodeExporter add agent params body node exporter +swagger:model AddAgentParamsBodyNodeExporter */ -type AddExporterParamsBodyNodeExporter struct { +type AddAgentParamsBodyNodeExporter struct { // The pmm-agent identifier which runs this instance. PMMAgentID string `json:"pmm_agent_id,omitempty"` @@ -3197,8 +3197,8 @@ type AddExporterParamsBodyNodeExporter struct { ExposeExporter bool `json:"expose_exporter,omitempty"` } -// Validate validates this add exporter params body node exporter -func (o *AddExporterParamsBodyNodeExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent params body node exporter +func (o *AddAgentParamsBodyNodeExporter) Validate(formats strfmt.Registry) error { var res []error if err := o.validateLogLevel(formats); err != nil { @@ -3211,7 +3211,7 @@ func (o *AddExporterParamsBodyNodeExporter) Validate(formats strfmt.Registry) er return nil } -var addExporterParamsBodyNodeExporterTypeLogLevelPropEnum []interface{} +var addAgentParamsBodyNodeExporterTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -3219,40 +3219,40 @@ func init() { panic(err) } for _, v := range res { - addExporterParamsBodyNodeExporterTypeLogLevelPropEnum = append(addExporterParamsBodyNodeExporterTypeLogLevelPropEnum, v) + addAgentParamsBodyNodeExporterTypeLogLevelPropEnum = append(addAgentParamsBodyNodeExporterTypeLogLevelPropEnum, v) } } const ( - // AddExporterParamsBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddExporterParamsBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentParamsBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentParamsBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddExporterParamsBodyNodeExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddExporterParamsBodyNodeExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentParamsBodyNodeExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentParamsBodyNodeExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddExporterParamsBodyNodeExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddExporterParamsBodyNodeExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentParamsBodyNodeExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentParamsBodyNodeExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddExporterParamsBodyNodeExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddExporterParamsBodyNodeExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentParamsBodyNodeExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentParamsBodyNodeExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddExporterParamsBodyNodeExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddExporterParamsBodyNodeExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentParamsBodyNodeExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentParamsBodyNodeExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddExporterParamsBodyNodeExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddExporterParamsBodyNodeExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentParamsBodyNodeExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentParamsBodyNodeExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddExporterParamsBodyNodeExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterParamsBodyNodeExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentParamsBodyNodeExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentParamsBodyNodeExporterTypeLogLevelPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterParamsBodyNodeExporter) validateLogLevel(formats strfmt.Registry) error { +func (o *AddAgentParamsBodyNodeExporter) validateLogLevel(formats strfmt.Registry) error { if swag.IsZero(o.LogLevel) { // not required return nil } @@ -3265,13 +3265,13 @@ func (o *AddExporterParamsBodyNodeExporter) validateLogLevel(formats strfmt.Regi return nil } -// ContextValidate validates this add exporter params body node exporter based on context it is used -func (o *AddExporterParamsBodyNodeExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent params body node exporter based on context it is used +func (o *AddAgentParamsBodyNodeExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddExporterParamsBodyNodeExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentParamsBodyNodeExporter) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -3279,8 +3279,8 @@ func (o *AddExporterParamsBodyNodeExporter) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddExporterParamsBodyNodeExporter) UnmarshalBinary(b []byte) error { - var res AddExporterParamsBodyNodeExporter +func (o *AddAgentParamsBodyNodeExporter) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyNodeExporter if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -3289,10 +3289,10 @@ func (o *AddExporterParamsBodyNodeExporter) UnmarshalBinary(b []byte) error { } /* -AddExporterParamsBodyPostgresExporter add exporter params body postgres exporter -swagger:model AddExporterParamsBodyPostgresExporter +AddAgentParamsBodyPostgresExporter add agent params body postgres exporter +swagger:model AddAgentParamsBodyPostgresExporter */ -type AddExporterParamsBodyPostgresExporter struct { +type AddAgentParamsBodyPostgresExporter struct { // The pmm-agent identifier which runs this instance. PMMAgentID string `json:"pmm_agent_id,omitempty"` @@ -3348,8 +3348,8 @@ type AddExporterParamsBodyPostgresExporter struct { ExposeExporter bool `json:"expose_exporter,omitempty"` } -// Validate validates this add exporter params body postgres exporter -func (o *AddExporterParamsBodyPostgresExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent params body postgres exporter +func (o *AddAgentParamsBodyPostgresExporter) Validate(formats strfmt.Registry) error { var res []error if err := o.validateLogLevel(formats); err != nil { @@ -3362,7 +3362,7 @@ func (o *AddExporterParamsBodyPostgresExporter) Validate(formats strfmt.Registry return nil } -var addExporterParamsBodyPostgresExporterTypeLogLevelPropEnum []interface{} +var addAgentParamsBodyPostgresExporterTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -3370,40 +3370,40 @@ func init() { panic(err) } for _, v := range res { - addExporterParamsBodyPostgresExporterTypeLogLevelPropEnum = append(addExporterParamsBodyPostgresExporterTypeLogLevelPropEnum, v) + addAgentParamsBodyPostgresExporterTypeLogLevelPropEnum = append(addAgentParamsBodyPostgresExporterTypeLogLevelPropEnum, v) } } const ( - // AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddExporterParamsBodyPostgresExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddExporterParamsBodyPostgresExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterParamsBodyPostgresExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentParamsBodyPostgresExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentParamsBodyPostgresExporterTypeLogLevelPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterParamsBodyPostgresExporter) validateLogLevel(formats strfmt.Registry) error { +func (o *AddAgentParamsBodyPostgresExporter) validateLogLevel(formats strfmt.Registry) error { if swag.IsZero(o.LogLevel) { // not required return nil } @@ -3416,13 +3416,13 @@ func (o *AddExporterParamsBodyPostgresExporter) validateLogLevel(formats strfmt. return nil } -// ContextValidate validates this add exporter params body postgres exporter based on context it is used -func (o *AddExporterParamsBodyPostgresExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent params body postgres exporter based on context it is used +func (o *AddAgentParamsBodyPostgresExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddExporterParamsBodyPostgresExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentParamsBodyPostgresExporter) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -3430,8 +3430,8 @@ func (o *AddExporterParamsBodyPostgresExporter) MarshalBinary() ([]byte, error) } // UnmarshalBinary interface implementation -func (o *AddExporterParamsBodyPostgresExporter) UnmarshalBinary(b []byte) error { - var res AddExporterParamsBodyPostgresExporter +func (o *AddAgentParamsBodyPostgresExporter) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyPostgresExporter if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -3440,10 +3440,10 @@ func (o *AddExporterParamsBodyPostgresExporter) UnmarshalBinary(b []byte) error } /* -AddExporterParamsBodyProxysqlExporter add exporter params body proxysql exporter -swagger:model AddExporterParamsBodyProxysqlExporter +AddAgentParamsBodyProxysqlExporter add agent params body proxysql exporter +swagger:model AddAgentParamsBodyProxysqlExporter */ -type AddExporterParamsBodyProxysqlExporter struct { +type AddAgentParamsBodyProxysqlExporter struct { // The pmm-agent identifier which runs this instance. PMMAgentID string `json:"pmm_agent_id,omitempty"` @@ -3487,8 +3487,8 @@ type AddExporterParamsBodyProxysqlExporter struct { ExposeExporter bool `json:"expose_exporter,omitempty"` } -// Validate validates this add exporter params body proxysql exporter -func (o *AddExporterParamsBodyProxysqlExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent params body proxysql exporter +func (o *AddAgentParamsBodyProxysqlExporter) Validate(formats strfmt.Registry) error { var res []error if err := o.validateLogLevel(formats); err != nil { @@ -3501,7 +3501,7 @@ func (o *AddExporterParamsBodyProxysqlExporter) Validate(formats strfmt.Registry return nil } -var addExporterParamsBodyProxysqlExporterTypeLogLevelPropEnum []interface{} +var addAgentParamsBodyProxysqlExporterTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -3509,40 +3509,40 @@ func init() { panic(err) } for _, v := range res { - addExporterParamsBodyProxysqlExporterTypeLogLevelPropEnum = append(addExporterParamsBodyProxysqlExporterTypeLogLevelPropEnum, v) + addAgentParamsBodyProxysqlExporterTypeLogLevelPropEnum = append(addAgentParamsBodyProxysqlExporterTypeLogLevelPropEnum, v) } } const ( - // AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddExporterParamsBodyProxysqlExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddExporterParamsBodyProxysqlExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterParamsBodyProxysqlExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentParamsBodyProxysqlExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentParamsBodyProxysqlExporterTypeLogLevelPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterParamsBodyProxysqlExporter) validateLogLevel(formats strfmt.Registry) error { +func (o *AddAgentParamsBodyProxysqlExporter) validateLogLevel(formats strfmt.Registry) error { if swag.IsZero(o.LogLevel) { // not required return nil } @@ -3555,13 +3555,13 @@ func (o *AddExporterParamsBodyProxysqlExporter) validateLogLevel(formats strfmt. return nil } -// ContextValidate validates this add exporter params body proxysql exporter based on context it is used -func (o *AddExporterParamsBodyProxysqlExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent params body proxysql exporter based on context it is used +func (o *AddAgentParamsBodyProxysqlExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddExporterParamsBodyProxysqlExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentParamsBodyProxysqlExporter) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -3569,8 +3569,8 @@ func (o *AddExporterParamsBodyProxysqlExporter) MarshalBinary() ([]byte, error) } // UnmarshalBinary interface implementation -func (o *AddExporterParamsBodyProxysqlExporter) UnmarshalBinary(b []byte) error { - var res AddExporterParamsBodyProxysqlExporter +func (o *AddAgentParamsBodyProxysqlExporter) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyProxysqlExporter if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -3579,10 +3579,10 @@ func (o *AddExporterParamsBodyProxysqlExporter) UnmarshalBinary(b []byte) error } /* -AddExporterParamsBodyRDSExporter add exporter params body RDS exporter -swagger:model AddExporterParamsBodyRDSExporter +AddAgentParamsBodyRDSExporter add agent params body RDS exporter +swagger:model AddAgentParamsBodyRDSExporter */ -type AddExporterParamsBodyRDSExporter struct { +type AddAgentParamsBodyRDSExporter struct { // The pmm-agent identifier which runs this instance. PMMAgentID string `json:"pmm_agent_id,omitempty"` @@ -3617,8 +3617,8 @@ type AddExporterParamsBodyRDSExporter struct { LogLevel *string `json:"log_level,omitempty"` } -// Validate validates this add exporter params body RDS exporter -func (o *AddExporterParamsBodyRDSExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent params body RDS exporter +func (o *AddAgentParamsBodyRDSExporter) Validate(formats strfmt.Registry) error { var res []error if err := o.validateLogLevel(formats); err != nil { @@ -3631,7 +3631,7 @@ func (o *AddExporterParamsBodyRDSExporter) Validate(formats strfmt.Registry) err return nil } -var addExporterParamsBodyRdsExporterTypeLogLevelPropEnum []interface{} +var addAgentParamsBodyRdsExporterTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -3639,40 +3639,40 @@ func init() { panic(err) } for _, v := range res { - addExporterParamsBodyRdsExporterTypeLogLevelPropEnum = append(addExporterParamsBodyRdsExporterTypeLogLevelPropEnum, v) + addAgentParamsBodyRdsExporterTypeLogLevelPropEnum = append(addAgentParamsBodyRdsExporterTypeLogLevelPropEnum, v) } } const ( - // AddExporterParamsBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddExporterParamsBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentParamsBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentParamsBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddExporterParamsBodyRDSExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddExporterParamsBodyRDSExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentParamsBodyRDSExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentParamsBodyRDSExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddExporterParamsBodyRDSExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddExporterParamsBodyRDSExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentParamsBodyRDSExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentParamsBodyRDSExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddExporterParamsBodyRDSExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddExporterParamsBodyRDSExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentParamsBodyRDSExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentParamsBodyRDSExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddExporterParamsBodyRDSExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddExporterParamsBodyRDSExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentParamsBodyRDSExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentParamsBodyRDSExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddExporterParamsBodyRDSExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddExporterParamsBodyRDSExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentParamsBodyRDSExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentParamsBodyRDSExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddExporterParamsBodyRDSExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addExporterParamsBodyRdsExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentParamsBodyRDSExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentParamsBodyRdsExporterTypeLogLevelPropEnum, true); err != nil { return err } return nil } -func (o *AddExporterParamsBodyRDSExporter) validateLogLevel(formats strfmt.Registry) error { +func (o *AddAgentParamsBodyRDSExporter) validateLogLevel(formats strfmt.Registry) error { if swag.IsZero(o.LogLevel) { // not required return nil } @@ -3685,13 +3685,13 @@ func (o *AddExporterParamsBodyRDSExporter) validateLogLevel(formats strfmt.Regis return nil } -// ContextValidate validates this add exporter params body RDS exporter based on context it is used -func (o *AddExporterParamsBodyRDSExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent params body RDS exporter based on context it is used +func (o *AddAgentParamsBodyRDSExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddExporterParamsBodyRDSExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentParamsBodyRDSExporter) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -3699,8 +3699,8 @@ func (o *AddExporterParamsBodyRDSExporter) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddExporterParamsBodyRDSExporter) UnmarshalBinary(b []byte) error { - var res AddExporterParamsBodyRDSExporter +func (o *AddAgentParamsBodyRDSExporter) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyRDSExporter if err := swag.ReadJSON(b, &res); err != nil { return err } diff --git a/api/inventory/v1/json/client/agents_service/add_exporter_parameters.go b/api/inventory/v1/json/client/agents_service/add_exporter_parameters.go deleted file mode 100644 index fabb743dbc..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_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" -) - -// NewAddExporterParams creates a new AddExporterParams 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 NewAddExporterParams() *AddExporterParams { - return &AddExporterParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewAddExporterParamsWithTimeout creates a new AddExporterParams object -// with the ability to set a timeout on a request. -func NewAddExporterParamsWithTimeout(timeout time.Duration) *AddExporterParams { - return &AddExporterParams{ - timeout: timeout, - } -} - -// NewAddExporterParamsWithContext creates a new AddExporterParams object -// with the ability to set a context for a request. -func NewAddExporterParamsWithContext(ctx context.Context) *AddExporterParams { - return &AddExporterParams{ - Context: ctx, - } -} - -// NewAddExporterParamsWithHTTPClient creates a new AddExporterParams object -// with the ability to set a custom HTTPClient for a request. -func NewAddExporterParamsWithHTTPClient(client *http.Client) *AddExporterParams { - return &AddExporterParams{ - HTTPClient: client, - } -} - -/* -AddExporterParams contains all the parameters to send to the API endpoint - - for the add exporter operation. - - Typically these are written to a http.Request. -*/ -type AddExporterParams struct { - // Body. - Body AddExporterBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the add exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddExporterParams) WithDefaults() *AddExporterParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the add exporter params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddExporterParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the add exporter params -func (o *AddExporterParams) WithTimeout(timeout time.Duration) *AddExporterParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the add exporter params -func (o *AddExporterParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the add exporter params -func (o *AddExporterParams) WithContext(ctx context.Context) *AddExporterParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the add exporter params -func (o *AddExporterParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the add exporter params -func (o *AddExporterParams) WithHTTPClient(client *http.Client) *AddExporterParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the add exporter params -func (o *AddExporterParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the add exporter params -func (o *AddExporterParams) WithBody(body AddExporterBody) *AddExporterParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the add exporter params -func (o *AddExporterParams) SetBody(body AddExporterBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *AddExporterParams) 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/agents_service_client.go b/api/inventory/v1/json/client/agents_service/agents_service_client.go index cdc8221c8b..3c3b44ed8f 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 @@ -28,7 +28,7 @@ type ClientOption func(*runtime.ClientOperation) // ClientService is the interface for Client methods type ClientService interface { - AddExporter(params *AddExporterParams, opts ...ClientOption) (*AddExporterOK, error) + AddAgent(params *AddAgentParams, opts ...ClientOption) (*AddAgentOK, error) AddPMMAgent(params *AddPMMAgentParams, opts ...ClientOption) (*AddPMMAgentOK, error) @@ -80,24 +80,24 @@ type ClientService interface { } /* -AddExporter adds an exporter +AddAgent adds an agent -Adds an Exporter Agent. +Adds an Agent. */ -func (a *Client) AddExporter(params *AddExporterParams, opts ...ClientOption) (*AddExporterOK, error) { +func (a *Client) AddAgent(params *AddAgentParams, opts ...ClientOption) (*AddAgentOK, error) { // TODO: Validate the params before sending if params == nil { - params = NewAddExporterParams() + params = NewAddAgentParams() } op := &runtime.ClientOperation{ - ID: "AddExporter", + ID: "AddAgent", Method: "POST", - PathPattern: "/v1/inventory/Agents/AddExporter", + PathPattern: "/v1/inventory/Agents/AddAgent", ProducesMediaTypes: []string{"application/json"}, ConsumesMediaTypes: []string{"application/json"}, Schemes: []string{"http", "https"}, Params: params, - Reader: &AddExporterReader{formats: a.formats}, + Reader: &AddAgentReader{formats: a.formats}, Context: params.Context, Client: params.HTTPClient, } @@ -109,12 +109,12 @@ func (a *Client) AddExporter(params *AddExporterParams, opts ...ClientOption) (* if err != nil { return nil, err } - success, ok := result.(*AddExporterOK) + success, ok := result.(*AddAgentOK) if ok { return success, nil } // unexpected success response - unexpectedSuccess := result.(*AddExporterDefault) + unexpectedSuccess := result.(*AddAgentDefault) return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) } diff --git a/api/inventory/v1/json/v1.json b/api/inventory/v1/json/v1.json index 85dbd06dcf..0cda14b78d 100644 --- a/api/inventory/v1/json/v1.json +++ b/api/inventory/v1/json/v1.json @@ -15,14 +15,14 @@ "version": "v1" }, "paths": { - "/v1/inventory/Agents/AddExporter": { + "/v1/inventory/Agents/AddAgent": { "post": { - "description": "Adds an Exporter Agent.", + "description": "Adds an Agent.", "tags": [ "AgentsService" ], - "summary": "Add an Exporter", - "operationId": "AddExporter", + "summary": "Add an Agent", + "operationId": "AddAgent", "parameters": [ { "name": "body", diff --git a/api/swagger/swagger-dev.json b/api/swagger/swagger-dev.json index a4d464ebd0..abce5cc5e0 100644 --- a/api/swagger/swagger-dev.json +++ b/api/swagger/swagger-dev.json @@ -3811,14 +3811,14 @@ } } }, - "/v1/inventory/Agents/AddExporter": { + "/v1/inventory/Agents/AddAgent": { "post": { - "description": "Adds an Exporter Agent.", + "description": "Adds an Agent.", "tags": [ "AgentsService" ], - "summary": "Add an Exporter", - "operationId": "AddExporter", + "summary": "Add an Agent", + "operationId": "AddAgent", "parameters": [ { "name": "body", diff --git a/descriptor.bin b/descriptor.bin index 55c9dcc1fbb819dc27c91b9178447e6768dcc069..a00eed396a2ef4733ed12e30bd632e7a44193b7e 100644 GIT binary patch delta 337 zcmdmYUTeyEt%erHElf>!SXSO;<(l5;%_6mZ!5yYkCOjuux%eGZQXJD$^Gdc?3NjyH z;#thfB>)%l5Ml1OWcsGN{iZMTN+$U!j9eTrIU!lS%)Bz7zWky}y)r{Rp!oFle#|mP zFa<%W#Rd6!#i>f3lN{xQc!0tRiFpcOtEBjVyka;cL+1y z-2O6!`9VIT`1Vs*m<5>_CAQzW#{4rS!HA26je&_ph;0oQ(^f8KDJ2D%l?sUvV=EO( zDhpB-^3x#J>2Y!Kah&Am#vK L&h3siT(#K%Gu&eh delta 420 zcmbPoUTfcZt%erHElf>!ST5gX<(fVrghOikf;&v7O!&{RatS%6q_|cT(i*qv@On+I zbhQsG{M$sCFIq75>21I4%e<0Fa1A3DHXqI8dM%S!B9r0J9bcOn$piAoC7k#;4m)r!YUrXO!B$<_fbQ6QlI@ zeb<79eH?Vm2UV Q2VxE&=G?Aj! Date: Tue, 26 Dec 2023 11:40:20 +0000 Subject: [PATCH 06/10] PMM-12624 add Agents to refactoring --- .../commands/inventory/add_agent_pmm_agent.go | 14 +- .../add_agent_qan_mongodb_profiler_agent.go | 38 +- .../add_agent_qan_mysql_perfschema_agent.go | 40 +- .../add_agent_qan_mysql_slowlog_agent.go | 42 +- ...d_agent_qan_postgres_pgstatements_agent.go | 40 +- ..._agent_qan_postgres_pgstatmonitor_agent.go | 42 +- api-tests/helpers.go | 10 +- api-tests/inventory/agents_test.go | 668 +-- api/agent/v1/agent.pb.go | 2 +- api/agent/v1/collector.pb.go | 2 +- api/agentlocal/v1/agentlocal.pb.go | 2 +- api/inventory/v1/agent_status.pb.go | 2 +- api/inventory/v1/agents.pb.go | 4184 ++++++++--------- api/inventory/v1/agents.pb.gw.go | 486 -- api/inventory/v1/agents.pb.validate.go | 1849 +++----- api/inventory/v1/agents.proto | 156 +- api/inventory/v1/agents_grpc.pb.go | 240 - .../agents_service/add_agent_responses.go | 3171 +++++++++++-- .../add_pmm_agent_parameters.go | 144 - .../agents_service/add_pmm_agent_responses.go | 440 -- ..._qan_mongo_db_profiler_agent_parameters.go | 144 - ...d_qan_mongo_db_profiler_agent_responses.go | 708 --- ...qan_my_sql_perf_schema_agent_parameters.go | 144 - ..._qan_my_sql_perf_schema_agent_responses.go | 718 --- ...add_qan_my_sql_slowlog_agent_parameters.go | 144 - .../add_qan_my_sql_slowlog_agent_responses.go | 725 --- ...re_sql_pg_stat_monitor_agent_parameters.go | 144 - ...gre_sql_pg_stat_monitor_agent_responses.go | 709 --- ...tgre_sql_pg_statements_agent_parameters.go | 144 - ...stgre_sql_pg_statements_agent_responses.go | 703 --- .../agents_service/agents_service_client.go | 246 - api/inventory/v1/json/v1.json | 1964 ++++---- api/inventory/v1/log_level.pb.go | 2 +- api/inventory/v1/nodes.pb.go | 2 +- api/inventory/v1/services.pb.go | 2 +- api/management/v1/actions.pb.go | 2 +- api/management/v1/agent/agent.pb.go | 2 +- api/management/v1/alerting/alerting.pb.go | 2 +- api/management/v1/alerting/params.pb.go | 2 +- api/management/v1/annotation.pb.go | 2 +- api/management/v1/azure/azure.pb.go | 2 +- api/management/v1/backup/artifacts.pb.go | 2 +- api/management/v1/backup/backups.pb.go | 2 +- api/management/v1/backup/common.pb.go | 2 +- api/management/v1/backup/errors.pb.go | 2 +- api/management/v1/backup/locations.pb.go | 2 +- api/management/v1/backup/restores.pb.go | 2 +- api/management/v1/boolean_flag.pb.go | 2 +- api/management/v1/checks.pb.go | 2 +- api/management/v1/dump/dump.pb.go | 2 +- api/management/v1/external.pb.go | 2 +- api/management/v1/haproxy.pb.go | 2 +- api/management/v1/metrics.pb.go | 2 +- api/management/v1/mongodb.pb.go | 2 +- api/management/v1/mysql.pb.go | 2 +- api/management/v1/node.pb.go | 2 +- api/management/v1/node/node.pb.go | 2 +- api/management/v1/pagination.pb.go | 2 +- api/management/v1/postgresql.pb.go | 2 +- api/management/v1/proxysql.pb.go | 2 +- api/management/v1/rds.pb.go | 2 +- api/management/v1/role/role.pb.go | 2 +- api/management/v1/service.pb.go | 2 +- api/management/v1/service/service.pb.go | 2 +- api/management/v1/severity.pb.go | 2 +- api/platform/v1/platform.pb.go | 2 +- api/qan/v1beta1/collector.pb.go | 2 +- api/qan/v1beta1/filters.pb.go | 2 +- api/qan/v1beta1/metrics_names.pb.go | 2 +- api/qan/v1beta1/object_details.pb.go | 2 +- api/qan/v1beta1/profile.pb.go | 2 +- api/qan/v1beta1/qan.pb.go | 2 +- api/server/v1/httperror.pb.go | 2 +- api/server/v1/server.pb.go | 2 +- api/swagger/swagger-dev.json | 2342 ++++----- api/uievents/v1/server.pb.go | 2 +- api/user/v1/user.pb.go | 2 +- descriptor.bin | Bin 698260 -> 696786 bytes managed/services/inventory/agents.go | 132 +- managed/services/inventory/agents_test.go | 18 +- .../services/inventory/grpc/agents_server.go | 58 +- 81 files changed, 8036 insertions(+), 12667 deletions(-) delete mode 100644 api/inventory/v1/json/client/agents_service/add_pmm_agent_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_pmm_agent_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_qan_mongo_db_profiler_agent_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_qan_mongo_db_profiler_agent_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_qan_my_sql_perf_schema_agent_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_qan_my_sql_perf_schema_agent_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_qan_my_sql_slowlog_agent_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_qan_my_sql_slowlog_agent_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_qan_postgre_sql_pg_stat_monitor_agent_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_qan_postgre_sql_pg_stat_monitor_agent_responses.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_qan_postgre_sql_pg_statements_agent_parameters.go delete mode 100644 api/inventory/v1/json/client/agents_service/add_qan_postgre_sql_pg_statements_agent_responses.go diff --git a/admin/commands/inventory/add_agent_pmm_agent.go b/admin/commands/inventory/add_agent_pmm_agent.go index 00c48fc585..ff4a75d10b 100644 --- a/admin/commands/inventory/add_agent_pmm_agent.go +++ b/admin/commands/inventory/add_agent_pmm_agent.go @@ -29,7 +29,7 @@ Custom labels : {{ .Agent.CustomLabels }} `) type addPMMAgentResult struct { - Agent *agents.AddPMMAgentOKBodyPMMAgent `json:"pmm_agent"` + Agent *agents.AddAgentOKBodyPMMAgent `json:"pmm_agent"` } func (res *addPMMAgentResult) Result() {} @@ -46,15 +46,17 @@ type AddPMMAgentCommand struct { func (cmd *AddPMMAgentCommand) RunCmd() (commands.Result, error) { customLabels := commands.ParseCustomLabels(cmd.CustomLabels) - params := &agents.AddPMMAgentParams{ - Body: agents.AddPMMAgentBody{ - RunsOnNodeID: cmd.RunsOnNodeID, - CustomLabels: customLabels, + params := &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + PMMAgent: &agents.AddAgentParamsBodyPMMAgent{ + RunsOnNodeID: cmd.RunsOnNodeID, + CustomLabels: customLabels, + }, }, Context: commands.Ctx, } - resp, err := client.Default.AgentsService.AddPMMAgent(params) + resp, err := client.Default.AgentsService.AddAgent(params) if err != nil { return nil, err } diff --git a/admin/commands/inventory/add_agent_qan_mongodb_profiler_agent.go b/admin/commands/inventory/add_agent_qan_mongodb_profiler_agent.go index 8d6a240835..bcba5478a7 100644 --- a/admin/commands/inventory/add_agent_qan_mongodb_profiler_agent.go +++ b/admin/commands/inventory/add_agent_qan_mongodb_profiler_agent.go @@ -35,7 +35,7 @@ Custom labels : {{ .Agent.CustomLabels }} `) type addAgentQANMongoDBProfilerAgentResult struct { - Agent *agents.AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent `json:"qan_mongodb_profiler_agent"` + Agent *agents.AddAgentOKBodyQANMongodbProfilerAgent `json:"qan_mongodb_profiler_agent"` } func (res *addAgentQANMongoDBProfilerAgentResult) Result() {} @@ -77,27 +77,29 @@ func (cmd *AddAgentQANMongoDBProfilerAgentCommand) RunCmd() (commands.Result, er return nil, err } - params := &agents.AddQANMongoDBProfilerAgentParams{ - Body: agents.AddQANMongoDBProfilerAgentBody{ - PMMAgentID: cmd.PMMAgentID, - ServiceID: cmd.ServiceID, - Username: cmd.Username, - Password: cmd.Password, - CustomLabels: customLabels, - SkipConnectionCheck: cmd.SkipConnectionCheck, - MaxQueryLength: cmd.MaxQueryLength, - TLS: cmd.TLS, - TLSSkipVerify: cmd.TLSSkipVerify, - TLSCertificateKey: tlsCertificateKey, - TLSCertificateKeyFilePassword: cmd.TLSCertificateKeyFilePassword, - TLSCa: tlsCa, - AuthenticationMechanism: cmd.AuthenticationMechanism, - LogLevel: &cmd.LogLevel, + params := &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANMongodbProfilerAgent: &agents.AddAgentParamsBodyQANMongodbProfilerAgent{ + PMMAgentID: cmd.PMMAgentID, + ServiceID: cmd.ServiceID, + Username: cmd.Username, + Password: cmd.Password, + CustomLabels: customLabels, + SkipConnectionCheck: cmd.SkipConnectionCheck, + MaxQueryLength: cmd.MaxQueryLength, + TLS: cmd.TLS, + TLSSkipVerify: cmd.TLSSkipVerify, + TLSCertificateKey: tlsCertificateKey, + TLSCertificateKeyFilePassword: cmd.TLSCertificateKeyFilePassword, + TLSCa: tlsCa, + AuthenticationMechanism: cmd.AuthenticationMechanism, + LogLevel: &cmd.LogLevel, + }, }, Context: commands.Ctx, } - resp, err := client.Default.AgentsService.AddQANMongoDBProfilerAgent(params) + resp, err := client.Default.AgentsService.AddAgent(params) if err != nil { return nil, err } diff --git a/admin/commands/inventory/add_agent_qan_mysql_perfschema_agent.go b/admin/commands/inventory/add_agent_qan_mysql_perfschema_agent.go index dbb1c5f846..584cfa37dd 100644 --- a/admin/commands/inventory/add_agent_qan_mysql_perfschema_agent.go +++ b/admin/commands/inventory/add_agent_qan_mysql_perfschema_agent.go @@ -36,7 +36,7 @@ Custom labels : {{ .Agent.CustomLabels }} `) type addAgentQANMySQLPerfSchemaAgentResult struct { - Agent *agents.AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent `json:"qan_mysql_perfschema_agent"` + Agent *agents.AddAgentOKBodyQANMysqlPerfschemaAgent `json:"qan_mysql_perfschema_agent"` } func (res *addAgentQANMySQLPerfSchemaAgentResult) Result() {} @@ -100,28 +100,30 @@ func (cmd *AddAgentQANMySQLPerfSchemaAgentCommand) RunCmd() (commands.Result, er disableCommentsParsing = false } - params := &agents.AddQANMySQLPerfSchemaAgentParams{ - Body: agents.AddQANMySQLPerfSchemaAgentBody{ - PMMAgentID: cmd.PMMAgentID, - ServiceID: cmd.ServiceID, - Username: cmd.Username, - Password: cmd.Password, - CustomLabels: customLabels, - SkipConnectionCheck: cmd.SkipConnectionCheck, - DisableCommentsParsing: disableCommentsParsing, - MaxQueryLength: cmd.MaxQueryLength, - DisableQueryExamples: cmd.DisableQueryExamples, - TLS: cmd.TLS, - TLSSkipVerify: cmd.TLSSkipVerify, - TLSCa: tlsCa, - TLSCert: tlsCert, - TLSKey: tlsKey, - LogLevel: &cmd.LogLevel, + params := &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANMysqlPerfschemaAgent: &agents.AddAgentParamsBodyQANMysqlPerfschemaAgent{ + PMMAgentID: cmd.PMMAgentID, + ServiceID: cmd.ServiceID, + Username: cmd.Username, + Password: cmd.Password, + CustomLabels: customLabels, + SkipConnectionCheck: cmd.SkipConnectionCheck, + DisableCommentsParsing: disableCommentsParsing, + MaxQueryLength: cmd.MaxQueryLength, + DisableQueryExamples: cmd.DisableQueryExamples, + TLS: cmd.TLS, + TLSSkipVerify: cmd.TLSSkipVerify, + TLSCa: tlsCa, + TLSCert: tlsCert, + TLSKey: tlsKey, + LogLevel: &cmd.LogLevel, + }, }, Context: commands.Ctx, } - resp, err := client.Default.AgentsService.AddQANMySQLPerfSchemaAgent(params) + resp, err := client.Default.AgentsService.AddAgent(params) if err != nil { return nil, err } diff --git a/admin/commands/inventory/add_agent_qan_mysql_slowlog_agent.go b/admin/commands/inventory/add_agent_qan_mysql_slowlog_agent.go index 16a74f6e2b..567df49183 100644 --- a/admin/commands/inventory/add_agent_qan_mysql_slowlog_agent.go +++ b/admin/commands/inventory/add_agent_qan_mysql_slowlog_agent.go @@ -41,7 +41,7 @@ Custom labels : {{ .Agent.CustomLabels }} `) type addAgentQANMySQLSlowlogAgentResult struct { - Agent *agents.AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent `json:"qan_mysql_slowlog_agent"` + Agent *agents.AddAgentOKBodyQANMysqlSlowlogAgent `json:"qan_mysql_slowlog_agent"` } func (res *addAgentQANMySQLSlowlogAgentResult) Result() {} @@ -113,29 +113,31 @@ func (cmd *AddAgentQANMySQLSlowlogAgentCommand) RunCmd() (commands.Result, error disableCommentsParsing = false } - params := &agents.AddQANMySQLSlowlogAgentParams{ - Body: agents.AddQANMySQLSlowlogAgentBody{ - PMMAgentID: cmd.PMMAgentID, - ServiceID: cmd.ServiceID, - Username: cmd.Username, - Password: cmd.Password, - CustomLabels: customLabels, - SkipConnectionCheck: cmd.SkipConnectionCheck, - DisableCommentsParsing: disableCommentsParsing, - MaxQueryLength: cmd.MaxQueryLength, - DisableQueryExamples: cmd.DisableQueryExamples, - MaxSlowlogFileSize: strconv.FormatInt(int64(cmd.MaxSlowlogFileSize), 10), - TLS: cmd.TLS, - TLSSkipVerify: cmd.TLSSkipVerify, - TLSCa: tlsCa, - TLSCert: tlsCert, - TLSKey: tlsKey, - LogLevel: &cmd.LogLevel, + params := &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANMysqlSlowlogAgent: &agents.AddAgentParamsBodyQANMysqlSlowlogAgent{ + PMMAgentID: cmd.PMMAgentID, + ServiceID: cmd.ServiceID, + Username: cmd.Username, + Password: cmd.Password, + CustomLabels: customLabels, + SkipConnectionCheck: cmd.SkipConnectionCheck, + DisableCommentsParsing: disableCommentsParsing, + MaxQueryLength: cmd.MaxQueryLength, + DisableQueryExamples: cmd.DisableQueryExamples, + MaxSlowlogFileSize: strconv.FormatInt(int64(cmd.MaxSlowlogFileSize), 10), + TLS: cmd.TLS, + TLSSkipVerify: cmd.TLSSkipVerify, + TLSCa: tlsCa, + TLSCert: tlsCert, + TLSKey: tlsKey, + LogLevel: &cmd.LogLevel, + }, }, Context: commands.Ctx, } - resp, err := client.Default.AgentsService.AddQANMySQLSlowlogAgent(params) + resp, err := client.Default.AgentsService.AddAgent(params) if err != nil { return nil, err } diff --git a/admin/commands/inventory/add_agent_qan_postgres_pgstatements_agent.go b/admin/commands/inventory/add_agent_qan_postgres_pgstatements_agent.go index 31ee452eb9..3226cdf6da 100644 --- a/admin/commands/inventory/add_agent_qan_postgres_pgstatements_agent.go +++ b/admin/commands/inventory/add_agent_qan_postgres_pgstatements_agent.go @@ -35,7 +35,7 @@ Custom labels : {{ .Agent.CustomLabels }} `) type addAgentQANPostgreSQLPgStatementsAgentResult struct { - Agent *agents.AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent `json:"qan_postgresql_pgstatements_agent"` + Agent *agents.AddAgentOKBodyQANPostgresqlPgstatementsAgent `json:"qan_postgresql_pgstatements_agent"` } func (res *addAgentQANPostgreSQLPgStatementsAgentResult) Result() {} @@ -91,28 +91,30 @@ func (cmd *AddAgentQANPostgreSQLPgStatementsAgentCommand) RunCmd() (commands.Res disableCommentsParsing = false } - params := &agents.AddQANPostgreSQLPgStatementsAgentParams{ - Body: agents.AddQANPostgreSQLPgStatementsAgentBody{ - PMMAgentID: cmd.PMMAgentID, - ServiceID: cmd.ServiceID, - Username: cmd.Username, - Password: cmd.Password, - CustomLabels: customLabels, - SkipConnectionCheck: cmd.SkipConnectionCheck, - DisableCommentsParsing: disableCommentsParsing, - MaxQueryLength: cmd.MaxQueryLength, - - TLS: cmd.TLS, - TLSSkipVerify: cmd.TLSSkipVerify, - TLSCa: tlsCa, - TLSCert: tlsCert, - TLSKey: tlsKey, - LogLevel: &cmd.LogLevel, + params := &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANPostgresqlPgstatementsAgent: &agents.AddAgentParamsBodyQANPostgresqlPgstatementsAgent{ + PMMAgentID: cmd.PMMAgentID, + ServiceID: cmd.ServiceID, + Username: cmd.Username, + Password: cmd.Password, + CustomLabels: customLabels, + SkipConnectionCheck: cmd.SkipConnectionCheck, + DisableCommentsParsing: disableCommentsParsing, + MaxQueryLength: cmd.MaxQueryLength, + + TLS: cmd.TLS, + TLSSkipVerify: cmd.TLSSkipVerify, + TLSCa: tlsCa, + TLSCert: tlsCert, + TLSKey: tlsKey, + LogLevel: &cmd.LogLevel, + }, }, Context: commands.Ctx, } - resp, err := client.Default.AgentsService.AddQANPostgreSQLPgStatementsAgent(params) + resp, err := client.Default.AgentsService.AddAgent(params) if err != nil { return nil, err } diff --git a/admin/commands/inventory/add_agent_qan_postgres_pgstatmonitor_agent.go b/admin/commands/inventory/add_agent_qan_postgres_pgstatmonitor_agent.go index 68cb5d2d5f..0994b32871 100644 --- a/admin/commands/inventory/add_agent_qan_postgres_pgstatmonitor_agent.go +++ b/admin/commands/inventory/add_agent_qan_postgres_pgstatmonitor_agent.go @@ -36,7 +36,7 @@ Query examples : {{ .Agent.QueryExamplesDisabled }} `) type addAgentQANPostgreSQLPgStatMonitorAgentResult struct { - Agent *agents.AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent `json:"qan_postgresql_pgstatmonitor_agent"` + Agent *agents.AddAgentOKBodyQANPostgresqlPgstatmonitorAgent `json:"qan_postgresql_pgstatmonitor_agent"` } func (res *addAgentQANPostgreSQLPgStatMonitorAgentResult) Result() {} @@ -93,29 +93,31 @@ func (cmd *AddAgentQANPostgreSQLPgStatMonitorAgentCommand) RunCmd() (commands.Re disableCommentsParsing = false } - params := &agents.AddQANPostgreSQLPgStatMonitorAgentParams{ - Body: agents.AddQANPostgreSQLPgStatMonitorAgentBody{ - PMMAgentID: cmd.PMMAgentID, - ServiceID: cmd.ServiceID, - Username: cmd.Username, - Password: cmd.Password, - CustomLabels: customLabels, - SkipConnectionCheck: cmd.SkipConnectionCheck, - DisableCommentsParsing: disableCommentsParsing, - MaxQueryLength: cmd.MaxQueryLength, - DisableQueryExamples: cmd.QueryExamplesDisabled, - - TLS: cmd.TLS, - TLSSkipVerify: cmd.TLSSkipVerify, - TLSCa: tlsCa, - TLSCert: tlsCert, - TLSKey: tlsKey, - LogLevel: &cmd.LogLevel, + params := &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANPostgresqlPgstatmonitorAgent: &agents.AddAgentParamsBodyQANPostgresqlPgstatmonitorAgent{ + PMMAgentID: cmd.PMMAgentID, + ServiceID: cmd.ServiceID, + Username: cmd.Username, + Password: cmd.Password, + CustomLabels: customLabels, + SkipConnectionCheck: cmd.SkipConnectionCheck, + DisableCommentsParsing: disableCommentsParsing, + MaxQueryLength: cmd.MaxQueryLength, + DisableQueryExamples: cmd.QueryExamplesDisabled, + + TLS: cmd.TLS, + TLSSkipVerify: cmd.TLSSkipVerify, + TLSCa: tlsCa, + TLSCert: tlsCert, + TLSKey: tlsKey, + LogLevel: &cmd.LogLevel, + }, }, Context: commands.Ctx, } - resp, err := client.Default.AgentsService.AddQANPostgreSQLPgStatMonitorAgent(params) + resp, err := client.Default.AgentsService.AddAgent(params) if err != nil { return nil, err } diff --git a/api-tests/helpers.go b/api-tests/helpers.go index db8e10eb8c..3d491c15f8 100644 --- a/api-tests/helpers.go +++ b/api-tests/helpers.go @@ -230,12 +230,14 @@ func AddNode(t TestingT, nodeBody *nodes.AddNodeBody) *nodes.AddNodeOKBody { return res.Payload } -func AddPMMAgent(t TestingT, nodeID string) *agents.AddPMMAgentOKBody { +func AddPMMAgent(t TestingT, nodeID string) *agents.AddAgentOKBody { t.Helper() - res, err := client.Default.AgentsService.AddPMMAgent(&agents.AddPMMAgentParams{ - Body: agents.AddPMMAgentBody{ - RunsOnNodeID: nodeID, + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + PMMAgent: &agents.AddAgentParamsBodyPMMAgent{ + RunsOnNodeID: nodeID, + }, }, Context: Context, }) diff --git a/api-tests/inventory/agents_test.go b/api-tests/inventory/agents_test.go index e14446c2ea..4b31b40c97 100644 --- a/api-tests/inventory/agents_test.go +++ b/api-tests/inventory/agents_test.go @@ -124,27 +124,29 @@ func TestAgents(t *testing.T) { mySqldExporterID := mySqldExporter.MysqldExporter.AgentID defer pmmapitests.RemoveAgents(t, mySqldExporterID) - nodeExporter, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ - Body: agents.AddAgentBody{ - NodeExporter: &agents.AddAgentParamsBodyNodeExporter{ - PMMAgentID: pmmAgentID, - CustomLabels: map[string]string{ - "custom_label_node_exporter": "node_exporter", + nodeExporter, err := client.Default.AgentsService.AddAgent( + &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + NodeExporter: &agents.AddAgentParamsBodyNodeExporter{ + PMMAgentID: pmmAgentID, + CustomLabels: map[string]string{ + "custom_label_node_exporter": "node_exporter", + }, }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) require.NotNil(t, nodeExporter) nodeExporterID := nodeExporter.Payload.NodeExporter.AgentID defer pmmapitests.RemoveAgents(t, nodeExporterID) // Filter by pmm agent ID. - res, err := client.Default.AgentsService.ListAgents(&agents.ListAgentsParams{ - Body: agents.ListAgentsBody{PMMAgentID: pmmAgentID}, - Context: pmmapitests.Context, - }) + res, err := client.Default.AgentsService.ListAgents( + &agents.ListAgentsParams{ + Body: agents.ListAgentsBody{PMMAgentID: pmmAgentID}, + Context: pmmapitests.Context, + }) require.NoError(t, err) require.NotNil(t, res) require.NotZerof(t, len(res.Payload.MysqldExporter), "There should be at least one agent") @@ -153,10 +155,11 @@ func TestAgents(t *testing.T) { assertPMMAgentNotExists(t, res, pmmAgentID) // Filter by node ID. - res, err = client.Default.AgentsService.ListAgents(&agents.ListAgentsParams{ - Body: agents.ListAgentsBody{NodeID: nodeID}, - Context: pmmapitests.Context, - }) + res, err = client.Default.AgentsService.ListAgents( + &agents.ListAgentsParams{ + Body: agents.ListAgentsBody{NodeID: nodeID}, + Context: pmmapitests.Context, + }) require.NoError(t, err) require.NotNil(t, res) require.NotZerof(t, len(res.Payload.NodeExporter), "There should be at least one node exporter") @@ -165,10 +168,11 @@ func TestAgents(t *testing.T) { assertNodeExporterExists(t, res, nodeExporterID) // Filter by service ID. - res, err = client.Default.AgentsService.ListAgents(&agents.ListAgentsParams{ - Body: agents.ListAgentsBody{ServiceID: serviceID}, - Context: pmmapitests.Context, - }) + res, err = client.Default.AgentsService.ListAgents( + &agents.ListAgentsParams{ + Body: agents.ListAgentsBody{ServiceID: serviceID}, + Context: pmmapitests.Context, + }) require.NoError(t, err) require.NotNil(t, res) require.NotZerof(t, len(res.Payload.MysqldExporter), "There should be at least one mysql exporter") @@ -177,10 +181,11 @@ func TestAgents(t *testing.T) { assertNodeExporterNotExists(t, res, nodeExporterID) // Filter by service ID. - res, err = client.Default.AgentsService.ListAgents(&agents.ListAgentsParams{ - Body: agents.ListAgentsBody{AgentType: pointer.ToString(agents.ListAgentsBodyAgentTypeAGENTTYPEMYSQLDEXPORTER)}, - Context: pmmapitests.Context, - }) + res, err = client.Default.AgentsService.ListAgents( + &agents.ListAgentsParams{ + Body: agents.ListAgentsBody{AgentType: pointer.ToString(agents.ListAgentsBodyAgentTypeAGENTTYPEMYSQLDEXPORTER)}, + Context: pmmapitests.Context, + }) require.NoError(t, err) require.NotNil(t, res) require.NotZerof(t, len(res.Payload.MysqldExporter), "There should be at least one mysql exporter") @@ -200,14 +205,15 @@ func TestAgents(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.ListAgents(&agents.ListAgentsParams{ - Body: agents.ListAgentsBody{ - PMMAgentID: pmmAgentID, - NodeID: genericNodeID, - ServiceID: "some-service-id", - }, - Context: pmmapitests.Context, - }) + res, err := client.Default.AgentsService.ListAgents( + &agents.ListAgentsParams{ + Body: agents.ListAgentsBody{ + PMMAgentID: pmmAgentID, + NodeID: genericNodeID, + ServiceID: "some-service-id", + }, + Context: pmmapitests.Context, + }) pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "expected at most one param: pmm_agent_id, node_id or service_id") assert.Nil(t, res) }) @@ -232,18 +238,19 @@ func TestAgents(t *testing.T) { }).Mysql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - _, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ - Body: agents.AddAgentBody{ - MongodbExporter: &agents.AddAgentParamsBodyMongodbExporter{ - ServiceID: serviceID, - Username: "username", - Password: "password", - PMMAgentID: pmmAgentID, - SkipConnectionCheck: true, + _, err := client.Default.AgentsService.AddAgent( + &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + MongodbExporter: &agents.AddAgentParamsBodyMongodbExporter{ + ServiceID: serviceID, + Username: "username", + Password: "password", + PMMAgentID: pmmAgentID, + SkipConnectionCheck: true, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) pmmapitests.AssertAPIErrorf(t, err, http.StatusBadRequest, codes.FailedPrecondition, "invalid combination of service type mysql and agent type mongodb_exporter") }) @@ -262,10 +269,11 @@ func TestPMMAgent(t *testing.T) { require.Equal(t, nodeID, res.PMMAgent.RunsOnNodeID) agentID := res.PMMAgent.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, + }) assert.NoError(t, err) assert.Equal(t, &agents.GetAgentOK{ Payload: &agents.GetAgentOKBody{ @@ -291,11 +299,16 @@ func TestPMMAgent(t *testing.T) { t.Run("AddNodeIDEmpty", func(t *testing.T) { t.Parallel() - res, err := client.Default.AgentsService.AddPMMAgent(&agents.AddPMMAgentParams{ - Body: agents.AddPMMAgentBody{RunsOnNodeID: ""}, - Context: pmmapitests.Context, - }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddPMMAgentRequest.RunsOnNodeId: value length must be at least 1 runes") + res, err := client.Default.AgentsService.AddAgent( + &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + PMMAgent: &agents.AddAgentParamsBodyPMMAgent{ + RunsOnNodeID: "", + }, + }, + Context: pmmapitests.Context, + }) + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.RunsOnNodeId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveNodes(t, res.Payload.PMMAgent.AgentID) } @@ -352,10 +365,11 @@ func TestPMMAgent(t *testing.T) { pmmapitests.AssertAPIErrorf(t, err, 400, codes.FailedPrecondition, `pmm-agent with ID %q has agents.`, pmmAgentID) // Check that agents aren't removed. - getAgentRes, err := client.Default.AgentsService.GetAgent(&agents.GetAgentParams{ - Body: agents.GetAgentBody{AgentID: pmmAgentID}, - Context: pmmapitests.Context, - }) + getAgentRes, err := client.Default.AgentsService.GetAgent( + &agents.GetAgentParams{ + Body: agents.GetAgentBody{AgentID: pmmAgentID}, + Context: pmmapitests.Context, + }) assert.NoError(t, err) assert.Equal(t, &agents.GetAgentOK{ Payload: &agents.GetAgentOKBody{ @@ -367,12 +381,13 @@ func TestPMMAgent(t *testing.T) { }, }, getAgentRes) - listAgentsOK, err := client.Default.AgentsService.ListAgents(&agents.ListAgentsParams{ - Body: agents.ListAgentsBody{ - PMMAgentID: pmmAgentID, - }, - Context: pmmapitests.Context, - }) + listAgentsOK, err := client.Default.AgentsService.ListAgents( + &agents.ListAgentsParams{ + Body: agents.ListAgentsBody{ + PMMAgentID: pmmAgentID, + }, + Context: pmmapitests.Context, + }) assert.NoError(t, err) assert.Equal(t, []*agents.ListAgentsOKBodyNodeExporterItems0{ { @@ -413,10 +428,11 @@ func TestPMMAgent(t *testing.T) { assert.NotNil(t, res) // Check that agents are removed. - getAgentRes, err = client.Default.AgentsService.GetAgent(&agents.GetAgentParams{ - Body: agents.GetAgentBody{AgentID: pmmAgentID}, - Context: pmmapitests.Context, - }) + getAgentRes, err = client.Default.AgentsService.GetAgent( + &agents.GetAgentParams{ + Body: agents.GetAgentBody{AgentID: pmmAgentID}, + Context: pmmapitests.Context, + }) pmmapitests.AssertAPIErrorf(t, err, 404, codes.NotFound, "Agent with ID %q not found.", pmmAgentID) assert.Nil(t, getAgentRes) @@ -459,13 +475,14 @@ func TestPMMAgent(t *testing.T) { t.Run("Remove pmm-agent on PMM Server", func(t *testing.T) { t.Parallel() - removeResp, err := client.Default.AgentsService.RemoveAgent(&agents.RemoveAgentParams{ - Body: agents.RemoveAgentBody{ - AgentID: "pmm-server", - Force: true, - }, - Context: context.Background(), - }) + removeResp, err := client.Default.AgentsService.RemoveAgent( + &agents.RemoveAgentParams{ + Body: agents.RemoveAgentBody{ + AgentID: "pmm-server", + Force: true, + }, + Context: context.Background(), + }) pmmapitests.AssertAPIErrorf(t, err, 403, codes.PermissionDenied, "pmm-agent on PMM Server can't be removed.") assert.Nil(t, removeResp) }) @@ -494,18 +511,20 @@ func TestQanAgentExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddQANMySQLPerfSchemaAgent( - &agents.AddQANMySQLPerfSchemaAgentParams{ - Body: agents.AddQANMySQLPerfSchemaAgentBody{ - ServiceID: serviceID, - Username: "username", - Password: "password", - PMMAgentID: pmmAgentID, - CustomLabels: map[string]string{ - "new_label": "QANMysqlPerfschemaAgent", + res, err := client.Default.AgentsService.AddAgent( + &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANMysqlPerfschemaAgent: &agents.AddAgentParamsBodyQANMysqlPerfschemaAgent{ + ServiceID: serviceID, + Username: "username", + Password: "password", + PMMAgentID: pmmAgentID, + CustomLabels: map[string]string{ + "new_label": "QANMysqlPerfschemaAgent", + }, + + SkipConnectionCheck: true, }, - - SkipConnectionCheck: true, }, Context: pmmapitests.Context, }) @@ -535,16 +554,17 @@ 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.ChangeQANMySQLPerfSchemaAgent( + &agents.ChangeQANMySQLPerfSchemaAgentParams{ + Body: agents.ChangeQANMySQLPerfSchemaAgentBody{ + AgentID: agentID, + Common: &agents.ChangeQANMySQLPerfSchemaAgentParamsBodyCommon{ + Disable: true, + RemoveCustomLabels: true, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) assert.Equal(t, &agents.ChangeQANMySQLPerfSchemaAgentOK{ Payload: &agents.ChangeQANMySQLPerfSchemaAgentOKBody{ @@ -561,18 +581,19 @@ 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.ChangeQANMySQLPerfSchemaAgent( + &agents.ChangeQANMySQLPerfSchemaAgentParams{ + Body: agents.ChangeQANMySQLPerfSchemaAgentBody{ + AgentID: agentID, + Common: &agents.ChangeQANMySQLPerfSchemaAgentParamsBodyCommon{ + Enable: true, + CustomLabels: map[string]string{ + "new_label": "QANMysqlPerfschemaAgent", + }, }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) assert.Equal(t, &agents.ChangeQANMySQLPerfSchemaAgentOK{ Payload: &agents.ChangeQANMySQLPerfSchemaAgentOKBody{ @@ -602,18 +623,21 @@ func TestQanAgentExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddQANMySQLPerfSchemaAgent(&agents.AddQANMySQLPerfSchemaAgentParams{ - Body: agents.AddQANMySQLPerfSchemaAgentBody{ - ServiceID: "", - PMMAgentID: pmmAgentID, - Username: "username", - Password: "password", + res, err := client.Default.AgentsService.AddAgent( + &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANMysqlPerfschemaAgent: &agents.AddAgentParamsBodyQANMysqlPerfschemaAgent{ + ServiceID: "", + PMMAgentID: pmmAgentID, + Username: "username", + Password: "password", - SkipConnectionCheck: true, - }, - Context: pmmapitests.Context, - }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddQANMySQLPerfSchemaAgentRequest.ServiceId: value length must be at least 1 runes") + SkipConnectionCheck: true, + }, + }, + Context: pmmapitests.Context, + }) + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.ServiceId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.QANMysqlPerfschemaAgent.AgentID) } @@ -636,18 +660,21 @@ func TestQanAgentExporter(t *testing.T) { serviceID := service.Mysql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddQANMySQLPerfSchemaAgent(&agents.AddQANMySQLPerfSchemaAgentParams{ - Body: agents.AddQANMySQLPerfSchemaAgentBody{ - ServiceID: serviceID, - PMMAgentID: "", - Username: "username", - Password: "password", + res, err := client.Default.AgentsService.AddAgent( + &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANMysqlPerfschemaAgent: &agents.AddAgentParamsBodyQANMysqlPerfschemaAgent{ + ServiceID: serviceID, + PMMAgentID: "", + Username: "username", + Password: "password", - SkipConnectionCheck: true, - }, - Context: pmmapitests.Context, - }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddQANMySQLPerfSchemaAgentRequest.PmmAgentId: value length must be at least 1 runes") + SkipConnectionCheck: true, + }, + }, + Context: pmmapitests.Context, + }) + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.QANMysqlPerfschemaAgent.AgentID) } @@ -663,15 +690,18 @@ func TestQanAgentExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddQANMySQLPerfSchemaAgent(&agents.AddQANMySQLPerfSchemaAgentParams{ - Body: agents.AddQANMySQLPerfSchemaAgentBody{ - ServiceID: "pmm-service-id", - PMMAgentID: pmmAgentID, - Username: "username", - Password: "password", - }, - Context: pmmapitests.Context, - }) + res, err := client.Default.AgentsService.AddAgent( + &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANMysqlPerfschemaAgent: &agents.AddAgentParamsBodyQANMysqlPerfschemaAgent{ + ServiceID: "pmm-service-id", + PMMAgentID: pmmAgentID, + Username: "username", + Password: "password", + }, + }, + Context: pmmapitests.Context, + }) pmmapitests.AssertAPIErrorf(t, err, 404, codes.NotFound, "Service with ID \"pmm-service-id\" not found.") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.QANMysqlPerfschemaAgent.AgentID) @@ -695,15 +725,18 @@ func TestQanAgentExporter(t *testing.T) { serviceID := service.Mysql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddQANMySQLPerfSchemaAgent(&agents.AddQANMySQLPerfSchemaAgentParams{ - Body: agents.AddQANMySQLPerfSchemaAgentBody{ - ServiceID: serviceID, - PMMAgentID: "pmm-not-exist-server", - Username: "username", - Password: "password", - }, - Context: pmmapitests.Context, - }) + res, err := client.Default.AgentsService.AddAgent( + &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANMysqlPerfschemaAgent: &agents.AddAgentParamsBodyQANMysqlPerfschemaAgent{ + ServiceID: serviceID, + PMMAgentID: "pmm-not-exist-server", + Username: "username", + Password: "password", + }, + }, + Context: pmmapitests.Context, + }) pmmapitests.AssertAPIErrorf(t, err, 404, codes.NotFound, "Agent with ID \"pmm-not-exist-server\" not found.") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.QANMysqlPerfschemaAgent.AgentID) @@ -734,18 +767,20 @@ func TestPGStatStatementsQanAgent(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddQANPostgreSQLPgStatementsAgent( - &agents.AddQANPostgreSQLPgStatementsAgentParams{ - Body: agents.AddQANPostgreSQLPgStatementsAgentBody{ - ServiceID: serviceID, - Username: "username", - Password: "password", - PMMAgentID: pmmAgentID, - CustomLabels: map[string]string{ - "new_label": "QANPostgreSQLPgStatementsAgent", + res, err := client.Default.AgentsService.AddAgent( + &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANPostgresqlPgstatementsAgent: &agents.AddAgentParamsBodyQANPostgresqlPgstatementsAgent{ + ServiceID: serviceID, + Username: "username", + Password: "password", + PMMAgentID: pmmAgentID, + CustomLabels: map[string]string{ + "new_label": "QANPostgreSQLPgStatementsAgent", + }, + + SkipConnectionCheck: true, }, - - SkipConnectionCheck: true, }, Context: pmmapitests.Context, }) @@ -753,10 +788,11 @@ func TestPGStatStatementsQanAgent(t *testing.T) { agentID := res.Payload.QANPostgresqlPgstatementsAgent.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{ @@ -775,16 +811,17 @@ 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.ChangeQANPostgreSQLPgStatementsAgent( + &agents.ChangeQANPostgreSQLPgStatementsAgentParams{ + Body: agents.ChangeQANPostgreSQLPgStatementsAgentBody{ + AgentID: agentID, + Common: &agents.ChangeQANPostgreSQLPgStatementsAgentParamsBodyCommon{ + Disable: true, + RemoveCustomLabels: true, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) assert.Equal(t, &agents.ChangeQANPostgreSQLPgStatementsAgentOK{ Payload: &agents.ChangeQANPostgreSQLPgStatementsAgentOKBody{ @@ -801,18 +838,19 @@ 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.ChangeQANPostgreSQLPgStatementsAgent( + &agents.ChangeQANPostgreSQLPgStatementsAgentParams{ + Body: agents.ChangeQANPostgreSQLPgStatementsAgentBody{ + AgentID: agentID, + Common: &agents.ChangeQANPostgreSQLPgStatementsAgentParamsBodyCommon{ + Enable: true, + CustomLabels: map[string]string{ + "new_label": "QANPostgreSQLPgStatementsAgent", + }, }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) assert.Equal(t, &agents.ChangeQANPostgreSQLPgStatementsAgentOK{ Payload: &agents.ChangeQANPostgreSQLPgStatementsAgentOKBody{ @@ -842,18 +880,21 @@ func TestPGStatStatementsQanAgent(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddQANPostgreSQLPgStatementsAgent(&agents.AddQANPostgreSQLPgStatementsAgentParams{ - Body: agents.AddQANPostgreSQLPgStatementsAgentBody{ - ServiceID: "", - PMMAgentID: pmmAgentID, - Username: "username", - Password: "password", + res, err := client.Default.AgentsService.AddAgent( + &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANPostgresqlPgstatementsAgent: &agents.AddAgentParamsBodyQANPostgresqlPgstatementsAgent{ + ServiceID: "", + PMMAgentID: pmmAgentID, + Username: "username", + Password: "password", - SkipConnectionCheck: true, - }, - Context: pmmapitests.Context, - }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddQANPostgreSQLPgStatementsAgentRequest.ServiceId: value length must be at least 1 runes") + SkipConnectionCheck: true, + }, + }, + Context: pmmapitests.Context, + }) + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.ServiceId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.QANPostgresqlPgstatementsAgent.AgentID) } @@ -876,17 +917,20 @@ func TestPGStatStatementsQanAgent(t *testing.T) { serviceID := service.Postgresql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddQANPostgreSQLPgStatementsAgent(&agents.AddQANPostgreSQLPgStatementsAgentParams{ - Body: agents.AddQANPostgreSQLPgStatementsAgentBody{ - ServiceID: serviceID, - PMMAgentID: "", - Username: "username", - Password: "password", + res, err := client.Default.AgentsService.AddAgent( + &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANPostgresqlPgstatementsAgent: &agents.AddAgentParamsBodyQANPostgresqlPgstatementsAgent{ + ServiceID: serviceID, + PMMAgentID: "", + Username: "username", + Password: "password", - SkipConnectionCheck: true, - }, - Context: pmmapitests.Context, - }) + SkipConnectionCheck: true, + }, + }, + Context: pmmapitests.Context, + }) pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddQANPostgreSQLPgStatementsAgentRequest.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.QANPostgresqlPgstatementsAgent.AgentID) @@ -903,15 +947,18 @@ func TestPGStatStatementsQanAgent(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddQANPostgreSQLPgStatementsAgent(&agents.AddQANPostgreSQLPgStatementsAgentParams{ - Body: agents.AddQANPostgreSQLPgStatementsAgentBody{ - ServiceID: "pmm-service-id", - PMMAgentID: pmmAgentID, - Username: "username", - Password: "password", - }, - Context: pmmapitests.Context, - }) + res, err := client.Default.AgentsService.AddAgent( + &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANPostgresqlPgstatementsAgent: &agents.AddAgentParamsBodyQANPostgresqlPgstatementsAgent{ + ServiceID: "pmm-service-id", + PMMAgentID: pmmAgentID, + Username: "username", + Password: "password", + }, + }, + Context: pmmapitests.Context, + }) pmmapitests.AssertAPIErrorf(t, err, 404, codes.NotFound, "Service with ID \"pmm-service-id\" not found.") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.QANPostgresqlPgstatementsAgent.AgentID) @@ -935,15 +982,18 @@ func TestPGStatStatementsQanAgent(t *testing.T) { serviceID := service.Postgresql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddQANPostgreSQLPgStatementsAgent(&agents.AddQANPostgreSQLPgStatementsAgentParams{ - Body: agents.AddQANPostgreSQLPgStatementsAgentBody{ - ServiceID: serviceID, - PMMAgentID: "pmm-not-exist-server", - Username: "username", - Password: "password", - }, - Context: pmmapitests.Context, - }) + res, err := client.Default.AgentsService.AddAgent( + &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANPostgresqlPgstatementsAgent: &agents.AddAgentParamsBodyQANPostgresqlPgstatementsAgent{ + ServiceID: serviceID, + PMMAgentID: "pmm-not-exist-server", + Username: "username", + Password: "password", + }, + }, + Context: pmmapitests.Context, + }) pmmapitests.AssertAPIErrorf(t, err, 404, codes.NotFound, "Agent with ID \"pmm-not-exist-server\" not found.") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.QANPostgresqlPgstatementsAgent.AgentID) @@ -974,18 +1024,20 @@ func TestPGStatMonitorQanAgent(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddQANPostgreSQLPgStatMonitorAgent( - &agents.AddQANPostgreSQLPgStatMonitorAgentParams{ - Body: agents.AddQANPostgreSQLPgStatMonitorAgentBody{ - ServiceID: serviceID, - Username: "username", - Password: "password", - PMMAgentID: pmmAgentID, - CustomLabels: map[string]string{ - "new_label": "QANPostgreSQLPgStatMonitorAgent", + res, err := client.Default.AgentsService.AddAgent( + &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANPostgresqlPgstatmonitorAgent: &agents.AddAgentParamsBodyQANPostgresqlPgstatmonitorAgent{ + ServiceID: serviceID, + Username: "username", + Password: "password", + PMMAgentID: pmmAgentID, + CustomLabels: map[string]string{ + "new_label": "QANPostgreSQLPgStatMonitorAgent", + }, + + SkipConnectionCheck: true, }, - - SkipConnectionCheck: true, }, Context: pmmapitests.Context, }) @@ -1016,16 +1068,17 @@ 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.ChangeQANPostgreSQLPgStatMonitorAgent( + &agents.ChangeQANPostgreSQLPgStatMonitorAgentParams{ + Body: agents.ChangeQANPostgreSQLPgStatMonitorAgentBody{ + AgentID: agentID, + Common: &agents.ChangeQANPostgreSQLPgStatMonitorAgentParamsBodyCommon{ + Disable: true, + RemoveCustomLabels: true, + }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) assert.Equal(t, &agents.ChangeQANPostgreSQLPgStatMonitorAgentOK{ Payload: &agents.ChangeQANPostgreSQLPgStatMonitorAgentOKBody{ @@ -1042,18 +1095,19 @@ 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.ChangeQANPostgreSQLPgStatMonitorAgent( + &agents.ChangeQANPostgreSQLPgStatMonitorAgentParams{ + Body: agents.ChangeQANPostgreSQLPgStatMonitorAgentBody{ + AgentID: agentID, + Common: &agents.ChangeQANPostgreSQLPgStatMonitorAgentParamsBodyCommon{ + Enable: true, + CustomLabels: map[string]string{ + "new_label": "QANPostgreSQLPgStatMonitorAgent", + }, }, }, - }, - Context: pmmapitests.Context, - }) + Context: pmmapitests.Context, + }) assert.NoError(t, err) assert.Equal(t, &agents.ChangeQANPostgreSQLPgStatMonitorAgentOK{ Payload: &agents.ChangeQANPostgreSQLPgStatMonitorAgentOKBody{ @@ -1094,19 +1148,21 @@ func TestPGStatMonitorQanAgent(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddQANPostgreSQLPgStatMonitorAgent( - &agents.AddQANPostgreSQLPgStatMonitorAgentParams{ - Body: agents.AddQANPostgreSQLPgStatMonitorAgentBody{ - ServiceID: serviceID, - Username: "username", - Password: "password", - PMMAgentID: pmmAgentID, - DisableQueryExamples: true, - CustomLabels: map[string]string{ - "new_label": "QANPostgreSQLPgStatMonitorAgent", + res, err := client.Default.AgentsService.AddAgent( + &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANPostgresqlPgstatmonitorAgent: &agents.AddAgentParamsBodyQANPostgresqlPgstatmonitorAgent{ + ServiceID: serviceID, + Username: "username", + Password: "password", + PMMAgentID: pmmAgentID, + DisableQueryExamples: true, + CustomLabels: map[string]string{ + "new_label": "QANPostgreSQLPgStatMonitorAgent", + }, + + SkipConnectionCheck: true, }, - - SkipConnectionCheck: true, }, Context: pmmapitests.Context, }) @@ -1114,10 +1170,11 @@ func TestPGStatMonitorQanAgent(t *testing.T) { agentID := res.Payload.QANPostgresqlPgstatmonitorAgent.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{ @@ -1147,18 +1204,21 @@ func TestPGStatMonitorQanAgent(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddQANPostgreSQLPgStatMonitorAgent(&agents.AddQANPostgreSQLPgStatMonitorAgentParams{ - Body: agents.AddQANPostgreSQLPgStatMonitorAgentBody{ - ServiceID: "", - PMMAgentID: pmmAgentID, - Username: "username", - Password: "password", + res, err := client.Default.AgentsService.AddAgent( + &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANPostgresqlPgstatmonitorAgent: &agents.AddAgentParamsBodyQANPostgresqlPgstatmonitorAgent{ + ServiceID: "", + PMMAgentID: pmmAgentID, + Username: "username", + Password: "password", - SkipConnectionCheck: true, - }, - Context: pmmapitests.Context, - }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddQANPostgreSQLPgStatMonitorAgentRequest.ServiceId: value length must be at least 1 runes") + SkipConnectionCheck: true, + }, + }, + Context: pmmapitests.Context, + }) + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.ServiceId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.QANPostgresqlPgstatmonitorAgent.AgentID) } @@ -1181,18 +1241,21 @@ func TestPGStatMonitorQanAgent(t *testing.T) { serviceID := service.Postgresql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddQANPostgreSQLPgStatMonitorAgent(&agents.AddQANPostgreSQLPgStatMonitorAgentParams{ - Body: agents.AddQANPostgreSQLPgStatMonitorAgentBody{ - ServiceID: serviceID, - PMMAgentID: "", - Username: "username", - Password: "password", + res, err := client.Default.AgentsService.AddAgent( + &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANPostgresqlPgstatmonitorAgent: &agents.AddAgentParamsBodyQANPostgresqlPgstatmonitorAgent{ + ServiceID: serviceID, + PMMAgentID: "", + Username: "username", + Password: "password", - SkipConnectionCheck: true, - }, - Context: pmmapitests.Context, - }) - pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddQANPostgreSQLPgStatMonitorAgentRequest.PmmAgentId: value length must be at least 1 runes") + SkipConnectionCheck: true, + }, + }, + Context: pmmapitests.Context, + }) + pmmapitests.AssertAPIErrorf(t, err, 400, codes.InvalidArgument, "invalid AddAgentRequest.PmmAgentId: value length must be at least 1 runes") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.QANPostgresqlPgstatmonitorAgent.AgentID) } @@ -1208,12 +1271,14 @@ func TestPGStatMonitorQanAgent(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - res, err := client.Default.AgentsService.AddQANPostgreSQLPgStatMonitorAgent(&agents.AddQANPostgreSQLPgStatMonitorAgentParams{ - Body: agents.AddQANPostgreSQLPgStatMonitorAgentBody{ - ServiceID: "pmm-service-id", - PMMAgentID: pmmAgentID, - Username: "username", - Password: "password", + res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANPostgresqlPgstatmonitorAgent: &agents.AddAgentParamsBodyQANPostgresqlPgstatmonitorAgent{ + ServiceID: "pmm-service-id", + PMMAgentID: pmmAgentID, + Username: "username", + Password: "password", + }, }, Context: pmmapitests.Context, }) @@ -1240,15 +1305,18 @@ func TestPGStatMonitorQanAgent(t *testing.T) { serviceID := service.Postgresql.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - res, err := client.Default.AgentsService.AddQANPostgreSQLPgStatMonitorAgent(&agents.AddQANPostgreSQLPgStatMonitorAgentParams{ - Body: agents.AddQANPostgreSQLPgStatMonitorAgentBody{ - ServiceID: serviceID, - PMMAgentID: "pmm-not-exist-server", - Username: "username", - Password: "password", - }, - Context: pmmapitests.Context, - }) + res, err := client.Default.AgentsService.AddAgent( + &agents.AddAgentParams{ + Body: agents.AddAgentBody{ + QANPostgresqlPgstatmonitorAgent: &agents.AddAgentParamsBodyQANPostgresqlPgstatmonitorAgent{ + ServiceID: serviceID, + PMMAgentID: "pmm-not-exist-server", + Username: "username", + Password: "password", + }, + }, + Context: pmmapitests.Context, + }) pmmapitests.AssertAPIErrorf(t, err, 404, codes.NotFound, "Agent with ID \"pmm-not-exist-server\" not found.") if !assert.Nil(t, res) { pmmapitests.RemoveAgents(t, res.Payload.QANPostgresqlPgstatmonitorAgent.AgentID) diff --git a/api/agent/v1/agent.pb.go b/api/agent/v1/agent.pb.go index ed5177aaa2..e1787f6b72 100644 --- a/api/agent/v1/agent.pb.go +++ b/api/agent/v1/agent.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: agent/v1/agent.proto diff --git a/api/agent/v1/collector.pb.go b/api/agent/v1/collector.pb.go index 1c592f8796..365bf913bf 100644 --- a/api/agent/v1/collector.pb.go +++ b/api/agent/v1/collector.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: agent/v1/collector.proto diff --git a/api/agentlocal/v1/agentlocal.pb.go b/api/agentlocal/v1/agentlocal.pb.go index 9c03056476..16ca6887ae 100644 --- a/api/agentlocal/v1/agentlocal.pb.go +++ b/api/agentlocal/v1/agentlocal.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: agentlocal/v1/agentlocal.proto diff --git a/api/inventory/v1/agent_status.pb.go b/api/inventory/v1/agent_status.pb.go index 6abe6bea4e..d0055fcda4 100644 --- a/api/inventory/v1/agent_status.pb.go +++ b/api/inventory/v1/agent_status.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: inventory/v1/agent_status.proto diff --git a/api/inventory/v1/agents.pb.go b/api/inventory/v1/agents.pb.go index 704d3f3b60..9d1425ac05 100644 --- a/api/inventory/v1/agents.pb.go +++ b/api/inventory/v1/agents.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: inventory/v1/agents.proto @@ -3282,7 +3282,7 @@ func (x *GetAgentLogsResponse) GetAgentConfigLogLinesCount() uint32 { return 0 } -type AddPMMAgentRequest struct { +type AddPMMAgentParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -3293,8 +3293,8 @@ type AddPMMAgentRequest struct { 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 *AddPMMAgentRequest) Reset() { - *x = AddPMMAgentRequest{} +func (x *AddPMMAgentParams) Reset() { + *x = AddPMMAgentParams{} if protoimpl.UnsafeEnabled { mi := &file_inventory_v1_agents_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -3302,13 +3302,13 @@ func (x *AddPMMAgentRequest) Reset() { } } -func (x *AddPMMAgentRequest) String() string { +func (x *AddPMMAgentParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddPMMAgentRequest) ProtoMessage() {} +func (*AddPMMAgentParams) ProtoMessage() {} -func (x *AddPMMAgentRequest) ProtoReflect() protoreflect.Message { +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)) @@ -3320,72 +3320,25 @@ func (x *AddPMMAgentRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AddPMMAgentRequest.ProtoReflect.Descriptor instead. -func (*AddPMMAgentRequest) Descriptor() ([]byte, []int) { +// Deprecated: Use AddPMMAgentParams.ProtoReflect.Descriptor instead. +func (*AddPMMAgentParams) Descriptor() ([]byte, []int) { return file_inventory_v1_agents_proto_rawDescGZIP(), []int{22} } -func (x *AddPMMAgentRequest) GetRunsOnNodeId() string { +func (x *AddPMMAgentParams) GetRunsOnNodeId() string { if x != nil { return x.RunsOnNodeId } return "" } -func (x *AddPMMAgentRequest) GetCustomLabels() map[string]string { +func (x *AddPMMAgentParams) GetCustomLabels() map[string]string { if x != nil { return x.CustomLabels } return nil } -type AddPMMAgentResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - PmmAgent *PMMAgent `protobuf:"bytes,1,opt,name=pmm_agent,json=pmmAgent,proto3" json:"pmm_agent,omitempty"` -} - -func (x *AddPMMAgentResponse) Reset() { - *x = AddPMMAgentResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AddPMMAgentResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AddPMMAgentResponse) ProtoMessage() {} - -func (x *AddPMMAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[23] - 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 AddPMMAgentResponse.ProtoReflect.Descriptor instead. -func (*AddPMMAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{23} -} - -func (x *AddPMMAgentResponse) GetPmmAgent() *PMMAgent { - if x != nil { - return x.PmmAgent - } - return nil -} - type AddAgentRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -3393,6 +3346,7 @@ type AddAgentRequest struct { // Types that are assignable to Exporter: // + // *AddAgentRequest_PmmAgent // *AddAgentRequest_NodeExporter // *AddAgentRequest_MysqldExporter // *AddAgentRequest_MongodbExporter @@ -3401,13 +3355,18 @@ type AddAgentRequest struct { // *AddAgentRequest_ExternalExporter // *AddAgentRequest_RdsExporter // *AddAgentRequest_AzureDatabaseExporter + // *AddAgentRequest_QanMysqlPerfschemaAgent + // *AddAgentRequest_QanMysqlSlowlogAgent + // *AddAgentRequest_QanMongodbProfilerAgent + // *AddAgentRequest_QanPostgresqlPgstatementsAgent + // *AddAgentRequest_QanPostgresqlPgstatmonitorAgent Exporter isAddAgentRequest_Exporter `protobuf_oneof:"exporter"` } func (x *AddAgentRequest) Reset() { *x = AddAgentRequest{} 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) } @@ -3420,7 +3379,7 @@ func (x *AddAgentRequest) String() string { func (*AddAgentRequest) ProtoMessage() {} func (x *AddAgentRequest) 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 { @@ -3433,7 +3392,7 @@ 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{24} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{23} } func (m *AddAgentRequest) GetExporter() isAddAgentRequest_Exporter { @@ -3443,6 +3402,13 @@ func (m *AddAgentRequest) GetExporter() isAddAgentRequest_Exporter { return nil } +func (x *AddAgentRequest) GetPmmAgent() *AddPMMAgentParams { + if x, ok := x.GetExporter().(*AddAgentRequest_PmmAgent); ok { + return x.PmmAgent + } + return nil +} + func (x *AddAgentRequest) GetNodeExporter() *AddNodeExporterParams { if x, ok := x.GetExporter().(*AddAgentRequest_NodeExporter); ok { return x.NodeExporter @@ -3499,42 +3465,103 @@ func (x *AddAgentRequest) GetAzureDatabaseExporter() *AddAzureDatabaseExporterPa return nil } +func (x *AddAgentRequest) GetQanMysqlPerfschemaAgent() *AddQANMySQLPerfSchemaAgentParams { + if x, ok := x.GetExporter().(*AddAgentRequest_QanMysqlPerfschemaAgent); ok { + return x.QanMysqlPerfschemaAgent + } + return nil +} + +func (x *AddAgentRequest) GetQanMysqlSlowlogAgent() *AddQANMySQLSlowlogAgentParams { + if x, ok := x.GetExporter().(*AddAgentRequest_QanMysqlSlowlogAgent); ok { + return x.QanMysqlSlowlogAgent + } + return nil +} + +func (x *AddAgentRequest) GetQanMongodbProfilerAgent() *AddQANMongoDBProfilerAgentParams { + if x, ok := x.GetExporter().(*AddAgentRequest_QanMongodbProfilerAgent); ok { + return x.QanMongodbProfilerAgent + } + return nil +} + +func (x *AddAgentRequest) GetQanPostgresqlPgstatementsAgent() *AddQANPostgreSQLPgStatementsAgentParams { + if x, ok := x.GetExporter().(*AddAgentRequest_QanPostgresqlPgstatementsAgent); ok { + return x.QanPostgresqlPgstatementsAgent + } + return nil +} + +func (x *AddAgentRequest) GetQanPostgresqlPgstatmonitorAgent() *AddQANPostgreSQLPgStatMonitorAgentParams { + if x, ok := x.GetExporter().(*AddAgentRequest_QanPostgresqlPgstatmonitorAgent); ok { + return x.QanPostgresqlPgstatmonitorAgent + } + return nil +} + type isAddAgentRequest_Exporter interface { isAddAgentRequest_Exporter() } +type AddAgentRequest_PmmAgent struct { + PmmAgent *AddPMMAgentParams `protobuf:"bytes,1,opt,name=pmm_agent,json=pmmAgent,proto3,oneof"` +} + type AddAgentRequest_NodeExporter struct { - NodeExporter *AddNodeExporterParams `protobuf:"bytes,1,opt,name=node_exporter,json=nodeExporter,proto3,oneof"` + NodeExporter *AddNodeExporterParams `protobuf:"bytes,2,opt,name=node_exporter,json=nodeExporter,proto3,oneof"` } type AddAgentRequest_MysqldExporter struct { - MysqldExporter *AddMySQLdExporterParams `protobuf:"bytes,2,opt,name=mysqld_exporter,json=mysqldExporter,proto3,oneof"` + MysqldExporter *AddMySQLdExporterParams `protobuf:"bytes,3,opt,name=mysqld_exporter,json=mysqldExporter,proto3,oneof"` } type AddAgentRequest_MongodbExporter struct { - MongodbExporter *AddMongoDBExporterParams `protobuf:"bytes,3,opt,name=mongodb_exporter,json=mongodbExporter,proto3,oneof"` + MongodbExporter *AddMongoDBExporterParams `protobuf:"bytes,4,opt,name=mongodb_exporter,json=mongodbExporter,proto3,oneof"` } type AddAgentRequest_PostgresExporter struct { - PostgresExporter *AddPostgresExporterParams `protobuf:"bytes,4,opt,name=postgres_exporter,json=postgresExporter,proto3,oneof"` + PostgresExporter *AddPostgresExporterParams `protobuf:"bytes,5,opt,name=postgres_exporter,json=postgresExporter,proto3,oneof"` } type AddAgentRequest_ProxysqlExporter struct { - ProxysqlExporter *AddProxySQLExporterParams `protobuf:"bytes,5,opt,name=proxysql_exporter,json=proxysqlExporter,proto3,oneof"` + ProxysqlExporter *AddProxySQLExporterParams `protobuf:"bytes,6,opt,name=proxysql_exporter,json=proxysqlExporter,proto3,oneof"` } type AddAgentRequest_ExternalExporter struct { - ExternalExporter *AddExternalExporterParams `protobuf:"bytes,6,opt,name=external_exporter,json=externalExporter,proto3,oneof"` + ExternalExporter *AddExternalExporterParams `protobuf:"bytes,7,opt,name=external_exporter,json=externalExporter,proto3,oneof"` } type AddAgentRequest_RdsExporter struct { - RdsExporter *AddRDSExporterParams `protobuf:"bytes,7,opt,name=rds_exporter,json=rdsExporter,proto3,oneof"` + RdsExporter *AddRDSExporterParams `protobuf:"bytes,8,opt,name=rds_exporter,json=rdsExporter,proto3,oneof"` } type AddAgentRequest_AzureDatabaseExporter struct { - AzureDatabaseExporter *AddAzureDatabaseExporterParams `protobuf:"bytes,8,opt,name=azure_database_exporter,json=azureDatabaseExporter,proto3,oneof"` + AzureDatabaseExporter *AddAzureDatabaseExporterParams `protobuf:"bytes,9,opt,name=azure_database_exporter,json=azureDatabaseExporter,proto3,oneof"` +} + +type AddAgentRequest_QanMysqlPerfschemaAgent struct { + QanMysqlPerfschemaAgent *AddQANMySQLPerfSchemaAgentParams `protobuf:"bytes,10,opt,name=qan_mysql_perfschema_agent,json=qanMysqlPerfschemaAgent,proto3,oneof"` +} + +type AddAgentRequest_QanMysqlSlowlogAgent struct { + QanMysqlSlowlogAgent *AddQANMySQLSlowlogAgentParams `protobuf:"bytes,11,opt,name=qan_mysql_slowlog_agent,json=qanMysqlSlowlogAgent,proto3,oneof"` +} + +type AddAgentRequest_QanMongodbProfilerAgent struct { + QanMongodbProfilerAgent *AddQANMongoDBProfilerAgentParams `protobuf:"bytes,12,opt,name=qan_mongodb_profiler_agent,json=qanMongodbProfilerAgent,proto3,oneof"` +} + +type AddAgentRequest_QanPostgresqlPgstatementsAgent struct { + QanPostgresqlPgstatementsAgent *AddQANPostgreSQLPgStatementsAgentParams `protobuf:"bytes,13,opt,name=qan_postgresql_pgstatements_agent,json=qanPostgresqlPgstatementsAgent,proto3,oneof"` +} + +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_NodeExporter) isAddAgentRequest_Exporter() {} func (*AddAgentRequest_MysqldExporter) isAddAgentRequest_Exporter() {} @@ -3551,6 +3578,16 @@ func (*AddAgentRequest_RdsExporter) isAddAgentRequest_Exporter() {} func (*AddAgentRequest_AzureDatabaseExporter) isAddAgentRequest_Exporter() {} +func (*AddAgentRequest_QanMysqlPerfschemaAgent) isAddAgentRequest_Exporter() {} + +func (*AddAgentRequest_QanMysqlSlowlogAgent) isAddAgentRequest_Exporter() {} + +func (*AddAgentRequest_QanMongodbProfilerAgent) isAddAgentRequest_Exporter() {} + +func (*AddAgentRequest_QanPostgresqlPgstatementsAgent) isAddAgentRequest_Exporter() {} + +func (*AddAgentRequest_QanPostgresqlPgstatmonitorAgent) isAddAgentRequest_Exporter() {} + type AddAgentResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -3558,6 +3595,7 @@ type AddAgentResponse struct { // Types that are assignable to Exporter: // + // *AddAgentResponse_PmmAgent // *AddAgentResponse_NodeExporter // *AddAgentResponse_MysqldExporter // *AddAgentResponse_MongodbExporter @@ -3566,15 +3604,20 @@ type AddAgentResponse struct { // *AddAgentResponse_ExternalExporter // *AddAgentResponse_RdsExporter // *AddAgentResponse_AzureDatabaseExporter + // *AddAgentResponse_QanMysqlPerfschemaAgent + // *AddAgentResponse_QanMysqlSlowlogAgent + // *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,9,opt,name=table_count,json=tableCount,proto3" json:"table_count,omitempty"` + TableCount int32 `protobuf:"varint,15,opt,name=table_count,json=tableCount,proto3" json:"table_count,omitempty"` } func (x *AddAgentResponse) Reset() { *x = AddAgentResponse{} 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) } @@ -3587,7 +3630,7 @@ func (x *AddAgentResponse) String() string { func (*AddAgentResponse) ProtoMessage() {} func (x *AddAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[25] + mi := &file_inventory_v1_agents_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3600,7 +3643,7 @@ 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{25} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{24} } func (m *AddAgentResponse) GetExporter() isAddAgentResponse_Exporter { @@ -3610,6 +3653,13 @@ func (m *AddAgentResponse) GetExporter() isAddAgentResponse_Exporter { return nil } +func (x *AddAgentResponse) GetPmmAgent() *PMMAgent { + if x, ok := x.GetExporter().(*AddAgentResponse_PmmAgent); ok { + return x.PmmAgent + } + return nil +} + func (x *AddAgentResponse) GetNodeExporter() *NodeExporter { if x, ok := x.GetExporter().(*AddAgentResponse_NodeExporter); ok { return x.NodeExporter @@ -3666,6 +3716,41 @@ func (x *AddAgentResponse) GetAzureDatabaseExporter() *AzureDatabaseExporter { return nil } +func (x *AddAgentResponse) GetQanMysqlPerfschemaAgent() *QANMySQLPerfSchemaAgent { + if x, ok := x.GetExporter().(*AddAgentResponse_QanMysqlPerfschemaAgent); ok { + return x.QanMysqlPerfschemaAgent + } + return nil +} + +func (x *AddAgentResponse) GetQanMysqlSlowlogAgent() *QANMySQLSlowlogAgent { + if x, ok := x.GetExporter().(*AddAgentResponse_QanMysqlSlowlogAgent); ok { + return x.QanMysqlSlowlogAgent + } + return nil +} + +func (x *AddAgentResponse) GetQanMongodbProfilerAgent() *QANMongoDBProfilerAgent { + if x, ok := x.GetExporter().(*AddAgentResponse_QanMongodbProfilerAgent); ok { + return x.QanMongodbProfilerAgent + } + return nil +} + +func (x *AddAgentResponse) GetQanPostgresqlPgstatementsAgent() *QANPostgreSQLPgStatementsAgent { + if x, ok := x.GetExporter().(*AddAgentResponse_QanPostgresqlPgstatementsAgent); ok { + return x.QanPostgresqlPgstatementsAgent + } + return nil +} + +func (x *AddAgentResponse) GetQanPostgresqlPgstatmonitorAgent() *QANPostgreSQLPgStatMonitorAgent { + if x, ok := x.GetExporter().(*AddAgentResponse_QanPostgresqlPgstatmonitorAgent); ok { + return x.QanPostgresqlPgstatmonitorAgent + } + return nil +} + func (x *AddAgentResponse) GetTableCount() int32 { if x != nil { return x.TableCount @@ -3677,38 +3762,64 @@ type isAddAgentResponse_Exporter interface { isAddAgentResponse_Exporter() } +type AddAgentResponse_PmmAgent struct { + PmmAgent *PMMAgent `protobuf:"bytes,1,opt,name=pmm_agent,json=pmmAgent,proto3,oneof"` +} + type AddAgentResponse_NodeExporter struct { - NodeExporter *NodeExporter `protobuf:"bytes,1,opt,name=node_exporter,json=nodeExporter,proto3,oneof"` + NodeExporter *NodeExporter `protobuf:"bytes,2,opt,name=node_exporter,json=nodeExporter,proto3,oneof"` } type AddAgentResponse_MysqldExporter struct { - MysqldExporter *MySQLdExporter `protobuf:"bytes,2,opt,name=mysqld_exporter,json=mysqldExporter,proto3,oneof"` + MysqldExporter *MySQLdExporter `protobuf:"bytes,3,opt,name=mysqld_exporter,json=mysqldExporter,proto3,oneof"` } type AddAgentResponse_MongodbExporter struct { - MongodbExporter *MongoDBExporter `protobuf:"bytes,3,opt,name=mongodb_exporter,json=mongodbExporter,proto3,oneof"` + MongodbExporter *MongoDBExporter `protobuf:"bytes,4,opt,name=mongodb_exporter,json=mongodbExporter,proto3,oneof"` } type AddAgentResponse_PostgresExporter struct { - PostgresExporter *PostgresExporter `protobuf:"bytes,4,opt,name=postgres_exporter,json=postgresExporter,proto3,oneof"` + PostgresExporter *PostgresExporter `protobuf:"bytes,5,opt,name=postgres_exporter,json=postgresExporter,proto3,oneof"` } type AddAgentResponse_ProxysqlExporter struct { - ProxysqlExporter *ProxySQLExporter `protobuf:"bytes,5,opt,name=proxysql_exporter,json=proxysqlExporter,proto3,oneof"` + ProxysqlExporter *ProxySQLExporter `protobuf:"bytes,6,opt,name=proxysql_exporter,json=proxysqlExporter,proto3,oneof"` } type AddAgentResponse_ExternalExporter struct { - ExternalExporter *ExternalExporter `protobuf:"bytes,6,opt,name=external_exporter,json=externalExporter,proto3,oneof"` + ExternalExporter *ExternalExporter `protobuf:"bytes,7,opt,name=external_exporter,json=externalExporter,proto3,oneof"` } type AddAgentResponse_RdsExporter struct { - RdsExporter *RDSExporter `protobuf:"bytes,7,opt,name=rds_exporter,json=rdsExporter,proto3,oneof"` + RdsExporter *RDSExporter `protobuf:"bytes,8,opt,name=rds_exporter,json=rdsExporter,proto3,oneof"` } type AddAgentResponse_AzureDatabaseExporter struct { - AzureDatabaseExporter *AzureDatabaseExporter `protobuf:"bytes,8,opt,name=azure_database_exporter,json=azureDatabaseExporter,proto3,oneof"` + AzureDatabaseExporter *AzureDatabaseExporter `protobuf:"bytes,9,opt,name=azure_database_exporter,json=azureDatabaseExporter,proto3,oneof"` +} + +type AddAgentResponse_QanMysqlPerfschemaAgent struct { + QanMysqlPerfschemaAgent *QANMySQLPerfSchemaAgent `protobuf:"bytes,10,opt,name=qan_mysql_perfschema_agent,json=qanMysqlPerfschemaAgent,proto3,oneof"` +} + +type AddAgentResponse_QanMysqlSlowlogAgent struct { + QanMysqlSlowlogAgent *QANMySQLSlowlogAgent `protobuf:"bytes,11,opt,name=qan_mysql_slowlog_agent,json=qanMysqlSlowlogAgent,proto3,oneof"` +} + +type AddAgentResponse_QanMongodbProfilerAgent struct { + QanMongodbProfilerAgent *QANMongoDBProfilerAgent `protobuf:"bytes,12,opt,name=qan_mongodb_profiler_agent,json=qanMongodbProfilerAgent,proto3,oneof"` +} + +type AddAgentResponse_QanPostgresqlPgstatementsAgent struct { + QanPostgresqlPgstatementsAgent *QANPostgreSQLPgStatementsAgent `protobuf:"bytes,13,opt,name=qan_postgresql_pgstatements_agent,json=qanPostgresqlPgstatementsAgent,proto3,oneof"` +} + +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_NodeExporter) isAddAgentResponse_Exporter() {} func (*AddAgentResponse_MysqldExporter) isAddAgentResponse_Exporter() {} @@ -3725,6 +3836,16 @@ func (*AddAgentResponse_RdsExporter) isAddAgentResponse_Exporter() {} func (*AddAgentResponse_AzureDatabaseExporter) isAddAgentResponse_Exporter() {} +func (*AddAgentResponse_QanMysqlPerfschemaAgent) isAddAgentResponse_Exporter() {} + +func (*AddAgentResponse_QanMysqlSlowlogAgent) isAddAgentResponse_Exporter() {} + +func (*AddAgentResponse_QanMongodbProfilerAgent) isAddAgentResponse_Exporter() {} + +func (*AddAgentResponse_QanPostgresqlPgstatementsAgent) isAddAgentResponse_Exporter() {} + +func (*AddAgentResponse_QanPostgresqlPgstatmonitorAgent) isAddAgentResponse_Exporter() {} + type AddNodeExporterParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -3747,7 +3868,7 @@ type AddNodeExporterParams struct { func (x *AddNodeExporterParams) Reset() { *x = AddNodeExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[26] + mi := &file_inventory_v1_agents_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3760,7 +3881,7 @@ func (x *AddNodeExporterParams) String() string { func (*AddNodeExporterParams) ProtoMessage() {} func (x *AddNodeExporterParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[26] + mi := &file_inventory_v1_agents_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3773,7 +3894,7 @@ func (x *AddNodeExporterParams) ProtoReflect() protoreflect.Message { // Deprecated: Use AddNodeExporterParams.ProtoReflect.Descriptor instead. func (*AddNodeExporterParams) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{26} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{25} } func (x *AddNodeExporterParams) GetPmmAgentId() string { @@ -3830,7 +3951,7 @@ type ChangeNodeExporterRequest struct { func (x *ChangeNodeExporterRequest) Reset() { *x = ChangeNodeExporterRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[27] + mi := &file_inventory_v1_agents_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3843,7 +3964,7 @@ func (x *ChangeNodeExporterRequest) String() string { func (*ChangeNodeExporterRequest) ProtoMessage() {} func (x *ChangeNodeExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[27] + mi := &file_inventory_v1_agents_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3856,7 +3977,7 @@ func (x *ChangeNodeExporterRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeNodeExporterRequest.ProtoReflect.Descriptor instead. func (*ChangeNodeExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{27} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{26} } func (x *ChangeNodeExporterRequest) GetAgentId() string { @@ -3884,7 +4005,7 @@ type ChangeNodeExporterResponse struct { func (x *ChangeNodeExporterResponse) Reset() { *x = ChangeNodeExporterResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[28] + mi := &file_inventory_v1_agents_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3897,7 +4018,7 @@ func (x *ChangeNodeExporterResponse) String() string { func (*ChangeNodeExporterResponse) ProtoMessage() {} func (x *ChangeNodeExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[28] + mi := &file_inventory_v1_agents_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3910,7 +4031,7 @@ func (x *ChangeNodeExporterResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeNodeExporterResponse.ProtoReflect.Descriptor instead. func (*ChangeNodeExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{28} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{27} } func (x *ChangeNodeExporterResponse) GetNodeExporter() *NodeExporter { @@ -3966,7 +4087,7 @@ type AddMySQLdExporterParams struct { func (x *AddMySQLdExporterParams) Reset() { *x = AddMySQLdExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[29] + mi := &file_inventory_v1_agents_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3979,7 +4100,7 @@ func (x *AddMySQLdExporterParams) String() string { func (*AddMySQLdExporterParams) ProtoMessage() {} func (x *AddMySQLdExporterParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[29] + mi := &file_inventory_v1_agents_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3992,7 +4113,7 @@ func (x *AddMySQLdExporterParams) ProtoReflect() protoreflect.Message { // Deprecated: Use AddMySQLdExporterParams.ProtoReflect.Descriptor instead. func (*AddMySQLdExporterParams) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{29} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{28} } func (x *AddMySQLdExporterParams) GetPmmAgentId() string { @@ -4126,7 +4247,7 @@ type ChangeMySQLdExporterRequest struct { func (x *ChangeMySQLdExporterRequest) Reset() { *x = ChangeMySQLdExporterRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[30] + mi := &file_inventory_v1_agents_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4139,7 +4260,7 @@ func (x *ChangeMySQLdExporterRequest) String() string { func (*ChangeMySQLdExporterRequest) ProtoMessage() {} func (x *ChangeMySQLdExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[30] + mi := &file_inventory_v1_agents_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4152,7 +4273,7 @@ func (x *ChangeMySQLdExporterRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeMySQLdExporterRequest.ProtoReflect.Descriptor instead. func (*ChangeMySQLdExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{30} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{29} } func (x *ChangeMySQLdExporterRequest) GetAgentId() string { @@ -4180,7 +4301,7 @@ type ChangeMySQLdExporterResponse struct { func (x *ChangeMySQLdExporterResponse) Reset() { *x = ChangeMySQLdExporterResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[31] + mi := &file_inventory_v1_agents_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4193,7 +4314,7 @@ func (x *ChangeMySQLdExporterResponse) String() string { func (*ChangeMySQLdExporterResponse) ProtoMessage() {} func (x *ChangeMySQLdExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[31] + mi := &file_inventory_v1_agents_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4206,7 +4327,7 @@ func (x *ChangeMySQLdExporterResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeMySQLdExporterResponse.ProtoReflect.Descriptor instead. func (*ChangeMySQLdExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{31} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{30} } func (x *ChangeMySQLdExporterResponse) GetMysqldExporter() *MySQLdExporter { @@ -4269,7 +4390,7 @@ type AddMongoDBExporterParams struct { func (x *AddMongoDBExporterParams) Reset() { *x = AddMongoDBExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[32] + mi := &file_inventory_v1_agents_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4282,7 +4403,7 @@ func (x *AddMongoDBExporterParams) String() string { func (*AddMongoDBExporterParams) ProtoMessage() {} func (x *AddMongoDBExporterParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[32] + mi := &file_inventory_v1_agents_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4295,7 +4416,7 @@ func (x *AddMongoDBExporterParams) ProtoReflect() protoreflect.Message { // Deprecated: Use AddMongoDBExporterParams.ProtoReflect.Descriptor instead. func (*AddMongoDBExporterParams) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{32} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{31} } func (x *AddMongoDBExporterParams) GetPmmAgentId() string { @@ -4450,7 +4571,7 @@ type ChangeMongoDBExporterRequest struct { func (x *ChangeMongoDBExporterRequest) Reset() { *x = ChangeMongoDBExporterRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[33] + mi := &file_inventory_v1_agents_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4463,7 +4584,7 @@ func (x *ChangeMongoDBExporterRequest) String() string { func (*ChangeMongoDBExporterRequest) ProtoMessage() {} func (x *ChangeMongoDBExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[33] + mi := &file_inventory_v1_agents_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4476,7 +4597,7 @@ func (x *ChangeMongoDBExporterRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeMongoDBExporterRequest.ProtoReflect.Descriptor instead. func (*ChangeMongoDBExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{33} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{32} } func (x *ChangeMongoDBExporterRequest) GetAgentId() string { @@ -4504,7 +4625,7 @@ type ChangeMongoDBExporterResponse struct { func (x *ChangeMongoDBExporterResponse) Reset() { *x = ChangeMongoDBExporterResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[34] + mi := &file_inventory_v1_agents_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4517,7 +4638,7 @@ func (x *ChangeMongoDBExporterResponse) String() string { func (*ChangeMongoDBExporterResponse) ProtoMessage() {} func (x *ChangeMongoDBExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[34] + mi := &file_inventory_v1_agents_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4530,7 +4651,7 @@ func (x *ChangeMongoDBExporterResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeMongoDBExporterResponse.ProtoReflect.Descriptor instead. func (*ChangeMongoDBExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{34} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{33} } func (x *ChangeMongoDBExporterResponse) GetMongodbExporter() *MongoDBExporter { @@ -4584,7 +4705,7 @@ type AddPostgresExporterParams struct { func (x *AddPostgresExporterParams) Reset() { *x = AddPostgresExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[35] + mi := &file_inventory_v1_agents_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4597,7 +4718,7 @@ func (x *AddPostgresExporterParams) String() string { func (*AddPostgresExporterParams) ProtoMessage() {} func (x *AddPostgresExporterParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[35] + mi := &file_inventory_v1_agents_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4610,7 +4731,7 @@ func (x *AddPostgresExporterParams) ProtoReflect() protoreflect.Message { // Deprecated: Use AddPostgresExporterParams.ProtoReflect.Descriptor instead. func (*AddPostgresExporterParams) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{35} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{34} } func (x *AddPostgresExporterParams) GetPmmAgentId() string { @@ -4744,7 +4865,7 @@ type ChangePostgresExporterRequest struct { func (x *ChangePostgresExporterRequest) Reset() { *x = ChangePostgresExporterRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[36] + mi := &file_inventory_v1_agents_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4757,7 +4878,7 @@ func (x *ChangePostgresExporterRequest) String() string { func (*ChangePostgresExporterRequest) ProtoMessage() {} func (x *ChangePostgresExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[36] + mi := &file_inventory_v1_agents_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4770,7 +4891,7 @@ func (x *ChangePostgresExporterRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangePostgresExporterRequest.ProtoReflect.Descriptor instead. func (*ChangePostgresExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{36} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{35} } func (x *ChangePostgresExporterRequest) GetAgentId() string { @@ -4798,7 +4919,7 @@ type ChangePostgresExporterResponse struct { func (x *ChangePostgresExporterResponse) Reset() { *x = ChangePostgresExporterResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[37] + mi := &file_inventory_v1_agents_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4811,7 +4932,7 @@ func (x *ChangePostgresExporterResponse) String() string { func (*ChangePostgresExporterResponse) ProtoMessage() {} func (x *ChangePostgresExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[37] + mi := &file_inventory_v1_agents_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4824,7 +4945,7 @@ func (x *ChangePostgresExporterResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangePostgresExporterResponse.ProtoReflect.Descriptor instead. func (*ChangePostgresExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{37} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{36} } func (x *ChangePostgresExporterResponse) GetPostgresExporter() *PostgresExporter { @@ -4870,7 +4991,7 @@ type AddProxySQLExporterParams struct { func (x *AddProxySQLExporterParams) Reset() { *x = AddProxySQLExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[38] + mi := &file_inventory_v1_agents_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4883,7 +5004,7 @@ func (x *AddProxySQLExporterParams) String() string { func (*AddProxySQLExporterParams) ProtoMessage() {} func (x *AddProxySQLExporterParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[38] + mi := &file_inventory_v1_agents_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4896,7 +5017,7 @@ func (x *AddProxySQLExporterParams) ProtoReflect() protoreflect.Message { // Deprecated: Use AddProxySQLExporterParams.ProtoReflect.Descriptor instead. func (*AddProxySQLExporterParams) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{38} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{37} } func (x *AddProxySQLExporterParams) GetPmmAgentId() string { @@ -5002,7 +5123,7 @@ type ChangeProxySQLExporterRequest struct { func (x *ChangeProxySQLExporterRequest) Reset() { *x = ChangeProxySQLExporterRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[39] + mi := &file_inventory_v1_agents_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5015,7 +5136,7 @@ func (x *ChangeProxySQLExporterRequest) String() string { func (*ChangeProxySQLExporterRequest) ProtoMessage() {} func (x *ChangeProxySQLExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[39] + mi := &file_inventory_v1_agents_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5028,7 +5149,7 @@ func (x *ChangeProxySQLExporterRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeProxySQLExporterRequest.ProtoReflect.Descriptor instead. func (*ChangeProxySQLExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{39} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{38} } func (x *ChangeProxySQLExporterRequest) GetAgentId() string { @@ -5056,7 +5177,7 @@ type ChangeProxySQLExporterResponse struct { func (x *ChangeProxySQLExporterResponse) Reset() { *x = ChangeProxySQLExporterResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[40] + mi := &file_inventory_v1_agents_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5069,7 +5190,7 @@ func (x *ChangeProxySQLExporterResponse) String() string { func (*ChangeProxySQLExporterResponse) ProtoMessage() {} func (x *ChangeProxySQLExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[40] + mi := &file_inventory_v1_agents_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5082,7 +5203,7 @@ func (x *ChangeProxySQLExporterResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeProxySQLExporterResponse.ProtoReflect.Descriptor instead. func (*ChangeProxySQLExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{40} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{39} } func (x *ChangeProxySQLExporterResponse) GetProxysqlExporter() *ProxySQLExporter { @@ -5092,7 +5213,7 @@ func (x *ChangeProxySQLExporterResponse) GetProxysqlExporter() *ProxySQLExporter return nil } -type AddQANMySQLPerfSchemaAgentRequest struct { +type AddQANMySQLPerfSchemaAgentParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -5129,23 +5250,23 @@ type AddQANMySQLPerfSchemaAgentRequest struct { LogLevel LogLevel `protobuf:"varint,13,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` } -func (x *AddQANMySQLPerfSchemaAgentRequest) Reset() { - *x = AddQANMySQLPerfSchemaAgentRequest{} +func (x *AddQANMySQLPerfSchemaAgentParams) Reset() { + *x = AddQANMySQLPerfSchemaAgentParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[41] + mi := &file_inventory_v1_agents_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AddQANMySQLPerfSchemaAgentRequest) String() string { +func (x *AddQANMySQLPerfSchemaAgentParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddQANMySQLPerfSchemaAgentRequest) ProtoMessage() {} +func (*AddQANMySQLPerfSchemaAgentParams) ProtoMessage() {} -func (x *AddQANMySQLPerfSchemaAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[41] +func (x *AddQANMySQLPerfSchemaAgentParams) 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 { @@ -5156,189 +5277,142 @@ func (x *AddQANMySQLPerfSchemaAgentRequest) ProtoReflect() protoreflect.Message return mi.MessageOf(x) } -// Deprecated: Use AddQANMySQLPerfSchemaAgentRequest.ProtoReflect.Descriptor instead. -func (*AddQANMySQLPerfSchemaAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{41} +// Deprecated: Use AddQANMySQLPerfSchemaAgentParams.ProtoReflect.Descriptor instead. +func (*AddQANMySQLPerfSchemaAgentParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{40} } -func (x *AddQANMySQLPerfSchemaAgentRequest) GetPmmAgentId() string { +func (x *AddQANMySQLPerfSchemaAgentParams) GetPmmAgentId() string { if x != nil { return x.PmmAgentId } return "" } -func (x *AddQANMySQLPerfSchemaAgentRequest) GetServiceId() string { +func (x *AddQANMySQLPerfSchemaAgentParams) GetServiceId() string { if x != nil { return x.ServiceId } return "" } -func (x *AddQANMySQLPerfSchemaAgentRequest) GetUsername() string { +func (x *AddQANMySQLPerfSchemaAgentParams) GetUsername() string { if x != nil { return x.Username } return "" } -func (x *AddQANMySQLPerfSchemaAgentRequest) GetPassword() string { +func (x *AddQANMySQLPerfSchemaAgentParams) GetPassword() string { if x != nil { return x.Password } return "" } -func (x *AddQANMySQLPerfSchemaAgentRequest) GetTls() bool { +func (x *AddQANMySQLPerfSchemaAgentParams) GetTls() bool { if x != nil { return x.Tls } return false } -func (x *AddQANMySQLPerfSchemaAgentRequest) GetTlsSkipVerify() bool { +func (x *AddQANMySQLPerfSchemaAgentParams) GetTlsSkipVerify() bool { if x != nil { return x.TlsSkipVerify } return false } -func (x *AddQANMySQLPerfSchemaAgentRequest) GetTlsCa() string { +func (x *AddQANMySQLPerfSchemaAgentParams) GetTlsCa() string { if x != nil { return x.TlsCa } return "" } -func (x *AddQANMySQLPerfSchemaAgentRequest) GetTlsCert() string { +func (x *AddQANMySQLPerfSchemaAgentParams) GetTlsCert() string { if x != nil { return x.TlsCert } return "" } -func (x *AddQANMySQLPerfSchemaAgentRequest) GetTlsKey() string { +func (x *AddQANMySQLPerfSchemaAgentParams) GetTlsKey() string { if x != nil { return x.TlsKey } return "" } -func (x *AddQANMySQLPerfSchemaAgentRequest) GetMaxQueryLength() int32 { +func (x *AddQANMySQLPerfSchemaAgentParams) GetMaxQueryLength() int32 { if x != nil { return x.MaxQueryLength } return 0 } -func (x *AddQANMySQLPerfSchemaAgentRequest) GetDisableQueryExamples() bool { +func (x *AddQANMySQLPerfSchemaAgentParams) GetDisableQueryExamples() bool { if x != nil { return x.DisableQueryExamples } return false } -func (x *AddQANMySQLPerfSchemaAgentRequest) GetCustomLabels() map[string]string { +func (x *AddQANMySQLPerfSchemaAgentParams) GetCustomLabels() map[string]string { if x != nil { return x.CustomLabels } return nil } -func (x *AddQANMySQLPerfSchemaAgentRequest) GetSkipConnectionCheck() bool { +func (x *AddQANMySQLPerfSchemaAgentParams) GetSkipConnectionCheck() bool { if x != nil { return x.SkipConnectionCheck } return false } -func (x *AddQANMySQLPerfSchemaAgentRequest) GetDisableCommentsParsing() bool { +func (x *AddQANMySQLPerfSchemaAgentParams) GetDisableCommentsParsing() bool { if x != nil { return x.DisableCommentsParsing } return false } -func (x *AddQANMySQLPerfSchemaAgentRequest) GetLogLevel() LogLevel { +func (x *AddQANMySQLPerfSchemaAgentParams) GetLogLevel() LogLevel { if x != nil { return x.LogLevel } return LogLevel_LOG_LEVEL_UNSPECIFIED } -type AddQANMySQLPerfSchemaAgentResponse struct { +type ChangeQANMySQLPerfSchemaAgentRequest 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"` + 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 *AddQANMySQLPerfSchemaAgentResponse) Reset() { - *x = AddQANMySQLPerfSchemaAgentResponse{} +func (x *ChangeQANMySQLPerfSchemaAgentRequest) Reset() { + *x = ChangeQANMySQLPerfSchemaAgentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[42] + mi := &file_inventory_v1_agents_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AddQANMySQLPerfSchemaAgentResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AddQANMySQLPerfSchemaAgentResponse) ProtoMessage() {} - -func (x *AddQANMySQLPerfSchemaAgentResponse) 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 AddQANMySQLPerfSchemaAgentResponse.ProtoReflect.Descriptor instead. -func (*AddQANMySQLPerfSchemaAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{42} -} - -func (x *AddQANMySQLPerfSchemaAgentResponse) GetQanMysqlPerfschemaAgent() *QANMySQLPerfSchemaAgent { - if x != nil { - return x.QanMysqlPerfschemaAgent - } - return nil -} - -type ChangeQANMySQLPerfSchemaAgentRequest 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 *ChangeQANMySQLPerfSchemaAgentRequest) Reset() { - *x = ChangeQANMySQLPerfSchemaAgentRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[43] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ChangeQANMySQLPerfSchemaAgentRequest) String() string { +func (x *ChangeQANMySQLPerfSchemaAgentRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ChangeQANMySQLPerfSchemaAgentRequest) ProtoMessage() {} func (x *ChangeQANMySQLPerfSchemaAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[43] + mi := &file_inventory_v1_agents_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5351,7 +5425,7 @@ func (x *ChangeQANMySQLPerfSchemaAgentRequest) ProtoReflect() protoreflect.Messa // Deprecated: Use ChangeQANMySQLPerfSchemaAgentRequest.ProtoReflect.Descriptor instead. func (*ChangeQANMySQLPerfSchemaAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{43} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{41} } func (x *ChangeQANMySQLPerfSchemaAgentRequest) GetAgentId() string { @@ -5379,7 +5453,7 @@ type ChangeQANMySQLPerfSchemaAgentResponse struct { func (x *ChangeQANMySQLPerfSchemaAgentResponse) Reset() { *x = ChangeQANMySQLPerfSchemaAgentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[44] + mi := &file_inventory_v1_agents_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5392,7 +5466,7 @@ func (x *ChangeQANMySQLPerfSchemaAgentResponse) String() string { func (*ChangeQANMySQLPerfSchemaAgentResponse) ProtoMessage() {} func (x *ChangeQANMySQLPerfSchemaAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[44] + mi := &file_inventory_v1_agents_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5405,7 +5479,7 @@ func (x *ChangeQANMySQLPerfSchemaAgentResponse) ProtoReflect() protoreflect.Mess // Deprecated: Use ChangeQANMySQLPerfSchemaAgentResponse.ProtoReflect.Descriptor instead. func (*ChangeQANMySQLPerfSchemaAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{44} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{42} } func (x *ChangeQANMySQLPerfSchemaAgentResponse) GetQanMysqlPerfschemaAgent() *QANMySQLPerfSchemaAgent { @@ -5415,7 +5489,7 @@ func (x *ChangeQANMySQLPerfSchemaAgentResponse) GetQanMysqlPerfschemaAgent() *QA return nil } -type AddQANMySQLSlowlogAgentRequest struct { +type AddQANMySQLSlowlogAgentParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -5455,23 +5529,23 @@ type AddQANMySQLSlowlogAgentRequest struct { LogLevel LogLevel `protobuf:"varint,14,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` } -func (x *AddQANMySQLSlowlogAgentRequest) Reset() { - *x = AddQANMySQLSlowlogAgentRequest{} +func (x *AddQANMySQLSlowlogAgentParams) Reset() { + *x = AddQANMySQLSlowlogAgentParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[45] + mi := &file_inventory_v1_agents_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AddQANMySQLSlowlogAgentRequest) String() string { +func (x *AddQANMySQLSlowlogAgentParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddQANMySQLSlowlogAgentRequest) ProtoMessage() {} +func (*AddQANMySQLSlowlogAgentParams) ProtoMessage() {} -func (x *AddQANMySQLSlowlogAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[45] +func (x *AddQANMySQLSlowlogAgentParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5482,170 +5556,123 @@ func (x *AddQANMySQLSlowlogAgentRequest) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use AddQANMySQLSlowlogAgentRequest.ProtoReflect.Descriptor instead. -func (*AddQANMySQLSlowlogAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{45} +// Deprecated: Use AddQANMySQLSlowlogAgentParams.ProtoReflect.Descriptor instead. +func (*AddQANMySQLSlowlogAgentParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{43} } -func (x *AddQANMySQLSlowlogAgentRequest) GetPmmAgentId() string { +func (x *AddQANMySQLSlowlogAgentParams) GetPmmAgentId() string { if x != nil { return x.PmmAgentId } return "" } -func (x *AddQANMySQLSlowlogAgentRequest) GetServiceId() string { +func (x *AddQANMySQLSlowlogAgentParams) GetServiceId() string { if x != nil { return x.ServiceId } return "" } -func (x *AddQANMySQLSlowlogAgentRequest) GetUsername() string { +func (x *AddQANMySQLSlowlogAgentParams) GetUsername() string { if x != nil { return x.Username } return "" } -func (x *AddQANMySQLSlowlogAgentRequest) GetPassword() string { +func (x *AddQANMySQLSlowlogAgentParams) GetPassword() string { if x != nil { return x.Password } return "" } -func (x *AddQANMySQLSlowlogAgentRequest) GetTls() bool { +func (x *AddQANMySQLSlowlogAgentParams) GetTls() bool { if x != nil { return x.Tls } return false } -func (x *AddQANMySQLSlowlogAgentRequest) GetTlsSkipVerify() bool { +func (x *AddQANMySQLSlowlogAgentParams) GetTlsSkipVerify() bool { if x != nil { return x.TlsSkipVerify } return false } -func (x *AddQANMySQLSlowlogAgentRequest) GetTlsCa() string { +func (x *AddQANMySQLSlowlogAgentParams) GetTlsCa() string { if x != nil { return x.TlsCa } return "" } -func (x *AddQANMySQLSlowlogAgentRequest) GetTlsCert() string { +func (x *AddQANMySQLSlowlogAgentParams) GetTlsCert() string { if x != nil { return x.TlsCert } return "" } -func (x *AddQANMySQLSlowlogAgentRequest) GetTlsKey() string { +func (x *AddQANMySQLSlowlogAgentParams) GetTlsKey() string { if x != nil { return x.TlsKey } return "" } -func (x *AddQANMySQLSlowlogAgentRequest) GetMaxQueryLength() int32 { +func (x *AddQANMySQLSlowlogAgentParams) GetMaxQueryLength() int32 { if x != nil { return x.MaxQueryLength } return 0 } -func (x *AddQANMySQLSlowlogAgentRequest) GetDisableQueryExamples() bool { +func (x *AddQANMySQLSlowlogAgentParams) GetDisableQueryExamples() bool { if x != nil { return x.DisableQueryExamples } return false } -func (x *AddQANMySQLSlowlogAgentRequest) GetMaxSlowlogFileSize() int64 { +func (x *AddQANMySQLSlowlogAgentParams) GetMaxSlowlogFileSize() int64 { if x != nil { return x.MaxSlowlogFileSize } return 0 } -func (x *AddQANMySQLSlowlogAgentRequest) GetCustomLabels() map[string]string { +func (x *AddQANMySQLSlowlogAgentParams) GetCustomLabels() map[string]string { if x != nil { return x.CustomLabels } return nil } -func (x *AddQANMySQLSlowlogAgentRequest) GetSkipConnectionCheck() bool { +func (x *AddQANMySQLSlowlogAgentParams) GetSkipConnectionCheck() bool { if x != nil { return x.SkipConnectionCheck } return false } -func (x *AddQANMySQLSlowlogAgentRequest) GetDisableCommentsParsing() bool { +func (x *AddQANMySQLSlowlogAgentParams) GetDisableCommentsParsing() bool { if x != nil { return x.DisableCommentsParsing } return false } -func (x *AddQANMySQLSlowlogAgentRequest) GetLogLevel() LogLevel { +func (x *AddQANMySQLSlowlogAgentParams) GetLogLevel() LogLevel { if x != nil { return x.LogLevel } return LogLevel_LOG_LEVEL_UNSPECIFIED } -type AddQANMySQLSlowlogAgentResponse 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 *AddQANMySQLSlowlogAgentResponse) Reset() { - *x = AddQANMySQLSlowlogAgentResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[46] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AddQANMySQLSlowlogAgentResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AddQANMySQLSlowlogAgentResponse) ProtoMessage() {} - -func (x *AddQANMySQLSlowlogAgentResponse) 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 { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use AddQANMySQLSlowlogAgentResponse.ProtoReflect.Descriptor instead. -func (*AddQANMySQLSlowlogAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{46} -} - -func (x *AddQANMySQLSlowlogAgentResponse) GetQanMysqlSlowlogAgent() *QANMySQLSlowlogAgent { - if x != nil { - return x.QanMysqlSlowlogAgent - } - return nil -} - type ChangeQANMySQLSlowlogAgentRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -5658,7 +5685,7 @@ type ChangeQANMySQLSlowlogAgentRequest struct { func (x *ChangeQANMySQLSlowlogAgentRequest) Reset() { *x = ChangeQANMySQLSlowlogAgentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[47] + mi := &file_inventory_v1_agents_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5671,7 +5698,7 @@ func (x *ChangeQANMySQLSlowlogAgentRequest) String() string { func (*ChangeQANMySQLSlowlogAgentRequest) ProtoMessage() {} func (x *ChangeQANMySQLSlowlogAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[47] + mi := &file_inventory_v1_agents_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5684,7 +5711,7 @@ func (x *ChangeQANMySQLSlowlogAgentRequest) ProtoReflect() protoreflect.Message // Deprecated: Use ChangeQANMySQLSlowlogAgentRequest.ProtoReflect.Descriptor instead. func (*ChangeQANMySQLSlowlogAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{47} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{44} } func (x *ChangeQANMySQLSlowlogAgentRequest) GetAgentId() string { @@ -5712,7 +5739,7 @@ type ChangeQANMySQLSlowlogAgentResponse struct { func (x *ChangeQANMySQLSlowlogAgentResponse) Reset() { *x = ChangeQANMySQLSlowlogAgentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[48] + mi := &file_inventory_v1_agents_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5725,7 +5752,7 @@ func (x *ChangeQANMySQLSlowlogAgentResponse) String() string { func (*ChangeQANMySQLSlowlogAgentResponse) ProtoMessage() {} func (x *ChangeQANMySQLSlowlogAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[48] + mi := &file_inventory_v1_agents_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5738,7 +5765,7 @@ func (x *ChangeQANMySQLSlowlogAgentResponse) ProtoReflect() protoreflect.Message // Deprecated: Use ChangeQANMySQLSlowlogAgentResponse.ProtoReflect.Descriptor instead. func (*ChangeQANMySQLSlowlogAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{48} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{45} } func (x *ChangeQANMySQLSlowlogAgentResponse) GetQanMysqlSlowlogAgent() *QANMySQLSlowlogAgent { @@ -5748,7 +5775,7 @@ func (x *ChangeQANMySQLSlowlogAgentResponse) GetQanMysqlSlowlogAgent() *QANMySQL return nil } -type AddQANMongoDBProfilerAgentRequest struct { +type AddQANMongoDBProfilerAgentParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -5787,23 +5814,23 @@ type AddQANMongoDBProfilerAgentRequest struct { LogLevel LogLevel `protobuf:"varint,14,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` } -func (x *AddQANMongoDBProfilerAgentRequest) Reset() { - *x = AddQANMongoDBProfilerAgentRequest{} +func (x *AddQANMongoDBProfilerAgentParams) Reset() { + *x = AddQANMongoDBProfilerAgentParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[49] + mi := &file_inventory_v1_agents_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AddQANMongoDBProfilerAgentRequest) String() string { +func (x *AddQANMongoDBProfilerAgentParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddQANMongoDBProfilerAgentRequest) ProtoMessage() {} +func (*AddQANMongoDBProfilerAgentParams) ProtoMessage() {} -func (x *AddQANMongoDBProfilerAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[49] +func (x *AddQANMongoDBProfilerAgentParams) 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 { @@ -5814,163 +5841,116 @@ func (x *AddQANMongoDBProfilerAgentRequest) ProtoReflect() protoreflect.Message return mi.MessageOf(x) } -// Deprecated: Use AddQANMongoDBProfilerAgentRequest.ProtoReflect.Descriptor instead. -func (*AddQANMongoDBProfilerAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{49} +// Deprecated: Use AddQANMongoDBProfilerAgentParams.ProtoReflect.Descriptor instead. +func (*AddQANMongoDBProfilerAgentParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{46} } -func (x *AddQANMongoDBProfilerAgentRequest) GetPmmAgentId() string { +func (x *AddQANMongoDBProfilerAgentParams) GetPmmAgentId() string { if x != nil { return x.PmmAgentId } return "" } -func (x *AddQANMongoDBProfilerAgentRequest) GetServiceId() string { +func (x *AddQANMongoDBProfilerAgentParams) GetServiceId() string { if x != nil { return x.ServiceId } return "" } -func (x *AddQANMongoDBProfilerAgentRequest) GetUsername() string { +func (x *AddQANMongoDBProfilerAgentParams) GetUsername() string { if x != nil { return x.Username } return "" } -func (x *AddQANMongoDBProfilerAgentRequest) GetPassword() string { +func (x *AddQANMongoDBProfilerAgentParams) GetPassword() string { if x != nil { return x.Password } return "" } -func (x *AddQANMongoDBProfilerAgentRequest) GetTls() bool { +func (x *AddQANMongoDBProfilerAgentParams) GetTls() bool { if x != nil { return x.Tls } return false } -func (x *AddQANMongoDBProfilerAgentRequest) GetTlsSkipVerify() bool { +func (x *AddQANMongoDBProfilerAgentParams) GetTlsSkipVerify() bool { if x != nil { return x.TlsSkipVerify } return false } -func (x *AddQANMongoDBProfilerAgentRequest) GetTlsCertificateKey() string { +func (x *AddQANMongoDBProfilerAgentParams) GetTlsCertificateKey() string { if x != nil { return x.TlsCertificateKey } return "" } -func (x *AddQANMongoDBProfilerAgentRequest) GetTlsCertificateKeyFilePassword() string { +func (x *AddQANMongoDBProfilerAgentParams) GetTlsCertificateKeyFilePassword() string { if x != nil { return x.TlsCertificateKeyFilePassword } return "" } -func (x *AddQANMongoDBProfilerAgentRequest) GetTlsCa() string { +func (x *AddQANMongoDBProfilerAgentParams) GetTlsCa() string { if x != nil { return x.TlsCa } return "" } -func (x *AddQANMongoDBProfilerAgentRequest) GetMaxQueryLength() int32 { +func (x *AddQANMongoDBProfilerAgentParams) GetMaxQueryLength() int32 { if x != nil { return x.MaxQueryLength } return 0 } -func (x *AddQANMongoDBProfilerAgentRequest) GetCustomLabels() map[string]string { +func (x *AddQANMongoDBProfilerAgentParams) GetCustomLabels() map[string]string { if x != nil { return x.CustomLabels } return nil } -func (x *AddQANMongoDBProfilerAgentRequest) GetSkipConnectionCheck() bool { +func (x *AddQANMongoDBProfilerAgentParams) GetSkipConnectionCheck() bool { if x != nil { return x.SkipConnectionCheck } return false } -func (x *AddQANMongoDBProfilerAgentRequest) GetAuthenticationMechanism() string { +func (x *AddQANMongoDBProfilerAgentParams) GetAuthenticationMechanism() string { if x != nil { return x.AuthenticationMechanism } return "" } -func (x *AddQANMongoDBProfilerAgentRequest) GetAuthenticationDatabase() string { +func (x *AddQANMongoDBProfilerAgentParams) GetAuthenticationDatabase() string { if x != nil { return x.AuthenticationDatabase } return "" } -func (x *AddQANMongoDBProfilerAgentRequest) GetLogLevel() LogLevel { +func (x *AddQANMongoDBProfilerAgentParams) GetLogLevel() LogLevel { if x != nil { return x.LogLevel } return LogLevel_LOG_LEVEL_UNSPECIFIED } -type AddQANMongoDBProfilerAgentResponse 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 *AddQANMongoDBProfilerAgentResponse) Reset() { - *x = AddQANMongoDBProfilerAgentResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[50] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AddQANMongoDBProfilerAgentResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AddQANMongoDBProfilerAgentResponse) ProtoMessage() {} - -func (x *AddQANMongoDBProfilerAgentResponse) 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 { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use AddQANMongoDBProfilerAgentResponse.ProtoReflect.Descriptor instead. -func (*AddQANMongoDBProfilerAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{50} -} - -func (x *AddQANMongoDBProfilerAgentResponse) GetQanMongodbProfilerAgent() *QANMongoDBProfilerAgent { - if x != nil { - return x.QanMongodbProfilerAgent - } - return nil -} - type ChangeQANMongoDBProfilerAgentRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -5983,7 +5963,7 @@ type ChangeQANMongoDBProfilerAgentRequest struct { func (x *ChangeQANMongoDBProfilerAgentRequest) Reset() { *x = ChangeQANMongoDBProfilerAgentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[51] + mi := &file_inventory_v1_agents_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5996,7 +5976,7 @@ func (x *ChangeQANMongoDBProfilerAgentRequest) String() string { func (*ChangeQANMongoDBProfilerAgentRequest) ProtoMessage() {} func (x *ChangeQANMongoDBProfilerAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[51] + mi := &file_inventory_v1_agents_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6009,7 +5989,7 @@ func (x *ChangeQANMongoDBProfilerAgentRequest) ProtoReflect() protoreflect.Messa // Deprecated: Use ChangeQANMongoDBProfilerAgentRequest.ProtoReflect.Descriptor instead. func (*ChangeQANMongoDBProfilerAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{51} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{47} } func (x *ChangeQANMongoDBProfilerAgentRequest) GetAgentId() string { @@ -6037,7 +6017,7 @@ type ChangeQANMongoDBProfilerAgentResponse struct { func (x *ChangeQANMongoDBProfilerAgentResponse) Reset() { *x = ChangeQANMongoDBProfilerAgentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[52] + mi := &file_inventory_v1_agents_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6050,7 +6030,7 @@ func (x *ChangeQANMongoDBProfilerAgentResponse) String() string { func (*ChangeQANMongoDBProfilerAgentResponse) ProtoMessage() {} func (x *ChangeQANMongoDBProfilerAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[52] + mi := &file_inventory_v1_agents_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6063,7 +6043,7 @@ func (x *ChangeQANMongoDBProfilerAgentResponse) ProtoReflect() protoreflect.Mess // Deprecated: Use ChangeQANMongoDBProfilerAgentResponse.ProtoReflect.Descriptor instead. func (*ChangeQANMongoDBProfilerAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{52} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{48} } func (x *ChangeQANMongoDBProfilerAgentResponse) GetQanMongodbProfilerAgent() *QANMongoDBProfilerAgent { @@ -6073,7 +6053,7 @@ func (x *ChangeQANMongoDBProfilerAgentResponse) GetQanMongodbProfilerAgent() *QA return nil } -type AddQANPostgreSQLPgStatementsAgentRequest struct { +type AddQANPostgreSQLPgStatementsAgentParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -6108,23 +6088,23 @@ type AddQANPostgreSQLPgStatementsAgentRequest struct { LogLevel LogLevel `protobuf:"varint,12,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` } -func (x *AddQANPostgreSQLPgStatementsAgentRequest) Reset() { - *x = AddQANPostgreSQLPgStatementsAgentRequest{} +func (x *AddQANPostgreSQLPgStatementsAgentParams) Reset() { + *x = AddQANPostgreSQLPgStatementsAgentParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[53] + mi := &file_inventory_v1_agents_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AddQANPostgreSQLPgStatementsAgentRequest) String() string { +func (x *AddQANPostgreSQLPgStatementsAgentParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddQANPostgreSQLPgStatementsAgentRequest) ProtoMessage() {} +func (*AddQANPostgreSQLPgStatementsAgentParams) ProtoMessage() {} -func (x *AddQANPostgreSQLPgStatementsAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[53] +func (x *AddQANPostgreSQLPgStatementsAgentParams) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6135,156 +6115,109 @@ func (x *AddQANPostgreSQLPgStatementsAgentRequest) ProtoReflect() protoreflect.M return mi.MessageOf(x) } -// Deprecated: Use AddQANPostgreSQLPgStatementsAgentRequest.ProtoReflect.Descriptor instead. -func (*AddQANPostgreSQLPgStatementsAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{53} +// Deprecated: Use AddQANPostgreSQLPgStatementsAgentParams.ProtoReflect.Descriptor instead. +func (*AddQANPostgreSQLPgStatementsAgentParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{49} } -func (x *AddQANPostgreSQLPgStatementsAgentRequest) GetPmmAgentId() string { +func (x *AddQANPostgreSQLPgStatementsAgentParams) GetPmmAgentId() string { if x != nil { return x.PmmAgentId } return "" } -func (x *AddQANPostgreSQLPgStatementsAgentRequest) GetServiceId() string { +func (x *AddQANPostgreSQLPgStatementsAgentParams) GetServiceId() string { if x != nil { return x.ServiceId } return "" } -func (x *AddQANPostgreSQLPgStatementsAgentRequest) GetUsername() string { +func (x *AddQANPostgreSQLPgStatementsAgentParams) GetUsername() string { if x != nil { return x.Username } return "" } -func (x *AddQANPostgreSQLPgStatementsAgentRequest) GetPassword() string { +func (x *AddQANPostgreSQLPgStatementsAgentParams) GetPassword() string { if x != nil { return x.Password } return "" } -func (x *AddQANPostgreSQLPgStatementsAgentRequest) GetTls() bool { +func (x *AddQANPostgreSQLPgStatementsAgentParams) GetTls() bool { if x != nil { return x.Tls } return false } -func (x *AddQANPostgreSQLPgStatementsAgentRequest) GetTlsSkipVerify() bool { +func (x *AddQANPostgreSQLPgStatementsAgentParams) GetTlsSkipVerify() bool { if x != nil { return x.TlsSkipVerify } return false } -func (x *AddQANPostgreSQLPgStatementsAgentRequest) GetCustomLabels() map[string]string { +func (x *AddQANPostgreSQLPgStatementsAgentParams) GetCustomLabels() map[string]string { if x != nil { return x.CustomLabels } return nil } -func (x *AddQANPostgreSQLPgStatementsAgentRequest) GetSkipConnectionCheck() bool { +func (x *AddQANPostgreSQLPgStatementsAgentParams) GetSkipConnectionCheck() bool { if x != nil { return x.SkipConnectionCheck } return false } -func (x *AddQANPostgreSQLPgStatementsAgentRequest) GetDisableCommentsParsing() bool { +func (x *AddQANPostgreSQLPgStatementsAgentParams) GetDisableCommentsParsing() bool { if x != nil { return x.DisableCommentsParsing } return false } -func (x *AddQANPostgreSQLPgStatementsAgentRequest) GetMaxQueryLength() int32 { +func (x *AddQANPostgreSQLPgStatementsAgentParams) GetMaxQueryLength() int32 { if x != nil { return x.MaxQueryLength } return 0 } -func (x *AddQANPostgreSQLPgStatementsAgentRequest) GetTlsCa() string { +func (x *AddQANPostgreSQLPgStatementsAgentParams) GetTlsCa() string { if x != nil { return x.TlsCa } return "" } -func (x *AddQANPostgreSQLPgStatementsAgentRequest) GetTlsCert() string { +func (x *AddQANPostgreSQLPgStatementsAgentParams) GetTlsCert() string { if x != nil { return x.TlsCert } return "" } -func (x *AddQANPostgreSQLPgStatementsAgentRequest) GetTlsKey() string { +func (x *AddQANPostgreSQLPgStatementsAgentParams) GetTlsKey() string { if x != nil { return x.TlsKey } return "" } -func (x *AddQANPostgreSQLPgStatementsAgentRequest) GetLogLevel() LogLevel { +func (x *AddQANPostgreSQLPgStatementsAgentParams) GetLogLevel() LogLevel { if x != nil { return x.LogLevel } return LogLevel_LOG_LEVEL_UNSPECIFIED } -type AddQANPostgreSQLPgStatementsAgentResponse 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 *AddQANPostgreSQLPgStatementsAgentResponse) Reset() { - *x = AddQANPostgreSQLPgStatementsAgentResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[54] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *AddQANPostgreSQLPgStatementsAgentResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*AddQANPostgreSQLPgStatementsAgentResponse) ProtoMessage() {} - -func (x *AddQANPostgreSQLPgStatementsAgentResponse) 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 AddQANPostgreSQLPgStatementsAgentResponse.ProtoReflect.Descriptor instead. -func (*AddQANPostgreSQLPgStatementsAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{54} -} - -func (x *AddQANPostgreSQLPgStatementsAgentResponse) GetQanPostgresqlPgstatementsAgent() *QANPostgreSQLPgStatementsAgent { - if x != nil { - return x.QanPostgresqlPgstatementsAgent - } - return nil -} - type ChangeQANPostgreSQLPgStatementsAgentRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -6297,7 +6230,7 @@ type ChangeQANPostgreSQLPgStatementsAgentRequest struct { func (x *ChangeQANPostgreSQLPgStatementsAgentRequest) Reset() { *x = ChangeQANPostgreSQLPgStatementsAgentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[55] + mi := &file_inventory_v1_agents_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6310,7 +6243,7 @@ func (x *ChangeQANPostgreSQLPgStatementsAgentRequest) String() string { func (*ChangeQANPostgreSQLPgStatementsAgentRequest) ProtoMessage() {} func (x *ChangeQANPostgreSQLPgStatementsAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[55] + mi := &file_inventory_v1_agents_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6323,7 +6256,7 @@ func (x *ChangeQANPostgreSQLPgStatementsAgentRequest) ProtoReflect() protoreflec // Deprecated: Use ChangeQANPostgreSQLPgStatementsAgentRequest.ProtoReflect.Descriptor instead. func (*ChangeQANPostgreSQLPgStatementsAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{55} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{50} } func (x *ChangeQANPostgreSQLPgStatementsAgentRequest) GetAgentId() string { @@ -6351,7 +6284,7 @@ type ChangeQANPostgreSQLPgStatementsAgentResponse struct { func (x *ChangeQANPostgreSQLPgStatementsAgentResponse) Reset() { *x = ChangeQANPostgreSQLPgStatementsAgentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[56] + mi := &file_inventory_v1_agents_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6364,7 +6297,7 @@ func (x *ChangeQANPostgreSQLPgStatementsAgentResponse) String() string { func (*ChangeQANPostgreSQLPgStatementsAgentResponse) ProtoMessage() {} func (x *ChangeQANPostgreSQLPgStatementsAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[56] + mi := &file_inventory_v1_agents_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6377,7 +6310,7 @@ func (x *ChangeQANPostgreSQLPgStatementsAgentResponse) ProtoReflect() protorefle // Deprecated: Use ChangeQANPostgreSQLPgStatementsAgentResponse.ProtoReflect.Descriptor instead. func (*ChangeQANPostgreSQLPgStatementsAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{56} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{51} } func (x *ChangeQANPostgreSQLPgStatementsAgentResponse) GetQanPostgresqlPgstatementsAgent() *QANPostgreSQLPgStatementsAgent { @@ -6387,7 +6320,7 @@ func (x *ChangeQANPostgreSQLPgStatementsAgentResponse) GetQanPostgresqlPgstateme return nil } -type AddQANPostgreSQLPgStatMonitorAgentRequest struct { +type AddQANPostgreSQLPgStatMonitorAgentParams struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -6424,23 +6357,23 @@ type AddQANPostgreSQLPgStatMonitorAgentRequest struct { LogLevel LogLevel `protobuf:"varint,13,opt,name=log_level,json=logLevel,proto3,enum=inventory.v1.LogLevel" json:"log_level,omitempty"` } -func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) Reset() { - *x = AddQANPostgreSQLPgStatMonitorAgentRequest{} +func (x *AddQANPostgreSQLPgStatMonitorAgentParams) Reset() { + *x = AddQANPostgreSQLPgStatMonitorAgentParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[57] + mi := &file_inventory_v1_agents_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) String() string { +func (x *AddQANPostgreSQLPgStatMonitorAgentParams) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddQANPostgreSQLPgStatMonitorAgentRequest) ProtoMessage() {} +func (*AddQANPostgreSQLPgStatMonitorAgentParams) ProtoMessage() {} -func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[57] +func (x *AddQANPostgreSQLPgStatMonitorAgentParams) 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 { @@ -6451,141 +6384,142 @@ func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) ProtoReflect() protoreflect. return mi.MessageOf(x) } -// Deprecated: Use AddQANPostgreSQLPgStatMonitorAgentRequest.ProtoReflect.Descriptor instead. -func (*AddQANPostgreSQLPgStatMonitorAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{57} +// Deprecated: Use AddQANPostgreSQLPgStatMonitorAgentParams.ProtoReflect.Descriptor instead. +func (*AddQANPostgreSQLPgStatMonitorAgentParams) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{52} } -func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) GetPmmAgentId() string { +func (x *AddQANPostgreSQLPgStatMonitorAgentParams) GetPmmAgentId() string { if x != nil { return x.PmmAgentId } return "" } -func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) GetServiceId() string { +func (x *AddQANPostgreSQLPgStatMonitorAgentParams) GetServiceId() string { if x != nil { return x.ServiceId } return "" } -func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) GetUsername() string { +func (x *AddQANPostgreSQLPgStatMonitorAgentParams) GetUsername() string { if x != nil { return x.Username } return "" } -func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) GetPassword() string { +func (x *AddQANPostgreSQLPgStatMonitorAgentParams) GetPassword() string { if x != nil { return x.Password } return "" } -func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) GetTls() bool { +func (x *AddQANPostgreSQLPgStatMonitorAgentParams) GetTls() bool { if x != nil { return x.Tls } return false } -func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) GetTlsSkipVerify() bool { +func (x *AddQANPostgreSQLPgStatMonitorAgentParams) GetTlsSkipVerify() bool { if x != nil { return x.TlsSkipVerify } return false } -func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) GetMaxQueryLength() int32 { +func (x *AddQANPostgreSQLPgStatMonitorAgentParams) GetMaxQueryLength() int32 { if x != nil { return x.MaxQueryLength } return 0 } -func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) GetDisableQueryExamples() bool { +func (x *AddQANPostgreSQLPgStatMonitorAgentParams) GetDisableQueryExamples() bool { if x != nil { return x.DisableQueryExamples } return false } -func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) GetCustomLabels() map[string]string { +func (x *AddQANPostgreSQLPgStatMonitorAgentParams) GetCustomLabels() map[string]string { if x != nil { return x.CustomLabels } return nil } -func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) GetSkipConnectionCheck() bool { +func (x *AddQANPostgreSQLPgStatMonitorAgentParams) GetSkipConnectionCheck() bool { if x != nil { return x.SkipConnectionCheck } return false } -func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) GetDisableCommentsParsing() bool { +func (x *AddQANPostgreSQLPgStatMonitorAgentParams) GetDisableCommentsParsing() bool { if x != nil { return x.DisableCommentsParsing } return false } -func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) GetTlsCa() string { +func (x *AddQANPostgreSQLPgStatMonitorAgentParams) GetTlsCa() string { if x != nil { return x.TlsCa } return "" } -func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) GetTlsCert() string { +func (x *AddQANPostgreSQLPgStatMonitorAgentParams) GetTlsCert() string { if x != nil { return x.TlsCert } return "" } -func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) GetTlsKey() string { +func (x *AddQANPostgreSQLPgStatMonitorAgentParams) GetTlsKey() string { if x != nil { return x.TlsKey } return "" } -func (x *AddQANPostgreSQLPgStatMonitorAgentRequest) GetLogLevel() LogLevel { +func (x *AddQANPostgreSQLPgStatMonitorAgentParams) GetLogLevel() LogLevel { if x != nil { return x.LogLevel } return LogLevel_LOG_LEVEL_UNSPECIFIED } -type AddQANPostgreSQLPgStatMonitorAgentResponse struct { +type ChangeQANPostgreSQLPgStatMonitorAgentRequest 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"` + 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 *AddQANPostgreSQLPgStatMonitorAgentResponse) Reset() { - *x = AddQANPostgreSQLPgStatMonitorAgentResponse{} +func (x *ChangeQANPostgreSQLPgStatMonitorAgentRequest) Reset() { + *x = ChangeQANPostgreSQLPgStatMonitorAgentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[58] + mi := &file_inventory_v1_agents_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *AddQANPostgreSQLPgStatMonitorAgentResponse) String() string { +func (x *ChangeQANPostgreSQLPgStatMonitorAgentRequest) String() string { return protoimpl.X.MessageStringOf(x) } -func (*AddQANPostgreSQLPgStatMonitorAgentResponse) ProtoMessage() {} +func (*ChangeQANPostgreSQLPgStatMonitorAgentRequest) ProtoMessage() {} -func (x *AddQANPostgreSQLPgStatMonitorAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[58] +func (x *ChangeQANPostgreSQLPgStatMonitorAgentRequest) ProtoReflect() protoreflect.Message { + mi := &file_inventory_v1_agents_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6596,74 +6530,26 @@ func (x *AddQANPostgreSQLPgStatMonitorAgentResponse) ProtoReflect() protoreflect return mi.MessageOf(x) } -// Deprecated: Use AddQANPostgreSQLPgStatMonitorAgentResponse.ProtoReflect.Descriptor instead. -func (*AddQANPostgreSQLPgStatMonitorAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{58} +// Deprecated: Use ChangeQANPostgreSQLPgStatMonitorAgentRequest.ProtoReflect.Descriptor instead. +func (*ChangeQANPostgreSQLPgStatMonitorAgentRequest) Descriptor() ([]byte, []int) { + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{53} } -func (x *AddQANPostgreSQLPgStatMonitorAgentResponse) GetQanPostgresqlPgstatmonitorAgent() *QANPostgreSQLPgStatMonitorAgent { +func (x *ChangeQANPostgreSQLPgStatMonitorAgentRequest) GetAgentId() string { if x != nil { - return x.QanPostgresqlPgstatmonitorAgent + return x.AgentId + } + return "" +} + +func (x *ChangeQANPostgreSQLPgStatMonitorAgentRequest) GetCommon() *ChangeCommonAgentParams { + if x != nil { + return x.Common } return nil } -type ChangeQANPostgreSQLPgStatMonitorAgentRequest 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 *ChangeQANPostgreSQLPgStatMonitorAgentRequest) Reset() { - *x = ChangeQANPostgreSQLPgStatMonitorAgentRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[59] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ChangeQANPostgreSQLPgStatMonitorAgentRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ChangeQANPostgreSQLPgStatMonitorAgentRequest) ProtoMessage() {} - -func (x *ChangeQANPostgreSQLPgStatMonitorAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[59] - 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 ChangeQANPostgreSQLPgStatMonitorAgentRequest.ProtoReflect.Descriptor instead. -func (*ChangeQANPostgreSQLPgStatMonitorAgentRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{59} -} - -func (x *ChangeQANPostgreSQLPgStatMonitorAgentRequest) GetAgentId() string { - if x != nil { - return x.AgentId - } - return "" -} - -func (x *ChangeQANPostgreSQLPgStatMonitorAgentRequest) GetCommon() *ChangeCommonAgentParams { - if x != nil { - return x.Common - } - return nil -} - -type ChangeQANPostgreSQLPgStatMonitorAgentResponse struct { +type ChangeQANPostgreSQLPgStatMonitorAgentResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields @@ -6674,7 +6560,7 @@ type ChangeQANPostgreSQLPgStatMonitorAgentResponse struct { func (x *ChangeQANPostgreSQLPgStatMonitorAgentResponse) Reset() { *x = ChangeQANPostgreSQLPgStatMonitorAgentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[60] + mi := &file_inventory_v1_agents_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6687,7 +6573,7 @@ func (x *ChangeQANPostgreSQLPgStatMonitorAgentResponse) String() string { func (*ChangeQANPostgreSQLPgStatMonitorAgentResponse) ProtoMessage() {} func (x *ChangeQANPostgreSQLPgStatMonitorAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[60] + mi := &file_inventory_v1_agents_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6700,7 +6586,7 @@ func (x *ChangeQANPostgreSQLPgStatMonitorAgentResponse) ProtoReflect() protorefl // Deprecated: Use ChangeQANPostgreSQLPgStatMonitorAgentResponse.ProtoReflect.Descriptor instead. func (*ChangeQANPostgreSQLPgStatMonitorAgentResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{60} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{54} } func (x *ChangeQANPostgreSQLPgStatMonitorAgentResponse) GetQanPostgresqlPgstatmonitorAgent() *QANPostgreSQLPgStatMonitorAgent { @@ -6740,7 +6626,7 @@ type AddRDSExporterParams struct { func (x *AddRDSExporterParams) Reset() { *x = AddRDSExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[61] + mi := &file_inventory_v1_agents_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6753,7 +6639,7 @@ func (x *AddRDSExporterParams) String() string { func (*AddRDSExporterParams) ProtoMessage() {} func (x *AddRDSExporterParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[61] + mi := &file_inventory_v1_agents_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6766,7 +6652,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{61} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{55} } func (x *AddRDSExporterParams) GetPmmAgentId() string { @@ -6851,7 +6737,7 @@ type ChangeRDSExporterRequest struct { func (x *ChangeRDSExporterRequest) Reset() { *x = ChangeRDSExporterRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[62] + mi := &file_inventory_v1_agents_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6864,7 +6750,7 @@ func (x *ChangeRDSExporterRequest) String() string { func (*ChangeRDSExporterRequest) ProtoMessage() {} func (x *ChangeRDSExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[62] + mi := &file_inventory_v1_agents_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6877,7 +6763,7 @@ func (x *ChangeRDSExporterRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeRDSExporterRequest.ProtoReflect.Descriptor instead. func (*ChangeRDSExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{62} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{56} } func (x *ChangeRDSExporterRequest) GetAgentId() string { @@ -6905,7 +6791,7 @@ type ChangeRDSExporterResponse struct { func (x *ChangeRDSExporterResponse) Reset() { *x = ChangeRDSExporterResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[63] + mi := &file_inventory_v1_agents_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6918,7 +6804,7 @@ func (x *ChangeRDSExporterResponse) String() string { func (*ChangeRDSExporterResponse) ProtoMessage() {} func (x *ChangeRDSExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[63] + mi := &file_inventory_v1_agents_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6931,7 +6817,7 @@ func (x *ChangeRDSExporterResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeRDSExporterResponse.ProtoReflect.Descriptor instead. func (*ChangeRDSExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{63} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{57} } func (x *ChangeRDSExporterResponse) GetRdsExporter() *RDSExporter { @@ -6969,7 +6855,7 @@ type AddExternalExporterParams struct { func (x *AddExternalExporterParams) Reset() { *x = AddExternalExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[64] + mi := &file_inventory_v1_agents_proto_msgTypes[58] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6982,7 +6868,7 @@ func (x *AddExternalExporterParams) String() string { func (*AddExternalExporterParams) ProtoMessage() {} func (x *AddExternalExporterParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[64] + mi := &file_inventory_v1_agents_proto_msgTypes[58] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6995,7 +6881,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{64} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{58} } func (x *AddExternalExporterParams) GetRunsOnNodeId() string { @@ -7073,7 +6959,7 @@ type ChangeExternalExporterRequest struct { func (x *ChangeExternalExporterRequest) Reset() { *x = ChangeExternalExporterRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[65] + mi := &file_inventory_v1_agents_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7086,7 +6972,7 @@ func (x *ChangeExternalExporterRequest) String() string { func (*ChangeExternalExporterRequest) ProtoMessage() {} func (x *ChangeExternalExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[65] + mi := &file_inventory_v1_agents_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7099,7 +6985,7 @@ func (x *ChangeExternalExporterRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeExternalExporterRequest.ProtoReflect.Descriptor instead. func (*ChangeExternalExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{65} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{59} } func (x *ChangeExternalExporterRequest) GetAgentId() string { @@ -7127,7 +7013,7 @@ type ChangeExternalExporterResponse struct { func (x *ChangeExternalExporterResponse) Reset() { *x = ChangeExternalExporterResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[66] + mi := &file_inventory_v1_agents_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7140,7 +7026,7 @@ func (x *ChangeExternalExporterResponse) String() string { func (*ChangeExternalExporterResponse) ProtoMessage() {} func (x *ChangeExternalExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[66] + mi := &file_inventory_v1_agents_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7153,7 +7039,7 @@ func (x *ChangeExternalExporterResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ChangeExternalExporterResponse.ProtoReflect.Descriptor instead. func (*ChangeExternalExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{66} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{60} } func (x *ChangeExternalExporterResponse) GetExternalExporter() *ExternalExporter { @@ -7197,7 +7083,7 @@ type AddAzureDatabaseExporterParams struct { func (x *AddAzureDatabaseExporterParams) Reset() { *x = AddAzureDatabaseExporterParams{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[67] + mi := &file_inventory_v1_agents_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7210,7 +7096,7 @@ func (x *AddAzureDatabaseExporterParams) String() string { func (*AddAzureDatabaseExporterParams) ProtoMessage() {} func (x *AddAzureDatabaseExporterParams) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[67] + mi := &file_inventory_v1_agents_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7223,7 +7109,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{67} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{61} } func (x *AddAzureDatabaseExporterParams) GetPmmAgentId() string { @@ -7322,7 +7208,7 @@ type ChangeAzureDatabaseExporterRequest struct { func (x *ChangeAzureDatabaseExporterRequest) Reset() { *x = ChangeAzureDatabaseExporterRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[68] + mi := &file_inventory_v1_agents_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7335,7 +7221,7 @@ func (x *ChangeAzureDatabaseExporterRequest) String() string { func (*ChangeAzureDatabaseExporterRequest) ProtoMessage() {} func (x *ChangeAzureDatabaseExporterRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[68] + mi := &file_inventory_v1_agents_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7348,7 +7234,7 @@ func (x *ChangeAzureDatabaseExporterRequest) ProtoReflect() protoreflect.Message // Deprecated: Use ChangeAzureDatabaseExporterRequest.ProtoReflect.Descriptor instead. func (*ChangeAzureDatabaseExporterRequest) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{68} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{62} } func (x *ChangeAzureDatabaseExporterRequest) GetAgentId() string { @@ -7376,7 +7262,7 @@ type ChangeAzureDatabaseExporterResponse struct { func (x *ChangeAzureDatabaseExporterResponse) Reset() { *x = ChangeAzureDatabaseExporterResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[69] + mi := &file_inventory_v1_agents_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7389,7 +7275,7 @@ func (x *ChangeAzureDatabaseExporterResponse) String() string { func (*ChangeAzureDatabaseExporterResponse) ProtoMessage() {} func (x *ChangeAzureDatabaseExporterResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[69] + mi := &file_inventory_v1_agents_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7402,7 +7288,7 @@ func (x *ChangeAzureDatabaseExporterResponse) ProtoReflect() protoreflect.Messag // Deprecated: Use ChangeAzureDatabaseExporterResponse.ProtoReflect.Descriptor instead. func (*ChangeAzureDatabaseExporterResponse) Descriptor() ([]byte, []int) { - return file_inventory_v1_agents_proto_rawDescGZIP(), []int{69} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{63} } func (x *ChangeAzureDatabaseExporterResponse) GetAzureDatabaseExporter() *AzureDatabaseExporter { @@ -7425,7 +7311,7 @@ type RemoveAgentRequest struct { func (x *RemoveAgentRequest) Reset() { *x = RemoveAgentRequest{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[70] + mi := &file_inventory_v1_agents_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7438,7 +7324,7 @@ func (x *RemoveAgentRequest) String() string { func (*RemoveAgentRequest) ProtoMessage() {} func (x *RemoveAgentRequest) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[70] + mi := &file_inventory_v1_agents_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7451,7 +7337,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{70} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{64} } func (x *RemoveAgentRequest) GetAgentId() string { @@ -7477,7 +7363,7 @@ type RemoveAgentResponse struct { func (x *RemoveAgentResponse) Reset() { *x = RemoveAgentResponse{} if protoimpl.UnsafeEnabled { - mi := &file_inventory_v1_agents_proto_msgTypes[71] + mi := &file_inventory_v1_agents_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7490,7 +7376,7 @@ func (x *RemoveAgentResponse) String() string { func (*RemoveAgentResponse) ProtoMessage() {} func (x *RemoveAgentResponse) ProtoReflect() protoreflect.Message { - mi := &file_inventory_v1_agents_proto_msgTypes[71] + mi := &file_inventory_v1_agents_proto_msgTypes[65] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7503,7 +7389,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{71} + return file_inventory_v1_agents_proto_rawDescGZIP(), []int{65} } var File_inventory_v1_agents_proto protoreflect.FileDescriptor @@ -8336,401 +8222,418 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0xde, 0x01, 0x0a, 0x12, 0x41, 0x64, 0x64, 0x50, - 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x57, - 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 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, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, 0x4a, 0x0a, 0x13, 0x41, 0x64, 0x64, 0x50, - 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x33, 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, 0x52, 0x08, 0x70, 0x6d, 0x6d, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x22, 0xc9, 0x05, 0x0a, 0x0f, 0x41, 0x64, 0x64, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4a, 0x0a, 0x0d, 0x6e, 0x6f, 0x64, 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, - 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, 0x02, 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, 0x03, 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, 0x04, 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, 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, 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, 0x06, 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, 0x07, 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, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, + 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, - 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, 0x42, 0x0a, 0x0a, 0x08, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72, - 0x22, 0xa3, 0x05, 0x0a, 0x10, 0x41, 0x64, 0x64, 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, 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, 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, 0x02, 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, 0x03, 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, + 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, 0x04, 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, 0x05, 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, 0x06, 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, 0x07, 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, 0x08, 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, 0x1f, 0x0a, 0x0b, 0x74, 0x61, 0x62, - 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 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, 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, 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, 0x09, 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, 0x07, - 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, 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, - 0x0a, 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, 0x0b, 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, 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, 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, 0x0a, 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, 0x0b, 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, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, - 0x6c, 0x73, 0x43, 0x61, 0x12, 0x5d, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, - 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 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, + 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, 0x0f, 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, 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, 0x0d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, - 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 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, 0x0e, 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, - 0x0f, 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, 0x25, 0x0a, + 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, 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, 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, 0x09, 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, 0x07, 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, 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, 0x0a, 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, 0x0b, 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, - 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x73, 0x73, - 0x77, 0x6f, 0x72, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x63, 0x6f, - 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x11, 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, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x63, 0x6f, - 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x33, - 0x0a, 0x09, 0x6c, 0x6f, 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x13, 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, 0x14, 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, 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, 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, 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, + 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, 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, + 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, 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, 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, 0x0a, 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, 0x0b, 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, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, + 0x12, 0x5d, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 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, 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, 0x0d, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x11, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, + 0x63, 0x74, 0x6f, 0x72, 0x73, 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, 0x0e, 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, 0x0f, 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, 0x25, 0x0a, 0x0e, 0x61, 0x67, 0x65, + 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, + 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x74, 0x73, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x11, 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, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x33, 0x0a, 0x09, 0x6c, 0x6f, + 0x67, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x13, 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, 0x14, 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, 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, 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, 0x82, 0x01, - 0x0a, 0x1d, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x53, 0x51, 0x4c, + 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, @@ -8738,240 +8641,15 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, + 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, - 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, 0xe8, 0x05, 0x0a, 0x21, 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, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, - 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, - 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x0b, 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, 0x0c, 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, 0x0e, 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, 0x07, 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, 0x66, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, - 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, 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, 0x09, 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, 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, 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, - 0x22, 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, 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, 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, 0x95, 0x06, 0x0a, 0x1e, 0x41, 0x64, 0x64, 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, 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, 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, 0x28, 0x0a, - 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, - 0x68, 0x18, 0x0f, 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, 0x07, 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, 0x08, 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, 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, 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, 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, 0x10, 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, 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, 0x7c, 0x0a, 0x1f, 0x41, 0x64, 0x64, - 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, 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, 0xa9, 0x06, 0x0a, 0x21, 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, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x09, 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, 0x0a, 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, 0x0b, 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, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78, 0x51, 0x75, 0x65, 0x72, - 0x79, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x66, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, - 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 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, - 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, 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, - 0x0c, 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, 0x0d, 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, 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, 0x88, 0x01, - 0x0a, 0x22, 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, 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, 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, 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, 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, 0xc0, 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, 0x65, 0x6d, 0x65, - 0x6e, 0x74, 0x73, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 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, @@ -8984,12 +8662,268 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0x6d, 0x0a, + 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, 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, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x43, 0x75, 0x73, + 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, 0x0a, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, + 0x65, 0x72, 0x74, 0x18, 0x0b, 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, 0x0c, 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, + 0x0e, 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, + 0x07, 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, 0x08, 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, 0x09, 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, 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, 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, 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, 0x28, 0x0a, 0x10, 0x6d, + 0x61, 0x78, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, + 0x0f, 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, + 0x07, 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, 0x08, 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, + 0x09, 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, 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, 0x10, 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, 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, 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, 0x09, 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, + 0x0a, 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, 0x0b, + 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, + 0x0f, 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, 0x07, 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, 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, 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, 0x0c, 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, 0x0d, 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, 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, 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, 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, @@ -9013,19 +8947,76 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0xa4, 0x01, 0x0a, 0x29, 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, 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, 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, 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, + 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, 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, 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, 0x0e, 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, 0x07, 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, 0x08, + 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, 0x09, 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, 0x15, 0x0a, 0x06, 0x74, 0x6c, + 0x73, 0x5f, 0x63, 0x61, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, + 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x0b, 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, 0x0c, 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, 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, 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, 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, @@ -9033,674 +9024,493 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 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, 0xf8, 0x05, 0x0a, 0x29, 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, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 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, 0x0e, 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, 0x07, 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, 0x6e, 0x0a, 0x0d, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, - 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x49, 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, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 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, 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, 0x09, - 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, 0x15, 0x0a, 0x06, 0x74, 0x6c, 0x73, 0x5f, 0x63, 0x61, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6c, 0x73, 0x43, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x6c, - 0x73, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x18, 0x0b, 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, 0x0c, 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, 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, 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, 0xa8, 0x01, 0x0a, 0x2a, 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, 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, - 0x91, 0x01, 0x0a, 0x2c, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x41, 0x4e, 0x50, 0x6f, 0x73, + 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, 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, 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, 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, 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, + 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, 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, 0x82, 0x01, 0x0a, 0x1d, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, + 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, 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, + 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, 0x0b, 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, 0x07, 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, 0x08, 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, 0x09, 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, 0x0a, + 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, 0x0e, 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, 0x02, 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, 0x03, 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, 0x04, 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, 0x05, 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, 0x06, 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, 0x07, 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, 0x08, + 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, 0x09, 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, 0x0a, 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, 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, 0x0b, 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, 0x0c, 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, 0x95, 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, 0x94, 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, 0x49, 0x92, 0x41, 0x1e, 0x12, 0x0c, + 0x41, 0x64, 0x64, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x0e, 0x41, 0x64, + 0x64, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, + 0x02, 0x22, 0x3a, 0x01, 0x2a, 0x22, 0x1d, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, + 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, 0x41, + 0x67, 0x65, 0x6e, 0x74, 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, 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, 0x0b, 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, - 0x07, 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, 0x08, 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, 0x09, 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, 0x0a, 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, 0x0e, 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, 0x02, 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, 0x03, 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, 0x04, 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, 0x05, 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, - 0x06, 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, 0x07, 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, 0x08, 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, 0x09, 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, - 0x0a, 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, 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, - 0x0b, 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, 0x0c, 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, 0xf6, 0x2d, 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, 0xa2, 0x01, 0x0a, 0x0b, 0x41, 0x64, 0x64, 0x50, 0x4d, 0x4d, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x12, 0x20, 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, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x21, 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, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4e, 0x92, 0x41, 0x20, 0x12, 0x0d, 0x41, 0x64, 0x64, - 0x20, 0x50, 0x4d, 0x4d, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x0f, 0x41, 0x64, 0x64, 0x73, - 0x20, 0x50, 0x4d, 0x4d, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, - 0x25, 0x3a, 0x01, 0x2a, 0x22, 0x20, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, 0x50, 0x4d, - 0x4d, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x94, 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, 0x49, 0x92, 0x41, 0x1e, 0x12, 0x0c, 0x41, 0x64, 0x64, 0x20, 0x61, 0x6e, 0x20, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x0e, 0x41, 0x64, 0x64, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x41, - 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x3a, 0x01, 0x2a, 0x22, 0x1d, - 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, - 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 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, + 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, 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, + 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, 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, + 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, 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, 0x91, 0x02, 0x0a, 0x1a, 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, 0x12, 0x2f, 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, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 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, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8f, 0x01, 0x92, 0x41, 0x52, 0x12, 0x20, 0x41, 0x64, - 0x64, 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, 0x2e, - 0x41, 0x64, 0x64, 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, 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, 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, 0x12, 0xa3, 0x02, 0x0a, 0x1d, 0x43, 0x68, 0x61, + 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, 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, 0xff, - 0x01, 0x0a, 0x17, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, 0x79, 0x53, 0x51, 0x4c, 0x53, 0x6c, - 0x6f, 0x77, 0x6c, 0x6f, 0x67, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x2c, 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, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 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, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x86, 0x01, 0x92, 0x41, 0x4c, 0x12, 0x1d, 0x41, - 0x64, 0x64, 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, 0x2b, 0x41, 0x64, - 0x64, 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, 0x31, 0x3a, - 0x01, 0x2a, 0x22, 0x2c, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, - 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, 0x51, 0x41, 0x4e, 0x4d, + 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, 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, + 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, 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, 0x91, 0x02, 0x0a, 0x1a, 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, 0x12, 0x2f, 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, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 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, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8f, 0x01, 0x92, 0x41, 0x52, 0x12, 0x20, 0x41, 0x64, - 0x64, 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, 0x2e, - 0x41, 0x64, 0x64, 0x73, 0x20, 0x27, 0x51, 0x75, 0x65, 0x72, 0x79, 0x20, 0x41, 0x6e, 0x61, 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, 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, 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, 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, + 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, 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, 0xc7, - 0x02, 0x0a, 0x21, 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, 0x12, 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, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 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, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xb0, 0x01, 0x92, 0x41, 0x6c, 0x12, 0x2d, 0x41, 0x64, 0x64, - 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, 0x3b, 0x41, 0x64, 0x64, 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, 0x3b, 0x3a, 0x01, 0x2a, - 0x22, 0x36, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x2f, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 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, 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, + 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, 0xc5, 0x02, 0x0a, 0x22, 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, 0x12, 0x37, 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, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 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, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xab, - 0x01, 0x92, 0x41, 0x66, 0x12, 0x2a, 0x41, 0x64, 0x64, 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, 0x38, 0x41, 0x64, 0x64, 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, 0x3c, - 0x3a, 0x01, 0x2a, 0x22, 0x37, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, - 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 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, 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, + 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, 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, + 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, 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, 0x2e, + 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, 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, + 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, 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, 0xa1, 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, 0x4d, 0x92, 0x41, 0x24, 0x12, 0x0f, 0x52, 0x65, 0x6d, 0x6f, - 0x76, 0x65, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x11, 0x52, 0x65, 0x6d, - 0x6f, 0x76, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 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, + 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, 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, 0xa1, 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, 0x4d, 0x92, 0x41, 0x24, 0x12, 0x0f, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x20, 0x61, 0x6e, + 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x11, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x73, 0x20, + 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 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 ( @@ -9717,7 +9527,7 @@ 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, 101) + file_inventory_v1_agents_proto_msgTypes = make([]protoimpl.MessageInfo, 95) file_inventory_v1_agents_proto_goTypes = []interface{}{ (AgentType)(0), // 0: inventory.v1.AgentType (*PMMAgent)(nil), // 1: inventory.v1.PMMAgent @@ -9742,131 +9552,125 @@ var ( (*GetAgentResponse)(nil), // 20: inventory.v1.GetAgentResponse (*GetAgentLogsRequest)(nil), // 21: inventory.v1.GetAgentLogsRequest (*GetAgentLogsResponse)(nil), // 22: inventory.v1.GetAgentLogsResponse - (*AddPMMAgentRequest)(nil), // 23: inventory.v1.AddPMMAgentRequest - (*AddPMMAgentResponse)(nil), // 24: inventory.v1.AddPMMAgentResponse - (*AddAgentRequest)(nil), // 25: inventory.v1.AddAgentRequest - (*AddAgentResponse)(nil), // 26: inventory.v1.AddAgentResponse - (*AddNodeExporterParams)(nil), // 27: inventory.v1.AddNodeExporterParams - (*ChangeNodeExporterRequest)(nil), // 28: inventory.v1.ChangeNodeExporterRequest - (*ChangeNodeExporterResponse)(nil), // 29: inventory.v1.ChangeNodeExporterResponse - (*AddMySQLdExporterParams)(nil), // 30: inventory.v1.AddMySQLdExporterParams - (*ChangeMySQLdExporterRequest)(nil), // 31: inventory.v1.ChangeMySQLdExporterRequest - (*ChangeMySQLdExporterResponse)(nil), // 32: inventory.v1.ChangeMySQLdExporterResponse - (*AddMongoDBExporterParams)(nil), // 33: inventory.v1.AddMongoDBExporterParams - (*ChangeMongoDBExporterRequest)(nil), // 34: inventory.v1.ChangeMongoDBExporterRequest - (*ChangeMongoDBExporterResponse)(nil), // 35: inventory.v1.ChangeMongoDBExporterResponse - (*AddPostgresExporterParams)(nil), // 36: inventory.v1.AddPostgresExporterParams - (*ChangePostgresExporterRequest)(nil), // 37: inventory.v1.ChangePostgresExporterRequest - (*ChangePostgresExporterResponse)(nil), // 38: inventory.v1.ChangePostgresExporterResponse - (*AddProxySQLExporterParams)(nil), // 39: inventory.v1.AddProxySQLExporterParams - (*ChangeProxySQLExporterRequest)(nil), // 40: inventory.v1.ChangeProxySQLExporterRequest - (*ChangeProxySQLExporterResponse)(nil), // 41: inventory.v1.ChangeProxySQLExporterResponse - (*AddQANMySQLPerfSchemaAgentRequest)(nil), // 42: inventory.v1.AddQANMySQLPerfSchemaAgentRequest - (*AddQANMySQLPerfSchemaAgentResponse)(nil), // 43: inventory.v1.AddQANMySQLPerfSchemaAgentResponse - (*ChangeQANMySQLPerfSchemaAgentRequest)(nil), // 44: inventory.v1.ChangeQANMySQLPerfSchemaAgentRequest - (*ChangeQANMySQLPerfSchemaAgentResponse)(nil), // 45: inventory.v1.ChangeQANMySQLPerfSchemaAgentResponse - (*AddQANMySQLSlowlogAgentRequest)(nil), // 46: inventory.v1.AddQANMySQLSlowlogAgentRequest - (*AddQANMySQLSlowlogAgentResponse)(nil), // 47: inventory.v1.AddQANMySQLSlowlogAgentResponse - (*ChangeQANMySQLSlowlogAgentRequest)(nil), // 48: inventory.v1.ChangeQANMySQLSlowlogAgentRequest - (*ChangeQANMySQLSlowlogAgentResponse)(nil), // 49: inventory.v1.ChangeQANMySQLSlowlogAgentResponse - (*AddQANMongoDBProfilerAgentRequest)(nil), // 50: inventory.v1.AddQANMongoDBProfilerAgentRequest - (*AddQANMongoDBProfilerAgentResponse)(nil), // 51: inventory.v1.AddQANMongoDBProfilerAgentResponse - (*ChangeQANMongoDBProfilerAgentRequest)(nil), // 52: inventory.v1.ChangeQANMongoDBProfilerAgentRequest - (*ChangeQANMongoDBProfilerAgentResponse)(nil), // 53: inventory.v1.ChangeQANMongoDBProfilerAgentResponse - (*AddQANPostgreSQLPgStatementsAgentRequest)(nil), // 54: inventory.v1.AddQANPostgreSQLPgStatementsAgentRequest - (*AddQANPostgreSQLPgStatementsAgentResponse)(nil), // 55: inventory.v1.AddQANPostgreSQLPgStatementsAgentResponse - (*ChangeQANPostgreSQLPgStatementsAgentRequest)(nil), // 56: inventory.v1.ChangeQANPostgreSQLPgStatementsAgentRequest - (*ChangeQANPostgreSQLPgStatementsAgentResponse)(nil), // 57: inventory.v1.ChangeQANPostgreSQLPgStatementsAgentResponse - (*AddQANPostgreSQLPgStatMonitorAgentRequest)(nil), // 58: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentRequest - (*AddQANPostgreSQLPgStatMonitorAgentResponse)(nil), // 59: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentResponse - (*ChangeQANPostgreSQLPgStatMonitorAgentRequest)(nil), // 60: inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentRequest - (*ChangeQANPostgreSQLPgStatMonitorAgentResponse)(nil), // 61: inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentResponse - (*AddRDSExporterParams)(nil), // 62: inventory.v1.AddRDSExporterParams - (*ChangeRDSExporterRequest)(nil), // 63: inventory.v1.ChangeRDSExporterRequest - (*ChangeRDSExporterResponse)(nil), // 64: inventory.v1.ChangeRDSExporterResponse - (*AddExternalExporterParams)(nil), // 65: inventory.v1.AddExternalExporterParams - (*ChangeExternalExporterRequest)(nil), // 66: inventory.v1.ChangeExternalExporterRequest - (*ChangeExternalExporterResponse)(nil), // 67: inventory.v1.ChangeExternalExporterResponse - (*AddAzureDatabaseExporterParams)(nil), // 68: inventory.v1.AddAzureDatabaseExporterParams - (*ChangeAzureDatabaseExporterRequest)(nil), // 69: inventory.v1.ChangeAzureDatabaseExporterRequest - (*ChangeAzureDatabaseExporterResponse)(nil), // 70: inventory.v1.ChangeAzureDatabaseExporterResponse - (*RemoveAgentRequest)(nil), // 71: inventory.v1.RemoveAgentRequest - (*RemoveAgentResponse)(nil), // 72: inventory.v1.RemoveAgentResponse - nil, // 73: inventory.v1.PMMAgent.CustomLabelsEntry - nil, // 74: inventory.v1.NodeExporter.CustomLabelsEntry - nil, // 75: inventory.v1.MySQLdExporter.CustomLabelsEntry - nil, // 76: inventory.v1.MongoDBExporter.CustomLabelsEntry - nil, // 77: inventory.v1.PostgresExporter.CustomLabelsEntry - nil, // 78: inventory.v1.ProxySQLExporter.CustomLabelsEntry - nil, // 79: inventory.v1.QANMySQLPerfSchemaAgent.CustomLabelsEntry - nil, // 80: inventory.v1.QANMySQLSlowlogAgent.CustomLabelsEntry - nil, // 81: inventory.v1.QANMongoDBProfilerAgent.CustomLabelsEntry - nil, // 82: inventory.v1.QANPostgreSQLPgStatementsAgent.CustomLabelsEntry - nil, // 83: inventory.v1.QANPostgreSQLPgStatMonitorAgent.CustomLabelsEntry - nil, // 84: inventory.v1.RDSExporter.CustomLabelsEntry - nil, // 85: inventory.v1.ExternalExporter.CustomLabelsEntry - nil, // 86: inventory.v1.AzureDatabaseExporter.CustomLabelsEntry - nil, // 87: inventory.v1.ChangeCommonAgentParams.CustomLabelsEntry - nil, // 88: inventory.v1.AddPMMAgentRequest.CustomLabelsEntry - nil, // 89: inventory.v1.AddNodeExporterParams.CustomLabelsEntry - nil, // 90: inventory.v1.AddMySQLdExporterParams.CustomLabelsEntry - nil, // 91: inventory.v1.AddMongoDBExporterParams.CustomLabelsEntry - nil, // 92: inventory.v1.AddPostgresExporterParams.CustomLabelsEntry - nil, // 93: inventory.v1.AddProxySQLExporterParams.CustomLabelsEntry - nil, // 94: inventory.v1.AddQANMySQLPerfSchemaAgentRequest.CustomLabelsEntry - nil, // 95: inventory.v1.AddQANMySQLSlowlogAgentRequest.CustomLabelsEntry - nil, // 96: inventory.v1.AddQANMongoDBProfilerAgentRequest.CustomLabelsEntry - nil, // 97: inventory.v1.AddQANPostgreSQLPgStatementsAgentRequest.CustomLabelsEntry - nil, // 98: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentRequest.CustomLabelsEntry - nil, // 99: inventory.v1.AddRDSExporterParams.CustomLabelsEntry - nil, // 100: inventory.v1.AddExternalExporterParams.CustomLabelsEntry - nil, // 101: inventory.v1.AddAzureDatabaseExporterParams.CustomLabelsEntry - (AgentStatus)(0), // 102: inventory.v1.AgentStatus - (LogLevel)(0), // 103: inventory.v1.LogLevel + (*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 } ) var file_inventory_v1_agents_proto_depIdxs = []int32{ - 73, // 0: inventory.v1.PMMAgent.custom_labels:type_name -> inventory.v1.PMMAgent.CustomLabelsEntry - 102, // 1: inventory.v1.VMAgent.status:type_name -> inventory.v1.AgentStatus - 74, // 2: inventory.v1.NodeExporter.custom_labels:type_name -> inventory.v1.NodeExporter.CustomLabelsEntry - 102, // 3: inventory.v1.NodeExporter.status:type_name -> inventory.v1.AgentStatus - 103, // 4: inventory.v1.NodeExporter.log_level:type_name -> inventory.v1.LogLevel - 75, // 5: inventory.v1.MySQLdExporter.custom_labels:type_name -> inventory.v1.MySQLdExporter.CustomLabelsEntry - 102, // 6: inventory.v1.MySQLdExporter.status:type_name -> inventory.v1.AgentStatus - 103, // 7: inventory.v1.MySQLdExporter.log_level:type_name -> inventory.v1.LogLevel - 76, // 8: inventory.v1.MongoDBExporter.custom_labels:type_name -> inventory.v1.MongoDBExporter.CustomLabelsEntry - 102, // 9: inventory.v1.MongoDBExporter.status:type_name -> inventory.v1.AgentStatus - 103, // 10: inventory.v1.MongoDBExporter.log_level:type_name -> inventory.v1.LogLevel - 77, // 11: inventory.v1.PostgresExporter.custom_labels:type_name -> inventory.v1.PostgresExporter.CustomLabelsEntry - 102, // 12: inventory.v1.PostgresExporter.status:type_name -> inventory.v1.AgentStatus - 103, // 13: inventory.v1.PostgresExporter.log_level:type_name -> inventory.v1.LogLevel - 78, // 14: inventory.v1.ProxySQLExporter.custom_labels:type_name -> inventory.v1.ProxySQLExporter.CustomLabelsEntry - 102, // 15: inventory.v1.ProxySQLExporter.status:type_name -> inventory.v1.AgentStatus - 103, // 16: inventory.v1.ProxySQLExporter.log_level:type_name -> inventory.v1.LogLevel - 79, // 17: inventory.v1.QANMySQLPerfSchemaAgent.custom_labels:type_name -> inventory.v1.QANMySQLPerfSchemaAgent.CustomLabelsEntry - 102, // 18: inventory.v1.QANMySQLPerfSchemaAgent.status:type_name -> inventory.v1.AgentStatus - 103, // 19: inventory.v1.QANMySQLPerfSchemaAgent.log_level:type_name -> inventory.v1.LogLevel - 80, // 20: inventory.v1.QANMySQLSlowlogAgent.custom_labels:type_name -> inventory.v1.QANMySQLSlowlogAgent.CustomLabelsEntry - 102, // 21: inventory.v1.QANMySQLSlowlogAgent.status:type_name -> inventory.v1.AgentStatus - 103, // 22: inventory.v1.QANMySQLSlowlogAgent.log_level:type_name -> inventory.v1.LogLevel - 81, // 23: inventory.v1.QANMongoDBProfilerAgent.custom_labels:type_name -> inventory.v1.QANMongoDBProfilerAgent.CustomLabelsEntry - 102, // 24: inventory.v1.QANMongoDBProfilerAgent.status:type_name -> inventory.v1.AgentStatus - 103, // 25: inventory.v1.QANMongoDBProfilerAgent.log_level:type_name -> inventory.v1.LogLevel - 82, // 26: inventory.v1.QANPostgreSQLPgStatementsAgent.custom_labels:type_name -> inventory.v1.QANPostgreSQLPgStatementsAgent.CustomLabelsEntry - 102, // 27: inventory.v1.QANPostgreSQLPgStatementsAgent.status:type_name -> inventory.v1.AgentStatus - 103, // 28: inventory.v1.QANPostgreSQLPgStatementsAgent.log_level:type_name -> inventory.v1.LogLevel - 83, // 29: inventory.v1.QANPostgreSQLPgStatMonitorAgent.custom_labels:type_name -> inventory.v1.QANPostgreSQLPgStatMonitorAgent.CustomLabelsEntry - 102, // 30: inventory.v1.QANPostgreSQLPgStatMonitorAgent.status:type_name -> inventory.v1.AgentStatus - 103, // 31: inventory.v1.QANPostgreSQLPgStatMonitorAgent.log_level:type_name -> inventory.v1.LogLevel - 84, // 32: inventory.v1.RDSExporter.custom_labels:type_name -> inventory.v1.RDSExporter.CustomLabelsEntry - 102, // 33: inventory.v1.RDSExporter.status:type_name -> inventory.v1.AgentStatus - 103, // 34: inventory.v1.RDSExporter.log_level:type_name -> inventory.v1.LogLevel - 85, // 35: inventory.v1.ExternalExporter.custom_labels:type_name -> inventory.v1.ExternalExporter.CustomLabelsEntry - 86, // 36: inventory.v1.AzureDatabaseExporter.custom_labels:type_name -> inventory.v1.AzureDatabaseExporter.CustomLabelsEntry - 102, // 37: inventory.v1.AzureDatabaseExporter.status:type_name -> inventory.v1.AgentStatus - 103, // 38: inventory.v1.AzureDatabaseExporter.log_level:type_name -> inventory.v1.LogLevel - 87, // 39: inventory.v1.ChangeCommonAgentParams.custom_labels:type_name -> inventory.v1.ChangeCommonAgentParams.CustomLabelsEntry + 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 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 @@ -9898,133 +9702,127 @@ var file_inventory_v1_agents_proto_depIdxs = []int32{ 13, // 68: inventory.v1.GetAgentResponse.rds_exporter:type_name -> inventory.v1.RDSExporter 14, // 69: inventory.v1.GetAgentResponse.external_exporter:type_name -> inventory.v1.ExternalExporter 15, // 70: inventory.v1.GetAgentResponse.azure_database_exporter:type_name -> inventory.v1.AzureDatabaseExporter - 88, // 71: inventory.v1.AddPMMAgentRequest.custom_labels:type_name -> inventory.v1.AddPMMAgentRequest.CustomLabelsEntry - 1, // 72: inventory.v1.AddPMMAgentResponse.pmm_agent:type_name -> inventory.v1.PMMAgent - 27, // 73: inventory.v1.AddAgentRequest.node_exporter:type_name -> inventory.v1.AddNodeExporterParams - 30, // 74: inventory.v1.AddAgentRequest.mysqld_exporter:type_name -> inventory.v1.AddMySQLdExporterParams - 33, // 75: inventory.v1.AddAgentRequest.mongodb_exporter:type_name -> inventory.v1.AddMongoDBExporterParams - 36, // 76: inventory.v1.AddAgentRequest.postgres_exporter:type_name -> inventory.v1.AddPostgresExporterParams - 39, // 77: inventory.v1.AddAgentRequest.proxysql_exporter:type_name -> inventory.v1.AddProxySQLExporterParams - 65, // 78: inventory.v1.AddAgentRequest.external_exporter:type_name -> inventory.v1.AddExternalExporterParams - 62, // 79: inventory.v1.AddAgentRequest.rds_exporter:type_name -> inventory.v1.AddRDSExporterParams - 68, // 80: inventory.v1.AddAgentRequest.azure_database_exporter:type_name -> inventory.v1.AddAzureDatabaseExporterParams - 3, // 81: inventory.v1.AddAgentResponse.node_exporter:type_name -> inventory.v1.NodeExporter - 4, // 82: inventory.v1.AddAgentResponse.mysqld_exporter:type_name -> inventory.v1.MySQLdExporter - 5, // 83: inventory.v1.AddAgentResponse.mongodb_exporter:type_name -> inventory.v1.MongoDBExporter - 6, // 84: inventory.v1.AddAgentResponse.postgres_exporter:type_name -> inventory.v1.PostgresExporter - 7, // 85: inventory.v1.AddAgentResponse.proxysql_exporter:type_name -> inventory.v1.ProxySQLExporter - 14, // 86: inventory.v1.AddAgentResponse.external_exporter:type_name -> inventory.v1.ExternalExporter - 13, // 87: inventory.v1.AddAgentResponse.rds_exporter:type_name -> inventory.v1.RDSExporter - 15, // 88: inventory.v1.AddAgentResponse.azure_database_exporter:type_name -> inventory.v1.AzureDatabaseExporter - 89, // 89: inventory.v1.AddNodeExporterParams.custom_labels:type_name -> inventory.v1.AddNodeExporterParams.CustomLabelsEntry - 103, // 90: inventory.v1.AddNodeExporterParams.log_level:type_name -> inventory.v1.LogLevel - 16, // 91: inventory.v1.ChangeNodeExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 3, // 92: inventory.v1.ChangeNodeExporterResponse.node_exporter:type_name -> inventory.v1.NodeExporter - 90, // 93: inventory.v1.AddMySQLdExporterParams.custom_labels:type_name -> inventory.v1.AddMySQLdExporterParams.CustomLabelsEntry - 103, // 94: inventory.v1.AddMySQLdExporterParams.log_level:type_name -> inventory.v1.LogLevel - 16, // 95: inventory.v1.ChangeMySQLdExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 4, // 96: inventory.v1.ChangeMySQLdExporterResponse.mysqld_exporter:type_name -> inventory.v1.MySQLdExporter - 91, // 97: inventory.v1.AddMongoDBExporterParams.custom_labels:type_name -> inventory.v1.AddMongoDBExporterParams.CustomLabelsEntry - 103, // 98: inventory.v1.AddMongoDBExporterParams.log_level:type_name -> inventory.v1.LogLevel - 16, // 99: inventory.v1.ChangeMongoDBExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 5, // 100: inventory.v1.ChangeMongoDBExporterResponse.mongodb_exporter:type_name -> inventory.v1.MongoDBExporter - 92, // 101: inventory.v1.AddPostgresExporterParams.custom_labels:type_name -> inventory.v1.AddPostgresExporterParams.CustomLabelsEntry - 103, // 102: inventory.v1.AddPostgresExporterParams.log_level:type_name -> inventory.v1.LogLevel - 16, // 103: inventory.v1.ChangePostgresExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 6, // 104: inventory.v1.ChangePostgresExporterResponse.postgres_exporter:type_name -> inventory.v1.PostgresExporter - 93, // 105: inventory.v1.AddProxySQLExporterParams.custom_labels:type_name -> inventory.v1.AddProxySQLExporterParams.CustomLabelsEntry - 103, // 106: inventory.v1.AddProxySQLExporterParams.log_level:type_name -> inventory.v1.LogLevel - 16, // 107: inventory.v1.ChangeProxySQLExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 7, // 108: inventory.v1.ChangeProxySQLExporterResponse.proxysql_exporter:type_name -> inventory.v1.ProxySQLExporter - 94, // 109: inventory.v1.AddQANMySQLPerfSchemaAgentRequest.custom_labels:type_name -> inventory.v1.AddQANMySQLPerfSchemaAgentRequest.CustomLabelsEntry - 103, // 110: inventory.v1.AddQANMySQLPerfSchemaAgentRequest.log_level:type_name -> inventory.v1.LogLevel - 8, // 111: inventory.v1.AddQANMySQLPerfSchemaAgentResponse.qan_mysql_perfschema_agent:type_name -> inventory.v1.QANMySQLPerfSchemaAgent - 16, // 112: inventory.v1.ChangeQANMySQLPerfSchemaAgentRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 8, // 113: inventory.v1.ChangeQANMySQLPerfSchemaAgentResponse.qan_mysql_perfschema_agent:type_name -> inventory.v1.QANMySQLPerfSchemaAgent - 95, // 114: inventory.v1.AddQANMySQLSlowlogAgentRequest.custom_labels:type_name -> inventory.v1.AddQANMySQLSlowlogAgentRequest.CustomLabelsEntry - 103, // 115: inventory.v1.AddQANMySQLSlowlogAgentRequest.log_level:type_name -> inventory.v1.LogLevel - 9, // 116: inventory.v1.AddQANMySQLSlowlogAgentResponse.qan_mysql_slowlog_agent:type_name -> inventory.v1.QANMySQLSlowlogAgent - 16, // 117: inventory.v1.ChangeQANMySQLSlowlogAgentRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 9, // 118: inventory.v1.ChangeQANMySQLSlowlogAgentResponse.qan_mysql_slowlog_agent:type_name -> inventory.v1.QANMySQLSlowlogAgent - 96, // 119: inventory.v1.AddQANMongoDBProfilerAgentRequest.custom_labels:type_name -> inventory.v1.AddQANMongoDBProfilerAgentRequest.CustomLabelsEntry - 103, // 120: inventory.v1.AddQANMongoDBProfilerAgentRequest.log_level:type_name -> inventory.v1.LogLevel - 10, // 121: inventory.v1.AddQANMongoDBProfilerAgentResponse.qan_mongodb_profiler_agent:type_name -> inventory.v1.QANMongoDBProfilerAgent - 16, // 122: inventory.v1.ChangeQANMongoDBProfilerAgentRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 10, // 123: inventory.v1.ChangeQANMongoDBProfilerAgentResponse.qan_mongodb_profiler_agent:type_name -> inventory.v1.QANMongoDBProfilerAgent - 97, // 124: inventory.v1.AddQANPostgreSQLPgStatementsAgentRequest.custom_labels:type_name -> inventory.v1.AddQANPostgreSQLPgStatementsAgentRequest.CustomLabelsEntry - 103, // 125: inventory.v1.AddQANPostgreSQLPgStatementsAgentRequest.log_level:type_name -> inventory.v1.LogLevel - 11, // 126: inventory.v1.AddQANPostgreSQLPgStatementsAgentResponse.qan_postgresql_pgstatements_agent:type_name -> inventory.v1.QANPostgreSQLPgStatementsAgent - 16, // 127: inventory.v1.ChangeQANPostgreSQLPgStatementsAgentRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 11, // 128: inventory.v1.ChangeQANPostgreSQLPgStatementsAgentResponse.qan_postgresql_pgstatements_agent:type_name -> inventory.v1.QANPostgreSQLPgStatementsAgent - 98, // 129: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentRequest.custom_labels:type_name -> inventory.v1.AddQANPostgreSQLPgStatMonitorAgentRequest.CustomLabelsEntry - 103, // 130: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentRequest.log_level:type_name -> inventory.v1.LogLevel - 12, // 131: inventory.v1.AddQANPostgreSQLPgStatMonitorAgentResponse.qan_postgresql_pgstatmonitor_agent:type_name -> inventory.v1.QANPostgreSQLPgStatMonitorAgent - 16, // 132: inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 12, // 133: inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentResponse.qan_postgresql_pgstatmonitor_agent:type_name -> inventory.v1.QANPostgreSQLPgStatMonitorAgent - 99, // 134: inventory.v1.AddRDSExporterParams.custom_labels:type_name -> inventory.v1.AddRDSExporterParams.CustomLabelsEntry - 103, // 135: inventory.v1.AddRDSExporterParams.log_level:type_name -> inventory.v1.LogLevel - 16, // 136: inventory.v1.ChangeRDSExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 13, // 137: inventory.v1.ChangeRDSExporterResponse.rds_exporter:type_name -> inventory.v1.RDSExporter - 100, // 138: inventory.v1.AddExternalExporterParams.custom_labels:type_name -> inventory.v1.AddExternalExporterParams.CustomLabelsEntry - 16, // 139: inventory.v1.ChangeExternalExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 14, // 140: inventory.v1.ChangeExternalExporterResponse.external_exporter:type_name -> inventory.v1.ExternalExporter - 101, // 141: inventory.v1.AddAzureDatabaseExporterParams.custom_labels:type_name -> inventory.v1.AddAzureDatabaseExporterParams.CustomLabelsEntry - 103, // 142: inventory.v1.AddAzureDatabaseExporterParams.log_level:type_name -> inventory.v1.LogLevel - 16, // 143: inventory.v1.ChangeAzureDatabaseExporterRequest.common:type_name -> inventory.v1.ChangeCommonAgentParams - 15, // 144: inventory.v1.ChangeAzureDatabaseExporterResponse.azure_database_exporter:type_name -> inventory.v1.AzureDatabaseExporter - 17, // 145: inventory.v1.AgentsService.ListAgents:input_type -> inventory.v1.ListAgentsRequest - 19, // 146: inventory.v1.AgentsService.GetAgent:input_type -> inventory.v1.GetAgentRequest - 21, // 147: inventory.v1.AgentsService.GetAgentLogs:input_type -> inventory.v1.GetAgentLogsRequest - 23, // 148: inventory.v1.AgentsService.AddPMMAgent:input_type -> inventory.v1.AddPMMAgentRequest - 25, // 149: inventory.v1.AgentsService.AddAgent:input_type -> inventory.v1.AddAgentRequest - 28, // 150: inventory.v1.AgentsService.ChangeNodeExporter:input_type -> inventory.v1.ChangeNodeExporterRequest - 31, // 151: inventory.v1.AgentsService.ChangeMySQLdExporter:input_type -> inventory.v1.ChangeMySQLdExporterRequest - 34, // 152: inventory.v1.AgentsService.ChangeMongoDBExporter:input_type -> inventory.v1.ChangeMongoDBExporterRequest - 37, // 153: inventory.v1.AgentsService.ChangePostgresExporter:input_type -> inventory.v1.ChangePostgresExporterRequest - 40, // 154: inventory.v1.AgentsService.ChangeProxySQLExporter:input_type -> inventory.v1.ChangeProxySQLExporterRequest - 42, // 155: inventory.v1.AgentsService.AddQANMySQLPerfSchemaAgent:input_type -> inventory.v1.AddQANMySQLPerfSchemaAgentRequest - 44, // 156: inventory.v1.AgentsService.ChangeQANMySQLPerfSchemaAgent:input_type -> inventory.v1.ChangeQANMySQLPerfSchemaAgentRequest - 46, // 157: inventory.v1.AgentsService.AddQANMySQLSlowlogAgent:input_type -> inventory.v1.AddQANMySQLSlowlogAgentRequest - 48, // 158: inventory.v1.AgentsService.ChangeQANMySQLSlowlogAgent:input_type -> inventory.v1.ChangeQANMySQLSlowlogAgentRequest - 50, // 159: inventory.v1.AgentsService.AddQANMongoDBProfilerAgent:input_type -> inventory.v1.AddQANMongoDBProfilerAgentRequest - 52, // 160: inventory.v1.AgentsService.ChangeQANMongoDBProfilerAgent:input_type -> inventory.v1.ChangeQANMongoDBProfilerAgentRequest - 54, // 161: inventory.v1.AgentsService.AddQANPostgreSQLPgStatementsAgent:input_type -> inventory.v1.AddQANPostgreSQLPgStatementsAgentRequest - 56, // 162: inventory.v1.AgentsService.ChangeQANPostgreSQLPgStatementsAgent:input_type -> inventory.v1.ChangeQANPostgreSQLPgStatementsAgentRequest - 58, // 163: inventory.v1.AgentsService.AddQANPostgreSQLPgStatMonitorAgent:input_type -> inventory.v1.AddQANPostgreSQLPgStatMonitorAgentRequest - 60, // 164: inventory.v1.AgentsService.ChangeQANPostgreSQLPgStatMonitorAgent:input_type -> inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentRequest - 63, // 165: inventory.v1.AgentsService.ChangeRDSExporter:input_type -> inventory.v1.ChangeRDSExporterRequest - 66, // 166: inventory.v1.AgentsService.ChangeExternalExporter:input_type -> inventory.v1.ChangeExternalExporterRequest - 69, // 167: inventory.v1.AgentsService.ChangeAzureDatabaseExporter:input_type -> inventory.v1.ChangeAzureDatabaseExporterRequest - 71, // 168: inventory.v1.AgentsService.RemoveAgent:input_type -> inventory.v1.RemoveAgentRequest + 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 - 24, // 172: inventory.v1.AgentsService.AddPMMAgent:output_type -> inventory.v1.AddPMMAgentResponse - 26, // 173: inventory.v1.AgentsService.AddAgent:output_type -> inventory.v1.AddAgentResponse - 29, // 174: inventory.v1.AgentsService.ChangeNodeExporter:output_type -> inventory.v1.ChangeNodeExporterResponse - 32, // 175: inventory.v1.AgentsService.ChangeMySQLdExporter:output_type -> inventory.v1.ChangeMySQLdExporterResponse - 35, // 176: inventory.v1.AgentsService.ChangeMongoDBExporter:output_type -> inventory.v1.ChangeMongoDBExporterResponse - 38, // 177: inventory.v1.AgentsService.ChangePostgresExporter:output_type -> inventory.v1.ChangePostgresExporterResponse - 41, // 178: inventory.v1.AgentsService.ChangeProxySQLExporter:output_type -> inventory.v1.ChangeProxySQLExporterResponse - 43, // 179: inventory.v1.AgentsService.AddQANMySQLPerfSchemaAgent:output_type -> inventory.v1.AddQANMySQLPerfSchemaAgentResponse - 45, // 180: inventory.v1.AgentsService.ChangeQANMySQLPerfSchemaAgent:output_type -> inventory.v1.ChangeQANMySQLPerfSchemaAgentResponse - 47, // 181: inventory.v1.AgentsService.AddQANMySQLSlowlogAgent:output_type -> inventory.v1.AddQANMySQLSlowlogAgentResponse - 49, // 182: inventory.v1.AgentsService.ChangeQANMySQLSlowlogAgent:output_type -> inventory.v1.ChangeQANMySQLSlowlogAgentResponse - 51, // 183: inventory.v1.AgentsService.AddQANMongoDBProfilerAgent:output_type -> inventory.v1.AddQANMongoDBProfilerAgentResponse - 53, // 184: inventory.v1.AgentsService.ChangeQANMongoDBProfilerAgent:output_type -> inventory.v1.ChangeQANMongoDBProfilerAgentResponse - 55, // 185: inventory.v1.AgentsService.AddQANPostgreSQLPgStatementsAgent:output_type -> inventory.v1.AddQANPostgreSQLPgStatementsAgentResponse - 57, // 186: inventory.v1.AgentsService.ChangeQANPostgreSQLPgStatementsAgent:output_type -> inventory.v1.ChangeQANPostgreSQLPgStatementsAgentResponse - 59, // 187: inventory.v1.AgentsService.AddQANPostgreSQLPgStatMonitorAgent:output_type -> inventory.v1.AddQANPostgreSQLPgStatMonitorAgentResponse - 61, // 188: inventory.v1.AgentsService.ChangeQANPostgreSQLPgStatMonitorAgent:output_type -> inventory.v1.ChangeQANPostgreSQLPgStatMonitorAgentResponse - 64, // 189: inventory.v1.AgentsService.ChangeRDSExporter:output_type -> inventory.v1.ChangeRDSExporterResponse - 67, // 190: inventory.v1.AgentsService.ChangeExternalExporter:output_type -> inventory.v1.ChangeExternalExporterResponse - 70, // 191: inventory.v1.AgentsService.ChangeAzureDatabaseExporter:output_type -> inventory.v1.ChangeAzureDatabaseExporterResponse - 72, // 192: inventory.v1.AgentsService.RemoveAgent:output_type -> inventory.v1.RemoveAgentResponse - 169, // [169:193] is the sub-list for method output_type - 145, // [145:169] is the sub-list for method input_type - 145, // [145:145] is the sub-list for extension type_name - 145, // [145:145] is the sub-list for extension extendee - 0, // [0:145] is the sub-list for field type_name + 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 } func init() { file_inventory_v1_agents_proto_init() } @@ -10300,7 +10098,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.(*AddPMMAgentRequest); i { + switch v := v.(*AddPMMAgentParams); i { case 0: return &v.state case 1: @@ -10312,7 +10110,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.(*AddPMMAgentResponse); i { + switch v := v.(*AddAgentRequest); i { case 0: return &v.state case 1: @@ -10324,7 +10122,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.(*AddAgentRequest); i { + switch v := v.(*AddAgentResponse); i { case 0: return &v.state case 1: @@ -10336,7 +10134,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.(*AddAgentResponse); i { + switch v := v.(*AddNodeExporterParams); i { case 0: return &v.state case 1: @@ -10348,7 +10146,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.(*AddNodeExporterParams); i { + switch v := v.(*ChangeNodeExporterRequest); i { case 0: return &v.state case 1: @@ -10360,7 +10158,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.(*ChangeNodeExporterRequest); i { + switch v := v.(*ChangeNodeExporterResponse); i { case 0: return &v.state case 1: @@ -10372,7 +10170,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.(*ChangeNodeExporterResponse); i { + switch v := v.(*AddMySQLdExporterParams); i { case 0: return &v.state case 1: @@ -10384,7 +10182,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.(*AddMySQLdExporterParams); i { + switch v := v.(*ChangeMySQLdExporterRequest); i { case 0: return &v.state case 1: @@ -10396,7 +10194,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.(*ChangeMySQLdExporterRequest); i { + switch v := v.(*ChangeMySQLdExporterResponse); i { case 0: return &v.state case 1: @@ -10408,7 +10206,7 @@ func file_inventory_v1_agents_proto_init() { } } file_inventory_v1_agents_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChangeMySQLdExporterResponse); i { + switch v := v.(*AddMongoDBExporterParams); i { case 0: return &v.state case 1: @@ -10420,7 +10218,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.(*AddMongoDBExporterParams); i { + switch v := v.(*ChangeMongoDBExporterRequest); i { case 0: return &v.state case 1: @@ -10432,7 +10230,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.(*ChangeMongoDBExporterRequest); i { + switch v := v.(*ChangeMongoDBExporterResponse); i { case 0: return &v.state case 1: @@ -10444,7 +10242,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.(*ChangeMongoDBExporterResponse); i { + switch v := v.(*AddPostgresExporterParams); i { case 0: return &v.state case 1: @@ -10456,7 +10254,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.(*AddPostgresExporterParams); i { + switch v := v.(*ChangePostgresExporterRequest); i { case 0: return &v.state case 1: @@ -10468,7 +10266,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.(*ChangePostgresExporterRequest); i { + switch v := v.(*ChangePostgresExporterResponse); i { case 0: return &v.state case 1: @@ -10480,7 +10278,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.(*ChangePostgresExporterResponse); i { + switch v := v.(*AddProxySQLExporterParams); i { case 0: return &v.state case 1: @@ -10492,7 +10290,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.(*AddProxySQLExporterParams); i { + switch v := v.(*ChangeProxySQLExporterRequest); i { case 0: return &v.state case 1: @@ -10504,7 +10302,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.(*ChangeProxySQLExporterRequest); i { + switch v := v.(*ChangeProxySQLExporterResponse); i { case 0: return &v.state case 1: @@ -10516,7 +10314,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.(*ChangeProxySQLExporterResponse); i { + switch v := v.(*AddQANMySQLPerfSchemaAgentParams); i { case 0: return &v.state case 1: @@ -10528,7 +10326,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.(*AddQANMySQLPerfSchemaAgentRequest); i { + switch v := v.(*ChangeQANMySQLPerfSchemaAgentRequest); i { case 0: return &v.state case 1: @@ -10540,7 +10338,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.(*AddQANMySQLPerfSchemaAgentResponse); i { + switch v := v.(*ChangeQANMySQLPerfSchemaAgentResponse); i { case 0: return &v.state case 1: @@ -10552,7 +10350,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.(*ChangeQANMySQLPerfSchemaAgentRequest); i { + switch v := v.(*AddQANMySQLSlowlogAgentParams); i { case 0: return &v.state case 1: @@ -10564,7 +10362,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.(*ChangeQANMySQLPerfSchemaAgentResponse); i { + switch v := v.(*ChangeQANMySQLSlowlogAgentRequest); i { case 0: return &v.state case 1: @@ -10576,7 +10374,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.(*AddQANMySQLSlowlogAgentRequest); i { + switch v := v.(*ChangeQANMySQLSlowlogAgentResponse); i { case 0: return &v.state case 1: @@ -10588,7 +10386,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.(*AddQANMySQLSlowlogAgentResponse); i { + switch v := v.(*AddQANMongoDBProfilerAgentParams); i { case 0: return &v.state case 1: @@ -10600,7 +10398,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.(*ChangeQANMySQLSlowlogAgentRequest); i { + switch v := v.(*ChangeQANMongoDBProfilerAgentRequest); i { case 0: return &v.state case 1: @@ -10612,7 +10410,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.(*ChangeQANMySQLSlowlogAgentResponse); i { + switch v := v.(*ChangeQANMongoDBProfilerAgentResponse); i { case 0: return &v.state case 1: @@ -10624,7 +10422,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.(*AddQANMongoDBProfilerAgentRequest); i { + switch v := v.(*AddQANPostgreSQLPgStatementsAgentParams); i { case 0: return &v.state case 1: @@ -10636,7 +10434,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.(*AddQANMongoDBProfilerAgentResponse); i { + switch v := v.(*ChangeQANPostgreSQLPgStatementsAgentRequest); i { case 0: return &v.state case 1: @@ -10648,7 +10446,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.(*ChangeQANMongoDBProfilerAgentRequest); i { + switch v := v.(*ChangeQANPostgreSQLPgStatementsAgentResponse); i { case 0: return &v.state case 1: @@ -10660,7 +10458,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.(*ChangeQANMongoDBProfilerAgentResponse); i { + switch v := v.(*AddQANPostgreSQLPgStatMonitorAgentParams); i { case 0: return &v.state case 1: @@ -10672,78 +10470,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.(*AddQANPostgreSQLPgStatementsAgentRequest); 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.(*AddQANPostgreSQLPgStatementsAgentResponse); 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.(*ChangeQANPostgreSQLPgStatementsAgentRequest); 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.(*ChangeQANPostgreSQLPgStatementsAgentResponse); 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.(*AddQANPostgreSQLPgStatMonitorAgentRequest); 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.(*AddQANPostgreSQLPgStatMonitorAgentResponse); 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.(*ChangeQANPostgreSQLPgStatMonitorAgentRequest); i { case 0: return &v.state @@ -10755,7 +10481,7 @@ func file_inventory_v1_agents_proto_init() { return nil } } - file_inventory_v1_agents_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { + file_inventory_v1_agents_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChangeQANPostgreSQLPgStatMonitorAgentResponse); i { case 0: return &v.state @@ -10767,7 +10493,7 @@ func file_inventory_v1_agents_proto_init() { return nil } } - file_inventory_v1_agents_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { + file_inventory_v1_agents_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AddRDSExporterParams); i { case 0: return &v.state @@ -10779,7 +10505,7 @@ func file_inventory_v1_agents_proto_init() { return nil } } - file_inventory_v1_agents_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { + file_inventory_v1_agents_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChangeRDSExporterRequest); i { case 0: return &v.state @@ -10791,7 +10517,7 @@ func file_inventory_v1_agents_proto_init() { return nil } } - file_inventory_v1_agents_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { + file_inventory_v1_agents_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChangeRDSExporterResponse); i { case 0: return &v.state @@ -10803,7 +10529,7 @@ func file_inventory_v1_agents_proto_init() { return nil } } - file_inventory_v1_agents_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { + file_inventory_v1_agents_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AddExternalExporterParams); i { case 0: return &v.state @@ -10815,7 +10541,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[59].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChangeExternalExporterRequest); i { case 0: return &v.state @@ -10827,7 +10553,7 @@ func file_inventory_v1_agents_proto_init() { return nil } } - file_inventory_v1_agents_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { + file_inventory_v1_agents_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChangeExternalExporterResponse); i { case 0: return &v.state @@ -10839,7 +10565,7 @@ func file_inventory_v1_agents_proto_init() { return nil } } - file_inventory_v1_agents_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { + file_inventory_v1_agents_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AddAzureDatabaseExporterParams); i { case 0: return &v.state @@ -10851,7 +10577,7 @@ func file_inventory_v1_agents_proto_init() { return nil } } - file_inventory_v1_agents_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { + file_inventory_v1_agents_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChangeAzureDatabaseExporterRequest); i { case 0: return &v.state @@ -10863,7 +10589,7 @@ func file_inventory_v1_agents_proto_init() { return nil } } - file_inventory_v1_agents_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { + file_inventory_v1_agents_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChangeAzureDatabaseExporterResponse); i { case 0: return &v.state @@ -10875,7 +10601,7 @@ func file_inventory_v1_agents_proto_init() { return nil } } - file_inventory_v1_agents_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { + file_inventory_v1_agents_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveAgentRequest); i { case 0: return &v.state @@ -10887,7 +10613,7 @@ func file_inventory_v1_agents_proto_init() { return nil } } - file_inventory_v1_agents_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { + file_inventory_v1_agents_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RemoveAgentResponse); i { case 0: return &v.state @@ -10917,7 +10643,8 @@ func file_inventory_v1_agents_proto_init() { (*GetAgentResponse_ExternalExporter)(nil), (*GetAgentResponse_AzureDatabaseExporter)(nil), } - file_inventory_v1_agents_proto_msgTypes[24].OneofWrappers = []interface{}{ + file_inventory_v1_agents_proto_msgTypes[23].OneofWrappers = []interface{}{ + (*AddAgentRequest_PmmAgent)(nil), (*AddAgentRequest_NodeExporter)(nil), (*AddAgentRequest_MysqldExporter)(nil), (*AddAgentRequest_MongodbExporter)(nil), @@ -10926,8 +10653,14 @@ func file_inventory_v1_agents_proto_init() { (*AddAgentRequest_ExternalExporter)(nil), (*AddAgentRequest_RdsExporter)(nil), (*AddAgentRequest_AzureDatabaseExporter)(nil), + (*AddAgentRequest_QanMysqlPerfschemaAgent)(nil), + (*AddAgentRequest_QanMysqlSlowlogAgent)(nil), + (*AddAgentRequest_QanMongodbProfilerAgent)(nil), + (*AddAgentRequest_QanPostgresqlPgstatementsAgent)(nil), + (*AddAgentRequest_QanPostgresqlPgstatmonitorAgent)(nil), } - file_inventory_v1_agents_proto_msgTypes[25].OneofWrappers = []interface{}{ + file_inventory_v1_agents_proto_msgTypes[24].OneofWrappers = []interface{}{ + (*AddAgentResponse_PmmAgent)(nil), (*AddAgentResponse_NodeExporter)(nil), (*AddAgentResponse_MysqldExporter)(nil), (*AddAgentResponse_MongodbExporter)(nil), @@ -10936,6 +10669,11 @@ func file_inventory_v1_agents_proto_init() { (*AddAgentResponse_ExternalExporter)(nil), (*AddAgentResponse_RdsExporter)(nil), (*AddAgentResponse_AzureDatabaseExporter)(nil), + (*AddAgentResponse_QanMysqlPerfschemaAgent)(nil), + (*AddAgentResponse_QanMysqlSlowlogAgent)(nil), + (*AddAgentResponse_QanMongodbProfilerAgent)(nil), + (*AddAgentResponse_QanPostgresqlPgstatementsAgent)(nil), + (*AddAgentResponse_QanPostgresqlPgstatmonitorAgent)(nil), } type x struct{} out := protoimpl.TypeBuilder{ @@ -10943,7 +10681,7 @@ func file_inventory_v1_agents_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_inventory_v1_agents_proto_rawDesc, NumEnums: 1, - NumMessages: 101, + NumMessages: 95, NumExtensions: 0, NumServices: 1, }, diff --git a/api/inventory/v1/agents.pb.gw.go b/api/inventory/v1/agents.pb.gw.go index fe3a4bd268..75ea357910 100644 --- a/api/inventory/v1/agents.pb.gw.go +++ b/api/inventory/v1/agents.pb.gw.go @@ -129,38 +129,6 @@ func local_request_AgentsService_GetAgentLogs_0(ctx context.Context, marshaler r return msg, metadata, err } -func request_AgentsService_AddPMMAgent_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddPMMAgentRequest - 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.AddPMMAgent(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_AddPMMAgent_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddPMMAgentRequest - 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.AddPMMAgent(ctx, &protoReq) - return msg, metadata, err -} - func request_AgentsService_AddAgent_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { var protoReq AddAgentRequest var metadata runtime.ServerMetadata @@ -353,38 +321,6 @@ func local_request_AgentsService_ChangeProxySQLExporter_0(ctx context.Context, m return msg, metadata, err } -func request_AgentsService_AddQANMySQLPerfSchemaAgent_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddQANMySQLPerfSchemaAgentRequest - 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.AddQANMySQLPerfSchemaAgent(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_AddQANMySQLPerfSchemaAgent_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddQANMySQLPerfSchemaAgentRequest - 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.AddQANMySQLPerfSchemaAgent(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 @@ -417,38 +353,6 @@ func local_request_AgentsService_ChangeQANMySQLPerfSchemaAgent_0(ctx context.Con return msg, metadata, err } -func request_AgentsService_AddQANMySQLSlowlogAgent_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddQANMySQLSlowlogAgentRequest - 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.AddQANMySQLSlowlogAgent(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_AddQANMySQLSlowlogAgent_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddQANMySQLSlowlogAgentRequest - 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.AddQANMySQLSlowlogAgent(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 @@ -481,38 +385,6 @@ func local_request_AgentsService_ChangeQANMySQLSlowlogAgent_0(ctx context.Contex return msg, metadata, err } -func request_AgentsService_AddQANMongoDBProfilerAgent_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddQANMongoDBProfilerAgentRequest - 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.AddQANMongoDBProfilerAgent(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_AddQANMongoDBProfilerAgent_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddQANMongoDBProfilerAgentRequest - 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.AddQANMongoDBProfilerAgent(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 @@ -545,38 +417,6 @@ func local_request_AgentsService_ChangeQANMongoDBProfilerAgent_0(ctx context.Con return msg, metadata, err } -func request_AgentsService_AddQANPostgreSQLPgStatementsAgent_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddQANPostgreSQLPgStatementsAgentRequest - 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.AddQANPostgreSQLPgStatementsAgent(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_AddQANPostgreSQLPgStatementsAgent_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddQANPostgreSQLPgStatementsAgentRequest - 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.AddQANPostgreSQLPgStatementsAgent(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 @@ -609,38 +449,6 @@ func local_request_AgentsService_ChangeQANPostgreSQLPgStatementsAgent_0(ctx cont return msg, metadata, err } -func request_AgentsService_AddQANPostgreSQLPgStatMonitorAgent_0(ctx context.Context, marshaler runtime.Marshaler, client AgentsServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddQANPostgreSQLPgStatMonitorAgentRequest - 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.AddQANPostgreSQLPgStatMonitorAgent(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) - return msg, metadata, err -} - -func local_request_AgentsService_AddQANPostgreSQLPgStatMonitorAgent_0(ctx context.Context, marshaler runtime.Marshaler, server AgentsServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { - var protoReq AddQANPostgreSQLPgStatMonitorAgentRequest - 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.AddQANPostgreSQLPgStatMonitorAgent(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 @@ -878,30 +686,6 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM forward_AgentsService_GetAgentLogs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddPMMAgent_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/AddPMMAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddPMMAgent")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_AddPMMAgent_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_AddPMMAgent_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() @@ -1046,30 +830,6 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeProxySQLExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddQANMySQLPerfSchemaAgent_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/AddQANMySQLPerfSchemaAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddQANMySQLPerfSchemaAgent")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_AddQANMySQLPerfSchemaAgent_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_AddQANMySQLPerfSchemaAgent_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() @@ -1094,30 +854,6 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeQANMySQLPerfSchemaAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddQANMySQLSlowlogAgent_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/AddQANMySQLSlowlogAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddQANMySQLSlowlogAgent")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_AddQANMySQLSlowlogAgent_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_AddQANMySQLSlowlogAgent_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() @@ -1142,30 +878,6 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeQANMySQLSlowlogAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddQANMongoDBProfilerAgent_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/AddQANMongoDBProfilerAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddQANMongoDBProfilerAgent")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_AddQANMongoDBProfilerAgent_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_AddQANMongoDBProfilerAgent_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() @@ -1190,30 +902,6 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeQANMongoDBProfilerAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddQANPostgreSQLPgStatementsAgent_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/AddQANPostgreSQLPgStatementsAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddQANPostgreSQLPgStatementsAgent")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_AddQANPostgreSQLPgStatementsAgent_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_AddQANPostgreSQLPgStatementsAgent_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() @@ -1238,30 +926,6 @@ func RegisterAgentsServiceHandlerServer(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeQANPostgreSQLPgStatementsAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddQANPostgreSQLPgStatMonitorAgent_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/AddQANPostgreSQLPgStatMonitorAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddQANPostgreSQLPgStatMonitorAgent")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := local_request_AgentsService_AddQANPostgreSQLPgStatMonitorAgent_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_AddQANPostgreSQLPgStatMonitorAgent_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() @@ -1485,27 +1149,6 @@ func RegisterAgentsServiceHandlerClient(ctx context.Context, mux *runtime.ServeM forward_AgentsService_GetAgentLogs_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddPMMAgent_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/AddPMMAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddPMMAgent")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_AddPMMAgent_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_AddPMMAgent_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() @@ -1632,27 +1275,6 @@ func RegisterAgentsServiceHandlerClient(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeProxySQLExporter_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddQANMySQLPerfSchemaAgent_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/AddQANMySQLPerfSchemaAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddQANMySQLPerfSchemaAgent")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_AddQANMySQLPerfSchemaAgent_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_AddQANMySQLPerfSchemaAgent_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() @@ -1674,27 +1296,6 @@ func RegisterAgentsServiceHandlerClient(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeQANMySQLPerfSchemaAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddQANMySQLSlowlogAgent_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/AddQANMySQLSlowlogAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddQANMySQLSlowlogAgent")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_AddQANMySQLSlowlogAgent_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_AddQANMySQLSlowlogAgent_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() @@ -1716,27 +1317,6 @@ func RegisterAgentsServiceHandlerClient(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeQANMySQLSlowlogAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddQANMongoDBProfilerAgent_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/AddQANMongoDBProfilerAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddQANMongoDBProfilerAgent")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_AddQANMongoDBProfilerAgent_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_AddQANMongoDBProfilerAgent_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() @@ -1758,27 +1338,6 @@ func RegisterAgentsServiceHandlerClient(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeQANMongoDBProfilerAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddQANPostgreSQLPgStatementsAgent_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/AddQANPostgreSQLPgStatementsAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddQANPostgreSQLPgStatementsAgent")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_AddQANPostgreSQLPgStatementsAgent_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_AddQANPostgreSQLPgStatementsAgent_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() @@ -1800,27 +1359,6 @@ func RegisterAgentsServiceHandlerClient(ctx context.Context, mux *runtime.ServeM forward_AgentsService_ChangeQANPostgreSQLPgStatementsAgent_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) }) - mux.Handle("POST", pattern_AgentsService_AddQANPostgreSQLPgStatMonitorAgent_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/AddQANPostgreSQLPgStatMonitorAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddQANPostgreSQLPgStatMonitorAgent")) - if err != nil { - runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) - return - } - resp, md, err := request_AgentsService_AddQANPostgreSQLPgStatMonitorAgent_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_AddQANPostgreSQLPgStatMonitorAgent_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() @@ -1936,8 +1474,6 @@ var ( pattern_AgentsService_GetAgentLogs_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "GetLogs"}, "")) - pattern_AgentsService_AddPMMAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddPMMAgent"}, "")) - pattern_AgentsService_AddAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddAgent"}, "")) pattern_AgentsService_ChangeNodeExporter_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "ChangeNodeExporter"}, "")) @@ -1950,24 +1486,14 @@ var ( 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_AddQANMySQLPerfSchemaAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddQANMySQLPerfSchemaAgent"}, "")) - 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_AddQANMySQLSlowlogAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddQANMySQLSlowlogAgent"}, "")) - 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_AddQANMongoDBProfilerAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddQANMongoDBProfilerAgent"}, "")) - 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_AddQANPostgreSQLPgStatementsAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddQANPostgreSQLPgStatementsAgent"}, "")) - 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_AddQANPostgreSQLPgStatMonitorAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddQANPostgreSQLPgStatMonitorAgent"}, "")) - 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"}, "")) @@ -1986,8 +1512,6 @@ var ( forward_AgentsService_GetAgentLogs_0 = runtime.ForwardResponseMessage - forward_AgentsService_AddPMMAgent_0 = runtime.ForwardResponseMessage - forward_AgentsService_AddAgent_0 = runtime.ForwardResponseMessage forward_AgentsService_ChangeNodeExporter_0 = runtime.ForwardResponseMessage @@ -2000,24 +1524,14 @@ var ( forward_AgentsService_ChangeProxySQLExporter_0 = runtime.ForwardResponseMessage - forward_AgentsService_AddQANMySQLPerfSchemaAgent_0 = runtime.ForwardResponseMessage - forward_AgentsService_ChangeQANMySQLPerfSchemaAgent_0 = runtime.ForwardResponseMessage - forward_AgentsService_AddQANMySQLSlowlogAgent_0 = runtime.ForwardResponseMessage - forward_AgentsService_ChangeQANMySQLSlowlogAgent_0 = runtime.ForwardResponseMessage - forward_AgentsService_AddQANMongoDBProfilerAgent_0 = runtime.ForwardResponseMessage - forward_AgentsService_ChangeQANMongoDBProfilerAgent_0 = runtime.ForwardResponseMessage - forward_AgentsService_AddQANPostgreSQLPgStatementsAgent_0 = runtime.ForwardResponseMessage - forward_AgentsService_ChangeQANPostgreSQLPgStatementsAgent_0 = runtime.ForwardResponseMessage - forward_AgentsService_AddQANPostgreSQLPgStatMonitorAgent_0 = runtime.ForwardResponseMessage - forward_AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_0 = runtime.ForwardResponseMessage forward_AgentsService_ChangeRDSExporter_0 = runtime.ForwardResponseMessage diff --git a/api/inventory/v1/agents.pb.validate.go b/api/inventory/v1/agents.pb.validate.go index 97b2460945..385561b704 100644 --- a/api/inventory/v1/agents.pb.validate.go +++ b/api/inventory/v1/agents.pb.validate.go @@ -3820,22 +3820,22 @@ var _ interface { ErrorName() string } = GetAgentLogsResponseValidationError{} -// Validate checks the field values on AddPMMAgentRequest 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 *AddPMMAgentRequest) 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 AddPMMAgentRequest with the rules +// 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 -// AddPMMAgentRequestMultiError, or nil if none found. -func (m *AddPMMAgentRequest) ValidateAll() error { +// AddPMMAgentParamsMultiError, or nil if none found. +func (m *AddPMMAgentParams) ValidateAll() error { return m.validate(true) } -func (m *AddPMMAgentRequest) validate(all bool) error { +func (m *AddPMMAgentParams) validate(all bool) error { if m == nil { return nil } @@ -3843,7 +3843,7 @@ func (m *AddPMMAgentRequest) validate(all bool) error { var errors []error if utf8.RuneCountInString(m.GetRunsOnNodeId()) < 1 { - err := AddPMMAgentRequestValidationError{ + err := AddPMMAgentParamsValidationError{ field: "RunsOnNodeId", reason: "value length must be at least 1 runes", } @@ -3856,150 +3856,19 @@ func (m *AddPMMAgentRequest) validate(all bool) error { // no validation rules for CustomLabels if len(errors) > 0 { - return AddPMMAgentRequestMultiError(errors) + return AddPMMAgentParamsMultiError(errors) } return nil } -// AddPMMAgentRequestMultiError is an error wrapping multiple validation errors -// returned by AddPMMAgentRequest.ValidateAll() if the designated constraints +// AddPMMAgentParamsMultiError is an error wrapping multiple validation errors +// returned by AddPMMAgentParams.ValidateAll() if the designated constraints // aren't met. -type AddPMMAgentRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m AddPMMAgentRequestMultiError) 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 AddPMMAgentRequestMultiError) AllErrors() []error { return m } - -// AddPMMAgentRequestValidationError is the validation error returned by -// AddPMMAgentRequest.Validate if the designated constraints aren't met. -type AddPMMAgentRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e AddPMMAgentRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e AddPMMAgentRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e AddPMMAgentRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e AddPMMAgentRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e AddPMMAgentRequestValidationError) ErrorName() string { - return "AddPMMAgentRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e AddPMMAgentRequestValidationError) 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 %sAddPMMAgentRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = AddPMMAgentRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = AddPMMAgentRequestValidationError{} - -// Validate checks the field values on AddPMMAgentResponse 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 *AddPMMAgentResponse) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on AddPMMAgentResponse 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 -// AddPMMAgentResponseMultiError, or nil if none found. -func (m *AddPMMAgentResponse) ValidateAll() error { - return m.validate(true) -} - -func (m *AddPMMAgentResponse) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - - if all { - switch v := interface{}(m.GetPmmAgent()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, AddPMMAgentResponseValidationError{ - field: "PmmAgent", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, AddPMMAgentResponseValidationError{ - field: "PmmAgent", - reason: "embedded message failed validation", - cause: err, - }) - } - } - } else if v, ok := interface{}(m.GetPmmAgent()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return AddPMMAgentResponseValidationError{ - field: "PmmAgent", - reason: "embedded message failed validation", - cause: err, - } - } - } - - if len(errors) > 0 { - return AddPMMAgentResponseMultiError(errors) - } - - return nil -} - -// AddPMMAgentResponseMultiError is an error wrapping multiple validation -// errors returned by AddPMMAgentResponse.ValidateAll() if the designated -// constraints aren't met. -type AddPMMAgentResponseMultiError []error +type AddPMMAgentParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m AddPMMAgentResponseMultiError) Error() string { +func (m AddPMMAgentParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -4008,11 +3877,11 @@ func (m AddPMMAgentResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m AddPMMAgentResponseMultiError) AllErrors() []error { return m } +func (m AddPMMAgentParamsMultiError) AllErrors() []error { return m } -// AddPMMAgentResponseValidationError is the validation error returned by -// AddPMMAgentResponse.Validate if the designated constraints aren't met. -type AddPMMAgentResponseValidationError struct { +// 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 @@ -4020,24 +3889,24 @@ type AddPMMAgentResponseValidationError struct { } // Field function returns field value. -func (e AddPMMAgentResponseValidationError) Field() string { return e.field } +func (e AddPMMAgentParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e AddPMMAgentResponseValidationError) Reason() string { return e.reason } +func (e AddPMMAgentParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e AddPMMAgentResponseValidationError) Cause() error { return e.cause } +func (e AddPMMAgentParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e AddPMMAgentResponseValidationError) Key() bool { return e.key } +func (e AddPMMAgentParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e AddPMMAgentResponseValidationError) ErrorName() string { - return "AddPMMAgentResponseValidationError" +func (e AddPMMAgentParamsValidationError) ErrorName() string { + return "AddPMMAgentParamsValidationError" } // Error satisfies the builtin error interface -func (e AddPMMAgentResponseValidationError) Error() string { +func (e AddPMMAgentParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -4049,14 +3918,14 @@ func (e AddPMMAgentResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sAddPMMAgentResponse.%s: %s%s", + "invalid %sAddPMMAgentParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = AddPMMAgentResponseValidationError{} +var _ error = AddPMMAgentParamsValidationError{} var _ interface { Field() string @@ -4064,7 +3933,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = AddPMMAgentResponseValidationError{} +} = 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 @@ -4089,6 +3958,47 @@ func (m *AddAgentRequest) validate(all bool) error { var errors []error switch v := m.Exporter.(type) { + case *AddAgentRequest_PmmAgent: + if v == nil { + err := AddAgentRequestValidationError{ + field: "Exporter", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetPmmAgent()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, AddAgentRequestValidationError{ + field: "PmmAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddAgentRequestValidationError{ + field: "PmmAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetPmmAgent()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return AddAgentRequestValidationError{ + field: "PmmAgent", + reason: "embedded message failed validation", + cause: err, + } + } + } + case *AddAgentRequest_NodeExporter: if v == nil { err := AddAgentRequestValidationError{ @@ -4417,37 +4327,242 @@ func (m *AddAgentRequest) validate(all bool) error { } } - default: - _ = v // ensures v is used - } - - if len(errors) > 0 { - return AddAgentRequestMultiError(errors) - } + case *AddAgentRequest_QanMysqlPerfschemaAgent: + if v == nil { + err := AddAgentRequestValidationError{ + field: "Exporter", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } - return nil -} + if all { + switch v := interface{}(m.GetQanMysqlPerfschemaAgent()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, AddAgentRequestValidationError{ + field: "QanMysqlPerfschemaAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddAgentRequestValidationError{ + 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 AddAgentRequestValidationError{ + field: "QanMysqlPerfschemaAgent", + reason: "embedded message failed validation", + cause: err, + } + } + } -// AddAgentRequestMultiError is an error wrapping multiple validation errors -// returned by AddAgentRequest.ValidateAll() if the designated constraints -// aren't met. -type AddAgentRequestMultiError []error + case *AddAgentRequest_QanMysqlSlowlogAgent: + if v == nil { + err := AddAgentRequestValidationError{ + field: "Exporter", + 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 AddAgentRequestMultiError) Error() string { - var msgs []string - for _, err := range m { - msgs = append(msgs, err.Error()) - } - return strings.Join(msgs, "; ") -} + if all { + switch v := interface{}(m.GetQanMysqlSlowlogAgent()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, AddAgentRequestValidationError{ + field: "QanMysqlSlowlogAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddAgentRequestValidationError{ + 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 AddAgentRequestValidationError{ + field: "QanMysqlSlowlogAgent", + reason: "embedded message failed validation", + cause: err, + } + } + } -// AllErrors returns a list of validation violation errors. -func (m AddAgentRequestMultiError) AllErrors() []error { return m } + case *AddAgentRequest_QanMongodbProfilerAgent: + if v == nil { + err := AddAgentRequestValidationError{ + field: "Exporter", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } -// AddAgentRequestValidationError is the validation error returned by -// AddAgentRequest.Validate if the designated constraints aren't met. -type AddAgentRequestValidationError struct { + if all { + switch v := interface{}(m.GetQanMongodbProfilerAgent()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, AddAgentRequestValidationError{ + field: "QanMongodbProfilerAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddAgentRequestValidationError{ + 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 AddAgentRequestValidationError{ + field: "QanMongodbProfilerAgent", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *AddAgentRequest_QanPostgresqlPgstatementsAgent: + if v == nil { + err := AddAgentRequestValidationError{ + field: "Exporter", + 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, AddAgentRequestValidationError{ + field: "QanPostgresqlPgstatementsAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddAgentRequestValidationError{ + 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 AddAgentRequestValidationError{ + field: "QanPostgresqlPgstatementsAgent", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *AddAgentRequest_QanPostgresqlPgstatmonitorAgent: + if v == nil { + err := AddAgentRequestValidationError{ + field: "Exporter", + 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, AddAgentRequestValidationError{ + field: "QanPostgresqlPgstatmonitorAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddAgentRequestValidationError{ + 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 AddAgentRequestValidationError{ + field: "QanPostgresqlPgstatmonitorAgent", + reason: "embedded message failed validation", + cause: err, + } + } + } + + default: + _ = v // ensures v is used + } + + if len(errors) > 0 { + return AddAgentRequestMultiError(errors) + } + + return nil +} + +// AddAgentRequestMultiError is an error wrapping multiple validation errors +// returned by AddAgentRequest.ValidateAll() if the designated constraints +// aren't met. +type AddAgentRequestMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m AddAgentRequestMultiError) 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 AddAgentRequestMultiError) AllErrors() []error { return m } + +// AddAgentRequestValidationError is the validation error returned by +// AddAgentRequest.Validate if the designated constraints aren't met. +type AddAgentRequestValidationError struct { field string reason string cause error @@ -4514,17 +4629,263 @@ func (m *AddAgentResponse) ValidateAll() error { return m.validate(true) } -func (m *AddAgentResponse) validate(all bool) error { - if m == nil { - return nil - } +func (m *AddAgentResponse) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for TableCount + + switch v := m.Exporter.(type) { + case *AddAgentResponse_PmmAgent: + if v == nil { + err := AddAgentResponseValidationError{ + field: "Exporter", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } + + if all { + switch v := interface{}(m.GetPmmAgent()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, AddAgentResponseValidationError{ + field: "PmmAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddAgentResponseValidationError{ + field: "PmmAgent", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetPmmAgent()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return AddAgentResponseValidationError{ + field: "PmmAgent", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *AddAgentResponse_NodeExporter: + if v == nil { + err := AddAgentResponseValidationError{ + field: "Exporter", + 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, AddAgentResponseValidationError{ + field: "NodeExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddAgentResponseValidationError{ + 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 AddAgentResponseValidationError{ + field: "NodeExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *AddAgentResponse_MysqldExporter: + if v == nil { + err := AddAgentResponseValidationError{ + field: "Exporter", + 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, AddAgentResponseValidationError{ + field: "MysqldExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddAgentResponseValidationError{ + 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 AddAgentResponseValidationError{ + field: "MysqldExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *AddAgentResponse_MongodbExporter: + if v == nil { + err := AddAgentResponseValidationError{ + field: "Exporter", + 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, AddAgentResponseValidationError{ + field: "MongodbExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddAgentResponseValidationError{ + 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 AddAgentResponseValidationError{ + field: "MongodbExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *AddAgentResponse_PostgresExporter: + if v == nil { + err := AddAgentResponseValidationError{ + field: "Exporter", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } - var errors []error + if all { + switch v := interface{}(m.GetPostgresExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, AddAgentResponseValidationError{ + field: "PostgresExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddAgentResponseValidationError{ + 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 AddAgentResponseValidationError{ + field: "PostgresExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } - // no validation rules for TableCount + case *AddAgentResponse_ProxysqlExporter: + if v == nil { + err := AddAgentResponseValidationError{ + field: "Exporter", + reason: "oneof value cannot be a typed-nil", + } + if !all { + return err + } + errors = append(errors, err) + } - switch v := m.Exporter.(type) { - case *AddAgentResponse_NodeExporter: + if all { + switch v := interface{}(m.GetProxysqlExporter()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, AddAgentResponseValidationError{ + field: "ProxysqlExporter", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, AddAgentResponseValidationError{ + 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 AddAgentResponseValidationError{ + field: "ProxysqlExporter", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *AddAgentResponse_ExternalExporter: if v == nil { err := AddAgentResponseValidationError{ field: "Exporter", @@ -4537,11 +4898,11 @@ func (m *AddAgentResponse) validate(all bool) error { } if all { - switch v := interface{}(m.GetNodeExporter()).(type) { + switch v := interface{}(m.GetExternalExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { errors = append(errors, AddAgentResponseValidationError{ - field: "NodeExporter", + field: "ExternalExporter", reason: "embedded message failed validation", cause: err, }) @@ -4549,23 +4910,23 @@ func (m *AddAgentResponse) validate(all bool) error { case interface{ Validate() error }: if err := v.Validate(); err != nil { errors = append(errors, AddAgentResponseValidationError{ - field: "NodeExporter", + field: "ExternalExporter", reason: "embedded message failed validation", cause: err, }) } } - } else if v, ok := interface{}(m.GetNodeExporter()).(interface{ Validate() error }); ok { + } else if v, ok := interface{}(m.GetExternalExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { return AddAgentResponseValidationError{ - field: "NodeExporter", + field: "ExternalExporter", reason: "embedded message failed validation", cause: err, } } } - case *AddAgentResponse_MysqldExporter: + case *AddAgentResponse_RdsExporter: if v == nil { err := AddAgentResponseValidationError{ field: "Exporter", @@ -4578,11 +4939,11 @@ func (m *AddAgentResponse) validate(all bool) error { } if all { - switch v := interface{}(m.GetMysqldExporter()).(type) { + switch v := interface{}(m.GetRdsExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { errors = append(errors, AddAgentResponseValidationError{ - field: "MysqldExporter", + field: "RdsExporter", reason: "embedded message failed validation", cause: err, }) @@ -4590,23 +4951,23 @@ func (m *AddAgentResponse) validate(all bool) error { case interface{ Validate() error }: if err := v.Validate(); err != nil { errors = append(errors, AddAgentResponseValidationError{ - field: "MysqldExporter", + field: "RdsExporter", reason: "embedded message failed validation", cause: err, }) } } - } else if v, ok := interface{}(m.GetMysqldExporter()).(interface{ Validate() error }); ok { + } else if v, ok := interface{}(m.GetRdsExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { return AddAgentResponseValidationError{ - field: "MysqldExporter", + field: "RdsExporter", reason: "embedded message failed validation", cause: err, } } } - case *AddAgentResponse_MongodbExporter: + case *AddAgentResponse_AzureDatabaseExporter: if v == nil { err := AddAgentResponseValidationError{ field: "Exporter", @@ -4619,11 +4980,11 @@ func (m *AddAgentResponse) validate(all bool) error { } if all { - switch v := interface{}(m.GetMongodbExporter()).(type) { + switch v := interface{}(m.GetAzureDatabaseExporter()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { errors = append(errors, AddAgentResponseValidationError{ - field: "MongodbExporter", + field: "AzureDatabaseExporter", reason: "embedded message failed validation", cause: err, }) @@ -4631,23 +4992,23 @@ func (m *AddAgentResponse) validate(all bool) error { case interface{ Validate() error }: if err := v.Validate(); err != nil { errors = append(errors, AddAgentResponseValidationError{ - field: "MongodbExporter", + field: "AzureDatabaseExporter", reason: "embedded message failed validation", cause: err, }) } } - } else if v, ok := interface{}(m.GetMongodbExporter()).(interface{ Validate() error }); ok { + } else if v, ok := interface{}(m.GetAzureDatabaseExporter()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { return AddAgentResponseValidationError{ - field: "MongodbExporter", + field: "AzureDatabaseExporter", reason: "embedded message failed validation", cause: err, } } } - case *AddAgentResponse_PostgresExporter: + case *AddAgentResponse_QanMysqlPerfschemaAgent: if v == nil { err := AddAgentResponseValidationError{ field: "Exporter", @@ -4660,11 +5021,11 @@ func (m *AddAgentResponse) validate(all bool) error { } if all { - switch v := interface{}(m.GetPostgresExporter()).(type) { + switch v := interface{}(m.GetQanMysqlPerfschemaAgent()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { errors = append(errors, AddAgentResponseValidationError{ - field: "PostgresExporter", + field: "QanMysqlPerfschemaAgent", reason: "embedded message failed validation", cause: err, }) @@ -4672,23 +5033,23 @@ func (m *AddAgentResponse) validate(all bool) error { case interface{ Validate() error }: if err := v.Validate(); err != nil { errors = append(errors, AddAgentResponseValidationError{ - field: "PostgresExporter", + field: "QanMysqlPerfschemaAgent", reason: "embedded message failed validation", cause: err, }) } } - } else if v, ok := interface{}(m.GetPostgresExporter()).(interface{ Validate() error }); ok { + } else if v, ok := interface{}(m.GetQanMysqlPerfschemaAgent()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { return AddAgentResponseValidationError{ - field: "PostgresExporter", + field: "QanMysqlPerfschemaAgent", reason: "embedded message failed validation", cause: err, } } } - case *AddAgentResponse_ProxysqlExporter: + case *AddAgentResponse_QanMysqlSlowlogAgent: if v == nil { err := AddAgentResponseValidationError{ field: "Exporter", @@ -4701,11 +5062,11 @@ func (m *AddAgentResponse) validate(all bool) error { } if all { - switch v := interface{}(m.GetProxysqlExporter()).(type) { + switch v := interface{}(m.GetQanMysqlSlowlogAgent()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { errors = append(errors, AddAgentResponseValidationError{ - field: "ProxysqlExporter", + field: "QanMysqlSlowlogAgent", reason: "embedded message failed validation", cause: err, }) @@ -4713,23 +5074,23 @@ func (m *AddAgentResponse) validate(all bool) error { case interface{ Validate() error }: if err := v.Validate(); err != nil { errors = append(errors, AddAgentResponseValidationError{ - field: "ProxysqlExporter", + field: "QanMysqlSlowlogAgent", reason: "embedded message failed validation", cause: err, }) } } - } else if v, ok := interface{}(m.GetProxysqlExporter()).(interface{ Validate() error }); ok { + } else if v, ok := interface{}(m.GetQanMysqlSlowlogAgent()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { return AddAgentResponseValidationError{ - field: "ProxysqlExporter", + field: "QanMysqlSlowlogAgent", reason: "embedded message failed validation", cause: err, } } } - case *AddAgentResponse_ExternalExporter: + case *AddAgentResponse_QanMongodbProfilerAgent: if v == nil { err := AddAgentResponseValidationError{ field: "Exporter", @@ -4742,11 +5103,11 @@ func (m *AddAgentResponse) validate(all bool) error { } if all { - switch v := interface{}(m.GetExternalExporter()).(type) { + switch v := interface{}(m.GetQanMongodbProfilerAgent()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { errors = append(errors, AddAgentResponseValidationError{ - field: "ExternalExporter", + field: "QanMongodbProfilerAgent", reason: "embedded message failed validation", cause: err, }) @@ -4754,23 +5115,23 @@ func (m *AddAgentResponse) validate(all bool) error { case interface{ Validate() error }: if err := v.Validate(); err != nil { errors = append(errors, AddAgentResponseValidationError{ - field: "ExternalExporter", + field: "QanMongodbProfilerAgent", reason: "embedded message failed validation", cause: err, }) } } - } else if v, ok := interface{}(m.GetExternalExporter()).(interface{ Validate() error }); ok { + } else if v, ok := interface{}(m.GetQanMongodbProfilerAgent()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { return AddAgentResponseValidationError{ - field: "ExternalExporter", + field: "QanMongodbProfilerAgent", reason: "embedded message failed validation", cause: err, } } } - case *AddAgentResponse_RdsExporter: + case *AddAgentResponse_QanPostgresqlPgstatementsAgent: if v == nil { err := AddAgentResponseValidationError{ field: "Exporter", @@ -4783,11 +5144,11 @@ func (m *AddAgentResponse) validate(all bool) error { } if all { - switch v := interface{}(m.GetRdsExporter()).(type) { + switch v := interface{}(m.GetQanPostgresqlPgstatementsAgent()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { errors = append(errors, AddAgentResponseValidationError{ - field: "RdsExporter", + field: "QanPostgresqlPgstatementsAgent", reason: "embedded message failed validation", cause: err, }) @@ -4795,23 +5156,23 @@ func (m *AddAgentResponse) validate(all bool) error { case interface{ Validate() error }: if err := v.Validate(); err != nil { errors = append(errors, AddAgentResponseValidationError{ - field: "RdsExporter", + field: "QanPostgresqlPgstatementsAgent", reason: "embedded message failed validation", cause: err, }) } } - } else if v, ok := interface{}(m.GetRdsExporter()).(interface{ Validate() error }); ok { + } else if v, ok := interface{}(m.GetQanPostgresqlPgstatementsAgent()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { return AddAgentResponseValidationError{ - field: "RdsExporter", + field: "QanPostgresqlPgstatementsAgent", reason: "embedded message failed validation", cause: err, } } } - case *AddAgentResponse_AzureDatabaseExporter: + case *AddAgentResponse_QanPostgresqlPgstatmonitorAgent: if v == nil { err := AddAgentResponseValidationError{ field: "Exporter", @@ -4824,11 +5185,11 @@ func (m *AddAgentResponse) validate(all bool) error { } if all { - switch v := interface{}(m.GetAzureDatabaseExporter()).(type) { + switch v := interface{}(m.GetQanPostgresqlPgstatmonitorAgent()).(type) { case interface{ ValidateAll() error }: if err := v.ValidateAll(); err != nil { errors = append(errors, AddAgentResponseValidationError{ - field: "AzureDatabaseExporter", + field: "QanPostgresqlPgstatmonitorAgent", reason: "embedded message failed validation", cause: err, }) @@ -4836,16 +5197,16 @@ func (m *AddAgentResponse) validate(all bool) error { case interface{ Validate() error }: if err := v.Validate(); err != nil { errors = append(errors, AddAgentResponseValidationError{ - field: "AzureDatabaseExporter", + field: "QanPostgresqlPgstatmonitorAgent", reason: "embedded message failed validation", cause: err, }) } } - } else if v, ok := interface{}(m.GetAzureDatabaseExporter()).(interface{ Validate() error }); ok { + } else if v, ok := interface{}(m.GetQanPostgresqlPgstatmonitorAgent()).(interface{ Validate() error }); ok { if err := v.Validate(); err != nil { return AddAgentResponseValidationError{ - field: "AzureDatabaseExporter", + field: "QanPostgresqlPgstatmonitorAgent", reason: "embedded message failed validation", cause: err, } @@ -7059,23 +7420,23 @@ var _ interface { ErrorName() string } = ChangeProxySQLExporterResponseValidationError{} -// Validate checks the field values on AddQANMySQLPerfSchemaAgentRequest with +// Validate checks the field values on AddQANMySQLPerfSchemaAgentParams 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 *AddQANMySQLPerfSchemaAgentRequest) Validate() error { +func (m *AddQANMySQLPerfSchemaAgentParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on AddQANMySQLPerfSchemaAgentRequest -// 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 -// AddQANMySQLPerfSchemaAgentRequestMultiError, or nil if none found. -func (m *AddQANMySQLPerfSchemaAgentRequest) ValidateAll() error { +// ValidateAll checks the field values on AddQANMySQLPerfSchemaAgentParams 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 +// AddQANMySQLPerfSchemaAgentParamsMultiError, or nil if none found. +func (m *AddQANMySQLPerfSchemaAgentParams) ValidateAll() error { return m.validate(true) } -func (m *AddQANMySQLPerfSchemaAgentRequest) validate(all bool) error { +func (m *AddQANMySQLPerfSchemaAgentParams) validate(all bool) error { if m == nil { return nil } @@ -7083,7 +7444,7 @@ func (m *AddQANMySQLPerfSchemaAgentRequest) validate(all bool) error { var errors []error if utf8.RuneCountInString(m.GetPmmAgentId()) < 1 { - err := AddQANMySQLPerfSchemaAgentRequestValidationError{ + err := AddQANMySQLPerfSchemaAgentParamsValidationError{ field: "PmmAgentId", reason: "value length must be at least 1 runes", } @@ -7094,7 +7455,7 @@ func (m *AddQANMySQLPerfSchemaAgentRequest) validate(all bool) error { } if utf8.RuneCountInString(m.GetServiceId()) < 1 { - err := AddQANMySQLPerfSchemaAgentRequestValidationError{ + err := AddQANMySQLPerfSchemaAgentParamsValidationError{ field: "ServiceId", reason: "value length must be at least 1 runes", } @@ -7105,7 +7466,7 @@ func (m *AddQANMySQLPerfSchemaAgentRequest) validate(all bool) error { } if utf8.RuneCountInString(m.GetUsername()) < 1 { - err := AddQANMySQLPerfSchemaAgentRequestValidationError{ + err := AddQANMySQLPerfSchemaAgentParamsValidationError{ field: "Username", reason: "value length must be at least 1 runes", } @@ -7115,179 +7476,45 @@ func (m *AddQANMySQLPerfSchemaAgentRequest) validate(all bool) error { errors = append(errors, err) } - // no validation rules for Password - - // no validation rules for Tls - - // no validation rules for TlsSkipVerify - - // no validation rules for TlsCa - - // no validation rules for TlsCert - - // no validation rules for TlsKey - - // no validation rules for MaxQueryLength - - // no validation rules for DisableQueryExamples - - // no validation rules for CustomLabels - - // no validation rules for SkipConnectionCheck - - // no validation rules for DisableCommentsParsing - - // no validation rules for LogLevel - - if len(errors) > 0 { - return AddQANMySQLPerfSchemaAgentRequestMultiError(errors) - } - - return nil -} - -// AddQANMySQLPerfSchemaAgentRequestMultiError is an error wrapping multiple -// validation errors returned by -// AddQANMySQLPerfSchemaAgentRequest.ValidateAll() if the designated -// constraints aren't met. -type AddQANMySQLPerfSchemaAgentRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m AddQANMySQLPerfSchemaAgentRequestMultiError) 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 AddQANMySQLPerfSchemaAgentRequestMultiError) AllErrors() []error { return m } - -// AddQANMySQLPerfSchemaAgentRequestValidationError is the validation error -// returned by AddQANMySQLPerfSchemaAgentRequest.Validate if the designated -// constraints aren't met. -type AddQANMySQLPerfSchemaAgentRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e AddQANMySQLPerfSchemaAgentRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e AddQANMySQLPerfSchemaAgentRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e AddQANMySQLPerfSchemaAgentRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e AddQANMySQLPerfSchemaAgentRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e AddQANMySQLPerfSchemaAgentRequestValidationError) ErrorName() string { - return "AddQANMySQLPerfSchemaAgentRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e AddQANMySQLPerfSchemaAgentRequestValidationError) 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 %sAddQANMySQLPerfSchemaAgentRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} + // no validation rules for Password -var _ error = AddQANMySQLPerfSchemaAgentRequestValidationError{} + // no validation rules for Tls -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = AddQANMySQLPerfSchemaAgentRequestValidationError{} + // no validation rules for TlsSkipVerify -// Validate checks the field values on AddQANMySQLPerfSchemaAgentResponse 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 *AddQANMySQLPerfSchemaAgentResponse) Validate() error { - return m.validate(false) -} + // no validation rules for TlsCa -// ValidateAll checks the field values on AddQANMySQLPerfSchemaAgentResponse -// 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 -// AddQANMySQLPerfSchemaAgentResponseMultiError, or nil if none found. -func (m *AddQANMySQLPerfSchemaAgentResponse) ValidateAll() error { - return m.validate(true) -} + // no validation rules for TlsCert -func (m *AddQANMySQLPerfSchemaAgentResponse) validate(all bool) error { - if m == nil { - return nil - } + // no validation rules for TlsKey - var errors []error + // no validation rules for MaxQueryLength - if all { - switch v := interface{}(m.GetQanMysqlPerfschemaAgent()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, AddQANMySQLPerfSchemaAgentResponseValidationError{ - field: "QanMysqlPerfschemaAgent", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, AddQANMySQLPerfSchemaAgentResponseValidationError{ - 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 AddQANMySQLPerfSchemaAgentResponseValidationError{ - field: "QanMysqlPerfschemaAgent", - reason: "embedded message failed validation", - cause: err, - } - } - } + // no validation rules for DisableQueryExamples + + // no validation rules for CustomLabels + + // no validation rules for SkipConnectionCheck + + // no validation rules for DisableCommentsParsing + + // no validation rules for LogLevel if len(errors) > 0 { - return AddQANMySQLPerfSchemaAgentResponseMultiError(errors) + return AddQANMySQLPerfSchemaAgentParamsMultiError(errors) } return nil } -// AddQANMySQLPerfSchemaAgentResponseMultiError is an error wrapping multiple +// AddQANMySQLPerfSchemaAgentParamsMultiError is an error wrapping multiple // validation errors returned by -// AddQANMySQLPerfSchemaAgentResponse.ValidateAll() if the designated +// AddQANMySQLPerfSchemaAgentParams.ValidateAll() if the designated // constraints aren't met. -type AddQANMySQLPerfSchemaAgentResponseMultiError []error +type AddQANMySQLPerfSchemaAgentParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m AddQANMySQLPerfSchemaAgentResponseMultiError) Error() string { +func (m AddQANMySQLPerfSchemaAgentParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -7296,12 +7523,12 @@ func (m AddQANMySQLPerfSchemaAgentResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m AddQANMySQLPerfSchemaAgentResponseMultiError) AllErrors() []error { return m } +func (m AddQANMySQLPerfSchemaAgentParamsMultiError) AllErrors() []error { return m } -// AddQANMySQLPerfSchemaAgentResponseValidationError is the validation error -// returned by AddQANMySQLPerfSchemaAgentResponse.Validate if the designated +// AddQANMySQLPerfSchemaAgentParamsValidationError is the validation error +// returned by AddQANMySQLPerfSchemaAgentParams.Validate if the designated // constraints aren't met. -type AddQANMySQLPerfSchemaAgentResponseValidationError struct { +type AddQANMySQLPerfSchemaAgentParamsValidationError struct { field string reason string cause error @@ -7309,24 +7536,24 @@ type AddQANMySQLPerfSchemaAgentResponseValidationError struct { } // Field function returns field value. -func (e AddQANMySQLPerfSchemaAgentResponseValidationError) Field() string { return e.field } +func (e AddQANMySQLPerfSchemaAgentParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e AddQANMySQLPerfSchemaAgentResponseValidationError) Reason() string { return e.reason } +func (e AddQANMySQLPerfSchemaAgentParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e AddQANMySQLPerfSchemaAgentResponseValidationError) Cause() error { return e.cause } +func (e AddQANMySQLPerfSchemaAgentParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e AddQANMySQLPerfSchemaAgentResponseValidationError) Key() bool { return e.key } +func (e AddQANMySQLPerfSchemaAgentParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e AddQANMySQLPerfSchemaAgentResponseValidationError) ErrorName() string { - return "AddQANMySQLPerfSchemaAgentResponseValidationError" +func (e AddQANMySQLPerfSchemaAgentParamsValidationError) ErrorName() string { + return "AddQANMySQLPerfSchemaAgentParamsValidationError" } // Error satisfies the builtin error interface -func (e AddQANMySQLPerfSchemaAgentResponseValidationError) Error() string { +func (e AddQANMySQLPerfSchemaAgentParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -7338,14 +7565,14 @@ func (e AddQANMySQLPerfSchemaAgentResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sAddQANMySQLPerfSchemaAgentResponse.%s: %s%s", + "invalid %sAddQANMySQLPerfSchemaAgentParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = AddQANMySQLPerfSchemaAgentResponseValidationError{} +var _ error = AddQANMySQLPerfSchemaAgentParamsValidationError{} var _ interface { Field() string @@ -7353,7 +7580,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = AddQANMySQLPerfSchemaAgentResponseValidationError{} +} = AddQANMySQLPerfSchemaAgentParamsValidationError{} // Validate checks the field values on ChangeQANMySQLPerfSchemaAgentRequest // with the rules defined in the proto definition for this message. If any @@ -7634,22 +7861,22 @@ var _ interface { ErrorName() string } = ChangeQANMySQLPerfSchemaAgentResponseValidationError{} -// Validate checks the field values on AddQANMySQLSlowlogAgentRequest with the +// Validate checks the field values on AddQANMySQLSlowlogAgentParams 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 *AddQANMySQLSlowlogAgentRequest) Validate() error { +func (m *AddQANMySQLSlowlogAgentParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on AddQANMySQLSlowlogAgentRequest with +// ValidateAll checks the field values on AddQANMySQLSlowlogAgentParams 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 -// AddQANMySQLSlowlogAgentRequestMultiError, or nil if none found. -func (m *AddQANMySQLSlowlogAgentRequest) ValidateAll() error { +// AddQANMySQLSlowlogAgentParamsMultiError, or nil if none found. +func (m *AddQANMySQLSlowlogAgentParams) ValidateAll() error { return m.validate(true) } -func (m *AddQANMySQLSlowlogAgentRequest) validate(all bool) error { +func (m *AddQANMySQLSlowlogAgentParams) validate(all bool) error { if m == nil { return nil } @@ -7657,7 +7884,7 @@ func (m *AddQANMySQLSlowlogAgentRequest) validate(all bool) error { var errors []error if utf8.RuneCountInString(m.GetPmmAgentId()) < 1 { - err := AddQANMySQLSlowlogAgentRequestValidationError{ + err := AddQANMySQLSlowlogAgentParamsValidationError{ field: "PmmAgentId", reason: "value length must be at least 1 runes", } @@ -7668,7 +7895,7 @@ func (m *AddQANMySQLSlowlogAgentRequest) validate(all bool) error { } if utf8.RuneCountInString(m.GetServiceId()) < 1 { - err := AddQANMySQLSlowlogAgentRequestValidationError{ + err := AddQANMySQLSlowlogAgentParamsValidationError{ field: "ServiceId", reason: "value length must be at least 1 runes", } @@ -7679,7 +7906,7 @@ func (m *AddQANMySQLSlowlogAgentRequest) validate(all bool) error { } if utf8.RuneCountInString(m.GetUsername()) < 1 { - err := AddQANMySQLSlowlogAgentRequestValidationError{ + err := AddQANMySQLSlowlogAgentParamsValidationError{ field: "Username", reason: "value length must be at least 1 runes", } @@ -7716,151 +7943,19 @@ func (m *AddQANMySQLSlowlogAgentRequest) validate(all bool) error { // no validation rules for LogLevel if len(errors) > 0 { - return AddQANMySQLSlowlogAgentRequestMultiError(errors) - } - - return nil -} - -// AddQANMySQLSlowlogAgentRequestMultiError is an error wrapping multiple -// validation errors returned by AddQANMySQLSlowlogAgentRequest.ValidateAll() -// if the designated constraints aren't met. -type AddQANMySQLSlowlogAgentRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m AddQANMySQLSlowlogAgentRequestMultiError) 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 AddQANMySQLSlowlogAgentRequestMultiError) AllErrors() []error { return m } - -// AddQANMySQLSlowlogAgentRequestValidationError is the validation error -// returned by AddQANMySQLSlowlogAgentRequest.Validate if the designated -// constraints aren't met. -type AddQANMySQLSlowlogAgentRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e AddQANMySQLSlowlogAgentRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e AddQANMySQLSlowlogAgentRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e AddQANMySQLSlowlogAgentRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e AddQANMySQLSlowlogAgentRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e AddQANMySQLSlowlogAgentRequestValidationError) ErrorName() string { - return "AddQANMySQLSlowlogAgentRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e AddQANMySQLSlowlogAgentRequestValidationError) 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 %sAddQANMySQLSlowlogAgentRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = AddQANMySQLSlowlogAgentRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = AddQANMySQLSlowlogAgentRequestValidationError{} - -// Validate checks the field values on AddQANMySQLSlowlogAgentResponse 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 *AddQANMySQLSlowlogAgentResponse) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on AddQANMySQLSlowlogAgentResponse 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 -// AddQANMySQLSlowlogAgentResponseMultiError, or nil if none found. -func (m *AddQANMySQLSlowlogAgentResponse) ValidateAll() error { - return m.validate(true) -} - -func (m *AddQANMySQLSlowlogAgentResponse) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - - if all { - switch v := interface{}(m.GetQanMysqlSlowlogAgent()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, AddQANMySQLSlowlogAgentResponseValidationError{ - field: "QanMysqlSlowlogAgent", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, AddQANMySQLSlowlogAgentResponseValidationError{ - 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 AddQANMySQLSlowlogAgentResponseValidationError{ - field: "QanMysqlSlowlogAgent", - reason: "embedded message failed validation", - cause: err, - } - } - } - - if len(errors) > 0 { - return AddQANMySQLSlowlogAgentResponseMultiError(errors) + return AddQANMySQLSlowlogAgentParamsMultiError(errors) } return nil } -// AddQANMySQLSlowlogAgentResponseMultiError is an error wrapping multiple -// validation errors returned by AddQANMySQLSlowlogAgentResponse.ValidateAll() +// AddQANMySQLSlowlogAgentParamsMultiError is an error wrapping multiple +// validation errors returned by AddQANMySQLSlowlogAgentParams.ValidateAll() // if the designated constraints aren't met. -type AddQANMySQLSlowlogAgentResponseMultiError []error +type AddQANMySQLSlowlogAgentParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m AddQANMySQLSlowlogAgentResponseMultiError) Error() string { +func (m AddQANMySQLSlowlogAgentParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -7869,12 +7964,12 @@ func (m AddQANMySQLSlowlogAgentResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m AddQANMySQLSlowlogAgentResponseMultiError) AllErrors() []error { return m } +func (m AddQANMySQLSlowlogAgentParamsMultiError) AllErrors() []error { return m } -// AddQANMySQLSlowlogAgentResponseValidationError is the validation error -// returned by AddQANMySQLSlowlogAgentResponse.Validate if the designated +// AddQANMySQLSlowlogAgentParamsValidationError is the validation error +// returned by AddQANMySQLSlowlogAgentParams.Validate if the designated // constraints aren't met. -type AddQANMySQLSlowlogAgentResponseValidationError struct { +type AddQANMySQLSlowlogAgentParamsValidationError struct { field string reason string cause error @@ -7882,24 +7977,24 @@ type AddQANMySQLSlowlogAgentResponseValidationError struct { } // Field function returns field value. -func (e AddQANMySQLSlowlogAgentResponseValidationError) Field() string { return e.field } +func (e AddQANMySQLSlowlogAgentParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e AddQANMySQLSlowlogAgentResponseValidationError) Reason() string { return e.reason } +func (e AddQANMySQLSlowlogAgentParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e AddQANMySQLSlowlogAgentResponseValidationError) Cause() error { return e.cause } +func (e AddQANMySQLSlowlogAgentParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e AddQANMySQLSlowlogAgentResponseValidationError) Key() bool { return e.key } +func (e AddQANMySQLSlowlogAgentParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e AddQANMySQLSlowlogAgentResponseValidationError) ErrorName() string { - return "AddQANMySQLSlowlogAgentResponseValidationError" +func (e AddQANMySQLSlowlogAgentParamsValidationError) ErrorName() string { + return "AddQANMySQLSlowlogAgentParamsValidationError" } // Error satisfies the builtin error interface -func (e AddQANMySQLSlowlogAgentResponseValidationError) Error() string { +func (e AddQANMySQLSlowlogAgentParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -7911,14 +8006,14 @@ func (e AddQANMySQLSlowlogAgentResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sAddQANMySQLSlowlogAgentResponse.%s: %s%s", + "invalid %sAddQANMySQLSlowlogAgentParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = AddQANMySQLSlowlogAgentResponseValidationError{} +var _ error = AddQANMySQLSlowlogAgentParamsValidationError{} var _ interface { Field() string @@ -7926,7 +8021,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = AddQANMySQLSlowlogAgentResponseValidationError{} +} = AddQANMySQLSlowlogAgentParamsValidationError{} // Validate checks the field values on ChangeQANMySQLSlowlogAgentRequest with // the rules defined in the proto definition for this message. If any rules @@ -8207,23 +8302,23 @@ var _ interface { ErrorName() string } = ChangeQANMySQLSlowlogAgentResponseValidationError{} -// Validate checks the field values on AddQANMongoDBProfilerAgentRequest with +// Validate checks the field values on AddQANMongoDBProfilerAgentParams 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 *AddQANMongoDBProfilerAgentRequest) Validate() error { +func (m *AddQANMongoDBProfilerAgentParams) Validate() error { return m.validate(false) } -// ValidateAll checks the field values on AddQANMongoDBProfilerAgentRequest -// 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 -// AddQANMongoDBProfilerAgentRequestMultiError, or nil if none found. -func (m *AddQANMongoDBProfilerAgentRequest) ValidateAll() error { +// ValidateAll checks the field values on AddQANMongoDBProfilerAgentParams 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 +// AddQANMongoDBProfilerAgentParamsMultiError, or nil if none found. +func (m *AddQANMongoDBProfilerAgentParams) ValidateAll() error { return m.validate(true) } -func (m *AddQANMongoDBProfilerAgentRequest) validate(all bool) error { +func (m *AddQANMongoDBProfilerAgentParams) validate(all bool) error { if m == nil { return nil } @@ -8231,7 +8326,7 @@ func (m *AddQANMongoDBProfilerAgentRequest) validate(all bool) error { var errors []error if utf8.RuneCountInString(m.GetPmmAgentId()) < 1 { - err := AddQANMongoDBProfilerAgentRequestValidationError{ + err := AddQANMongoDBProfilerAgentParamsValidationError{ field: "PmmAgentId", reason: "value length must be at least 1 runes", } @@ -8242,7 +8337,7 @@ func (m *AddQANMongoDBProfilerAgentRequest) validate(all bool) error { } if utf8.RuneCountInString(m.GetServiceId()) < 1 { - err := AddQANMongoDBProfilerAgentRequestValidationError{ + err := AddQANMongoDBProfilerAgentParamsValidationError{ field: "ServiceId", reason: "value length must be at least 1 runes", } @@ -8270,163 +8365,29 @@ func (m *AddQANMongoDBProfilerAgentRequest) validate(all bool) error { // no validation rules for CustomLabels - // no validation rules for SkipConnectionCheck - - // no validation rules for AuthenticationMechanism - - // no validation rules for AuthenticationDatabase - - // no validation rules for LogLevel - - if len(errors) > 0 { - return AddQANMongoDBProfilerAgentRequestMultiError(errors) - } - - return nil -} - -// AddQANMongoDBProfilerAgentRequestMultiError is an error wrapping multiple -// validation errors returned by -// AddQANMongoDBProfilerAgentRequest.ValidateAll() if the designated -// constraints aren't met. -type AddQANMongoDBProfilerAgentRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m AddQANMongoDBProfilerAgentRequestMultiError) 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 AddQANMongoDBProfilerAgentRequestMultiError) AllErrors() []error { return m } - -// AddQANMongoDBProfilerAgentRequestValidationError is the validation error -// returned by AddQANMongoDBProfilerAgentRequest.Validate if the designated -// constraints aren't met. -type AddQANMongoDBProfilerAgentRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e AddQANMongoDBProfilerAgentRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e AddQANMongoDBProfilerAgentRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e AddQANMongoDBProfilerAgentRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e AddQANMongoDBProfilerAgentRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e AddQANMongoDBProfilerAgentRequestValidationError) ErrorName() string { - return "AddQANMongoDBProfilerAgentRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e AddQANMongoDBProfilerAgentRequestValidationError) 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 %sAddQANMongoDBProfilerAgentRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = AddQANMongoDBProfilerAgentRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = AddQANMongoDBProfilerAgentRequestValidationError{} - -// Validate checks the field values on AddQANMongoDBProfilerAgentResponse 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 *AddQANMongoDBProfilerAgentResponse) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on AddQANMongoDBProfilerAgentResponse -// 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 -// AddQANMongoDBProfilerAgentResponseMultiError, or nil if none found. -func (m *AddQANMongoDBProfilerAgentResponse) ValidateAll() error { - return m.validate(true) -} - -func (m *AddQANMongoDBProfilerAgentResponse) validate(all bool) error { - if m == nil { - return nil - } + // no validation rules for SkipConnectionCheck - var errors []error + // no validation rules for AuthenticationMechanism - if all { - switch v := interface{}(m.GetQanMongodbProfilerAgent()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, AddQANMongoDBProfilerAgentResponseValidationError{ - field: "QanMongodbProfilerAgent", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, AddQANMongoDBProfilerAgentResponseValidationError{ - 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 AddQANMongoDBProfilerAgentResponseValidationError{ - field: "QanMongodbProfilerAgent", - reason: "embedded message failed validation", - cause: err, - } - } - } + // no validation rules for AuthenticationDatabase + + // no validation rules for LogLevel if len(errors) > 0 { - return AddQANMongoDBProfilerAgentResponseMultiError(errors) + return AddQANMongoDBProfilerAgentParamsMultiError(errors) } return nil } -// AddQANMongoDBProfilerAgentResponseMultiError is an error wrapping multiple +// AddQANMongoDBProfilerAgentParamsMultiError is an error wrapping multiple // validation errors returned by -// AddQANMongoDBProfilerAgentResponse.ValidateAll() if the designated +// AddQANMongoDBProfilerAgentParams.ValidateAll() if the designated // constraints aren't met. -type AddQANMongoDBProfilerAgentResponseMultiError []error +type AddQANMongoDBProfilerAgentParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m AddQANMongoDBProfilerAgentResponseMultiError) Error() string { +func (m AddQANMongoDBProfilerAgentParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -8435,12 +8396,12 @@ func (m AddQANMongoDBProfilerAgentResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m AddQANMongoDBProfilerAgentResponseMultiError) AllErrors() []error { return m } +func (m AddQANMongoDBProfilerAgentParamsMultiError) AllErrors() []error { return m } -// AddQANMongoDBProfilerAgentResponseValidationError is the validation error -// returned by AddQANMongoDBProfilerAgentResponse.Validate if the designated +// AddQANMongoDBProfilerAgentParamsValidationError is the validation error +// returned by AddQANMongoDBProfilerAgentParams.Validate if the designated // constraints aren't met. -type AddQANMongoDBProfilerAgentResponseValidationError struct { +type AddQANMongoDBProfilerAgentParamsValidationError struct { field string reason string cause error @@ -8448,24 +8409,24 @@ type AddQANMongoDBProfilerAgentResponseValidationError struct { } // Field function returns field value. -func (e AddQANMongoDBProfilerAgentResponseValidationError) Field() string { return e.field } +func (e AddQANMongoDBProfilerAgentParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e AddQANMongoDBProfilerAgentResponseValidationError) Reason() string { return e.reason } +func (e AddQANMongoDBProfilerAgentParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e AddQANMongoDBProfilerAgentResponseValidationError) Cause() error { return e.cause } +func (e AddQANMongoDBProfilerAgentParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e AddQANMongoDBProfilerAgentResponseValidationError) Key() bool { return e.key } +func (e AddQANMongoDBProfilerAgentParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e AddQANMongoDBProfilerAgentResponseValidationError) ErrorName() string { - return "AddQANMongoDBProfilerAgentResponseValidationError" +func (e AddQANMongoDBProfilerAgentParamsValidationError) ErrorName() string { + return "AddQANMongoDBProfilerAgentParamsValidationError" } // Error satisfies the builtin error interface -func (e AddQANMongoDBProfilerAgentResponseValidationError) Error() string { +func (e AddQANMongoDBProfilerAgentParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -8477,14 +8438,14 @@ func (e AddQANMongoDBProfilerAgentResponseValidationError) Error() string { } return fmt.Sprintf( - "invalid %sAddQANMongoDBProfilerAgentResponse.%s: %s%s", + "invalid %sAddQANMongoDBProfilerAgentParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = AddQANMongoDBProfilerAgentResponseValidationError{} +var _ error = AddQANMongoDBProfilerAgentParamsValidationError{} var _ interface { Field() string @@ -8492,7 +8453,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = AddQANMongoDBProfilerAgentResponseValidationError{} +} = AddQANMongoDBProfilerAgentParamsValidationError{} // Validate checks the field values on ChangeQANMongoDBProfilerAgentRequest // with the rules defined in the proto definition for this message. If any @@ -8773,24 +8734,24 @@ var _ interface { ErrorName() string } = ChangeQANMongoDBProfilerAgentResponseValidationError{} -// Validate checks the field values on AddQANPostgreSQLPgStatementsAgentRequest +// Validate checks the field values on AddQANPostgreSQLPgStatementsAgentParams // 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 *AddQANPostgreSQLPgStatementsAgentRequest) Validate() error { +func (m *AddQANPostgreSQLPgStatementsAgentParams) Validate() error { return m.validate(false) } // ValidateAll checks the field values on -// AddQANPostgreSQLPgStatementsAgentRequest 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 -// AddQANPostgreSQLPgStatementsAgentRequestMultiError, or nil if none found. -func (m *AddQANPostgreSQLPgStatementsAgentRequest) ValidateAll() error { +// AddQANPostgreSQLPgStatementsAgentParams 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 +// AddQANPostgreSQLPgStatementsAgentParamsMultiError, or nil if none found. +func (m *AddQANPostgreSQLPgStatementsAgentParams) ValidateAll() error { return m.validate(true) } -func (m *AddQANPostgreSQLPgStatementsAgentRequest) validate(all bool) error { +func (m *AddQANPostgreSQLPgStatementsAgentParams) validate(all bool) error { if m == nil { return nil } @@ -8798,7 +8759,7 @@ func (m *AddQANPostgreSQLPgStatementsAgentRequest) validate(all bool) error { var errors []error if utf8.RuneCountInString(m.GetPmmAgentId()) < 1 { - err := AddQANPostgreSQLPgStatementsAgentRequestValidationError{ + err := AddQANPostgreSQLPgStatementsAgentParamsValidationError{ field: "PmmAgentId", reason: "value length must be at least 1 runes", } @@ -8809,7 +8770,7 @@ func (m *AddQANPostgreSQLPgStatementsAgentRequest) validate(all bool) error { } if utf8.RuneCountInString(m.GetServiceId()) < 1 { - err := AddQANPostgreSQLPgStatementsAgentRequestValidationError{ + err := AddQANPostgreSQLPgStatementsAgentParamsValidationError{ field: "ServiceId", reason: "value length must be at least 1 runes", } @@ -8820,7 +8781,7 @@ func (m *AddQANPostgreSQLPgStatementsAgentRequest) validate(all bool) error { } if utf8.RuneCountInString(m.GetUsername()) < 1 { - err := AddQANPostgreSQLPgStatementsAgentRequestValidationError{ + err := AddQANPostgreSQLPgStatementsAgentParamsValidationError{ field: "Username", reason: "value length must be at least 1 runes", } @@ -8853,155 +8814,20 @@ func (m *AddQANPostgreSQLPgStatementsAgentRequest) validate(all bool) error { // no validation rules for LogLevel if len(errors) > 0 { - return AddQANPostgreSQLPgStatementsAgentRequestMultiError(errors) - } - - return nil -} - -// AddQANPostgreSQLPgStatementsAgentRequestMultiError is an error wrapping -// multiple validation errors returned by -// AddQANPostgreSQLPgStatementsAgentRequest.ValidateAll() if the designated -// constraints aren't met. -type AddQANPostgreSQLPgStatementsAgentRequestMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m AddQANPostgreSQLPgStatementsAgentRequestMultiError) 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 AddQANPostgreSQLPgStatementsAgentRequestMultiError) AllErrors() []error { return m } - -// AddQANPostgreSQLPgStatementsAgentRequestValidationError is the validation -// error returned by AddQANPostgreSQLPgStatementsAgentRequest.Validate if the -// designated constraints aren't met. -type AddQANPostgreSQLPgStatementsAgentRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e AddQANPostgreSQLPgStatementsAgentRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e AddQANPostgreSQLPgStatementsAgentRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e AddQANPostgreSQLPgStatementsAgentRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e AddQANPostgreSQLPgStatementsAgentRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e AddQANPostgreSQLPgStatementsAgentRequestValidationError) ErrorName() string { - return "AddQANPostgreSQLPgStatementsAgentRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e AddQANPostgreSQLPgStatementsAgentRequestValidationError) 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 %sAddQANPostgreSQLPgStatementsAgentRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = AddQANPostgreSQLPgStatementsAgentRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = AddQANPostgreSQLPgStatementsAgentRequestValidationError{} - -// Validate checks the field values on -// AddQANPostgreSQLPgStatementsAgentResponse 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 *AddQANPostgreSQLPgStatementsAgentResponse) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on -// AddQANPostgreSQLPgStatementsAgentResponse 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 -// AddQANPostgreSQLPgStatementsAgentResponseMultiError, or nil if none found. -func (m *AddQANPostgreSQLPgStatementsAgentResponse) ValidateAll() error { - return m.validate(true) -} - -func (m *AddQANPostgreSQLPgStatementsAgentResponse) validate(all bool) error { - if m == nil { - return nil - } - - var errors []error - - if all { - switch v := interface{}(m.GetQanPostgresqlPgstatementsAgent()).(type) { - case interface{ ValidateAll() error }: - if err := v.ValidateAll(); err != nil { - errors = append(errors, AddQANPostgreSQLPgStatementsAgentResponseValidationError{ - field: "QanPostgresqlPgstatementsAgent", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, AddQANPostgreSQLPgStatementsAgentResponseValidationError{ - 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 AddQANPostgreSQLPgStatementsAgentResponseValidationError{ - field: "QanPostgresqlPgstatementsAgent", - reason: "embedded message failed validation", - cause: err, - } - } - } - - if len(errors) > 0 { - return AddQANPostgreSQLPgStatementsAgentResponseMultiError(errors) + return AddQANPostgreSQLPgStatementsAgentParamsMultiError(errors) } return nil } -// AddQANPostgreSQLPgStatementsAgentResponseMultiError is an error wrapping +// AddQANPostgreSQLPgStatementsAgentParamsMultiError is an error wrapping // multiple validation errors returned by -// AddQANPostgreSQLPgStatementsAgentResponse.ValidateAll() if the designated +// AddQANPostgreSQLPgStatementsAgentParams.ValidateAll() if the designated // constraints aren't met. -type AddQANPostgreSQLPgStatementsAgentResponseMultiError []error +type AddQANPostgreSQLPgStatementsAgentParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m AddQANPostgreSQLPgStatementsAgentResponseMultiError) Error() string { +func (m AddQANPostgreSQLPgStatementsAgentParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -9010,12 +8836,12 @@ func (m AddQANPostgreSQLPgStatementsAgentResponseMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m AddQANPostgreSQLPgStatementsAgentResponseMultiError) AllErrors() []error { return m } +func (m AddQANPostgreSQLPgStatementsAgentParamsMultiError) AllErrors() []error { return m } -// AddQANPostgreSQLPgStatementsAgentResponseValidationError is the validation -// error returned by AddQANPostgreSQLPgStatementsAgentResponse.Validate if the +// AddQANPostgreSQLPgStatementsAgentParamsValidationError is the validation +// error returned by AddQANPostgreSQLPgStatementsAgentParams.Validate if the // designated constraints aren't met. -type AddQANPostgreSQLPgStatementsAgentResponseValidationError struct { +type AddQANPostgreSQLPgStatementsAgentParamsValidationError struct { field string reason string cause error @@ -9023,24 +8849,24 @@ type AddQANPostgreSQLPgStatementsAgentResponseValidationError struct { } // Field function returns field value. -func (e AddQANPostgreSQLPgStatementsAgentResponseValidationError) Field() string { return e.field } +func (e AddQANPostgreSQLPgStatementsAgentParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e AddQANPostgreSQLPgStatementsAgentResponseValidationError) Reason() string { return e.reason } +func (e AddQANPostgreSQLPgStatementsAgentParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e AddQANPostgreSQLPgStatementsAgentResponseValidationError) Cause() error { return e.cause } +func (e AddQANPostgreSQLPgStatementsAgentParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e AddQANPostgreSQLPgStatementsAgentResponseValidationError) Key() bool { return e.key } +func (e AddQANPostgreSQLPgStatementsAgentParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e AddQANPostgreSQLPgStatementsAgentResponseValidationError) ErrorName() string { - return "AddQANPostgreSQLPgStatementsAgentResponseValidationError" +func (e AddQANPostgreSQLPgStatementsAgentParamsValidationError) ErrorName() string { + return "AddQANPostgreSQLPgStatementsAgentParamsValidationError" } // Error satisfies the builtin error interface -func (e AddQANPostgreSQLPgStatementsAgentResponseValidationError) Error() string { +func (e AddQANPostgreSQLPgStatementsAgentParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -9052,14 +8878,14 @@ func (e AddQANPostgreSQLPgStatementsAgentResponseValidationError) Error() string } return fmt.Sprintf( - "invalid %sAddQANPostgreSQLPgStatementsAgentResponse.%s: %s%s", + "invalid %sAddQANPostgreSQLPgStatementsAgentParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = AddQANPostgreSQLPgStatementsAgentResponseValidationError{} +var _ error = AddQANPostgreSQLPgStatementsAgentParamsValidationError{} var _ interface { Field() string @@ -9067,7 +8893,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = AddQANPostgreSQLPgStatementsAgentResponseValidationError{} +} = AddQANPostgreSQLPgStatementsAgentParamsValidationError{} // Validate checks the field values on // ChangeQANPostgreSQLPgStatementsAgentRequest with the rules defined in the @@ -9351,24 +9177,24 @@ var _ interface { ErrorName() string } = ChangeQANPostgreSQLPgStatementsAgentResponseValidationError{} -// Validate checks the field values on -// AddQANPostgreSQLPgStatMonitorAgentRequest 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 *AddQANPostgreSQLPgStatMonitorAgentRequest) Validate() error { +// Validate checks the field values on AddQANPostgreSQLPgStatMonitorAgentParams +// 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 *AddQANPostgreSQLPgStatMonitorAgentParams) Validate() error { return m.validate(false) } // ValidateAll checks the field values on -// AddQANPostgreSQLPgStatMonitorAgentRequest with the rules defined in the +// AddQANPostgreSQLPgStatMonitorAgentParams 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 -// AddQANPostgreSQLPgStatMonitorAgentRequestMultiError, or nil if none found. -func (m *AddQANPostgreSQLPgStatMonitorAgentRequest) ValidateAll() error { +// AddQANPostgreSQLPgStatMonitorAgentParamsMultiError, or nil if none found. +func (m *AddQANPostgreSQLPgStatMonitorAgentParams) ValidateAll() error { return m.validate(true) } -func (m *AddQANPostgreSQLPgStatMonitorAgentRequest) validate(all bool) error { +func (m *AddQANPostgreSQLPgStatMonitorAgentParams) validate(all bool) error { if m == nil { return nil } @@ -9376,7 +9202,7 @@ func (m *AddQANPostgreSQLPgStatMonitorAgentRequest) validate(all bool) error { var errors []error if utf8.RuneCountInString(m.GetPmmAgentId()) < 1 { - err := AddQANPostgreSQLPgStatMonitorAgentRequestValidationError{ + err := AddQANPostgreSQLPgStatMonitorAgentParamsValidationError{ field: "PmmAgentId", reason: "value length must be at least 1 runes", } @@ -9387,7 +9213,7 @@ func (m *AddQANPostgreSQLPgStatMonitorAgentRequest) validate(all bool) error { } if utf8.RuneCountInString(m.GetServiceId()) < 1 { - err := AddQANPostgreSQLPgStatMonitorAgentRequestValidationError{ + err := AddQANPostgreSQLPgStatMonitorAgentParamsValidationError{ field: "ServiceId", reason: "value length must be at least 1 runes", } @@ -9398,7 +9224,7 @@ func (m *AddQANPostgreSQLPgStatMonitorAgentRequest) validate(all bool) error { } if utf8.RuneCountInString(m.GetUsername()) < 1 { - err := AddQANPostgreSQLPgStatMonitorAgentRequestValidationError{ + err := AddQANPostgreSQLPgStatMonitorAgentParamsValidationError{ field: "Username", reason: "value length must be at least 1 runes", } @@ -9433,20 +9259,20 @@ func (m *AddQANPostgreSQLPgStatMonitorAgentRequest) validate(all bool) error { // no validation rules for LogLevel if len(errors) > 0 { - return AddQANPostgreSQLPgStatMonitorAgentRequestMultiError(errors) + return AddQANPostgreSQLPgStatMonitorAgentParamsMultiError(errors) } return nil } -// AddQANPostgreSQLPgStatMonitorAgentRequestMultiError is an error wrapping +// AddQANPostgreSQLPgStatMonitorAgentParamsMultiError is an error wrapping // multiple validation errors returned by -// AddQANPostgreSQLPgStatMonitorAgentRequest.ValidateAll() if the designated +// AddQANPostgreSQLPgStatMonitorAgentParams.ValidateAll() if the designated // constraints aren't met. -type AddQANPostgreSQLPgStatMonitorAgentRequestMultiError []error +type AddQANPostgreSQLPgStatMonitorAgentParamsMultiError []error // Error returns a concatenation of all the error messages it wraps. -func (m AddQANPostgreSQLPgStatMonitorAgentRequestMultiError) Error() string { +func (m AddQANPostgreSQLPgStatMonitorAgentParamsMultiError) Error() string { var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) @@ -9455,147 +9281,12 @@ func (m AddQANPostgreSQLPgStatMonitorAgentRequestMultiError) Error() string { } // AllErrors returns a list of validation violation errors. -func (m AddQANPostgreSQLPgStatMonitorAgentRequestMultiError) AllErrors() []error { return m } +func (m AddQANPostgreSQLPgStatMonitorAgentParamsMultiError) AllErrors() []error { return m } -// AddQANPostgreSQLPgStatMonitorAgentRequestValidationError is the validation -// error returned by AddQANPostgreSQLPgStatMonitorAgentRequest.Validate if the +// AddQANPostgreSQLPgStatMonitorAgentParamsValidationError is the validation +// error returned by AddQANPostgreSQLPgStatMonitorAgentParams.Validate if the // designated constraints aren't met. -type AddQANPostgreSQLPgStatMonitorAgentRequestValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e AddQANPostgreSQLPgStatMonitorAgentRequestValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e AddQANPostgreSQLPgStatMonitorAgentRequestValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e AddQANPostgreSQLPgStatMonitorAgentRequestValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e AddQANPostgreSQLPgStatMonitorAgentRequestValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e AddQANPostgreSQLPgStatMonitorAgentRequestValidationError) ErrorName() string { - return "AddQANPostgreSQLPgStatMonitorAgentRequestValidationError" -} - -// Error satisfies the builtin error interface -func (e AddQANPostgreSQLPgStatMonitorAgentRequestValidationError) 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 %sAddQANPostgreSQLPgStatMonitorAgentRequest.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = AddQANPostgreSQLPgStatMonitorAgentRequestValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = AddQANPostgreSQLPgStatMonitorAgentRequestValidationError{} - -// Validate checks the field values on -// AddQANPostgreSQLPgStatMonitorAgentResponse 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 *AddQANPostgreSQLPgStatMonitorAgentResponse) Validate() error { - return m.validate(false) -} - -// ValidateAll checks the field values on -// AddQANPostgreSQLPgStatMonitorAgentResponse 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 -// AddQANPostgreSQLPgStatMonitorAgentResponseMultiError, or nil if none found. -func (m *AddQANPostgreSQLPgStatMonitorAgentResponse) ValidateAll() error { - return m.validate(true) -} - -func (m *AddQANPostgreSQLPgStatMonitorAgentResponse) 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, AddQANPostgreSQLPgStatMonitorAgentResponseValidationError{ - field: "QanPostgresqlPgstatmonitorAgent", - reason: "embedded message failed validation", - cause: err, - }) - } - case interface{ Validate() error }: - if err := v.Validate(); err != nil { - errors = append(errors, AddQANPostgreSQLPgStatMonitorAgentResponseValidationError{ - 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 AddQANPostgreSQLPgStatMonitorAgentResponseValidationError{ - field: "QanPostgresqlPgstatmonitorAgent", - reason: "embedded message failed validation", - cause: err, - } - } - } - - if len(errors) > 0 { - return AddQANPostgreSQLPgStatMonitorAgentResponseMultiError(errors) - } - - return nil -} - -// AddQANPostgreSQLPgStatMonitorAgentResponseMultiError is an error wrapping -// multiple validation errors returned by -// AddQANPostgreSQLPgStatMonitorAgentResponse.ValidateAll() if the designated -// constraints aren't met. -type AddQANPostgreSQLPgStatMonitorAgentResponseMultiError []error - -// Error returns a concatenation of all the error messages it wraps. -func (m AddQANPostgreSQLPgStatMonitorAgentResponseMultiError) 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 AddQANPostgreSQLPgStatMonitorAgentResponseMultiError) AllErrors() []error { return m } - -// AddQANPostgreSQLPgStatMonitorAgentResponseValidationError is the validation -// error returned by AddQANPostgreSQLPgStatMonitorAgentResponse.Validate if -// the designated constraints aren't met. -type AddQANPostgreSQLPgStatMonitorAgentResponseValidationError struct { +type AddQANPostgreSQLPgStatMonitorAgentParamsValidationError struct { field string reason string cause error @@ -9603,24 +9294,24 @@ type AddQANPostgreSQLPgStatMonitorAgentResponseValidationError struct { } // Field function returns field value. -func (e AddQANPostgreSQLPgStatMonitorAgentResponseValidationError) Field() string { return e.field } +func (e AddQANPostgreSQLPgStatMonitorAgentParamsValidationError) Field() string { return e.field } // Reason function returns reason value. -func (e AddQANPostgreSQLPgStatMonitorAgentResponseValidationError) Reason() string { return e.reason } +func (e AddQANPostgreSQLPgStatMonitorAgentParamsValidationError) Reason() string { return e.reason } // Cause function returns cause value. -func (e AddQANPostgreSQLPgStatMonitorAgentResponseValidationError) Cause() error { return e.cause } +func (e AddQANPostgreSQLPgStatMonitorAgentParamsValidationError) Cause() error { return e.cause } // Key function returns key value. -func (e AddQANPostgreSQLPgStatMonitorAgentResponseValidationError) Key() bool { return e.key } +func (e AddQANPostgreSQLPgStatMonitorAgentParamsValidationError) Key() bool { return e.key } // ErrorName returns error name. -func (e AddQANPostgreSQLPgStatMonitorAgentResponseValidationError) ErrorName() string { - return "AddQANPostgreSQLPgStatMonitorAgentResponseValidationError" +func (e AddQANPostgreSQLPgStatMonitorAgentParamsValidationError) ErrorName() string { + return "AddQANPostgreSQLPgStatMonitorAgentParamsValidationError" } // Error satisfies the builtin error interface -func (e AddQANPostgreSQLPgStatMonitorAgentResponseValidationError) Error() string { +func (e AddQANPostgreSQLPgStatMonitorAgentParamsValidationError) Error() string { cause := "" if e.cause != nil { cause = fmt.Sprintf(" | caused by: %v", e.cause) @@ -9632,14 +9323,14 @@ func (e AddQANPostgreSQLPgStatMonitorAgentResponseValidationError) Error() strin } return fmt.Sprintf( - "invalid %sAddQANPostgreSQLPgStatMonitorAgentResponse.%s: %s%s", + "invalid %sAddQANPostgreSQLPgStatMonitorAgentParams.%s: %s%s", key, e.field, e.reason, cause) } -var _ error = AddQANPostgreSQLPgStatMonitorAgentResponseValidationError{} +var _ error = AddQANPostgreSQLPgStatMonitorAgentParamsValidationError{} var _ interface { Field() string @@ -9647,7 +9338,7 @@ var _ interface { Key() bool Cause() error ErrorName() string -} = AddQANPostgreSQLPgStatMonitorAgentResponseValidationError{} +} = AddQANPostgreSQLPgStatMonitorAgentParamsValidationError{} // Validate checks the field values on // ChangeQANPostgreSQLPgStatMonitorAgentRequest with the rules defined in the diff --git a/api/inventory/v1/agents.proto b/api/inventory/v1/agents.proto index 7d7ac79314..00a0c86f03 100644 --- a/api/inventory/v1/agents.proto +++ b/api/inventory/v1/agents.proto @@ -649,17 +649,13 @@ message GetAgentLogsResponse { // Add PMMAgent -message AddPMMAgentRequest { +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; } -message AddPMMAgentResponse { - PMMAgent pmm_agent = 1; -} - // TODO Change PMMAgent? // TODO Add VMAgent? @@ -670,32 +666,51 @@ message AddPMMAgentResponse { message AddAgentRequest { oneof exporter { - AddNodeExporterParams node_exporter = 1; - AddMySQLdExporterParams mysqld_exporter = 2; - AddMongoDBExporterParams mongodb_exporter = 3; - AddPostgresExporterParams postgres_exporter = 4; - AddProxySQLExporterParams proxysql_exporter = 5; - AddExternalExporterParams external_exporter = 6; - AddRDSExporterParams rds_exporter = 7; - AddAzureDatabaseExporterParams azure_database_exporter = 8; + AddPMMAgentParams pmm_agent = 1; + AddNodeExporterParams node_exporter = 2; + AddMySQLdExporterParams mysqld_exporter = 3; + AddMongoDBExporterParams mongodb_exporter = 4; + AddPostgresExporterParams postgres_exporter = 5; + AddProxySQLExporterParams proxysql_exporter = 6; + AddExternalExporterParams external_exporter = 7; + AddRDSExporterParams rds_exporter = 8; + AddAzureDatabaseExporterParams azure_database_exporter = 9; + AddQANMySQLPerfSchemaAgentParams qan_mysql_perfschema_agent = 10; + AddQANMySQLSlowlogAgentParams qan_mysql_slowlog_agent = 11; + AddQANMongoDBProfilerAgentParams qan_mongodb_profiler_agent = 12; + AddQANPostgreSQLPgStatementsAgentParams qan_postgresql_pgstatements_agent = 13; + AddQANPostgreSQLPgStatMonitorAgentParams qan_postgresql_pgstatmonitor_agent = 14; } } message AddAgentResponse { oneof exporter { - NodeExporter node_exporter = 1; - MySQLdExporter mysqld_exporter = 2; - MongoDBExporter mongodb_exporter = 3; - PostgresExporter postgres_exporter = 4; - ProxySQLExporter proxysql_exporter = 5; - ExternalExporter external_exporter = 6; - RDSExporter rds_exporter = 7; - AzureDatabaseExporter azure_database_exporter = 8; + 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; } // Actual table count for SQL databases at the moment of adding. - int32 table_count = 9; + int32 table_count = 15; } +// TODO: remove AddPMMAgent(AddPMMAgentRequest) returns (AddPMMAgentResponse) { +// TODO: remove AddQANMySQLPerfSchemaAgent(AddQANMySQLPerfSchemaAgentRequest) returns (AddQANMySQLPerfSchemaAgentResponse) { +// TODO: remove AddQANMongoDBProfilerAgent(AddQANMongoDBProfilerAgentRequest) returns (AddQANMongoDBProfilerAgentResponse) { +// TODO: remove AddQANPostgreSQLPgStatementsAgent(AddQANPostgreSQLPgStatementsAgentRequest) returns (AddQANPostgreSQLPgStatementsAgentResponse) { +// TODO: remove AddQANMySQLSlowlogAgent(AddQANMySQLSlowlogAgentRequest) returns (AddQANMySQLSlowlogAgentResponse) { +// TODO: remove AddQANPostgreSQLPgStatMonitorAgent(AddQANPostgreSQLPgStatMonitorAgentRequest) returns (AddQANPostgreSQLPgStatMonitorAgentResponse) { + message AddNodeExporterParams { // The pmm-agent identifier which runs this instance. string pmm_agent_id = 1 [(validate.rules).string.min_len = 1]; @@ -917,7 +932,7 @@ message ChangeProxySQLExporterResponse { // Add/Change QANMySQLPerfSchemaAgent -message AddQANMySQLPerfSchemaAgentRequest { +message AddQANMySQLPerfSchemaAgentParams { // The pmm-agent identifier which runs this instance. string pmm_agent_id = 1 [(validate.rules).string.min_len = 1]; // Service identifier. @@ -950,10 +965,6 @@ message AddQANMySQLPerfSchemaAgentRequest { LogLevel log_level = 13; } -message AddQANMySQLPerfSchemaAgentResponse { - QANMySQLPerfSchemaAgent qan_mysql_perfschema_agent = 1; -} - message ChangeQANMySQLPerfSchemaAgentRequest { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; @@ -965,7 +976,7 @@ message ChangeQANMySQLPerfSchemaAgentResponse { // Add/Change QANMySQLSlowlogAgent -message AddQANMySQLSlowlogAgentRequest { +message AddQANMySQLSlowlogAgentParams { // The pmm-agent identifier which runs this instance. string pmm_agent_id = 1 [(validate.rules).string.min_len = 1]; // Service identifier. @@ -1001,10 +1012,6 @@ message AddQANMySQLSlowlogAgentRequest { LogLevel log_level = 14; } -message AddQANMySQLSlowlogAgentResponse { - QANMySQLSlowlogAgent qan_mysql_slowlog_agent = 1; -} - message ChangeQANMySQLSlowlogAgentRequest { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; @@ -1016,7 +1023,7 @@ message ChangeQANMySQLSlowlogAgentResponse { // Add/Change QANMongoDBProfilerAgent -message AddQANMongoDBProfilerAgentRequest { +message AddQANMongoDBProfilerAgentParams { // The pmm-agent identifier which runs this instance. string pmm_agent_id = 1 [(validate.rules).string.min_len = 1]; // Service identifier. @@ -1051,10 +1058,6 @@ message AddQANMongoDBProfilerAgentRequest { LogLevel log_level = 14; } -message AddQANMongoDBProfilerAgentResponse { - QANMongoDBProfilerAgent qan_mongodb_profiler_agent = 1; -} - message ChangeQANMongoDBProfilerAgentRequest { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; @@ -1066,7 +1069,7 @@ message ChangeQANMongoDBProfilerAgentResponse { // Add/Change QANPostgreSQLPgStatementsAgent -message AddQANPostgreSQLPgStatementsAgentRequest { +message AddQANPostgreSQLPgStatementsAgentParams { // The pmm-agent identifier which runs this instance. string pmm_agent_id = 1 [(validate.rules).string.min_len = 1]; // Service identifier. @@ -1097,10 +1100,6 @@ message AddQANPostgreSQLPgStatementsAgentRequest { LogLevel log_level = 12; } -message AddQANPostgreSQLPgStatementsAgentResponse { - QANPostgreSQLPgStatementsAgent qan_postgresql_pgstatements_agent = 1; -} - message ChangeQANPostgreSQLPgStatementsAgentRequest { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; @@ -1112,7 +1111,7 @@ message ChangeQANPostgreSQLPgStatementsAgentResponse { // Add/Change QANPostgreSQLPgStatMonitorAgent -message AddQANPostgreSQLPgStatMonitorAgentRequest { +message AddQANPostgreSQLPgStatMonitorAgentParams { // The pmm-agent identifier which runs this instance. string pmm_agent_id = 1 [(validate.rules).string.min_len = 1]; // Service identifier. @@ -1145,10 +1144,6 @@ message AddQANPostgreSQLPgStatMonitorAgentRequest { LogLevel log_level = 13; } -message AddQANPostgreSQLPgStatMonitorAgentResponse { - QANPostgreSQLPgStatMonitorAgent qan_postgresql_pgstatmonitor_agent = 1; -} - message ChangeQANPostgreSQLPgStatMonitorAgentRequest { string agent_id = 1 [(validate.rules).string.min_len = 1]; ChangeCommonAgentParams common = 2; @@ -1310,17 +1305,7 @@ service AgentsService { description: "Returns Agent logs by ID." }; } - // AddPMMAgent adds pmm-agent Agent. - rpc AddPMMAgent(AddPMMAgentRequest) returns (AddPMMAgentResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/AddPMMAgent" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Add PMM Agent" - description: "Adds PMM Agent." - }; - } + // AddAgent adds any type of Agent. rpc AddAgent(AddAgentRequest) returns (AddAgentResponse) { option (google.api.http) = { @@ -1387,17 +1372,6 @@ service AgentsService { description: "Changes proxysql_exporter Agent." }; } - // AddQANMySQLPerfSchemaAgent adds QAN MySQL PerfSchema Agent. - rpc AddQANMySQLPerfSchemaAgent(AddQANMySQLPerfSchemaAgentRequest) returns (AddQANMySQLPerfSchemaAgentResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/AddQANMySQLPerfSchemaAgent" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Add 'QAN MySQL PerfSchema' Agent" - description: "Adds 'Query Analytics MySQL PerfSchema' Agent." - }; - } // ChangeQANMySQLPerfSchemaAgent changes QAN MySQL PerfSchema Agent. rpc ChangeQANMySQLPerfSchemaAgent(ChangeQANMySQLPerfSchemaAgentRequest) returns (ChangeQANMySQLPerfSchemaAgentResponse) { option (google.api.http) = { @@ -1409,17 +1383,6 @@ service AgentsService { description: "Changes 'Query Analytics MySQL PerfSchema' Agent." }; } - // AddQANMySQLSlowlogAgent adds QAN MySQL Slowlog Agent. - rpc AddQANMySQLSlowlogAgent(AddQANMySQLSlowlogAgentRequest) returns (AddQANMySQLSlowlogAgentResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/AddQANMySQLSlowlogAgent" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Add 'QAN MySQL Slowlog' Agent" - description: "Adds 'Query Analytics MySQL Slowlog' Agent." - }; - } // ChangeQANMySQLSlowlogAgent changes QAN MySQL Slowlog Agent. rpc ChangeQANMySQLSlowlogAgent(ChangeQANMySQLSlowlogAgentRequest) returns (ChangeQANMySQLSlowlogAgentResponse) { option (google.api.http) = { @@ -1431,17 +1394,6 @@ service AgentsService { description: "Changes 'Query Analytics MySQL Slowlog' Agent." }; } - // AddQANMongoDBProfilerAgent adds QAN MongoDB Profiler Agent. - rpc AddQANMongoDBProfilerAgent(AddQANMongoDBProfilerAgentRequest) returns (AddQANMongoDBProfilerAgentResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/AddQANMongoDBProfilerAgent" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Add 'QAN MongoDB Profiler' Agent" - description: "Adds 'Query Analytics MongoDB Profiler' Agent." - }; - } // ChangeQANMongoDBProfilerAgent changes QAN MongoDB Profiler Agent. rpc ChangeQANMongoDBProfilerAgent(ChangeQANMongoDBProfilerAgentRequest) returns (ChangeQANMongoDBProfilerAgentResponse) { option (google.api.http) = { @@ -1453,17 +1405,6 @@ service AgentsService { description: "Changes 'Query Analytics MongoDB Profiler' Agent." }; } - // AddQANPostgreSQLPgStatementsAgent adds QAN PostgreSQL PgStat Statements Agent. - rpc AddQANPostgreSQLPgStatementsAgent(AddQANPostgreSQLPgStatementsAgentRequest) returns (AddQANPostgreSQLPgStatementsAgentResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/AddQANPostgreSQLPgStatementsAgent" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Add 'QAN PostgreSQL pg_stat_statements' Agent" - description: "Adds 'Query Analytics PostgreSQL pg_stat_statements' Agent." - }; - } // ChangeQANPostgreSQLPgStatementsAgent changes QAN PostgreSQL PgStat Statements Agent. rpc ChangeQANPostgreSQLPgStatementsAgent(ChangeQANPostgreSQLPgStatementsAgentRequest) returns (ChangeQANPostgreSQLPgStatementsAgentResponse) { option (google.api.http) = { @@ -1475,17 +1416,6 @@ service AgentsService { description: "Changes 'Query Analytics PostgreSQL pg_stat_statements' Agent." }; } - // AddQANPostgreSQLPgStatMonitorAgent adds QAN PostgreSQL PgStat Monitor Agent. - rpc AddQANPostgreSQLPgStatMonitorAgent(AddQANPostgreSQLPgStatMonitorAgentRequest) returns (AddQANPostgreSQLPgStatMonitorAgentResponse) { - option (google.api.http) = { - post: "/v1/inventory/Agents/AddQANPostgreSQLPgStatMonitorAgent" - body: "*" - }; - option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Add 'QAN PostgreSQL pg_stat_monitor' Agent" - description: "Adds 'Query Analytics PostgreSQL pg_stat_monitor' Agent." - }; - } // ChangeQANPostgreSQLPgStatMonitorAgent changes QAN PostgreSQL PgStat Monitor Agent. rpc ChangeQANPostgreSQLPgStatMonitorAgent(ChangeQANPostgreSQLPgStatMonitorAgentRequest) returns (ChangeQANPostgreSQLPgStatMonitorAgentResponse) { option (google.api.http) = { diff --git a/api/inventory/v1/agents_grpc.pb.go b/api/inventory/v1/agents_grpc.pb.go index 0cba0616ed..9134da2fdb 100644 --- a/api/inventory/v1/agents_grpc.pb.go +++ b/api/inventory/v1/agents_grpc.pb.go @@ -23,22 +23,16 @@ const ( AgentsService_ListAgents_FullMethodName = "/inventory.v1.AgentsService/ListAgents" AgentsService_GetAgent_FullMethodName = "/inventory.v1.AgentsService/GetAgent" AgentsService_GetAgentLogs_FullMethodName = "/inventory.v1.AgentsService/GetAgentLogs" - AgentsService_AddPMMAgent_FullMethodName = "/inventory.v1.AgentsService/AddPMMAgent" 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_AddQANMySQLPerfSchemaAgent_FullMethodName = "/inventory.v1.AgentsService/AddQANMySQLPerfSchemaAgent" AgentsService_ChangeQANMySQLPerfSchemaAgent_FullMethodName = "/inventory.v1.AgentsService/ChangeQANMySQLPerfSchemaAgent" - AgentsService_AddQANMySQLSlowlogAgent_FullMethodName = "/inventory.v1.AgentsService/AddQANMySQLSlowlogAgent" AgentsService_ChangeQANMySQLSlowlogAgent_FullMethodName = "/inventory.v1.AgentsService/ChangeQANMySQLSlowlogAgent" - AgentsService_AddQANMongoDBProfilerAgent_FullMethodName = "/inventory.v1.AgentsService/AddQANMongoDBProfilerAgent" AgentsService_ChangeQANMongoDBProfilerAgent_FullMethodName = "/inventory.v1.AgentsService/ChangeQANMongoDBProfilerAgent" - AgentsService_AddQANPostgreSQLPgStatementsAgent_FullMethodName = "/inventory.v1.AgentsService/AddQANPostgreSQLPgStatementsAgent" AgentsService_ChangeQANPostgreSQLPgStatementsAgent_FullMethodName = "/inventory.v1.AgentsService/ChangeQANPostgreSQLPgStatementsAgent" - AgentsService_AddQANPostgreSQLPgStatMonitorAgent_FullMethodName = "/inventory.v1.AgentsService/AddQANPostgreSQLPgStatMonitorAgent" AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_FullMethodName = "/inventory.v1.AgentsService/ChangeQANPostgreSQLPgStatMonitorAgent" AgentsService_ChangeRDSExporter_FullMethodName = "/inventory.v1.AgentsService/ChangeRDSExporter" AgentsService_ChangeExternalExporter_FullMethodName = "/inventory.v1.AgentsService/ChangeExternalExporter" @@ -56,8 +50,6 @@ type AgentsServiceClient interface { GetAgent(ctx context.Context, in *GetAgentRequest, opts ...grpc.CallOption) (*GetAgentResponse, error) // GetAgentLogs returns Agent logs by ID. GetAgentLogs(ctx context.Context, in *GetAgentLogsRequest, opts ...grpc.CallOption) (*GetAgentLogsResponse, error) - // AddPMMAgent adds pmm-agent Agent. - AddPMMAgent(ctx context.Context, in *AddPMMAgentRequest, opts ...grpc.CallOption) (*AddPMMAgentResponse, error) // AddAgent adds any type of Agent. AddAgent(ctx context.Context, in *AddAgentRequest, opts ...grpc.CallOption) (*AddAgentResponse, error) // ChangeNodeExporter changes node_exporter Agent. @@ -70,24 +62,14 @@ type AgentsServiceClient interface { 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) - // AddQANMySQLPerfSchemaAgent adds QAN MySQL PerfSchema Agent. - AddQANMySQLPerfSchemaAgent(ctx context.Context, in *AddQANMySQLPerfSchemaAgentRequest, opts ...grpc.CallOption) (*AddQANMySQLPerfSchemaAgentResponse, error) // ChangeQANMySQLPerfSchemaAgent changes QAN MySQL PerfSchema Agent. ChangeQANMySQLPerfSchemaAgent(ctx context.Context, in *ChangeQANMySQLPerfSchemaAgentRequest, opts ...grpc.CallOption) (*ChangeQANMySQLPerfSchemaAgentResponse, error) - // AddQANMySQLSlowlogAgent adds QAN MySQL Slowlog Agent. - AddQANMySQLSlowlogAgent(ctx context.Context, in *AddQANMySQLSlowlogAgentRequest, opts ...grpc.CallOption) (*AddQANMySQLSlowlogAgentResponse, error) // ChangeQANMySQLSlowlogAgent changes QAN MySQL Slowlog Agent. ChangeQANMySQLSlowlogAgent(ctx context.Context, in *ChangeQANMySQLSlowlogAgentRequest, opts ...grpc.CallOption) (*ChangeQANMySQLSlowlogAgentResponse, error) - // AddQANMongoDBProfilerAgent adds QAN MongoDB Profiler Agent. - AddQANMongoDBProfilerAgent(ctx context.Context, in *AddQANMongoDBProfilerAgentRequest, opts ...grpc.CallOption) (*AddQANMongoDBProfilerAgentResponse, error) // ChangeQANMongoDBProfilerAgent changes QAN MongoDB Profiler Agent. ChangeQANMongoDBProfilerAgent(ctx context.Context, in *ChangeQANMongoDBProfilerAgentRequest, opts ...grpc.CallOption) (*ChangeQANMongoDBProfilerAgentResponse, error) - // AddQANPostgreSQLPgStatementsAgent adds QAN PostgreSQL PgStat Statements Agent. - AddQANPostgreSQLPgStatementsAgent(ctx context.Context, in *AddQANPostgreSQLPgStatementsAgentRequest, opts ...grpc.CallOption) (*AddQANPostgreSQLPgStatementsAgentResponse, error) // ChangeQANPostgreSQLPgStatementsAgent changes QAN PostgreSQL PgStat Statements Agent. ChangeQANPostgreSQLPgStatementsAgent(ctx context.Context, in *ChangeQANPostgreSQLPgStatementsAgentRequest, opts ...grpc.CallOption) (*ChangeQANPostgreSQLPgStatementsAgentResponse, error) - // AddQANPostgreSQLPgStatMonitorAgent adds QAN PostgreSQL PgStat Monitor Agent. - AddQANPostgreSQLPgStatMonitorAgent(ctx context.Context, in *AddQANPostgreSQLPgStatMonitorAgentRequest, opts ...grpc.CallOption) (*AddQANPostgreSQLPgStatMonitorAgentResponse, error) // ChangeQANPostgreSQLPgStatMonitorAgent changes QAN PostgreSQL PgStat Monitor Agent. ChangeQANPostgreSQLPgStatMonitorAgent(ctx context.Context, in *ChangeQANPostgreSQLPgStatMonitorAgentRequest, opts ...grpc.CallOption) (*ChangeQANPostgreSQLPgStatMonitorAgentResponse, error) // ChangeRDSExporter changes rds_exporter Agent. @@ -135,15 +117,6 @@ func (c *agentsServiceClient) GetAgentLogs(ctx context.Context, in *GetAgentLogs return out, nil } -func (c *agentsServiceClient) AddPMMAgent(ctx context.Context, in *AddPMMAgentRequest, opts ...grpc.CallOption) (*AddPMMAgentResponse, error) { - out := new(AddPMMAgentResponse) - err := c.cc.Invoke(ctx, AgentsService_AddPMMAgent_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - func (c *agentsServiceClient) AddAgent(ctx context.Context, in *AddAgentRequest, opts ...grpc.CallOption) (*AddAgentResponse, error) { out := new(AddAgentResponse) err := c.cc.Invoke(ctx, AgentsService_AddAgent_FullMethodName, in, out, opts...) @@ -198,15 +171,6 @@ func (c *agentsServiceClient) ChangeProxySQLExporter(ctx context.Context, in *Ch return out, nil } -func (c *agentsServiceClient) AddQANMySQLPerfSchemaAgent(ctx context.Context, in *AddQANMySQLPerfSchemaAgentRequest, opts ...grpc.CallOption) (*AddQANMySQLPerfSchemaAgentResponse, error) { - out := new(AddQANMySQLPerfSchemaAgentResponse) - err := c.cc.Invoke(ctx, AgentsService_AddQANMySQLPerfSchemaAgent_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...) @@ -216,15 +180,6 @@ func (c *agentsServiceClient) ChangeQANMySQLPerfSchemaAgent(ctx context.Context, return out, nil } -func (c *agentsServiceClient) AddQANMySQLSlowlogAgent(ctx context.Context, in *AddQANMySQLSlowlogAgentRequest, opts ...grpc.CallOption) (*AddQANMySQLSlowlogAgentResponse, error) { - out := new(AddQANMySQLSlowlogAgentResponse) - err := c.cc.Invoke(ctx, AgentsService_AddQANMySQLSlowlogAgent_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...) @@ -234,15 +189,6 @@ func (c *agentsServiceClient) ChangeQANMySQLSlowlogAgent(ctx context.Context, in return out, nil } -func (c *agentsServiceClient) AddQANMongoDBProfilerAgent(ctx context.Context, in *AddQANMongoDBProfilerAgentRequest, opts ...grpc.CallOption) (*AddQANMongoDBProfilerAgentResponse, error) { - out := new(AddQANMongoDBProfilerAgentResponse) - err := c.cc.Invoke(ctx, AgentsService_AddQANMongoDBProfilerAgent_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...) @@ -252,15 +198,6 @@ func (c *agentsServiceClient) ChangeQANMongoDBProfilerAgent(ctx context.Context, return out, nil } -func (c *agentsServiceClient) AddQANPostgreSQLPgStatementsAgent(ctx context.Context, in *AddQANPostgreSQLPgStatementsAgentRequest, opts ...grpc.CallOption) (*AddQANPostgreSQLPgStatementsAgentResponse, error) { - out := new(AddQANPostgreSQLPgStatementsAgentResponse) - err := c.cc.Invoke(ctx, AgentsService_AddQANPostgreSQLPgStatementsAgent_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...) @@ -270,15 +207,6 @@ func (c *agentsServiceClient) ChangeQANPostgreSQLPgStatementsAgent(ctx context.C return out, nil } -func (c *agentsServiceClient) AddQANPostgreSQLPgStatMonitorAgent(ctx context.Context, in *AddQANPostgreSQLPgStatMonitorAgentRequest, opts ...grpc.CallOption) (*AddQANPostgreSQLPgStatMonitorAgentResponse, error) { - out := new(AddQANPostgreSQLPgStatMonitorAgentResponse) - err := c.cc.Invoke(ctx, AgentsService_AddQANPostgreSQLPgStatMonitorAgent_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...) @@ -334,8 +262,6 @@ type AgentsServiceServer interface { GetAgent(context.Context, *GetAgentRequest) (*GetAgentResponse, error) // GetAgentLogs returns Agent logs by ID. GetAgentLogs(context.Context, *GetAgentLogsRequest) (*GetAgentLogsResponse, error) - // AddPMMAgent adds pmm-agent Agent. - AddPMMAgent(context.Context, *AddPMMAgentRequest) (*AddPMMAgentResponse, error) // AddAgent adds any type of Agent. AddAgent(context.Context, *AddAgentRequest) (*AddAgentResponse, error) // ChangeNodeExporter changes node_exporter Agent. @@ -348,24 +274,14 @@ type AgentsServiceServer interface { ChangePostgresExporter(context.Context, *ChangePostgresExporterRequest) (*ChangePostgresExporterResponse, error) // ChangeProxySQLExporter changes proxysql_exporter Agent. ChangeProxySQLExporter(context.Context, *ChangeProxySQLExporterRequest) (*ChangeProxySQLExporterResponse, error) - // AddQANMySQLPerfSchemaAgent adds QAN MySQL PerfSchema Agent. - AddQANMySQLPerfSchemaAgent(context.Context, *AddQANMySQLPerfSchemaAgentRequest) (*AddQANMySQLPerfSchemaAgentResponse, error) // ChangeQANMySQLPerfSchemaAgent changes QAN MySQL PerfSchema Agent. ChangeQANMySQLPerfSchemaAgent(context.Context, *ChangeQANMySQLPerfSchemaAgentRequest) (*ChangeQANMySQLPerfSchemaAgentResponse, error) - // AddQANMySQLSlowlogAgent adds QAN MySQL Slowlog Agent. - AddQANMySQLSlowlogAgent(context.Context, *AddQANMySQLSlowlogAgentRequest) (*AddQANMySQLSlowlogAgentResponse, error) // ChangeQANMySQLSlowlogAgent changes QAN MySQL Slowlog Agent. ChangeQANMySQLSlowlogAgent(context.Context, *ChangeQANMySQLSlowlogAgentRequest) (*ChangeQANMySQLSlowlogAgentResponse, error) - // AddQANMongoDBProfilerAgent adds QAN MongoDB Profiler Agent. - AddQANMongoDBProfilerAgent(context.Context, *AddQANMongoDBProfilerAgentRequest) (*AddQANMongoDBProfilerAgentResponse, error) // ChangeQANMongoDBProfilerAgent changes QAN MongoDB Profiler Agent. ChangeQANMongoDBProfilerAgent(context.Context, *ChangeQANMongoDBProfilerAgentRequest) (*ChangeQANMongoDBProfilerAgentResponse, error) - // AddQANPostgreSQLPgStatementsAgent adds QAN PostgreSQL PgStat Statements Agent. - AddQANPostgreSQLPgStatementsAgent(context.Context, *AddQANPostgreSQLPgStatementsAgentRequest) (*AddQANPostgreSQLPgStatementsAgentResponse, error) // ChangeQANPostgreSQLPgStatementsAgent changes QAN PostgreSQL PgStat Statements Agent. ChangeQANPostgreSQLPgStatementsAgent(context.Context, *ChangeQANPostgreSQLPgStatementsAgentRequest) (*ChangeQANPostgreSQLPgStatementsAgentResponse, error) - // AddQANPostgreSQLPgStatMonitorAgent adds QAN PostgreSQL PgStat Monitor Agent. - AddQANPostgreSQLPgStatMonitorAgent(context.Context, *AddQANPostgreSQLPgStatMonitorAgentRequest) (*AddQANPostgreSQLPgStatMonitorAgentResponse, error) // ChangeQANPostgreSQLPgStatMonitorAgent changes QAN PostgreSQL PgStat Monitor Agent. ChangeQANPostgreSQLPgStatMonitorAgent(context.Context, *ChangeQANPostgreSQLPgStatMonitorAgentRequest) (*ChangeQANPostgreSQLPgStatMonitorAgentResponse, error) // ChangeRDSExporter changes rds_exporter Agent. @@ -394,10 +310,6 @@ func (UnimplementedAgentsServiceServer) GetAgentLogs(context.Context, *GetAgentL return nil, status.Errorf(codes.Unimplemented, "method GetAgentLogs not implemented") } -func (UnimplementedAgentsServiceServer) AddPMMAgent(context.Context, *AddPMMAgentRequest) (*AddPMMAgentResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AddPMMAgent not implemented") -} - func (UnimplementedAgentsServiceServer) AddAgent(context.Context, *AddAgentRequest) (*AddAgentResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method AddAgent not implemented") } @@ -422,42 +334,22 @@ func (UnimplementedAgentsServiceServer) ChangeProxySQLExporter(context.Context, return nil, status.Errorf(codes.Unimplemented, "method ChangeProxySQLExporter not implemented") } -func (UnimplementedAgentsServiceServer) AddQANMySQLPerfSchemaAgent(context.Context, *AddQANMySQLPerfSchemaAgentRequest) (*AddQANMySQLPerfSchemaAgentResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AddQANMySQLPerfSchemaAgent not implemented") -} - func (UnimplementedAgentsServiceServer) ChangeQANMySQLPerfSchemaAgent(context.Context, *ChangeQANMySQLPerfSchemaAgentRequest) (*ChangeQANMySQLPerfSchemaAgentResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ChangeQANMySQLPerfSchemaAgent not implemented") } -func (UnimplementedAgentsServiceServer) AddQANMySQLSlowlogAgent(context.Context, *AddQANMySQLSlowlogAgentRequest) (*AddQANMySQLSlowlogAgentResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AddQANMySQLSlowlogAgent not implemented") -} - func (UnimplementedAgentsServiceServer) ChangeQANMySQLSlowlogAgent(context.Context, *ChangeQANMySQLSlowlogAgentRequest) (*ChangeQANMySQLSlowlogAgentResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ChangeQANMySQLSlowlogAgent not implemented") } -func (UnimplementedAgentsServiceServer) AddQANMongoDBProfilerAgent(context.Context, *AddQANMongoDBProfilerAgentRequest) (*AddQANMongoDBProfilerAgentResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AddQANMongoDBProfilerAgent not implemented") -} - func (UnimplementedAgentsServiceServer) ChangeQANMongoDBProfilerAgent(context.Context, *ChangeQANMongoDBProfilerAgentRequest) (*ChangeQANMongoDBProfilerAgentResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ChangeQANMongoDBProfilerAgent not implemented") } -func (UnimplementedAgentsServiceServer) AddQANPostgreSQLPgStatementsAgent(context.Context, *AddQANPostgreSQLPgStatementsAgentRequest) (*AddQANPostgreSQLPgStatementsAgentResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AddQANPostgreSQLPgStatementsAgent not implemented") -} - func (UnimplementedAgentsServiceServer) ChangeQANPostgreSQLPgStatementsAgent(context.Context, *ChangeQANPostgreSQLPgStatementsAgentRequest) (*ChangeQANPostgreSQLPgStatementsAgentResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ChangeQANPostgreSQLPgStatementsAgent not implemented") } -func (UnimplementedAgentsServiceServer) AddQANPostgreSQLPgStatMonitorAgent(context.Context, *AddQANPostgreSQLPgStatMonitorAgentRequest) (*AddQANPostgreSQLPgStatMonitorAgentResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AddQANPostgreSQLPgStatMonitorAgent not implemented") -} - func (UnimplementedAgentsServiceServer) ChangeQANPostgreSQLPgStatMonitorAgent(context.Context, *ChangeQANPostgreSQLPgStatMonitorAgentRequest) (*ChangeQANPostgreSQLPgStatMonitorAgentResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ChangeQANPostgreSQLPgStatMonitorAgent not implemented") } @@ -544,24 +436,6 @@ func _AgentsService_GetAgentLogs_Handler(srv interface{}, ctx context.Context, d return interceptor(ctx, in, info, handler) } -func _AgentsService_AddPMMAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AddPMMAgentRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).AddPMMAgent(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_AddPMMAgent_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).AddPMMAgent(ctx, req.(*AddPMMAgentRequest)) - } - return interceptor(ctx, in, info, handler) -} - func _AgentsService_AddAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(AddAgentRequest) if err := dec(in); err != nil { @@ -670,24 +544,6 @@ func _AgentsService_ChangeProxySQLExporter_Handler(srv interface{}, ctx context. return interceptor(ctx, in, info, handler) } -func _AgentsService_AddQANMySQLPerfSchemaAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AddQANMySQLPerfSchemaAgentRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).AddQANMySQLPerfSchemaAgent(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_AddQANMySQLPerfSchemaAgent_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).AddQANMySQLPerfSchemaAgent(ctx, req.(*AddQANMySQLPerfSchemaAgentRequest)) - } - 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 { @@ -706,24 +562,6 @@ func _AgentsService_ChangeQANMySQLPerfSchemaAgent_Handler(srv interface{}, ctx c return interceptor(ctx, in, info, handler) } -func _AgentsService_AddQANMySQLSlowlogAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AddQANMySQLSlowlogAgentRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).AddQANMySQLSlowlogAgent(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_AddQANMySQLSlowlogAgent_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).AddQANMySQLSlowlogAgent(ctx, req.(*AddQANMySQLSlowlogAgentRequest)) - } - 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 { @@ -742,24 +580,6 @@ func _AgentsService_ChangeQANMySQLSlowlogAgent_Handler(srv interface{}, ctx cont return interceptor(ctx, in, info, handler) } -func _AgentsService_AddQANMongoDBProfilerAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AddQANMongoDBProfilerAgentRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).AddQANMongoDBProfilerAgent(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_AddQANMongoDBProfilerAgent_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).AddQANMongoDBProfilerAgent(ctx, req.(*AddQANMongoDBProfilerAgentRequest)) - } - 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 { @@ -778,24 +598,6 @@ func _AgentsService_ChangeQANMongoDBProfilerAgent_Handler(srv interface{}, ctx c return interceptor(ctx, in, info, handler) } -func _AgentsService_AddQANPostgreSQLPgStatementsAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AddQANPostgreSQLPgStatementsAgentRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).AddQANPostgreSQLPgStatementsAgent(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_AddQANPostgreSQLPgStatementsAgent_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).AddQANPostgreSQLPgStatementsAgent(ctx, req.(*AddQANPostgreSQLPgStatementsAgentRequest)) - } - 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 { @@ -814,24 +616,6 @@ func _AgentsService_ChangeQANPostgreSQLPgStatementsAgent_Handler(srv interface{} return interceptor(ctx, in, info, handler) } -func _AgentsService_AddQANPostgreSQLPgStatMonitorAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AddQANPostgreSQLPgStatMonitorAgentRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AgentsServiceServer).AddQANPostgreSQLPgStatMonitorAgent(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AgentsService_AddQANPostgreSQLPgStatMonitorAgent_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AgentsServiceServer).AddQANPostgreSQLPgStatMonitorAgent(ctx, req.(*AddQANPostgreSQLPgStatMonitorAgentRequest)) - } - 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) if err := dec(in); err != nil { @@ -941,10 +725,6 @@ var AgentsService_ServiceDesc = grpc.ServiceDesc{ MethodName: "GetAgentLogs", Handler: _AgentsService_GetAgentLogs_Handler, }, - { - MethodName: "AddPMMAgent", - Handler: _AgentsService_AddPMMAgent_Handler, - }, { MethodName: "AddAgent", Handler: _AgentsService_AddAgent_Handler, @@ -969,42 +749,22 @@ var AgentsService_ServiceDesc = grpc.ServiceDesc{ MethodName: "ChangeProxySQLExporter", Handler: _AgentsService_ChangeProxySQLExporter_Handler, }, - { - MethodName: "AddQANMySQLPerfSchemaAgent", - Handler: _AgentsService_AddQANMySQLPerfSchemaAgent_Handler, - }, { MethodName: "ChangeQANMySQLPerfSchemaAgent", Handler: _AgentsService_ChangeQANMySQLPerfSchemaAgent_Handler, }, - { - MethodName: "AddQANMySQLSlowlogAgent", - Handler: _AgentsService_AddQANMySQLSlowlogAgent_Handler, - }, { MethodName: "ChangeQANMySQLSlowlogAgent", Handler: _AgentsService_ChangeQANMySQLSlowlogAgent_Handler, }, - { - MethodName: "AddQANMongoDBProfilerAgent", - Handler: _AgentsService_AddQANMongoDBProfilerAgent_Handler, - }, { MethodName: "ChangeQANMongoDBProfilerAgent", Handler: _AgentsService_ChangeQANMongoDBProfilerAgent_Handler, }, - { - MethodName: "AddQANPostgreSQLPgStatementsAgent", - Handler: _AgentsService_AddQANPostgreSQLPgStatementsAgent_Handler, - }, { MethodName: "ChangeQANPostgreSQLPgStatementsAgent", Handler: _AgentsService_ChangeQANPostgreSQLPgStatementsAgent_Handler, }, - { - MethodName: "AddQANPostgreSQLPgStatMonitorAgent", - Handler: _AgentsService_AddQANPostgreSQLPgStatMonitorAgent_Handler, - }, { MethodName: "ChangeQANPostgreSQLPgStatMonitorAgent", Handler: _AgentsService_ChangeQANPostgreSQLPgStatMonitorAgent_Handler, 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 cbf50788b2..c8515c106f 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 @@ -140,12 +140,30 @@ type AddAgentBody struct { // node exporter NodeExporter *AddAgentParamsBodyNodeExporter `json:"node_exporter,omitempty"` + // pmm agent + PMMAgent *AddAgentParamsBodyPMMAgent `json:"pmm_agent,omitempty"` + // postgres exporter PostgresExporter *AddAgentParamsBodyPostgresExporter `json:"postgres_exporter,omitempty"` // proxysql exporter ProxysqlExporter *AddAgentParamsBodyProxysqlExporter `json:"proxysql_exporter,omitempty"` + // qan mongodb profiler agent + QANMongodbProfilerAgent *AddAgentParamsBodyQANMongodbProfilerAgent `json:"qan_mongodb_profiler_agent,omitempty"` + + // qan mysql perfschema agent + QANMysqlPerfschemaAgent *AddAgentParamsBodyQANMysqlPerfschemaAgent `json:"qan_mysql_perfschema_agent,omitempty"` + + // qan mysql slowlog agent + QANMysqlSlowlogAgent *AddAgentParamsBodyQANMysqlSlowlogAgent `json:"qan_mysql_slowlog_agent,omitempty"` + + // qan postgresql pgstatements agent + QANPostgresqlPgstatementsAgent *AddAgentParamsBodyQANPostgresqlPgstatementsAgent `json:"qan_postgresql_pgstatements_agent,omitempty"` + + // qan postgresql pgstatmonitor agent + QANPostgresqlPgstatmonitorAgent *AddAgentParamsBodyQANPostgresqlPgstatmonitorAgent `json:"qan_postgresql_pgstatmonitor_agent,omitempty"` + // rds exporter RDSExporter *AddAgentParamsBodyRDSExporter `json:"rds_exporter,omitempty"` } @@ -174,6 +192,10 @@ func (o *AddAgentBody) Validate(formats strfmt.Registry) error { res = append(res, err) } + if err := o.validatePMMAgent(formats); err != nil { + res = append(res, err) + } + if err := o.validatePostgresExporter(formats); err != nil { res = append(res, err) } @@ -182,6 +204,26 @@ func (o *AddAgentBody) Validate(formats strfmt.Registry) error { 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) } @@ -287,6 +329,25 @@ func (o *AddAgentBody) validateNodeExporter(formats strfmt.Registry) error { return nil } +func (o *AddAgentBody) validatePMMAgent(formats strfmt.Registry) error { + if swag.IsZero(o.PMMAgent) { // not required + return nil + } + + if o.PMMAgent != nil { + if err := o.PMMAgent.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "pmm_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "pmm_agent") + } + return err + } + } + + return nil +} + func (o *AddAgentBody) validatePostgresExporter(formats strfmt.Registry) error { if swag.IsZero(o.PostgresExporter) { // not required return nil @@ -325,6 +386,101 @@ func (o *AddAgentBody) validateProxysqlExporter(formats strfmt.Registry) error { return nil } +func (o *AddAgentBody) 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 *AddAgentBody) 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 *AddAgentBody) 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 *AddAgentBody) 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 *AddAgentBody) 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 *AddAgentBody) validateRDSExporter(formats strfmt.Registry) error { if swag.IsZero(o.RDSExporter) { // not required return nil @@ -368,6 +524,10 @@ func (o *AddAgentBody) ContextValidate(ctx context.Context, formats strfmt.Regis res = append(res, err) } + if err := o.contextValidatePMMAgent(ctx, formats); err != nil { + res = append(res, err) + } + if err := o.contextValidatePostgresExporter(ctx, formats); err != nil { res = append(res, err) } @@ -376,6 +536,26 @@ func (o *AddAgentBody) ContextValidate(ctx context.Context, formats strfmt.Regis 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) } @@ -461,6 +641,21 @@ func (o *AddAgentBody) contextValidateNodeExporter(ctx context.Context, formats return nil } +func (o *AddAgentBody) contextValidatePMMAgent(ctx context.Context, formats strfmt.Registry) error { + if o.PMMAgent != nil { + if err := o.PMMAgent.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("body" + "." + "pmm_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("body" + "." + "pmm_agent") + } + return err + } + } + + return nil +} + func (o *AddAgentBody) contextValidatePostgresExporter(ctx context.Context, formats strfmt.Registry) error { if o.PostgresExporter != nil { if err := o.PostgresExporter.ContextValidate(ctx, formats); err != nil { @@ -491,6 +686,81 @@ func (o *AddAgentBody) contextValidateProxysqlExporter(ctx context.Context, form return nil } +func (o *AddAgentBody) 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 *AddAgentBody) 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 *AddAgentBody) 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 *AddAgentBody) 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 *AddAgentBody) 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 *AddAgentBody) contextValidateRDSExporter(ctx context.Context, formats strfmt.Registry) error { if o.RDSExporter != nil { if err := o.RDSExporter.ContextValidate(ctx, formats); err != nil { @@ -688,12 +958,30 @@ type AddAgentOKBody struct { // node exporter NodeExporter *AddAgentOKBodyNodeExporter `json:"node_exporter,omitempty"` + // pmm agent + PMMAgent *AddAgentOKBodyPMMAgent `json:"pmm_agent,omitempty"` + // postgres exporter PostgresExporter *AddAgentOKBodyPostgresExporter `json:"postgres_exporter,omitempty"` // proxysql exporter ProxysqlExporter *AddAgentOKBodyProxysqlExporter `json:"proxysql_exporter,omitempty"` + // qan mongodb profiler agent + QANMongodbProfilerAgent *AddAgentOKBodyQANMongodbProfilerAgent `json:"qan_mongodb_profiler_agent,omitempty"` + + // qan mysql perfschema agent + QANMysqlPerfschemaAgent *AddAgentOKBodyQANMysqlPerfschemaAgent `json:"qan_mysql_perfschema_agent,omitempty"` + + // qan mysql slowlog agent + QANMysqlSlowlogAgent *AddAgentOKBodyQANMysqlSlowlogAgent `json:"qan_mysql_slowlog_agent,omitempty"` + + // qan postgresql pgstatements agent + QANPostgresqlPgstatementsAgent *AddAgentOKBodyQANPostgresqlPgstatementsAgent `json:"qan_postgresql_pgstatements_agent,omitempty"` + + // qan postgresql pgstatmonitor agent + QANPostgresqlPgstatmonitorAgent *AddAgentOKBodyQANPostgresqlPgstatmonitorAgent `json:"qan_postgresql_pgstatmonitor_agent,omitempty"` + // rds exporter RDSExporter *AddAgentOKBodyRDSExporter `json:"rds_exporter,omitempty"` } @@ -722,6 +1010,10 @@ func (o *AddAgentOKBody) Validate(formats strfmt.Registry) error { res = append(res, err) } + if err := o.validatePMMAgent(formats); err != nil { + res = append(res, err) + } + if err := o.validatePostgresExporter(formats); err != nil { res = append(res, err) } @@ -730,6 +1022,26 @@ func (o *AddAgentOKBody) Validate(formats strfmt.Registry) error { 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) } @@ -835,6 +1147,25 @@ func (o *AddAgentOKBody) validateNodeExporter(formats strfmt.Registry) error { return nil } +func (o *AddAgentOKBody) validatePMMAgent(formats strfmt.Registry) error { + if swag.IsZero(o.PMMAgent) { // not required + return nil + } + + if o.PMMAgent != nil { + if err := o.PMMAgent.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("addAgentOk" + "." + "pmm_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addAgentOk" + "." + "pmm_agent") + } + return err + } + } + + return nil +} + func (o *AddAgentOKBody) validatePostgresExporter(formats strfmt.Registry) error { if swag.IsZero(o.PostgresExporter) { // not required return nil @@ -873,17 +1204,17 @@ func (o *AddAgentOKBody) validateProxysqlExporter(formats strfmt.Registry) error return nil } -func (o *AddAgentOKBody) validateRDSExporter(formats strfmt.Registry) error { - if swag.IsZero(o.RDSExporter) { // not required +func (o *AddAgentOKBody) validateQANMongodbProfilerAgent(formats strfmt.Registry) error { + if swag.IsZero(o.QANMongodbProfilerAgent) { // not required return nil } - if o.RDSExporter != nil { - if err := o.RDSExporter.Validate(formats); err != nil { + if o.QANMongodbProfilerAgent != nil { + if err := o.QANMongodbProfilerAgent.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("addAgentOk" + "." + "rds_exporter") + return ve.ValidateName("addAgentOk" + "." + "qan_mongodb_profiler_agent") } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addAgentOk" + "." + "rds_exporter") + return ce.ValidateName("addAgentOk" + "." + "qan_mongodb_profiler_agent") } return err } @@ -892,28 +1223,127 @@ func (o *AddAgentOKBody) validateRDSExporter(formats strfmt.Registry) error { return nil } -// ContextValidate validate this add agent OK body based on the context it is used -func (o *AddAgentOKBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidateAzureDatabaseExporter(ctx, formats); err != nil { - res = append(res, err) +func (o *AddAgentOKBody) validateQANMysqlPerfschemaAgent(formats strfmt.Registry) error { + if swag.IsZero(o.QANMysqlPerfschemaAgent) { // not required + return nil } - if err := o.contextValidateExternalExporter(ctx, formats); err != nil { - res = append(res, err) + if o.QANMysqlPerfschemaAgent != nil { + if err := o.QANMysqlPerfschemaAgent.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("addAgentOk" + "." + "qan_mysql_perfschema_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addAgentOk" + "." + "qan_mysql_perfschema_agent") + } + return err + } } - if err := o.contextValidateMongodbExporter(ctx, formats); err != nil { - res = append(res, err) + return nil +} + +func (o *AddAgentOKBody) validateQANMysqlSlowlogAgent(formats strfmt.Registry) error { + if swag.IsZero(o.QANMysqlSlowlogAgent) { // not required + return nil } - if err := o.contextValidateMysqldExporter(ctx, formats); err != nil { - res = append(res, err) + if o.QANMysqlSlowlogAgent != nil { + if err := o.QANMysqlSlowlogAgent.Validate(formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("addAgentOk" + "." + "qan_mysql_slowlog_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addAgentOk" + "." + "qan_mysql_slowlog_agent") + } + return err + } } - if err := o.contextValidateNodeExporter(ctx, formats); err != nil { - res = append(res, err) + return nil +} + +func (o *AddAgentOKBody) 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("addAgentOk" + "." + "qan_postgresql_pgstatements_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addAgentOk" + "." + "qan_postgresql_pgstatements_agent") + } + return err + } + } + + return nil +} + +func (o *AddAgentOKBody) 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("addAgentOk" + "." + "qan_postgresql_pgstatmonitor_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addAgentOk" + "." + "qan_postgresql_pgstatmonitor_agent") + } + return err + } + } + + return nil +} + +func (o *AddAgentOKBody) 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("addAgentOk" + "." + "rds_exporter") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addAgentOk" + "." + "rds_exporter") + } + return err + } + } + + return nil +} + +// ContextValidate validate this add agent OK body based on the context it is used +func (o *AddAgentOKBody) 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.contextValidatePMMAgent(ctx, formats); err != nil { + res = append(res, err) } if err := o.contextValidatePostgresExporter(ctx, formats); err != nil { @@ -924,6 +1354,26 @@ func (o *AddAgentOKBody) ContextValidate(ctx context.Context, formats strfmt.Reg 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) } @@ -1009,6 +1459,21 @@ func (o *AddAgentOKBody) contextValidateNodeExporter(ctx context.Context, format return nil } +func (o *AddAgentOKBody) contextValidatePMMAgent(ctx context.Context, formats strfmt.Registry) error { + if o.PMMAgent != nil { + if err := o.PMMAgent.ContextValidate(ctx, formats); err != nil { + if ve, ok := err.(*errors.Validation); ok { + return ve.ValidateName("addAgentOk" + "." + "pmm_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addAgentOk" + "." + "pmm_agent") + } + return err + } + } + + return nil +} + func (o *AddAgentOKBody) contextValidatePostgresExporter(ctx context.Context, formats strfmt.Registry) error { if o.PostgresExporter != nil { if err := o.PostgresExporter.ContextValidate(ctx, formats); err != nil { @@ -1039,6 +1504,81 @@ func (o *AddAgentOKBody) contextValidateProxysqlExporter(ctx context.Context, fo return nil } +func (o *AddAgentOKBody) 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("addAgentOk" + "." + "qan_mongodb_profiler_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addAgentOk" + "." + "qan_mongodb_profiler_agent") + } + return err + } + } + + return nil +} + +func (o *AddAgentOKBody) 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("addAgentOk" + "." + "qan_mysql_perfschema_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addAgentOk" + "." + "qan_mysql_perfschema_agent") + } + return err + } + } + + return nil +} + +func (o *AddAgentOKBody) 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("addAgentOk" + "." + "qan_mysql_slowlog_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addAgentOk" + "." + "qan_mysql_slowlog_agent") + } + return err + } + } + + return nil +} + +func (o *AddAgentOKBody) 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("addAgentOk" + "." + "qan_postgresql_pgstatements_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addAgentOk" + "." + "qan_postgresql_pgstatements_agent") + } + return err + } + } + + return nil +} + +func (o *AddAgentOKBody) 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("addAgentOk" + "." + "qan_postgresql_pgstatmonitor_agent") + } else if ce, ok := err.(*errors.CompositeError); ok { + return ce.ValidateName("addAgentOk" + "." + "qan_postgresql_pgstatmonitor_agent") + } + return err + } + } + + return nil +} + func (o *AddAgentOKBody) contextValidateRDSExporter(ctx context.Context, formats strfmt.Registry) error { if o.RDSExporter != nil { if err := o.RDSExporter.ContextValidate(ctx, formats); err != nil { @@ -2009,6 +2549,57 @@ func (o *AddAgentOKBodyNodeExporter) UnmarshalBinary(b []byte) error { return nil } +/* +AddAgentOKBodyPMMAgent PMMAgent runs on Generic or Container Node. +swagger:model AddAgentOKBodyPMMAgent +*/ +type AddAgentOKBodyPMMAgent 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"` + + // Custom user-assigned labels. + // + // Status fields below. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // True if Agent is running and connected to pmm-managed. + Connected bool `json:"connected,omitempty"` + + // Path to exec process. + ProcessExecPath string `json:"process_exec_path,omitempty"` +} + +// Validate validates this add agent OK body PMM agent +func (o *AddAgentOKBodyPMMAgent) Validate(formats strfmt.Registry) error { + return nil +} + +// ContextValidate validates this add agent OK body PMM agent based on context it is used +func (o *AddAgentOKBodyPMMAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddAgentOKBodyPMMAgent) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddAgentOKBodyPMMAgent) UnmarshalBinary(b []byte) error { + var res AddAgentOKBodyPMMAgent + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + /* AddAgentOKBodyPostgresExporter PostgresExporter runs on Generic or Container Node and exposes PostgreSQL Service metrics. swagger:model AddAgentOKBodyPostgresExporter @@ -2443,10 +3034,10 @@ func (o *AddAgentOKBodyProxysqlExporter) UnmarshalBinary(b []byte) error { } /* -AddAgentOKBodyRDSExporter RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node metrics. -swagger:model AddAgentOKBodyRDSExporter +AddAgentOKBodyQANMongodbProfilerAgent QANMongoDBProfilerAgent runs within pmm-agent and sends MongoDB Query Analytics data to the PMM Server. +swagger:model AddAgentOKBodyQANMongodbProfilerAgent */ -type AddAgentOKBodyRDSExporter struct { +type AddAgentOKBodyQANMongodbProfilerAgent struct { // Unique randomly generated instance identifier. AgentID string `json:"agent_id,omitempty"` @@ -2456,11 +3047,23 @@ type AddAgentOKBodyRDSExporter struct { // Desired Agent status: enabled (false) or disabled (true). Disabled bool `json:"disabled,omitempty"` - // Node identifier. - NodeID string `json:"node_id,omitempty"` + // Service identifier. + ServiceID string `json:"service_id,omitempty"` - // AWS Access Key. - AWSAccessKey string `json:"aws_access_key,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). + // + // True if query examples are disabled. + // bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650 + MaxQueryLength int32 `json:"max_query_length,omitempty"` // Custom user-assigned labels. // @@ -2478,20 +3081,6 @@ type AddAgentOKBodyRDSExporter struct { // 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). - // - // Metric collections flags below. - 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"` @@ -2500,13 +3089,10 @@ type AddAgentOKBodyRDSExporter struct { // - 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 add agent OK body RDS exporter -func (o *AddAgentOKBodyRDSExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent OK body QAN mongodb profiler agent +func (o *AddAgentOKBodyQANMongodbProfilerAgent) Validate(formats strfmt.Registry) error { var res []error if err := o.validateStatus(formats); err != nil { @@ -2523,7 +3109,7 @@ func (o *AddAgentOKBodyRDSExporter) Validate(formats strfmt.Registry) error { return nil } -var addAgentOkBodyRdsExporterTypeStatusPropEnum []interface{} +var addAgentOkBodyQanMongodbProfilerAgentTypeStatusPropEnum []interface{} func init() { var res []string @@ -2531,56 +3117,56 @@ func init() { panic(err) } for _, v := range res { - addAgentOkBodyRdsExporterTypeStatusPropEnum = append(addAgentOkBodyRdsExporterTypeStatusPropEnum, v) + addAgentOkBodyQanMongodbProfilerAgentTypeStatusPropEnum = append(addAgentOkBodyQanMongodbProfilerAgentTypeStatusPropEnum, v) } } const ( - // AddAgentOKBodyRDSExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - AddAgentOKBodyRDSExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + // AddAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + AddAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - // AddAgentOKBodyRDSExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - AddAgentOKBodyRDSExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + // AddAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + AddAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - // AddAgentOKBodyRDSExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - AddAgentOKBodyRDSExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + // AddAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + AddAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - // AddAgentOKBodyRDSExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - AddAgentOKBodyRDSExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + // AddAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + AddAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - // AddAgentOKBodyRDSExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - AddAgentOKBodyRDSExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + // AddAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + AddAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - // AddAgentOKBodyRDSExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - AddAgentOKBodyRDSExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + // AddAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + AddAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - // AddAgentOKBodyRDSExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - AddAgentOKBodyRDSExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" + // AddAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + AddAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" ) // prop value enum -func (o *AddAgentOKBodyRDSExporter) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addAgentOkBodyRdsExporterTypeStatusPropEnum, true); err != nil { +func (o *AddAgentOKBodyQANMongodbProfilerAgent) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyQanMongodbProfilerAgentTypeStatusPropEnum, true); err != nil { return err } return nil } -func (o *AddAgentOKBodyRDSExporter) validateStatus(formats strfmt.Registry) error { +func (o *AddAgentOKBodyQANMongodbProfilerAgent) validateStatus(formats strfmt.Registry) error { if swag.IsZero(o.Status) { // not required return nil } // value enum - if err := o.validateStatusEnum("addAgentOk"+"."+"rds_exporter"+"."+"status", "body", *o.Status); err != nil { + if err := o.validateStatusEnum("addAgentOk"+"."+"qan_mongodb_profiler_agent"+"."+"status", "body", *o.Status); err != nil { return err } return nil } -var addAgentOkBodyRdsExporterTypeLogLevelPropEnum []interface{} +var addAgentOkBodyQanMongodbProfilerAgentTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -2588,34 +3174,1119 @@ func init() { panic(err) } for _, v := range res { - addAgentOkBodyRdsExporterTypeLogLevelPropEnum = append(addAgentOkBodyRdsExporterTypeLogLevelPropEnum, v) + addAgentOkBodyQanMongodbProfilerAgentTypeLogLevelPropEnum = append(addAgentOkBodyQanMongodbProfilerAgentTypeLogLevelPropEnum, v) } } const ( - // AddAgentOKBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddAgentOKBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddAgentOKBodyRDSExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddAgentOKBodyRDSExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddAgentOKBodyRDSExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddAgentOKBodyRDSExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddAgentOKBodyRDSExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddAgentOKBodyRDSExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddAgentOKBodyRDSExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddAgentOKBodyRDSExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddAgentOKBodyRDSExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddAgentOKBodyRDSExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddAgentOKBodyRDSExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addAgentOkBodyRdsExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentOKBodyQANMongodbProfilerAgent) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyQanMongodbProfilerAgentTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddAgentOKBodyQANMongodbProfilerAgent) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("addAgentOk"+"."+"qan_mongodb_profiler_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add agent OK body QAN mongodb profiler agent based on context it is used +func (o *AddAgentOKBodyQANMongodbProfilerAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddAgentOKBodyQANMongodbProfilerAgent) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddAgentOKBodyQANMongodbProfilerAgent) UnmarshalBinary(b []byte) error { + var res AddAgentOKBodyQANMongodbProfilerAgent + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddAgentOKBodyQANMysqlPerfschemaAgent QANMySQLPerfSchemaAgent runs within pmm-agent and sends MySQL Query Analytics data to the PMM Server. +swagger:model AddAgentOKBodyQANMysqlPerfschemaAgent +*/ +type AddAgentOKBodyQANMysqlPerfschemaAgent 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. + // + // Status fields below. + 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 add agent OK body QAN mysql perfschema agent +func (o *AddAgentOKBodyQANMysqlPerfschemaAgent) 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 addAgentOkBodyQanMysqlPerfschemaAgentTypeStatusPropEnum []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 { + addAgentOkBodyQanMysqlPerfschemaAgentTypeStatusPropEnum = append(addAgentOkBodyQanMysqlPerfschemaAgentTypeStatusPropEnum, v) + } +} + +const ( + + // AddAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + AddAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // AddAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + AddAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // AddAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + AddAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // AddAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + AddAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // AddAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + AddAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // AddAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + AddAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // AddAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + AddAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *AddAgentOKBodyQANMysqlPerfschemaAgent) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyQanMysqlPerfschemaAgentTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddAgentOKBodyQANMysqlPerfschemaAgent) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("addAgentOk"+"."+"qan_mysql_perfschema_agent"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var addAgentOkBodyQanMysqlPerfschemaAgentTypeLogLevelPropEnum []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 { + addAgentOkBodyQanMysqlPerfschemaAgentTypeLogLevelPropEnum = append(addAgentOkBodyQanMysqlPerfschemaAgentTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddAgentOKBodyQANMysqlPerfschemaAgent) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyQanMysqlPerfschemaAgentTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddAgentOKBodyQANMysqlPerfschemaAgent) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("addAgentOk"+"."+"qan_mysql_perfschema_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add agent OK body QAN mysql perfschema agent based on context it is used +func (o *AddAgentOKBodyQANMysqlPerfschemaAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddAgentOKBodyQANMysqlPerfschemaAgent) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddAgentOKBodyQANMysqlPerfschemaAgent) UnmarshalBinary(b []byte) error { + var res AddAgentOKBodyQANMysqlPerfschemaAgent + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddAgentOKBodyQANMysqlSlowlogAgent QANMySQLSlowlogAgent runs within pmm-agent and sends MySQL Query Analytics data to the PMM Server. +swagger:model AddAgentOKBodyQANMysqlSlowlogAgent +*/ +type AddAgentOKBodyQANMysqlSlowlogAgent 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. + // + // Status fields below. + 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 add agent OK body QAN mysql slowlog agent +func (o *AddAgentOKBodyQANMysqlSlowlogAgent) 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 addAgentOkBodyQanMysqlSlowlogAgentTypeStatusPropEnum []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 { + addAgentOkBodyQanMysqlSlowlogAgentTypeStatusPropEnum = append(addAgentOkBodyQanMysqlSlowlogAgentTypeStatusPropEnum, v) + } +} + +const ( + + // AddAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + AddAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // AddAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + AddAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // AddAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + AddAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // AddAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + AddAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // AddAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + AddAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // AddAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + AddAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // AddAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + AddAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *AddAgentOKBodyQANMysqlSlowlogAgent) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyQanMysqlSlowlogAgentTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddAgentOKBodyQANMysqlSlowlogAgent) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("addAgentOk"+"."+"qan_mysql_slowlog_agent"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var addAgentOkBodyQanMysqlSlowlogAgentTypeLogLevelPropEnum []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 { + addAgentOkBodyQanMysqlSlowlogAgentTypeLogLevelPropEnum = append(addAgentOkBodyQanMysqlSlowlogAgentTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddAgentOKBodyQANMysqlSlowlogAgent) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyQanMysqlSlowlogAgentTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddAgentOKBodyQANMysqlSlowlogAgent) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("addAgentOk"+"."+"qan_mysql_slowlog_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add agent OK body QAN mysql slowlog agent based on context it is used +func (o *AddAgentOKBodyQANMysqlSlowlogAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddAgentOKBodyQANMysqlSlowlogAgent) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddAgentOKBodyQANMysqlSlowlogAgent) UnmarshalBinary(b []byte) error { + var res AddAgentOKBodyQANMysqlSlowlogAgent + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddAgentOKBodyQANPostgresqlPgstatementsAgent QANPostgreSQLPgStatementsAgent runs within pmm-agent and sends PostgreSQL Query Analytics data to the PMM Server. +swagger:model AddAgentOKBodyQANPostgresqlPgstatementsAgent +*/ +type AddAgentOKBodyQANPostgresqlPgstatementsAgent 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. + // + // Status fields below. + 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 add agent OK body QAN postgresql pgstatements agent +func (o *AddAgentOKBodyQANPostgresqlPgstatementsAgent) 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 addAgentOkBodyQanPostgresqlPgstatementsAgentTypeStatusPropEnum []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 { + addAgentOkBodyQanPostgresqlPgstatementsAgentTypeStatusPropEnum = append(addAgentOkBodyQanPostgresqlPgstatementsAgentTypeStatusPropEnum, v) + } +} + +const ( + + // AddAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + AddAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // AddAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + AddAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // AddAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + AddAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // AddAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + AddAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // AddAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + AddAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // AddAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + AddAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // AddAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + AddAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *AddAgentOKBodyQANPostgresqlPgstatementsAgent) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyQanPostgresqlPgstatementsAgentTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddAgentOKBodyQANPostgresqlPgstatementsAgent) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("addAgentOk"+"."+"qan_postgresql_pgstatements_agent"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var addAgentOkBodyQanPostgresqlPgstatementsAgentTypeLogLevelPropEnum []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 { + addAgentOkBodyQanPostgresqlPgstatementsAgentTypeLogLevelPropEnum = append(addAgentOkBodyQanPostgresqlPgstatementsAgentTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddAgentOKBodyQANPostgresqlPgstatementsAgent) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyQanPostgresqlPgstatementsAgentTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddAgentOKBodyQANPostgresqlPgstatementsAgent) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("addAgentOk"+"."+"qan_postgresql_pgstatements_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add agent OK body QAN postgresql pgstatements agent based on context it is used +func (o *AddAgentOKBodyQANPostgresqlPgstatementsAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddAgentOKBodyQANPostgresqlPgstatementsAgent) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddAgentOKBodyQANPostgresqlPgstatementsAgent) UnmarshalBinary(b []byte) error { + var res AddAgentOKBodyQANPostgresqlPgstatementsAgent + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddAgentOKBodyQANPostgresqlPgstatmonitorAgent QANPostgreSQLPgStatMonitorAgent runs within pmm-agent and sends PostgreSQL Query Analytics data to the PMM Server. +swagger:model AddAgentOKBodyQANPostgresqlPgstatmonitorAgent +*/ +type AddAgentOKBodyQANPostgresqlPgstatmonitorAgent 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. + // + // Status fields below. + 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 add agent OK body QAN postgresql pgstatmonitor agent +func (o *AddAgentOKBodyQANPostgresqlPgstatmonitorAgent) 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 addAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeStatusPropEnum []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 { + addAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeStatusPropEnum = append(addAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeStatusPropEnum, v) + } +} + +const ( + + // AddAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + AddAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // AddAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + AddAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // AddAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + AddAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // AddAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + AddAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // AddAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + AddAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // AddAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + AddAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // AddAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + AddAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *AddAgentOKBodyQANPostgresqlPgstatmonitorAgent) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddAgentOKBodyQANPostgresqlPgstatmonitorAgent) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("addAgentOk"+"."+"qan_postgresql_pgstatmonitor_agent"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var addAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeLogLevelPropEnum []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 { + addAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeLogLevelPropEnum = append(addAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddAgentOKBodyQANPostgresqlPgstatmonitorAgent) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddAgentOKBodyQANPostgresqlPgstatmonitorAgent) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("addAgentOk"+"."+"qan_postgresql_pgstatmonitor_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add agent OK body QAN postgresql pgstatmonitor agent based on context it is used +func (o *AddAgentOKBodyQANPostgresqlPgstatmonitorAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddAgentOKBodyQANPostgresqlPgstatmonitorAgent) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddAgentOKBodyQANPostgresqlPgstatmonitorAgent) UnmarshalBinary(b []byte) error { + var res AddAgentOKBodyQANPostgresqlPgstatmonitorAgent + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddAgentOKBodyRDSExporter RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node metrics. +swagger:model AddAgentOKBodyRDSExporter +*/ +type AddAgentOKBodyRDSExporter 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. + // + // Status fields below. + 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). + // + // Metric collections flags below. + 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 add agent OK body RDS exporter +func (o *AddAgentOKBodyRDSExporter) 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 addAgentOkBodyRdsExporterTypeStatusPropEnum []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 { + addAgentOkBodyRdsExporterTypeStatusPropEnum = append(addAgentOkBodyRdsExporterTypeStatusPropEnum, v) + } +} + +const ( + + // AddAgentOKBodyRDSExporterStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" + AddAgentOKBodyRDSExporterStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" + + // AddAgentOKBodyRDSExporterStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" + AddAgentOKBodyRDSExporterStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" + + // AddAgentOKBodyRDSExporterStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" + AddAgentOKBodyRDSExporterStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" + + // AddAgentOKBodyRDSExporterStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" + AddAgentOKBodyRDSExporterStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" + + // AddAgentOKBodyRDSExporterStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" + AddAgentOKBodyRDSExporterStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" + + // AddAgentOKBodyRDSExporterStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" + AddAgentOKBodyRDSExporterStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" + + // AddAgentOKBodyRDSExporterStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" + AddAgentOKBodyRDSExporterStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" +) + +// prop value enum +func (o *AddAgentOKBodyRDSExporter) validateStatusEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyRdsExporterTypeStatusPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddAgentOKBodyRDSExporter) validateStatus(formats strfmt.Registry) error { + if swag.IsZero(o.Status) { // not required + return nil + } + + // value enum + if err := o.validateStatusEnum("addAgentOk"+"."+"rds_exporter"+"."+"status", "body", *o.Status); err != nil { + return err + } + + return nil +} + +var addAgentOkBodyRdsExporterTypeLogLevelPropEnum []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 { + addAgentOkBodyRdsExporterTypeLogLevelPropEnum = append(addAgentOkBodyRdsExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddAgentOKBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentOKBodyRDSExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddAgentOKBodyRDSExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentOKBodyRDSExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddAgentOKBodyRDSExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentOKBodyRDSExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddAgentOKBodyRDSExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentOKBodyRDSExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddAgentOKBodyRDSExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentOKBodyRDSExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddAgentOKBodyRDSExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentOKBodyRDSExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddAgentOKBodyRDSExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentOkBodyRdsExporterTypeLogLevelPropEnum, true); err != nil { return err } return nil @@ -2626,21 +4297,692 @@ func (o *AddAgentOKBodyRDSExporter) validateLogLevel(formats strfmt.Registry) er return nil } - // value enum - if err := o.validateLogLevelEnum("addAgentOk"+"."+"rds_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + // value enum + if err := o.validateLogLevelEnum("addAgentOk"+"."+"rds_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add agent OK body RDS exporter based on context it is used +func (o *AddAgentOKBodyRDSExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddAgentOKBodyRDSExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddAgentOKBodyRDSExporter) UnmarshalBinary(b []byte) error { + var res AddAgentOKBodyRDSExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddAgentParamsBodyAzureDatabaseExporter add agent params body azure database exporter +swagger:model AddAgentParamsBodyAzureDatabaseExporter +*/ +type AddAgentParamsBodyAzureDatabaseExporter struct { + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Node identifier. + NodeID string `json:"node_id,omitempty"` + + // Azure client ID + AzureClientID string `json:"azure_client_id,omitempty"` + + // Azure client secret + AzureClientSecret string `json:"azure_client_secret,omitempty"` + + // Azure tanant ID + AzureTenantID string `json:"azure_tenant_id,omitempty"` + + // Azure subscription ID + AzureSubscriptionID string `json:"azure_subscription_id,omitempty"` + + // Azure resource group. + AzureResourceGroup string `json:"azure_resource_group,omitempty"` + + // Azure 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"` + + // Skip connection check. + SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` + + // Enables push metrics mode for exporter. + PushMetrics bool `json:"push_metrics,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 add agent params body azure database exporter +func (o *AddAgentParamsBodyAzureDatabaseExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var addAgentParamsBodyAzureDatabaseExporterTypeLogLevelPropEnum []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 { + addAgentParamsBodyAzureDatabaseExporterTypeLogLevelPropEnum = append(addAgentParamsBodyAzureDatabaseExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddAgentParamsBodyAzureDatabaseExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentParamsBodyAzureDatabaseExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddAgentParamsBodyAzureDatabaseExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("body"+"."+"azure_database_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add agent params body azure database exporter based on context it is used +func (o *AddAgentParamsBodyAzureDatabaseExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddAgentParamsBodyAzureDatabaseExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddAgentParamsBodyAzureDatabaseExporter) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyAzureDatabaseExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddAgentParamsBodyExternalExporter add agent params body external exporter +swagger:model AddAgentParamsBodyExternalExporter +*/ +type AddAgentParamsBodyExternalExporter struct { + // The node identifier where this instance is run. + RunsOnNodeID string `json:"runs_on_node_id,omitempty"` + + // Service identifier. + ServiceID string `json:"service_id,omitempty"` + + // HTTP basic auth username for collecting metrics. + Username string `json:"username,omitempty"` + + // HTTP basic auth password for collecting metrics. + Password string `json:"password,omitempty"` + + // Scheme to generate URI to exporter metrics endpoints(default: http). + Scheme string `json:"scheme,omitempty"` + + // Path under which metrics are exposed, used to generate URI(default: /metrics). + MetricsPath string `json:"metrics_path,omitempty"` + + // Listen port for scraping metrics. + ListenPort int64 `json:"listen_port,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // Enables push metrics mode for exporter. + PushMetrics bool `json:"push_metrics,omitempty"` +} + +// Validate validates this add agent params body external exporter +func (o *AddAgentParamsBodyExternalExporter) Validate(formats strfmt.Registry) error { + return nil +} + +// ContextValidate validates this add agent params body external exporter based on context it is used +func (o *AddAgentParamsBodyExternalExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddAgentParamsBodyExternalExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddAgentParamsBodyExternalExporter) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyExternalExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddAgentParamsBodyMongodbExporter add agent params body mongodb exporter +swagger:model AddAgentParamsBodyMongodbExporter +*/ +type AddAgentParamsBodyMongodbExporter struct { + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Service identifier. + ServiceID string `json:"service_id,omitempty"` + + // MongoDB username for scraping metrics. + Username string `json:"username,omitempty"` + + // MongoDB password for scraping metrics. + Password string `json:"password,omitempty"` + + // Use TLS for database connections. + TLS bool `json:"tls,omitempty"` + + // Skip TLS certificate and hostname validation. + TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` + + // Client certificate and key. + TLSCertificateKey string `json:"tls_certificate_key,omitempty"` + + // Password for decrypting tls_certificate_key. + TLSCertificateKeyFilePassword string `json:"tls_certificate_key_file_password,omitempty"` + + // Certificate Authority certificate chain. + TLSCa string `json:"tls_ca,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // Skip connection check. + SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` + + // Enables push metrics mode for exporter. + PushMetrics bool `json:"push_metrics,omitempty"` + + // List of collector names to disable in this exporter. + DisableCollectors []string `json:"disable_collectors"` + + // Authentication mechanism. + // See https://docs.mongodb.com/manual/reference/connection-string/#mongodb-urioption-urioption.authMechanism + // for details. + AuthenticationMechanism string `json:"authentication_mechanism,omitempty"` + + // Authentication database. + AuthenticationDatabase string `json:"authentication_database,omitempty"` + + // Custom password for exporter endpoint /metrics. + AgentPassword string `json:"agent_password,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"` + + // 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 add agent params body mongodb exporter +func (o *AddAgentParamsBodyMongodbExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var addAgentParamsBodyMongodbExporterTypeLogLevelPropEnum []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 { + addAgentParamsBodyMongodbExporterTypeLogLevelPropEnum = append(addAgentParamsBodyMongodbExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddAgentParamsBodyMongodbExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentParamsBodyMongodbExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddAgentParamsBodyMongodbExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("body"+"."+"mongodb_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add agent params body mongodb exporter based on context it is used +func (o *AddAgentParamsBodyMongodbExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddAgentParamsBodyMongodbExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddAgentParamsBodyMongodbExporter) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyMongodbExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddAgentParamsBodyMysqldExporter add agent params body mysqld exporter +swagger:model AddAgentParamsBodyMysqldExporter +*/ +type AddAgentParamsBodyMysqldExporter struct { + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Service identifier. + ServiceID string `json:"service_id,omitempty"` + + // MySQL username for scraping metrics. + Username string `json:"username,omitempty"` + + // MySQL password for scraping metrics. + Password string `json:"password,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 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 `json:"tablestats_group_table_limit,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // Skip connection check. + SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` + + // Enables push metrics mode for exporter. + PushMetrics bool `json:"push_metrics,omitempty"` + + // List of collector names to disable in this exporter. + DisableCollectors []string `json:"disable_collectors"` + + // Custom password for exporter endpoint /metrics. + AgentPassword string `json:"agent_password,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 add agent params body mysqld exporter +func (o *AddAgentParamsBodyMysqldExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var addAgentParamsBodyMysqldExporterTypeLogLevelPropEnum []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 { + addAgentParamsBodyMysqldExporterTypeLogLevelPropEnum = append(addAgentParamsBodyMysqldExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddAgentParamsBodyMysqldExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentParamsBodyMysqldExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddAgentParamsBodyMysqldExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("body"+"."+"mysqld_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add agent params body mysqld exporter based on context it is used +func (o *AddAgentParamsBodyMysqldExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddAgentParamsBodyMysqldExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddAgentParamsBodyMysqldExporter) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyMysqldExporter + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *o = res + return nil +} + +/* +AddAgentParamsBodyNodeExporter add agent params body node exporter +swagger:model AddAgentParamsBodyNodeExporter +*/ +type AddAgentParamsBodyNodeExporter struct { + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` + + // Enables push metrics mode for exporter. + PushMetrics bool `json:"push_metrics,omitempty"` + + // List of collector names to disable in this exporter. + DisableCollectors []string `json:"disable_collectors"` + + // 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"` + + // Expose the node_exporter process on all public interfaces + ExposeExporter bool `json:"expose_exporter,omitempty"` +} + +// Validate validates this add agent params body node exporter +func (o *AddAgentParamsBodyNodeExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +var addAgentParamsBodyNodeExporterTypeLogLevelPropEnum []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 { + addAgentParamsBodyNodeExporterTypeLogLevelPropEnum = append(addAgentParamsBodyNodeExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddAgentParamsBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentParamsBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddAgentParamsBodyNodeExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentParamsBodyNodeExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddAgentParamsBodyNodeExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentParamsBodyNodeExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddAgentParamsBodyNodeExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentParamsBodyNodeExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddAgentParamsBodyNodeExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentParamsBodyNodeExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddAgentParamsBodyNodeExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentParamsBodyNodeExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddAgentParamsBodyNodeExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentParamsBodyNodeExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddAgentParamsBodyNodeExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("body"+"."+"node_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add agent params body node exporter based on context it is used +func (o *AddAgentParamsBodyNodeExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { + return nil +} + +// MarshalBinary interface implementation +func (o *AddAgentParamsBodyNodeExporter) MarshalBinary() ([]byte, error) { + if o == nil { + return nil, nil + } + return swag.WriteJSON(o) +} + +// UnmarshalBinary interface implementation +func (o *AddAgentParamsBodyNodeExporter) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyNodeExporter + if err := swag.ReadJSON(b, &res); err != nil { return err } + *o = res + return nil +} + +/* +AddAgentParamsBodyPMMAgent add agent params body PMM agent +swagger:model AddAgentParamsBodyPMMAgent +*/ +type AddAgentParamsBodyPMMAgent struct { + // Node identifier where this instance runs. + RunsOnNodeID string `json:"runs_on_node_id,omitempty"` + + // Custom user-assigned labels. + CustomLabels map[string]string `json:"custom_labels,omitempty"` +} +// Validate validates this add agent params body PMM agent +func (o *AddAgentParamsBodyPMMAgent) Validate(formats strfmt.Registry) error { return nil } -// ContextValidate validates this add agent OK body RDS exporter based on context it is used -func (o *AddAgentOKBodyRDSExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent params body PMM agent based on context it is used +func (o *AddAgentParamsBodyPMMAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddAgentOKBodyRDSExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentParamsBodyPMMAgent) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -2648,8 +4990,8 @@ func (o *AddAgentOKBodyRDSExporter) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddAgentOKBodyRDSExporter) UnmarshalBinary(b []byte) error { - var res AddAgentOKBodyRDSExporter +func (o *AddAgentParamsBodyPMMAgent) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyPMMAgent if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -2658,33 +5000,27 @@ func (o *AddAgentOKBodyRDSExporter) UnmarshalBinary(b []byte) error { } /* -AddAgentParamsBodyAzureDatabaseExporter add agent params body azure database exporter -swagger:model AddAgentParamsBodyAzureDatabaseExporter +AddAgentParamsBodyPostgresExporter add agent params body postgres exporter +swagger:model AddAgentParamsBodyPostgresExporter */ -type AddAgentParamsBodyAzureDatabaseExporter struct { +type AddAgentParamsBodyPostgresExporter struct { // The pmm-agent identifier which runs this instance. PMMAgentID string `json:"pmm_agent_id,omitempty"` - // Node identifier. - NodeID string `json:"node_id,omitempty"` - - // Azure client ID - AzureClientID string `json:"azure_client_id,omitempty"` - - // Azure client secret - AzureClientSecret string `json:"azure_client_secret,omitempty"` + // Service identifier. + ServiceID string `json:"service_id,omitempty"` - // Azure tanant ID - AzureTenantID string `json:"azure_tenant_id,omitempty"` + // PostgreSQL username for scraping metrics. + Username string `json:"username,omitempty"` - // Azure subscription ID - AzureSubscriptionID string `json:"azure_subscription_id,omitempty"` + // PostgreSQL password for scraping metrics. + Password string `json:"password,omitempty"` - // Azure resource group. - AzureResourceGroup string `json:"azure_resource_group,omitempty"` + // Use TLS for database connections. + TLS bool `json:"tls,omitempty"` - // Azure resource type (mysql, maria, postgres) - AzureDatabaseResourceType string `json:"azure_database_resource_type,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"` @@ -2695,15 +5031,36 @@ type AddAgentParamsBodyAzureDatabaseExporter struct { // Enables push metrics mode for exporter. PushMetrics bool `json:"push_metrics,omitempty"` + // List of collector names to disable in this exporter. + DisableCollectors []string `json:"disable_collectors"` + + // TLS CA certificate. + TLSCa string `json:"tls_ca,omitempty"` + + // TLS Certifcate. + TLSCert string `json:"tls_cert,omitempty"` + + // TLS Certificate Key. + TLSKey string `json:"tls_key,omitempty"` + + // Custom password for exporter endpoint /metrics. + AgentPassword string `json:"agent_password,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 add agent params body azure database exporter -func (o *AddAgentParamsBodyAzureDatabaseExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent params body postgres exporter +func (o *AddAgentParamsBodyPostgresExporter) Validate(formats strfmt.Registry) error { var res []error if err := o.validateLogLevel(formats); err != nil { @@ -2716,7 +5073,7 @@ func (o *AddAgentParamsBodyAzureDatabaseExporter) Validate(formats strfmt.Regist return nil } -var addAgentParamsBodyAzureDatabaseExporterTypeLogLevelPropEnum []interface{} +var addAgentParamsBodyPostgresExporterTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -2724,59 +5081,59 @@ func init() { panic(err) } for _, v := range res { - addAgentParamsBodyAzureDatabaseExporterTypeLogLevelPropEnum = append(addAgentParamsBodyAzureDatabaseExporterTypeLogLevelPropEnum, v) + addAgentParamsBodyPostgresExporterTypeLogLevelPropEnum = append(addAgentParamsBodyPostgresExporterTypeLogLevelPropEnum, v) } } const ( - // AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddAgentParamsBodyAzureDatabaseExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddAgentParamsBodyAzureDatabaseExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addAgentParamsBodyAzureDatabaseExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentParamsBodyPostgresExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentParamsBodyPostgresExporterTypeLogLevelPropEnum, true); err != nil { return err } return nil } -func (o *AddAgentParamsBodyAzureDatabaseExporter) validateLogLevel(formats strfmt.Registry) error { +func (o *AddAgentParamsBodyPostgresExporter) validateLogLevel(formats strfmt.Registry) error { if swag.IsZero(o.LogLevel) { // not required return nil } // value enum - if err := o.validateLogLevelEnum("body"+"."+"azure_database_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + if err := o.validateLogLevelEnum("body"+"."+"postgres_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { return err } return nil } -// ContextValidate validates this add agent params body azure database exporter based on context it is used -func (o *AddAgentParamsBodyAzureDatabaseExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent params body postgres exporter based on context it is used +func (o *AddAgentParamsBodyPostgresExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddAgentParamsBodyAzureDatabaseExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentParamsBodyPostgresExporter) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -2784,8 +5141,8 @@ func (o *AddAgentParamsBodyAzureDatabaseExporter) MarshalBinary() ([]byte, error } // UnmarshalBinary interface implementation -func (o *AddAgentParamsBodyAzureDatabaseExporter) UnmarshalBinary(b []byte) error { - var res AddAgentParamsBodyAzureDatabaseExporter +func (o *AddAgentParamsBodyPostgresExporter) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyPostgresExporter if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -2794,50 +5151,128 @@ func (o *AddAgentParamsBodyAzureDatabaseExporter) UnmarshalBinary(b []byte) erro } /* -AddAgentParamsBodyExternalExporter add agent params body external exporter -swagger:model AddAgentParamsBodyExternalExporter +AddAgentParamsBodyProxysqlExporter add agent params body proxysql exporter +swagger:model AddAgentParamsBodyProxysqlExporter */ -type AddAgentParamsBodyExternalExporter struct { - // The node identifier where this instance is run. - RunsOnNodeID string `json:"runs_on_node_id,omitempty"` +type AddAgentParamsBodyProxysqlExporter struct { + // The pmm-agent identifier which runs this instance. + PMMAgentID string `json:"pmm_agent_id,omitempty"` // Service identifier. ServiceID string `json:"service_id,omitempty"` - // HTTP basic auth username for collecting metrics. + // ProxySQL username for scraping metrics. Username string `json:"username,omitempty"` - // HTTP basic auth password for collecting metrics. + // ProxySQL password for scraping metrics. Password string `json:"password,omitempty"` - // Scheme to generate URI to exporter metrics endpoints(default: http). - Scheme string `json:"scheme,omitempty"` - - // Path under which metrics are exposed, used to generate URI(default: /metrics). - MetricsPath string `json:"metrics_path,omitempty"` + // Use TLS for database connections. + TLS bool `json:"tls,omitempty"` - // Listen port for scraping metrics. - ListenPort int64 `json:"listen_port,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"` + // Skip connection check. + SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` + // Enables push metrics mode for exporter. PushMetrics bool `json:"push_metrics,omitempty"` + + // List of collector names to disable in this exporter. + DisableCollectors []string `json:"disable_collectors"` + + // Custom password for exporter endpoint /metrics. + AgentPassword string `json:"agent_password,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 add agent params body external exporter -func (o *AddAgentParamsBodyExternalExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent params body proxysql exporter +func (o *AddAgentParamsBodyProxysqlExporter) Validate(formats strfmt.Registry) error { + var res []error + + if err := o.validateLogLevel(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } return nil } -// ContextValidate validates this add agent params body external exporter based on context it is used -func (o *AddAgentParamsBodyExternalExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +var addAgentParamsBodyProxysqlExporterTypeLogLevelPropEnum []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 { + addAgentParamsBodyProxysqlExporterTypeLogLevelPropEnum = append(addAgentParamsBodyProxysqlExporterTypeLogLevelPropEnum, v) + } +} + +const ( + + // AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + + // AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + + // AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + + // AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + + // AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + + // AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" +) + +// prop value enum +func (o *AddAgentParamsBodyProxysqlExporter) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentParamsBodyProxysqlExporterTypeLogLevelPropEnum, true); err != nil { + return err + } + return nil +} + +func (o *AddAgentParamsBodyProxysqlExporter) validateLogLevel(formats strfmt.Registry) error { + if swag.IsZero(o.LogLevel) { // not required + return nil + } + + // value enum + if err := o.validateLogLevelEnum("body"+"."+"proxysql_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + return err + } + + return nil +} + +// ContextValidate validates this add agent params body proxysql exporter based on context it is used +func (o *AddAgentParamsBodyProxysqlExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddAgentParamsBodyExternalExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentParamsBodyProxysqlExporter) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -2845,8 +5280,8 @@ func (o *AddAgentParamsBodyExternalExporter) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddAgentParamsBodyExternalExporter) UnmarshalBinary(b []byte) error { - var res AddAgentParamsBodyExternalExporter +func (o *AddAgentParamsBodyProxysqlExporter) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyProxysqlExporter if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -2855,20 +5290,20 @@ func (o *AddAgentParamsBodyExternalExporter) UnmarshalBinary(b []byte) error { } /* -AddAgentParamsBodyMongodbExporter add agent params body mongodb exporter -swagger:model AddAgentParamsBodyMongodbExporter +AddAgentParamsBodyQANMongodbProfilerAgent add agent params body QAN mongodb profiler agent +swagger:model AddAgentParamsBodyQANMongodbProfilerAgent */ -type AddAgentParamsBodyMongodbExporter struct { +type AddAgentParamsBodyQANMongodbProfilerAgent struct { // The pmm-agent identifier which runs this instance. PMMAgentID string `json:"pmm_agent_id,omitempty"` // Service identifier. ServiceID string `json:"service_id,omitempty"` - // MongoDB username for scraping metrics. + // MongoDB username for getting profile data. Username string `json:"username,omitempty"` - // MongoDB password for scraping metrics. + // MongoDB password for getting profile data. Password string `json:"password,omitempty"` // Use TLS for database connections. @@ -2886,18 +5321,15 @@ type AddAgentParamsBodyMongodbExporter struct { // Certificate Authority certificate chain. TLSCa string `json:"tls_ca,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"` // Skip connection check. SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` - // Enables push metrics mode for exporter. - PushMetrics bool `json:"push_metrics,omitempty"` - - // List of collector names to disable in this exporter. - DisableCollectors []string `json:"disable_collectors"` - // Authentication mechanism. // See https://docs.mongodb.com/manual/reference/connection-string/#mongodb-urioption-urioption.authMechanism // for details. @@ -2906,28 +5338,15 @@ type AddAgentParamsBodyMongodbExporter struct { // Authentication database. AuthenticationDatabase string `json:"authentication_database,omitempty"` - // Custom password for exporter endpoint /metrics. - AgentPassword string `json:"agent_password,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"` - // 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 add agent params body mongodb exporter -func (o *AddAgentParamsBodyMongodbExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent params body QAN mongodb profiler agent +func (o *AddAgentParamsBodyQANMongodbProfilerAgent) Validate(formats strfmt.Registry) error { var res []error if err := o.validateLogLevel(formats); err != nil { @@ -2940,7 +5359,7 @@ func (o *AddAgentParamsBodyMongodbExporter) Validate(formats strfmt.Registry) er return nil } -var addAgentParamsBodyMongodbExporterTypeLogLevelPropEnum []interface{} +var addAgentParamsBodyQanMongodbProfilerAgentTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -2948,59 +5367,59 @@ func init() { panic(err) } for _, v := range res { - addAgentParamsBodyMongodbExporterTypeLogLevelPropEnum = append(addAgentParamsBodyMongodbExporterTypeLogLevelPropEnum, v) + addAgentParamsBodyQanMongodbProfilerAgentTypeLogLevelPropEnum = append(addAgentParamsBodyQanMongodbProfilerAgentTypeLogLevelPropEnum, v) } } const ( - // AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentParamsBodyQANMongodbProfilerAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentParamsBodyQANMongodbProfilerAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentParamsBodyQANMongodbProfilerAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentParamsBodyQANMongodbProfilerAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentParamsBodyQANMongodbProfilerAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentParamsBodyQANMongodbProfilerAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentParamsBodyQANMongodbProfilerAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentParamsBodyQANMongodbProfilerAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentParamsBodyQANMongodbProfilerAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentParamsBodyQANMongodbProfilerAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddAgentParamsBodyMongodbExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentParamsBodyQANMongodbProfilerAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentParamsBodyQANMongodbProfilerAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddAgentParamsBodyMongodbExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addAgentParamsBodyMongodbExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentParamsBodyQANMongodbProfilerAgent) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentParamsBodyQanMongodbProfilerAgentTypeLogLevelPropEnum, true); err != nil { return err } return nil } -func (o *AddAgentParamsBodyMongodbExporter) validateLogLevel(formats strfmt.Registry) error { +func (o *AddAgentParamsBodyQANMongodbProfilerAgent) validateLogLevel(formats strfmt.Registry) error { if swag.IsZero(o.LogLevel) { // not required return nil } // value enum - if err := o.validateLogLevelEnum("body"+"."+"mongodb_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + if err := o.validateLogLevelEnum("body"+"."+"qan_mongodb_profiler_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { return err } return nil } -// ContextValidate validates this add agent params body mongodb exporter based on context it is used -func (o *AddAgentParamsBodyMongodbExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent params body QAN mongodb profiler agent based on context it is used +func (o *AddAgentParamsBodyQANMongodbProfilerAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddAgentParamsBodyMongodbExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentParamsBodyQANMongodbProfilerAgent) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -3008,8 +5427,8 @@ func (o *AddAgentParamsBodyMongodbExporter) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddAgentParamsBodyMongodbExporter) UnmarshalBinary(b []byte) error { - var res AddAgentParamsBodyMongodbExporter +func (o *AddAgentParamsBodyQANMongodbProfilerAgent) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyQANMongodbProfilerAgent if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -3018,20 +5437,20 @@ func (o *AddAgentParamsBodyMongodbExporter) UnmarshalBinary(b []byte) error { } /* -AddAgentParamsBodyMysqldExporter add agent params body mysqld exporter -swagger:model AddAgentParamsBodyMysqldExporter +AddAgentParamsBodyQANMysqlPerfschemaAgent add agent params body QAN mysql perfschema agent +swagger:model AddAgentParamsBodyQANMysqlPerfschemaAgent */ -type AddAgentParamsBodyMysqldExporter struct { +type AddAgentParamsBodyQANMysqlPerfschemaAgent struct { // The pmm-agent identifier which runs this instance. PMMAgentID string `json:"pmm_agent_id,omitempty"` // Service identifier. ServiceID string `json:"service_id,omitempty"` - // MySQL username for scraping metrics. + // MySQL username for getting performance data. Username string `json:"username,omitempty"` - // MySQL password for scraping metrics. + // MySQL password for getting performance data. Password string `json:"password,omitempty"` // Use TLS for database connections. @@ -3049,10 +5468,11 @@ type AddAgentParamsBodyMysqldExporter struct { // Password for decrypting tls_cert. TLSKey string `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 `json:"tablestats_group_table_limit,omitempty"` + // Limit query length in QAN (default: server-defined; -1: no limit) + MaxQueryLength int32 `json:"max_query_length,omitempty"` + + // Disable query examples. + DisableQueryExamples bool `json:"disable_query_examples,omitempty"` // Custom user-assigned labels. CustomLabels map[string]string `json:"custom_labels,omitempty"` @@ -3060,27 +5480,18 @@ type AddAgentParamsBodyMysqldExporter struct { // Skip connection check. SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` - // Enables push metrics mode for exporter. - PushMetrics bool `json:"push_metrics,omitempty"` - - // List of collector names to disable in this exporter. - DisableCollectors []string `json:"disable_collectors"` - - // Custom password for exporter endpoint /metrics. - AgentPassword string `json:"agent_password,omitempty"` + // Disable parsing comments from queries and showing them in QAN. + DisableCommentsParsing bool `json:"disable_comments_parsing,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 add agent params body mysqld exporter -func (o *AddAgentParamsBodyMysqldExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent params body QAN mysql perfschema agent +func (o *AddAgentParamsBodyQANMysqlPerfschemaAgent) Validate(formats strfmt.Registry) error { var res []error if err := o.validateLogLevel(formats); err != nil { @@ -3093,7 +5504,7 @@ func (o *AddAgentParamsBodyMysqldExporter) Validate(formats strfmt.Registry) err return nil } -var addAgentParamsBodyMysqldExporterTypeLogLevelPropEnum []interface{} +var addAgentParamsBodyQanMysqlPerfschemaAgentTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -3101,59 +5512,59 @@ func init() { panic(err) } for _, v := range res { - addAgentParamsBodyMysqldExporterTypeLogLevelPropEnum = append(addAgentParamsBodyMysqldExporterTypeLogLevelPropEnum, v) + addAgentParamsBodyQanMysqlPerfschemaAgentTypeLogLevelPropEnum = append(addAgentParamsBodyQanMysqlPerfschemaAgentTypeLogLevelPropEnum, v) } } const ( - // AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentParamsBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentParamsBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentParamsBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentParamsBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentParamsBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentParamsBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentParamsBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentParamsBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentParamsBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentParamsBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddAgentParamsBodyMysqldExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentParamsBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentParamsBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddAgentParamsBodyMysqldExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addAgentParamsBodyMysqldExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentParamsBodyQANMysqlPerfschemaAgent) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentParamsBodyQanMysqlPerfschemaAgentTypeLogLevelPropEnum, true); err != nil { return err } return nil } -func (o *AddAgentParamsBodyMysqldExporter) validateLogLevel(formats strfmt.Registry) error { +func (o *AddAgentParamsBodyQANMysqlPerfschemaAgent) validateLogLevel(formats strfmt.Registry) error { if swag.IsZero(o.LogLevel) { // not required return nil } // value enum - if err := o.validateLogLevelEnum("body"+"."+"mysqld_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + if err := o.validateLogLevelEnum("body"+"."+"qan_mysql_perfschema_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { return err } return nil } -// ContextValidate validates this add agent params body mysqld exporter based on context it is used -func (o *AddAgentParamsBodyMysqldExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent params body QAN mysql perfschema agent based on context it is used +func (o *AddAgentParamsBodyQANMysqlPerfschemaAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddAgentParamsBodyMysqldExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentParamsBodyQANMysqlPerfschemaAgent) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -3161,8 +5572,8 @@ func (o *AddAgentParamsBodyMysqldExporter) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddAgentParamsBodyMysqldExporter) UnmarshalBinary(b []byte) error { - var res AddAgentParamsBodyMysqldExporter +func (o *AddAgentParamsBodyQANMysqlPerfschemaAgent) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyQANMysqlPerfschemaAgent if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -3171,34 +5582,65 @@ func (o *AddAgentParamsBodyMysqldExporter) UnmarshalBinary(b []byte) error { } /* -AddAgentParamsBodyNodeExporter add agent params body node exporter -swagger:model AddAgentParamsBodyNodeExporter +AddAgentParamsBodyQANMysqlSlowlogAgent add agent params body QAN mysql slowlog agent +swagger:model AddAgentParamsBodyQANMysqlSlowlogAgent */ -type AddAgentParamsBodyNodeExporter struct { +type AddAgentParamsBodyQANMysqlSlowlogAgent struct { // The pmm-agent identifier which runs this instance. PMMAgentID string `json:"pmm_agent_id,omitempty"` + // Service identifier. + ServiceID string `json:"service_id,omitempty"` + + // MySQL username for getting slowlog data. + Username string `json:"username,omitempty"` + + // MySQL password for getting slowlog data. + Password string `json:"password,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"` + + // Limit query length in QAN (default: server-defined; -1: no limit). + MaxQueryLength int32 `json:"max_query_length,omitempty"` + + // Disable query examples. + DisableQueryExamples bool `json:"disable_query_examples,omitempty"` + + // Rotate slowlog file at this size if > 0. + // Use zero or negative value to disable rotation. + MaxSlowlogFileSize string `json:"max_slowlog_file_size,omitempty"` + // Custom user-assigned labels. CustomLabels map[string]string `json:"custom_labels,omitempty"` - // Enables push metrics mode for exporter. - PushMetrics bool `json:"push_metrics,omitempty"` + // Skip connection check. + SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` - // List of collector names to disable in this exporter. - DisableCollectors []string `json:"disable_collectors"` + // Disable parsing comments from queries and showing them in QAN. + DisableCommentsParsing bool `json:"disable_comments_parsing,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"` - - // Expose the node_exporter process on all public interfaces - ExposeExporter bool `json:"expose_exporter,omitempty"` } -// Validate validates this add agent params body node exporter -func (o *AddAgentParamsBodyNodeExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent params body QAN mysql slowlog agent +func (o *AddAgentParamsBodyQANMysqlSlowlogAgent) Validate(formats strfmt.Registry) error { var res []error if err := o.validateLogLevel(formats); err != nil { @@ -3211,7 +5653,7 @@ func (o *AddAgentParamsBodyNodeExporter) Validate(formats strfmt.Registry) error return nil } -var addAgentParamsBodyNodeExporterTypeLogLevelPropEnum []interface{} +var addAgentParamsBodyQanMysqlSlowlogAgentTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -3219,59 +5661,59 @@ func init() { panic(err) } for _, v := range res { - addAgentParamsBodyNodeExporterTypeLogLevelPropEnum = append(addAgentParamsBodyNodeExporterTypeLogLevelPropEnum, v) + addAgentParamsBodyQanMysqlSlowlogAgentTypeLogLevelPropEnum = append(addAgentParamsBodyQanMysqlSlowlogAgentTypeLogLevelPropEnum, v) } } const ( - // AddAgentParamsBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddAgentParamsBodyNodeExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentParamsBodyQANMysqlSlowlogAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentParamsBodyQANMysqlSlowlogAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddAgentParamsBodyNodeExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddAgentParamsBodyNodeExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentParamsBodyQANMysqlSlowlogAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentParamsBodyQANMysqlSlowlogAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddAgentParamsBodyNodeExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddAgentParamsBodyNodeExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentParamsBodyQANMysqlSlowlogAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentParamsBodyQANMysqlSlowlogAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddAgentParamsBodyNodeExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddAgentParamsBodyNodeExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentParamsBodyQANMysqlSlowlogAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentParamsBodyQANMysqlSlowlogAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddAgentParamsBodyNodeExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddAgentParamsBodyNodeExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentParamsBodyQANMysqlSlowlogAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentParamsBodyQANMysqlSlowlogAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddAgentParamsBodyNodeExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddAgentParamsBodyNodeExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentParamsBodyQANMysqlSlowlogAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentParamsBodyQANMysqlSlowlogAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddAgentParamsBodyNodeExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addAgentParamsBodyNodeExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentParamsBodyQANMysqlSlowlogAgent) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentParamsBodyQanMysqlSlowlogAgentTypeLogLevelPropEnum, true); err != nil { return err } return nil } -func (o *AddAgentParamsBodyNodeExporter) validateLogLevel(formats strfmt.Registry) error { +func (o *AddAgentParamsBodyQANMysqlSlowlogAgent) validateLogLevel(formats strfmt.Registry) error { if swag.IsZero(o.LogLevel) { // not required return nil } // value enum - if err := o.validateLogLevelEnum("body"+"."+"node_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + if err := o.validateLogLevelEnum("body"+"."+"qan_mysql_slowlog_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { return err } return nil } -// ContextValidate validates this add agent params body node exporter based on context it is used -func (o *AddAgentParamsBodyNodeExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent params body QAN mysql slowlog agent based on context it is used +func (o *AddAgentParamsBodyQANMysqlSlowlogAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddAgentParamsBodyNodeExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentParamsBodyQANMysqlSlowlogAgent) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -3279,8 +5721,8 @@ func (o *AddAgentParamsBodyNodeExporter) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddAgentParamsBodyNodeExporter) UnmarshalBinary(b []byte) error { - var res AddAgentParamsBodyNodeExporter +func (o *AddAgentParamsBodyQANMysqlSlowlogAgent) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyQANMysqlSlowlogAgent if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -3289,26 +5731,26 @@ func (o *AddAgentParamsBodyNodeExporter) UnmarshalBinary(b []byte) error { } /* -AddAgentParamsBodyPostgresExporter add agent params body postgres exporter -swagger:model AddAgentParamsBodyPostgresExporter +AddAgentParamsBodyQANPostgresqlPgstatementsAgent add agent params body QAN postgresql pgstatements agent +swagger:model AddAgentParamsBodyQANPostgresqlPgstatementsAgent */ -type AddAgentParamsBodyPostgresExporter struct { +type AddAgentParamsBodyQANPostgresqlPgstatementsAgent struct { // The pmm-agent identifier which runs this instance. PMMAgentID string `json:"pmm_agent_id,omitempty"` // Service identifier. ServiceID string `json:"service_id,omitempty"` - // PostgreSQL username for scraping metrics. + // PostgreSQL username for getting pg stat statements data. Username string `json:"username,omitempty"` - // PostgreSQL password for scraping metrics. + // PostgreSQL password for getting pg stat statements data. Password string `json:"password,omitempty"` // Use TLS for database connections. TLS bool `json:"tls,omitempty"` - // Skip TLS certificate and hostname validation. Uses sslmode=required instead of verify-full. + // Skip TLS certificate and hostname validation. TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` // Custom user-assigned labels. @@ -3317,11 +5759,11 @@ type AddAgentParamsBodyPostgresExporter struct { // Skip connection check. SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` - // Enables push metrics mode for exporter. - PushMetrics bool `json:"push_metrics,omitempty"` + // Disable parsing comments from queries and showing them in QAN. + DisableCommentsParsing bool `json:"disable_comments_parsing,omitempty"` - // List of collector names to disable in this exporter. - DisableCollectors []string `json:"disable_collectors"` + // Limit query length in QAN (default: server-defined; -1: no limit). + MaxQueryLength int32 `json:"max_query_length,omitempty"` // TLS CA certificate. TLSCa string `json:"tls_ca,omitempty"` @@ -3332,24 +5774,15 @@ type AddAgentParamsBodyPostgresExporter struct { // TLS Certificate Key. TLSKey string `json:"tls_key,omitempty"` - // Custom password for exporter endpoint /metrics. - AgentPassword string `json:"agent_password,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 add agent params body postgres exporter -func (o *AddAgentParamsBodyPostgresExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent params body QAN postgresql pgstatements agent +func (o *AddAgentParamsBodyQANPostgresqlPgstatementsAgent) Validate(formats strfmt.Registry) error { var res []error if err := o.validateLogLevel(formats); err != nil { @@ -3362,7 +5795,7 @@ func (o *AddAgentParamsBodyPostgresExporter) Validate(formats strfmt.Registry) e return nil } -var addAgentParamsBodyPostgresExporterTypeLogLevelPropEnum []interface{} +var addAgentParamsBodyQanPostgresqlPgstatementsAgentTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -3370,59 +5803,59 @@ func init() { panic(err) } for _, v := range res { - addAgentParamsBodyPostgresExporterTypeLogLevelPropEnum = append(addAgentParamsBodyPostgresExporterTypeLogLevelPropEnum, v) + addAgentParamsBodyQanPostgresqlPgstatementsAgentTypeLogLevelPropEnum = append(addAgentParamsBodyQanPostgresqlPgstatementsAgentTypeLogLevelPropEnum, v) } } const ( - // AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentParamsBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentParamsBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentParamsBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentParamsBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentParamsBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentParamsBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentParamsBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentParamsBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentParamsBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentParamsBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddAgentParamsBodyPostgresExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentParamsBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentParamsBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddAgentParamsBodyPostgresExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addAgentParamsBodyPostgresExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentParamsBodyQANPostgresqlPgstatementsAgent) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentParamsBodyQanPostgresqlPgstatementsAgentTypeLogLevelPropEnum, true); err != nil { return err } return nil } -func (o *AddAgentParamsBodyPostgresExporter) validateLogLevel(formats strfmt.Registry) error { +func (o *AddAgentParamsBodyQANPostgresqlPgstatementsAgent) validateLogLevel(formats strfmt.Registry) error { if swag.IsZero(o.LogLevel) { // not required return nil } // value enum - if err := o.validateLogLevelEnum("body"+"."+"postgres_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + if err := o.validateLogLevelEnum("body"+"."+"qan_postgresql_pgstatements_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { return err } return nil } -// ContextValidate validates this add agent params body postgres exporter based on context it is used -func (o *AddAgentParamsBodyPostgresExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent params body QAN postgresql pgstatements agent based on context it is used +func (o *AddAgentParamsBodyQANPostgresqlPgstatementsAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddAgentParamsBodyPostgresExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentParamsBodyQANPostgresqlPgstatementsAgent) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -3430,8 +5863,8 @@ func (o *AddAgentParamsBodyPostgresExporter) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddAgentParamsBodyPostgresExporter) UnmarshalBinary(b []byte) error { - var res AddAgentParamsBodyPostgresExporter +func (o *AddAgentParamsBodyQANPostgresqlPgstatementsAgent) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyQANPostgresqlPgstatementsAgent if err := swag.ReadJSON(b, &res); err != nil { return err } @@ -3440,20 +5873,20 @@ func (o *AddAgentParamsBodyPostgresExporter) UnmarshalBinary(b []byte) error { } /* -AddAgentParamsBodyProxysqlExporter add agent params body proxysql exporter -swagger:model AddAgentParamsBodyProxysqlExporter +AddAgentParamsBodyQANPostgresqlPgstatmonitorAgent add agent params body QAN postgresql pgstatmonitor agent +swagger:model AddAgentParamsBodyQANPostgresqlPgstatmonitorAgent */ -type AddAgentParamsBodyProxysqlExporter struct { +type AddAgentParamsBodyQANPostgresqlPgstatmonitorAgent struct { // The pmm-agent identifier which runs this instance. PMMAgentID string `json:"pmm_agent_id,omitempty"` // Service identifier. ServiceID string `json:"service_id,omitempty"` - // ProxySQL username for scraping metrics. + // PostgreSQL username for getting pg stat monitor data. Username string `json:"username,omitempty"` - // ProxySQL password for scraping metrics. + // PostgreSQL password for getting pg stat monitor data. Password string `json:"password,omitempty"` // Use TLS for database connections. @@ -3462,33 +5895,39 @@ type AddAgentParamsBodyProxysqlExporter struct { // 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"` + + // Disable query examples. + DisableQueryExamples bool `json:"disable_query_examples,omitempty"` + // Custom user-assigned labels. CustomLabels map[string]string `json:"custom_labels,omitempty"` // Skip connection check. SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` - // Enables push metrics mode for exporter. - PushMetrics bool `json:"push_metrics,omitempty"` + // Disable parsing comments from queries and showing them in QAN. + DisableCommentsParsing bool `json:"disable_comments_parsing,omitempty"` - // List of collector names to disable in this exporter. - DisableCollectors []string `json:"disable_collectors"` + // TLS CA certificate. + TLSCa string `json:"tls_ca,omitempty"` - // Custom password for exporter endpoint /metrics. - AgentPassword string `json:"agent_password,omitempty"` + // TLS Certifcate. + TLSCert string `json:"tls_cert,omitempty"` + + // TLS Certificate Key. + TLSKey string `json:"tls_key,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 add agent params body proxysql exporter -func (o *AddAgentParamsBodyProxysqlExporter) Validate(formats strfmt.Registry) error { +// Validate validates this add agent params body QAN postgresql pgstatmonitor agent +func (o *AddAgentParamsBodyQANPostgresqlPgstatmonitorAgent) Validate(formats strfmt.Registry) error { var res []error if err := o.validateLogLevel(formats); err != nil { @@ -3501,7 +5940,7 @@ func (o *AddAgentParamsBodyProxysqlExporter) Validate(formats strfmt.Registry) e return nil } -var addAgentParamsBodyProxysqlExporterTypeLogLevelPropEnum []interface{} +var addAgentParamsBodyQanPostgresqlPgstatmonitorAgentTypeLogLevelPropEnum []interface{} func init() { var res []string @@ -3509,59 +5948,59 @@ func init() { panic(err) } for _, v := range res { - addAgentParamsBodyProxysqlExporterTypeLogLevelPropEnum = append(addAgentParamsBodyProxysqlExporterTypeLogLevelPropEnum, v) + addAgentParamsBodyQanPostgresqlPgstatmonitorAgentTypeLogLevelPropEnum = append(addAgentParamsBodyQanPostgresqlPgstatmonitorAgentTypeLogLevelPropEnum, v) } } const ( - // AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" + // AddAgentParamsBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" + AddAgentParamsBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - // AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" + // AddAgentParamsBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" + AddAgentParamsBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - // AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" + // AddAgentParamsBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" + AddAgentParamsBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - // AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" + // AddAgentParamsBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" + AddAgentParamsBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - // AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" + // AddAgentParamsBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" + AddAgentParamsBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - // AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddAgentParamsBodyProxysqlExporterLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" + // AddAgentParamsBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" + AddAgentParamsBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" ) // prop value enum -func (o *AddAgentParamsBodyProxysqlExporter) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addAgentParamsBodyProxysqlExporterTypeLogLevelPropEnum, true); err != nil { +func (o *AddAgentParamsBodyQANPostgresqlPgstatmonitorAgent) validateLogLevelEnum(path, location string, value string) error { + if err := validate.EnumCase(path, location, value, addAgentParamsBodyQanPostgresqlPgstatmonitorAgentTypeLogLevelPropEnum, true); err != nil { return err } return nil } -func (o *AddAgentParamsBodyProxysqlExporter) validateLogLevel(formats strfmt.Registry) error { +func (o *AddAgentParamsBodyQANPostgresqlPgstatmonitorAgent) validateLogLevel(formats strfmt.Registry) error { if swag.IsZero(o.LogLevel) { // not required return nil } // value enum - if err := o.validateLogLevelEnum("body"+"."+"proxysql_exporter"+"."+"log_level", "body", *o.LogLevel); err != nil { + if err := o.validateLogLevelEnum("body"+"."+"qan_postgresql_pgstatmonitor_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { return err } return nil } -// ContextValidate validates this add agent params body proxysql exporter based on context it is used -func (o *AddAgentParamsBodyProxysqlExporter) ContextValidate(ctx context.Context, formats strfmt.Registry) error { +// ContextValidate validates this add agent params body QAN postgresql pgstatmonitor agent based on context it is used +func (o *AddAgentParamsBodyQANPostgresqlPgstatmonitorAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { return nil } // MarshalBinary interface implementation -func (o *AddAgentParamsBodyProxysqlExporter) MarshalBinary() ([]byte, error) { +func (o *AddAgentParamsBodyQANPostgresqlPgstatmonitorAgent) MarshalBinary() ([]byte, error) { if o == nil { return nil, nil } @@ -3569,8 +6008,8 @@ func (o *AddAgentParamsBodyProxysqlExporter) MarshalBinary() ([]byte, error) { } // UnmarshalBinary interface implementation -func (o *AddAgentParamsBodyProxysqlExporter) UnmarshalBinary(b []byte) error { - var res AddAgentParamsBodyProxysqlExporter +func (o *AddAgentParamsBodyQANPostgresqlPgstatmonitorAgent) UnmarshalBinary(b []byte) error { + var res AddAgentParamsBodyQANPostgresqlPgstatmonitorAgent if err := swag.ReadJSON(b, &res); err != nil { return err } diff --git a/api/inventory/v1/json/client/agents_service/add_pmm_agent_parameters.go b/api/inventory/v1/json/client/agents_service/add_pmm_agent_parameters.go deleted file mode 100644 index 35bd619db7..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_pmm_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" -) - -// NewAddPMMAgentParams creates a new AddPMMAgentParams 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 NewAddPMMAgentParams() *AddPMMAgentParams { - return &AddPMMAgentParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewAddPMMAgentParamsWithTimeout creates a new AddPMMAgentParams object -// with the ability to set a timeout on a request. -func NewAddPMMAgentParamsWithTimeout(timeout time.Duration) *AddPMMAgentParams { - return &AddPMMAgentParams{ - timeout: timeout, - } -} - -// NewAddPMMAgentParamsWithContext creates a new AddPMMAgentParams object -// with the ability to set a context for a request. -func NewAddPMMAgentParamsWithContext(ctx context.Context) *AddPMMAgentParams { - return &AddPMMAgentParams{ - Context: ctx, - } -} - -// NewAddPMMAgentParamsWithHTTPClient creates a new AddPMMAgentParams object -// with the ability to set a custom HTTPClient for a request. -func NewAddPMMAgentParamsWithHTTPClient(client *http.Client) *AddPMMAgentParams { - return &AddPMMAgentParams{ - HTTPClient: client, - } -} - -/* -AddPMMAgentParams contains all the parameters to send to the API endpoint - - for the add PMM agent operation. - - Typically these are written to a http.Request. -*/ -type AddPMMAgentParams struct { - // Body. - Body AddPMMAgentBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the add PMM agent params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddPMMAgentParams) WithDefaults() *AddPMMAgentParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the add PMM agent params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddPMMAgentParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the add PMM agent params -func (o *AddPMMAgentParams) WithTimeout(timeout time.Duration) *AddPMMAgentParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the add PMM agent params -func (o *AddPMMAgentParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the add PMM agent params -func (o *AddPMMAgentParams) WithContext(ctx context.Context) *AddPMMAgentParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the add PMM agent params -func (o *AddPMMAgentParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the add PMM agent params -func (o *AddPMMAgentParams) WithHTTPClient(client *http.Client) *AddPMMAgentParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the add PMM agent params -func (o *AddPMMAgentParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the add PMM agent params -func (o *AddPMMAgentParams) WithBody(body AddPMMAgentBody) *AddPMMAgentParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the add PMM agent params -func (o *AddPMMAgentParams) SetBody(body AddPMMAgentBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *AddPMMAgentParams) 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/add_pmm_agent_responses.go b/api/inventory/v1/json/client/agents_service/add_pmm_agent_responses.go deleted file mode 100644 index cc9081ec65..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_pmm_agent_responses.go +++ /dev/null @@ -1,440 +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" -) - -// AddPMMAgentReader is a Reader for the AddPMMAgent structure. -type AddPMMAgentReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *AddPMMAgentReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewAddPMMAgentOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewAddPMMAgentDefault(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 - } -} - -// NewAddPMMAgentOK creates a AddPMMAgentOK with default headers values -func NewAddPMMAgentOK() *AddPMMAgentOK { - return &AddPMMAgentOK{} -} - -/* -AddPMMAgentOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type AddPMMAgentOK struct { - Payload *AddPMMAgentOKBody -} - -func (o *AddPMMAgentOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddPMMAgent][%d] addPmmAgentOk %+v", 200, o.Payload) -} - -func (o *AddPMMAgentOK) GetPayload() *AddPMMAgentOKBody { - return o.Payload -} - -func (o *AddPMMAgentOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddPMMAgentOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewAddPMMAgentDefault creates a AddPMMAgentDefault with default headers values -func NewAddPMMAgentDefault(code int) *AddPMMAgentDefault { - return &AddPMMAgentDefault{ - _statusCode: code, - } -} - -/* -AddPMMAgentDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type AddPMMAgentDefault struct { - _statusCode int - - Payload *AddPMMAgentDefaultBody -} - -// Code gets the status code for the add PMM agent default response -func (o *AddPMMAgentDefault) Code() int { - return o._statusCode -} - -func (o *AddPMMAgentDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddPMMAgent][%d] AddPMMAgent default %+v", o._statusCode, o.Payload) -} - -func (o *AddPMMAgentDefault) GetPayload() *AddPMMAgentDefaultBody { - return o.Payload -} - -func (o *AddPMMAgentDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddPMMAgentDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -AddPMMAgentBody add PMM agent body -swagger:model AddPMMAgentBody -*/ -type AddPMMAgentBody struct { - // Node identifier where this instance runs. - RunsOnNodeID string `json:"runs_on_node_id,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` -} - -// Validate validates this add PMM agent body -func (o *AddPMMAgentBody) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this add PMM agent body based on context it is used -func (o *AddPMMAgentBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddPMMAgentBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddPMMAgentBody) UnmarshalBinary(b []byte) error { - var res AddPMMAgentBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddPMMAgentDefaultBody add PMM agent default body -swagger:model AddPMMAgentDefaultBody -*/ -type AddPMMAgentDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*AddPMMAgentDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this add PMM agent default body -func (o *AddPMMAgentDefaultBody) 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 *AddPMMAgentDefaultBody) 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("AddPMMAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddPMMAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this add PMM agent default body based on the context it is used -func (o *AddPMMAgentDefaultBody) 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 *AddPMMAgentDefaultBody) 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("AddPMMAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddPMMAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddPMMAgentDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddPMMAgentDefaultBody) UnmarshalBinary(b []byte) error { - var res AddPMMAgentDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddPMMAgentDefaultBodyDetailsItems0 add PMM agent default body details items0 -swagger:model AddPMMAgentDefaultBodyDetailsItems0 -*/ -type AddPMMAgentDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this add PMM agent default body details items0 -func (o *AddPMMAgentDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this add PMM agent default body details items0 based on context it is used -func (o *AddPMMAgentDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddPMMAgentDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddPMMAgentDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res AddPMMAgentDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddPMMAgentOKBody add PMM agent OK body -swagger:model AddPMMAgentOKBody -*/ -type AddPMMAgentOKBody struct { - // pmm agent - PMMAgent *AddPMMAgentOKBodyPMMAgent `json:"pmm_agent,omitempty"` -} - -// Validate validates this add PMM agent OK body -func (o *AddPMMAgentOKBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validatePMMAgent(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *AddPMMAgentOKBody) validatePMMAgent(formats strfmt.Registry) error { - if swag.IsZero(o.PMMAgent) { // not required - return nil - } - - if o.PMMAgent != nil { - if err := o.PMMAgent.Validate(formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("addPmmAgentOk" + "." + "pmm_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addPmmAgentOk" + "." + "pmm_agent") - } - return err - } - } - - return nil -} - -// ContextValidate validate this add PMM agent OK body based on the context it is used -func (o *AddPMMAgentOKBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - var res []error - - if err := o.contextValidatePMMAgent(ctx, formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -func (o *AddPMMAgentOKBody) contextValidatePMMAgent(ctx context.Context, formats strfmt.Registry) error { - if o.PMMAgent != nil { - if err := o.PMMAgent.ContextValidate(ctx, formats); err != nil { - if ve, ok := err.(*errors.Validation); ok { - return ve.ValidateName("addPmmAgentOk" + "." + "pmm_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addPmmAgentOk" + "." + "pmm_agent") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddPMMAgentOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddPMMAgentOKBody) UnmarshalBinary(b []byte) error { - var res AddPMMAgentOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddPMMAgentOKBodyPMMAgent PMMAgent runs on Generic or Container Node. -swagger:model AddPMMAgentOKBodyPMMAgent -*/ -type AddPMMAgentOKBodyPMMAgent 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"` - - // Custom user-assigned labels. - // - // Status fields below. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // True if Agent is running and connected to pmm-managed. - Connected bool `json:"connected,omitempty"` - - // Path to exec process. - ProcessExecPath string `json:"process_exec_path,omitempty"` -} - -// Validate validates this add PMM agent OK body PMM agent -func (o *AddPMMAgentOKBodyPMMAgent) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this add PMM agent OK body PMM agent based on context it is used -func (o *AddPMMAgentOKBodyPMMAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddPMMAgentOKBodyPMMAgent) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddPMMAgentOKBodyPMMAgent) UnmarshalBinary(b []byte) error { - var res AddPMMAgentOKBodyPMMAgent - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/add_qan_mongo_db_profiler_agent_parameters.go b/api/inventory/v1/json/client/agents_service/add_qan_mongo_db_profiler_agent_parameters.go deleted file mode 100644 index c82f14020a..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_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" -) - -// NewAddQANMongoDBProfilerAgentParams creates a new AddQANMongoDBProfilerAgentParams 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 NewAddQANMongoDBProfilerAgentParams() *AddQANMongoDBProfilerAgentParams { - return &AddQANMongoDBProfilerAgentParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewAddQANMongoDBProfilerAgentParamsWithTimeout creates a new AddQANMongoDBProfilerAgentParams object -// with the ability to set a timeout on a request. -func NewAddQANMongoDBProfilerAgentParamsWithTimeout(timeout time.Duration) *AddQANMongoDBProfilerAgentParams { - return &AddQANMongoDBProfilerAgentParams{ - timeout: timeout, - } -} - -// NewAddQANMongoDBProfilerAgentParamsWithContext creates a new AddQANMongoDBProfilerAgentParams object -// with the ability to set a context for a request. -func NewAddQANMongoDBProfilerAgentParamsWithContext(ctx context.Context) *AddQANMongoDBProfilerAgentParams { - return &AddQANMongoDBProfilerAgentParams{ - Context: ctx, - } -} - -// NewAddQANMongoDBProfilerAgentParamsWithHTTPClient creates a new AddQANMongoDBProfilerAgentParams object -// with the ability to set a custom HTTPClient for a request. -func NewAddQANMongoDBProfilerAgentParamsWithHTTPClient(client *http.Client) *AddQANMongoDBProfilerAgentParams { - return &AddQANMongoDBProfilerAgentParams{ - HTTPClient: client, - } -} - -/* -AddQANMongoDBProfilerAgentParams contains all the parameters to send to the API endpoint - - for the add QAN mongo DB profiler agent operation. - - Typically these are written to a http.Request. -*/ -type AddQANMongoDBProfilerAgentParams struct { - // Body. - Body AddQANMongoDBProfilerAgentBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the add QAN mongo DB profiler agent params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddQANMongoDBProfilerAgentParams) WithDefaults() *AddQANMongoDBProfilerAgentParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the add QAN mongo DB profiler agent params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddQANMongoDBProfilerAgentParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the add QAN mongo DB profiler agent params -func (o *AddQANMongoDBProfilerAgentParams) WithTimeout(timeout time.Duration) *AddQANMongoDBProfilerAgentParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the add QAN mongo DB profiler agent params -func (o *AddQANMongoDBProfilerAgentParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the add QAN mongo DB profiler agent params -func (o *AddQANMongoDBProfilerAgentParams) WithContext(ctx context.Context) *AddQANMongoDBProfilerAgentParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the add QAN mongo DB profiler agent params -func (o *AddQANMongoDBProfilerAgentParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the add QAN mongo DB profiler agent params -func (o *AddQANMongoDBProfilerAgentParams) WithHTTPClient(client *http.Client) *AddQANMongoDBProfilerAgentParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the add QAN mongo DB profiler agent params -func (o *AddQANMongoDBProfilerAgentParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the add QAN mongo DB profiler agent params -func (o *AddQANMongoDBProfilerAgentParams) WithBody(body AddQANMongoDBProfilerAgentBody) *AddQANMongoDBProfilerAgentParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the add QAN mongo DB profiler agent params -func (o *AddQANMongoDBProfilerAgentParams) SetBody(body AddQANMongoDBProfilerAgentBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *AddQANMongoDBProfilerAgentParams) 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/add_qan_mongo_db_profiler_agent_responses.go b/api/inventory/v1/json/client/agents_service/add_qan_mongo_db_profiler_agent_responses.go deleted file mode 100644 index dd8ca67fe7..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_qan_mongo_db_profiler_agent_responses.go +++ /dev/null @@ -1,708 +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" -) - -// AddQANMongoDBProfilerAgentReader is a Reader for the AddQANMongoDBProfilerAgent structure. -type AddQANMongoDBProfilerAgentReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *AddQANMongoDBProfilerAgentReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewAddQANMongoDBProfilerAgentOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewAddQANMongoDBProfilerAgentDefault(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 - } -} - -// NewAddQANMongoDBProfilerAgentOK creates a AddQANMongoDBProfilerAgentOK with default headers values -func NewAddQANMongoDBProfilerAgentOK() *AddQANMongoDBProfilerAgentOK { - return &AddQANMongoDBProfilerAgentOK{} -} - -/* -AddQANMongoDBProfilerAgentOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type AddQANMongoDBProfilerAgentOK struct { - Payload *AddQANMongoDBProfilerAgentOKBody -} - -func (o *AddQANMongoDBProfilerAgentOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddQANMongoDBProfilerAgent][%d] addQanMongoDbProfilerAgentOk %+v", 200, o.Payload) -} - -func (o *AddQANMongoDBProfilerAgentOK) GetPayload() *AddQANMongoDBProfilerAgentOKBody { - return o.Payload -} - -func (o *AddQANMongoDBProfilerAgentOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddQANMongoDBProfilerAgentOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewAddQANMongoDBProfilerAgentDefault creates a AddQANMongoDBProfilerAgentDefault with default headers values -func NewAddQANMongoDBProfilerAgentDefault(code int) *AddQANMongoDBProfilerAgentDefault { - return &AddQANMongoDBProfilerAgentDefault{ - _statusCode: code, - } -} - -/* -AddQANMongoDBProfilerAgentDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type AddQANMongoDBProfilerAgentDefault struct { - _statusCode int - - Payload *AddQANMongoDBProfilerAgentDefaultBody -} - -// Code gets the status code for the add QAN mongo DB profiler agent default response -func (o *AddQANMongoDBProfilerAgentDefault) Code() int { - return o._statusCode -} - -func (o *AddQANMongoDBProfilerAgentDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddQANMongoDBProfilerAgent][%d] AddQANMongoDBProfilerAgent default %+v", o._statusCode, o.Payload) -} - -func (o *AddQANMongoDBProfilerAgentDefault) GetPayload() *AddQANMongoDBProfilerAgentDefaultBody { - return o.Payload -} - -func (o *AddQANMongoDBProfilerAgentDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddQANMongoDBProfilerAgentDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -AddQANMongoDBProfilerAgentBody add QAN mongo DB profiler agent body -swagger:model AddQANMongoDBProfilerAgentBody -*/ -type AddQANMongoDBProfilerAgentBody struct { - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Service identifier. - ServiceID string `json:"service_id,omitempty"` - - // MongoDB username for getting profile data. - Username string `json:"username,omitempty"` - - // MongoDB password for getting profile data. - Password string `json:"password,omitempty"` - - // Use TLS for database connections. - TLS bool `json:"tls,omitempty"` - - // Skip TLS certificate and hostname validation. - TLSSkipVerify bool `json:"tls_skip_verify,omitempty"` - - // Client certificate and key. - TLSCertificateKey string `json:"tls_certificate_key,omitempty"` - - // Password for decrypting tls_certificate_key. - TLSCertificateKeyFilePassword string `json:"tls_certificate_key_file_password,omitempty"` - - // Certificate Authority certificate chain. - TLSCa string `json:"tls_ca,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"` - - // Skip connection check. - SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` - - // Authentication mechanism. - // See https://docs.mongodb.com/manual/reference/connection-string/#mongodb-urioption-urioption.authMechanism - // for details. - AuthenticationMechanism string `json:"authentication_mechanism,omitempty"` - - // Authentication database. - AuthenticationDatabase string `json:"authentication_database,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 add QAN mongo DB profiler agent body -func (o *AddQANMongoDBProfilerAgentBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var addQanMongoDbProfilerAgentBodyTypeLogLevelPropEnum []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 { - addQanMongoDbProfilerAgentBodyTypeLogLevelPropEnum = append(addQanMongoDbProfilerAgentBodyTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddQANMongoDBProfilerAgentBodyLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddQANMongoDBProfilerAgentBodyLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddQANMongoDBProfilerAgentBodyLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddQANMongoDBProfilerAgentBodyLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddQANMongoDBProfilerAgentBodyLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddQANMongoDBProfilerAgentBodyLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddQANMongoDBProfilerAgentBodyLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddQANMongoDBProfilerAgentBodyLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddQANMongoDBProfilerAgentBodyLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddQANMongoDBProfilerAgentBodyLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddQANMongoDBProfilerAgentBodyLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddQANMongoDBProfilerAgentBodyLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddQANMongoDBProfilerAgentBody) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addQanMongoDbProfilerAgentBodyTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddQANMongoDBProfilerAgentBody) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("body"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add QAN mongo DB profiler agent body based on context it is used -func (o *AddQANMongoDBProfilerAgentBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANMongoDBProfilerAgentBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANMongoDBProfilerAgentBody) UnmarshalBinary(b []byte) error { - var res AddQANMongoDBProfilerAgentBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddQANMongoDBProfilerAgentDefaultBody add QAN mongo DB profiler agent default body -swagger:model AddQANMongoDBProfilerAgentDefaultBody -*/ -type AddQANMongoDBProfilerAgentDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*AddQANMongoDBProfilerAgentDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this add QAN mongo DB profiler agent default body -func (o *AddQANMongoDBProfilerAgentDefaultBody) 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 *AddQANMongoDBProfilerAgentDefaultBody) 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("AddQANMongoDBProfilerAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddQANMongoDBProfilerAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this add QAN mongo DB profiler agent default body based on the context it is used -func (o *AddQANMongoDBProfilerAgentDefaultBody) 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 *AddQANMongoDBProfilerAgentDefaultBody) 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("AddQANMongoDBProfilerAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddQANMongoDBProfilerAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANMongoDBProfilerAgentDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANMongoDBProfilerAgentDefaultBody) UnmarshalBinary(b []byte) error { - var res AddQANMongoDBProfilerAgentDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddQANMongoDBProfilerAgentDefaultBodyDetailsItems0 add QAN mongo DB profiler agent default body details items0 -swagger:model AddQANMongoDBProfilerAgentDefaultBodyDetailsItems0 -*/ -type AddQANMongoDBProfilerAgentDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this add QAN mongo DB profiler agent default body details items0 -func (o *AddQANMongoDBProfilerAgentDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this add QAN mongo DB profiler agent default body details items0 based on context it is used -func (o *AddQANMongoDBProfilerAgentDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANMongoDBProfilerAgentDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANMongoDBProfilerAgentDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res AddQANMongoDBProfilerAgentDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddQANMongoDBProfilerAgentOKBody add QAN mongo DB profiler agent OK body -swagger:model AddQANMongoDBProfilerAgentOKBody -*/ -type AddQANMongoDBProfilerAgentOKBody struct { - // qan mongodb profiler agent - QANMongodbProfilerAgent *AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent `json:"qan_mongodb_profiler_agent,omitempty"` -} - -// Validate validates this add QAN mongo DB profiler agent OK body -func (o *AddQANMongoDBProfilerAgentOKBody) 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 *AddQANMongoDBProfilerAgentOKBody) 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("addQanMongoDbProfilerAgentOk" + "." + "qan_mongodb_profiler_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addQanMongoDbProfilerAgentOk" + "." + "qan_mongodb_profiler_agent") - } - return err - } - } - - return nil -} - -// ContextValidate validate this add QAN mongo DB profiler agent OK body based on the context it is used -func (o *AddQANMongoDBProfilerAgentOKBody) 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 *AddQANMongoDBProfilerAgentOKBody) 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("addQanMongoDbProfilerAgentOk" + "." + "qan_mongodb_profiler_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addQanMongoDbProfilerAgentOk" + "." + "qan_mongodb_profiler_agent") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANMongoDBProfilerAgentOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANMongoDBProfilerAgentOKBody) UnmarshalBinary(b []byte) error { - var res AddQANMongoDBProfilerAgentOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent QANMongoDBProfilerAgent runs within pmm-agent and sends MongoDB Query Analytics data to the PMM Server. -swagger:model AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent -*/ -type AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent 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). - // - // True if query examples are disabled. - // bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650 - MaxQueryLength int32 `json:"max_query_length,omitempty"` - - // Custom user-assigned labels. - // - // Status fields below. - 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 add QAN mongo DB profiler agent OK body QAN mongodb profiler agent -func (o *AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent) 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 addQanMongoDbProfilerAgentOkBodyQanMongodbProfilerAgentTypeStatusPropEnum []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 { - addQanMongoDbProfilerAgentOkBodyQanMongodbProfilerAgentTypeStatusPropEnum = append(addQanMongoDbProfilerAgentOkBodyQanMongodbProfilerAgentTypeStatusPropEnum, v) - } -} - -const ( - - // AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addQanMongoDbProfilerAgentOkBodyQanMongodbProfilerAgentTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("addQanMongoDbProfilerAgentOk"+"."+"qan_mongodb_profiler_agent"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var addQanMongoDbProfilerAgentOkBodyQanMongodbProfilerAgentTypeLogLevelPropEnum []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 { - addQanMongoDbProfilerAgentOkBodyQanMongodbProfilerAgentTypeLogLevelPropEnum = append(addQanMongoDbProfilerAgentOkBodyQanMongodbProfilerAgentTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addQanMongoDbProfilerAgentOkBodyQanMongodbProfilerAgentTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("addQanMongoDbProfilerAgentOk"+"."+"qan_mongodb_profiler_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add QAN mongo DB profiler agent OK body QAN mongodb profiler agent based on context it is used -func (o *AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent) UnmarshalBinary(b []byte) error { - var res AddQANMongoDBProfilerAgentOKBodyQANMongodbProfilerAgent - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/add_qan_my_sql_perf_schema_agent_parameters.go b/api/inventory/v1/json/client/agents_service/add_qan_my_sql_perf_schema_agent_parameters.go deleted file mode 100644 index 0f569db809..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_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" -) - -// NewAddQANMySQLPerfSchemaAgentParams creates a new AddQANMySQLPerfSchemaAgentParams 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 NewAddQANMySQLPerfSchemaAgentParams() *AddQANMySQLPerfSchemaAgentParams { - return &AddQANMySQLPerfSchemaAgentParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewAddQANMySQLPerfSchemaAgentParamsWithTimeout creates a new AddQANMySQLPerfSchemaAgentParams object -// with the ability to set a timeout on a request. -func NewAddQANMySQLPerfSchemaAgentParamsWithTimeout(timeout time.Duration) *AddQANMySQLPerfSchemaAgentParams { - return &AddQANMySQLPerfSchemaAgentParams{ - timeout: timeout, - } -} - -// NewAddQANMySQLPerfSchemaAgentParamsWithContext creates a new AddQANMySQLPerfSchemaAgentParams object -// with the ability to set a context for a request. -func NewAddQANMySQLPerfSchemaAgentParamsWithContext(ctx context.Context) *AddQANMySQLPerfSchemaAgentParams { - return &AddQANMySQLPerfSchemaAgentParams{ - Context: ctx, - } -} - -// NewAddQANMySQLPerfSchemaAgentParamsWithHTTPClient creates a new AddQANMySQLPerfSchemaAgentParams object -// with the ability to set a custom HTTPClient for a request. -func NewAddQANMySQLPerfSchemaAgentParamsWithHTTPClient(client *http.Client) *AddQANMySQLPerfSchemaAgentParams { - return &AddQANMySQLPerfSchemaAgentParams{ - HTTPClient: client, - } -} - -/* -AddQANMySQLPerfSchemaAgentParams contains all the parameters to send to the API endpoint - - for the add QAN my SQL perf schema agent operation. - - Typically these are written to a http.Request. -*/ -type AddQANMySQLPerfSchemaAgentParams struct { - // Body. - Body AddQANMySQLPerfSchemaAgentBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the add QAN my SQL perf schema agent params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddQANMySQLPerfSchemaAgentParams) WithDefaults() *AddQANMySQLPerfSchemaAgentParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the add QAN my SQL perf schema agent params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddQANMySQLPerfSchemaAgentParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the add QAN my SQL perf schema agent params -func (o *AddQANMySQLPerfSchemaAgentParams) WithTimeout(timeout time.Duration) *AddQANMySQLPerfSchemaAgentParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the add QAN my SQL perf schema agent params -func (o *AddQANMySQLPerfSchemaAgentParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the add QAN my SQL perf schema agent params -func (o *AddQANMySQLPerfSchemaAgentParams) WithContext(ctx context.Context) *AddQANMySQLPerfSchemaAgentParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the add QAN my SQL perf schema agent params -func (o *AddQANMySQLPerfSchemaAgentParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the add QAN my SQL perf schema agent params -func (o *AddQANMySQLPerfSchemaAgentParams) WithHTTPClient(client *http.Client) *AddQANMySQLPerfSchemaAgentParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the add QAN my SQL perf schema agent params -func (o *AddQANMySQLPerfSchemaAgentParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the add QAN my SQL perf schema agent params -func (o *AddQANMySQLPerfSchemaAgentParams) WithBody(body AddQANMySQLPerfSchemaAgentBody) *AddQANMySQLPerfSchemaAgentParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the add QAN my SQL perf schema agent params -func (o *AddQANMySQLPerfSchemaAgentParams) SetBody(body AddQANMySQLPerfSchemaAgentBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *AddQANMySQLPerfSchemaAgentParams) 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/add_qan_my_sql_perf_schema_agent_responses.go b/api/inventory/v1/json/client/agents_service/add_qan_my_sql_perf_schema_agent_responses.go deleted file mode 100644 index 3e0f970b0a..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_qan_my_sql_perf_schema_agent_responses.go +++ /dev/null @@ -1,718 +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" -) - -// AddQANMySQLPerfSchemaAgentReader is a Reader for the AddQANMySQLPerfSchemaAgent structure. -type AddQANMySQLPerfSchemaAgentReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *AddQANMySQLPerfSchemaAgentReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewAddQANMySQLPerfSchemaAgentOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewAddQANMySQLPerfSchemaAgentDefault(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 - } -} - -// NewAddQANMySQLPerfSchemaAgentOK creates a AddQANMySQLPerfSchemaAgentOK with default headers values -func NewAddQANMySQLPerfSchemaAgentOK() *AddQANMySQLPerfSchemaAgentOK { - return &AddQANMySQLPerfSchemaAgentOK{} -} - -/* -AddQANMySQLPerfSchemaAgentOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type AddQANMySQLPerfSchemaAgentOK struct { - Payload *AddQANMySQLPerfSchemaAgentOKBody -} - -func (o *AddQANMySQLPerfSchemaAgentOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddQANMySQLPerfSchemaAgent][%d] addQanMySqlPerfSchemaAgentOk %+v", 200, o.Payload) -} - -func (o *AddQANMySQLPerfSchemaAgentOK) GetPayload() *AddQANMySQLPerfSchemaAgentOKBody { - return o.Payload -} - -func (o *AddQANMySQLPerfSchemaAgentOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddQANMySQLPerfSchemaAgentOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewAddQANMySQLPerfSchemaAgentDefault creates a AddQANMySQLPerfSchemaAgentDefault with default headers values -func NewAddQANMySQLPerfSchemaAgentDefault(code int) *AddQANMySQLPerfSchemaAgentDefault { - return &AddQANMySQLPerfSchemaAgentDefault{ - _statusCode: code, - } -} - -/* -AddQANMySQLPerfSchemaAgentDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type AddQANMySQLPerfSchemaAgentDefault struct { - _statusCode int - - Payload *AddQANMySQLPerfSchemaAgentDefaultBody -} - -// Code gets the status code for the add QAN my SQL perf schema agent default response -func (o *AddQANMySQLPerfSchemaAgentDefault) Code() int { - return o._statusCode -} - -func (o *AddQANMySQLPerfSchemaAgentDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddQANMySQLPerfSchemaAgent][%d] AddQANMySQLPerfSchemaAgent default %+v", o._statusCode, o.Payload) -} - -func (o *AddQANMySQLPerfSchemaAgentDefault) GetPayload() *AddQANMySQLPerfSchemaAgentDefaultBody { - return o.Payload -} - -func (o *AddQANMySQLPerfSchemaAgentDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddQANMySQLPerfSchemaAgentDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -AddQANMySQLPerfSchemaAgentBody add QAN my SQL perf schema agent body -swagger:model AddQANMySQLPerfSchemaAgentBody -*/ -type AddQANMySQLPerfSchemaAgentBody struct { - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Service identifier. - ServiceID string `json:"service_id,omitempty"` - - // MySQL username for getting performance data. - Username string `json:"username,omitempty"` - - // MySQL password for getting performance data. - Password string `json:"password,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"` - - // Limit query length in QAN (default: server-defined; -1: no limit) - MaxQueryLength int32 `json:"max_query_length,omitempty"` - - // Disable query examples. - DisableQueryExamples bool `json:"disable_query_examples,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Skip connection check. - SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` - - // Disable parsing comments from queries and showing them in QAN. - DisableCommentsParsing bool `json:"disable_comments_parsing,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 add QAN my SQL perf schema agent body -func (o *AddQANMySQLPerfSchemaAgentBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var addQanMySqlPerfSchemaAgentBodyTypeLogLevelPropEnum []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 { - addQanMySqlPerfSchemaAgentBodyTypeLogLevelPropEnum = append(addQanMySqlPerfSchemaAgentBodyTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddQANMySQLPerfSchemaAgentBodyLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddQANMySQLPerfSchemaAgentBodyLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddQANMySQLPerfSchemaAgentBodyLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddQANMySQLPerfSchemaAgentBodyLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddQANMySQLPerfSchemaAgentBodyLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddQANMySQLPerfSchemaAgentBodyLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddQANMySQLPerfSchemaAgentBodyLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddQANMySQLPerfSchemaAgentBodyLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddQANMySQLPerfSchemaAgentBodyLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddQANMySQLPerfSchemaAgentBodyLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddQANMySQLPerfSchemaAgentBodyLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddQANMySQLPerfSchemaAgentBodyLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddQANMySQLPerfSchemaAgentBody) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addQanMySqlPerfSchemaAgentBodyTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddQANMySQLPerfSchemaAgentBody) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("body"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add QAN my SQL perf schema agent body based on context it is used -func (o *AddQANMySQLPerfSchemaAgentBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANMySQLPerfSchemaAgentBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANMySQLPerfSchemaAgentBody) UnmarshalBinary(b []byte) error { - var res AddQANMySQLPerfSchemaAgentBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddQANMySQLPerfSchemaAgentDefaultBody add QAN my SQL perf schema agent default body -swagger:model AddQANMySQLPerfSchemaAgentDefaultBody -*/ -type AddQANMySQLPerfSchemaAgentDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*AddQANMySQLPerfSchemaAgentDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this add QAN my SQL perf schema agent default body -func (o *AddQANMySQLPerfSchemaAgentDefaultBody) 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 *AddQANMySQLPerfSchemaAgentDefaultBody) 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("AddQANMySQLPerfSchemaAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddQANMySQLPerfSchemaAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this add QAN my SQL perf schema agent default body based on the context it is used -func (o *AddQANMySQLPerfSchemaAgentDefaultBody) 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 *AddQANMySQLPerfSchemaAgentDefaultBody) 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("AddQANMySQLPerfSchemaAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddQANMySQLPerfSchemaAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANMySQLPerfSchemaAgentDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANMySQLPerfSchemaAgentDefaultBody) UnmarshalBinary(b []byte) error { - var res AddQANMySQLPerfSchemaAgentDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddQANMySQLPerfSchemaAgentDefaultBodyDetailsItems0 add QAN my SQL perf schema agent default body details items0 -swagger:model AddQANMySQLPerfSchemaAgentDefaultBodyDetailsItems0 -*/ -type AddQANMySQLPerfSchemaAgentDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this add QAN my SQL perf schema agent default body details items0 -func (o *AddQANMySQLPerfSchemaAgentDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this add QAN my SQL perf schema agent default body details items0 based on context it is used -func (o *AddQANMySQLPerfSchemaAgentDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANMySQLPerfSchemaAgentDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANMySQLPerfSchemaAgentDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res AddQANMySQLPerfSchemaAgentDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddQANMySQLPerfSchemaAgentOKBody add QAN my SQL perf schema agent OK body -swagger:model AddQANMySQLPerfSchemaAgentOKBody -*/ -type AddQANMySQLPerfSchemaAgentOKBody struct { - // qan mysql perfschema agent - QANMysqlPerfschemaAgent *AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent `json:"qan_mysql_perfschema_agent,omitempty"` -} - -// Validate validates this add QAN my SQL perf schema agent OK body -func (o *AddQANMySQLPerfSchemaAgentOKBody) 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 *AddQANMySQLPerfSchemaAgentOKBody) 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("addQanMySqlPerfSchemaAgentOk" + "." + "qan_mysql_perfschema_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addQanMySqlPerfSchemaAgentOk" + "." + "qan_mysql_perfschema_agent") - } - return err - } - } - - return nil -} - -// ContextValidate validate this add QAN my SQL perf schema agent OK body based on the context it is used -func (o *AddQANMySQLPerfSchemaAgentOKBody) 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 *AddQANMySQLPerfSchemaAgentOKBody) 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("addQanMySqlPerfSchemaAgentOk" + "." + "qan_mysql_perfschema_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addQanMySqlPerfSchemaAgentOk" + "." + "qan_mysql_perfschema_agent") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANMySQLPerfSchemaAgentOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANMySQLPerfSchemaAgentOKBody) UnmarshalBinary(b []byte) error { - var res AddQANMySQLPerfSchemaAgentOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent QANMySQLPerfSchemaAgent runs within pmm-agent and sends MySQL Query Analytics data to the PMM Server. -swagger:model AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent -*/ -type AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent 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. - // - // Status fields below. - 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 add QAN my SQL perf schema agent OK body QAN mysql perfschema agent -func (o *AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent) 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 addQanMySqlPerfSchemaAgentOkBodyQanMysqlPerfschemaAgentTypeStatusPropEnum []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 { - addQanMySqlPerfSchemaAgentOkBodyQanMysqlPerfschemaAgentTypeStatusPropEnum = append(addQanMySqlPerfSchemaAgentOkBodyQanMysqlPerfschemaAgentTypeStatusPropEnum, v) - } -} - -const ( - - // AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addQanMySqlPerfSchemaAgentOkBodyQanMysqlPerfschemaAgentTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("addQanMySqlPerfSchemaAgentOk"+"."+"qan_mysql_perfschema_agent"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var addQanMySqlPerfSchemaAgentOkBodyQanMysqlPerfschemaAgentTypeLogLevelPropEnum []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 { - addQanMySqlPerfSchemaAgentOkBodyQanMysqlPerfschemaAgentTypeLogLevelPropEnum = append(addQanMySqlPerfSchemaAgentOkBodyQanMysqlPerfschemaAgentTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addQanMySqlPerfSchemaAgentOkBodyQanMysqlPerfschemaAgentTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("addQanMySqlPerfSchemaAgentOk"+"."+"qan_mysql_perfschema_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add QAN my SQL perf schema agent OK body QAN mysql perfschema agent based on context it is used -func (o *AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent) UnmarshalBinary(b []byte) error { - var res AddQANMySQLPerfSchemaAgentOKBodyQANMysqlPerfschemaAgent - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/add_qan_my_sql_slowlog_agent_parameters.go b/api/inventory/v1/json/client/agents_service/add_qan_my_sql_slowlog_agent_parameters.go deleted file mode 100644 index 7e3dca97b4..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_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" -) - -// NewAddQANMySQLSlowlogAgentParams creates a new AddQANMySQLSlowlogAgentParams 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 NewAddQANMySQLSlowlogAgentParams() *AddQANMySQLSlowlogAgentParams { - return &AddQANMySQLSlowlogAgentParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewAddQANMySQLSlowlogAgentParamsWithTimeout creates a new AddQANMySQLSlowlogAgentParams object -// with the ability to set a timeout on a request. -func NewAddQANMySQLSlowlogAgentParamsWithTimeout(timeout time.Duration) *AddQANMySQLSlowlogAgentParams { - return &AddQANMySQLSlowlogAgentParams{ - timeout: timeout, - } -} - -// NewAddQANMySQLSlowlogAgentParamsWithContext creates a new AddQANMySQLSlowlogAgentParams object -// with the ability to set a context for a request. -func NewAddQANMySQLSlowlogAgentParamsWithContext(ctx context.Context) *AddQANMySQLSlowlogAgentParams { - return &AddQANMySQLSlowlogAgentParams{ - Context: ctx, - } -} - -// NewAddQANMySQLSlowlogAgentParamsWithHTTPClient creates a new AddQANMySQLSlowlogAgentParams object -// with the ability to set a custom HTTPClient for a request. -func NewAddQANMySQLSlowlogAgentParamsWithHTTPClient(client *http.Client) *AddQANMySQLSlowlogAgentParams { - return &AddQANMySQLSlowlogAgentParams{ - HTTPClient: client, - } -} - -/* -AddQANMySQLSlowlogAgentParams contains all the parameters to send to the API endpoint - - for the add QAN my SQL slowlog agent operation. - - Typically these are written to a http.Request. -*/ -type AddQANMySQLSlowlogAgentParams struct { - // Body. - Body AddQANMySQLSlowlogAgentBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the add QAN my SQL slowlog agent params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddQANMySQLSlowlogAgentParams) WithDefaults() *AddQANMySQLSlowlogAgentParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the add QAN my SQL slowlog agent params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddQANMySQLSlowlogAgentParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the add QAN my SQL slowlog agent params -func (o *AddQANMySQLSlowlogAgentParams) WithTimeout(timeout time.Duration) *AddQANMySQLSlowlogAgentParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the add QAN my SQL slowlog agent params -func (o *AddQANMySQLSlowlogAgentParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the add QAN my SQL slowlog agent params -func (o *AddQANMySQLSlowlogAgentParams) WithContext(ctx context.Context) *AddQANMySQLSlowlogAgentParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the add QAN my SQL slowlog agent params -func (o *AddQANMySQLSlowlogAgentParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the add QAN my SQL slowlog agent params -func (o *AddQANMySQLSlowlogAgentParams) WithHTTPClient(client *http.Client) *AddQANMySQLSlowlogAgentParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the add QAN my SQL slowlog agent params -func (o *AddQANMySQLSlowlogAgentParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the add QAN my SQL slowlog agent params -func (o *AddQANMySQLSlowlogAgentParams) WithBody(body AddQANMySQLSlowlogAgentBody) *AddQANMySQLSlowlogAgentParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the add QAN my SQL slowlog agent params -func (o *AddQANMySQLSlowlogAgentParams) SetBody(body AddQANMySQLSlowlogAgentBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *AddQANMySQLSlowlogAgentParams) 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/add_qan_my_sql_slowlog_agent_responses.go b/api/inventory/v1/json/client/agents_service/add_qan_my_sql_slowlog_agent_responses.go deleted file mode 100644 index d067b74c80..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_qan_my_sql_slowlog_agent_responses.go +++ /dev/null @@ -1,725 +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" -) - -// AddQANMySQLSlowlogAgentReader is a Reader for the AddQANMySQLSlowlogAgent structure. -type AddQANMySQLSlowlogAgentReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *AddQANMySQLSlowlogAgentReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewAddQANMySQLSlowlogAgentOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewAddQANMySQLSlowlogAgentDefault(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 - } -} - -// NewAddQANMySQLSlowlogAgentOK creates a AddQANMySQLSlowlogAgentOK with default headers values -func NewAddQANMySQLSlowlogAgentOK() *AddQANMySQLSlowlogAgentOK { - return &AddQANMySQLSlowlogAgentOK{} -} - -/* -AddQANMySQLSlowlogAgentOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type AddQANMySQLSlowlogAgentOK struct { - Payload *AddQANMySQLSlowlogAgentOKBody -} - -func (o *AddQANMySQLSlowlogAgentOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddQANMySQLSlowlogAgent][%d] addQanMySqlSlowlogAgentOk %+v", 200, o.Payload) -} - -func (o *AddQANMySQLSlowlogAgentOK) GetPayload() *AddQANMySQLSlowlogAgentOKBody { - return o.Payload -} - -func (o *AddQANMySQLSlowlogAgentOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddQANMySQLSlowlogAgentOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewAddQANMySQLSlowlogAgentDefault creates a AddQANMySQLSlowlogAgentDefault with default headers values -func NewAddQANMySQLSlowlogAgentDefault(code int) *AddQANMySQLSlowlogAgentDefault { - return &AddQANMySQLSlowlogAgentDefault{ - _statusCode: code, - } -} - -/* -AddQANMySQLSlowlogAgentDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type AddQANMySQLSlowlogAgentDefault struct { - _statusCode int - - Payload *AddQANMySQLSlowlogAgentDefaultBody -} - -// Code gets the status code for the add QAN my SQL slowlog agent default response -func (o *AddQANMySQLSlowlogAgentDefault) Code() int { - return o._statusCode -} - -func (o *AddQANMySQLSlowlogAgentDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddQANMySQLSlowlogAgent][%d] AddQANMySQLSlowlogAgent default %+v", o._statusCode, o.Payload) -} - -func (o *AddQANMySQLSlowlogAgentDefault) GetPayload() *AddQANMySQLSlowlogAgentDefaultBody { - return o.Payload -} - -func (o *AddQANMySQLSlowlogAgentDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddQANMySQLSlowlogAgentDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -AddQANMySQLSlowlogAgentBody add QAN my SQL slowlog agent body -swagger:model AddQANMySQLSlowlogAgentBody -*/ -type AddQANMySQLSlowlogAgentBody struct { - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Service identifier. - ServiceID string `json:"service_id,omitempty"` - - // MySQL username for getting slowlog data. - Username string `json:"username,omitempty"` - - // MySQL password for getting slowlog data. - Password string `json:"password,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"` - - // Limit query length in QAN (default: server-defined; -1: no limit). - MaxQueryLength int32 `json:"max_query_length,omitempty"` - - // Disable query examples. - DisableQueryExamples bool `json:"disable_query_examples,omitempty"` - - // Rotate slowlog file at this size if > 0. - // Use zero or negative value to disable rotation. - MaxSlowlogFileSize string `json:"max_slowlog_file_size,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Skip connection check. - SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` - - // Disable parsing comments from queries and showing them in QAN. - DisableCommentsParsing bool `json:"disable_comments_parsing,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 add QAN my SQL slowlog agent body -func (o *AddQANMySQLSlowlogAgentBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var addQanMySqlSlowlogAgentBodyTypeLogLevelPropEnum []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 { - addQanMySqlSlowlogAgentBodyTypeLogLevelPropEnum = append(addQanMySqlSlowlogAgentBodyTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddQANMySQLSlowlogAgentBodyLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddQANMySQLSlowlogAgentBodyLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddQANMySQLSlowlogAgentBodyLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddQANMySQLSlowlogAgentBodyLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddQANMySQLSlowlogAgentBodyLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddQANMySQLSlowlogAgentBodyLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddQANMySQLSlowlogAgentBodyLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddQANMySQLSlowlogAgentBodyLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddQANMySQLSlowlogAgentBodyLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddQANMySQLSlowlogAgentBodyLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddQANMySQLSlowlogAgentBodyLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddQANMySQLSlowlogAgentBodyLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddQANMySQLSlowlogAgentBody) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addQanMySqlSlowlogAgentBodyTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddQANMySQLSlowlogAgentBody) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("body"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add QAN my SQL slowlog agent body based on context it is used -func (o *AddQANMySQLSlowlogAgentBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANMySQLSlowlogAgentBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANMySQLSlowlogAgentBody) UnmarshalBinary(b []byte) error { - var res AddQANMySQLSlowlogAgentBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddQANMySQLSlowlogAgentDefaultBody add QAN my SQL slowlog agent default body -swagger:model AddQANMySQLSlowlogAgentDefaultBody -*/ -type AddQANMySQLSlowlogAgentDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*AddQANMySQLSlowlogAgentDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this add QAN my SQL slowlog agent default body -func (o *AddQANMySQLSlowlogAgentDefaultBody) 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 *AddQANMySQLSlowlogAgentDefaultBody) 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("AddQANMySQLSlowlogAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddQANMySQLSlowlogAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this add QAN my SQL slowlog agent default body based on the context it is used -func (o *AddQANMySQLSlowlogAgentDefaultBody) 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 *AddQANMySQLSlowlogAgentDefaultBody) 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("AddQANMySQLSlowlogAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddQANMySQLSlowlogAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANMySQLSlowlogAgentDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANMySQLSlowlogAgentDefaultBody) UnmarshalBinary(b []byte) error { - var res AddQANMySQLSlowlogAgentDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddQANMySQLSlowlogAgentDefaultBodyDetailsItems0 add QAN my SQL slowlog agent default body details items0 -swagger:model AddQANMySQLSlowlogAgentDefaultBodyDetailsItems0 -*/ -type AddQANMySQLSlowlogAgentDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this add QAN my SQL slowlog agent default body details items0 -func (o *AddQANMySQLSlowlogAgentDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this add QAN my SQL slowlog agent default body details items0 based on context it is used -func (o *AddQANMySQLSlowlogAgentDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANMySQLSlowlogAgentDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANMySQLSlowlogAgentDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res AddQANMySQLSlowlogAgentDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddQANMySQLSlowlogAgentOKBody add QAN my SQL slowlog agent OK body -swagger:model AddQANMySQLSlowlogAgentOKBody -*/ -type AddQANMySQLSlowlogAgentOKBody struct { - // qan mysql slowlog agent - QANMysqlSlowlogAgent *AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent `json:"qan_mysql_slowlog_agent,omitempty"` -} - -// Validate validates this add QAN my SQL slowlog agent OK body -func (o *AddQANMySQLSlowlogAgentOKBody) 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 *AddQANMySQLSlowlogAgentOKBody) 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("addQanMySqlSlowlogAgentOk" + "." + "qan_mysql_slowlog_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addQanMySqlSlowlogAgentOk" + "." + "qan_mysql_slowlog_agent") - } - return err - } - } - - return nil -} - -// ContextValidate validate this add QAN my SQL slowlog agent OK body based on the context it is used -func (o *AddQANMySQLSlowlogAgentOKBody) 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 *AddQANMySQLSlowlogAgentOKBody) 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("addQanMySqlSlowlogAgentOk" + "." + "qan_mysql_slowlog_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addQanMySqlSlowlogAgentOk" + "." + "qan_mysql_slowlog_agent") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANMySQLSlowlogAgentOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANMySQLSlowlogAgentOKBody) UnmarshalBinary(b []byte) error { - var res AddQANMySQLSlowlogAgentOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent QANMySQLSlowlogAgent runs within pmm-agent and sends MySQL Query Analytics data to the PMM Server. -swagger:model AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent -*/ -type AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent 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. - // - // Status fields below. - 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 add QAN my SQL slowlog agent OK body QAN mysql slowlog agent -func (o *AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent) 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 addQanMySqlSlowlogAgentOkBodyQanMysqlSlowlogAgentTypeStatusPropEnum []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 { - addQanMySqlSlowlogAgentOkBodyQanMysqlSlowlogAgentTypeStatusPropEnum = append(addQanMySqlSlowlogAgentOkBodyQanMysqlSlowlogAgentTypeStatusPropEnum, v) - } -} - -const ( - - // AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addQanMySqlSlowlogAgentOkBodyQanMysqlSlowlogAgentTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("addQanMySqlSlowlogAgentOk"+"."+"qan_mysql_slowlog_agent"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var addQanMySqlSlowlogAgentOkBodyQanMysqlSlowlogAgentTypeLogLevelPropEnum []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 { - addQanMySqlSlowlogAgentOkBodyQanMysqlSlowlogAgentTypeLogLevelPropEnum = append(addQanMySqlSlowlogAgentOkBodyQanMysqlSlowlogAgentTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addQanMySqlSlowlogAgentOkBodyQanMysqlSlowlogAgentTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("addQanMySqlSlowlogAgentOk"+"."+"qan_mysql_slowlog_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add QAN my SQL slowlog agent OK body QAN mysql slowlog agent based on context it is used -func (o *AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent) UnmarshalBinary(b []byte) error { - var res AddQANMySQLSlowlogAgentOKBodyQANMysqlSlowlogAgent - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/add_qan_postgre_sql_pg_stat_monitor_agent_parameters.go b/api/inventory/v1/json/client/agents_service/add_qan_postgre_sql_pg_stat_monitor_agent_parameters.go deleted file mode 100644 index 214c3847c1..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_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" -) - -// NewAddQANPostgreSQLPgStatMonitorAgentParams creates a new AddQANPostgreSQLPgStatMonitorAgentParams 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 NewAddQANPostgreSQLPgStatMonitorAgentParams() *AddQANPostgreSQLPgStatMonitorAgentParams { - return &AddQANPostgreSQLPgStatMonitorAgentParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewAddQANPostgreSQLPgStatMonitorAgentParamsWithTimeout creates a new AddQANPostgreSQLPgStatMonitorAgentParams object -// with the ability to set a timeout on a request. -func NewAddQANPostgreSQLPgStatMonitorAgentParamsWithTimeout(timeout time.Duration) *AddQANPostgreSQLPgStatMonitorAgentParams { - return &AddQANPostgreSQLPgStatMonitorAgentParams{ - timeout: timeout, - } -} - -// NewAddQANPostgreSQLPgStatMonitorAgentParamsWithContext creates a new AddQANPostgreSQLPgStatMonitorAgentParams object -// with the ability to set a context for a request. -func NewAddQANPostgreSQLPgStatMonitorAgentParamsWithContext(ctx context.Context) *AddQANPostgreSQLPgStatMonitorAgentParams { - return &AddQANPostgreSQLPgStatMonitorAgentParams{ - Context: ctx, - } -} - -// NewAddQANPostgreSQLPgStatMonitorAgentParamsWithHTTPClient creates a new AddQANPostgreSQLPgStatMonitorAgentParams object -// with the ability to set a custom HTTPClient for a request. -func NewAddQANPostgreSQLPgStatMonitorAgentParamsWithHTTPClient(client *http.Client) *AddQANPostgreSQLPgStatMonitorAgentParams { - return &AddQANPostgreSQLPgStatMonitorAgentParams{ - HTTPClient: client, - } -} - -/* -AddQANPostgreSQLPgStatMonitorAgentParams contains all the parameters to send to the API endpoint - - for the add QAN postgre SQL pg stat monitor agent operation. - - Typically these are written to a http.Request. -*/ -type AddQANPostgreSQLPgStatMonitorAgentParams struct { - // Body. - Body AddQANPostgreSQLPgStatMonitorAgentBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the add 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 *AddQANPostgreSQLPgStatMonitorAgentParams) WithDefaults() *AddQANPostgreSQLPgStatMonitorAgentParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the add 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 *AddQANPostgreSQLPgStatMonitorAgentParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the add QAN postgre SQL pg stat monitor agent params -func (o *AddQANPostgreSQLPgStatMonitorAgentParams) WithTimeout(timeout time.Duration) *AddQANPostgreSQLPgStatMonitorAgentParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the add QAN postgre SQL pg stat monitor agent params -func (o *AddQANPostgreSQLPgStatMonitorAgentParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the add QAN postgre SQL pg stat monitor agent params -func (o *AddQANPostgreSQLPgStatMonitorAgentParams) WithContext(ctx context.Context) *AddQANPostgreSQLPgStatMonitorAgentParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the add QAN postgre SQL pg stat monitor agent params -func (o *AddQANPostgreSQLPgStatMonitorAgentParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the add QAN postgre SQL pg stat monitor agent params -func (o *AddQANPostgreSQLPgStatMonitorAgentParams) WithHTTPClient(client *http.Client) *AddQANPostgreSQLPgStatMonitorAgentParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the add QAN postgre SQL pg stat monitor agent params -func (o *AddQANPostgreSQLPgStatMonitorAgentParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the add QAN postgre SQL pg stat monitor agent params -func (o *AddQANPostgreSQLPgStatMonitorAgentParams) WithBody(body AddQANPostgreSQLPgStatMonitorAgentBody) *AddQANPostgreSQLPgStatMonitorAgentParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the add QAN postgre SQL pg stat monitor agent params -func (o *AddQANPostgreSQLPgStatMonitorAgentParams) SetBody(body AddQANPostgreSQLPgStatMonitorAgentBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *AddQANPostgreSQLPgStatMonitorAgentParams) 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/add_qan_postgre_sql_pg_stat_monitor_agent_responses.go b/api/inventory/v1/json/client/agents_service/add_qan_postgre_sql_pg_stat_monitor_agent_responses.go deleted file mode 100644 index dae334c162..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_qan_postgre_sql_pg_stat_monitor_agent_responses.go +++ /dev/null @@ -1,709 +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" -) - -// AddQANPostgreSQLPgStatMonitorAgentReader is a Reader for the AddQANPostgreSQLPgStatMonitorAgent structure. -type AddQANPostgreSQLPgStatMonitorAgentReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *AddQANPostgreSQLPgStatMonitorAgentReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewAddQANPostgreSQLPgStatMonitorAgentOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewAddQANPostgreSQLPgStatMonitorAgentDefault(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 - } -} - -// NewAddQANPostgreSQLPgStatMonitorAgentOK creates a AddQANPostgreSQLPgStatMonitorAgentOK with default headers values -func NewAddQANPostgreSQLPgStatMonitorAgentOK() *AddQANPostgreSQLPgStatMonitorAgentOK { - return &AddQANPostgreSQLPgStatMonitorAgentOK{} -} - -/* -AddQANPostgreSQLPgStatMonitorAgentOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type AddQANPostgreSQLPgStatMonitorAgentOK struct { - Payload *AddQANPostgreSQLPgStatMonitorAgentOKBody -} - -func (o *AddQANPostgreSQLPgStatMonitorAgentOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddQANPostgreSQLPgStatMonitorAgent][%d] addQanPostgreSqlPgStatMonitorAgentOk %+v", 200, o.Payload) -} - -func (o *AddQANPostgreSQLPgStatMonitorAgentOK) GetPayload() *AddQANPostgreSQLPgStatMonitorAgentOKBody { - return o.Payload -} - -func (o *AddQANPostgreSQLPgStatMonitorAgentOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddQANPostgreSQLPgStatMonitorAgentOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewAddQANPostgreSQLPgStatMonitorAgentDefault creates a AddQANPostgreSQLPgStatMonitorAgentDefault with default headers values -func NewAddQANPostgreSQLPgStatMonitorAgentDefault(code int) *AddQANPostgreSQLPgStatMonitorAgentDefault { - return &AddQANPostgreSQLPgStatMonitorAgentDefault{ - _statusCode: code, - } -} - -/* -AddQANPostgreSQLPgStatMonitorAgentDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type AddQANPostgreSQLPgStatMonitorAgentDefault struct { - _statusCode int - - Payload *AddQANPostgreSQLPgStatMonitorAgentDefaultBody -} - -// Code gets the status code for the add QAN postgre SQL pg stat monitor agent default response -func (o *AddQANPostgreSQLPgStatMonitorAgentDefault) Code() int { - return o._statusCode -} - -func (o *AddQANPostgreSQLPgStatMonitorAgentDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddQANPostgreSQLPgStatMonitorAgent][%d] AddQANPostgreSQLPgStatMonitorAgent default %+v", o._statusCode, o.Payload) -} - -func (o *AddQANPostgreSQLPgStatMonitorAgentDefault) GetPayload() *AddQANPostgreSQLPgStatMonitorAgentDefaultBody { - return o.Payload -} - -func (o *AddQANPostgreSQLPgStatMonitorAgentDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddQANPostgreSQLPgStatMonitorAgentDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -AddQANPostgreSQLPgStatMonitorAgentBody add QAN postgre SQL pg stat monitor agent body -swagger:model AddQANPostgreSQLPgStatMonitorAgentBody -*/ -type AddQANPostgreSQLPgStatMonitorAgentBody struct { - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Service identifier. - ServiceID string `json:"service_id,omitempty"` - - // PostgreSQL username for getting pg stat monitor data. - Username string `json:"username,omitempty"` - - // PostgreSQL password for getting pg stat monitor data. - Password string `json:"password,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"` - - // Disable query examples. - DisableQueryExamples bool `json:"disable_query_examples,omitempty"` - - // Custom user-assigned labels. - CustomLabels map[string]string `json:"custom_labels,omitempty"` - - // Skip connection check. - SkipConnectionCheck bool `json:"skip_connection_check,omitempty"` - - // Disable parsing comments from queries and showing them in QAN. - DisableCommentsParsing bool `json:"disable_comments_parsing,omitempty"` - - // TLS CA certificate. - TLSCa string `json:"tls_ca,omitempty"` - - // TLS Certifcate. - TLSCert string `json:"tls_cert,omitempty"` - - // TLS Certificate Key. - TLSKey string `json:"tls_key,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 add QAN postgre SQL pg stat monitor agent body -func (o *AddQANPostgreSQLPgStatMonitorAgentBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var addQanPostgreSqlPgStatMonitorAgentBodyTypeLogLevelPropEnum []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 { - addQanPostgreSqlPgStatMonitorAgentBodyTypeLogLevelPropEnum = append(addQanPostgreSqlPgStatMonitorAgentBodyTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddQANPostgreSQLPgStatMonitorAgentBodyLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddQANPostgreSQLPgStatMonitorAgentBodyLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddQANPostgreSQLPgStatMonitorAgentBodyLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddQANPostgreSQLPgStatMonitorAgentBodyLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddQANPostgreSQLPgStatMonitorAgentBodyLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddQANPostgreSQLPgStatMonitorAgentBodyLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddQANPostgreSQLPgStatMonitorAgentBodyLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddQANPostgreSQLPgStatMonitorAgentBodyLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddQANPostgreSQLPgStatMonitorAgentBodyLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddQANPostgreSQLPgStatMonitorAgentBodyLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddQANPostgreSQLPgStatMonitorAgentBodyLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddQANPostgreSQLPgStatMonitorAgentBodyLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddQANPostgreSQLPgStatMonitorAgentBody) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addQanPostgreSqlPgStatMonitorAgentBodyTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddQANPostgreSQLPgStatMonitorAgentBody) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("body"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add QAN postgre SQL pg stat monitor agent body based on context it is used -func (o *AddQANPostgreSQLPgStatMonitorAgentBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANPostgreSQLPgStatMonitorAgentBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANPostgreSQLPgStatMonitorAgentBody) UnmarshalBinary(b []byte) error { - var res AddQANPostgreSQLPgStatMonitorAgentBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddQANPostgreSQLPgStatMonitorAgentDefaultBody add QAN postgre SQL pg stat monitor agent default body -swagger:model AddQANPostgreSQLPgStatMonitorAgentDefaultBody -*/ -type AddQANPostgreSQLPgStatMonitorAgentDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*AddQANPostgreSQLPgStatMonitorAgentDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this add QAN postgre SQL pg stat monitor agent default body -func (o *AddQANPostgreSQLPgStatMonitorAgentDefaultBody) 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 *AddQANPostgreSQLPgStatMonitorAgentDefaultBody) 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("AddQANPostgreSQLPgStatMonitorAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddQANPostgreSQLPgStatMonitorAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this add QAN postgre SQL pg stat monitor agent default body based on the context it is used -func (o *AddQANPostgreSQLPgStatMonitorAgentDefaultBody) 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 *AddQANPostgreSQLPgStatMonitorAgentDefaultBody) 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("AddQANPostgreSQLPgStatMonitorAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddQANPostgreSQLPgStatMonitorAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANPostgreSQLPgStatMonitorAgentDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANPostgreSQLPgStatMonitorAgentDefaultBody) UnmarshalBinary(b []byte) error { - var res AddQANPostgreSQLPgStatMonitorAgentDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddQANPostgreSQLPgStatMonitorAgentDefaultBodyDetailsItems0 add QAN postgre SQL pg stat monitor agent default body details items0 -swagger:model AddQANPostgreSQLPgStatMonitorAgentDefaultBodyDetailsItems0 -*/ -type AddQANPostgreSQLPgStatMonitorAgentDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this add QAN postgre SQL pg stat monitor agent default body details items0 -func (o *AddQANPostgreSQLPgStatMonitorAgentDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this add QAN postgre SQL pg stat monitor agent default body details items0 based on context it is used -func (o *AddQANPostgreSQLPgStatMonitorAgentDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANPostgreSQLPgStatMonitorAgentDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANPostgreSQLPgStatMonitorAgentDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res AddQANPostgreSQLPgStatMonitorAgentDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddQANPostgreSQLPgStatMonitorAgentOKBody add QAN postgre SQL pg stat monitor agent OK body -swagger:model AddQANPostgreSQLPgStatMonitorAgentOKBody -*/ -type AddQANPostgreSQLPgStatMonitorAgentOKBody struct { - // qan postgresql pgstatmonitor agent - QANPostgresqlPgstatmonitorAgent *AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent `json:"qan_postgresql_pgstatmonitor_agent,omitempty"` -} - -// Validate validates this add QAN postgre SQL pg stat monitor agent OK body -func (o *AddQANPostgreSQLPgStatMonitorAgentOKBody) 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 *AddQANPostgreSQLPgStatMonitorAgentOKBody) 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("addQanPostgreSqlPgStatMonitorAgentOk" + "." + "qan_postgresql_pgstatmonitor_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addQanPostgreSqlPgStatMonitorAgentOk" + "." + "qan_postgresql_pgstatmonitor_agent") - } - return err - } - } - - return nil -} - -// ContextValidate validate this add QAN postgre SQL pg stat monitor agent OK body based on the context it is used -func (o *AddQANPostgreSQLPgStatMonitorAgentOKBody) 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 *AddQANPostgreSQLPgStatMonitorAgentOKBody) 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("addQanPostgreSqlPgStatMonitorAgentOk" + "." + "qan_postgresql_pgstatmonitor_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addQanPostgreSqlPgStatMonitorAgentOk" + "." + "qan_postgresql_pgstatmonitor_agent") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANPostgreSQLPgStatMonitorAgentOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANPostgreSQLPgStatMonitorAgentOKBody) UnmarshalBinary(b []byte) error { - var res AddQANPostgreSQLPgStatMonitorAgentOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent QANPostgreSQLPgStatMonitorAgent runs within pmm-agent and sends PostgreSQL Query Analytics data to the PMM Server. -swagger:model AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent -*/ -type AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent 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. - // - // Status fields below. - 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 add QAN postgre SQL pg stat monitor agent OK body QAN postgresql pgstatmonitor agent -func (o *AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent) 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 addQanPostgreSqlPgStatMonitorAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeStatusPropEnum []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 { - addQanPostgreSqlPgStatMonitorAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeStatusPropEnum = append(addQanPostgreSqlPgStatMonitorAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeStatusPropEnum, v) - } -} - -const ( - - // AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addQanPostgreSqlPgStatMonitorAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("addQanPostgreSqlPgStatMonitorAgentOk"+"."+"qan_postgresql_pgstatmonitor_agent"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var addQanPostgreSqlPgStatMonitorAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeLogLevelPropEnum []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 { - addQanPostgreSqlPgStatMonitorAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeLogLevelPropEnum = append(addQanPostgreSqlPgStatMonitorAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addQanPostgreSqlPgStatMonitorAgentOkBodyQanPostgresqlPgstatmonitorAgentTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("addQanPostgreSqlPgStatMonitorAgentOk"+"."+"qan_postgresql_pgstatmonitor_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add QAN postgre SQL pg stat monitor agent OK body QAN postgresql pgstatmonitor agent based on context it is used -func (o *AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent) UnmarshalBinary(b []byte) error { - var res AddQANPostgreSQLPgStatMonitorAgentOKBodyQANPostgresqlPgstatmonitorAgent - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} diff --git a/api/inventory/v1/json/client/agents_service/add_qan_postgre_sql_pg_statements_agent_parameters.go b/api/inventory/v1/json/client/agents_service/add_qan_postgre_sql_pg_statements_agent_parameters.go deleted file mode 100644 index ef98a7f1b6..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_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" -) - -// NewAddQANPostgreSQLPgStatementsAgentParams creates a new AddQANPostgreSQLPgStatementsAgentParams 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 NewAddQANPostgreSQLPgStatementsAgentParams() *AddQANPostgreSQLPgStatementsAgentParams { - return &AddQANPostgreSQLPgStatementsAgentParams{ - timeout: cr.DefaultTimeout, - } -} - -// NewAddQANPostgreSQLPgStatementsAgentParamsWithTimeout creates a new AddQANPostgreSQLPgStatementsAgentParams object -// with the ability to set a timeout on a request. -func NewAddQANPostgreSQLPgStatementsAgentParamsWithTimeout(timeout time.Duration) *AddQANPostgreSQLPgStatementsAgentParams { - return &AddQANPostgreSQLPgStatementsAgentParams{ - timeout: timeout, - } -} - -// NewAddQANPostgreSQLPgStatementsAgentParamsWithContext creates a new AddQANPostgreSQLPgStatementsAgentParams object -// with the ability to set a context for a request. -func NewAddQANPostgreSQLPgStatementsAgentParamsWithContext(ctx context.Context) *AddQANPostgreSQLPgStatementsAgentParams { - return &AddQANPostgreSQLPgStatementsAgentParams{ - Context: ctx, - } -} - -// NewAddQANPostgreSQLPgStatementsAgentParamsWithHTTPClient creates a new AddQANPostgreSQLPgStatementsAgentParams object -// with the ability to set a custom HTTPClient for a request. -func NewAddQANPostgreSQLPgStatementsAgentParamsWithHTTPClient(client *http.Client) *AddQANPostgreSQLPgStatementsAgentParams { - return &AddQANPostgreSQLPgStatementsAgentParams{ - HTTPClient: client, - } -} - -/* -AddQANPostgreSQLPgStatementsAgentParams contains all the parameters to send to the API endpoint - - for the add QAN postgre SQL pg statements agent operation. - - Typically these are written to a http.Request. -*/ -type AddQANPostgreSQLPgStatementsAgentParams struct { - // Body. - Body AddQANPostgreSQLPgStatementsAgentBody - - timeout time.Duration - Context context.Context - HTTPClient *http.Client -} - -// WithDefaults hydrates default values in the add QAN postgre SQL pg statements agent params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddQANPostgreSQLPgStatementsAgentParams) WithDefaults() *AddQANPostgreSQLPgStatementsAgentParams { - o.SetDefaults() - return o -} - -// SetDefaults hydrates default values in the add QAN postgre SQL pg statements agent params (not the query body). -// -// All values with no default are reset to their zero value. -func (o *AddQANPostgreSQLPgStatementsAgentParams) SetDefaults() { - // no default values defined for this parameter -} - -// WithTimeout adds the timeout to the add QAN postgre SQL pg statements agent params -func (o *AddQANPostgreSQLPgStatementsAgentParams) WithTimeout(timeout time.Duration) *AddQANPostgreSQLPgStatementsAgentParams { - o.SetTimeout(timeout) - return o -} - -// SetTimeout adds the timeout to the add QAN postgre SQL pg statements agent params -func (o *AddQANPostgreSQLPgStatementsAgentParams) SetTimeout(timeout time.Duration) { - o.timeout = timeout -} - -// WithContext adds the context to the add QAN postgre SQL pg statements agent params -func (o *AddQANPostgreSQLPgStatementsAgentParams) WithContext(ctx context.Context) *AddQANPostgreSQLPgStatementsAgentParams { - o.SetContext(ctx) - return o -} - -// SetContext adds the context to the add QAN postgre SQL pg statements agent params -func (o *AddQANPostgreSQLPgStatementsAgentParams) SetContext(ctx context.Context) { - o.Context = ctx -} - -// WithHTTPClient adds the HTTPClient to the add QAN postgre SQL pg statements agent params -func (o *AddQANPostgreSQLPgStatementsAgentParams) WithHTTPClient(client *http.Client) *AddQANPostgreSQLPgStatementsAgentParams { - o.SetHTTPClient(client) - return o -} - -// SetHTTPClient adds the HTTPClient to the add QAN postgre SQL pg statements agent params -func (o *AddQANPostgreSQLPgStatementsAgentParams) SetHTTPClient(client *http.Client) { - o.HTTPClient = client -} - -// WithBody adds the body to the add QAN postgre SQL pg statements agent params -func (o *AddQANPostgreSQLPgStatementsAgentParams) WithBody(body AddQANPostgreSQLPgStatementsAgentBody) *AddQANPostgreSQLPgStatementsAgentParams { - o.SetBody(body) - return o -} - -// SetBody adds the body to the add QAN postgre SQL pg statements agent params -func (o *AddQANPostgreSQLPgStatementsAgentParams) SetBody(body AddQANPostgreSQLPgStatementsAgentBody) { - o.Body = body -} - -// WriteToRequest writes these params to a swagger request -func (o *AddQANPostgreSQLPgStatementsAgentParams) 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/add_qan_postgre_sql_pg_statements_agent_responses.go b/api/inventory/v1/json/client/agents_service/add_qan_postgre_sql_pg_statements_agent_responses.go deleted file mode 100644 index 4f6639f61c..0000000000 --- a/api/inventory/v1/json/client/agents_service/add_qan_postgre_sql_pg_statements_agent_responses.go +++ /dev/null @@ -1,703 +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" -) - -// AddQANPostgreSQLPgStatementsAgentReader is a Reader for the AddQANPostgreSQLPgStatementsAgent structure. -type AddQANPostgreSQLPgStatementsAgentReader struct { - formats strfmt.Registry -} - -// ReadResponse reads a server response into the received o. -func (o *AddQANPostgreSQLPgStatementsAgentReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) { - switch response.Code() { - case 200: - result := NewAddQANPostgreSQLPgStatementsAgentOK() - if err := result.readResponse(response, consumer, o.formats); err != nil { - return nil, err - } - return result, nil - default: - result := NewAddQANPostgreSQLPgStatementsAgentDefault(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 - } -} - -// NewAddQANPostgreSQLPgStatementsAgentOK creates a AddQANPostgreSQLPgStatementsAgentOK with default headers values -func NewAddQANPostgreSQLPgStatementsAgentOK() *AddQANPostgreSQLPgStatementsAgentOK { - return &AddQANPostgreSQLPgStatementsAgentOK{} -} - -/* -AddQANPostgreSQLPgStatementsAgentOK describes a response with status code 200, with default header values. - -A successful response. -*/ -type AddQANPostgreSQLPgStatementsAgentOK struct { - Payload *AddQANPostgreSQLPgStatementsAgentOKBody -} - -func (o *AddQANPostgreSQLPgStatementsAgentOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddQANPostgreSQLPgStatementsAgent][%d] addQanPostgreSqlPgStatementsAgentOk %+v", 200, o.Payload) -} - -func (o *AddQANPostgreSQLPgStatementsAgentOK) GetPayload() *AddQANPostgreSQLPgStatementsAgentOKBody { - return o.Payload -} - -func (o *AddQANPostgreSQLPgStatementsAgentOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddQANPostgreSQLPgStatementsAgentOKBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -// NewAddQANPostgreSQLPgStatementsAgentDefault creates a AddQANPostgreSQLPgStatementsAgentDefault with default headers values -func NewAddQANPostgreSQLPgStatementsAgentDefault(code int) *AddQANPostgreSQLPgStatementsAgentDefault { - return &AddQANPostgreSQLPgStatementsAgentDefault{ - _statusCode: code, - } -} - -/* -AddQANPostgreSQLPgStatementsAgentDefault describes a response with status code -1, with default header values. - -An unexpected error response. -*/ -type AddQANPostgreSQLPgStatementsAgentDefault struct { - _statusCode int - - Payload *AddQANPostgreSQLPgStatementsAgentDefaultBody -} - -// Code gets the status code for the add QAN postgre SQL pg statements agent default response -func (o *AddQANPostgreSQLPgStatementsAgentDefault) Code() int { - return o._statusCode -} - -func (o *AddQANPostgreSQLPgStatementsAgentDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddQANPostgreSQLPgStatementsAgent][%d] AddQANPostgreSQLPgStatementsAgent default %+v", o._statusCode, o.Payload) -} - -func (o *AddQANPostgreSQLPgStatementsAgentDefault) GetPayload() *AddQANPostgreSQLPgStatementsAgentDefaultBody { - return o.Payload -} - -func (o *AddQANPostgreSQLPgStatementsAgentDefault) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error { - o.Payload = new(AddQANPostgreSQLPgStatementsAgentDefaultBody) - - // response payload - if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF { - return err - } - - return nil -} - -/* -AddQANPostgreSQLPgStatementsAgentBody add QAN postgre SQL pg statements agent body -swagger:model AddQANPostgreSQLPgStatementsAgentBody -*/ -type AddQANPostgreSQLPgStatementsAgentBody struct { - // The pmm-agent identifier which runs this instance. - PMMAgentID string `json:"pmm_agent_id,omitempty"` - - // Service identifier. - ServiceID string `json:"service_id,omitempty"` - - // PostgreSQL username for getting pg stat statements data. - Username string `json:"username,omitempty"` - - // PostgreSQL password for getting pg stat statements data. - Password string `json:"password,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"` - - // Skip connection check. - SkipConnectionCheck bool `json:"skip_connection_check,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"` - - // TLS CA certificate. - TLSCa string `json:"tls_ca,omitempty"` - - // TLS Certifcate. - TLSCert string `json:"tls_cert,omitempty"` - - // TLS Certificate Key. - TLSKey string `json:"tls_key,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 add QAN postgre SQL pg statements agent body -func (o *AddQANPostgreSQLPgStatementsAgentBody) Validate(formats strfmt.Registry) error { - var res []error - - if err := o.validateLogLevel(formats); err != nil { - res = append(res, err) - } - - if len(res) > 0 { - return errors.CompositeValidationError(res...) - } - return nil -} - -var addQanPostgreSqlPgStatementsAgentBodyTypeLogLevelPropEnum []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 { - addQanPostgreSqlPgStatementsAgentBodyTypeLogLevelPropEnum = append(addQanPostgreSqlPgStatementsAgentBodyTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddQANPostgreSQLPgStatementsAgentBodyLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddQANPostgreSQLPgStatementsAgentBodyLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddQANPostgreSQLPgStatementsAgentBodyLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddQANPostgreSQLPgStatementsAgentBodyLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddQANPostgreSQLPgStatementsAgentBodyLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddQANPostgreSQLPgStatementsAgentBodyLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddQANPostgreSQLPgStatementsAgentBodyLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddQANPostgreSQLPgStatementsAgentBodyLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddQANPostgreSQLPgStatementsAgentBodyLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddQANPostgreSQLPgStatementsAgentBodyLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddQANPostgreSQLPgStatementsAgentBodyLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddQANPostgreSQLPgStatementsAgentBodyLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddQANPostgreSQLPgStatementsAgentBody) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addQanPostgreSqlPgStatementsAgentBodyTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddQANPostgreSQLPgStatementsAgentBody) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("body"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add QAN postgre SQL pg statements agent body based on context it is used -func (o *AddQANPostgreSQLPgStatementsAgentBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANPostgreSQLPgStatementsAgentBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANPostgreSQLPgStatementsAgentBody) UnmarshalBinary(b []byte) error { - var res AddQANPostgreSQLPgStatementsAgentBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddQANPostgreSQLPgStatementsAgentDefaultBody add QAN postgre SQL pg statements agent default body -swagger:model AddQANPostgreSQLPgStatementsAgentDefaultBody -*/ -type AddQANPostgreSQLPgStatementsAgentDefaultBody struct { - // code - Code int32 `json:"code,omitempty"` - - // message - Message string `json:"message,omitempty"` - - // details - Details []*AddQANPostgreSQLPgStatementsAgentDefaultBodyDetailsItems0 `json:"details"` -} - -// Validate validates this add QAN postgre SQL pg statements agent default body -func (o *AddQANPostgreSQLPgStatementsAgentDefaultBody) 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 *AddQANPostgreSQLPgStatementsAgentDefaultBody) 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("AddQANPostgreSQLPgStatementsAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddQANPostgreSQLPgStatementsAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - - } - - return nil -} - -// ContextValidate validate this add QAN postgre SQL pg statements agent default body based on the context it is used -func (o *AddQANPostgreSQLPgStatementsAgentDefaultBody) 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 *AddQANPostgreSQLPgStatementsAgentDefaultBody) 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("AddQANPostgreSQLPgStatementsAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("AddQANPostgreSQLPgStatementsAgent default" + "." + "details" + "." + strconv.Itoa(i)) - } - return err - } - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANPostgreSQLPgStatementsAgentDefaultBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANPostgreSQLPgStatementsAgentDefaultBody) UnmarshalBinary(b []byte) error { - var res AddQANPostgreSQLPgStatementsAgentDefaultBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddQANPostgreSQLPgStatementsAgentDefaultBodyDetailsItems0 add QAN postgre SQL pg statements agent default body details items0 -swagger:model AddQANPostgreSQLPgStatementsAgentDefaultBodyDetailsItems0 -*/ -type AddQANPostgreSQLPgStatementsAgentDefaultBodyDetailsItems0 struct { - // at type - AtType string `json:"@type,omitempty"` -} - -// Validate validates this add QAN postgre SQL pg statements agent default body details items0 -func (o *AddQANPostgreSQLPgStatementsAgentDefaultBodyDetailsItems0) Validate(formats strfmt.Registry) error { - return nil -} - -// ContextValidate validates this add QAN postgre SQL pg statements agent default body details items0 based on context it is used -func (o *AddQANPostgreSQLPgStatementsAgentDefaultBodyDetailsItems0) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANPostgreSQLPgStatementsAgentDefaultBodyDetailsItems0) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANPostgreSQLPgStatementsAgentDefaultBodyDetailsItems0) UnmarshalBinary(b []byte) error { - var res AddQANPostgreSQLPgStatementsAgentDefaultBodyDetailsItems0 - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddQANPostgreSQLPgStatementsAgentOKBody add QAN postgre SQL pg statements agent OK body -swagger:model AddQANPostgreSQLPgStatementsAgentOKBody -*/ -type AddQANPostgreSQLPgStatementsAgentOKBody struct { - // qan postgresql pgstatements agent - QANPostgresqlPgstatementsAgent *AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent `json:"qan_postgresql_pgstatements_agent,omitempty"` -} - -// Validate validates this add QAN postgre SQL pg statements agent OK body -func (o *AddQANPostgreSQLPgStatementsAgentOKBody) 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 *AddQANPostgreSQLPgStatementsAgentOKBody) 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("addQanPostgreSqlPgStatementsAgentOk" + "." + "qan_postgresql_pgstatements_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addQanPostgreSqlPgStatementsAgentOk" + "." + "qan_postgresql_pgstatements_agent") - } - return err - } - } - - return nil -} - -// ContextValidate validate this add QAN postgre SQL pg statements agent OK body based on the context it is used -func (o *AddQANPostgreSQLPgStatementsAgentOKBody) 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 *AddQANPostgreSQLPgStatementsAgentOKBody) 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("addQanPostgreSqlPgStatementsAgentOk" + "." + "qan_postgresql_pgstatements_agent") - } else if ce, ok := err.(*errors.CompositeError); ok { - return ce.ValidateName("addQanPostgreSqlPgStatementsAgentOk" + "." + "qan_postgresql_pgstatements_agent") - } - return err - } - } - - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANPostgreSQLPgStatementsAgentOKBody) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANPostgreSQLPgStatementsAgentOKBody) UnmarshalBinary(b []byte) error { - var res AddQANPostgreSQLPgStatementsAgentOKBody - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} - -/* -AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent QANPostgreSQLPgStatementsAgent runs within pmm-agent and sends PostgreSQL Query Analytics data to the PMM Server. -swagger:model AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent -*/ -type AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent 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. - // - // Status fields below. - 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 add QAN postgre SQL pg statements agent OK body QAN postgresql pgstatements agent -func (o *AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent) 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 addQanPostgreSqlPgStatementsAgentOkBodyQanPostgresqlPgstatementsAgentTypeStatusPropEnum []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 { - addQanPostgreSqlPgStatementsAgentOkBodyQanPostgresqlPgstatementsAgentTypeStatusPropEnum = append(addQanPostgreSqlPgStatementsAgentOkBodyQanPostgresqlPgstatementsAgentTypeStatusPropEnum, v) - } -} - -const ( - - // AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSUNSPECIFIED captures enum value "AGENT_STATUS_UNSPECIFIED" - AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSUNSPECIFIED string = "AGENT_STATUS_UNSPECIFIED" - - // AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSSTARTING captures enum value "AGENT_STATUS_STARTING" - AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSSTARTING string = "AGENT_STATUS_STARTING" - - // AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSRUNNING captures enum value "AGENT_STATUS_RUNNING" - AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSRUNNING string = "AGENT_STATUS_RUNNING" - - // AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSWAITING captures enum value "AGENT_STATUS_WAITING" - AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSWAITING string = "AGENT_STATUS_WAITING" - - // AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSSTOPPING captures enum value "AGENT_STATUS_STOPPING" - AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSSTOPPING string = "AGENT_STATUS_STOPPING" - - // AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSDONE captures enum value "AGENT_STATUS_DONE" - AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSDONE string = "AGENT_STATUS_DONE" - - // AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSUNKNOWN captures enum value "AGENT_STATUS_UNKNOWN" - AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentStatusAGENTSTATUSUNKNOWN string = "AGENT_STATUS_UNKNOWN" -) - -// prop value enum -func (o *AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent) validateStatusEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addQanPostgreSqlPgStatementsAgentOkBodyQanPostgresqlPgstatementsAgentTypeStatusPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent) validateStatus(formats strfmt.Registry) error { - if swag.IsZero(o.Status) { // not required - return nil - } - - // value enum - if err := o.validateStatusEnum("addQanPostgreSqlPgStatementsAgentOk"+"."+"qan_postgresql_pgstatements_agent"+"."+"status", "body", *o.Status); err != nil { - return err - } - - return nil -} - -var addQanPostgreSqlPgStatementsAgentOkBodyQanPostgresqlPgstatementsAgentTypeLogLevelPropEnum []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 { - addQanPostgreSqlPgStatementsAgentOkBodyQanPostgresqlPgstatementsAgentTypeLogLevelPropEnum = append(addQanPostgreSqlPgStatementsAgentOkBodyQanPostgresqlPgstatementsAgentTypeLogLevelPropEnum, v) - } -} - -const ( - - // AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELUNSPECIFIED captures enum value "LOG_LEVEL_UNSPECIFIED" - AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELUNSPECIFIED string = "LOG_LEVEL_UNSPECIFIED" - - // AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELFATAL captures enum value "LOG_LEVEL_FATAL" - AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELFATAL string = "LOG_LEVEL_FATAL" - - // AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELERROR captures enum value "LOG_LEVEL_ERROR" - AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELERROR string = "LOG_LEVEL_ERROR" - - // AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELWARN captures enum value "LOG_LEVEL_WARN" - AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELWARN string = "LOG_LEVEL_WARN" - - // AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELINFO captures enum value "LOG_LEVEL_INFO" - AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELINFO string = "LOG_LEVEL_INFO" - - // AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELDEBUG captures enum value "LOG_LEVEL_DEBUG" - AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgentLogLevelLOGLEVELDEBUG string = "LOG_LEVEL_DEBUG" -) - -// prop value enum -func (o *AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent) validateLogLevelEnum(path, location string, value string) error { - if err := validate.EnumCase(path, location, value, addQanPostgreSqlPgStatementsAgentOkBodyQanPostgresqlPgstatementsAgentTypeLogLevelPropEnum, true); err != nil { - return err - } - return nil -} - -func (o *AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent) validateLogLevel(formats strfmt.Registry) error { - if swag.IsZero(o.LogLevel) { // not required - return nil - } - - // value enum - if err := o.validateLogLevelEnum("addQanPostgreSqlPgStatementsAgentOk"+"."+"qan_postgresql_pgstatements_agent"+"."+"log_level", "body", *o.LogLevel); err != nil { - return err - } - - return nil -} - -// ContextValidate validates this add QAN postgre SQL pg statements agent OK body QAN postgresql pgstatements agent based on context it is used -func (o *AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent) ContextValidate(ctx context.Context, formats strfmt.Registry) error { - return nil -} - -// MarshalBinary interface implementation -func (o *AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent) MarshalBinary() ([]byte, error) { - if o == nil { - return nil, nil - } - return swag.WriteJSON(o) -} - -// UnmarshalBinary interface implementation -func (o *AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent) UnmarshalBinary(b []byte) error { - var res AddQANPostgreSQLPgStatementsAgentOKBodyQANPostgresqlPgstatementsAgent - if err := swag.ReadJSON(b, &res); err != nil { - return err - } - *o = res - return nil -} 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 3c3b44ed8f..f793f89d3e 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,18 +30,6 @@ type ClientOption func(*runtime.ClientOperation) type ClientService interface { AddAgent(params *AddAgentParams, opts ...ClientOption) (*AddAgentOK, error) - AddPMMAgent(params *AddPMMAgentParams, opts ...ClientOption) (*AddPMMAgentOK, error) - - AddQANMongoDBProfilerAgent(params *AddQANMongoDBProfilerAgentParams, opts ...ClientOption) (*AddQANMongoDBProfilerAgentOK, error) - - AddQANMySQLPerfSchemaAgent(params *AddQANMySQLPerfSchemaAgentParams, opts ...ClientOption) (*AddQANMySQLPerfSchemaAgentOK, error) - - AddQANMySQLSlowlogAgent(params *AddQANMySQLSlowlogAgentParams, opts ...ClientOption) (*AddQANMySQLSlowlogAgentOK, error) - - AddQANPostgreSQLPgStatMonitorAgent(params *AddQANPostgreSQLPgStatMonitorAgentParams, opts ...ClientOption) (*AddQANPostgreSQLPgStatMonitorAgentOK, error) - - AddQANPostgreSQLPgStatementsAgent(params *AddQANPostgreSQLPgStatementsAgentParams, opts ...ClientOption) (*AddQANPostgreSQLPgStatementsAgentOK, error) - ChangeAzureDatabaseExporter(params *ChangeAzureDatabaseExporterParams, opts ...ClientOption) (*ChangeAzureDatabaseExporterOK, error) ChangeExternalExporter(params *ChangeExternalExporterParams, opts ...ClientOption) (*ChangeExternalExporterOK, error) @@ -118,240 +106,6 @@ func (a *Client) AddAgent(params *AddAgentParams, opts ...ClientOption) (*AddAge return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) } -/* -AddPMMAgent adds PMM agent - -Adds PMM Agent. -*/ -func (a *Client) AddPMMAgent(params *AddPMMAgentParams, opts ...ClientOption) (*AddPMMAgentOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewAddPMMAgentParams() - } - op := &runtime.ClientOperation{ - ID: "AddPMMAgent", - Method: "POST", - PathPattern: "/v1/inventory/Agents/AddPMMAgent", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &AddPMMAgentReader{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.(*AddPMMAgentOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*AddPMMAgentDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -AddQANMongoDBProfilerAgent adds QAN mongo DB profiler agent - -Adds 'Query Analytics MongoDB Profiler' Agent. -*/ -func (a *Client) AddQANMongoDBProfilerAgent(params *AddQANMongoDBProfilerAgentParams, opts ...ClientOption) (*AddQANMongoDBProfilerAgentOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewAddQANMongoDBProfilerAgentParams() - } - op := &runtime.ClientOperation{ - ID: "AddQANMongoDBProfilerAgent", - Method: "POST", - PathPattern: "/v1/inventory/Agents/AddQANMongoDBProfilerAgent", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &AddQANMongoDBProfilerAgentReader{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.(*AddQANMongoDBProfilerAgentOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*AddQANMongoDBProfilerAgentDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -AddQANMySQLPerfSchemaAgent adds QAN my SQL perf schema agent - -Adds 'Query Analytics MySQL PerfSchema' Agent. -*/ -func (a *Client) AddQANMySQLPerfSchemaAgent(params *AddQANMySQLPerfSchemaAgentParams, opts ...ClientOption) (*AddQANMySQLPerfSchemaAgentOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewAddQANMySQLPerfSchemaAgentParams() - } - op := &runtime.ClientOperation{ - ID: "AddQANMySQLPerfSchemaAgent", - Method: "POST", - PathPattern: "/v1/inventory/Agents/AddQANMySQLPerfSchemaAgent", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &AddQANMySQLPerfSchemaAgentReader{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.(*AddQANMySQLPerfSchemaAgentOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*AddQANMySQLPerfSchemaAgentDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -AddQANMySQLSlowlogAgent adds QAN my SQL slowlog agent - -Adds 'Query Analytics MySQL Slowlog' Agent. -*/ -func (a *Client) AddQANMySQLSlowlogAgent(params *AddQANMySQLSlowlogAgentParams, opts ...ClientOption) (*AddQANMySQLSlowlogAgentOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewAddQANMySQLSlowlogAgentParams() - } - op := &runtime.ClientOperation{ - ID: "AddQANMySQLSlowlogAgent", - Method: "POST", - PathPattern: "/v1/inventory/Agents/AddQANMySQLSlowlogAgent", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &AddQANMySQLSlowlogAgentReader{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.(*AddQANMySQLSlowlogAgentOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*AddQANMySQLSlowlogAgentDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -AddQANPostgreSQLPgStatMonitorAgent adds QAN postgre SQL pg stat monitor agent - -Adds 'Query Analytics PostgreSQL pg_stat_monitor' Agent. -*/ -func (a *Client) AddQANPostgreSQLPgStatMonitorAgent(params *AddQANPostgreSQLPgStatMonitorAgentParams, opts ...ClientOption) (*AddQANPostgreSQLPgStatMonitorAgentOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewAddQANPostgreSQLPgStatMonitorAgentParams() - } - op := &runtime.ClientOperation{ - ID: "AddQANPostgreSQLPgStatMonitorAgent", - Method: "POST", - PathPattern: "/v1/inventory/Agents/AddQANPostgreSQLPgStatMonitorAgent", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &AddQANPostgreSQLPgStatMonitorAgentReader{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.(*AddQANPostgreSQLPgStatMonitorAgentOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*AddQANPostgreSQLPgStatMonitorAgentDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - -/* -AddQANPostgreSQLPgStatementsAgent adds QAN postgre SQL pg stat statements agent - -Adds 'Query Analytics PostgreSQL pg_stat_statements' Agent. -*/ -func (a *Client) AddQANPostgreSQLPgStatementsAgent(params *AddQANPostgreSQLPgStatementsAgentParams, opts ...ClientOption) (*AddQANPostgreSQLPgStatementsAgentOK, error) { - // TODO: Validate the params before sending - if params == nil { - params = NewAddQANPostgreSQLPgStatementsAgentParams() - } - op := &runtime.ClientOperation{ - ID: "AddQANPostgreSQLPgStatementsAgent", - Method: "POST", - PathPattern: "/v1/inventory/Agents/AddQANPostgreSQLPgStatementsAgent", - ProducesMediaTypes: []string{"application/json"}, - ConsumesMediaTypes: []string{"application/json"}, - Schemes: []string{"http", "https"}, - Params: params, - Reader: &AddQANPostgreSQLPgStatementsAgentReader{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.(*AddQANPostgreSQLPgStatementsAgentOK) - if ok { - return success, nil - } - // unexpected success response - unexpectedSuccess := result.(*AddQANPostgreSQLPgStatementsAgentDefault) - return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code()) -} - /* ChangeAzureDatabaseExporter changes azure database exporter diff --git a/api/inventory/v1/json/v1.json b/api/inventory/v1/json/v1.json index 0cda14b78d..2c411530f9 100644 --- a/api/inventory/v1/json/v1.json +++ b/api/inventory/v1/json/v1.json @@ -108,7 +108,7 @@ "x-order": 9 } }, - "x-order": 7 + "x-order": 8 }, "external_exporter": { "type": "object", @@ -163,7 +163,7 @@ "x-order": 2 } }, - "x-order": 5 + "x-order": 6 }, "mongodb_exporter": { "type": "object", @@ -289,7 +289,7 @@ "x-order": 2 } }, - "x-order": 2 + "x-order": 3 }, "mysqld_exporter": { "type": "object", @@ -397,7 +397,7 @@ "x-order": 2 } }, - "x-order": 1 + "x-order": 2 }, "node_exporter": { "type": "object", @@ -449,6 +449,25 @@ "x-order": 2 } }, + "x-order": 1 + }, + "pmm_agent": { + "type": "object", + "properties": { + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 1 + }, + "runs_on_node_id": { + "description": "Node identifier where this instance runs.", + "type": "string", + "x-order": 0 + } + }, "x-order": 0 }, "postgres_exporter": { @@ -557,7 +576,7 @@ "x-order": 2 } }, - "x-order": 3 + "x-order": 4 }, "proxysql_exporter": { "type": "object", @@ -644,20 +663,20 @@ "x-order": 2 } }, - "x-order": 4 + "x-order": 5 }, - "rds_exporter": { + "qan_mongodb_profiler_agent": { "type": "object", "properties": { - "aws_access_key": { - "description": "AWS Access Key.", + "authentication_database": { + "description": "Authentication database.", "type": "string", - "x-order": 2 + "x-order": 13 }, - "aws_secret_key": { - "description": "AWS Secret Key.", + "authentication_mechanism": { + "description": "Authentication mechanism.\nSee https://docs.mongodb.com/manual/reference/connection-string/#mongodb-urioption-urioption.authMechanism\nfor details.", "type": "string", - "x-order": 3 + "x-order": 12 }, "custom_labels": { "description": "Custom user-assigned labels.", @@ -665,17 +684,7 @@ "additionalProperties": { "type": "string" }, - "x-order": 4 - }, - "disable_basic_metrics": { - "description": "Disable basic metrics.", - "type": "boolean", - "x-order": 6 - }, - "disable_enhanced_metrics": { - "description": "Disable enhanced metrics.", - "type": "boolean", - "x-order": 7 + "x-order": 10 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -690,78 +699,87 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], + "x-order": 14 + }, + "max_query_length": { + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "type": "integer", + "format": "int32", "x-order": 9 }, - "node_id": { - "description": "Node identifier.", + "password": { + "description": "MongoDB password for getting profile data.", "type": "string", - "x-order": 1 + "x-order": 3 }, "pmm_agent_id": { "description": "The pmm-agent identifier which runs this instance.", "type": "string", "x-order": 0 }, - "push_metrics": { - "description": "Enables push metrics mode for exporter.", - "type": "boolean", - "x-order": 8 + "service_id": { + "description": "Service identifier.", + "type": "string", + "x-order": 1 }, "skip_connection_check": { "description": "Skip connection check.", "type": "boolean", - "x-order": 5 - } - }, - "x-order": 6 - } - } - } - } - ], - "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.", - "type": "object", - "properties": { - "agent_id": { - "description": "Unique randomly generated instance identifier.", + "x-order": 11 + }, + "tls": { + "description": "Use TLS for database connections.", + "type": "boolean", + "x-order": 4 + }, + "tls_ca": { + "description": "Certificate Authority certificate chain.", "type": "string", - "x-order": 0 + "x-order": 8 }, - "azure_database_resource_type": { + "tls_certificate_key": { + "description": "Client certificate and key.", "type": "string", - "title": "Azure database resource type (mysql, maria, postgres)", - "x-order": 5 + "x-order": 6 }, - "azure_database_subscription_id": { - "description": "Azure database subscription ID.", + "tls_certificate_key_file_password": { + "description": "Password for decrypting tls_certificate_key.", "type": "string", - "x-order": 4 + "x-order": 7 }, + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation.", + "type": "boolean", + "x-order": 5 + }, + "username": { + "description": "MongoDB username for getting profile data.", + "type": "string", + "x-order": 2 + } + }, + "x-order": 11 + }, + "qan_mysql_perfschema_agent": { + "type": "object", + "properties": { "custom_labels": { - "description": "Custom user-assigned labels.\n\nStatus fields below.", + "description": "Custom user-assigned labels.", "type": "object", "additionalProperties": { "type": "string" }, - "x-order": 6 + "x-order": 11 }, - "disabled": { - "description": "Desired Agent status: enabled (false) or disabled (true).", + "disable_comments_parsing": { + "description": "Disable parsing comments from queries and showing them in QAN.", "type": "boolean", - "x-order": 2 + "x-order": 13 }, - "listen_port": { - "description": "Listen port for scraping metrics (the same for several configurations).", - "type": "integer", - "format": "int64", - "x-order": 8 + "disable_query_examples": { + "description": "Disable query examples.", + "type": "boolean", + "x-order": 10 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -776,91 +794,568 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 11 + "x-order": 14 }, - "node_id": { - "description": "Node identifier.", + "max_query_length": { + "type": "integer", + "format": "int32", + "title": "Limit query length in QAN (default: server-defined; -1: no limit)", + "x-order": 9 + }, + "password": { + "description": "MySQL password for getting performance data.", "type": "string", "x-order": 3 }, "pmm_agent_id": { "description": "The pmm-agent identifier which runs this instance.", "type": "string", - "x-order": 1 + "x-order": 0 }, - "process_exec_path": { - "description": "Path to exec process.", + "service_id": { + "description": "Service identifier.", "type": "string", - "x-order": 10 + "x-order": 1 }, - "push_metrics_enabled": { - "description": "True if the exporter operates in push metrics mode.", + "skip_connection_check": { + "description": "Skip connection check.", "type": "boolean", - "x-order": 9 + "x-order": 12 }, - "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.", + "tls": { + "description": "Use TLS for database connections.", + "type": "boolean", + "x-order": 4 + }, + "tls_ca": { + "description": "Certificate Authority certificate chain.", + "type": "string", + "x-order": 6 + }, + "tls_cert": { + "description": "Client certificate.", "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 + }, + "tls_key": { + "description": "Password for decrypting tls_cert.", + "type": "string", + "x-order": 8 + }, + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation.", + "type": "boolean", + "x-order": 5 + }, + "username": { + "description": "MySQL username for getting performance data.", + "type": "string", + "x-order": 2 } }, - "x-order": 7 + "x-order": 9 }, - "external_exporter": { - "description": "ExternalExporter runs on any Node type, including Remote Node.", + "qan_mysql_slowlog_agent": { "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": 7 + "x-order": 12 }, - "disabled": { - "description": "If disabled, metrics from this exporter will not be collected.", + "disable_comments_parsing": { + "description": "Disable parsing comments from queries and showing them in QAN.", "type": "boolean", - "x-order": 2 - }, - "listen_port": { - "description": "Listen port for scraping metrics.", - "type": "integer", - "format": "int64", - "x-order": 8 - }, - "metrics_path": { - "description": "Path under which metrics are exposed, used to generate URI.", - "type": "string", - "x-order": 6 - }, - "process_exec_path": { - "description": "Path to exec process.", - "type": "string", - "x-order": 10 + "x-order": 14 }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", + "disable_query_examples": { + "description": "Disable query examples.", "type": "boolean", - "x-order": 9 + "x-order": 10 }, - "runs_on_node_id": { - "description": "Node identifier where this instance runs.", + "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": 15 + }, + "max_query_length": { + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "type": "integer", + "format": "int32", + "x-order": 9 + }, + "max_slowlog_file_size": { + "description": "Rotate slowlog file at this size if \u003e 0.\nUse zero or negative value to disable rotation.", + "type": "string", + "format": "int64", + "x-order": 11 + }, + "password": { + "description": "MySQL password for getting slowlog data.", + "type": "string", + "x-order": 3 + }, + "pmm_agent_id": { + "description": "The pmm-agent identifier which runs this instance.", + "type": "string", + "x-order": 0 + }, + "service_id": { + "description": "Service identifier.", + "type": "string", + "x-order": 1 + }, + "skip_connection_check": { + "description": "Skip connection check.", + "type": "boolean", + "x-order": 13 + }, + "tls": { + "description": "Use TLS for database connections.", + "type": "boolean", + "x-order": 4 + }, + "tls_ca": { + "description": "Certificate Authority certificate chain.", + "type": "string", + "x-order": 6 + }, + "tls_cert": { + "description": "Client certificate.", + "type": "string", + "x-order": 7 + }, + "tls_key": { + "description": "Password for decrypting tls_cert.", + "type": "string", + "x-order": 8 + }, + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation.", + "type": "boolean", + "x-order": 5 + }, + "username": { + "description": "MySQL username for getting slowlog data.", + "type": "string", + "x-order": 2 + } + }, + "x-order": 10 + }, + "qan_postgresql_pgstatements_agent": { + "type": "object", + "properties": { + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 6 + }, + "disable_comments_parsing": { + "description": "Disable parsing comments from queries and showing them in QAN.", + "type": "boolean", + "x-order": 8 + }, + "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 + }, + "max_query_length": { + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "type": "integer", + "format": "int32", + "x-order": 9 + }, + "password": { + "description": "PostgreSQL password for getting pg stat statements data.", + "type": "string", + "x-order": 3 + }, + "pmm_agent_id": { + "description": "The pmm-agent identifier which runs this instance.", + "type": "string", + "x-order": 0 + }, + "service_id": { + "description": "Service identifier.", + "type": "string", + "x-order": 1 + }, + "skip_connection_check": { + "description": "Skip connection check.", + "type": "boolean", + "x-order": 7 + }, + "tls": { + "description": "Use TLS for database connections.", + "type": "boolean", + "x-order": 4 + }, + "tls_ca": { + "description": "TLS CA certificate.", + "type": "string", + "x-order": 10 + }, + "tls_cert": { + "description": "TLS Certifcate.", + "type": "string", + "x-order": 11 + }, + "tls_key": { + "description": "TLS Certificate Key.", + "type": "string", + "x-order": 12 + }, + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation.", + "type": "boolean", + "x-order": 5 + }, + "username": { + "description": "PostgreSQL username for getting pg stat statements data.", + "type": "string", + "x-order": 2 + } + }, + "x-order": 12 + }, + "qan_postgresql_pgstatmonitor_agent": { + "type": "object", + "properties": { + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 8 + }, + "disable_comments_parsing": { + "description": "Disable parsing comments from queries and showing them in QAN.", + "type": "boolean", + "x-order": 10 + }, + "disable_query_examples": { + "description": "Disable query examples.", + "type": "boolean", + "x-order": 7 + }, + "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": 14 + }, + "max_query_length": { + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "type": "integer", + "format": "int32", + "x-order": 6 + }, + "password": { + "description": "PostgreSQL password for getting pg stat monitor data.", + "type": "string", + "x-order": 3 + }, + "pmm_agent_id": { + "description": "The pmm-agent identifier which runs this instance.", + "type": "string", + "x-order": 0 + }, + "service_id": { + "description": "Service identifier.", + "type": "string", + "x-order": 1 + }, + "skip_connection_check": { + "description": "Skip connection check.", + "type": "boolean", + "x-order": 9 + }, + "tls": { + "description": "Use TLS for database connections.", + "type": "boolean", + "x-order": 4 + }, + "tls_ca": { + "description": "TLS CA certificate.", + "type": "string", + "x-order": 11 + }, + "tls_cert": { + "description": "TLS Certifcate.", + "type": "string", + "x-order": 12 + }, + "tls_key": { + "description": "TLS Certificate Key.", + "type": "string", + "x-order": 13 + }, + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation.", + "type": "boolean", + "x-order": 5 + }, + "username": { + "description": "PostgreSQL username for getting pg stat monitor data.", + "type": "string", + "x-order": 2 + } + }, + "x-order": 13 + }, + "rds_exporter": { + "type": "object", + "properties": { + "aws_access_key": { + "description": "AWS Access Key.", + "type": "string", + "x-order": 2 + }, + "aws_secret_key": { + "description": "AWS Secret Key.", + "type": "string", + "x-order": 3 + }, + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 4 + }, + "disable_basic_metrics": { + "description": "Disable basic metrics.", + "type": "boolean", + "x-order": 6 + }, + "disable_enhanced_metrics": { + "description": "Disable enhanced metrics.", + "type": "boolean", + "x-order": 7 + }, + "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": 9 + }, + "node_id": { + "description": "Node identifier.", + "type": "string", + "x-order": 1 + }, + "pmm_agent_id": { + "description": "The pmm-agent identifier which runs this instance.", + "type": "string", + "x-order": 0 + }, + "push_metrics": { + "description": "Enables push metrics mode for exporter.", + "type": "boolean", + "x-order": 8 + }, + "skip_connection_check": { + "description": "Skip connection check.", + "type": "boolean", + "x-order": 5 + } + }, + "x-order": 7 + } + } + } + } + ], + "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.", + "type": "object", + "properties": { + "agent_id": { + "description": "Unique randomly generated instance identifier.", + "type": "string", + "x-order": 0 + }, + "azure_database_resource_type": { + "type": "string", + "title": "Azure database resource type (mysql, maria, postgres)", + "x-order": 5 + }, + "azure_database_subscription_id": { + "description": "Azure database subscription ID.", + "type": "string", + "x-order": 4 + }, + "custom_labels": { + "description": "Custom user-assigned labels.\n\nStatus fields below.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 6 + }, + "disabled": { + "description": "Desired Agent status: enabled (false) or disabled (true).", + "type": "boolean", + "x-order": 2 + }, + "listen_port": { + "description": "Listen port for scraping metrics (the same for several configurations).", + "type": "integer", + "format": "int64", + "x-order": 8 + }, + "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 + }, + "node_id": { + "description": "Node identifier.", + "type": "string", + "x-order": 3 + }, + "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 + }, + "push_metrics_enabled": { + "description": "True if the exporter operates in push metrics mode.", + "type": "boolean", + "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.", + "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 + } + }, + "x-order": 8 + }, + "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.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 7 + }, + "disabled": { + "description": "If disabled, metrics from this exporter will not be collected.", + "type": "boolean", + "x-order": 2 + }, + "listen_port": { + "description": "Listen port for scraping metrics.", + "type": "integer", + "format": "int64", + "x-order": 8 + }, + "metrics_path": { + "description": "Path under which metrics are exposed, used to generate URI.", + "type": "string", + "x-order": 6 + }, + "process_exec_path": { + "description": "Path to exec process.", + "type": "string", + "x-order": 10 + }, + "push_metrics_enabled": { + "description": "True if exporter uses push metrics mode.", + "type": "boolean", + "x-order": 9 + }, + "runs_on_node_id": { + "description": "Node identifier where this instance runs.", "type": "string", "x-order": 1 }, @@ -880,7 +1375,7 @@ "x-order": 4 } }, - "x-order": 5 + "x-order": 6 }, "mongodb_exporter": { "description": "MongoDBExporter runs on Generic or Container Node and exposes MongoDB Service metrics.", @@ -1008,7 +1503,7 @@ "x-order": 4 } }, - "x-order": 2 + "x-order": 3 }, "mysqld_exporter": { "description": "MySQLdExporter runs on Generic or Container Node and exposes MySQL Service metrics.", @@ -1143,7 +1638,7 @@ "x-order": 4 } }, - "x-order": 1 + "x-order": 2 }, "node_exporter": { "description": "NodeExporter runs on Generic or Container Node and exposes its metrics.", @@ -1232,6 +1727,41 @@ "x-order": 6 } }, + "x-order": 1 + }, + "pmm_agent": { + "description": "PMMAgent runs on Generic or Container Node.", + "type": "object", + "properties": { + "agent_id": { + "description": "Unique randomly generated instance identifier.", + "type": "string", + "x-order": 0 + }, + "connected": { + "description": "True if Agent is running and connected to pmm-managed.", + "type": "boolean", + "x-order": 3 + }, + "custom_labels": { + "description": "Custom user-assigned labels.\n\nStatus fields below.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 2 + }, + "process_exec_path": { + "description": "Path to exec process.", + "type": "string", + "x-order": 4 + }, + "runs_on_node_id": { + "description": "Node identifier where this instance runs.", + "type": "string", + "x-order": 1 + } + }, "x-order": 0 }, "postgres_exporter": { @@ -1347,7 +1877,7 @@ "x-order": 4 } }, - "x-order": 3 + "x-order": 4 }, "proxysql_exporter": { "description": "ProxySQLExporter runs on Generic or Container Node and exposes ProxySQL Service metrics.", @@ -1439,396 +1969,25 @@ "AGENT_STATUS_UNKNOWN" ], "x-order": 10 - }, - "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": "ProxySQL username for scraping metrics.", - "type": "string", - "x-order": 4 - } - }, - "x-order": 4 - }, - "rds_exporter": { - "description": "RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node metrics.", - "type": "object", - "properties": { - "agent_id": { - "description": "Unique randomly generated instance identifier.", - "type": "string", - "x-order": 0 - }, - "auto_discovery_limit": { - "description": "Limit of databases for auto-discovery.", - "type": "integer", - "format": "int32", - "x-order": 13 - }, - "aws_access_key": { - "description": "AWS Access Key.", - "type": "string", - "x-order": 4 - }, - "basic_metrics_disabled": { - "description": "Basic metrics are disabled.", - "type": "boolean", - "x-order": 8 - }, - "custom_labels": { - "description": "Custom user-assigned labels.\n\nStatus fields below.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 5 - }, - "disabled": { - "description": "Desired Agent status: enabled (false) or disabled (true).", - "type": "boolean", - "x-order": 2 - }, - "enhanced_metrics_disabled": { - "description": "Enhanced metrics are disabled.", - "type": "boolean", - "x-order": 9 - }, - "listen_port": { - "description": "Listen port for scraping metrics (the same for several configurations).\n\nMetric collections flags below.", - "type": "integer", - "format": "int64", - "x-order": 7 - }, - "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 - }, - "node_id": { - "description": "Node identifier.", - "type": "string", - "x-order": 3 - }, - "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": 11 - }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", - "type": "boolean", - "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.", - "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 - } - }, - "x-order": 6 - }, - "table_count": { - "description": "Actual table count for SQL databases at the moment of adding.", - "type": "integer", - "format": "int32", - "x-order": 8 - } - } - } - }, - "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/AddPMMAgent": { - "post": { - "description": "Adds PMM Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add PMM Agent", - "operationId": "AddPMMAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 1 - }, - "runs_on_node_id": { - "description": "Node identifier where this instance runs.", - "type": "string", - "x-order": 0 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { - "pmm_agent": { - "description": "PMMAgent runs on Generic or Container Node.", - "type": "object", - "properties": { - "agent_id": { - "description": "Unique randomly generated instance identifier.", - "type": "string", - "x-order": 0 - }, - "connected": { - "description": "True if Agent is running and connected to pmm-managed.", + }, + "tls": { + "description": "Use TLS for database connections.", "type": "boolean", - "x-order": 3 + "x-order": 5 }, - "custom_labels": { - "description": "Custom user-assigned labels.\n\nStatus fields below.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 2 + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation.", + "type": "boolean", + "x-order": 6 }, - "process_exec_path": { - "description": "Path to exec process.", + "username": { + "description": "ProxySQL username for scraping metrics.", "type": "string", "x-order": 4 - }, - "runs_on_node_id": { - "description": "Node identifier where this instance runs.", - "type": "string", - "x-order": 1 } }, - "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/AddQANMongoDBProfilerAgent": { - "post": { - "description": "Adds 'Query Analytics MongoDB Profiler' Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add 'QAN MongoDB Profiler' Agent", - "operationId": "AddQANMongoDBProfilerAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "authentication_database": { - "description": "Authentication database.", - "type": "string", - "x-order": 13 - }, - "authentication_mechanism": { - "description": "Authentication mechanism.\nSee https://docs.mongodb.com/manual/reference/connection-string/#mongodb-urioption-urioption.authMechanism\nfor details.", - "type": "string", - "x-order": 12 - }, - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "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": 14 - }, - "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", - "type": "integer", - "format": "int32", - "x-order": 9 - }, - "password": { - "description": "MongoDB password for getting profile data.", - "type": "string", - "x-order": 3 - }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 1 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 11 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 4 - }, - "tls_ca": { - "description": "Certificate Authority certificate chain.", - "type": "string", - "x-order": 8 - }, - "tls_certificate_key": { - "description": "Client certificate and key.", - "type": "string", - "x-order": 6 - }, - "tls_certificate_key_file_password": { - "description": "Password for decrypting tls_certificate_key.", - "type": "string", - "x-order": 7 - }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", "x-order": 5 }, - "username": { - "description": "MongoDB username for getting profile data.", - "type": "string", - "x-order": 2 - } - } - } - } - ], - "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", @@ -1915,163 +2074,11 @@ "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/AddQANMySQLPerfSchemaAgent": { - "post": { - "description": "Adds 'Query Analytics MySQL PerfSchema' Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add 'QAN MySQL PerfSchema' Agent", - "operationId": "AddQANMySQLPerfSchemaAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 11 - }, - "disable_comments_parsing": { - "description": "Disable parsing comments from queries and showing them in QAN.", - "type": "boolean", - "x-order": 13 - }, - "disable_query_examples": { - "description": "Disable query examples.", - "type": "boolean", - "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": 14 - }, - "max_query_length": { - "type": "integer", - "format": "int32", - "title": "Limit query length in QAN (default: server-defined; -1: no limit)", - "x-order": 9 - }, - "password": { - "description": "MySQL password for getting performance data.", - "type": "string", - "x-order": 3 - }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 1 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 12 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 4 - }, - "tls_ca": { - "description": "Certificate Authority certificate chain.", - "type": "string", - "x-order": 6 - }, - "tls_cert": { - "description": "Client certificate.", - "type": "string", - "x-order": 7 - }, - "tls_key": { - "description": "Password for decrypting tls_cert.", - "type": "string", - "x-order": 8 - }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", - "x-order": 5 - }, - "username": { - "description": "MySQL username for getting performance data.", - "type": "string", - "x-order": 2 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { + "x-order": 4 + } + }, + "x-order": 11 + }, "qan_mysql_perfschema_agent": { "description": "QANMySQLPerfSchemaAgent runs within pmm-agent and sends MySQL Query Analytics data to the PMM Server.", "type": "object", @@ -2186,166 +2193,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/AddQANMySQLSlowlogAgent": { - "post": { - "description": "Adds 'Query Analytics MySQL Slowlog' Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add 'QAN MySQL Slowlog' Agent", - "operationId": "AddQANMySQLSlowlogAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 12 - }, - "disable_comments_parsing": { - "description": "Disable parsing comments from queries and showing them in QAN.", - "type": "boolean", - "x-order": 14 - }, - "disable_query_examples": { - "description": "Disable query examples.", - "type": "boolean", - "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": 15 - }, - "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", - "type": "integer", - "format": "int32", "x-order": 9 }, - "max_slowlog_file_size": { - "description": "Rotate slowlog file at this size if \u003e 0.\nUse zero or negative value to disable rotation.", - "type": "string", - "format": "int64", - "x-order": 11 - }, - "password": { - "description": "MySQL password for getting slowlog data.", - "type": "string", - "x-order": 3 - }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 1 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 13 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 4 - }, - "tls_ca": { - "description": "Certificate Authority certificate chain.", - "type": "string", - "x-order": 6 - }, - "tls_cert": { - "description": "Client certificate.", - "type": "string", - "x-order": 7 - }, - "tls_key": { - "description": "Password for decrypting tls_cert.", - "type": "string", - "x-order": 8 - }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", - "x-order": 5 - }, - "username": { - "description": "MySQL username for getting slowlog data.", - "type": "string", - "x-order": 2 - } - } - } - } - ], - "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", @@ -2466,160 +2315,104 @@ "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 + "x-order": 10 }, - "message": { - "type": "string", - "x-order": 1 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/AddQANPostgreSQLPgStatMonitorAgent": { - "post": { - "description": "Adds 'Query Analytics PostgreSQL pg_stat_monitor' Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add 'QAN PostgreSQL pg_stat_monitor' Agent", - "operationId": "AddQANPostgreSQLPgStatMonitorAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "custom_labels": { - "description": "Custom user-assigned labels.", + "qan_postgresql_pgstatements_agent": { + "description": "QANPostgreSQLPgStatementsAgent runs within pmm-agent and sends PostgreSQL Query Analytics data to the PMM Server.", "type": "object", - "additionalProperties": { - "type": "string" + "properties": { + "agent_id": { + "description": "Unique randomly generated instance identifier.", + "type": "string", + "x-order": 0 + }, + "custom_labels": { + "description": "Custom user-assigned labels.\n\nStatus fields below.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 9 + }, + "disable_comments_parsing": { + "description": "Disable parsing comments from queries and showing them in QAN.", + "type": "boolean", + "x-order": 5 + }, + "disabled": { + "description": "Desired Agent status: enabled (false) or disabled (true).", + "type": "boolean", + "x-order": 2 + }, + "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 + }, + "max_query_length": { + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "type": "integer", + "format": "int32", + "x-order": 6 + }, + "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": 11 + }, + "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": 10 + }, + "tls": { + "description": "Use TLS for database connections.", + "type": "boolean", + "x-order": 7 + }, + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation.", + "type": "boolean", + "x-order": 8 + }, + "username": { + "description": "PostgreSQL username for getting pg stat statements data.", + "type": "string", + "x-order": 4 + } }, - "x-order": 8 - }, - "disable_comments_parsing": { - "description": "Disable parsing comments from queries and showing them in QAN.", - "type": "boolean", - "x-order": 10 - }, - "disable_query_examples": { - "description": "Disable query examples.", - "type": "boolean", - "x-order": 7 - }, - "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": 14 - }, - "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", - "type": "integer", - "format": "int32", - "x-order": 6 - }, - "password": { - "description": "PostgreSQL password for getting pg stat monitor data.", - "type": "string", - "x-order": 3 - }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 1 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 9 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 4 - }, - "tls_ca": { - "description": "TLS CA certificate.", - "type": "string", - "x-order": 11 - }, - "tls_cert": { - "description": "TLS Certifcate.", - "type": "string", "x-order": 12 }, - "tls_key": { - "description": "TLS Certificate Key.", - "type": "string", - "x-order": 13 - }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", - "x-order": 5 - }, - "username": { - "description": "PostgreSQL username for getting pg stat monitor data.", - "type": "string", - "x-order": 2 - } - } - } - } - ], - "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.", "type": "object", @@ -2719,157 +2512,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/AddQANPostgreSQLPgStatementsAgent": { - "post": { - "description": "Adds 'Query Analytics PostgreSQL pg_stat_statements' Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add 'QAN PostgreSQL pg_stat_statements' Agent", - "operationId": "AddQANPostgreSQLPgStatementsAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 6 - }, - "disable_comments_parsing": { - "description": "Disable parsing comments from queries and showing them in QAN.", - "type": "boolean", - "x-order": 8 - }, - "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 }, - "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", - "type": "integer", - "format": "int32", - "x-order": 9 - }, - "password": { - "description": "PostgreSQL password for getting pg stat statements data.", - "type": "string", - "x-order": 3 - }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 1 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 7 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 4 - }, - "tls_ca": { - "description": "TLS CA certificate.", - "type": "string", - "x-order": 10 - }, - "tls_cert": { - "description": "TLS Certifcate.", - "type": "string", - "x-order": 11 - }, - "tls_key": { - "description": "TLS Certificate Key.", - "type": "string", - "x-order": 12 - }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", - "x-order": 5 - }, - "username": { - "description": "PostgreSQL username for getting pg stat statements data.", - "type": "string", - "x-order": 2 - } - } - } - } - ], - "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.", + "rds_exporter": { + "description": "RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node metrics.", "type": "object", "properties": { "agent_id": { @@ -2877,17 +2523,28 @@ "type": "string", "x-order": 0 }, + "auto_discovery_limit": { + "description": "Limit of databases for auto-discovery.", + "type": "integer", + "format": "int32", + "x-order": 13 + }, + "aws_access_key": { + "description": "AWS Access Key.", + "type": "string", + "x-order": 4 + }, + "basic_metrics_disabled": { + "description": "Basic metrics are disabled.", + "type": "boolean", + "x-order": 8 + }, "custom_labels": { "description": "Custom user-assigned labels.\n\nStatus fields below.", "type": "object", "additionalProperties": { "type": "string" }, - "x-order": 9 - }, - "disable_comments_parsing": { - "description": "Disable parsing comments from queries and showing them in QAN.", - "type": "boolean", "x-order": 5 }, "disabled": { @@ -2895,6 +2552,17 @@ "type": "boolean", "x-order": 2 }, + "enhanced_metrics_disabled": { + "description": "Enhanced metrics are disabled.", + "type": "boolean", + "x-order": 9 + }, + "listen_port": { + "description": "Listen port for scraping metrics (the same for several configurations).\n\nMetric collections flags below.", + "type": "integer", + "format": "int64", + "x-order": 7 + }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", "type": "string", @@ -2910,11 +2578,10 @@ ], "x-order": 12 }, - "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", - "type": "integer", - "format": "int32", - "x-order": 6 + "node_id": { + "description": "Node identifier.", + "type": "string", + "x-order": 3 }, "pmm_agent_id": { "description": "The pmm-agent identifier which runs this instance.", @@ -2926,10 +2593,10 @@ "type": "string", "x-order": 11 }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 3 + "push_metrics_enabled": { + "description": "True if exporter uses push metrics mode.", + "type": "boolean", + "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.", @@ -2944,25 +2611,16 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 10 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 7 - }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", - "x-order": 8 - }, - "username": { - "description": "PostgreSQL username for getting pg stat statements data.", - "type": "string", - "x-order": 4 + "x-order": 6 } }, - "x-order": 0 + "x-order": 7 + }, + "table_count": { + "description": "Actual table count for SQL databases at the moment of adding.", + "type": "integer", + "format": "int32", + "x-order": 14 } } } diff --git a/api/inventory/v1/log_level.pb.go b/api/inventory/v1/log_level.pb.go index 68c9309e50..4545254199 100644 --- a/api/inventory/v1/log_level.pb.go +++ b/api/inventory/v1/log_level.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: inventory/v1/log_level.proto diff --git a/api/inventory/v1/nodes.pb.go b/api/inventory/v1/nodes.pb.go index ec5d1c91c1..f9e64b708c 100644 --- a/api/inventory/v1/nodes.pb.go +++ b/api/inventory/v1/nodes.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: inventory/v1/nodes.proto diff --git a/api/inventory/v1/services.pb.go b/api/inventory/v1/services.pb.go index e20ab75179..9037facbe4 100644 --- a/api/inventory/v1/services.pb.go +++ b/api/inventory/v1/services.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: inventory/v1/services.proto diff --git a/api/management/v1/actions.pb.go b/api/management/v1/actions.pb.go index 51c06dfd0a..3343810386 100644 --- a/api/management/v1/actions.pb.go +++ b/api/management/v1/actions.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/actions.proto diff --git a/api/management/v1/agent/agent.pb.go b/api/management/v1/agent/agent.pb.go index 6b9d4111d4..a381f249e9 100644 --- a/api/management/v1/agent/agent.pb.go +++ b/api/management/v1/agent/agent.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/agent/agent.proto diff --git a/api/management/v1/alerting/alerting.pb.go b/api/management/v1/alerting/alerting.pb.go index e1866f3012..72f776898f 100644 --- a/api/management/v1/alerting/alerting.pb.go +++ b/api/management/v1/alerting/alerting.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/alerting/alerting.proto diff --git a/api/management/v1/alerting/params.pb.go b/api/management/v1/alerting/params.pb.go index 53b6dd82cf..ccd7fce79f 100644 --- a/api/management/v1/alerting/params.pb.go +++ b/api/management/v1/alerting/params.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/alerting/params.proto diff --git a/api/management/v1/annotation.pb.go b/api/management/v1/annotation.pb.go index 0b94ff08a9..08f983758b 100644 --- a/api/management/v1/annotation.pb.go +++ b/api/management/v1/annotation.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/annotation.proto diff --git a/api/management/v1/azure/azure.pb.go b/api/management/v1/azure/azure.pb.go index 9e0511bfec..6571f4ced1 100644 --- a/api/management/v1/azure/azure.pb.go +++ b/api/management/v1/azure/azure.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/azure/azure.proto diff --git a/api/management/v1/backup/artifacts.pb.go b/api/management/v1/backup/artifacts.pb.go index 08fbea2c6d..672c282370 100644 --- a/api/management/v1/backup/artifacts.pb.go +++ b/api/management/v1/backup/artifacts.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/backup/artifacts.proto diff --git a/api/management/v1/backup/backups.pb.go b/api/management/v1/backup/backups.pb.go index fea1aebc9c..290e299fc1 100644 --- a/api/management/v1/backup/backups.pb.go +++ b/api/management/v1/backup/backups.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/backup/backups.proto diff --git a/api/management/v1/backup/common.pb.go b/api/management/v1/backup/common.pb.go index a9ed93e0b6..805ca1b424 100644 --- a/api/management/v1/backup/common.pb.go +++ b/api/management/v1/backup/common.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/backup/common.proto diff --git a/api/management/v1/backup/errors.pb.go b/api/management/v1/backup/errors.pb.go index 3631046a1f..7ef2c3f3ab 100644 --- a/api/management/v1/backup/errors.pb.go +++ b/api/management/v1/backup/errors.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/backup/errors.proto diff --git a/api/management/v1/backup/locations.pb.go b/api/management/v1/backup/locations.pb.go index ec8069a4e6..9c6b1fc018 100644 --- a/api/management/v1/backup/locations.pb.go +++ b/api/management/v1/backup/locations.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/backup/locations.proto diff --git a/api/management/v1/backup/restores.pb.go b/api/management/v1/backup/restores.pb.go index 6190873fa8..44acba6ded 100644 --- a/api/management/v1/backup/restores.pb.go +++ b/api/management/v1/backup/restores.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/backup/restores.proto diff --git a/api/management/v1/boolean_flag.pb.go b/api/management/v1/boolean_flag.pb.go index 35a803bb63..952d1c6b54 100644 --- a/api/management/v1/boolean_flag.pb.go +++ b/api/management/v1/boolean_flag.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/boolean_flag.proto diff --git a/api/management/v1/checks.pb.go b/api/management/v1/checks.pb.go index 889c3ed508..5c0b32619b 100644 --- a/api/management/v1/checks.pb.go +++ b/api/management/v1/checks.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/checks.proto diff --git a/api/management/v1/dump/dump.pb.go b/api/management/v1/dump/dump.pb.go index 26f3c538ad..7e10b8346e 100644 --- a/api/management/v1/dump/dump.pb.go +++ b/api/management/v1/dump/dump.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/dump/dump.proto diff --git a/api/management/v1/external.pb.go b/api/management/v1/external.pb.go index 495465893a..d187db1705 100644 --- a/api/management/v1/external.pb.go +++ b/api/management/v1/external.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/external.proto diff --git a/api/management/v1/haproxy.pb.go b/api/management/v1/haproxy.pb.go index cfb03c484f..d63cba0659 100644 --- a/api/management/v1/haproxy.pb.go +++ b/api/management/v1/haproxy.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/haproxy.proto diff --git a/api/management/v1/metrics.pb.go b/api/management/v1/metrics.pb.go index fd9f820d3b..aab5fa06e0 100644 --- a/api/management/v1/metrics.pb.go +++ b/api/management/v1/metrics.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/metrics.proto diff --git a/api/management/v1/mongodb.pb.go b/api/management/v1/mongodb.pb.go index c43d208e8d..f54f52a38a 100644 --- a/api/management/v1/mongodb.pb.go +++ b/api/management/v1/mongodb.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/mongodb.proto diff --git a/api/management/v1/mysql.pb.go b/api/management/v1/mysql.pb.go index 45720793a7..7594723122 100644 --- a/api/management/v1/mysql.pb.go +++ b/api/management/v1/mysql.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/mysql.proto diff --git a/api/management/v1/node.pb.go b/api/management/v1/node.pb.go index ca2446dcc4..7762bf5808 100644 --- a/api/management/v1/node.pb.go +++ b/api/management/v1/node.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/node.proto diff --git a/api/management/v1/node/node.pb.go b/api/management/v1/node/node.pb.go index b786d38da3..9137299d17 100644 --- a/api/management/v1/node/node.pb.go +++ b/api/management/v1/node/node.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/node/node.proto diff --git a/api/management/v1/pagination.pb.go b/api/management/v1/pagination.pb.go index d623bee594..1a4b1f6ba2 100644 --- a/api/management/v1/pagination.pb.go +++ b/api/management/v1/pagination.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/pagination.proto diff --git a/api/management/v1/postgresql.pb.go b/api/management/v1/postgresql.pb.go index e139a150d2..0eb79dcb44 100644 --- a/api/management/v1/postgresql.pb.go +++ b/api/management/v1/postgresql.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/postgresql.proto diff --git a/api/management/v1/proxysql.pb.go b/api/management/v1/proxysql.pb.go index 3fccd67fdb..6a688f5f41 100644 --- a/api/management/v1/proxysql.pb.go +++ b/api/management/v1/proxysql.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/proxysql.proto diff --git a/api/management/v1/rds.pb.go b/api/management/v1/rds.pb.go index bf7ea9fc6d..74bb0e4c40 100644 --- a/api/management/v1/rds.pb.go +++ b/api/management/v1/rds.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/rds.proto diff --git a/api/management/v1/role/role.pb.go b/api/management/v1/role/role.pb.go index 3b09b23d99..af07cd47a9 100644 --- a/api/management/v1/role/role.pb.go +++ b/api/management/v1/role/role.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/role/role.proto diff --git a/api/management/v1/service.pb.go b/api/management/v1/service.pb.go index 5e3631c4d1..a5b1b12762 100644 --- a/api/management/v1/service.pb.go +++ b/api/management/v1/service.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/service.proto diff --git a/api/management/v1/service/service.pb.go b/api/management/v1/service/service.pb.go index 847fff835e..9e75801646 100644 --- a/api/management/v1/service/service.pb.go +++ b/api/management/v1/service/service.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/service/service.proto diff --git a/api/management/v1/severity.pb.go b/api/management/v1/severity.pb.go index 918e0e4693..3284bbfee3 100644 --- a/api/management/v1/severity.pb.go +++ b/api/management/v1/severity.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: management/v1/severity.proto diff --git a/api/platform/v1/platform.pb.go b/api/platform/v1/platform.pb.go index 64e28527ff..c2c7f95dde 100644 --- a/api/platform/v1/platform.pb.go +++ b/api/platform/v1/platform.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: platform/v1/platform.proto diff --git a/api/qan/v1beta1/collector.pb.go b/api/qan/v1beta1/collector.pb.go index 42ac8d3eb7..a523f2a370 100644 --- a/api/qan/v1beta1/collector.pb.go +++ b/api/qan/v1beta1/collector.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: qan/v1beta1/collector.proto diff --git a/api/qan/v1beta1/filters.pb.go b/api/qan/v1beta1/filters.pb.go index 5b6aaedfec..505914c3c8 100644 --- a/api/qan/v1beta1/filters.pb.go +++ b/api/qan/v1beta1/filters.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: qan/v1beta1/filters.proto diff --git a/api/qan/v1beta1/metrics_names.pb.go b/api/qan/v1beta1/metrics_names.pb.go index da2f2ff036..fffee6f408 100644 --- a/api/qan/v1beta1/metrics_names.pb.go +++ b/api/qan/v1beta1/metrics_names.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: qan/v1beta1/metrics_names.proto diff --git a/api/qan/v1beta1/object_details.pb.go b/api/qan/v1beta1/object_details.pb.go index 8463d7c684..290204ddc4 100644 --- a/api/qan/v1beta1/object_details.pb.go +++ b/api/qan/v1beta1/object_details.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: qan/v1beta1/object_details.proto diff --git a/api/qan/v1beta1/profile.pb.go b/api/qan/v1beta1/profile.pb.go index d428f858af..4631e0d2a7 100644 --- a/api/qan/v1beta1/profile.pb.go +++ b/api/qan/v1beta1/profile.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: qan/v1beta1/profile.proto diff --git a/api/qan/v1beta1/qan.pb.go b/api/qan/v1beta1/qan.pb.go index a07374840f..c11a150bfc 100644 --- a/api/qan/v1beta1/qan.pb.go +++ b/api/qan/v1beta1/qan.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: qan/v1beta1/qan.proto diff --git a/api/server/v1/httperror.pb.go b/api/server/v1/httperror.pb.go index e54f165e84..b3ad9706bd 100644 --- a/api/server/v1/httperror.pb.go +++ b/api/server/v1/httperror.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: server/v1/httperror.proto diff --git a/api/server/v1/server.pb.go b/api/server/v1/server.pb.go index 1a9996c598..a1ec1f5538 100644 --- a/api/server/v1/server.pb.go +++ b/api/server/v1/server.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: server/v1/server.proto diff --git a/api/swagger/swagger-dev.json b/api/swagger/swagger-dev.json index abce5cc5e0..1e078aba35 100644 --- a/api/swagger/swagger-dev.json +++ b/api/swagger/swagger-dev.json @@ -3827,6 +3827,25 @@ "schema": { "type": "object", "properties": { + "pmm_agent": { + "type": "object", + "properties": { + "runs_on_node_id": { + "description": "Node identifier where this instance runs.", + "type": "string", + "x-order": 0 + }, + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 1 + } + }, + "x-order": 0 + }, "node_exporter": { "type": "object", "properties": { @@ -3877,7 +3896,7 @@ "x-order": 5 } }, - "x-order": 0 + "x-order": 1 }, "mysqld_exporter": { "type": "object", @@ -3985,7 +4004,7 @@ "x-order": 16 } }, - "x-order": 1 + "x-order": 2 }, "mongodb_exporter": { "type": "object", @@ -4111,7 +4130,7 @@ "x-order": 19 } }, - "x-order": 2 + "x-order": 3 }, "postgres_exporter": { "type": "object", @@ -4219,7 +4238,7 @@ "x-order": 16 } }, - "x-order": 3 + "x-order": 4 }, "proxysql_exporter": { "type": "object", @@ -4306,7 +4325,7 @@ "x-order": 12 } }, - "x-order": 4 + "x-order": 5 }, "external_exporter": { "type": "object", @@ -4361,7 +4380,7 @@ "x-order": 8 } }, - "x-order": 5 + "x-order": 6 }, "rds_exporter": { "type": "object", @@ -4430,7 +4449,7 @@ "x-order": 9 } }, - "x-order": 6 + "x-order": 7 }, "azure_database_exporter": { "type": "object", @@ -4509,84 +4528,85 @@ "x-order": 11 } }, - "x-order": 7 - } - } - } - } - ], - "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": 8 + }, + "qan_mysql_perfschema_agent": { "type": "object", "properties": { - "agent_id": { - "description": "Unique randomly generated instance identifier.", + "pmm_agent_id": { + "description": "The pmm-agent identifier which runs this instance.", "type": "string", "x-order": 0 }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", + "service_id": { + "description": "Service identifier.", "type": "string", "x-order": 1 }, - "disabled": { - "description": "Desired Agent status: enabled (false) or disabled (true).", - "type": "boolean", + "username": { + "description": "MySQL username for getting performance data.", + "type": "string", "x-order": 2 }, - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, + "password": { + "description": "MySQL password for getting performance data.", + "type": "string", "x-order": 3 }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", + "tls": { + "description": "Use TLS for database connections.", "type": "boolean", "x-order": 4 }, - "disabled_collectors": { - "description": "List of disabled collector names.\n\nStatus fields below.", - "type": "array", - "items": { - "type": "string" - }, + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation.", + "type": "boolean", "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.", + "tls_ca": { + "description": "Certificate Authority certificate chain.", "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.", - "type": "integer", - "format": "int64", + "tls_cert": { + "description": "Client certificate.", + "type": "string", "x-order": 7 }, - "process_exec_path": { - "description": "Path to exec process.", + "tls_key": { + "description": "Password for decrypting tls_cert.", "type": "string", "x-order": 8 }, + "max_query_length": { + "type": "integer", + "format": "int32", + "title": "Limit query length in QAN (default: server-defined; -1: no limit)", + "x-order": 9 + }, + "disable_query_examples": { + "description": "Disable query examples.", + "type": "boolean", + "x-order": 10 + }, + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 11 + }, + "skip_connection_check": { + "description": "Skip connection check.", + "type": "boolean", + "x-order": 12 + }, + "disable_comments_parsing": { + "description": "Disable parsing comments from queries and showing them in QAN.", + "type": "boolean", + "x-order": 13 + }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", "type": "string", @@ -4600,127 +4620,93 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 9 - }, - "expose_exporter": { - "type": "boolean", - "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 10 + "x-order": 14 } }, - "x-order": 0 + "x-order": 9 }, - "mysqld_exporter": { - "description": "MySQLdExporter runs on Generic or Container Node and exposes MySQL Service metrics.", + "qan_mysql_slowlog_agent": { "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 + "x-order": 0 }, "service_id": { "description": "Service identifier.", "type": "string", - "x-order": 3 + "x-order": 1 }, "username": { - "description": "MySQL username for scraping metrics.", + "description": "MySQL username for getting slowlog data.", "type": "string", - "x-order": 4 + "x-order": 2 + }, + "password": { + "description": "MySQL password for getting slowlog data.", + "type": "string", + "x-order": 3 }, "tls": { "description": "Use TLS for database connections.", "type": "boolean", - "x-order": 5 + "x-order": 4 }, "tls_skip_verify": { "description": "Skip TLS certificate and hostname validation.", "type": "boolean", - "x-order": 6 + "x-order": 5 }, "tls_ca": { "description": "Certificate Authority certificate chain.", "type": "string", - "x-order": 7 + "x-order": 6 }, "tls_cert": { "description": "Client certificate.", "type": "string", - "x-order": 8 + "x-order": 7 }, "tls_key": { "description": "Password for decrypting tls_cert.", "type": "string", - "x-order": 9 + "x-order": 8 }, - "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.", + "max_query_length": { + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", "type": "integer", "format": "int32", + "x-order": 9 + }, + "disable_query_examples": { + "description": "Disable query examples.", + "type": "boolean", "x-order": 10 }, + "max_slowlog_file_size": { + "description": "Rotate slowlog file at this size if \u003e 0.\nUse zero or negative value to disable rotation.", + "type": "string", + "format": "int64", + "x-order": 11 + }, "custom_labels": { "description": "Custom user-assigned labels.", "type": "object", "additionalProperties": { "type": "string" }, - "x-order": 11 - }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", - "type": "boolean", "x-order": 12 }, - "disabled_collectors": { - "description": "List of disabled collector names.\n\nStatus fields below.", - "type": "array", - "items": { - "type": "string" - }, + "skip_connection_check": { + "description": "Skip connection check.", + "type": "boolean", "x-order": 13 }, - "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": 14 - }, - "listen_port": { - "description": "Listen port for scraping metrics.", - "type": "integer", - "format": "int64", - "x-order": 15 - }, - "tablestats_group_disabled": { - "description": "True if tablestats group collectors are currently disabled.", + "disable_comments_parsing": { + "description": "Disable parsing comments from queries and showing them in QAN.", "type": "boolean", - "x-order": 16 - }, - "process_exec_path": { - "description": "Path to exec process.", - "type": "string", - "x-order": 17 + "x-order": 14 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -4735,120 +4721,87 @@ "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": 15 } }, - "x-order": 1 + "x-order": 10 }, - "mongodb_exporter": { - "description": "MongoDBExporter runs on Generic or Container Node and exposes MongoDB Service metrics.", + "qan_mongodb_profiler_agent": { "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 + "x-order": 0 }, "service_id": { "description": "Service identifier.", "type": "string", - "x-order": 3 + "x-order": 1 }, "username": { - "description": "MongoDB username for scraping metrics.", + "description": "MongoDB username for getting profile data.", "type": "string", - "x-order": 4 + "x-order": 2 + }, + "password": { + "description": "MongoDB password for getting profile data.", + "type": "string", + "x-order": 3 }, "tls": { "description": "Use TLS for database connections.", "type": "boolean", - "x-order": 5 + "x-order": 4 }, "tls_skip_verify": { "description": "Skip TLS certificate and hostname validation.", "type": "boolean", + "x-order": 5 + }, + "tls_certificate_key": { + "description": "Client certificate and key.", + "type": "string", "x-order": 6 }, - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, + "tls_certificate_key_file_password": { + "description": "Password for decrypting tls_certificate_key.", + "type": "string", "x-order": 7 }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", - "type": "boolean", + "tls_ca": { + "description": "Certificate Authority certificate chain.", + "type": "string", "x-order": 8 }, - "disabled_collectors": { - "description": "List of disabled collector names.\n\nStatus fields below.", - "type": "array", - "items": { - "type": "string" - }, + "max_query_length": { + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "type": "integer", + "format": "int32", "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.", - "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" - ], + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, "x-order": 10 }, - "listen_port": { - "description": "Listen port for scraping metrics.", - "type": "integer", - "format": "int64", + "skip_connection_check": { + "description": "Skip connection check.", + "type": "boolean", "x-order": 11 }, - "stats_collections": { - "type": "array", - "title": "List of colletions to get stats from. Can use *", - "items": { - "type": "string" - }, + "authentication_mechanism": { + "description": "Authentication mechanism.\nSee https://docs.mongodb.com/manual/reference/connection-string/#mongodb-urioption-urioption.authMechanism\nfor details.", + "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.", + "authentication_database": { + "description": "Authentication database.", "type": "string", - "x-order": 15 + "x-order": 13 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -4863,54 +4816,43 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 16 - }, - "expose_exporter": { - "type": "boolean", - "title": "Optionally expose the exporter process on all public interfaces", - "x-order": 17 + "x-order": 14 } }, - "x-order": 2 + "x-order": 11 }, - "postgres_exporter": { - "description": "PostgresExporter runs on Generic or Container Node and exposes PostgreSQL Service metrics.", + "qan_postgresql_pgstatements_agent": { "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 + "x-order": 0 }, "service_id": { "description": "Service identifier.", "type": "string", - "x-order": 3 + "x-order": 1 }, "username": { - "description": "PostgreSQL username for scraping metrics.", + "description": "PostgreSQL username for getting pg stat statements data.", "type": "string", - "x-order": 4 + "x-order": 2 + }, + "password": { + "description": "PostgreSQL password for getting pg stat statements data.", + "type": "string", + "x-order": 3 }, "tls": { "description": "Use TLS for database connections.", "type": "boolean", - "x-order": 5 + "x-order": 4 }, "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation. Uses sslmode=required instead of verify-full.", + "description": "Skip TLS certificate and hostname validation.", "type": "boolean", - "x-order": 6 + "x-order": 5 }, "custom_labels": { "description": "Custom user-assigned labels.", @@ -4918,44 +4860,36 @@ "additionalProperties": { "type": "string" }, + "x-order": 6 + }, + "skip_connection_check": { + "description": "Skip connection check.", + "type": "boolean", "x-order": 7 }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", + "disable_comments_parsing": { + "description": "Disable parsing comments from queries and showing them in QAN.", "type": "boolean", "x-order": 8 }, - "disabled_collectors": { - "description": "List of disabled collector names.", - "type": "array", - "items": { - "type": "string" - }, + "max_query_length": { + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "type": "integer", + "format": "int32", "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.", + "tls_ca": { + "description": "TLS CA certificate.", "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": 10 }, - "listen_port": { - "description": "Listen port for scraping metrics.", - "type": "integer", - "format": "int64", + "tls_cert": { + "description": "TLS Certifcate.", + "type": "string", "x-order": 11 }, - "process_exec_path": { - "description": "Path to exec process.", + "tls_key": { + "description": "TLS Certificate Key.", "type": "string", "x-order": 12 }, @@ -4973,107 +4907,87 @@ "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": 3 + "x-order": 12 }, - "proxysql_exporter": { - "description": "ProxySQLExporter runs on Generic or Container Node and exposes ProxySQL Service metrics.", + "qan_postgresql_pgstatmonitor_agent": { "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 + "x-order": 0 }, "service_id": { "description": "Service identifier.", "type": "string", - "x-order": 3 + "x-order": 1 }, "username": { - "description": "ProxySQL username for scraping metrics.", + "description": "PostgreSQL username for getting pg stat monitor data.", "type": "string", - "x-order": 4 + "x-order": 2 + }, + "password": { + "description": "PostgreSQL password for getting pg stat monitor data.", + "type": "string", + "x-order": 3 }, "tls": { "description": "Use TLS for database connections.", "type": "boolean", - "x-order": 5 + "x-order": 4 }, "tls_skip_verify": { "description": "Skip TLS certificate and hostname validation.", "type": "boolean", + "x-order": 5 + }, + "max_query_length": { + "description": "Limit query length in QAN (default: server-defined; -1: no limit).", + "type": "integer", + "format": "int32", "x-order": 6 }, + "disable_query_examples": { + "description": "Disable query examples.", + "type": "boolean", + "x-order": 7 + }, "custom_labels": { "description": "Custom user-assigned labels.", "type": "object", "additionalProperties": { "type": "string" }, - "x-order": 7 - }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", - "type": "boolean", "x-order": 8 }, - "disabled_collectors": { - "description": "List of disabled collector names.\n\nStatus fields below.", - "type": "array", - "items": { - "type": "string" - }, + "skip_connection_check": { + "description": "Skip connection check.", + "type": "boolean", "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.", + "disable_comments_parsing": { + "description": "Disable parsing comments from queries and showing them in QAN.", + "type": "boolean", + "x-order": 10 + }, + "tls_ca": { + "description": "TLS CA certificate.", "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": 10 - }, - "listen_port": { - "description": "Listen port for scraping metrics.", - "type": "integer", - "format": "int64", "x-order": 11 }, - "process_exec_path": { - "description": "Path to exec process.", + "tls_cert": { + "description": "TLS Certifcate.", "type": "string", "x-order": 12 }, + "tls_key": { + "description": "TLS Certificate Key.", + "type": "string", + "x-order": 13 + }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", "type": "string", @@ -5087,18 +5001,23 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 13 - }, - "expose_exporter": { - "type": "boolean", - "title": "Optionally expose the exporter process on all public interfaces", "x-order": 14 } }, - "x-order": 4 - }, - "external_exporter": { - "description": "ExternalExporter runs on any Node type, including Remote Node.", + "x-order": 13 + } + } + } + } + ], + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "type": "object", + "properties": { + "pmm_agent": { + "description": "PMMAgent runs on Generic or Container Node.", "type": "object", "properties": { "agent_id": { @@ -5111,60 +5030,29 @@ "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.", + "description": "Custom user-assigned labels.\n\nStatus fields below.", "type": "object", "additionalProperties": { "type": "string" }, - "x-order": 7 - }, - "listen_port": { - "description": "Listen port for scraping metrics.", - "type": "integer", - "format": "int64", - "x-order": 8 + "x-order": 2 }, - "push_metrics_enabled": { - "description": "True if exporter uses push metrics mode.", + "connected": { + "description": "True if Agent is running and connected to pmm-managed.", "type": "boolean", - "x-order": 9 + "x-order": 3 }, "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 10 + "x-order": 4 } }, - "x-order": 5 + "x-order": 0 }, - "rds_exporter": { - "description": "RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node metrics.", + "node_exporter": { + "description": "NodeExporter runs on Generic or Container Node and exposes its metrics.", "type": "object", "properties": { "agent_id": { @@ -5182,20 +5070,23 @@ "type": "boolean", "x-order": 2 }, - "node_id": { - "description": "Node identifier.", - "type": "string", + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, "x-order": 3 }, - "aws_access_key": { - "description": "AWS Access Key.", - "type": "string", + "push_metrics_enabled": { + "description": "True if exporter uses push metrics mode.", + "type": "boolean", "x-order": 4 }, - "custom_labels": { - "description": "Custom user-assigned labels.\n\nStatus fields below.", - "type": "object", - "additionalProperties": { + "disabled_collectors": { + "description": "List of disabled collector names.\n\nStatus fields below.", + "type": "array", + "items": { "type": "string" }, "x-order": 5 @@ -5216,30 +5107,15 @@ "x-order": 6 }, "listen_port": { - "description": "Listen port for scraping metrics (the same for several configurations).\n\nMetric collections flags below.", + "description": "Listen port for scraping metrics.", "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 - }, "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 11 + "x-order": 8 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -5254,19 +5130,18 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 12 + "x-order": 9 }, - "auto_discovery_limit": { - "description": "Limit of databases for auto-discovery.", - "type": "integer", - "format": "int32", - "x-order": 13 + "expose_exporter": { + "type": "boolean", + "title": "Optionally expose the exporter process on all public interfaces", + "x-order": 10 } }, - "x-order": 6 + "x-order": 1 }, - "azure_database_exporter": { - "description": "AzureDatabaseExporter runs on Generic or Container Node and exposes RemoteAzure Node metrics.", + "mysqld_exporter": { + "description": "MySQLdExporter runs on Generic or Container Node and exposes MySQL Service metrics.", "type": "object", "properties": { "agent_id": { @@ -5284,28 +5159,67 @@ "type": "boolean", "x-order": 2 }, - "node_id": { - "description": "Node identifier.", + "service_id": { + "description": "Service identifier.", "type": "string", "x-order": 3 }, - "azure_database_subscription_id": { - "description": "Azure database subscription ID.", + "username": { + "description": "MySQL username for scraping metrics.", "type": "string", "x-order": 4 }, - "azure_database_resource_type": { - "type": "string", - "title": "Azure database resource type (mysql, maria, postgres)", + "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 + }, + "tls_ca": { + "description": "Certificate Authority certificate chain.", + "type": "string", + "x-order": 7 + }, + "tls_cert": { + "description": "Client certificate.", + "type": "string", + "x-order": 8 + }, + "tls_key": { + "description": "Password for decrypting tls_cert.", + "type": "string", + "x-order": 9 + }, + "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.", + "type": "integer", + "format": "int32", + "x-order": 10 + }, "custom_labels": { - "description": "Custom user-assigned labels.\n\nStatus fields below.", + "description": "Custom user-assigned labels.", "type": "object", "additionalProperties": { "type": "string" }, - "x-order": 6 + "x-order": 11 + }, + "push_metrics_enabled": { + "description": "True if exporter uses push metrics mode.", + "type": "boolean", + "x-order": 12 + }, + "disabled_collectors": { + "description": "List of disabled collector names.\n\nStatus fields below.", + "type": "array", + "items": { + "type": "string" + }, + "x-order": 13 }, "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.", @@ -5320,23 +5234,23 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 7 + "x-order": 14 }, "listen_port": { - "description": "Listen port for scraping metrics (the same for several configurations).", + "description": "Listen port for scraping metrics.", "type": "integer", "format": "int64", - "x-order": 8 + "x-order": 15 }, - "push_metrics_enabled": { - "description": "True if the exporter operates in push metrics mode.", + "tablestats_group_disabled": { + "description": "True if tablestats group collectors are currently disabled.", "type": "boolean", - "x-order": 9 + "x-order": 16 }, "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 10 + "x-order": 17 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -5351,95 +5265,18 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 11 + "x-order": 18 + }, + "expose_exporter": { + "type": "boolean", + "title": "Optionally expose the exporter process on all public interfaces", + "x-order": 19 } }, - "x-order": 7 - }, - "table_count": { - "description": "Actual table count for SQL databases at the moment of adding.", - "type": "integer", - "format": "int32", - "x-order": 8 - } - } - } - }, - "default": { - "description": "An unexpected error response.", - "schema": { - "type": "object", - "properties": { - "code": { - "type": "integer", - "format": "int32", - "x-order": 0 + "x-order": 2 }, - "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/AddPMMAgent": { - "post": { - "description": "Adds PMM Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add PMM Agent", - "operationId": "AddPMMAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "runs_on_node_id": { - "description": "Node identifier where this instance runs.", - "type": "string", - "x-order": 0 - }, - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 1 - } - } - } - } - ], - "responses": { - "200": { - "description": "A successful response.", - "schema": { - "type": "object", - "properties": { - "pmm_agent": { - "description": "PMMAgent runs on Generic or Container Node.", + "mongodb_exporter": { + "description": "MongoDBExporter runs on Generic or Container Node and exposes MongoDB Service metrics.", "type": "object", "properties": { "agent_id": { @@ -5447,186 +5284,351 @@ "type": "string", "x-order": 0 }, - "runs_on_node_id": { - "description": "Node identifier where this instance runs.", + "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 + }, + "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.\n\nStatus fields below.", + "description": "Custom user-assigned labels.", "type": "object", "additionalProperties": { "type": "string" }, - "x-order": 2 + "x-order": 7 }, - "connected": { - "description": "True if Agent is running and connected to pmm-managed.", + "push_metrics_enabled": { + "description": "True if exporter uses push metrics mode.", "type": "boolean", - "x-order": 3 + "x-order": 8 + }, + "disabled_collectors": { + "description": "List of disabled collector names.\n\nStatus fields below.", + "type": "array", + "items": { + "type": "string" + }, + "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.", + "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": 10 + }, + "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 }, "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 4 + "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 + }, + "expose_exporter": { + "type": "boolean", + "title": "Optionally expose the exporter process on all public interfaces", + "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 + "x-order": 3 }, - "details": { - "type": "array", - "items": { - "type": "object", - "properties": { - "@type": { - "type": "string", - "x-order": 0 - } + "postgres_exporter": { + "description": "PostgresExporter runs on Generic or Container Node and exposes PostgreSQL Service metrics.", + "type": "object", + "properties": { + "agent_id": { + "description": "Unique randomly generated instance identifier.", + "type": "string", + "x-order": 0 }, - "additionalProperties": false + "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": "PostgreSQL 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. Uses sslmode=required instead of verify-full.", + "type": "boolean", + "x-order": 6 + }, + "custom_labels": { + "description": "Custom user-assigned labels.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-order": 7 + }, + "push_metrics_enabled": { + "description": "True if exporter uses push metrics mode.", + "type": "boolean", + "x-order": 8 + }, + "disabled_collectors": { + "description": "List of disabled collector names.", + "type": "array", + "items": { + "type": "string" + }, + "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.", + "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": 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": 2 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/AddQANMongoDBProfilerAgent": { - "post": { - "description": "Adds 'Query Analytics MongoDB Profiler' Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add 'QAN MongoDB Profiler' Agent", - "operationId": "AddQANMongoDBProfilerAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 1 - }, - "username": { - "description": "MongoDB username for getting profile data.", - "type": "string", - "x-order": 2 - }, - "password": { - "description": "MongoDB password for getting profile data.", - "type": "string", - "x-order": 3 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", "x-order": 4 }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", - "x-order": 5 - }, - "tls_certificate_key": { - "description": "Client certificate and key.", - "type": "string", - "x-order": 6 - }, - "tls_certificate_key_file_password": { - "description": "Password for decrypting tls_certificate_key.", - "type": "string", - "x-order": 7 - }, - "tls_ca": { - "description": "Certificate Authority certificate chain.", - "type": "string", - "x-order": 8 - }, - "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", - "type": "integer", - "format": "int32", - "x-order": 9 - }, - "custom_labels": { - "description": "Custom user-assigned labels.", + "proxysql_exporter": { + "description": "ProxySQLExporter runs on Generic or Container Node and exposes ProxySQL Service metrics.", "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 10 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 11 - }, - "authentication_mechanism": { - "description": "Authentication mechanism.\nSee https://docs.mongodb.com/manual/reference/connection-string/#mongodb-urioption-urioption.authMechanism\nfor details.", - "type": "string", - "x-order": 12 - }, - "authentication_database": { - "description": "Authentication database.", - "type": "string", - "x-order": 13 + "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": "ProxySQL 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": 7 + }, + "push_metrics_enabled": { + "description": "True if exporter uses push metrics mode.", + "type": "boolean", + "x-order": 8 + }, + "disabled_collectors": { + "description": "List of disabled collector names.\n\nStatus fields below.", + "type": "array", + "items": { + "type": "string" + }, + "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.", + "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": 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 + }, + "expose_exporter": { + "type": "boolean", + "title": "Optionally expose the exporter process on all public interfaces", + "x-order": 14 + } + }, + "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": 14 - } - } - } - } - ], - "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.", + "external_exporter": { + "description": "ExternalExporter runs on any Node type, including Remote Node.", "type": "object", "properties": { "agent_id": { @@ -5634,13 +5636,13 @@ "type": "string", "x-order": 0 }, - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", + "runs_on_node_id": { + "description": "Node identifier where this instance runs.", "type": "string", "x-order": 1 }, "disabled": { - "description": "Desired Agent status: enabled (false) or disabled (true).", + "description": "If disabled, metrics from this exporter will not be collected.", "type": "boolean", "x-order": 2 }, @@ -5650,33 +5652,83 @@ "x-order": 3 }, "username": { - "description": "MongoDB username for getting profiler data.", + "description": "HTTP basic auth username for collecting metrics.", "type": "string", "x-order": 4 }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", + "scheme": { + "description": "Scheme to generate URI to exporter metrics endpoints.", + "type": "string", "x-order": 5 }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", + "metrics_path": { + "description": "Path under which metrics are exposed, used to generate URI.", + "type": "string", "x-order": 6 }, - "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", - "type": "integer", - "format": "int32", + "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": 6 + }, + "rds_exporter": { + "description": "RDSExporter runs on Generic or Container Node and exposes RemoteRDS Node 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 + }, + "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": "Custom user-assigned labels.\n\nStatus fields below.", "type": "object", "additionalProperties": { "type": "string" }, - "x-order": 8 + "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.", @@ -5691,12 +5743,33 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], + "x-order": 6 + }, + "listen_port": { + "description": "Listen port for scraping metrics (the same for several configurations).\n\nMetric collections flags below.", + "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 + }, "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 10 + "x-order": 11 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -5711,163 +5784,108 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "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 - } + "x-order": 12 }, - "additionalProperties": false + "auto_discovery_limit": { + "description": "Limit of databases for auto-discovery.", + "type": "integer", + "format": "int32", + "x-order": 13 + } }, - "x-order": 2 - } - } - } - } - } - } - }, - "/v1/inventory/Agents/AddQANMySQLPerfSchemaAgent": { - "post": { - "description": "Adds 'Query Analytics MySQL PerfSchema' Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add 'QAN MySQL PerfSchema' Agent", - "operationId": "AddQANMySQLPerfSchemaAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 1 - }, - "username": { - "description": "MySQL username for getting performance data.", - "type": "string", - "x-order": 2 - }, - "password": { - "description": "MySQL password for getting performance data.", - "type": "string", - "x-order": 3 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 4 - }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", - "x-order": 5 - }, - "tls_ca": { - "description": "Certificate Authority certificate chain.", - "type": "string", - "x-order": 6 - }, - "tls_cert": { - "description": "Client certificate.", - "type": "string", "x-order": 7 }, - "tls_key": { - "description": "Password for decrypting tls_cert.", - "type": "string", - "x-order": 8 - }, - "max_query_length": { - "type": "integer", - "format": "int32", - "title": "Limit query length in QAN (default: server-defined; -1: no limit)", - "x-order": 9 - }, - "disable_query_examples": { - "description": "Disable query examples.", - "type": "boolean", - "x-order": 10 - }, - "custom_labels": { - "description": "Custom user-assigned labels.", + "azure_database_exporter": { + "description": "AzureDatabaseExporter runs on Generic or Container Node and exposes RemoteAzure Node metrics.", "type": "object", - "additionalProperties": { - "type": "string" + "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.\n\nStatus fields below.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "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": 11 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 12 - }, - "disable_comments_parsing": { - "description": "Disable parsing comments from queries and showing them in QAN.", - "type": "boolean", - "x-order": 13 + "x-order": 8 }, - "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": 14 - } - } - } - } - ], - "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", @@ -5964,184 +5982,26 @@ "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/AddQANMySQLSlowlogAgent": { - "post": { - "description": "Adds 'Query Analytics MySQL Slowlog' Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add 'QAN MySQL Slowlog' Agent", - "operationId": "AddQANMySQLSlowlogAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 1 - }, - "username": { - "description": "MySQL username for getting slowlog data.", - "type": "string", - "x-order": 2 - }, - "password": { - "description": "MySQL password for getting slowlog data.", - "type": "string", - "x-order": 3 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 4 - }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", - "x-order": 5 - }, - "tls_ca": { - "description": "Certificate Authority certificate chain.", - "type": "string", - "x-order": 6 - }, - "tls_cert": { - "description": "Client certificate.", - "type": "string", - "x-order": 7 - }, - "tls_key": { - "description": "Password for decrypting tls_cert.", - "type": "string", - "x-order": 8 - }, - "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", - "type": "integer", - "format": "int32", - "x-order": 9 - }, - "disable_query_examples": { - "description": "Disable query examples.", - "type": "boolean", - "x-order": 10 - }, - "max_slowlog_file_size": { - "description": "Rotate slowlog file at this size if \u003e 0.\nUse zero or negative value to disable rotation.", - "type": "string", - "format": "int64", - "x-order": 11 - }, - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "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": 12 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 13 - }, - "disable_comments_parsing": { - "description": "Disable parsing comments from queries and showing them in QAN.", - "type": "boolean", - "x-order": 14 + "x-order": 9 }, - "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": 15 - } - } - } - } - ], - "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", @@ -6262,162 +6122,101 @@ "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/AddQANPostgreSQLPgStatMonitorAgent": { - "post": { - "description": "Adds 'Query Analytics PostgreSQL pg_stat_monitor' Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add 'QAN PostgreSQL pg_stat_monitor' Agent", - "operationId": "AddQANPostgreSQLPgStatMonitorAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 1 - }, - "username": { - "description": "PostgreSQL username for getting pg stat monitor data.", - "type": "string", - "x-order": 2 - }, - "password": { - "description": "PostgreSQL password for getting pg stat monitor data.", - "type": "string", - "x-order": 3 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 4 - }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", - "x-order": 5 - }, - "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", - "type": "integer", - "format": "int32", - "x-order": 6 - }, - "disable_query_examples": { - "description": "Disable query examples.", - "type": "boolean", - "x-order": 7 - }, - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 8 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 9 - }, - "disable_comments_parsing": { - "description": "Disable parsing comments from queries and showing them in QAN.", - "type": "boolean", "x-order": 10 }, - "tls_ca": { - "description": "TLS CA certificate.", - "type": "string", - "x-order": 11 - }, - "tls_cert": { - "description": "TLS Certifcate.", - "type": "string", - "x-order": 12 - }, - "tls_key": { - "description": "TLS Certificate Key.", - "type": "string", - "x-order": 13 + "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": { + "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 getting profiler 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 + }, + "max_query_length": { + "description": "Limit query length in QAN (default: server-defined; -1: no limit).\n\nTrue if query examples are disabled.\n bool query_examples_disabled = 8; TODO https://jira.percona.com/browse/PMM-4650", + "type": "integer", + "format": "int32", + "x-order": 7 + }, + "custom_labels": { + "description": "Custom user-assigned labels.\n\nStatus fields below.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "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.", + "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 + }, + "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": 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": 14 - } - } - } - } - ], - "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": { @@ -6441,35 +6240,30 @@ "x-order": 3 }, "username": { - "description": "PostgreSQL username for getting pg stat monitor data.", + "description": "PostgreSQL username for getting pg stat statements 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 + "x-order": 5 }, "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 }, - "query_examples_disabled": { - "description": "True if query examples are disabled.", + "tls": { + "description": "Use TLS for database connections.", "type": "boolean", - "x-order": 9 + "x-order": 7 + }, + "tls_skip_verify": { + "description": "Skip TLS certificate and hostname validation.", + "type": "boolean", + "x-order": 8 }, "custom_labels": { "description": "Custom user-assigned labels.\n\nStatus fields below.", @@ -6477,7 +6271,7 @@ "additionalProperties": { "type": "string" }, - "x-order": 10 + "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.", @@ -6492,12 +6286,12 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "x-order": 11 + "x-order": 10 }, "process_exec_path": { "description": "Path to exec process.", "type": "string", - "x-order": 12 + "x-order": 11 }, "log_level": { "description": "- LOG_LEVEL_UNSPECIFIED: Auto", @@ -6512,160 +6306,13 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 13 + "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/AddQANPostgreSQLPgStatementsAgent": { - "post": { - "description": "Adds 'Query Analytics PostgreSQL pg_stat_statements' Agent.", - "tags": [ - "AgentsService" - ], - "summary": "Add 'QAN PostgreSQL pg_stat_statements' Agent", - "operationId": "AddQANPostgreSQLPgStatementsAgent", - "parameters": [ - { - "name": "body", - "in": "body", - "required": true, - "schema": { - "type": "object", - "properties": { - "pmm_agent_id": { - "description": "The pmm-agent identifier which runs this instance.", - "type": "string", - "x-order": 0 - }, - "service_id": { - "description": "Service identifier.", - "type": "string", - "x-order": 1 - }, - "username": { - "description": "PostgreSQL username for getting pg stat statements data.", - "type": "string", - "x-order": 2 - }, - "password": { - "description": "PostgreSQL password for getting pg stat statements data.", - "type": "string", - "x-order": 3 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 4 - }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", - "type": "boolean", - "x-order": 5 - }, - "custom_labels": { - "description": "Custom user-assigned labels.", - "type": "object", - "additionalProperties": { - "type": "string" - }, - "x-order": 6 - }, - "skip_connection_check": { - "description": "Skip connection check.", - "type": "boolean", - "x-order": 7 - }, - "disable_comments_parsing": { - "description": "Disable parsing comments from queries and showing them in QAN.", - "type": "boolean", - "x-order": 8 - }, - "max_query_length": { - "description": "Limit query length in QAN (default: server-defined; -1: no limit).", - "type": "integer", - "format": "int32", - "x-order": 9 - }, - "tls_ca": { - "description": "TLS CA certificate.", - "type": "string", - "x-order": 10 - }, - "tls_cert": { - "description": "TLS Certifcate.", - "type": "string", - "x-order": 11 - }, - "tls_key": { - "description": "TLS Certificate Key.", - "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 - } - } - } - } - ], - "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": { @@ -6689,30 +6336,35 @@ "x-order": 3 }, "username": { - "description": "PostgreSQL username for getting pg stat statements data.", + "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": 5 + "x-order": 7 }, "max_query_length": { "description": "Limit query length in QAN (default: server-defined; -1: no limit).", "type": "integer", "format": "int32", - "x-order": 6 - }, - "tls": { - "description": "Use TLS for database connections.", - "type": "boolean", - "x-order": 7 + "x-order": 8 }, - "tls_skip_verify": { - "description": "Skip TLS certificate and hostname validation.", + "query_examples_disabled": { + "description": "True if query examples are disabled.", "type": "boolean", - "x-order": 8 + "x-order": 9 }, "custom_labels": { "description": "Custom user-assigned labels.\n\nStatus fields below.", @@ -6720,7 +6372,7 @@ "additionalProperties": { "type": "string" }, - "x-order": 9 + "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.", @@ -6735,12 +6387,12 @@ "AGENT_STATUS_DONE", "AGENT_STATUS_UNKNOWN" ], - "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", @@ -6755,10 +6407,16 @@ "LOG_LEVEL_INFO", "LOG_LEVEL_DEBUG" ], - "x-order": 12 + "x-order": 13 } }, - "x-order": 0 + "x-order": 13 + }, + "table_count": { + "description": "Actual table count for SQL databases at the moment of adding.", + "type": "integer", + "format": "int32", + "x-order": 14 } } } diff --git a/api/uievents/v1/server.pb.go b/api/uievents/v1/server.pb.go index c809992ec4..9d138d7b5e 100644 --- a/api/uievents/v1/server.pb.go +++ b/api/uievents/v1/server.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: uievents/v1/server.proto diff --git a/api/user/v1/user.pb.go b/api/user/v1/user.pb.go index 587c44173d..3353f74b6e 100644 --- a/api/user/v1/user.pb.go +++ b/api/user/v1/user.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.32.0 +// protoc-gen-go v1.31.0-devel // protoc (unknown) // source: user/v1/user.proto diff --git a/descriptor.bin b/descriptor.bin index a00eed396a2ef4733ed12e30bd632e7a44193b7e..bd6b1b127e5563c334ae724fb5689bbbba129132 100644 GIT binary patch delta 21640 zcmZvEd3;qxw(dE5*RDMrl8_w;NeJX5ArO)fG8~2gVRCNU;o55VPur=LzTNL?W2@b- z`*-hs0YpSa1w@KQh!_+EWHb^65m2!eQ9z75M5aao1(`0OjVSM1HJq*Q-aq)UzpDCH zt-Y%1t5tjNlWAKkK6*T{n>JtHps|;$8<2XIWgiFP3+( z3*+~QIj&vcCS;>ZYE)+Gvoq}c_Ua=!*8*3JQD-4WPqJ-hvVX6N`~FT z&5#ZIk)clF#6Y`i)G&Lnopi!S;z5bH%dqK&( zJy)!)uouNgiR3XWH$FUyK25itBH7h05Vu`rcNL?D+JnT9D*MlEjeYEbID3W%-NcDs zV#t4DDiFtxTO$Oog!l9N+D&=C`Tys%FXwcl9Ks)U@?wqse%sfzb`W>x^B_qftUZIf zH`dGB?ytA|#NlaCsjWR#L!36!Pc-ziziM03pZt5n33`dKzqX6h7Ust9RopA0QU4Kl zeT`k%Hm)GPA9oN{*YWt7t?M$bw`DVLkyzQM|*`4BT$8VwQ+i$af z9dEPlwBKckEt~DY4V_r*&4f6xn|Bh`S$=NY#e3|t_r>$Y*^lf)iTeVJbqV=QC$>lo z`PlwlQ0fvT-o$YwdLhpMzRKWZugJpF=F9X4y?Nn51t`)Loht=px3tYgi27=n` z6jmAtYO_<_S5twWcUYaSv_SwTOz6(vbhec z&_21K0_GVA>Rczk%s^1*HaX?JwaZ?}UUb+nUF(4hSYjZ!FFK`z3|ThAJmtek(VlJlNE$)Ues*>E?}`X6@WX>DQPee+A!IK*>=!|koaR;saDmMn>HzM`PSrKK+YaEq>|B3? zzT1qDEpXUPx-tV)Kr^v3KwaSUxz5yry1=>NMo=x57xKkUY=aXI5`oR~&~kB;GXz2llx-D5=?&PRRf?80QJ7qmJ6=;RS zdh52d^Z;`V1a*besYwl2o@L9{y~;HgOYc=P9(fimJ-|+y%fNlr>D<#mP+xU=S7<7h zUTZ|9r3YxJwDejds?!8+Ys5w4*CH-0JwU^yrT1FIrKR^;M8(ouX(n!-MN1DbOS|ZT zy3*;WbO*Jdu5^l$L5C*DYMzCq*XFSPx-l(1z0^9VMBB! zEj>Ubjd>O=y;V-3F-%KumD4a-Q?c?^Lw`&yExpx7E%Gc{daIp$CAxs%u6F88w^({> zqHbyF0h(@U>8**nrKPtf>K03Ht;3L5VuQ(Rl1mTR%pqEOYn{?d^$pR|TkBkLm3A3R z?{$a$TvyW412hwxmfq`5kIPLhsINO$T^(E_W1JbX^^TQaFf2LZ?uY(#*S$%Z?}+11 zc&^y>f9)EqgiK5wv~jh8OxRoRcxJ|C!rpo(H!nEiU@hl|e6thV>BQ@HImsKZyY#w2 z$p=Q=H~P<`C>1ejdijs8b@tsG%^v#G1Allh`P0e=Mc-`O$?l!}_uwbyWcn2^7d69K zfw;Yo?IwO?L6vT+vc1m#jhIe}7m}>JUHrq=!p_1u<&2+pRiESLp0xM^KL|v z!kLe8+3a}Tf{_^5d=kbj&NS9|GcGZJTO7-i0|hV3ANkebR8O0Nz0&r=!n|?ZI=$D$(nDGbbjbq#vm!@hfc1Vf2f8151pR9 zf&r2ZTiYD5w1U<3&$ldiw#~7)_Kbvco8zjfg<3GTIk{beOC=NNBgg734*cG0xJvbG zLl99GXub_|A32F^17YqXCsbORFSYa|2U^-ongjJ?%zW{}IXhXOFU1ttm?AO#*hwgn zLoGW0*y)lNTqU{a=M(YpZu_#Pe9Iva-2+MKCyuN39MppNiQ024RuJ-CPV6(i(-olQ zF2^gDi@1OW>{G{5k_7~-fNIPD(e_ivS9b;otDicZI;)Ku7=!kylRH=r8bLK^pE_Lz zY3tzcb}W_T6vz<+RAUY(YYUPxZh)}9+bQhQm7e6JJRuYK-{mU|sfZG&B{*zl0; zb1apY0AeBlW=cDNXuQwKQt}Q6v-?Qid&6vD$Uk>tk8#2G*rlBc(eiW0E0S}!kV0{Y z=I%|nL>vy8H~^yIAv1RYVe*ifyMPG8Av1RgsxTa)xm${XE2If_L~Pw-7u|wum_8Dj zrXU<~d^Pz{3)4qv^3hBKgy|zrUZadKL1p@glRqR#Nz<6vUt#wII1}9^a$WFN3kgXx2L-t2mSV4in8r6qu1o+m9KNi3vn{eqIj0csE_Yq($} z5%pkSFp>xe_63r}o|28M;RiA0A9e}4O`zK!qS#W-@Pp&3C4^cKf1o8qT3Sfy`WP?$F=eS!p=CZMHCQr z#&Ip8fUq-;_v#%ClXj3kj2AWM?7?uI@`Uj`JUP93+eZYs1oqRWZVJ$D3gBG=lB zS`a7l{H{{Rx`q4+9(#(bQ${zme1d!G6yA*lXA;-i3k0ixYPkZU?IfmG%P4TCKf+u>K_1+S@(klX+~a_PIM+PUe_` z^w6QZ6&n_^DaI@y%mS*Z4T#25c(#&sK$x9EW-Fk*MIoQgV{eLrLv~rGA~c-Ny`+@h zB8tQePH6)!5r!Ei41j1jgX^>b5Ef@}oi+d>3NyG)8wjc>%-~vjizo^+x!AVH?hf0e zy)z@*6oi>vYcFbHdnVV~3kcgYxz=8S%JxhS?d^|P6j{*TSzH|b54*M=0JdjEwyEP; zX82GG+p}o+6ceafym8pBOBG2iZH|bfrOgqMw6vLsq@_g`7R?;4v=jhc&N1^45X?DT zYbhX@bGX*hB66>VOD%=7q@^tpleDzO%wW`l*}|cvm9kF^@r&Zb5xW zbCPg$OM?1xL?l6dnQIA0Er>63NI1!2kp(?nh&x55C}j}^xPygUXNrJeFXTE?1O$5_ z*RohdqWa48Gf+ibqSsfVD3P4L!nG=*7Q9!uR>dLAnYt7ReX^)k|L7VRxWP)U*2=# z`eQc39gwQFMsXumZRNg7oKOpXEAP=WD3^4o>PjxU=dx1V0m}{FTpi#eNA-hB(iIw zTPKlS!$XzcqcQBP;XTWP7Io{{AzLRle{DD8rnA9Z$Mwk(5X^PlQ_2Sj<~m;3UG4}) zR)}+?-Vp#WQPxK;gkY{WI|6FKTyJ)SA}c3k8`X}0Yjn9W8t)tsH%99z2gHqLM@WYJ zZ65o(R@Wq2zHQVsNjkX6>Gz3U@VwTW=9~X^lFpY5t1ZH z?-=O@!p#DzxB$vpy(0j^`a5PvC=U61Jodi!xfm_q<6fEE5sKxGu$f!xsT3g00;)3u zAR2Gxp?abK2(z0xo=R0>M<@yTRvtSo{(92x*{K8#w{o0I=pb1_k=QPG1Y9Bv+f5h% z(Qv!j5ddLvyV(%{5ryq$Meg&1{Vv^-Y+4!$Y+x)Src?XSUsE8VPMR+vu5oQRBQLF(cw~B`sa)e10hU+N{0bu zt=3^cSU+cUxJStU$z$JXpL?L?Ke?x#@b{29e4bnC5kDZz0;;zIfM|T4=ctn;Ak3cU zI7yNYmxcTykIfVZzO{Sil%e58qr+tsiLv71MSJMYxJDetx;hSkXgSu^sW~7_j&*fv z4u~*}b#-b^P=#Tvt5fqb3d6&$OwE4<0NW2owkZk^yE-*TEo?vR>eL(%wjXwNYEDqu ze%OT&(;2mlQu9Y#Yl!&n3A+Z?DfyNk) zUu7NbA9W$Vx9#z&r1;jCN%2LY>4L=f(Wna&-$$tnO5@8&d><3reAWj<(%#2heS!uA z@iBZ+A$I~m5Fc}O7GFm9@r0-eSVIce1R^3y?-Q;*hN2e4CtNMPWhA{%y3ylP6vz@S zy?|gp>FT5y5bP&iofMam^giv1_!+wx{gU`T9ra7%`?RamV$_29w5!wNGK%FCSEa=O zU`~mcB)(Hz{jdPFU{0YyrnI<>#P=C->ViG|5?mu-&$#+w0U+!=XAWDw4CMYWUD7F$JvFk|tckyX9uq0)n{Q zNE0B4%Z)UZ)1ADkqzTsqA|grCt7f{R7Q|Ocn&??=IZ4xNu6$ODYY<2fJZC|55l0bygUi;oE?n+JrAwQkpL z^2k|Eg0#-HO2o|T+(L1GDPwS-bP0v(l@uThtaDxUoe3ZetaFpaGL0@LU0VMmEk^-D zxZc%T4hZ&oqve2LuQys=PU5stYdHY=-5B*ty0p<~IcmY&NLqfaym_RBZ@FUZ68kDl zD#{DrikOrazU8{=dn43>`IcMKL*Fv;!c9_1o62QcxXCCfAc&ick^+LbiIkMy0`(60 zyKd}#Ei1jz@?F=fl48}H1mHa*g+OozP|a~bw0+NvKOn5WmzF|c%z*dIN+PIM(tAb< zd(%SPY@`qf0R~i32qb)^=!;NPhJ1$`J1b_ntRklp4R_F{KxgGjibT7TLR=#b?IsR@ zXxVP05D+HYjT8bR4DCh=392x(8!4=$Fzi%PcoP6@?~H6y6m}XZL@jLZG*So%+dGXE z5>&Q#k`&UquOunlCH8wP1=FM+yCT!n?=CZZsDZ?{puN>aZ)O8syRpZ1s;4hZ5Nqke!O?lJ0DN&fFs>W6Cr z5s}nypHV;5g1FD9UnQyE0i}Mp2Jt}TDyiQAqkgCb@qkgkN>V=@PD%Z64dTIwNa}Ym zx<^vKgGT)-DSBTh^#haC?~8~@>i30FKh%Qx1*zW+a>Ss1hh4F~gk96WQfl5|qj`W} z9yXc>2#siFG=%$FS~~39TSr}uu<@to~|B? zdM3F$=He3sQd`u5c+7}pCCT0KABiOj5b@(iECInjZp0E0?Bhl(E9oSB(iO!Id)-8` z2b3Bm==@~lHR;|-qnM}#{iKVtDJfI0>Uhy`py9mjlXxhRGV6u{obvulgVRs$j5oHxx($p`s7rj z;W$qxkJS{3@#2qpZ0OCnMjXa_Iu3wnIo{K!T0oc_@99%5Ai^--)2CX3Dh%U2eX6ad zFih~|srDuS*q#vCrYKDC^r;rLusy-kr&>VRp5W=H^Pe1t~s8--SPoI$c(kh$p=@T*#d`>Zj`4TYerF-iys${M4DwdDEhVob<} zRlgolNCICs5{NdSyiO8G%1}!Z_{NWv0R^%|D+3_dZy03&1p5u647H?#8c9s8=9>|dMDR^dANWuU=9?Z4d?bRkB!X{C5$um^ z5Z^W;2ngcaMg##te49j&UX|362)^T4oka0wFHe3ofFkfwX2zOi@ExPRs0IHWFU*lI zOKM35-}S`gvvvV)mSphVh)FW|ZZwo6gYSC!ZAmSu;AT(kJ!=<%NdmYzVv+!E_Vhym z)PlL$Lt0EaR!ai7Me7&bA6w0b}5{nF&u&P55m_$LeUkY&SXv1fKzw-~h^6tz&?& zzTN0peaJudVxMTA>(TOK&r8YUZM_w1z?p<~{ zQWT4jkNaApckKJ~mBDOo9Tyog6DlPB* zkyQ%xelt+0h1LB=m;hmQzZoZj%Iba^CuQ}CVs?3TN@~(SBCDiH|A?%TCjG-`Qc7Gb zW_93DdiJ?luYlluZbS(XoX?FYrNkX2Y-oK-CT52s4yn>1qe`d+=Mbq9t??A8(h<4F z(HSLXN6Z=r1o4Pj_Z$s0HUMPe1cYQKXJ3 z39KVgM*+G&W|AX7u#XuD1O)q-k-(Jrz7*+WN-ELus7F$w<3{{Y3(j#PekoF-lS=$> zf22VtBPMCkNh5x!1@k0{A8A-hZ0*5%fJ5qYIvO-mpVLOSPz%m!${OhCTyGph;Q* zFl&IIS_2o1R`sJL^u5t4AovWZvV^$+GB9 z!E&r`T_x2B5M}|@r%`}tJk~E!zkC6N*|Gi=SK`xIiwy|*1V8qi_|IOfIA;JFPVn(= znjXasph!#<%X_h*H{lv_nCR;`0HWnYUmq+1VRE9c50-!k!$e;nED5SGO!RTEOiI(B zKQ89fvBIVSQoA0HOj8gZ_x1LKT9|&^&r!c30EFqs{mz5rN8|*R>Bs%t208f#P>wap zw+aiglOulli{yyA?;iEwgUPE${k2*>-$n!63RjM=K`~g%$2Z*-KzJBZg2&>J$ zIZy%PR+@c%pdzTIUbC+cR0C-uJ@4xS6%c#|RErx>*6PI#2uh+n{kaeEHrTdM9YP~uip3o!sJ4~tNLOE5Mfy8cN-~JAVC#| zg?{%Da?2P*VR*$CCtk6;*8{-zE0JxA!YjUhYJ^(Yeuc(-xO56@cZqnq4;um^&GID? zk*qE;gM(TSm(buSBG57-=8C^uHA9e0Kr}9v4@?+a8&wUbh>q zKrKvfC#|65v60XYaYsEX0+IH~9TAaM;|^ax?nEs$rR|0?$VS>H+r@I#Bdx~vh)Aok zJ?fEGV>|U&CW&afQ(UZP#r+%QYTOwSX*KTjef4v6)PlIv$IsCf5d*u+w@StOpSuO( z{uEP;H}&K@+IHXxV>&87_q=0US*4-NStKlY_wgG15skgs2x45ig_*ysij z`~g&h0*JPUjcx$K>fy9*03&vXjcyQB!98qrV<=7FBStrX;4`4o4M16|bpsIAj~Lw; z7V@Kh>}&1wFtj}Cd+HC146|bR`ya=AOTGREgjqoKOD;e(KIZ4CKk)$wv&Ve=iH}_9 z#_*7z@?&THc%7HLLH_VtJpmmK&MDthe|lj!1?98}3J`(KFv@eFR?7 z`LXWu$J8Ux?i=6h8eAP%9Djo1ypO*g6EA2?j=-OX61Ah;8nJ&M%g#OTd-BZ=kKvy9 z1>brkunQ{0u(Q0oST@RK;`VE8SJX7H4ow$)E`OXwO`%B_{A~FtK0$bK!S6GSwnu_2 zYHYy9qg8g`%2rdcuj(Sad`D3{|y@H=zh;{G9Qa1(6@3j!{aRYZfqi3LG^osI_W z4hw?DU+QQua2Ez_aoP!{ozR8K32L<@V9V1^FzJLY!m}*&gIudMu+|04F6fsOe=Nk$ zl}9$RUQIIP3%E?jsTtg94Z6y|gh3GQv<4$?)9&E!o$%KJwkqw8qutSk${lL8I$*D- z-EpKly66h&4syx$f%R@6jx@3nO|((154ilR8R!)sP6HMW)G?ubYkhFZo!SWw^BV&8 zR@w=!ozR8K32OCr!2X_gf=efK5q{E-e%z364y+v%lZK?&T82Ns_U2I5yNR~H%>kDO z2x`!MZ}tKHFs${lL8HDDj5-EpNmx=6W$Rn#6> zd$l_++z5BZ4}&|jX|_l1cyOmZa)^a)(-d5wIg^cYNuNF2Y|eK|cX@ufRGJi2pN^UC~6l`q6;Pr`uEs zCyoZ{={7+)aWuGQw00tZ`C|b)k#-``PUu4A1hqODu>VRs5lAO=k%~zo3psiOQStN0mr+@%Yjio4D)AxDE<_?8wI@ z*dqzE<#fUa6V}Rv*l-oQR@7X^ zSkvMJmycSh7G5k)s7I{?;l<*_br0xJ;8&r1NrEj;d(lyQp$nB4)M`b7y_WW(qx3=- z^_5;^hkRAS+K4GqloV5b#>zy;%i+nY1ed>6MAzByWK}}_j({LMS(WHJQhS2WW%%j@ zdp+$*w)R99Do?1@x&+&h_9R<+qKbaQ?|)$QL!;}1<6p;vyu0Xcem>f8HN!s#|2Y1+ Q_~+rD-_~$-aOCzR&4< z0|<(UNF$v>lv%)uQ81{8f`Sc*n5F@d84+keCIzKIyzf`TUY>iO`y+YwyXt$t`qo!f zZw+hh{r3;MP2JjU)Y#+-Ys?<@>Ru-hpAPp5nr82@W>n_vO9oNhZ-0B!4L8*NZp6cn z-!kG4e;o1HQ zE=gM)9KdtMbHymSF|tdOOf*NR;L{U~i{o8jwji>*i9baM>Fe$=x+C9#vD|AXR`s^0vhm5Fh@2FOWQ9GV>H2cJAj$s9gZ84sE~G7Em+gqZw6%L^ z&z1H+lJ|?|b1X;9z0QurnrsC5Fy`$`l{@cwprH0scGWoD-jGv{e&lIzM ziJSX>TcmwsoxPU5k_@_0U^El zf{qgQyJdvxwnf9I)TN@9AfzyKQ*x{o(5QPX#y!VuJN&%Wxqq@-QA*U_W4HOK|E4iF z+Zhh~ixm`z8?%x0?RVOl>Jz$^C)~Tx^Qj;&UFCDhDRs9*DXO!}&2_`Yy?5GqPC-v# zG5k)uxA^N_XaJ%#O}+y|i2axha;dxIT2T+mQNHN5%WfrmpH)znzLMRo=t+3KJ}NYx zQ#bt2TW`KTb?bv8|MS6-zw4s!uDh-%UyQ!X&gSKGUp?e~$x52uy3=lxR5v7hk+~sP zbvg9sT#8P^8-8K?J^rsdO5HH>;optCYG~@FM@K&J`v*rnYO0p^IQ|#r9?88E&9j0+ zQQO}xY&v|0f)RC+xb}BnxcCuf(7I~qS7&X-9VbSZT=Ygo3t|wpQ z{L0Q?{d8p|1Y3!Fe`Rw%kgDyQuC}P@`d```S-9&HJ8&Z>k$9?wxOpni77zM#z!4Xn_mZ&OlJ-I)!Bhf;!jfU9PD>^Bh*C3vEyV3k^&* z5N_YgU};@Zsktm-FUMR4E}-EuRQqyFWuU(7q^VBC=EqbAR6s*@K%K9s4Gzn*9B}8y zTo^BKST`LLS1`{&a2GiFoeczafz!2AN9;yyp~HsgLKjrPA_GBP=oI%i5Y&YY&Y;2I zS}Z@}uRDoVx~t{G^mWI}lf5FJdc_-#wNm#AU=+V$dPP3(4 z5Y#13b|(WtUE*}J@+)27>yglc|P8 zzQsX()9H}X5u;bEa9AI0OT7Y6joL2xmJ99*r=Z*vgS*11st#^|Amm$K#F`u{PyBg@ zef5oixCLNW8++h3Ii5+n2X2#-lZ$#SRuJ)boW#evM-{;G9mgvShQe(Db(z(USa#7K zbUOf?u68U>It7I3YR7M5Ae^pt@>IMiMMSHef+0ccz$ZuE60a3{!fL1O;Gl=}4f+}} z>I=JTp90yT);N~&MICC5lcTySO5u8qQ_>~qD~WLP0o`lEmv-;U0?R^Jz+A^+f%}2u zs(VE#xF68HUM0Ce>qOmdyLMQCWuuF%b1bFBfbg@<30rGF)VtO>k?NT!B_{REF47OE zA3@bc-E=#J7^r&z8&}l5J~Fb7QgA;aS^t^jqMi*Re~&$^p}=wo#KBYF+Tgf3ItJ=n z8=U+C*-&jGzR^j1q8q9$EH^q{N7;AUQbTQWtbvjT1h0Uqr2t{O$??^l0mADhC%aA1 zKywl>nrf4iGe9;KLDf{7oZSA}JNTO&ONm)q*;s(8r2%DWK}y$6jkVb+?j&Pw7x7P> z#AiC@cCh@^@sy~vvl6ut+v-?qtN+Y2q~-MDC~pa{M&O^H%e@dY)ds)A(T3)7M))m3~!Evc%2 z{T}g~{TMifvcvC*T~mkO6T7AkzlU6x%h=H2_ldRp?J^Jd99MOIKoIvi zEn5YHBoVd;M8^YmO;w@n?FV8a_4Wg%x1$uq1Jv95Ng}$#AxGS2vq~^I+#HHy1@n*-W$RXgkREm#M|%Zg)N?ii+Xee@%qA&49N(!6_F*SGN8c%Oc*GIIM`PD^ z0Q8zdsisF_I;rUq$5%5aN}}M?ery8hHc+@g&J(i6n**JLQPF zV%8DN5LKRvGaiC@%5l}8LMfQ1Xi$-`7FsPLcE%C^>r1-=%obptiJ2|HJY!@PrC^?M za`L3C7FsPMcFqw8KJ*4$qi(e&`pY>Zh$x4%b4FVM;q08zRzNsA=X5CzhR85lMeJKg zG)(odBe){luNCOu#tqO4^lu&C46Ih5f9n*qlhRyhWkl?PBQj^(MYxL$WbQ&7M+TS| zj4-1V%nMF#esH6#I5WZ~Se*IJzOJFr%0!*t$M>HJ=J#=5%>?s%C!ZGi7Hc2zOHSg7 zR=M`DyySSrQajs|99=fb3hl2@B!f#P<41f z7?0+ymEZ%y?Pw0c?}k*QBK{;#EEh|U*qyUeFnp4GDJje;%EWjs7ZY~@AQ9uaP6QxK z$8)`y0EEx+TrVa7k%#eIFD3}8JdEdBm{XL830w>F?SSwOtkMi9i?uKV!utfSg&7du zCvYvy1eNy*9KzfO`AAt1=859;QM;laKEw6I*frHWk?Xk?rEoowLp2oE~`XyPvusT*cGu(sFk!A*n~^k zJC*xNLr@CtRNkRuFi>)#y^UOyXR*FulI}LfOw!#(?yD^mO2KU8Wxb@{r)ch)#--jP zMYMpO7Bfk5r*WI zHd=tDNMmPCa0`9AkjZzR7@Z!!= zms2FHukfGfGOmFBN=zqpeT8dXMk(m8aOg70ddh;jzQ)Cf|FZkz)-!SIuf?}cV*6Tr z>m;_X@kp)zVGKvF@sh3q&JD>^YwS(My{GJ%xb@axF5-Gl1q5>u_mlzxg1LydYcHpU zloerjDaudV#UMuLC`;l9A`q8weG-FG5SMU0Go-96><`81@9dv9;4^Am7B_bmh|A)k zlm+54t|x|$5nsU*O1Hmhx8f1X5U1>A{5MEc3Cdef_Fb2y? zu9xftm1M2tddc3AWa%xV;6S)pK$R9iS*j-nKzM(P6r3irqKLoE6YuJni(vUS_d3go zp-4^)?{G_<0|3G;pxRgf!uTB?sdE58xP6D?9H2Yg7DxPjo;V~j&e|o}#V~xIWAj40 z%wo#KT0JoUAQ5X#A^>5!)=Uh5@VVAZ41mbPS~D>aRC!oyCWd0l!-wgK0TAASRhj{1 zv7Q(J;r&B1F#y8*hh}0RsJwqj6GM%R923KOapO6=`u1WuF|3bWQ_bs53!)UR*Ha79 z`UnuN*P8|;s9dk722`$L|FPHw*OkR`!uU9LO%uk)v1^(zJ~k6ZF-;g7<%9tuO&A+Z zUj+nlqnR)OLEK0a#(&70f$e57=NtQXAkuuXIVRG4vDtKTl!CaK<_pr_Vmi{@|vtQV{o& zqSDH!m?o3`V#0TJ1!|;eWWUjHKoIwHPc1M2LEKLZ3|gcY(=>8WNijZycrb2xnl=u` zy_BYngGP!wMf@;N9M!Vc36_VAtaTy*`pQT#5WE7a)C0oyE0cOac>O9Z#lYx_Uzw3i zP>tlTj1+ewAvj{B7zkMcR8kBmOSKdO!ut^;#hoMmPo6lTW9|&ge{xS9t9F)Be4JbA zTon**0o9Q#AdHXmEVZ`;gxljBdrOkyl8B$?i3#FAFG7k-V0hX{aS3JOtd?Q`B;u?| z1RzY$8Yu>Z&$C8~0g;EZMv4ilJe)OBTta#H#z^rUfbb5i(hMkzwG;!w`!`040pa}{ zBgF)j_ispwY4ch_YxMJ6tooN-0pGOvJs&p=Qwu8J zu>X#W+DquIB~pyPi+z(Ae;4~EG5*eoaS4g>MYVdzX9RW8^j1I+FB&lh1o5I-y_e7p zTvDrdR7q-lDQ1!yUo!n1rC?q%YFt8U{DV?sd?sMj7!brCj2Z)i_=8d75>n$IwHgDU z${)GjFaU!2qfui(Fn=^^TtW#PEjs>SS61OOh@;&!k<@s!t5?G)1#z^iSHmTw#!tBM zxdAR9VNbYvNel>QPq=zX3ct^SL43;9i^CFH(m(C0V*>zG`E-2y zB)(6(dZUF>FrRky>aa`1C%TE}T(t%70?Uc6UTJlqf%vSeSBF6G3aG{kAZ(v?^`;XL zUY~W%>JS+1@vN&?hXhrJe%95i!!9%)Cb@cl4}`k~RFVWJOSL2c!uupwuMWFL{4Z|e zc^z|CSpLP;lGN2o)MFdzYDofwTRj zfS^jp3$8vrD5Z3~=$g|5KzIjM*#?xwTA2Xh{YC1+w2}ja_ZMA#dO%Qlf6;|9(U!QB zlxc=|DarcXj?ZvCBX&(S&oB*%Qn;Q$4XIqyxSCJh&B^0V@NMbZL(1vVb7YarLPJAc%8ZeX3AO@y`>F1gr)` zlBIbukz{F}>FX#3ah|J>b4y8<=8JoAoL7afJp`L7eaE)7(;$rG;)| z`ZO08z+M=$NtzbMH%ij9(AB58rIf-~-S{*Ym6Jfd8q-OjUUl{I2&JIE>SB3xv&<6& z>UCEf6!!ICk{Z44>b)i)n6JBd`l?!s)aZ4$ZJ}Hlm694Qa>e8#R)kEE5G{%`MMAX5 zb=8Arl!Cd)O?8yZ=~5D+CE^d4ah!qANZS%uA7=o9xWv`R8Gs-zarJRVDGAXsyoZI8 zUsOp#v@EWYglL(ok26pT<}w$@8N=mmViowN_|ak4fk^AWH)A5L|K4=n4*D)>{r9F@ z)JfkZ)_*IdXf~9}_1{V(nt&j#G@=Oz;z|-t+GKW%_$oK?j+T*buw3PO>d9?48t8Ak zR*kF>2pIrW;sglWx7`BurT`$kzU}ty7c`LD?h#+@Cf?U>yTf#~>-CU(*Y4!@J)@{V zxJy7a#sOjbp6Nt@aQmJah=Axt@0o!}P>u2TjG%V6=naK6Mo|F~G@uF^5Z>3gT2TSv zeT`An9uZ&bCO*_L_kiVE*DI4T_n?^9nN$G5E1>cU2-|fg6*<6gyN+_v3#llJ_{VPI zpJI>8x@DEY@?+9z+HaSU*NsX^@fms8Xz~CE%Z)}!0pW6^QBpwUVWUw}f+`Oijgpp; zo^4JmDImN9t1JV`Vy&cr@V?n7DImOWHcCoRdEZP*N{@ufNJ+Pdl+UVe$7i_S61%3F zx0nV*DO_(c4G0L=TTBBIRIayB11i_B-zr{(>&h~zq+4Uxq@-J8*QBIdjgpp;k~S+P z#b?CSY=#aXh|NYx0YPjwN?JzoZ&ON&&jey3Dd{$&q$mY(n^Dp-Qqt{8N%0xP?Qy82 zq}z>>q7=mKMoG&^Nq7E4NpS(}oiUq~bZ2~{q@+8Il9o{lcl}gJaRu~UF`bljmr+ub zg1(EC^cLB6P}1G5$S7hrRFz33-EEW<5X{|1Nddv!ZIrZ(lyt9FQUKJsH_j9(>0YCx zC9@uCBXH%dV~U?jMVl=P62V0=ct4;cvt z1o4oOU_cNL83`_|m|w z>ms$MC#l3q*Q%5W0)kgS^=1MfY)`tmJxwXRo^;DAlnnQZ_-QwBPP^>|)6=w!qi0LK z$n6;;!$7!8KqU}>usvgXARyeHF{2m|UGR(<#RSzTK4WCKmz3eNMuq_qG@uepKzKiE zWEc?M&l(x-9r177#04F5Z&-e7W~AN}^LdjBAb15-sQ`rSd6SA9V7NU`xuAt@dBp$a zCSDY0Ggw(xIV}HW7PRH$^|F#-d`2EFn>+x*^0JX(K)AeYWEc>6xNKyYpvuE#Bg5q+ zhF6RX-wg=wz$(jtvRKP7AiQ5OG7JdsSBwl3RNk+U4EIM9mXi#R^6*rvhq#ZPYVCaq zug`97&018V2sNS1)I@=d^7KXprKo9?hefFJ12jg=Y0dgnl}pVX6B9{u$HYX^+%ZI? z)oVFv?pRN>4p*?idIfeJ6Cm)I-SW?|5V2ikAo%E9q;KUVkiZ1yoa?Ft#hSttdy(bG?|%1Laed7}N-b}^VFw9{fH3GFmbKgvQWnA1Ew%A#Y-auV9whK)va)9A>A?2b5f>|B$H@w6~u_l*QWmUuS4bST> z*R9p$b+IVVWP|U*XXIhA$pauP7kl~y01z%0d-?Hkgu>klGW8la8L^3 zY7!h;WK~l>*LaPb{j3t7L0l6PNmbW)dasL85Z8Fv>yoNgld66oRkaU3gZP0_RX`9w zFscd&;s>Ov^sK0wRCS$aWs7@0^77;>X$`mr2e@cjhQxK9(Q}l-!8$L>l241ONnAhj z{{K&lU;uBhFy2UUKZ@I#6!#-fKP{?;;97VAwND{SA$26U8)7C2?gmevhM*M84Ib9; zB%9SFxPQ~K34qr6n~_aGF#l#`6A;Y58QJU;@y%Xhi`I%hu-xo<>ec@~G^#)GtZSrX z0l_PvdIbRxwx4(%hniA&{lpt~wOVKPjrdkC@ptXEFHE<3p88fmUvm4Ikxd}nCZI|X zAZ$M~2?B)M&&-emL>KwY3^{^o$bDvHv#*rRW+R(`2pUic93Z?m8`%Ve_huuT{UZJk zFR??%+z*!j@VqLyHtt6;Z#Ss`f>%J53P9LyH>t=3hTH9wi~f+!8u4X&HXy48HeXO` zX`^35{`N@0ya}I?fjuSzfUw+S1QQU>_87qgLvVUG6v}WtQrpx zl^igQ2Z%}zn8pJ{B?nC75mc2NpvIGxh>aYDSucVEKj5gMYK^<8I zIHZb)ja~qPbJ(aNAUKDOD%OY@9ob-TNDq(19MZ!hMh{U6&Jof>(wG|I7qMHxp#|nK zBQJp995eC)2+lE*7aEl{VnPw?3J!_j@wgrm!Q-AjV?-%9$31<wA?ammT zMJYIENM}hdYedUVtP?n-Y3JhhAx%4H6cVN2oTC*lJx{L@_jF<@a7fL*jX9)d-^Oi9 zYWA(s!5Xos6YC5PEgUbz9MZ81MgdU@&IO}@HI1EF*M=IoV*K7nA0Q~-8|ecC<$EK2 z{qb(7m-s=C_x`ZFSw$pGPYl&@EefEYcae7#~Ms7B8y zU#}PkNa-8x>lGs)f(BI52MF(@eZ67?g!j?DUNH`g_*g&jq>gzYEXVp@wM@l8ig}!` zQvn38fGQP$upQ^?ROA4|?KmH~D1r11iueRSF-wdnVI8vv!E%C+cLzuS2a(r_zIx>p z0Ew7r5&;O)iN0Pk0>bA+UoRN}k%)=DUNRC?iJ0hP$(WM9L7(JX1H>b5+xfQ-l1d1y z(hMkz^+XB?@00v2^&KKWc%S6A=`X(vKu~#~=(4vM4&0+1c+6Gq{K~$i6n7TVj@Z06e7}6Y!EH~ruuU42PS=?WvZ{2 zVt`;y_4VEl5X`B*-un%r@EU#j+@TMEM0z_82xg>1p=8WNd;f>^&@MTg87n<)jp~1AX){^^wri805>qx*IP$G zFlYLD>j((uOkZyu2V;-tCtlXQe=scP_;@v%4#fsjKb>nvED+)WR9y)WwsXyh1%%hR zG-BnufWWwyxn{@`RDEf#8M1?^zsxfu76>r|su2q)OZA8ag!g%7#16q8&riIfV;%y_ z1-_@gax_G~fU?lH)Po^FxCLw}5FQr$zIqM^ zh^iL*ZPn{TfJo0`zi_A=Y6Mk!7W?h%H`6oAs+z+qIZ2 zw`(z5Zr6x?o2;C+Yrd6TaJ9(1)~goJm9ZSSko&gSh1|FK`kV-*sPZiz`-_=i5@9YH7RozAtJc zr&ydhgr~^3f)4k-ktjf<`h6o&fT-hrAMXs)8$7i%-q-r_t1S%xxbL-QyaR%{){J*R zFxUDyc^H}&tBd$Ye&S<20_tG-k+0v;sH48R-i%rxcm-7V3<%rxrttvbb$xo&0wbdJ zX4Dc?-EzGdwRO~WHkeThgu4Y)qZUw>>QM^_?;Fgh9UAeCeqytZc_=J5`uZJ>p>ou2 z^7T6!fN%?_-q8Sr@g`rtqX7uFn|!>Z(Hp6#$8O6{91~5wS@-OE7;Yu6G|$#kCYtp; z3xGs4n?wM@wAu6@K=^Dn^DH3p&}`;ef+`QqW}dC5JZwwPvw-jptkMi9i}gGU2=Cj> zJPQc#+sr&mPFe`gl#(gUS+rEGr+Idlc%g!|?T61G?uv;tT6e`Y(rDd9HFlOn*zWeN z;(}Z;yvD^sK}u`A9Im)-5<i=f zeP2BhLn(-R{Zx@W#jdCEw_iM0$@<-a&xmAyOr(*w-}lwmLs1Iiejnd;r!z=EG{Jtq z+l^9x392U8?{^P$K{J5X^T93-BV0qlvN5@yu_&H&e1PJi}sul%=?FpkKfbe=E ztt7z6-wC561XY4h7$v!i`teDlBtVE6P$>zZEY(T^2=6D2k_^LxJU?+($2<&{r+rWT zQp7MTfma^R_?CJT0}yTj)oW3JFh1kwsh?~BgxfPdes>`UN^*6?&-;msezL+#-7?~# zk^f^vAb&aIYH-f`9(~=Jv8yR57fe!skQ6|b6u@Lu2dwuoz^LE?WrcbjAd+&yB!!?# z$^}XaO@NBE zrH`Kn7EeU{icdcoGPy7NS#-tsWJt9jh#;N`N^5iwNdz%5V9%w4NHP_KzNmsA ztH}X-J{?37&v(+7R1o;OO=DoqQbF8SgCH95c!?5>T1kW(gDm+&4g?WIV^BU!2LZw4 zB4E?gL0CEneNhELRxbu@W;zH<2B9yZ$>G?J_?*Cc4M7yA8t{8C=7+#i_t9?&J@U{) zW%tqVf~D%{zgle)3#~jS;POi@1QG0w>yp>mWGXe;BY0=^(fcLSIxtkk!Wl+msH1%OLcnYh(~^ z#J2?2j)2((eN$r2ZTRi8K?89XM04MkfVb62z}v2X?fMyraJB^X_v&z5RP<@Un$zL9 zIvjmbg+o?<57_o}IIavwU&2pF;65?DJ`b#e6i!V_9J~!b&vs=XD{Y|Z^7DYpy$_io zoX>+o`BO3k5zgnqu={m59xB=uus!K;JROd{sKOzuy#YIr4#$(>=u0XbKjL2o)=3@C zr?(@V4+bF|IS0q#V4canjKh&ravTm`{pN=Qb~GK1ufx$7RXAjIEMOTX7^J8m#6AviDLc1u`am=~fw281ajNH6}z%^(k>vxm_rp9?W_)(30U| zz~xsRQGbYVE(V>h)g6dd5Ep}6|D?kSQPIBw_Cq?HP=}*0s&L5aO29^kW>N@cIQo+6 z&n<8k7h2C!IOxyx!(}Q(zZk-b8tB+`Y{=zG5HYntOk>0L19ePviaIvD<^dfOzQoGM zg={=(QxjDS9h1JOVj`=jLpCuTQwtfBzNDJ1WyGHgt!We!nr&1yeyHu1A?QVPBKusJ zZn2gK=eaQ5Vst?JT$pY#{O|yu9J1%r;k4A@=!+^GvYHw)kq)P&3`bv5;k1hQ^w658 z!=c|nQzun0>rd0a(;8dE<*Rt{k`bO5$kjw9jq9X5ykj;XbdNncbkk<|ww`!F3-YZ;Tigu@n86h(YPXlB)Y{alPWCzkQWa}98MHK^C9SqswbPU-t27O7*W^E#VG_=lyVqiV1 zZ)k%cj)v(ewGDze8m6bzHVEQqn4VJG!2Pk1ok$1KMhBrUsvyYfWXMjZgJ>gz(3fz! zhnvlb__@%!6pAbLYAkKw1KB_a31NYyA>_R$-936zd zsDdD???U#kbPzc*2z{xS3<5uF_(Nzt*+Oi-3OYY;vA0Js6occN$ Date: Tue, 26 Dec 2023 12:13:23 +0000 Subject: [PATCH 07/10] PMM-12624 make gen --- api/agent/v1/agent.pb.go | 2 +- api/agent/v1/collector.pb.go | 2 +- api/agentlocal/v1/agentlocal.pb.go | 2 +- api/inventory/v1/agent_status.pb.go | 2 +- api/inventory/v1/agents.pb.go | 466 +++++++++--------- api/inventory/v1/agents.pb.gw.go | 6 +- api/inventory/v1/agents.proto | 12 +- api/inventory/v1/agents_grpc.pb.go | 4 +- .../agents_service/add_agent_responses.go | 4 +- .../agents_service/agents_service_client.go | 10 +- api/inventory/v1/json/v1.json | 10 +- api/inventory/v1/log_level.pb.go | 2 +- api/inventory/v1/nodes.pb.go | 2 +- api/inventory/v1/services.pb.go | 2 +- api/management/v1/actions.pb.go | 2 +- api/management/v1/agent/agent.pb.go | 2 +- api/management/v1/alerting/alerting.pb.go | 2 +- api/management/v1/alerting/params.pb.go | 2 +- api/management/v1/annotation.pb.go | 2 +- api/management/v1/azure/azure.pb.go | 2 +- api/management/v1/backup/artifacts.pb.go | 2 +- api/management/v1/backup/backups.pb.go | 2 +- api/management/v1/backup/common.pb.go | 2 +- api/management/v1/backup/errors.pb.go | 2 +- api/management/v1/backup/locations.pb.go | 2 +- api/management/v1/backup/restores.pb.go | 2 +- api/management/v1/boolean_flag.pb.go | 2 +- api/management/v1/checks.pb.go | 2 +- api/management/v1/dump/dump.pb.go | 2 +- api/management/v1/external.pb.go | 2 +- api/management/v1/haproxy.pb.go | 2 +- api/management/v1/metrics.pb.go | 2 +- api/management/v1/mongodb.pb.go | 2 +- api/management/v1/mysql.pb.go | 2 +- api/management/v1/node.pb.go | 2 +- api/management/v1/node/node.pb.go | 2 +- api/management/v1/pagination.pb.go | 2 +- api/management/v1/postgresql.pb.go | 2 +- api/management/v1/proxysql.pb.go | 2 +- api/management/v1/rds.pb.go | 2 +- api/management/v1/role/role.pb.go | 2 +- api/management/v1/service.pb.go | 2 +- api/management/v1/service/service.pb.go | 2 +- api/management/v1/severity.pb.go | 2 +- api/platform/v1/platform.pb.go | 2 +- api/qan/v1beta1/collector.pb.go | 2 +- api/qan/v1beta1/filters.pb.go | 2 +- api/qan/v1beta1/metrics_names.pb.go | 2 +- api/qan/v1beta1/object_details.pb.go | 2 +- api/qan/v1beta1/profile.pb.go | 2 +- api/qan/v1beta1/qan.pb.go | 2 +- api/server/v1/httperror.pb.go | 2 +- api/server/v1/server.pb.go | 2 +- api/swagger/swagger-dev.json | 10 +- api/uievents/v1/server.pb.go | 2 +- api/user/v1/user.pb.go | 2 +- 56 files changed, 311 insertions(+), 307 deletions(-) diff --git a/api/agent/v1/agent.pb.go b/api/agent/v1/agent.pb.go index e1787f6b72..ed5177aaa2 100644 --- a/api/agent/v1/agent.pb.go +++ b/api/agent/v1/agent.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: agent/v1/agent.proto diff --git a/api/agent/v1/collector.pb.go b/api/agent/v1/collector.pb.go index 365bf913bf..1c592f8796 100644 --- a/api/agent/v1/collector.pb.go +++ b/api/agent/v1/collector.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: agent/v1/collector.proto diff --git a/api/agentlocal/v1/agentlocal.pb.go b/api/agentlocal/v1/agentlocal.pb.go index 16ca6887ae..9c03056476 100644 --- a/api/agentlocal/v1/agentlocal.pb.go +++ b/api/agentlocal/v1/agentlocal.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: agentlocal/v1/agentlocal.proto diff --git a/api/inventory/v1/agent_status.pb.go b/api/inventory/v1/agent_status.pb.go index d0055fcda4..6abe6bea4e 100644 --- a/api/inventory/v1/agent_status.pb.go +++ b/api/inventory/v1/agent_status.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: inventory/v1/agent_status.proto diff --git a/api/inventory/v1/agents.pb.go b/api/inventory/v1/agents.pb.go index 9d1425ac05..80795f1c2e 100644 --- a/api/inventory/v1/agents.pb.go +++ b/api/inventory/v1/agents.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: inventory/v1/agents.proto @@ -9234,7 +9234,7 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 0x52, 0x4e, 0x41, 0x4c, 0x5f, 0x45, 0x58, 0x50, 0x4f, 0x52, 0x54, 0x45, 0x52, 0x10, 0x0c, 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, 0x95, 0x21, 0x0a, 0x0d, 0x41, 0x67, 0x65, 0x6e, + 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, @@ -9266,251 +9266,255 @@ var file_inventory_v1_agents_proto_rawDesc = []byte{ 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, 0x94, 0x01, + 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, 0x49, 0x92, 0x41, 0x1e, 0x12, 0x0c, - 0x41, 0x64, 0x64, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x0e, 0x41, 0x64, - 0x64, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x82, 0xd3, 0xe4, 0x93, - 0x02, 0x22, 0x3a, 0x01, 0x2a, 0x22, 0x1d, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, - 0x74, 0x6f, 0x72, 0x79, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x41, 0x64, 0x64, 0x41, - 0x67, 0x65, 0x6e, 0x74, 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, + 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, 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, + 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, 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, + 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, 0x2f, 0x3a, 0x01, 0x2a, 0x22, 0x2a, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x65, 0x6e, + 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, 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, + 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, 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, + 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, 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, + 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, 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, + 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, 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, + 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, 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, + 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, 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, 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, + 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, - 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, 0xa1, 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, 0x4d, 0x92, 0x41, 0x24, 0x12, 0x0f, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x20, 0x61, 0x6e, - 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x1a, 0x11, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x73, 0x20, - 0x61, 0x6e, 0x20, 0x41, 0x67, 0x65, 0x6e, 0x74, 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, + 0x2c, 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, } var ( diff --git a/api/inventory/v1/agents.pb.gw.go b/api/inventory/v1/agents.pb.gw.go index 75ea357910..c7954fee8a 100644 --- a/api/inventory/v1/agents.pb.gw.go +++ b/api/inventory/v1/agents.pb.gw.go @@ -694,7 +694,7 @@ 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/AddAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddAgent")) + 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 @@ -1155,7 +1155,7 @@ func RegisterAgentsServiceHandlerClient(ctx context.Context, mux *runtime.ServeM inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) var err error var annotatedContext context.Context - annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/inventory.v1.AgentsService/AddAgent", runtime.WithHTTPPathPattern("/v1/inventory/Agents/AddAgent")) + annotatedContext, err = runtime.AnnotateContext(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 @@ -1474,7 +1474,7 @@ var ( pattern_AgentsService_GetAgentLogs_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "GetLogs"}, "")) - pattern_AgentsService_AddAgent_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1, 2, 2, 2, 3}, []string{"v1", "inventory", "Agents", "AddAgent"}, "")) + 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"}, "")) diff --git a/api/inventory/v1/agents.proto b/api/inventory/v1/agents.proto index 00a0c86f03..20c3a208ea 100644 --- a/api/inventory/v1/agents.proto +++ b/api/inventory/v1/agents.proto @@ -1306,15 +1306,15 @@ service AgentsService { }; } - // AddAgent adds any type of Agent. + // AddAgent adds any type of Agent to Inventory. rpc AddAgent(AddAgentRequest) returns (AddAgentResponse) { option (google.api.http) = { - post: "/v1/inventory/Agents/AddAgent" + post: "/v1/inventory/Agents/Add" body: "*" }; option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Add an Agent" - description: "Adds an Agent." + summary: "Add an Agent to Inventory" + description: "Adds an Agent from Inventory." }; } // ChangeNodeExporter changes node_exporter Agent. @@ -1467,8 +1467,8 @@ service AgentsService { body: "*" }; option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { - summary: "Remove an Agent" - description: "Removes an Agent." + summary: "Remove an Agent from Inventory" + description: "Removes an Agent from Inventory." }; } } diff --git a/api/inventory/v1/agents_grpc.pb.go b/api/inventory/v1/agents_grpc.pb.go index 9134da2fdb..2745de9cde 100644 --- a/api/inventory/v1/agents_grpc.pb.go +++ b/api/inventory/v1/agents_grpc.pb.go @@ -50,7 +50,7 @@ type AgentsServiceClient interface { GetAgent(ctx context.Context, in *GetAgentRequest, opts ...grpc.CallOption) (*GetAgentResponse, error) // GetAgentLogs returns Agent logs by ID. GetAgentLogs(ctx context.Context, in *GetAgentLogsRequest, opts ...grpc.CallOption) (*GetAgentLogsResponse, error) - // AddAgent adds any type of Agent. + // 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) @@ -262,7 +262,7 @@ type AgentsServiceServer interface { GetAgent(context.Context, *GetAgentRequest) (*GetAgentResponse, error) // GetAgentLogs returns Agent logs by ID. GetAgentLogs(context.Context, *GetAgentLogsRequest) (*GetAgentLogsResponse, error) - // AddAgent adds any type of Agent. + // 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) 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 c8515c106f..72567e7816 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 @@ -60,7 +60,7 @@ type AddAgentOK struct { } func (o *AddAgentOK) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddAgent][%d] addAgentOk %+v", 200, o.Payload) + return fmt.Sprintf("[POST /v1/inventory/Agents/Add][%d] addAgentOk %+v", 200, o.Payload) } func (o *AddAgentOK) GetPayload() *AddAgentOKBody { @@ -102,7 +102,7 @@ func (o *AddAgentDefault) Code() int { } func (o *AddAgentDefault) Error() string { - return fmt.Sprintf("[POST /v1/inventory/Agents/AddAgent][%d] AddAgent default %+v", o._statusCode, o.Payload) + return fmt.Sprintf("[POST /v1/inventory/Agents/Add][%d] AddAgent default %+v", o._statusCode, o.Payload) } func (o *AddAgentDefault) GetPayload() *AddAgentDefaultBody { 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 f793f89d3e..b32113b794 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 @@ -68,9 +68,9 @@ type ClientService interface { } /* -AddAgent adds an agent +AddAgent adds an agent to inventory -Adds an Agent. +Adds an Agent from Inventory. */ func (a *Client) AddAgent(params *AddAgentParams, opts ...ClientOption) (*AddAgentOK, error) { // TODO: Validate the params before sending @@ -80,7 +80,7 @@ func (a *Client) AddAgent(params *AddAgentParams, opts ...ClientOption) (*AddAge op := &runtime.ClientOperation{ ID: "AddAgent", Method: "POST", - PathPattern: "/v1/inventory/Agents/AddAgent", + PathPattern: "/v1/inventory/Agents/Add", ProducesMediaTypes: []string{"application/json"}, ConsumesMediaTypes: []string{"application/json"}, Schemes: []string{"http", "https"}, @@ -731,9 +731,9 @@ func (a *Client) ListAgents(params *ListAgentsParams, opts ...ClientOption) (*Li } /* -RemoveAgent removes an agent +RemoveAgent removes an agent from inventory -Removes an Agent. +Removes an Agent from Inventory. */ func (a *Client) RemoveAgent(params *RemoveAgentParams, opts ...ClientOption) (*RemoveAgentOK, error) { // TODO: Validate the params before sending diff --git a/api/inventory/v1/json/v1.json b/api/inventory/v1/json/v1.json index 2c411530f9..d23cea7658 100644 --- a/api/inventory/v1/json/v1.json +++ b/api/inventory/v1/json/v1.json @@ -15,13 +15,13 @@ "version": "v1" }, "paths": { - "/v1/inventory/Agents/AddAgent": { + "/v1/inventory/Agents/Add": { "post": { - "description": "Adds an Agent.", + "description": "Adds an Agent from Inventory.", "tags": [ "AgentsService" ], - "summary": "Add an Agent", + "summary": "Add an Agent to Inventory", "operationId": "AddAgent", "parameters": [ { @@ -8592,11 +8592,11 @@ }, "/v1/inventory/Agents/Remove": { "post": { - "description": "Removes an Agent.", + "description": "Removes an Agent from Inventory.", "tags": [ "AgentsService" ], - "summary": "Remove an Agent", + "summary": "Remove an Agent from Inventory", "operationId": "RemoveAgent", "parameters": [ { diff --git a/api/inventory/v1/log_level.pb.go b/api/inventory/v1/log_level.pb.go index 4545254199..68c9309e50 100644 --- a/api/inventory/v1/log_level.pb.go +++ b/api/inventory/v1/log_level.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: inventory/v1/log_level.proto diff --git a/api/inventory/v1/nodes.pb.go b/api/inventory/v1/nodes.pb.go index f9e64b708c..ec5d1c91c1 100644 --- a/api/inventory/v1/nodes.pb.go +++ b/api/inventory/v1/nodes.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: inventory/v1/nodes.proto diff --git a/api/inventory/v1/services.pb.go b/api/inventory/v1/services.pb.go index 9037facbe4..e20ab75179 100644 --- a/api/inventory/v1/services.pb.go +++ b/api/inventory/v1/services.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: inventory/v1/services.proto diff --git a/api/management/v1/actions.pb.go b/api/management/v1/actions.pb.go index 3343810386..51c06dfd0a 100644 --- a/api/management/v1/actions.pb.go +++ b/api/management/v1/actions.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/actions.proto diff --git a/api/management/v1/agent/agent.pb.go b/api/management/v1/agent/agent.pb.go index a381f249e9..6b9d4111d4 100644 --- a/api/management/v1/agent/agent.pb.go +++ b/api/management/v1/agent/agent.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/agent/agent.proto diff --git a/api/management/v1/alerting/alerting.pb.go b/api/management/v1/alerting/alerting.pb.go index 72f776898f..e1866f3012 100644 --- a/api/management/v1/alerting/alerting.pb.go +++ b/api/management/v1/alerting/alerting.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/alerting/alerting.proto diff --git a/api/management/v1/alerting/params.pb.go b/api/management/v1/alerting/params.pb.go index ccd7fce79f..53b6dd82cf 100644 --- a/api/management/v1/alerting/params.pb.go +++ b/api/management/v1/alerting/params.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/alerting/params.proto diff --git a/api/management/v1/annotation.pb.go b/api/management/v1/annotation.pb.go index 08f983758b..0b94ff08a9 100644 --- a/api/management/v1/annotation.pb.go +++ b/api/management/v1/annotation.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/annotation.proto diff --git a/api/management/v1/azure/azure.pb.go b/api/management/v1/azure/azure.pb.go index 6571f4ced1..9e0511bfec 100644 --- a/api/management/v1/azure/azure.pb.go +++ b/api/management/v1/azure/azure.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/azure/azure.proto diff --git a/api/management/v1/backup/artifacts.pb.go b/api/management/v1/backup/artifacts.pb.go index 672c282370..08fbea2c6d 100644 --- a/api/management/v1/backup/artifacts.pb.go +++ b/api/management/v1/backup/artifacts.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/backup/artifacts.proto diff --git a/api/management/v1/backup/backups.pb.go b/api/management/v1/backup/backups.pb.go index 290e299fc1..fea1aebc9c 100644 --- a/api/management/v1/backup/backups.pb.go +++ b/api/management/v1/backup/backups.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/backup/backups.proto diff --git a/api/management/v1/backup/common.pb.go b/api/management/v1/backup/common.pb.go index 805ca1b424..a9ed93e0b6 100644 --- a/api/management/v1/backup/common.pb.go +++ b/api/management/v1/backup/common.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/backup/common.proto diff --git a/api/management/v1/backup/errors.pb.go b/api/management/v1/backup/errors.pb.go index 7ef2c3f3ab..3631046a1f 100644 --- a/api/management/v1/backup/errors.pb.go +++ b/api/management/v1/backup/errors.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/backup/errors.proto diff --git a/api/management/v1/backup/locations.pb.go b/api/management/v1/backup/locations.pb.go index 9c6b1fc018..ec8069a4e6 100644 --- a/api/management/v1/backup/locations.pb.go +++ b/api/management/v1/backup/locations.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/backup/locations.proto diff --git a/api/management/v1/backup/restores.pb.go b/api/management/v1/backup/restores.pb.go index 44acba6ded..6190873fa8 100644 --- a/api/management/v1/backup/restores.pb.go +++ b/api/management/v1/backup/restores.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/backup/restores.proto diff --git a/api/management/v1/boolean_flag.pb.go b/api/management/v1/boolean_flag.pb.go index 952d1c6b54..35a803bb63 100644 --- a/api/management/v1/boolean_flag.pb.go +++ b/api/management/v1/boolean_flag.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/boolean_flag.proto diff --git a/api/management/v1/checks.pb.go b/api/management/v1/checks.pb.go index 5c0b32619b..889c3ed508 100644 --- a/api/management/v1/checks.pb.go +++ b/api/management/v1/checks.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/checks.proto diff --git a/api/management/v1/dump/dump.pb.go b/api/management/v1/dump/dump.pb.go index 7e10b8346e..26f3c538ad 100644 --- a/api/management/v1/dump/dump.pb.go +++ b/api/management/v1/dump/dump.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/dump/dump.proto diff --git a/api/management/v1/external.pb.go b/api/management/v1/external.pb.go index d187db1705..495465893a 100644 --- a/api/management/v1/external.pb.go +++ b/api/management/v1/external.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/external.proto diff --git a/api/management/v1/haproxy.pb.go b/api/management/v1/haproxy.pb.go index d63cba0659..cfb03c484f 100644 --- a/api/management/v1/haproxy.pb.go +++ b/api/management/v1/haproxy.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/haproxy.proto diff --git a/api/management/v1/metrics.pb.go b/api/management/v1/metrics.pb.go index aab5fa06e0..fd9f820d3b 100644 --- a/api/management/v1/metrics.pb.go +++ b/api/management/v1/metrics.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/metrics.proto diff --git a/api/management/v1/mongodb.pb.go b/api/management/v1/mongodb.pb.go index f54f52a38a..c43d208e8d 100644 --- a/api/management/v1/mongodb.pb.go +++ b/api/management/v1/mongodb.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/mongodb.proto diff --git a/api/management/v1/mysql.pb.go b/api/management/v1/mysql.pb.go index 7594723122..45720793a7 100644 --- a/api/management/v1/mysql.pb.go +++ b/api/management/v1/mysql.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/mysql.proto diff --git a/api/management/v1/node.pb.go b/api/management/v1/node.pb.go index 7762bf5808..ca2446dcc4 100644 --- a/api/management/v1/node.pb.go +++ b/api/management/v1/node.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/node.proto diff --git a/api/management/v1/node/node.pb.go b/api/management/v1/node/node.pb.go index 9137299d17..b786d38da3 100644 --- a/api/management/v1/node/node.pb.go +++ b/api/management/v1/node/node.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/node/node.proto diff --git a/api/management/v1/pagination.pb.go b/api/management/v1/pagination.pb.go index 1a4b1f6ba2..d623bee594 100644 --- a/api/management/v1/pagination.pb.go +++ b/api/management/v1/pagination.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/pagination.proto diff --git a/api/management/v1/postgresql.pb.go b/api/management/v1/postgresql.pb.go index 0eb79dcb44..e139a150d2 100644 --- a/api/management/v1/postgresql.pb.go +++ b/api/management/v1/postgresql.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/postgresql.proto diff --git a/api/management/v1/proxysql.pb.go b/api/management/v1/proxysql.pb.go index 6a688f5f41..3fccd67fdb 100644 --- a/api/management/v1/proxysql.pb.go +++ b/api/management/v1/proxysql.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/proxysql.proto diff --git a/api/management/v1/rds.pb.go b/api/management/v1/rds.pb.go index 74bb0e4c40..bf7ea9fc6d 100644 --- a/api/management/v1/rds.pb.go +++ b/api/management/v1/rds.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/rds.proto diff --git a/api/management/v1/role/role.pb.go b/api/management/v1/role/role.pb.go index af07cd47a9..3b09b23d99 100644 --- a/api/management/v1/role/role.pb.go +++ b/api/management/v1/role/role.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/role/role.proto diff --git a/api/management/v1/service.pb.go b/api/management/v1/service.pb.go index a5b1b12762..5e3631c4d1 100644 --- a/api/management/v1/service.pb.go +++ b/api/management/v1/service.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/service.proto diff --git a/api/management/v1/service/service.pb.go b/api/management/v1/service/service.pb.go index 9e75801646..847fff835e 100644 --- a/api/management/v1/service/service.pb.go +++ b/api/management/v1/service/service.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/service/service.proto diff --git a/api/management/v1/severity.pb.go b/api/management/v1/severity.pb.go index 3284bbfee3..918e0e4693 100644 --- a/api/management/v1/severity.pb.go +++ b/api/management/v1/severity.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: management/v1/severity.proto diff --git a/api/platform/v1/platform.pb.go b/api/platform/v1/platform.pb.go index c2c7f95dde..64e28527ff 100644 --- a/api/platform/v1/platform.pb.go +++ b/api/platform/v1/platform.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: platform/v1/platform.proto diff --git a/api/qan/v1beta1/collector.pb.go b/api/qan/v1beta1/collector.pb.go index a523f2a370..42ac8d3eb7 100644 --- a/api/qan/v1beta1/collector.pb.go +++ b/api/qan/v1beta1/collector.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: qan/v1beta1/collector.proto diff --git a/api/qan/v1beta1/filters.pb.go b/api/qan/v1beta1/filters.pb.go index 505914c3c8..5b6aaedfec 100644 --- a/api/qan/v1beta1/filters.pb.go +++ b/api/qan/v1beta1/filters.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: qan/v1beta1/filters.proto diff --git a/api/qan/v1beta1/metrics_names.pb.go b/api/qan/v1beta1/metrics_names.pb.go index fffee6f408..da2f2ff036 100644 --- a/api/qan/v1beta1/metrics_names.pb.go +++ b/api/qan/v1beta1/metrics_names.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: qan/v1beta1/metrics_names.proto diff --git a/api/qan/v1beta1/object_details.pb.go b/api/qan/v1beta1/object_details.pb.go index 290204ddc4..8463d7c684 100644 --- a/api/qan/v1beta1/object_details.pb.go +++ b/api/qan/v1beta1/object_details.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: qan/v1beta1/object_details.proto diff --git a/api/qan/v1beta1/profile.pb.go b/api/qan/v1beta1/profile.pb.go index 4631e0d2a7..d428f858af 100644 --- a/api/qan/v1beta1/profile.pb.go +++ b/api/qan/v1beta1/profile.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: qan/v1beta1/profile.proto diff --git a/api/qan/v1beta1/qan.pb.go b/api/qan/v1beta1/qan.pb.go index c11a150bfc..a07374840f 100644 --- a/api/qan/v1beta1/qan.pb.go +++ b/api/qan/v1beta1/qan.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: qan/v1beta1/qan.proto diff --git a/api/server/v1/httperror.pb.go b/api/server/v1/httperror.pb.go index b3ad9706bd..e54f165e84 100644 --- a/api/server/v1/httperror.pb.go +++ b/api/server/v1/httperror.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: server/v1/httperror.proto diff --git a/api/server/v1/server.pb.go b/api/server/v1/server.pb.go index a1ec1f5538..1a9996c598 100644 --- a/api/server/v1/server.pb.go +++ b/api/server/v1/server.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: server/v1/server.proto diff --git a/api/swagger/swagger-dev.json b/api/swagger/swagger-dev.json index 1e078aba35..70a7dae64e 100644 --- a/api/swagger/swagger-dev.json +++ b/api/swagger/swagger-dev.json @@ -3811,13 +3811,13 @@ } } }, - "/v1/inventory/Agents/AddAgent": { + "/v1/inventory/Agents/Add": { "post": { - "description": "Adds an Agent.", + "description": "Adds an Agent from Inventory.", "tags": [ "AgentsService" ], - "summary": "Add an Agent", + "summary": "Add an Agent to Inventory", "operationId": "AddAgent", "parameters": [ { @@ -12388,11 +12388,11 @@ }, "/v1/inventory/Agents/Remove": { "post": { - "description": "Removes an Agent.", + "description": "Removes an Agent from Inventory.", "tags": [ "AgentsService" ], - "summary": "Remove an Agent", + "summary": "Remove an Agent from Inventory", "operationId": "RemoveAgent", "parameters": [ { diff --git a/api/uievents/v1/server.pb.go b/api/uievents/v1/server.pb.go index 9d138d7b5e..c809992ec4 100644 --- a/api/uievents/v1/server.pb.go +++ b/api/uievents/v1/server.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: uievents/v1/server.proto diff --git a/api/user/v1/user.pb.go b/api/user/v1/user.pb.go index 3353f74b6e..587c44173d 100644 --- a/api/user/v1/user.pb.go +++ b/api/user/v1/user.pb.go @@ -1,6 +1,6 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.31.0-devel +// protoc-gen-go v1.32.0 // protoc (unknown) // source: user/v1/user.proto From 9dc87d73818e4262fd682c5bc9b6eb787a7ef0ef Mon Sep 17 00:00:00 2001 From: Alex Demidoff Date: Tue, 26 Dec 2023 12:35:03 +0000 Subject: [PATCH 08/10] PMM-12624 rename addExporter to addAgent --- api-tests/inventory/agents_azure_database_exporter_test.go | 4 ++-- api-tests/inventory/agents_external_exporter_test.go | 6 +++--- api-tests/inventory/agents_mongodb_exporter_test.go | 4 ++-- api-tests/inventory/agents_mysqld_exporter_test.go | 6 +++--- api-tests/inventory/agents_postgres_exporter_test.go | 4 ++-- api-tests/inventory/agents_proxysql_exporter_test.go | 4 ++-- api-tests/inventory/agents_rds_exporter_test.go | 4 ++-- api-tests/inventory/agents_test.go | 6 +++--- api-tests/inventory/helpers.go | 2 +- api-tests/inventory/services_test.go | 2 +- 10 files changed, 21 insertions(+), 21 deletions(-) diff --git a/api-tests/inventory/agents_azure_database_exporter_test.go b/api-tests/inventory/agents_azure_database_exporter_test.go index 141076a0ea..eae394f843 100644 --- a/api-tests/inventory/agents_azure_database_exporter_test.go +++ b/api-tests/inventory/agents_azure_database_exporter_test.go @@ -45,7 +45,7 @@ func TestAzureDatabaseExporter(t *testing.T) { //nolint:tparallel pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - azureDatabaseExporter := addExporter(t, agents.AddAgentBody{ + azureDatabaseExporter := addAgent(t, agents.AddAgentBody{ AzureDatabaseExporter: &agents.AddAgentParamsBodyAzureDatabaseExporter{ NodeID: nodeID, PMMAgentID: pmmAgentID, @@ -227,7 +227,7 @@ func TestAzureDatabaseExporter(t *testing.T) { //nolint:tparallel pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - azureDatabaseExporter := addExporter(t, agents.AddAgentBody{ + azureDatabaseExporter := addAgent(t, agents.AddAgentBody{ AzureDatabaseExporter: &agents.AddAgentParamsBodyAzureDatabaseExporter{ NodeID: nodeID, PMMAgentID: pmmAgentID, diff --git a/api-tests/inventory/agents_external_exporter_test.go b/api-tests/inventory/agents_external_exporter_test.go index 5cd7b08369..d4f81f89fe 100644 --- a/api-tests/inventory/agents_external_exporter_test.go +++ b/api-tests/inventory/agents_external_exporter_test.go @@ -47,7 +47,7 @@ func TestExternalExporter(t *testing.T) { serviceID := service.External.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - ExternalExporter := addExporter(t, agents.AddAgentBody{ + ExternalExporter := addAgent(t, agents.AddAgentBody{ ExternalExporter: &agents.AddAgentParamsBodyExternalExporter{ RunsOnNodeID: genericNodeID, ServiceID: serviceID, @@ -101,7 +101,7 @@ func TestExternalExporter(t *testing.T) { serviceID := service.External.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - ExternalExporter := addExporter(t, agents.AddAgentBody{ + ExternalExporter := addAgent(t, agents.AddAgentBody{ ExternalExporter: &agents.AddAgentParamsBodyExternalExporter{ RunsOnNodeID: genericNodeID, ServiceID: serviceID, @@ -357,7 +357,7 @@ func TestExternalExporter(t *testing.T) { serviceID := service.External.ServiceID defer pmmapitests.RemoveServices(t, serviceID) - ExternalExporter := addExporter(t, agents.AddAgentBody{ + ExternalExporter := addAgent(t, agents.AddAgentBody{ ExternalExporter: &agents.AddAgentParamsBodyExternalExporter{ RunsOnNodeID: genericNodeID, ServiceID: serviceID, diff --git a/api-tests/inventory/agents_mongodb_exporter_test.go b/api-tests/inventory/agents_mongodb_exporter_test.go index 1fb3626326..88591ebd18 100644 --- a/api-tests/inventory/agents_mongodb_exporter_test.go +++ b/api-tests/inventory/agents_mongodb_exporter_test.go @@ -57,7 +57,7 @@ func TestMongoDBExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - mongoDBExporter := addExporter(t, agents.AddAgentBody{ + mongoDBExporter := addAgent(t, agents.AddAgentBody{ MongodbExporter: &agents.AddAgentParamsBodyMongodbExporter{ ServiceID: serviceID, Username: "username", @@ -308,7 +308,7 @@ func TestMongoDBExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - mongoDBExporter := addExporter(t, agents.AddAgentBody{ + mongoDBExporter := addAgent(t, agents.AddAgentBody{ MongodbExporter: &agents.AddAgentParamsBodyMongodbExporter{ ServiceID: serviceID, Username: "username", diff --git a/api-tests/inventory/agents_mysqld_exporter_test.go b/api-tests/inventory/agents_mysqld_exporter_test.go index 2116af1fdf..580e6f7f10 100644 --- a/api-tests/inventory/agents_mysqld_exporter_test.go +++ b/api-tests/inventory/agents_mysqld_exporter_test.go @@ -57,7 +57,7 @@ func TestMySQLdExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - mySqldExporter := addExporter(t, agents.AddAgentBody{ + mySqldExporter := addAgent(t, agents.AddAgentBody{ MysqldExporter: &agents.AddAgentParamsBodyMysqldExporter{ ServiceID: serviceID, Username: "username", @@ -193,7 +193,7 @@ func TestMySQLdExporter(t *testing.T) { t.Skip("There are no connected agents") } - mySqldExporter := addExporter(t, agents.AddAgentBody{ + mySqldExporter := addAgent(t, agents.AddAgentBody{ MysqldExporter: &agents.AddAgentParamsBodyMysqldExporter{ ServiceID: serviceID, Username: "pmm-agent", // from pmm-agent docker-compose.yml @@ -362,7 +362,7 @@ func TestMySQLdExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - mySqldExporter := addExporter(t, agents.AddAgentBody{ + mySqldExporter := addAgent(t, agents.AddAgentBody{ MysqldExporter: &agents.AddAgentParamsBodyMysqldExporter{ ServiceID: serviceID, Username: "username", diff --git a/api-tests/inventory/agents_postgres_exporter_test.go b/api-tests/inventory/agents_postgres_exporter_test.go index 50383cbe0f..6124d68954 100644 --- a/api-tests/inventory/agents_postgres_exporter_test.go +++ b/api-tests/inventory/agents_postgres_exporter_test.go @@ -57,7 +57,7 @@ func TestPostgresExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - PostgresExporter := addExporter(t, agents.AddAgentBody{ + PostgresExporter := addAgent(t, agents.AddAgentBody{ PostgresExporter: &agents.AddAgentParamsBodyPostgresExporter{ ServiceID: serviceID, Username: "username", @@ -305,7 +305,7 @@ func TestPostgresExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - PostgresExporter := addExporter(t, agents.AddAgentBody{ + PostgresExporter := addAgent(t, agents.AddAgentBody{ PostgresExporter: &agents.AddAgentParamsBodyPostgresExporter{ ServiceID: serviceID, Username: "username", diff --git a/api-tests/inventory/agents_proxysql_exporter_test.go b/api-tests/inventory/agents_proxysql_exporter_test.go index db5d185f5b..86c10763fa 100644 --- a/api-tests/inventory/agents_proxysql_exporter_test.go +++ b/api-tests/inventory/agents_proxysql_exporter_test.go @@ -57,7 +57,7 @@ func TestProxySQLExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - ProxySQLExporter := addExporter(t, agents.AddAgentBody{ + ProxySQLExporter := addAgent(t, agents.AddAgentBody{ ProxysqlExporter: &agents.AddAgentParamsBodyProxysqlExporter{ ServiceID: serviceID, Username: "username", @@ -302,7 +302,7 @@ func TestProxySQLExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - ProxySQLExporter := addExporter(t, agents.AddAgentBody{ + ProxySQLExporter := addAgent(t, agents.AddAgentBody{ ProxysqlExporter: &agents.AddAgentParamsBodyProxysqlExporter{ ServiceID: serviceID, Username: "username", diff --git a/api-tests/inventory/agents_rds_exporter_test.go b/api-tests/inventory/agents_rds_exporter_test.go index 7b1e57749d..7ac1e1c236 100644 --- a/api-tests/inventory/agents_rds_exporter_test.go +++ b/api-tests/inventory/agents_rds_exporter_test.go @@ -43,7 +43,7 @@ func TestRDSExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - rdsExporter := addExporter(t, agents.AddAgentBody{ + rdsExporter := addAgent(t, agents.AddAgentBody{ RDSExporter: &agents.AddAgentParamsBodyRDSExporter{ NodeID: nodeID, PMMAgentID: pmmAgentID, @@ -227,7 +227,7 @@ func TestRDSExporter(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - rdsExporter := addExporter(t, agents.AddAgentBody{ + rdsExporter := addAgent(t, agents.AddAgentBody{ RDSExporter: &agents.AddAgentParamsBodyRDSExporter{ NodeID: nodeID, PMMAgentID: pmmAgentID, diff --git a/api-tests/inventory/agents_test.go b/api-tests/inventory/agents_test.go index 4b31b40c97..b9c27283e8 100644 --- a/api-tests/inventory/agents_test.go +++ b/api-tests/inventory/agents_test.go @@ -63,7 +63,7 @@ func TestAgents(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - mySqldExporter := addExporter(t, agents.AddAgentBody{ + mySqldExporter := addAgent(t, agents.AddAgentBody{ MysqldExporter: &agents.AddAgentParamsBodyMysqldExporter{ ServiceID: serviceID, Username: "username", @@ -111,7 +111,7 @@ func TestAgents(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - mySqldExporter := addExporter(t, agents.AddAgentBody{ + mySqldExporter := addAgent(t, agents.AddAgentBody{ MysqldExporter: &agents.AddAgentParamsBodyMysqldExporter{ ServiceID: serviceID, Username: "username", @@ -339,7 +339,7 @@ func TestPMMAgent(t *testing.T) { nodeExporterOK := addNodeExporter(t, pmmAgentID, make(map[string]string)) nodeExporterID := nodeExporterOK.Payload.NodeExporter.AgentID - mySqldExporter := addExporter(t, agents.AddAgentBody{ + mySqldExporter := addAgent(t, agents.AddAgentBody{ MysqldExporter: &agents.AddAgentParamsBodyMysqldExporter{ ServiceID: serviceID, Username: "username", diff --git a/api-tests/inventory/helpers.go b/api-tests/inventory/helpers.go index 624c489ea8..d1ce1abb78 100644 --- a/api-tests/inventory/helpers.go +++ b/api-tests/inventory/helpers.go @@ -98,7 +98,7 @@ func addNodeExporter(t pmmapitests.TestingT, pmmAgentID string, customLabels map return res } -func addExporter(t pmmapitests.TestingT, body agents.AddAgentBody) *agents.AddAgentOKBody { +func addAgent(t pmmapitests.TestingT, body agents.AddAgentBody) *agents.AddAgentOKBody { t.Helper() res, err := client.Default.AgentsService.AddAgent(&agents.AddAgentParams{ diff --git a/api-tests/inventory/services_test.go b/api-tests/inventory/services_test.go index 28a058e753..e4513cde60 100644 --- a/api-tests/inventory/services_test.go +++ b/api-tests/inventory/services_test.go @@ -264,7 +264,7 @@ func TestRemoveService(t *testing.T) { pmmAgentID := pmmAgent.PMMAgent.AgentID defer pmmapitests.RemoveAgents(t, pmmAgentID) - _ = addExporter(t, agents.AddAgentBody{ + _ = addAgent(t, agents.AddAgentBody{ MysqldExporter: &agents.AddAgentParamsBodyMysqldExporter{ ServiceID: serviceID, Username: "username", From 9264f0e62009c19618e5b0f6bb06c3f12d34b4ef Mon Sep 17 00:00:00 2001 From: Alex Demidoff Date: Tue, 26 Dec 2023 13:23:05 +0000 Subject: [PATCH 09/10] PMM-12624 add the documentation --- api/inventory/v1/agents.proto | 7 --- docs/api/inventory/add-agent.md | 85 +++++++++++++++++++++++++++++++ docs/api/inventory/add-node.md | 2 +- docs/api/inventory/add-service.md | 2 +- 4 files changed, 87 insertions(+), 9 deletions(-) create mode 100644 docs/api/inventory/add-agent.md diff --git a/api/inventory/v1/agents.proto b/api/inventory/v1/agents.proto index 20c3a208ea..e51c494848 100644 --- a/api/inventory/v1/agents.proto +++ b/api/inventory/v1/agents.proto @@ -704,13 +704,6 @@ message AddAgentResponse { int32 table_count = 15; } -// TODO: remove AddPMMAgent(AddPMMAgentRequest) returns (AddPMMAgentResponse) { -// TODO: remove AddQANMySQLPerfSchemaAgent(AddQANMySQLPerfSchemaAgentRequest) returns (AddQANMySQLPerfSchemaAgentResponse) { -// TODO: remove AddQANMongoDBProfilerAgent(AddQANMongoDBProfilerAgentRequest) returns (AddQANMongoDBProfilerAgentResponse) { -// TODO: remove AddQANPostgreSQLPgStatementsAgent(AddQANPostgreSQLPgStatementsAgentRequest) returns (AddQANPostgreSQLPgStatementsAgentResponse) { -// TODO: remove AddQANMySQLSlowlogAgent(AddQANMySQLSlowlogAgentRequest) returns (AddQANMySQLSlowlogAgentResponse) { -// TODO: remove AddQANPostgreSQLPgStatMonitorAgent(AddQANPostgreSQLPgStatMonitorAgentRequest) returns (AddQANPostgreSQLPgStatMonitorAgentResponse) { - message AddNodeExporterParams { // The pmm-agent identifier which runs this instance. string pmm_agent_id = 1 [(validate.rules).string.min_len = 1]; diff --git a/docs/api/inventory/add-agent.md b/docs/api/inventory/add-agent.md new file mode 100644 index 0000000000..d893e4dfae --- /dev/null +++ b/docs/api/inventory/add-agent.md @@ -0,0 +1,85 @@ +--- +title: Add an Agent +slug: addagent +category: 626de009b977e3003179f7dd +--- + +## Add an Agent + +This section describes how to add an Agent of any type to PMM Inventory. + +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. `Agents/MySQLdExporter`, 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 add an Agent of type `mysql` using the old and new API calls. + +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/MySQLdExporter \ + --data ' +{ + "pmm_agent_id": "pmm-server", + "service_id": "/service_id/13519ec9-eedc-4d21-868c-582e146e1d0e", + "username": "mysql-prod-user", + "password": "mysql-prod-pass", + "listen_port": 33060, + "custom_labels": { + "department": "sales", + "environment": "sales-prod", + "replication_set": "db-sales-prod-1-rs1", + "cluster": "db-sales-prod-1" + } +} +' +``` + +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": { + "pmm_agent_id": "pmm-server", + "service_id": "/service_id/13519ec9-eedc-4d21-868c-582e146e1d0e", + "username": "mysql-prod-user", + "password": "mysql-prod-pass", + "listen_port": 33060, + "custom_labels": { + "department": "sales", + "environment": "sales-prod", + "replication_set": "db-sales-prod-1-rs1", + "cluster": "db-sales-prod-1" + } + } +} +' +``` + +You can choose from the following Agent types: + +- pmm_agent +- node_exporter +- mysqld_exporter +- mongodb_exporter +- postgres_exporter +- proxysql_exporter +- external_exporter +- rds_exporter +- azure_database_exporter +- qan_mysql_perfschema_agent +- qan_mysql_slowlog_agent +- qan_mongodb_profiler_agent +- qan_postgresql_pgstatements_agent +- qan_postgresql_pgstatmonitor_agent + + +To get the authentication token, please visit [this page](ref:authentication). diff --git a/docs/api/inventory/add-node.md b/docs/api/inventory/add-node.md index b7263228d8..3ddff695d7 100644 --- a/docs/api/inventory/add-node.md +++ b/docs/api/inventory/add-node.md @@ -8,7 +8,7 @@ category: 626de009b977e3003179f7dd This section describes how to add a Node of any type to PMM Inventory. -In PMM 2, we featured a separate API call for each Node type. Starting with PMM 3, we offer a single API endpoint for all Node types. While previously the Node type was defined by the endpoint, i.e. `Nodes/AddGeneric`, now the Node type must be specified as the top-level property of the request payload. Along with this single API endpoint, we are deprecating the separate API calls for each Node type. +In PMM 2, we featured a separate API call for each Node type. Starting with PMM 3, we offer a single API endpoint for all Node types. While previously the Node type was defined by the endpoint, i.e. `Nodes/AddGeneric`, now the Node type must be specified as the top-level property of the request payload. Along with this single API endpoint, we are deprecating individual API endpoint for each Node type. Let's see how to add a Node of type `generic` using the old and new API calls. diff --git a/docs/api/inventory/add-service.md b/docs/api/inventory/add-service.md index 4ff9bc487e..cd34ea6500 100644 --- a/docs/api/inventory/add-service.md +++ b/docs/api/inventory/add-service.md @@ -8,7 +8,7 @@ category: 626de009b977e3003179f7dd This section describes how to add a Service of any type to PMM Inventory. -In PMM versions prior to 3.0.0, we featured a separate API call for each Service type. Starting with PMM 3.0.0, we offer a single API endpoint for all Service types. While previously the Service type was defined by the endpoint, i.e. `Services/AddMySQL`, now the Service type must be specified as the top-level property of the request payload. Along with this single API endpoint, we are deprecating the separate API calls for each Service type. +In PMM versions prior to 3.0.0, we featured a separate API call for each Service type. Starting with PMM 3.0.0, we offer a single API endpoint for all Service types. While previously the Service type was defined by the endpoint, i.e. `Services/AddMySQL`, now the Service 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 Service type. Let's see how to add a Node of type `mysql` using the old and new API calls. From acb6203d09bfdbef649d2dbb19755626e8e2c4e7 Mon Sep 17 00:00:00 2001 From: Alex Demidoff Date: Tue, 26 Dec 2023 13:53:53 +0000 Subject: [PATCH 10/10] PMM-12624 make grpc methods private --- .../services/inventory/grpc/agents_server.go | 24 ++++++++++++++----- 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/managed/services/inventory/grpc/agents_server.go b/managed/services/inventory/grpc/agents_server.go index 880b16e60b..8bfb2d08eb 100644 --- a/managed/services/inventory/grpc/agents_server.go +++ b/managed/services/inventory/grpc/agents_server.go @@ -174,7 +174,7 @@ func (s *agentsServer) GetAgentLogs(ctx context.Context, req *inventoryv1.GetAge } // AddPMMAgent adds pmm-agent Agent. -func (s *agentsServer) AddPMMAgent(ctx context.Context, params *inventoryv1.AddPMMAgentParams) (*inventoryv1.AddAgentResponse, error) { +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 @@ -191,6 +191,8 @@ func (s *agentsServer) AddPMMAgent(ctx context.Context, params *inventoryv1.AddP // AddAgent adds an Agent. func (s *agentsServer) AddAgent(ctx context.Context, req *inventoryv1.AddAgentRequest) (*inventoryv1.AddAgentResponse, error) { switch req.Exporter.(type) { + case *inventoryv1.AddAgentRequest_PmmAgent: + return s.addPMMAgent(ctx, req.GetPmmAgent()) case *inventoryv1.AddAgentRequest_NodeExporter: return s.addNodeExporter(ctx, req.GetNodeExporter()) case *inventoryv1.AddAgentRequest_MysqldExporter: @@ -207,6 +209,16 @@ func (s *agentsServer) AddAgent(ctx context.Context, req *inventoryv1.AddAgentRe return s.addExternalExporter(ctx, req.GetExternalExporter()) case *inventoryv1.AddAgentRequest_AzureDatabaseExporter: return s.addAzureDatabaseExporter(ctx, req.GetAzureDatabaseExporter()) + case *inventoryv1.AddAgentRequest_QanMysqlPerfschemaAgent: + return s.addQANMySQLPerfSchemaAgent(ctx, req.GetQanMysqlPerfschemaAgent()) + case *inventoryv1.AddAgentRequest_QanMysqlSlowlogAgent: + return s.addQANMySQLSlowlogAgent(ctx, req.GetQanMysqlSlowlogAgent()) + case *inventoryv1.AddAgentRequest_QanMongodbProfilerAgent: + return s.addQANMongoDBProfilerAgent(ctx, req.GetQanMongodbProfilerAgent()) + case *inventoryv1.AddAgentRequest_QanPostgresqlPgstatementsAgent: + return s.addQANPostgreSQLPgStatementsAgent(ctx, req.GetQanPostgresqlPgstatementsAgent()) + case *inventoryv1.AddAgentRequest_QanPostgresqlPgstatmonitorAgent: + return s.addQANPostgreSQLPgStatMonitorAgent(ctx, req.GetQanPostgresqlPgstatmonitorAgent()) default: return nil, fmt.Errorf("invalid request %v", req.Exporter) } @@ -300,7 +312,7 @@ func (s *agentsServer) ChangeMongoDBExporter(ctx context.Context, req *inventory // AddQANMySQLPerfSchemaAgent adds MySQL PerfSchema QAN Agent. // //nolint:lll -func (s *agentsServer) AddQANMySQLPerfSchemaAgent(ctx context.Context, req *inventoryv1.AddQANMySQLPerfSchemaAgentParams) (*inventoryv1.AddAgentResponse, error) { +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 @@ -332,7 +344,7 @@ func (s *agentsServer) ChangeQANMySQLPerfSchemaAgent(ctx context.Context, req *i // AddQANMySQLSlowlogAgent adds MySQL Slowlog QAN Agent. // //nolint:lll -func (s *agentsServer) AddQANMySQLSlowlogAgent(ctx context.Context, params *inventoryv1.AddQANMySQLSlowlogAgentParams) (*inventoryv1.AddAgentResponse, error) { +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 @@ -392,7 +404,7 @@ func (s *agentsServer) ChangePostgresExporter(ctx context.Context, req *inventor // AddQANMongoDBProfilerAgent adds MongoDB Profiler QAN Agent. // //nolint:lll -func (s *agentsServer) AddQANMongoDBProfilerAgent(ctx context.Context, params *inventoryv1.AddQANMongoDBProfilerAgentParams) (*inventoryv1.AddAgentResponse, error) { +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 @@ -450,7 +462,7 @@ func (s *agentsServer) ChangeProxySQLExporter(ctx context.Context, req *inventor } // AddQANPostgreSQLPgStatementsAgent adds PostgreSQL Pg stat statements QAN Agent. -func (s *agentsServer) AddQANPostgreSQLPgStatementsAgent(ctx context.Context, params *inventoryv1.AddQANPostgreSQLPgStatementsAgentParams) (*inventoryv1.AddAgentResponse, error) { //nolint:lll +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 @@ -478,7 +490,7 @@ func (s *agentsServer) ChangeQANPostgreSQLPgStatementsAgent(ctx context.Context, } // AddQANPostgreSQLPgStatMonitorAgent adds PostgreSQL Pg stat monitor QAN Agent. -func (s *agentsServer) AddQANPostgreSQLPgStatMonitorAgent(ctx context.Context, params *inventoryv1.AddQANPostgreSQLPgStatMonitorAgentParams) (*inventoryv1.AddAgentResponse, error) { //nolint:lll +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