diff --git a/src/xrpld/app/ledger/OrderBookDB.cpp b/src/xrpld/app/ledger/OrderBookDB.cpp index b8a7b54008..3beca6a670 100644 --- a/src/xrpld/app/ledger/OrderBookDB.cpp +++ b/src/xrpld/app/ledger/OrderBookDB.cpp @@ -24,10 +24,13 @@ #include #include #include +#include #include #include +using namespace std::chrono_literals; + namespace ripple { OrderBookDB::OrderBookDB(Application& app) @@ -69,7 +72,13 @@ OrderBookDB::setup(std::shared_ptr const& ledger) app_.getJobQueue().addJob( jtUPDATE_PF, "OrderBookDB::update: " + std::to_string(ledger->seq()), - [this, ledger]() { update(ledger); }); + [this, ledger, journal = j_]() { + perf::measureDurationAndLog( + [&]() { update(ledger); }, + "OrderBookDB::update:", + 1s, + journal); + }); } } diff --git a/src/xrpld/app/ledger/detail/InboundLedger.cpp b/src/xrpld/app/ledger/detail/InboundLedger.cpp index c1eed3a9f3..0ade6d77cf 100644 --- a/src/xrpld/app/ledger/detail/InboundLedger.cpp +++ b/src/xrpld/app/ledger/detail/InboundLedger.cpp @@ -25,6 +25,7 @@ #include #include #include +#include #include #include @@ -37,6 +38,8 @@ #include #include +using namespace std::chrono_literals; + namespace ripple { using namespace std::chrono_literals; @@ -473,15 +476,24 @@ InboundLedger::done() // We hold the PeerSet lock, so must dispatch app_.getJobQueue().addJob( - jtLEDGER_DATA, "AcquisitionDone", [self = shared_from_this()]() { - if (self->complete_ && !self->failed_) - { - self->app_.getLedgerMaster().checkAccept(self->getLedger()); - self->app_.getLedgerMaster().tryAdvance(); - } - else - self->app_.getInboundLedgers().logFailure( - self->hash_, self->mSeq); + jtLEDGER_DATA, + "AcquisitionDone", + [self = shared_from_this(), journal = journal_]() { + perf::measureDurationAndLog( + [&]() { + if (self->complete_ && !self->failed_) + { + self->app_.getLedgerMaster().checkAccept( + self->getLedger()); + self->app_.getLedgerMaster().tryAdvance(); + } + else + self->app_.getInboundLedgers().logFailure( + self->hash_, self->mSeq); + }, + "AcquisitionDone", + 1s, + journal); }); } @@ -1026,8 +1038,9 @@ InboundLedger::getNeededHashes() mLedger->txMap().family().db(), app_.getLedgerMaster()); for (auto const& h : neededTxHashes(4, &filter)) { - ret.push_back(std::make_pair( - protocol::TMGetObjectByHash::otTRANSACTION_NODE, h)); + ret.push_back( + std::make_pair( + protocol::TMGetObjectByHash::otTRANSACTION_NODE, h)); } } diff --git a/src/xrpld/app/ledger/detail/InboundLedgers.cpp b/src/xrpld/app/ledger/detail/InboundLedgers.cpp index b05268f65b..a1cb864a53 100644 --- a/src/xrpld/app/ledger/detail/InboundLedgers.cpp +++ b/src/xrpld/app/ledger/detail/InboundLedgers.cpp @@ -35,6 +35,8 @@ #include #include +using namespace std::chrono_literals; + namespace ripple { class InboundLedgersImp : public InboundLedgers @@ -212,8 +214,14 @@ public: // dispatch if (ledger->gotData(std::weak_ptr(peer), packet)) app_.getJobQueue().addJob( - jtLEDGER_DATA, "processLedgerData", [ledger]() { - ledger->runData(); + jtLEDGER_DATA, + "processLedgerData", + [ledger, journal = j_]() { + perf::measureDurationAndLog( + [&]() { ledger->runData(); }, + "processLedgerData", + 1s, + journal); }); return true; @@ -227,8 +235,12 @@ public: if (packet->type() == protocol::liAS_NODE) { app_.getJobQueue().addJob( - jtLEDGER_DATA, "gotStaleData", [this, packet]() { - gotStaleData(packet); + jtLEDGER_DATA, "gotStaleData", [this, packet, journal = j_]() { + perf::measureDurationAndLog( + [&]() { gotStaleData(packet); }, + "gotStaleData", + 1s, + journal); }); } diff --git a/src/xrpld/app/ledger/detail/LedgerDeltaAcquire.cpp b/src/xrpld/app/ledger/detail/LedgerDeltaAcquire.cpp index d312a09008..aadb3bcd76 100644 --- a/src/xrpld/app/ledger/detail/LedgerDeltaAcquire.cpp +++ b/src/xrpld/app/ledger/detail/LedgerDeltaAcquire.cpp @@ -25,6 +25,9 @@ #include #include #include +#include + +using namespace std::chrono_literals; namespace ripple { @@ -244,22 +247,31 @@ LedgerDeltaAcquire::onLedgerBuilt( app_.getJobQueue().addJob( jtREPLAY_TASK, "onLedgerBuilt", - [=, ledger = this->fullLedger_, &app = this->app_]() { - for (auto reason : reasons) - { - switch (reason) - { - case InboundLedger::Reason::GENERIC: - app.getLedgerMaster().storeLedger(ledger); - break; - default: - // TODO for other use cases - break; - } - } + [=, + ledger = this->fullLedger_, + &app = this->app_, + journal = journal_]() { + perf::measureDurationAndLog( + [&]() { + for (auto reason : reasons) + { + switch (reason) + { + case InboundLedger::Reason::GENERIC: + app.getLedgerMaster().storeLedger(ledger); + break; + default: + // TODO for other use cases + break; + } + } - if (firstTime) - app.getLedgerMaster().tryAdvance(); + if (firstTime) + app.getLedgerMaster().tryAdvance(); + }, + "onLedgerBuilt", + 1s, + journal); }); }