From 2581fffaa52964c345839a8236209241e8835bab Mon Sep 17 00:00:00 2001 From: Alessio Treglia Date: Tue, 16 Apr 2019 04:58:06 +0100 Subject: [PATCH] Merge PR #4126: Add module-wide named loggers Closes: #4124 --- x/distribution/keeper/allocation.go | 2 +- x/distribution/keeper/delegation.go | 2 +- x/distribution/keeper/keeper.go | 5 +++++ x/gov/endblocker.go | 2 +- x/gov/keeper.go | 4 ++++ x/slashing/keeper.go | 8 ++++++-- x/slashing/tick.go | 2 +- x/staking/keeper/keeper.go | 6 +++++- x/staking/keeper/slash.go | 6 +++--- 9 files changed, 27 insertions(+), 10 deletions(-) diff --git a/x/distribution/keeper/allocation.go b/x/distribution/keeper/allocation.go index df5be3b92..abc2575b2 100644 --- a/x/distribution/keeper/allocation.go +++ b/x/distribution/keeper/allocation.go @@ -12,7 +12,7 @@ import ( func (k Keeper) AllocateTokens(ctx sdk.Context, sumPreviousPrecommitPower, totalPreviousPower int64, previousProposer sdk.ConsAddress, previousVotes []abci.VoteInfo) { - logger := ctx.Logger().With("module", "x/distribution") + logger := k.Logger(ctx) // fetch and clear the collected fees for distribution, since this is // called in BeginBlock, collected fees will be from the previous block diff --git a/x/distribution/keeper/delegation.go b/x/distribution/keeper/delegation.go index 4b388ff92..20321e870 100644 --- a/x/distribution/keeper/delegation.go +++ b/x/distribution/keeper/delegation.go @@ -131,7 +131,7 @@ func (k Keeper) withdrawDelegationRewards(ctx sdk.Context, val sdk.Validator, de // of the decCoins due to operation order of the distribution mechanism. rewards := rewardsRaw.Intersect(outstanding) if !rewards.IsEqual(rewardsRaw) { - logger := ctx.Logger().With("module", "x/distr") + logger := k.Logger(ctx) logger.Info(fmt.Sprintf("missing rewards rounding error, delegator %v"+ "withdrawing rewards from validator %v, should have received %v, got %v", val.GetOperator(), del.GetDelegatorAddr(), rewardsRaw, rewards)) diff --git a/x/distribution/keeper/keeper.go b/x/distribution/keeper/keeper.go index 2d1439dca..1a4c04928 100644 --- a/x/distribution/keeper/keeper.go +++ b/x/distribution/keeper/keeper.go @@ -5,6 +5,8 @@ import ( sdk "github.com/cosmos/cosmos-sdk/types" "github.com/cosmos/cosmos-sdk/x/distribution/types" "github.com/cosmos/cosmos-sdk/x/params" + + "github.com/tendermint/tendermint/libs/log" ) // keeper of the staking store @@ -35,6 +37,9 @@ func NewKeeper(cdc *codec.Codec, key sdk.StoreKey, paramSpace params.Subspace, c return keeper } +// Logger returns a module-specific logger. +func (k Keeper) Logger(ctx sdk.Context) log.Logger { return ctx.Logger().With("module", "x/distr") } + // set withdraw address func (k Keeper) SetWithdrawAddr(ctx sdk.Context, delegatorAddr sdk.AccAddress, withdrawAddr sdk.AccAddress) sdk.Error { if !k.GetWithdrawAddrEnabled(ctx) { diff --git a/x/gov/endblocker.go b/x/gov/endblocker.go index 3da7f3a1d..41923e339 100644 --- a/x/gov/endblocker.go +++ b/x/gov/endblocker.go @@ -9,7 +9,7 @@ import ( // Called every block, process inflation, update validator set func EndBlocker(ctx sdk.Context, keeper Keeper) sdk.Tags { - logger := ctx.Logger().With("module", "x/gov") + logger := keeper.Logger(ctx) resTags := sdk.NewTags() inactiveIterator := keeper.InactiveProposalQueueIterator(ctx, ctx.BlockHeader().Time) diff --git a/x/gov/keeper.go b/x/gov/keeper.go index a2216698b..f64b0fbc6 100644 --- a/x/gov/keeper.go +++ b/x/gov/keeper.go @@ -8,6 +8,7 @@ import ( "github.com/cosmos/cosmos-sdk/x/params" "github.com/tendermint/tendermint/crypto" + "github.com/tendermint/tendermint/libs/log" ) const ( @@ -94,6 +95,9 @@ func NewKeeper(cdc *codec.Codec, key sdk.StoreKey, paramsKeeper params.Keeper, } } +// Logger returns a module-specific logger. +func (k Keeper) Logger(ctx sdk.Context) log.Logger { return ctx.Logger().With("module", "x/gov") } + // Proposals func (keeper Keeper) SubmitProposal(ctx sdk.Context, content ProposalContent) (proposal Proposal, err sdk.Error) { proposalID, err := keeper.getNewProposalID(ctx) diff --git a/x/slashing/keeper.go b/x/slashing/keeper.go index 35a357748..dbd26db95 100644 --- a/x/slashing/keeper.go +++ b/x/slashing/keeper.go @@ -5,6 +5,7 @@ import ( "time" "github.com/tendermint/tendermint/crypto" + "github.com/tendermint/tendermint/libs/log" "github.com/cosmos/cosmos-sdk/codec" sdk "github.com/cosmos/cosmos-sdk/types" @@ -34,10 +35,13 @@ func NewKeeper(cdc *codec.Codec, key sdk.StoreKey, vs sdk.ValidatorSet, paramspa return keeper } +// Logger returns a module-specific logger. +func (k Keeper) Logger(ctx sdk.Context) log.Logger { return ctx.Logger().With("module", "x/slashing") } + // handle a validator signing two blocks at the same height // power: power of the double-signing validator at the height of infraction func (k Keeper) handleDoubleSign(ctx sdk.Context, addr crypto.Address, infractionHeight int64, timestamp time.Time, power int64) { - logger := ctx.Logger().With("module", "x/slashing") + logger := k.Logger(ctx) // calculate the age of the evidence time := ctx.BlockHeader().Time @@ -125,7 +129,7 @@ func (k Keeper) handleDoubleSign(ctx sdk.Context, addr crypto.Address, infractio // handle a validator signature, must be called once per validator per block // TODO refactor to take in a consensus address, additionally should maybe just take in the pubkey too func (k Keeper) handleValidatorSignature(ctx sdk.Context, addr crypto.Address, power int64, signed bool) { - logger := ctx.Logger().With("module", "x/slashing") + logger := k.Logger(ctx) height := ctx.BlockHeight() consAddr := sdk.ConsAddress(addr) pubkey, err := k.getPubkey(ctx, addr) diff --git a/x/slashing/tick.go b/x/slashing/tick.go index bd779973f..14e07d650 100644 --- a/x/slashing/tick.go +++ b/x/slashing/tick.go @@ -27,7 +27,7 @@ func BeginBlocker(ctx sdk.Context, req abci.RequestBeginBlock, sk Keeper) sdk.Ta case tmtypes.ABCIEvidenceTypeDuplicateVote: sk.handleDoubleSign(ctx, evidence.Validator.Address, evidence.Height, evidence.Time, evidence.Validator.Power) default: - ctx.Logger().With("module", "x/slashing").Error(fmt.Sprintf("ignored unknown evidence type: %s", evidence.Type)) + sk.Logger(ctx).Error(fmt.Sprintf("ignored unknown evidence type: %s", evidence.Type)) } } diff --git a/x/staking/keeper/keeper.go b/x/staking/keeper/keeper.go index bfd60fa7b..e02f53563 100644 --- a/x/staking/keeper/keeper.go +++ b/x/staking/keeper/keeper.go @@ -3,9 +3,10 @@ package keeper import ( "container/list" + "github.com/tendermint/tendermint/libs/log" + "github.com/cosmos/cosmos-sdk/codec" sdk "github.com/cosmos/cosmos-sdk/types" - "github.com/cosmos/cosmos-sdk/x/params" "github.com/cosmos/cosmos-sdk/x/staking/types" ) @@ -44,6 +45,9 @@ func NewKeeper(cdc *codec.Codec, key, tkey sdk.StoreKey, bk types.BankKeeper, return keeper } +// Logger returns a module-specific logger. +func (k Keeper) Logger(ctx sdk.Context) log.Logger { return ctx.Logger().With("module", "x/staking") } + // Set the validator hooks func (k *Keeper) SetHooks(sh sdk.StakingHooks) *Keeper { if k.hooks != nil { diff --git a/x/staking/keeper/slash.go b/x/staking/keeper/slash.go index dbd19a941..fd0df8d59 100644 --- a/x/staking/keeper/slash.go +++ b/x/staking/keeper/slash.go @@ -22,7 +22,7 @@ import ( // Infraction was committed at the current height or at a past height, // not at a height in the future func (k Keeper) Slash(ctx sdk.Context, consAddr sdk.ConsAddress, infractionHeight int64, power int64, slashFactor sdk.Dec) { - logger := ctx.Logger().With("module", "x/staking") + logger := k.Logger(ctx) if slashFactor.LT(sdk.ZeroDec()) { panic(fmt.Errorf("attempted to slash with a negative slash factor: %v", slashFactor)) @@ -137,7 +137,7 @@ func (k Keeper) Slash(ctx sdk.Context, consAddr sdk.ConsAddress, infractionHeigh func (k Keeper) Jail(ctx sdk.Context, consAddr sdk.ConsAddress) { validator := k.mustGetValidatorByConsAddr(ctx, consAddr) k.jailValidator(ctx, validator) - logger := ctx.Logger().With("module", "x/staking") + logger := k.Logger(ctx) logger.Info(fmt.Sprintf("validator %s jailed", consAddr)) // TODO Return event(s), blocked on https://github.com/tendermint/tendermint/pull/1803 return @@ -147,7 +147,7 @@ func (k Keeper) Jail(ctx sdk.Context, consAddr sdk.ConsAddress) { func (k Keeper) Unjail(ctx sdk.Context, consAddr sdk.ConsAddress) { validator := k.mustGetValidatorByConsAddr(ctx, consAddr) k.unjailValidator(ctx, validator) - logger := ctx.Logger().With("module", "x/staking") + logger := k.Logger(ctx) logger.Info(fmt.Sprintf("validator %s unjailed", consAddr)) // TODO Return event(s), blocked on https://github.com/tendermint/tendermint/pull/1803 return