fix(telemetry): resolve clang-tidy warnings in Telemetry interfaces

Use C++17 concatenated namespaces, add [[nodiscard]] to query methods,
add missing direct includes, and use pass-by-value + std::move in
NullTelemetry constructor.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Pratik Mankawde
2026-04-29 11:16:21 +01:00
parent 96470e0c8d
commit d4e91b462e
4 changed files with 27 additions and 25 deletions

View File

@@ -85,8 +85,7 @@
#include <opentelemetry/trace/tracer.h>
#endif
namespace xrpl {
namespace telemetry {
namespace xrpl::telemetry {
class Telemetry
{
@@ -222,27 +221,27 @@ public:
stop() = 0;
/** @return true if this instance is actively exporting spans. */
virtual bool
[[nodiscard]] virtual bool
isEnabled() const = 0;
/** @return true if transaction processing should be traced. */
virtual bool
[[nodiscard]] virtual bool
shouldTraceTransactions() const = 0;
/** @return true if consensus rounds should be traced. */
virtual bool
[[nodiscard]] virtual bool
shouldTraceConsensus() const = 0;
/** @return true if RPC request handling should be traced. */
virtual bool
[[nodiscard]] virtual bool
shouldTraceRpc() const = 0;
/** @return true if peer-to-peer messages should be traced. */
virtual bool
[[nodiscard]] virtual bool
shouldTracePeer() const = 0;
/** @return true if ledger close/accept should be traced. */
virtual bool
[[nodiscard]] virtual bool
shouldTraceLedger() const = 0;
#ifdef XRPL_ENABLE_TELEMETRY
@@ -318,5 +317,4 @@ setup_Telemetry(
std::string const& version,
std::uint32_t networkId);
} // namespace telemetry
} // namespace xrpl
} // namespace xrpl::telemetry

View File

@@ -10,14 +10,17 @@
its own factory that can return the real TelemetryImpl.
*/
#include <xrpl/beast/utility/Journal.h>
#include <xrpl/telemetry/Telemetry.h>
#ifdef XRPL_ENABLE_TELEMETRY
#include <opentelemetry/trace/noop.h>
#endif
namespace xrpl {
namespace telemetry {
#include <memory>
#include <utility>
namespace xrpl::telemetry {
namespace {
@@ -32,7 +35,7 @@ class NullTelemetry : public Telemetry
Setup const setup_;
public:
explicit NullTelemetry(Setup const& setup) : setup_(setup)
explicit NullTelemetry(Setup setup) : setup_(std::move(setup))
{
}
@@ -48,37 +51,37 @@ public:
Telemetry::setInstance(nullptr);
}
bool
[[nodiscard]] bool
isEnabled() const override
{
return false;
}
bool
[[nodiscard]] bool
shouldTraceTransactions() const override
{
return false;
}
bool
[[nodiscard]] bool
shouldTraceConsensus() const override
{
return false;
}
bool
[[nodiscard]] bool
shouldTraceRpc() const override
{
return false;
}
bool
[[nodiscard]] bool
shouldTracePeer() const override
{
return false;
}
bool
[[nodiscard]] bool
shouldTraceLedger() const override
{
return false;
@@ -125,5 +128,4 @@ make_Telemetry(Telemetry::Setup const& setup, beast::Journal)
}
#endif
} // namespace telemetry
} // namespace xrpl
} // namespace xrpl::telemetry

View File

@@ -7,12 +7,14 @@
See cfg/xrpld-example.cfg for the full list of available options.
*/
#include <xrpl/basics/BasicConfig.h>
#include <xrpl/telemetry/Telemetry.h>
#include <algorithm>
#include <cstdint>
#include <string>
namespace xrpl {
namespace telemetry {
namespace xrpl::telemetry {
namespace {
@@ -78,5 +80,4 @@ setup_Telemetry(
return setup;
}
} // namespace telemetry
} // namespace xrpl
} // namespace xrpl::telemetry

View File

@@ -82,6 +82,7 @@
#include <xrpl/protocol/STParsedJSON.h>
#include <xrpl/protocol/Serializer.h>
#include <xrpl/protocol/jss.h>
#include <xrpl/protocol/tokens.h>
#include <xrpl/rdb/DatabaseCon.h>
#include <xrpl/resource/Charge.h>
#include <xrpl/resource/Consumer.h>