diff options
Diffstat (limited to 'src/mongo/db/free_mon/free_mon_protocol.idl')
| -rw-r--r-- | src/mongo/db/free_mon/free_mon_protocol.idl | 149 |
1 files changed, 149 insertions, 0 deletions
diff --git a/src/mongo/db/free_mon/free_mon_protocol.idl b/src/mongo/db/free_mon/free_mon_protocol.idl new file mode 100644 index 00000000000..8e2e7899ed7 --- /dev/null +++ b/src/mongo/db/free_mon/free_mon_protocol.idl @@ -0,0 +1,149 @@ +# Copyright (C) 2018-present MongoDB, Inc. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the Server Side Public License, version 1, +# as published by MongoDB, Inc. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# Server Side Public License for more details. +# +# You should have received a copy of the Server Side Public License +# along with this program. If not, see +# <http://www.mongodb.com/licensing/server-side-public-license>. +# +# As a special exception, the copyright holders give permission to link the +# code of portions of this program with the OpenSSL library under certain +# conditions as described in each individual source file and distribute +# linked combinations including the program with the OpenSSL library. You +# must comply with the Server Side Public License in all respects for +# all of the code used other than as permitted herein. If you modify file(s) +# with this exception, you may extend this exception to your version of the +# file(s), but you are not obligated to do so. If you do not wish to do so, +# delete this exception statement from your version. If you delete this +# exception statement from all source files in the program, then also delete +# it in the license file. +# +global: + cpp_namespace: "mongo" + +imports: + - "mongo/idl/basic_types.idl" + + +enums: + MetricsEncoding: + description: "Metrics Encoding Methods" + type: string + values: + snappy: "snappy" + + +structs: + FreeMonRegistrationRequest: + description: "Registration Request to Cloud Server" + fields: + version: + description: "Protocol version, initial version is 1" + type: long + payload: + description: "Payload of registration information" + type: object + id: + description: "Existing Registration Id" + type: string + optional: true + localTime: + description: "Local time at registration send" + type: date + tags: + description: "Tags" + type: array<string> + optional: true + + FreeMonRegistrationResponse: + description: "Registration Response from Cloud Server" + fields: + version: + description: "Protocol version, initial version is 1" + type: long + haltMetricsUploading: + description: "True indicates it should not proceed to metrics uploading" + type: bool + id: + description: "Existing Registration Id" + type: string + informationalURL: + description: "Informational HTTP web page for metrics" + type: string + message: + description: "Informational message for shell to display to user" + type: string + reportingInterval: + description: "Metrics Reporting interval in seconds" + type: long + userReminder: + description: "Informational message to display to user to remind them about the service" + type: string + optional: true + + + FreeMonMetricsRequest: + description: "Metrics Request to Cloud Server" + fields: + version: + description: "Protocol version, initial version is 1" + type: long + id: + description: "Registration Id" + type: string + localTime: + description: "Local time at metrics send" + type: date + encoding: + description: "Compression Encoding" + type: MetricsEncoding + metrics: + description: "Metrics Blob" + type: bindata_generic + + # History + # ------- + # Version 2 - added resendRegistration bool + # + FreeMonMetricsResponse: + description: "Metrics Response from Cloud Server" + fields: + version: + description: "Protocol version, initial version is 1" + type: long + haltMetricsUploading: + description: "True indicates it should not proceed to metrics uploading" + type: bool + permanentlyDelete: + description: "True indicates it permanently delete the local state" + type: bool + reportingInterval: + description: "Metrics Reporting interval in seconds" + type: long + id: + description: "Existing Registration Id" + type: string + optional: true + message: + description: "Informational message for shell to display to user" + type: string + optional: true + informationalURL: + description: "Informational HTTP web page for metrics" + type: string + optional: true + userReminder: + description: "Message to display to user to remind them about service" + type: string + optional: true + resendRegistration: + description: "If true, resend registration to server" + type: bool + optional: true |
