diff options
author | 0xb10c <0xb10c@gmail.com> | 2021-05-20 16:54:54 +0200 |
---|---|---|
committer | 0xb10c <0xb10c@gmail.com> | 2021-07-27 17:12:16 +0200 |
commit | 4224dec22baa66547303840707cf1d4f15a49b20 (patch) | |
tree | 467d8bc70b3a3d3ada1fc4a2281ff2725031f09d /src/net.cpp | |
parent | 469b71ae629228b2591a55831817a0e5fad89360 (diff) | |
download | bitcoin-4224dec22baa66547303840707cf1d4f15a49b20.tar.xz |
tracing: Tracepoints for in- and outbound P2P msgs
Can be used to monitor in- and outbound node traffic.
Based on ealier work by jb55.
Co-authored-by: William Casarin <jb55@jb55.com>
Diffstat (limited to 'src/net.cpp')
-rw-r--r-- | src/net.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/net.cpp b/src/net.cpp index 3a1bb138ab..8ef770ede2 100644 --- a/src/net.cpp +++ b/src/net.cpp @@ -25,6 +25,7 @@ #include <util/sock.h> #include <util/strencodings.h> #include <util/thread.h> +#include <util/trace.h> #include <util/translation.h> #ifdef WIN32 @@ -3017,11 +3018,20 @@ bool CConnman::NodeFullyConnected(const CNode* pnode) void CConnman::PushMessage(CNode* pnode, CSerializedNetMsg&& msg) { size_t nMessageSize = msg.data.size(); - LogPrint(BCLog::NET, "sending %s (%d bytes) peer=%d\n", SanitizeString(msg.m_type), nMessageSize, pnode->GetId()); + LogPrint(BCLog::NET, "sending %s (%d bytes) peer=%d\n", msg.m_type, nMessageSize, pnode->GetId()); if (gArgs.GetBoolArg("-capturemessages", false)) { CaptureMessage(pnode->addr, msg.m_type, msg.data, /* incoming */ false); } + TRACE6(net, outbound_message, + pnode->GetId(), + pnode->GetAddrName().c_str(), + pnode->ConnectionTypeAsString().c_str(), + msg.m_type.c_str(), + msg.data.size(), + msg.data.data() + ); + // make sure we use the appropriate network transport format std::vector<unsigned char> serializedHeader; pnode->m_serializer->prepareForTransport(msg, serializedHeader); |