grpc plugin: Create a "Dispatch" service and use streaming RPCs.
[collectd.git] / proto / collectd.proto
index 4bc3501..0ed6606 100644 (file)
@@ -29,13 +29,15 @@ package collectd;
 import "types.proto";
 
 service Collectd {
-       // Dispatch collected values to collectd.
-       rpc DispatchValues(DispatchValuesRequest) returns (DispatchValuesReply);
-
        // Query a list of values available from collectd's value cache.
        rpc QueryValues(QueryValuesRequest) returns (QueryValuesReply);
 }
 
+service Dispatch {
+  // DispatchValues sends a stream of ValueLists to the server.
+  rpc DispatchValues(stream DispatchValuesRequest) returns (DispatchValuesReply);
+}
+
 // The arguments to DispatchValues.
 message DispatchValuesRequest {
        collectd.types.ValueList value_list = 1;