VOL-1848 API for setting and querying loglevel in api-server
Change-Id: Ibecb3c33953b60251c94c5e1438c4bff99e9139a
diff --git a/protos/voltha_protos/afrouter.proto b/protos/voltha_protos/afrouter.proto
index 2f2ec00..c10a00f 100644
--- a/protos/voltha_protos/afrouter.proto
+++ b/protos/voltha_protos/afrouter.proto
@@ -6,10 +6,15 @@
package afrouter;
+// For logging
+import "voltha_protos/common.proto";
+
service Configuration {
- rpc SetConnection (Conn) returns (Result) {}
+ rpc SetConnection (Conn) returns (Result) {}
rpc SetAffinity(Affinity) returns (Result) {}
rpc GetGoroutineCount(Empty) returns (Count) {}
+ rpc UpdateLogLevel(common.Logging) returns (Empty) {}
+ rpc GetLogLevels(common.LoggingComponent) returns (common.Loggings) {}
}
message Result {
@@ -43,3 +48,4 @@
string backend = 4;
string id = 5;
}
+
diff --git a/protos/voltha_protos/common.proto b/protos/voltha_protos/common.proto
index 880c4ad..f5e68c4 100644
--- a/protos/voltha_protos/common.proto
+++ b/protos/voltha_protos/common.proto
@@ -34,6 +34,22 @@
}
}
+message Logging {
+ common.LogLevel.LogLevel level = 1;
+ string package_name = 2;
+ string component_name = 3;
+}
+
+// For GetLogLevels(), select component to query
+message LoggingComponent {
+ string component_name = 1;
+}
+
+// For returning multiple log levels
+message Loggings {
+ repeated Logging items = 1;
+}
+
message AdminState {
option (yang_child_rule) = MOVE_TO_PARENT_LEVEL;
diff --git a/protos/voltha_protos/voltha.proto b/protos/voltha_protos/voltha.proto
index 75199aa..5e45033 100644
--- a/protos/voltha_protos/voltha.proto
+++ b/protos/voltha_protos/voltha.proto
@@ -70,11 +70,6 @@
repeated AlarmFilter filters = 1;
}
-message Logging {
- common.LogLevel.LogLevel level = 1;
- string package_name = 2;
-}
-
// CoreInstance represents a core instance. It is data held in memory when a core
// is running. This data is not persistent.
message CoreInstance {
@@ -163,7 +158,14 @@
service VolthaService {
// Get more information on a given physical device
- rpc UpdateLogLevel(Logging) returns(google.protobuf.Empty) {
+ rpc UpdateLogLevel(common.Logging) returns(google.protobuf.Empty) {
+ option (google.api.http) = {
+ post: "/api/v1/logs"
+ body: "*"
+ };
+ }
+
+ rpc GetLogLevels(common.LoggingComponent) returns (common.Loggings) {
option (google.api.http) = {
get: "/api/v1/logs"
};