VOL-1848 API for setting and querying loglevel of api-server;
Add source-router to support routing UpdateLogLevel to cores;
Add logging endpoints to rocore
Change-Id: I89eea3599ea3006fe92e6917221cd1fd235ec5e4
diff --git a/rw_core/core/grpc_nbi_api_handler.go b/rw_core/core/grpc_nbi_api_handler.go
index 8cc1dc4..7f45875 100755
--- a/rw_core/core/grpc_nbi_api_handler.go
+++ b/rw_core/core/grpc_nbi_api_handler.go
@@ -204,12 +204,42 @@
out := new(empty.Empty)
if logging.PackageName == "" {
log.SetAllLogLevel(int(logging.Level))
+ log.SetDefaultLogLevel(int(logging.Level))
+ } else if logging.PackageName == "default" {
+ log.SetDefaultLogLevel(int(logging.Level))
} else {
log.SetPackageLogLevel(logging.PackageName, int(logging.Level))
}
+
return out, nil
}
+func (aa APIHandler) GetLogLevels(ctx context.Context, in *voltha.LoggingComponent) (*voltha.Loggings, error) {
+ logLevels := &voltha.Loggings{}
+
+ // do the per-package log levels
+ for _, packageName := range log.GetPackageNames() {
+ level, err := log.GetPackageLogLevel(packageName)
+ if err != nil {
+ return nil, err
+ }
+ logLevel := &voltha.Logging{
+ ComponentName: in.ComponentName,
+ PackageName: packageName,
+ Level: voltha.LogLevel_LogLevel(level)}
+ logLevels.Items = append(logLevels.Items, logLevel)
+ }
+
+ // now do the default log level
+ logLevel := &voltha.Logging{
+ ComponentName: in.ComponentName,
+ PackageName: "default",
+ Level: voltha.LogLevel_LogLevel(log.GetDefaultLogLevel())}
+ logLevels.Items = append(logLevels.Items, logLevel)
+
+ return logLevels, nil
+}
+
func (handler *APIHandler) GetLogicalDevicePort(ctx context.Context, id *voltha.LogicalPortId) (*voltha.LogicalPort, error) {
log.Debugw("GetLogicalDevicePort-request", log.Fields{"id": *id})