X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=proto%2Fcollectd.proto;h=917c5deb679985dd90388176f7e9449569e3ef37;hb=4979d8dcd6f097eb8fd4661086e28accd31ff905;hp=ba60793b66f1e1e564c1a23918f828fa2c72f050;hpb=1bdd4bf92c0e54efe40b372cf738527d04f90152;p=collectd.git diff --git a/proto/collectd.proto b/proto/collectd.proto index ba60793b..917c5deb 100644 --- a/proto/collectd.proto +++ b/proto/collectd.proto @@ -1,5 +1,5 @@ // 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"), @@ -25,37 +25,38 @@ syntax = "proto3"; package collectd; +option go_package = "collectd.org/rpc/proto"; import "types.proto"; -import "google/protobuf/timestamp.proto"; service Collectd { - // Dispatch collected values to collectd. - rpc DispatchValues(DispatchValuesRequest) returns (DispatchValuesReply); - - // Retrieve a list of all values available in collectd's value cache. - rpc ListValues(ListValuesRequest) returns (ListValuesReply); + // 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 { -} - -// The arguments to ListValues. -message ListValuesRequest { +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 ListValues. -message ListValuesReply { - message Value { - string name = 1; - google.protobuf.Timestamp time = 2; - } - - repeated Value value = 1; -} +// The response from QueryValues. +message QueryValuesResponse { collectd.types.ValueList value_list = 1; }