Skip to content

Commit

Permalink
[FAB-9174] Fix peer crash due to log contention
Browse files Browse the repository at this point in the history
In prior releases, the version of go-logging
vendored by Fabric was directly modified to
add locking around getting and setting log
levels.  In the current src tree, the
unmodified version of go-logging is used.

The issue from FAB-9174 should not occur if
logging is actually initialized prior to
be used in other modules.

Change-Id: I0be40796b1b6f5e9ab54f8f50a1858724a1abe47
Signed-off-by: Gari Singh <gari.r.singh@gmail.com>
  • Loading branch information
mastersingh24 committed Apr 7, 2018
1 parent 0d3ccd0 commit 5f5d8e8
Showing 1 changed file with 12 additions and 12 deletions.
24 changes: 12 additions & 12 deletions peer/node/start.go
Expand Up @@ -118,6 +118,18 @@ func serve(args []string) error {
panic("Unsupported msp type " + msp.ProviderTypeToString(mspType))
}

// set the logging level for specific modules defined via environment
// variables or core.yaml
overrideLogModules := []string{"msp", "gossip", "ledger", "cauthdsl", "policies", "grpc", "peer.gossip"}
for _, module := range overrideLogModules {
err := common.SetLogLevelFromViper(module)
if err != nil {
logger.Warningf("Error setting log level for module '%s': %s", module, err.Error())
}
}

flogging.SetPeerStartupModulesMap()

logger.Infof("Starting %s", version.GetInfo())

//startup aclmgmt with default ACL providers (resource based and default 1.0 policies based).
Expand Down Expand Up @@ -368,18 +380,6 @@ func serve(args []string) error {
logger.Infof("Started peer with ID=[%s], network ID=[%s], address=[%s]",
peerEndpoint.Id, viper.GetString("peer.networkId"), peerEndpoint.Address)

// set the logging level for specific modules defined via environment
// variables or core.yaml
overrideLogModules := []string{"msp", "gossip", "ledger", "cauthdsl", "policies", "grpc", "peer.gossip"}
for _, module := range overrideLogModules {
err = common.SetLogLevelFromViper(module)
if err != nil {
logger.Warningf("Error setting log level for module '%s': %s", module, err.Error())
}
}

flogging.SetPeerStartupModulesMap()

// Block until grpc server exits
return <-serve
}
Expand Down

0 comments on commit 5f5d8e8

Please sign in to comment.