diff --git a/src/Ledger.cpp b/src/Ledger.cpp index 2f3c8cfdf..ff4dc08ac 100644 --- a/src/Ledger.cpp +++ b/src/Ledger.cpp @@ -19,6 +19,7 @@ #include "HashPrefixes.h" #include "Log.h" +SETUP_LOG(); Ledger::Ledger(const NewcoinAddress& masterID, uint64 startAmount) : mTotCoins(startAmount), mLedgerSeq(1), mCloseTime(0), mParentCloseTime(0), mCloseResolution(LEDGER_TIME_ACCURACY), mCloseFlags(0), @@ -428,11 +429,13 @@ Ledger::pointer Ledger::getSQL(const std::string& sql) closeFlags, closeResolution, ledgerSeq); if (ret->getHash() != ledgerHash) { - Json::StyledStreamWriter ssw; - Log(lsERROR) << "Failed on ledger"; - Json::Value p; - ret->addJson(p, LEDGER_JSON_FULL); - ssw.write(Log(lsERROR).ref(), p); + if (sLog(lsERROR)) + { + Log(lsERROR) << "Failed on ledger"; + Json::Value p; + ret->addJson(p, LEDGER_JSON_FULL); + Log(lsERROR) << p; + } assert(false); return Ledger::pointer(); } diff --git a/src/LedgerConsensus.cpp b/src/LedgerConsensus.cpp index 2c3679168..bccbd76d1 100644 --- a/src/LedgerConsensus.cpp +++ b/src/LedgerConsensus.cpp @@ -1174,12 +1174,12 @@ void LedgerConsensus::accept(SHAMap::ref set) } #ifdef DEBUG + if (sLog(lsTRACE)) { - Json::StyledStreamWriter ssw; - cLog(lsTRACE) << "newLCL"; + Log(lsTRACE) << "newLCL"; Json::Value p; newLCL->addJson(p, LEDGER_JSON_DUMP_TXNS | LEDGER_JSON_DUMP_STATE); - ssw.write(Log(lsTRACE).ref(), p); + Log(lsTRACE) << p; } #endif } diff --git a/src/Log.h b/src/Log.h index e9359a900..a71d07ee9 100644 --- a/src/Log.h +++ b/src/Log.h @@ -22,6 +22,9 @@ // Log only if an additional condition 'c' is true. Condition is not computed if not needed #define tLog(c,x) if (!logPartition.doLog(x) || !(c)) do {} while(0); else Log(x) +// Check if should log +#define sLog(x) (logPartition.doLog(x)) + enum LogSeverity { diff --git a/src/RPCServer.cpp b/src/RPCServer.cpp index 4b5de9ef8..9aa51033c 100644 --- a/src/RPCServer.cpp +++ b/src/RPCServer.cpp @@ -28,10 +28,12 @@ #include "../json/reader.h" #include "../json/writer.h" +SETUP_LOG(); + RPCServer::RPCServer(boost::asio::io_service& io_service , NetworkOPs* nopNetwork) : mNetOps(nopNetwork), mSocket(io_service) { - mRole=GUEST; + mRole = GUEST; } Json::Value RPCServer::RPCError(int iError) @@ -175,13 +177,12 @@ std::string RPCServer::handleRequest(const std::string& requestStr) else if (!valParams.isArray()) return(HTTPReply(400, "parms unparseable")); - Json::StyledStreamWriter w; - w.write(Log(lsTRACE).ref(), valParams); - Json::Value result(doCommand(strMethod, valParams)); - w.write(Log(lsTRACE).ref(), result); + cLog(lsTRACE) << valParams; + Json::Value result = doCommand(strMethod, valParams); + cLog(lsTRACE) << result; std::string strReply = JSONRPCReply(result, Json::Value(), id); - return( HTTPReply(200, strReply) ); + return HTTPReply(200, strReply); } int RPCServer::getParamCount(const Json::Value& params) diff --git a/src/TransactionEngine.cpp b/src/TransactionEngine.cpp index 87edcd469..38dbeb561 100644 --- a/src/TransactionEngine.cpp +++ b/src/TransactionEngine.cpp @@ -79,8 +79,8 @@ TER TransactionEngine::applyTransaction(const SerializedTransaction& txn, Transa { cLog(lsFATAL) << "Transaction serdes mismatch"; Json::StyledStreamWriter ssw; - ssw.write(Log(lsINFO).ref(), txn.getJson(0)); - ssw.write(Log(lsFATAL).ref(), s2.getJson(0)); + cLog(lsINFO) << txn.getJson(0); + cLog(lsFATAL) << s2.getJson(0); assert(false); } }