diff --git a/app/server/src/main/resources/logback.xml b/app/server/src/main/resources/logback.xml index 1a33877bb2..89fff5c907 100644 --- a/app/server/src/main/resources/logback.xml +++ b/app/server/src/main/resources/logback.xml @@ -1,16 +1,4 @@ - - - - - - - - - - - - - + %date{yyyy-MM-dd'T'HH:mm:ss,SSXXX} %level [%logger{0}] %msg%n @@ -43,4 +31,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/server/src/main/scala/org/bitcoins/server/HttpLogger.scala b/app/server/src/main/scala/org/bitcoins/server/HttpLogger.scala index 4d40fe691a..796542e1cb 100644 --- a/app/server/src/main/scala/org/bitcoins/server/HttpLogger.scala +++ b/app/server/src/main/scala/org/bitcoins/server/HttpLogger.scala @@ -1,22 +1,6 @@ package org.bitcoins.server -import org.bitcoins.db.{AppLoggers, LoggerConfig} -import org.slf4j.Logger +import grizzled.slf4j.Logging /** Exposes access to the HTTP RPC server logger */ -private[bitcoins] trait HttpLogger { - - protected[bitcoins] def logger(implicit config: LoggerConfig): Logger = { - HttpLoggerImpl(config).getLogger - } -} - -private[server] case class HttpLoggerImpl(override val conf: LoggerConfig) - extends AppLoggers { - - /** - * @return the HTTP RPC server submobule logger - */ - def getLogger: Logger = - getLoggerImpl(LoggerKind.Http) -} +private[bitcoins] trait HttpLogger extends Logging diff --git a/app/server/src/main/scala/org/bitcoins/server/Main.scala b/app/server/src/main/scala/org/bitcoins/server/Main.scala index 4f9279c06a..962eb33f4e 100644 --- a/app/server/src/main/scala/org/bitcoins/server/Main.scala +++ b/app/server/src/main/scala/org/bitcoins/server/Main.scala @@ -16,7 +16,7 @@ import org.bitcoins.chain.models.{ import org.bitcoins.core.Core import org.bitcoins.core.api.chain.ChainApi import org.bitcoins.core.config.{BitcoinNetworks, MainNet, RegTest, TestNet3} -import org.bitcoins.core.util.{BitcoinSLogger, FutureUtil, NetworkUtil} +import org.bitcoins.core.util.{FutureUtil, NetworkUtil} import org.bitcoins.db._ import org.bitcoins.feeprovider.BitcoinerLiveFeeRateProvider import org.bitcoins.node._ @@ -28,7 +28,7 @@ import org.bitcoins.wallet.config.WalletAppConfig import scala.concurrent.{ExecutionContext, Future, Promise} import scala.util.Properties -object Main extends App with BitcoinSLogger { +object Main extends App with HttpLogger { def runMain(args: Vector[String]): Future[Unit] = { val argsWithIndex = args.zipWithIndex @@ -105,8 +105,6 @@ object Main extends App with BitcoinSLogger { val forceChainWorkRecalc: Boolean = args.exists(_.toLowerCase == "--force-recalc-chainwork") - val logger = HttpLoggerImpl(conf.nodeConf).getLogger - implicit val walletConf: WalletAppConfig = conf.walletConf implicit val nodeConf: NodeAppConfig = conf.nodeConf implicit val chainConf: ChainAppConfig = conf.chainConf diff --git a/app/server/src/main/scala/org/bitcoins/server/Server.scala b/app/server/src/main/scala/org/bitcoins/server/Server.scala index 0767466212..84ff46b824 100644 --- a/app/server/src/main/scala/org/bitcoins/server/Server.scala +++ b/app/server/src/main/scala/org/bitcoins/server/Server.scala @@ -18,7 +18,6 @@ case class Server( handlers: Seq[ServerRoute], rpcport: Int = 9999)(implicit system: ActorSystem) extends HttpLogger { - implicit private val config: AppConfig = conf import system.dispatcher diff --git a/chain-test/src/test/scala/org/bitcoins/chain/config/ChainAppConfigTest.scala b/chain-test/src/test/scala/org/bitcoins/chain/config/ChainAppConfigTest.scala index af5f4e68b0..ef32048061 100644 --- a/chain-test/src/test/scala/org/bitcoins/chain/config/ChainAppConfigTest.scala +++ b/chain-test/src/test/scala/org/bitcoins/chain/config/ChainAppConfigTest.scala @@ -2,7 +2,6 @@ package org.bitcoins.chain.config import java.nio.file.Files -import ch.qos.logback.classic.Level import com.typesafe.config.ConfigFactory import org.bitcoins.core.config.{MainNet, RegTest, TestNet3} import org.bitcoins.testkit.chain.ChainUnitTest @@ -77,8 +76,6 @@ class ChainAppConfigTest extends ChainUnitTest { assert(appConfig.datadir == tempDir.resolve("testnet3")) assert(appConfig.network == TestNet3) - assert(appConfig.logLevel == Level.OFF) - assert(appConfig.p2pLogLevel == Level.WARN) } override def afterAll: Unit = { diff --git a/chain/src/main/scala/org/bitcoins/chain/ChainCallbacks.scala b/chain/src/main/scala/org/bitcoins/chain/ChainCallbacks.scala index 96b8272bbc..19981526fd 100644 --- a/chain/src/main/scala/org/bitcoins/chain/ChainCallbacks.scala +++ b/chain/src/main/scala/org/bitcoins/chain/ChainCallbacks.scala @@ -1,8 +1,8 @@ package org.bitcoins.chain +import grizzled.slf4j.Logger import org.bitcoins.core.api.{Callback2, CallbackHandler} import org.bitcoins.core.protocol.blockchain.BlockHeader -import org.slf4j.Logger import scala.concurrent.{ExecutionContext, Future} diff --git a/chain/src/main/scala/org/bitcoins/chain/ChainVerificationLogger.scala b/chain/src/main/scala/org/bitcoins/chain/ChainVerificationLogger.scala index 4fd10db51a..591852040f 100644 --- a/chain/src/main/scala/org/bitcoins/chain/ChainVerificationLogger.scala +++ b/chain/src/main/scala/org/bitcoins/chain/ChainVerificationLogger.scala @@ -1,23 +1,6 @@ package org.bitcoins.chain -import org.bitcoins.db.{AppLoggers, LoggerConfig} -import org.slf4j.Logger +import grizzled.slf4j.Logging /** Exposes access to the chain verification logger */ -private[bitcoins] trait ChainVerificationLogger { - - protected[bitcoins] def logger(implicit config: LoggerConfig): Logger = { - ChainVerificationLoggerImpl(config).getLogger - } -} - -private[chain] case class ChainVerificationLoggerImpl( - override val conf: LoggerConfig) - extends AppLoggers { - - /** - * @return the chain verification submobule logger - */ - def getLogger: Logger = - getLoggerImpl(LoggerKind.ChainVerification) -} +private[bitcoins] trait ChainVerificationLogger extends Logging diff --git a/chain/src/main/scala/org/bitcoins/chain/blockchain/sync/ChainSync.scala b/chain/src/main/scala/org/bitcoins/chain/blockchain/sync/ChainSync.scala index a5face1844..c3c82cd43a 100644 --- a/chain/src/main/scala/org/bitcoins/chain/blockchain/sync/ChainSync.scala +++ b/chain/src/main/scala/org/bitcoins/chain/blockchain/sync/ChainSync.scala @@ -2,7 +2,6 @@ package org.bitcoins.chain.blockchain.sync import org.bitcoins.chain.ChainVerificationLogger import org.bitcoins.chain.blockchain.ChainHandler -import org.bitcoins.chain.config.ChainAppConfig import org.bitcoins.core.api.chain.ChainApi import org.bitcoins.core.api.chain.db.BlockHeaderDb import org.bitcoins.core.protocol.blockchain.BlockHeader @@ -25,8 +24,7 @@ abstract class ChainSync extends ChainVerificationLogger { chainHandler: ChainHandler, getBlockHeaderFunc: DoubleSha256DigestBE => Future[BlockHeader], getBestBlockHashFunc: () => Future[DoubleSha256DigestBE])(implicit - ec: ExecutionContext, - conf: ChainAppConfig): Future[ChainApi] = { + ec: ExecutionContext): Future[ChainApi] = { val currentTipsF: Future[Vector[BlockHeaderDb]] = { chainHandler.blockHeaderDAO.chainTips } @@ -69,8 +67,7 @@ abstract class ChainSync extends ChainVerificationLogger { tips: Vector[BlockHeaderDb], bestBlockHash: DoubleSha256DigestBE, getBlockHeaderFunc: DoubleSha256DigestBE => Future[BlockHeader])(implicit - ec: ExecutionContext, - conf: ChainAppConfig): Future[ChainApi] = { + ec: ExecutionContext): Future[ChainApi] = { require(tips.nonEmpty, s"Cannot sync without the genesis block") //we need to walk backwards on the chain until we get to one of our tips diff --git a/chain/src/main/scala/org/bitcoins/chain/blockchain/sync/FilterSync.scala b/chain/src/main/scala/org/bitcoins/chain/blockchain/sync/FilterSync.scala index acf97f54a2..2cea320b3d 100644 --- a/chain/src/main/scala/org/bitcoins/chain/blockchain/sync/FilterSync.scala +++ b/chain/src/main/scala/org/bitcoins/chain/blockchain/sync/FilterSync.scala @@ -133,8 +133,7 @@ abstract class FilterSync extends ChainVerificationLogger { missingHeaders: Vector[BlockHeaderDb], ourBestFilterHeaderOpt: Option[CompactFilterHeaderDb], getFilterFunc: BlockHeader => Future[FilterWithHeaderHash])(implicit - ec: ExecutionContext, - chainAppConfig: ChainAppConfig): Future[ChainApi] = { + ec: ExecutionContext): Future[ChainApi] = { //now that we have headers that are missing filters, let's fetch the filters val fetchNested = missingHeaders.map { b => diff --git a/chain/src/main/scala/org/bitcoins/chain/models/BlockHeaderDAO.scala b/chain/src/main/scala/org/bitcoins/chain/models/BlockHeaderDAO.scala index c3f4db3c5c..c99d7e194f 100644 --- a/chain/src/main/scala/org/bitcoins/chain/models/BlockHeaderDAO.scala +++ b/chain/src/main/scala/org/bitcoins/chain/models/BlockHeaderDAO.scala @@ -286,7 +286,7 @@ case class BlockHeaderDAO()(implicit * This should only be used if the chain work has not been calculated */ def chainTipsByHeight: Future[Vector[BlockHeaderDb]] = { - logger.debug(s"Getting chain tips from: ${dbConfig.config}") + logger.debug(s"Getting chain tips from database") val aggregate = { maxHeightQuery.flatMap { height => logger.debug(s"Max block height: $height") @@ -302,7 +302,7 @@ case class BlockHeaderDAO()(implicit } def chainTips: Future[Vector[BlockHeaderDb]] = { - logger.debug(s"Getting chain tips from: ${dbConfig.config}") + logger.debug(s"Getting chain tips from database") val aggregate = { maxWorkQuery.flatMap { work => logger.debug(s"Max block work: $work") diff --git a/chain/src/main/scala/org/bitcoins/chain/validation/TipValidation.scala b/chain/src/main/scala/org/bitcoins/chain/validation/TipValidation.scala index a7c6f88ea4..0787d8ca40 100644 --- a/chain/src/main/scala/org/bitcoins/chain/validation/TipValidation.scala +++ b/chain/src/main/scala/org/bitcoins/chain/validation/TipValidation.scala @@ -60,7 +60,7 @@ sealed abstract class TipValidation extends ChainVerificationLogger { /** Logs the result of [[org.bitcoins.chain.validation.TipValidation.checkNewTip() checkNewTip]] */ private def logTipResult( connectTipResult: TipUpdateResult, - currentTip: BlockHeaderDb)(implicit conf: ChainAppConfig): Unit = { + currentTip: BlockHeaderDb): Unit = { connectTipResult match { case TipUpdateResult.Success(tipDb) => logger.trace( diff --git a/core-test/src/test/scala/org/bitcoins/core/crypto/TransactionSignatureCreatorSpec.scala b/core-test/src/test/scala/org/bitcoins/core/crypto/TransactionSignatureCreatorSpec.scala index 4ba501d94a..a672b198a9 100644 --- a/core-test/src/test/scala/org/bitcoins/core/crypto/TransactionSignatureCreatorSpec.scala +++ b/core-test/src/test/scala/org/bitcoins/core/crypto/TransactionSignatureCreatorSpec.scala @@ -11,8 +11,8 @@ import org.scalacheck.{Prop, Properties} * Created by chris on 7/25/16. */ class TransactionSignatureCreatorSpec - extends Properties("TransactionSignatureCreatorSpec") { - private val logger = BitcoinSLogger.logger + extends Properties("TransactionSignatureCreatorSpec") + with BitcoinSLogger { property("Must generate a valid signature for a p2pk transaction") = Prop.forAll(TransactionGenerators.signedP2PKTransaction) { diff --git a/core-test/src/test/scala/org/bitcoins/core/number/UInt32Spec.scala b/core-test/src/test/scala/org/bitcoins/core/number/UInt32Spec.scala index a31bd172e1..951f6b1f35 100644 --- a/core-test/src/test/scala/org/bitcoins/core/number/UInt32Spec.scala +++ b/core-test/src/test/scala/org/bitcoins/core/number/UInt32Spec.scala @@ -9,8 +9,7 @@ import scala.util.Try /** * Created by chris on 6/16/16. */ -class UInt32Spec extends Properties("UInt32") { - private val logger = BitcoinSLogger.logger +class UInt32Spec extends Properties("UInt32") with BitcoinSLogger { property("serialization symmetry") = { Prop.forAll(NumberGenerator.uInt32s) { uInt32: UInt32 => diff --git a/core-test/src/test/scala/org/bitcoins/core/number/UInt8Spec.scala b/core-test/src/test/scala/org/bitcoins/core/number/UInt8Spec.scala index 6b419b7683..ee508a77c5 100644 --- a/core-test/src/test/scala/org/bitcoins/core/number/UInt8Spec.scala +++ b/core-test/src/test/scala/org/bitcoins/core/number/UInt8Spec.scala @@ -6,8 +6,8 @@ import org.scalacheck.{Gen, Prop, Properties} import scala.util.Try -class UInt8Spec extends Properties("UInt8Spec") { - private val logger = BitcoinSLogger.logger +class UInt8Spec extends Properties("UInt8Spec") with BitcoinSLogger { + property("convert uint8 -> byte -> uint8") = { Prop.forAll(NumberGenerator.uInt8) { case u8: UInt8 => diff --git a/core-test/src/test/scala/org/bitcoins/core/protocol/script/P2PKScriptSignatureSpec.scala b/core-test/src/test/scala/org/bitcoins/core/protocol/script/P2PKScriptSignatureSpec.scala index d497304845..ecf885978f 100644 --- a/core-test/src/test/scala/org/bitcoins/core/protocol/script/P2PKScriptSignatureSpec.scala +++ b/core-test/src/test/scala/org/bitcoins/core/protocol/script/P2PKScriptSignatureSpec.scala @@ -7,8 +7,9 @@ import org.scalacheck.{Prop, Properties} /** * Created by chris on 6/22/16. */ -class P2PKScriptSignatureSpec extends Properties("P2PKSpec") { - private def logger = BitcoinSLogger.logger +class P2PKScriptSignatureSpec + extends Properties("P2PKSpec") + with BitcoinSLogger { property("Serialization symmetry") = Prop.forAll(ScriptGenerators.p2pkScriptSignature) { p2pkScriptSig => diff --git a/core-test/src/test/scala/org/bitcoins/core/protocol/script/ScriptWitnessSpec.scala b/core-test/src/test/scala/org/bitcoins/core/protocol/script/ScriptWitnessSpec.scala index 414d3c4b75..db6e781982 100644 --- a/core-test/src/test/scala/org/bitcoins/core/protocol/script/ScriptWitnessSpec.scala +++ b/core-test/src/test/scala/org/bitcoins/core/protocol/script/ScriptWitnessSpec.scala @@ -4,8 +4,10 @@ import org.bitcoins.testkit.core.gen.{ScriptGenerators, WitnessGenerators} import org.bitcoins.core.util.BitcoinSLogger import org.scalacheck.{Prop, Properties} -class ScriptWitnessSpec extends Properties("ScriptWitnessSpec") { - private val logger = BitcoinSLogger.logger +class ScriptWitnessSpec + extends Properties("ScriptWitnessSpec") + with BitcoinSLogger { + property("serialization symmetry") = { Prop.forAll(WitnessGenerators.scriptWitness) { scriptWit => val x = ScriptWitness(scriptWit.stack) diff --git a/core-test/src/test/scala/org/bitcoins/core/protocol/transaction/TransactionInputSpec.scala b/core-test/src/test/scala/org/bitcoins/core/protocol/transaction/TransactionInputSpec.scala index 955183aee6..9ccdc49e82 100644 --- a/core-test/src/test/scala/org/bitcoins/core/protocol/transaction/TransactionInputSpec.scala +++ b/core-test/src/test/scala/org/bitcoins/core/protocol/transaction/TransactionInputSpec.scala @@ -7,8 +7,10 @@ import org.scalacheck.{Prop, Properties} /** * Created by chris on 6/24/16. */ -class TransactionInputSpec extends Properties("TranactionInputSpec") { - private val logger = BitcoinSLogger.logger +class TransactionInputSpec + extends Properties("TranactionInputSpec") + with BitcoinSLogger { + property("Serialization symmetry") = { Prop.forAllNoShrink(TransactionGenerators.input) { input => val result = TransactionInput(input.hex) == input diff --git a/core-test/src/test/scala/org/bitcoins/core/script/crypto/HashTypeSpec.scala b/core-test/src/test/scala/org/bitcoins/core/script/crypto/HashTypeSpec.scala index 32526a29cb..06cc761844 100644 --- a/core-test/src/test/scala/org/bitcoins/core/script/crypto/HashTypeSpec.scala +++ b/core-test/src/test/scala/org/bitcoins/core/script/crypto/HashTypeSpec.scala @@ -4,8 +4,8 @@ import org.bitcoins.testkit.core.gen.NumberGenerator import org.bitcoins.core.util.BitcoinSLogger import org.scalacheck.{Prop, Properties} -class HashTypeSpec extends Properties("HashTypeSpec") { - private val logger = BitcoinSLogger.logger +class HashTypeSpec extends Properties("HashTypeSpec") with BitcoinSLogger { + property("serialization symmetry") = { Prop.forAll(NumberGenerator.int32s) { i32 => val hashType = HashType.fromBytes(i32.bytes) diff --git a/core-test/src/test/scala/org/bitcoins/core/util/NumberUtilSpec.scala b/core-test/src/test/scala/org/bitcoins/core/util/NumberUtilSpec.scala index 5965d01c96..b047d3fe62 100644 --- a/core-test/src/test/scala/org/bitcoins/core/util/NumberUtilSpec.scala +++ b/core-test/src/test/scala/org/bitcoins/core/util/NumberUtilSpec.scala @@ -7,8 +7,7 @@ import org.scalacheck.{Prop, Properties} /** * Created by chris on 6/20/16. */ -class NumberUtilSpec extends Properties("NumberUtilSpec") { - private val logger = BitcoinSLogger.logger +class NumberUtilSpec extends Properties("NumberUtilSpec") with BitcoinSLogger { property("Serialization symmetry for BigInt") = Prop.forAll(NumberGenerator.bigInts) { bigInt: BigInt => diff --git a/core/src/main/scala/org/bitcoins/core/api/Callback.scala b/core/src/main/scala/org/bitcoins/core/api/Callback.scala index 028dedfe3b..c15287ea02 100644 --- a/core/src/main/scala/org/bitcoins/core/api/Callback.scala +++ b/core/src/main/scala/org/bitcoins/core/api/Callback.scala @@ -1,7 +1,7 @@ package org.bitcoins.core.api +import grizzled.slf4j.Logger import org.bitcoins.core.util.{FutureUtil, SeqWrapper} -import org.slf4j.Logger import scala.concurrent.{ExecutionContext, Future} import scala.util.control.NonFatal diff --git a/core/src/main/scala/org/bitcoins/core/crypto/TransactionSignatureSerializer.scala b/core/src/main/scala/org/bitcoins/core/crypto/TransactionSignatureSerializer.scala index ae013a629d..3a19c62133 100644 --- a/core/src/main/scala/org/bitcoins/core/crypto/TransactionSignatureSerializer.scala +++ b/core/src/main/scala/org/bitcoins/core/crypto/TransactionSignatureSerializer.scala @@ -21,9 +21,7 @@ import scodec.bits.ByteVector * bitcoinj version of this * [[https://github.com/bitcoinj/bitcoinj/blob/master/core/src/main/java/org/bitcoinj/core/Transaction.java#L924-L1008]] */ -sealed abstract class TransactionSignatureSerializer { - - private val logger = BitcoinSLogger.logger +sealed abstract class TransactionSignatureSerializer extends BitcoinSLogger { /** * Bitcoin Core's bug is that SignatureHash was supposed to return a hash and on this codepath it diff --git a/core/src/main/scala/org/bitcoins/core/protocol/transaction/TxUtil.scala b/core/src/main/scala/org/bitcoins/core/protocol/transaction/TxUtil.scala index 55a869c79a..12f2e787d8 100644 --- a/core/src/main/scala/org/bitcoins/core/protocol/transaction/TxUtil.scala +++ b/core/src/main/scala/org/bitcoins/core/protocol/transaction/TxUtil.scala @@ -6,7 +6,7 @@ import org.bitcoins.core.policy.Policy import org.bitcoins.core.protocol.script._ import org.bitcoins.core.script.control.OP_RETURN import org.bitcoins.core.script.crypto.HashType -import org.bitcoins.core.wallet.builder.RawTxSigner.logger +import org.bitcoins.core.util.BitcoinSLogger import org.bitcoins.core.wallet.builder.TxBuilderError import org.bitcoins.core.wallet.fee.FeeUnit import org.bitcoins.core.wallet.signer.BitcoinSigner @@ -17,7 +17,7 @@ import scala.annotation.tailrec import scala.concurrent.{Await, ExecutionContext, Future} import scala.util.{Failure, Success, Try} -object TxUtil { +object TxUtil extends BitcoinSLogger { private def computeNextLockTime( currentLockTimeOpt: Option[UInt32], diff --git a/core/src/main/scala/org/bitcoins/core/script/arithmetic/ArithmeticInterpreter.scala b/core/src/main/scala/org/bitcoins/core/script/arithmetic/ArithmeticInterpreter.scala index 15f4f2c563..81f40a51a3 100644 --- a/core/src/main/scala/org/bitcoins/core/script/arithmetic/ArithmeticInterpreter.scala +++ b/core/src/main/scala/org/bitcoins/core/script/arithmetic/ArithmeticInterpreter.scala @@ -19,8 +19,7 @@ import scala.annotation.tailrec /** * Created by chris on 1/25/16. */ -sealed abstract class ArithmeticInterpreter { - private def logger = BitcoinSLogger.logger +sealed abstract class ArithmeticInterpreter extends BitcoinSLogger { /** a is added to b. */ def opAdd(program: ExecutionInProgressScriptProgram): StartedScriptProgram = { diff --git a/core/src/main/scala/org/bitcoins/core/script/bitwise/BitwiseInterpreter.scala b/core/src/main/scala/org/bitcoins/core/script/bitwise/BitwiseInterpreter.scala index 33e10ce21e..cb398256d5 100644 --- a/core/src/main/scala/org/bitcoins/core/script/bitwise/BitwiseInterpreter.scala +++ b/core/src/main/scala/org/bitcoins/core/script/bitwise/BitwiseInterpreter.scala @@ -16,8 +16,7 @@ import org.bitcoins.core.util.BitcoinSLogger /** * Created by chris on 1/6/16. */ -sealed abstract class BitwiseInterpreter { - private def logger = BitcoinSLogger.logger +sealed abstract class BitwiseInterpreter extends BitcoinSLogger { /** Returns 1 if the inputs are exactly equal, 0 otherwise. */ def opEqual( diff --git a/core/src/main/scala/org/bitcoins/core/script/constant/ConstantInterpreter.scala b/core/src/main/scala/org/bitcoins/core/script/constant/ConstantInterpreter.scala index f41230872d..bcd24f843c 100644 --- a/core/src/main/scala/org/bitcoins/core/script/constant/ConstantInterpreter.scala +++ b/core/src/main/scala/org/bitcoins/core/script/constant/ConstantInterpreter.scala @@ -13,8 +13,7 @@ import scala.annotation.tailrec /** * Created by chris on 1/24/16. */ -sealed abstract class ConstantInterpreter { - private def logger = BitcoinSLogger.logger +sealed abstract class ConstantInterpreter extends BitcoinSLogger { /** The next byte contains the number of bytes to be pushed onto the stack. */ def opPushData1( diff --git a/core/src/main/scala/org/bitcoins/core/script/control/ControlOperationsInterpreter.scala b/core/src/main/scala/org/bitcoins/core/script/control/ControlOperationsInterpreter.scala index f62fa2a158..04855d9349 100644 --- a/core/src/main/scala/org/bitcoins/core/script/control/ControlOperationsInterpreter.scala +++ b/core/src/main/scala/org/bitcoins/core/script/control/ControlOperationsInterpreter.scala @@ -1,20 +1,19 @@ package org.bitcoins.core.script.control import org.bitcoins.core.protocol.script.{SigVersionWitnessV0, SignatureVersion} +import org.bitcoins.core.script.constant._ +import org.bitcoins.core.script.flag.ScriptFlagUtil +import org.bitcoins.core.script.result._ import org.bitcoins.core.script.{ ExecutionInProgressScriptProgram, StartedScriptProgram } -import org.bitcoins.core.script.constant._ -import org.bitcoins.core.script.flag.ScriptFlagUtil -import org.bitcoins.core.script.result._ import org.bitcoins.core.util._ /** * Created by chris on 1/6/16. */ -sealed abstract class ControlOperationsInterpreter { - private def logger = BitcoinSLogger.logger +sealed abstract class ControlOperationsInterpreter extends BitcoinSLogger { /** Factors out the similarities between OP_IF and OP_NOTIF */ private def opConditional(conditional: ConditionalOperation)( diff --git a/core/src/main/scala/org/bitcoins/core/script/crypto/CryptoInterpreter.scala b/core/src/main/scala/org/bitcoins/core/script/crypto/CryptoInterpreter.scala index 262e3d1e6a..c78ea4f4c1 100644 --- a/core/src/main/scala/org/bitcoins/core/script/crypto/CryptoInterpreter.scala +++ b/core/src/main/scala/org/bitcoins/core/script/crypto/CryptoInterpreter.scala @@ -22,9 +22,7 @@ import scodec.bits.ByteVector /** * Created by chris on 1/6/16. */ -sealed abstract class CryptoInterpreter { - - private def logger = BitcoinSLogger.logger +sealed abstract class CryptoInterpreter extends BitcoinSLogger { /** The input is hashed twice: first with SHA-256 and then with RIPEMD-160. */ def opHash160( diff --git a/core/src/main/scala/org/bitcoins/core/script/locktime/LockTimeInterpreter.scala b/core/src/main/scala/org/bitcoins/core/script/locktime/LockTimeInterpreter.scala index 9f316e6fb6..1607d7956b 100644 --- a/core/src/main/scala/org/bitcoins/core/script/locktime/LockTimeInterpreter.scala +++ b/core/src/main/scala/org/bitcoins/core/script/locktime/LockTimeInterpreter.scala @@ -20,9 +20,7 @@ import scala.annotation.tailrec /** * Created by chris on 2/8/16. */ -sealed abstract class LockTimeInterpreter { - - private def logger = BitcoinSLogger.logger +sealed abstract class LockTimeInterpreter extends BitcoinSLogger { /** * Marks transaction as invalid if the top stack item is greater than the transaction's `nLockTime` field, diff --git a/core/src/main/scala/org/bitcoins/core/script/splice/SpliceInterpreter.scala b/core/src/main/scala/org/bitcoins/core/script/splice/SpliceInterpreter.scala index dbdaff58bc..b8532a0138 100644 --- a/core/src/main/scala/org/bitcoins/core/script/splice/SpliceInterpreter.scala +++ b/core/src/main/scala/org/bitcoins/core/script/splice/SpliceInterpreter.scala @@ -11,9 +11,7 @@ import org.bitcoins.core.util.BitcoinSLogger /** * Created by chris on 2/4/16. */ -sealed abstract class SpliceInterpreter { - - private def logger = BitcoinSLogger.logger +sealed abstract class SpliceInterpreter extends BitcoinSLogger { /** Pushes the string length of the top element of the stack (without popping it). */ def opSize( diff --git a/core/src/main/scala/org/bitcoins/core/script/stack/StackInterpreter.scala b/core/src/main/scala/org/bitcoins/core/script/stack/StackInterpreter.scala index 6c86e198ac..c057e862d2 100644 --- a/core/src/main/scala/org/bitcoins/core/script/stack/StackInterpreter.scala +++ b/core/src/main/scala/org/bitcoins/core/script/stack/StackInterpreter.scala @@ -16,8 +16,7 @@ import scala.util.{Failure, Success, Try} * Stack operations implemented in the script programming language * https://en.bitcoin.it/wiki/Script#Stack */ -sealed abstract class StackInterpreter { - private def logger = BitcoinSLogger.logger +sealed abstract class StackInterpreter extends BitcoinSLogger { /** * Duplicates the element on top of the stack diff --git a/db-commons/src/main/resources/reference.conf b/db-commons/src/main/resources/reference.conf index ffc4ce6101..4ab1412048 100644 --- a/db-commons/src/main/resources/reference.conf +++ b/db-commons/src/main/resources/reference.conf @@ -1,45 +1,5 @@ bitcoin-s { - datadir = ${HOME}/.bitcoin-s network = regtest # regtest, testnet3, mainnet - - logging { - # Ignore bitcoin-s logging config and use a logback config - logback = false - - level = WARN # trace, debug, info, warn, error, off - - # You can also tune specific module loggers. - # They each take the same levels as above. - # If they are commented out (as they are - # by default), `logging.level` gets used - # instead. - # The available loggers are: - - # incoming and outgoing P2P messages - # p2p = info - - # verification of block headers, merkle trees - # chain-verification = info - - # generation of addresses, signing of TXs - # key-handling = info - - # wallet operations not related to key management - # wallet = info - - # HTTP RPC server - # http = info - - # Database interactions - # database = info - - # whether or not to write to the log file - disable-file = false - - # whether or not to log to stdout - disable-console = false - } - node { peers = ["localhost"] # a list of peer addresses in form "hostname:portnumber" # (e.g. "neutrino.testnet3.suredbits.com:18333") diff --git a/db-commons/src/main/scala/org/bitcoins/db/AppConfig.scala b/db-commons/src/main/scala/org/bitcoins/db/AppConfig.scala index 75918cbcad..166a8fba67 100644 --- a/db-commons/src/main/scala/org/bitcoins/db/AppConfig.scala +++ b/db-commons/src/main/scala/org/bitcoins/db/AppConfig.scala @@ -2,7 +2,6 @@ package org.bitcoins.db import java.nio.file.{Files, Path, Paths} -import ch.qos.logback.classic.Level import com.typesafe.config._ import org.bitcoins.core.config._ import org.bitcoins.core.protocol.blockchain.ChainParams @@ -10,7 +9,7 @@ import org.bitcoins.core.util.{BitcoinSLogger, StartStopAsync} import slick.basic.DatabaseConfig import slick.jdbc.JdbcProfile -import scala.concurrent.{Future} +import scala.concurrent.Future import scala.util.matching.Regex import scala.util.{Failure, Properties, Success, Try} @@ -21,9 +20,7 @@ import scala.util.{Failure, Properties, Success, Try} * @see [[https://github.com/bitcoin-s/bitcoin-s-core/blob/master/doc/configuration.md `configuration.md`]] * for more information. */ -abstract class AppConfig extends LoggerConfig with StartStopAsync[Unit] { - - private val logger = BitcoinSLogger.logger +abstract class AppConfig extends StartStopAsync[Unit] with BitcoinSLogger { /** * Starts this project. @@ -73,7 +70,7 @@ abstract class AppConfig extends LoggerConfig with StartStopAsync[Unit] { val numOverrides = configs.length + 1 - if (logger.isDebugEnabled()) { + if (logger.logger.isDebugEnabled()) { // force lazy evaluation before we print // our lines val oldConfStr = this.config.asReadableJson @@ -84,7 +81,7 @@ abstract class AppConfig extends LoggerConfig with StartStopAsync[Unit] { } val configOverrides = firstOverride +: configs - if (logger.isTraceEnabled()) { + if (logger.logger.isTraceEnabled()) { configOverrides.zipWithIndex.foreach { case (c, idx) => logger.trace(s"Override no. $idx: ${c.asReadableJson}") } @@ -102,7 +99,7 @@ abstract class AppConfig extends LoggerConfig with StartStopAsync[Unit] { } // to avoid non-necessary lazy load - if (logger.isDebugEnabled()) { + if (logger.logger.isDebugEnabled()) { // force lazy load before we print val newConfStr = newConf.config.asReadableJson @@ -158,76 +155,6 @@ abstract class AppConfig extends LoggerConfig with StartStopAsync[Unit] { baseDatadir.resolve(lastDirname) } - override val logLocation: Path = { - val path = datadir - // Set property for loggers - System.setProperty("bitcoins.log.location", path.toAbsolutePath.toString) - path - } - - private def stringToLogLevel(str: String): Option[Level] = - str.toLowerCase() match { - case "trace" => Some(Level.TRACE) - case "debug" => Some(Level.DEBUG) - case "info" => Some(Level.INFO) - case "warn" => Some(Level.WARN) - case "error" => Some(Level.ERROR) - case "off" => Some(Level.OFF) - case _: String => None - } - - /** The default logging level */ - lazy val logLevel: Level = { - val levelString = config.getString("logging.level") - stringToLogLevel(levelString).getOrElse( - throw new ConfigException.WrongType( - config.origin(), - s"logging.level ($levelString) is not a valid logging level")) - } - - /** Whether or not we should log to file */ - lazy val disableFileLogging = config.getBoolean("logging.disable-file") - - /** Whether or not we should log to stdout */ - lazy val disableConsoleLogging = config.getBoolean("logging.disable-console") - - private def levelOrDefault(key: String): Level = - config - .getStringOrNone(key) match { - case None => logLevel - case Some(levelStr) => - stringToLogLevel(levelStr).getOrElse { - throw new ConfigException.WrongType( - config.origin(), - s"$key ($levelStr) is not a valid logging level") - } - } - - /** The logging level for our P2P logger */ - override lazy val p2pLogLevel: Level = levelOrDefault("logging.p2p") - - /** The logging level for our chain verification logger */ - override lazy val verificationLogLevel: Level = - levelOrDefault("logging.chain-verification") - - /** The logging level for our key handling logger */ - override lazy val keyHandlingLogLevel: Level = - levelOrDefault("logging.key-handling") - - /** Logging level for wallet */ - override lazy val walletLogLevel: Level = - levelOrDefault("logging.wallet") - - /** Logging level for HTTP RPC server */ - override lazy val httpLogLevel: Level = levelOrDefault("logging.http") - - /** Logging level for database interactions */ - override lazy val databaseLogLevel: Level = levelOrDefault("logging.database") - - /** Use logback config instead */ - override val useLogbackConf: Boolean = - config.getBooleanOrElse("logging.logback", default = false) - lazy val slickDbConfig: DatabaseConfig[JdbcProfile] = { Try { DatabaseConfig.forConfig[JdbcProfile](path = moduleName, config = config) diff --git a/docs/config/configuration.md b/docs/config/configuration.md index 133152c4a9..ccda0ada2f 100644 --- a/docs/config/configuration.md +++ b/docs/config/configuration.md @@ -91,44 +91,6 @@ bitcoin-s { datadir = ${HOME}/.bitcoin-s network = regtest # regtest, testnet3, mainnet - logging { - # Ignore bitcoin-s logging config and use a logback config - logback = false - - level = WARN # trace, debug, info, warn, error, off - - # You can also tune specific module loggers. - # They each take the same levels as above. - # If they are commented out (as they are - # by default), `logging.level` gets used - # instead. - # The available loggers are: - - # incoming and outgoing P2P messages - # p2p = info - - # verification of block headers, merkle trees - # chain-verification = info - - # generation of addresses, signing of TXs - # key-handling = info - - # wallet operations not related to key management - # wallet = info - - # HTTP RPC server - # http = info - - # Database interactions - # database = info - - # whether or not to write to the log file - disable-file = false - - # whether or not to log to stdout - disable-console = false - } - node { mode = neutrino # neutrino, spv diff --git a/key-manager/src/main/scala/org/bitcoins/keymanager/KeyManagerLogger.scala b/key-manager/src/main/scala/org/bitcoins/keymanager/KeyManagerLogger.scala index 70a8710904..73626317c8 100644 --- a/key-manager/src/main/scala/org/bitcoins/keymanager/KeyManagerLogger.scala +++ b/key-manager/src/main/scala/org/bitcoins/keymanager/KeyManagerLogger.scala @@ -1,23 +1,6 @@ package org.bitcoins.keymanager -import org.bitcoins.db.{AppLoggers, LoggerConfig} -import org.slf4j.Logger +import grizzled.slf4j.Logging /** Exposes access to the key manager logger */ -private[bitcoins] trait KeyManagerLogger { - - protected[bitcoins] def logger(implicit config: LoggerConfig): Logger = { - KeyManagerLoggerImpl(config).getLogger - } -} - -private[keymanager] case class KeyManagerLoggerImpl( - override val conf: LoggerConfig) - extends AppLoggers { - - /** - * @return the generic Key Manager logger (i.e. everything related to secret keys) - */ - def getLogger: Logger = - getLoggerImpl(LoggerKind.KeyHandling) -} +private[bitcoins] trait KeyManagerLogger extends Logging diff --git a/node-test/src/test/scala/org/bitcoins/node/NodeAppConfigTest.scala b/node-test/src/test/scala/org/bitcoins/node/NodeAppConfigTest.scala index 9d6cb7287d..21643325b7 100644 --- a/node-test/src/test/scala/org/bitcoins/node/NodeAppConfigTest.scala +++ b/node-test/src/test/scala/org/bitcoins/node/NodeAppConfigTest.scala @@ -6,7 +6,6 @@ import org.bitcoins.core.config.TestNet3 import com.typesafe.config.ConfigFactory import org.bitcoins.core.config.RegTest import org.bitcoins.core.config.MainNet -import ch.qos.logback.classic.Level import java.nio.file.Files import scala.concurrent.Await @@ -64,8 +63,6 @@ class NodeAppConfigTest extends BitcoinSAsyncTest { assert(appConfig.datadir == tempDir.resolve("testnet3")) assert(appConfig.network == TestNet3) - assert(appConfig.logLevel == Level.OFF) - assert(appConfig.p2pLogLevel == Level.WARN) } override def afterAll(): Unit = { diff --git a/node/src/main/scala/org/bitcoins/node/NodeCallbacks.scala b/node/src/main/scala/org/bitcoins/node/NodeCallbacks.scala index 3572787b9b..e03eb3ad24 100644 --- a/node/src/main/scala/org/bitcoins/node/NodeCallbacks.scala +++ b/node/src/main/scala/org/bitcoins/node/NodeCallbacks.scala @@ -1,11 +1,11 @@ package org.bitcoins.node +import grizzled.slf4j.Logger import org.bitcoins.core.api.{Callback, Callback2, CallbackHandler} import org.bitcoins.core.gcs.GolombFilter import org.bitcoins.core.protocol.blockchain.{Block, BlockHeader, MerkleBlock} import org.bitcoins.core.protocol.transaction.Transaction import org.bitcoins.crypto.DoubleSha256Digest -import org.slf4j.Logger import scala.concurrent.{ExecutionContext, Future} diff --git a/node/src/main/scala/org/bitcoins/node/P2PLogger.scala b/node/src/main/scala/org/bitcoins/node/P2PLogger.scala index 1aa745f26f..f4dbcd06b0 100644 --- a/node/src/main/scala/org/bitcoins/node/P2PLogger.scala +++ b/node/src/main/scala/org/bitcoins/node/P2PLogger.scala @@ -1,23 +1,6 @@ package org.bitcoins.node -import org.bitcoins.db.{AppLoggers, LoggerConfig} -import org.bitcoins.node.config.NodeAppConfig -import org.slf4j.Logger +import grizzled.slf4j.Logging /** Exposes access to the P2P submodule logger */ -private[bitcoins] trait P2PLogger { - - protected def logger(implicit config: NodeAppConfig): Logger = { - P2PLoggerImpl(config).getLogger - } -} - -private[node] case class P2PLoggerImpl(override val conf: LoggerConfig) - extends AppLoggers { - - /** - * @return the peer-to-peer submobule logger - */ - def getLogger: Logger = - getLoggerImpl(LoggerKind.P2P) -} +private[bitcoins] trait P2PLogger extends Logging diff --git a/node/src/main/scala/org/bitcoins/node/SpvNode.scala b/node/src/main/scala/org/bitcoins/node/SpvNode.scala index 95e04e2d93..020147b6d7 100644 --- a/node/src/main/scala/org/bitcoins/node/SpvNode.scala +++ b/node/src/main/scala/org/bitcoins/node/SpvNode.scala @@ -79,8 +79,7 @@ case class SpvNode( peerMsgSender <- peerMsgSenderF _ <- peerMsgSender.sendFilterLoadMessage(bloomFilter) } yield { - logger(nodeAppConfig).info( - s"Sending bloomfilter=${bloomFilter.hex} to $peer") + logger.info(s"Sending bloomfilter=${bloomFilter.hex} to $peer") logger.info(s"Sending bloomfilter=${bloomFilter.hex} to $peer") node } diff --git a/node/src/main/scala/org/bitcoins/node/networking/P2PClient.scala b/node/src/main/scala/org/bitcoins/node/networking/P2PClient.scala index d9eb088276..535e51c1a0 100644 --- a/node/src/main/scala/org/bitcoins/node/networking/P2PClient.scala +++ b/node/src/main/scala/org/bitcoins/node/networking/P2PClient.scala @@ -354,8 +354,8 @@ object P2PClient extends P2PLogger { * @param bytes the bytes that need to be parsed into individual messages * @return the parsed [[NetworkMessage]]'s and the unaligned bytes that did not parse to a message */ - private[bitcoins] def parseIndividualMessages(bytes: ByteVector)(implicit - conf: NodeAppConfig): (List[NetworkMessage], ByteVector) = { + private[bitcoins] def parseIndividualMessages( + bytes: ByteVector): (List[NetworkMessage], ByteVector) = { @tailrec def loop( remainingBytes: ByteVector, diff --git a/node/src/main/scala/org/bitcoins/node/networking/peer/MerkleBuffers.scala b/node/src/main/scala/org/bitcoins/node/networking/peer/MerkleBuffers.scala index cf2f019256..0a068635c5 100644 --- a/node/src/main/scala/org/bitcoins/node/networking/peer/MerkleBuffers.scala +++ b/node/src/main/scala/org/bitcoins/node/networking/peer/MerkleBuffers.scala @@ -1,12 +1,10 @@ package org.bitcoins.node.networking.peer +import org.bitcoins.core.protocol.blockchain.MerkleBlock +import org.bitcoins.core.protocol.transaction.Transaction import org.bitcoins.node.{NodeCallbacks, P2PLogger} import scala.collection.mutable -import org.bitcoins.core.protocol.blockchain.MerkleBlock -import org.bitcoins.core.protocol.transaction.Transaction -import org.bitcoins.node.config.NodeAppConfig - import scala.concurrent.{ExecutionContext, Future} /** @@ -28,7 +26,7 @@ private[peer] object MerkleBuffers extends P2PLogger { private val underlyingMap: MerkleBlocksWithTransactions = mutable.Map.empty /** Adds the given merkleblock to the buffer */ - def putMerkle(merkle: MerkleBlock)(implicit config: NodeAppConfig): Unit = { + def putMerkle(merkle: MerkleBlock): Unit = { val tree = merkle.partialMerkleTree val matches = tree.extractMatches @@ -60,8 +58,7 @@ private[peer] object MerkleBuffers extends P2PLogger { * Otherwise, false. */ def putTx(tx: Transaction, callbacks: NodeCallbacks)(implicit - ec: ExecutionContext, - config: NodeAppConfig): Future[Boolean] = { + ec: ExecutionContext): Future[Boolean] = { val blocksInBuffer = underlyingMap.keys.toList logger.trace(s"Looking for transaction=${tx.txIdBE} in merkleblock buffer") logger.trace(s"Merkleblocks in buffer: ${blocksInBuffer.length}") @@ -87,8 +84,7 @@ private[peer] object MerkleBuffers extends P2PLogger { transaction: Transaction, merkleBlock: MerkleBlock, callbacks: NodeCallbacks)(implicit - ec: ExecutionContext, - config: NodeAppConfig): Future[Boolean] = { + ec: ExecutionContext): Future[Boolean] = { val merkleBlockMatches = merkleBlock.partialMerkleTree.extractMatches val merkleHash = merkleBlock.blockHeader.hashBE diff --git a/project/Deps.scala b/project/Deps.scala index 82521da77c..669bb46968 100644 --- a/project/Deps.scala +++ b/project/Deps.scala @@ -5,6 +5,7 @@ object Deps { object V { val bouncyCastle = "1.66" val logback = "1.2.3" + val grizzledSlf4j = "1.3.4" val scalacheck = "1.14.3" val scalaTest = "3.2.2" @@ -129,6 +130,10 @@ object Deps { val logback = "ch.qos.logback" % "logback-classic" % V.logback withSources () withJavadoc () + + val grizzledSlf4j = + "org.clapper" %% "grizzled-slf4j" % V.grizzledSlf4j withSources () withJavadoc () + val codehaus = "org.codehaus.janino" % "janino" % V.codehausV //for loading secp256k1 natively @@ -177,6 +182,7 @@ object Deps { val junitInterface = "com.novocode" % "junit-interface" % V.junitV % "test" withSources () withJavadoc () val logback = Compile.logback % "test" + val grizzledSlf4j = Compile.grizzledSlf4j % "test" val scalacheck = Compile.scalacheck % "test" val scalaTest = Compile.scalaTest % "test" val scalaMock = "org.scalamock" %% "scalamock" % V.scalamockV @@ -219,7 +225,8 @@ object Deps { val core = List( Compile.bouncycastle, Compile.scodec, - Compile.slf4j + Compile.slf4j, + Compile.grizzledSlf4j ) val crypto = List( diff --git a/testkit/src/main/resources/logback-test.xml b/testkit/src/main/resources/logback-test.xml index 3a1357288e..3a9f45ed88 100644 --- a/testkit/src/main/resources/logback-test.xml +++ b/testkit/src/main/resources/logback-test.xml @@ -103,5 +103,9 @@ + + + + \ No newline at end of file diff --git a/testkit/src/main/resources/reference.conf b/testkit/src/main/resources/reference.conf index 6dc887a2b3..bfd7e29ffa 100644 --- a/testkit/src/main/resources/reference.conf +++ b/testkit/src/main/resources/reference.conf @@ -2,44 +2,6 @@ bitcoin-s { datadir = ${HOME}/.bitcoin-s network = regtest # regtest, testnet3, mainnet - logging { - # Ignore bitcoin-s logging config and use a logback config - logback = true - - level = OFF # trace, debug, info, warn, error, off - - # You can also tune specific module loggers. - # They each take the same levels as above. - # If they are commented out (as they are - # by default), `logging.level` gets used - # instead. - # The available loggers are: - - # incoming and outgoing P2P messages - # p2p = info - - # verification of block headers, merkle trees - # chain-verification = info - - # generation of addresses, signing of TXs - # key-handling = info - - # wallet operations not related to key management - # wallet = info - - # HTTP RPC server - # http = info - - # Database interactions - # database = info - - # whether or not to write to the log file - disable-file = false - - # whether or not to log to stdout - disable-console = false - } - node { mode = neutrino # neutrino, spv diff --git a/testkit/src/main/scala/org/bitcoins/testkit/chain/ChainUnitTest.scala b/testkit/src/main/scala/org/bitcoins/testkit/chain/ChainUnitTest.scala index 95618e726b..389f0f61ec 100644 --- a/testkit/src/main/scala/org/bitcoins/testkit/chain/ChainUnitTest.scala +++ b/testkit/src/main/scala/org/bitcoins/testkit/chain/ChainUnitTest.scala @@ -37,7 +37,6 @@ import scala.concurrent.{ExecutionContext, Future} trait ChainUnitTest extends BitcoinSFixture with ChainFixtureHelper - with ChainVerificationLogger with CachedChainAppConfig { implicit lazy val appConfig: ChainAppConfig = @@ -639,9 +638,7 @@ object ChainUnitTest extends ChainVerificationLogger { /** Syncs the given chain handler to the given bitcoind */ def syncFromBitcoind(bitcoind: BitcoindRpcClient, chainHandler: ChainHandler)( - implicit - ec: ExecutionContext, - chainAppConfig: ChainAppConfig): Future[ChainApi] = { + implicit ec: ExecutionContext): Future[ChainApi] = { //sync headers //first we need to implement the 'getBestBlockHashFunc' and 'getBlockHeaderFunc' functions val getBestBlockHashFunc = { () => diff --git a/testkit/src/main/scala/org/bitcoins/testkit/db/DbTestUtil.scala b/testkit/src/main/scala/org/bitcoins/testkit/db/DbTestUtil.scala index 461df1d3d2..35f178c658 100644 --- a/testkit/src/main/scala/org/bitcoins/testkit/db/DbTestUtil.scala +++ b/testkit/src/main/scala/org/bitcoins/testkit/db/DbTestUtil.scala @@ -39,7 +39,6 @@ trait TestDbManagement extends DbManagement { case class TestAppConfig( private val directory: Path, - override val useLogbackConf: Boolean, private val conf: Config*)(implicit override val ec: ExecutionContext) extends AppConfig with TestDbManagement @@ -52,7 +51,7 @@ case class TestAppConfig( override protected[bitcoins] def newConfigOfType( configs: Seq[Config]): TestAppConfig = - TestAppConfig(directory, useLogbackConf, configs: _*) + TestAppConfig(directory, configs: _*) protected[bitcoins] def baseDatadir: Path = directory diff --git a/testkit/src/main/scala/org/bitcoins/testkit/db/TestDAOFixture.scala b/testkit/src/main/scala/org/bitcoins/testkit/db/TestDAOFixture.scala index d6228c2ae8..56efe8a27b 100644 --- a/testkit/src/main/scala/org/bitcoins/testkit/db/TestDAOFixture.scala +++ b/testkit/src/main/scala/org/bitcoins/testkit/db/TestDAOFixture.scala @@ -20,7 +20,6 @@ sealed trait TestDAOFixture implicit private val testConfig: TestAppConfig = TestAppConfig( BitcoinSTestAppConfig.tmpDir(), - useLogbackConf = true, BitcoinSTestAppConfig.configWithEmbeddedDb(Some(ProjectType.Test), pgUrl)) override def beforeAll(): Unit = { diff --git a/testkit/src/main/scala/org/bitcoins/testkit/node/NodeUnitTest.scala b/testkit/src/main/scala/org/bitcoins/testkit/node/NodeUnitTest.scala index 8a980c8831..9cfaeab41c 100644 --- a/testkit/src/main/scala/org/bitcoins/testkit/node/NodeUnitTest.scala +++ b/testkit/src/main/scala/org/bitcoins/testkit/node/NodeUnitTest.scala @@ -363,8 +363,7 @@ object NodeUnitTest extends P2PLogger { nodeConnectedWithBitcoind: NodeConnectedWithBitcoind)(implicit system: ActorSystem, appConfig: BitcoinSAppConfig): Future[Unit] = { - logger(appConfig.nodeConf) - .debug(s"Beggining tear down of node connected with bitcoind") + logger.debug(s"Beginning tear down of node connected with bitcoind") import system.dispatcher val node = nodeConnectedWithBitcoind.node val bitcoind = nodeConnectedWithBitcoind.bitcoind @@ -372,8 +371,7 @@ object NodeUnitTest extends P2PLogger { _ <- destroyNode(node) _ <- ChainUnitTest.destroyBitcoind(bitcoind) } yield { - logger(appConfig.nodeConf) - .debug(s"Done with teardown of node connected with bitcoind!") + logger.debug(s"Done with teardown of node connected with bitcoind!") () } diff --git a/testkit/src/main/scala/org/bitcoins/testkit/wallet/BitcoinSWalletTest.scala b/testkit/src/main/scala/org/bitcoins/testkit/wallet/BitcoinSWalletTest.scala index eefd5d8734..56a1a0d095 100644 --- a/testkit/src/main/scala/org/bitcoins/testkit/wallet/BitcoinSWalletTest.scala +++ b/testkit/src/main/scala/org/bitcoins/testkit/wallet/BitcoinSWalletTest.scala @@ -34,10 +34,7 @@ import org.scalatest._ import scala.concurrent._ import scala.concurrent.duration._ -trait BitcoinSWalletTest - extends BitcoinSFixture - with WalletLogger - with EmbeddedPg { +trait BitcoinSWalletTest extends BitcoinSFixture with EmbeddedPg { import BitcoinSWalletTest._ /** Wallet config with data directory set to user temp directory */ diff --git a/wallet-test/src/test/scala/org/bitcoins/wallet/WalletAppConfigTest.scala b/wallet-test/src/test/scala/org/bitcoins/wallet/WalletAppConfigTest.scala index 096460ea11..09501c1b69 100644 --- a/wallet-test/src/test/scala/org/bitcoins/wallet/WalletAppConfigTest.scala +++ b/wallet-test/src/test/scala/org/bitcoins/wallet/WalletAppConfigTest.scala @@ -2,7 +2,6 @@ package org.bitcoins.wallet import java.nio.file.Files -import ch.qos.logback.classic.Level import com.typesafe.config.ConfigFactory import org.bitcoins.core.config.{MainNet, RegTest, TestNet3} import org.bitcoins.core.hd.HDPurposes @@ -96,7 +95,5 @@ class WalletAppConfigTest extends BitcoinSAsyncTest { assert(appConfig.datadir == tempDir.resolve("testnet3")) assert(appConfig.network == TestNet3) - assert(appConfig.logLevel == Level.OFF) - assert(appConfig.p2pLogLevel == Level.WARN) } } diff --git a/wallet/src/main/scala/org/bitcoins/wallet/Wallet.scala b/wallet/src/main/scala/org/bitcoins/wallet/Wallet.scala index 487c3c0fb8..4a293dd06f 100644 --- a/wallet/src/main/scala/org/bitcoins/wallet/Wallet.scala +++ b/wallet/src/main/scala/org/bitcoins/wallet/Wallet.scala @@ -630,9 +630,7 @@ object Wallet extends WalletLogger { /** Creates the level 0 account for the given HD purpose, if the root account exists do nothing */ private def createRootAccount(wallet: Wallet, keyManager: BIP39KeyManager)( - implicit - walletAppConfig: WalletAppConfig, - ec: ExecutionContext): Future[AccountDb] = { + implicit ec: ExecutionContext): Future[AccountDb] = { val coinType = HDUtil.getCoinType(keyManager.kmParams.network) val coin = HDCoin(purpose = keyManager.kmParams.purpose, coinType = coinType) diff --git a/wallet/src/main/scala/org/bitcoins/wallet/WalletCallbacks.scala b/wallet/src/main/scala/org/bitcoins/wallet/WalletCallbacks.scala index f3b1b1207c..e6067a91a3 100644 --- a/wallet/src/main/scala/org/bitcoins/wallet/WalletCallbacks.scala +++ b/wallet/src/main/scala/org/bitcoins/wallet/WalletCallbacks.scala @@ -1,10 +1,10 @@ package org.bitcoins.wallet +import grizzled.slf4j.Logger import org.bitcoins.core.api.wallet.db.SpendingInfoDb import org.bitcoins.core.api.{Callback, CallbackHandler} import org.bitcoins.core.protocol.BitcoinAddress import org.bitcoins.core.protocol.transaction.Transaction -import org.slf4j.Logger import scala.concurrent.{ExecutionContext, Future} diff --git a/wallet/src/main/scala/org/bitcoins/wallet/WalletLogger.scala b/wallet/src/main/scala/org/bitcoins/wallet/WalletLogger.scala index 8c5b96cef0..6e80caa4e7 100644 --- a/wallet/src/main/scala/org/bitcoins/wallet/WalletLogger.scala +++ b/wallet/src/main/scala/org/bitcoins/wallet/WalletLogger.scala @@ -1,22 +1,6 @@ package org.bitcoins.wallet -import org.bitcoins.db.{AppLoggers, LoggerConfig} -import org.slf4j.Logger +import grizzled.slf4j.Logging /** Exposes acccess to the wallet logger */ -private[bitcoins] trait WalletLogger { - - protected[bitcoins] def logger(implicit config: LoggerConfig): Logger = { - WalletLoggerImpl(config).getLogger - } -} - -private[wallet] case class WalletLoggerImpl(override val conf: LoggerConfig) - extends AppLoggers { - - /** - * @return the generic wallet logger (i.e. everything not related to key handling) - */ - def getLogger: Logger = - getLoggerImpl(LoggerKind.Wallet) -} +private[bitcoins] trait WalletLogger extends Logging