diff --git a/proto/collectd.proto b/proto/collectd.proto
index 84db755bf91bf5a08e79ad026bccc2ca5687c55c..917c5deb679985dd90388176f7e9449569e3ef37 100644 (file)
--- a/proto/collectd.proto
+++ b/proto/collectd.proto
// collectd - proto/collectd.proto
-// Copyright (C) 2015 Sebastian Harl
+// Copyright (C) 2015-2016 Sebastian Harl
//
// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the "Software"),
syntax = "proto3";
package collectd;
+option go_package = "collectd.org/rpc/proto";
import "types.proto";
service Collectd {
- // Dispatch collected values to collectd.
- rpc DispatchValues(DispatchValuesRequest) returns (DispatchValuesReply);
+ // DispatchValues reads the value lists from the DispatchValuesRequest stream.
+ // The gRPC server embedded into collectd will inject them into the system
+ // just like the network plugin.
+ rpc DispatchValues(stream DispatchValuesRequest)
+ returns (DispatchValuesResponse);
+
+ // QueryValues returns a stream of matching value lists from collectd's
+ // internal cache.
+ rpc QueryValues(QueryValuesRequest) returns (stream QueryValuesResponse);
}
// The arguments to DispatchValues.
message DispatchValuesRequest {
- collectd.types.ValueList values = 1;
+ // value_list is the metric to be sent to the server.
+ collectd.types.ValueList value_list = 1;
}
// The response from DispatchValues.
-message DispatchValuesReply {
+message DispatchValuesResponse {}
+
+// The arguments to QueryValues.
+message QueryValuesRequest {
+ // Query by the fields of the identifier. Only return values matching the
+ // specified shell wildcard patterns (see fnmatch(3)). Use '*' to match
+ // any value.
+ collectd.types.Identifier identifier = 1;
}
+
+// The response from QueryValues.
+message QueryValuesResponse { collectd.types.ValueList value_list = 1; }