diff options
author | Abtin Keshavarzian <abtink@google.com> | 2024-04-05 09:07:19 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-05 09:07:19 -0700 |
commit | 223935bf0c6bd02675efcb56254d21abaa1fb530 (patch) | |
tree | 588f3fb43307b29e8a94412858dc9229d2c9e61c | |
parent | 65bc830edb26f6a2ba2509f8a490f8bd20b8bddb (diff) | |
download | openthread-223935bf0c6bd02675efcb56254d21abaa1fb530.tar.gz |
[logging] introduce `LogWarnOnError()` for standardized error logging (#9996)
This commit adds `LogWarnOnError()` to emit warning-level logs on
errors. The emitted log includes the error code. This replaces custom
`LogError()` across modules, simplifying the code.
27 files changed, 95 insertions, 158 deletions
diff --git a/src/core/common/log.cpp b/src/core/common/log.cpp index 1809cd54b..afddcfda0 100644 --- a/src/core/common/log.cpp +++ b/src/core/common/log.cpp @@ -136,6 +136,16 @@ exit: return; } +#if OT_SHOULD_LOG_AT(OT_LOG_LEVEL_WARN) +void Logger::LogOnError(const char *aModuleName, Error aError, const char *aText) +{ + if (aError != kErrorNone) + { + LogAtLevel<kLogLevelWarn>(aModuleName, "Failed to %s: %s", aText, ErrorToString(aError)); + } +} +#endif + #if OPENTHREAD_CONFIG_LOG_PKT_DUMP template <LogLevel kLogLevel> diff --git a/src/core/common/log.hpp b/src/core/common/log.hpp index 47293e0b3..49f0416e6 100644 --- a/src/core/common/log.hpp +++ b/src/core/common/log.hpp @@ -162,6 +162,22 @@ constexpr uint8_t kMaxLogModuleNameLength = 14; ///< Maximum module name length #define LogDebg(...) #endif +#if OT_SHOULD_LOG_AT(OT_LOG_LEVEL_WARN) +/** + * Emits an error log message at warning log level if there is an error. + * + * The emitted log will use the the following format "Failed to {aText}: {ErrorToString(aError)}", and will be emitted + * only if there is an error, i.e., @p aError is not `kErrorNone`. + * + * @param[in] aError The error to check and log. + * @param[in] aText The text to include in the log. + * + */ +#define LogWarnOnError(aError, aText) Logger::LogOnError(kLogModuleName, aError, aText) +#else +#define LogWarnOnError(aError, aText) +#endif + #if OT_SHOULD_LOG /** * Emits a log message at a given log level. @@ -316,6 +332,10 @@ public: static void LogVarArgs(const char *aModuleName, LogLevel aLogLevel, const char *aFormat, va_list aArgs); +#if OT_SHOULD_LOG_AT(OT_LOG_LEVEL_WARN) + static void LogOnError(const char *aModuleName, Error aError, const char *aText); +#endif + #if OPENTHREAD_CONFIG_LOG_PKT_DUMP static constexpr uint8_t kStringLineLength = 80; static constexpr uint8_t kDumpBytesPerLine = 16; diff --git a/src/core/meshcop/border_agent.cpp b/src/core/meshcop/border_agent.cpp index ad24427a6..24e7331d8 100644 --- a/src/core/meshcop/border_agent.cpp +++ b/src/core/meshcop/border_agent.cpp @@ -128,7 +128,7 @@ void BorderAgent::SendErrorMessage(const ForwardContext &aForwardContext, Error exit: FreeMessageOnError(message, error); - LogError("send error CoAP message", error); + LogWarnOnError(error, "send error CoAP message"); } void BorderAgent::SendErrorMessage(const Coap::Message &aRequest, bool aSeparate, Error aError) @@ -158,7 +158,7 @@ void BorderAgent::SendErrorMessage(const Coap::Message &aRequest, bool aSeparate exit: FreeMessageOnError(message, error); - LogError("send error CoAP message", error); + LogWarnOnError(error, "send error CoAP message"); } Error BorderAgent::SendMessage(Coap::Message &aMessage) @@ -347,7 +347,7 @@ template <> void BorderAgent::HandleTmf<kUriProxyTx>(Coap::Message &aMessage, co exit: FreeMessageOnError(message, error); - LogError("send proxy stream", error); + LogWarnOnError(error, "send proxy stream"); } bool BorderAgent::HandleUdpReceive(void *aContext, const otMessage *aMessage, const otMessageInfo *aMessageInfo) @@ -398,7 +398,7 @@ exit: FreeMessageOnError(message, error); if (error != kErrorDestinationAddressFiltered) { - LogError("notify commissioner on ProxyRx (c/ur)", error); + LogWarnOnError(error, "notify commissioner on ProxyRx (c/ur)"); } return error != kErrorDestinationAddressFiltered; @@ -436,7 +436,7 @@ Error BorderAgent::ForwardToCommissioner(Coap::Message &aForwardMessage, const M LogInfo("Sent to commissioner"); exit: - LogError("send to commissioner", error); + LogWarnOnError(error, "send to commissioner"); return error; } @@ -520,7 +520,7 @@ template <> void BorderAgent::HandleTmf<kUriRelayTx>(Coap::Message &aMessage, co exit: FreeMessageOnError(message, error); - LogError("send to joiner router request RelayTx (c/tx)", error); + LogWarnOnError(error, "send to joiner router request RelayTx (c/tx)"); } Error BorderAgent::ForwardToLeader(const Coap::Message &aMessage, const Ip6::MessageInfo &aMessageInfo, Uri aUri) @@ -576,7 +576,7 @@ Error BorderAgent::ForwardToLeader(const Coap::Message &aMessage, const Ip6::Mes LogInfo("Forwarded request to leader on %s", PathForUri(aUri)); exit: - LogError("forward to leader", error); + LogWarnOnError(error, "forward to leader"); if (error != kErrorNone) { @@ -662,7 +662,7 @@ Error BorderAgent::Start(uint16_t aUdpPort, const uint8_t *aPsk, uint8_t aPskLen LogInfo("Border Agent start listening on port %u", GetUdpPort()); exit: - LogError("start agent", error); + LogWarnOnError(error, "start agent"); return error; } @@ -802,16 +802,6 @@ void BorderAgent::HandleSecureAgentStopped(void) #endif // OPENTHREAD_CONFIG_BORDER_AGENT_EPHEMERAL_KEY_ENABLE -#if OT_SHOULD_LOG_AT(OT_LOG_LEVEL_WARN) -void BorderAgent::LogError(const char *aActionText, Error aError) -{ - if (aError != kErrorNone) - { - LogWarn("Failed to %s: %s", aActionText, ErrorToString(aError)); - } -} -#endif - } // namespace MeshCoP } // namespace ot diff --git a/src/core/meshcop/border_agent.hpp b/src/core/meshcop/border_agent.hpp index fe9461220..933a95c76 100644 --- a/src/core/meshcop/border_agent.hpp +++ b/src/core/meshcop/border_agent.hpp @@ -308,12 +308,6 @@ private: static bool HandleUdpReceive(void *aContext, const otMessage *aMessage, const otMessageInfo *aMessageInfo); bool HandleUdpReceive(const Message &aMessage, const Ip6::MessageInfo &aMessageInfo); -#if OT_SHOULD_LOG_AT(OT_LOG_LEVEL_WARN) - void LogError(const char *aActionText, Error aError); -#else - void LogError(const char *, Error) {} -#endif - using TimeoutTimer = TimerMilliIn<BorderAgent, &BorderAgent::HandleTimeout>; #if OPENTHREAD_CONFIG_BORDER_AGENT_EPHEMERAL_KEY_ENABLE using EphemeralKeyTimer = TimerMilliIn<BorderAgent, &BorderAgent::HandleEphemeralKeyTimeout>; diff --git a/src/core/meshcop/commissioner.cpp b/src/core/meshcop/commissioner.cpp index 92a52c12e..999d73224 100644 --- a/src/core/meshcop/commissioner.cpp +++ b/src/core/meshcop/commissioner.cpp @@ -302,9 +302,9 @@ exit: if ((error != kErrorNone) && (error != kErrorAlready)) { Get<Tmf::SecureAgent>().Stop(); + LogWarnOnError(error, "start commissioner"); } - LogError("start commissioner", error); return error; } @@ -343,7 +343,11 @@ Error Commissioner::Stop(ResignMode aResignMode) #endif exit: - LogError("stop commissioner", error); + if (error != kErrorAlready) + { + LogWarnOnError(error, "stop commissioner"); + } + return error; } @@ -405,7 +409,8 @@ void Commissioner::SendCommissionerSet(void) error = SendMgmtCommissionerSetRequest(dataset, nullptr, 0); exit: - LogError("send MGMT_COMMISSIONER_SET.req", error); + LogWarnOnError(error, "send MGMT_COMMISSIONER_SET.req"); + OT_UNUSED_VARIABLE(error); } void Commissioner::ClearJoiners(void) @@ -857,7 +862,7 @@ void Commissioner::SendKeepAlive(uint16_t aSessionId) exit: FreeMessageOnError(message, error); - LogError("send keep alive", error); + LogWarnOnError(error, "send keep alive"); } void Commissioner::HandleLeaderKeepAliveResponse(void *aContext, diff --git a/src/core/meshcop/dataset_manager.cpp b/src/core/meshcop/dataset_manager.cpp index 237c4b481..6c49a239a 100644 --- a/src/core/meshcop/dataset_manager.cpp +++ b/src/core/meshcop/dataset_manager.cpp @@ -292,7 +292,11 @@ exit: OT_FALL_THROUGH; default: - LogError("send Dataset set to leader", error); + if (error != kErrorAlready) + { + LogWarnOnError(error, "send Dataset set to leader"); + } + FreeMessage(message); break; } diff --git a/src/core/meshcop/joiner.cpp b/src/core/meshcop/joiner.cpp index fb0f3e61c..4df5f96fc 100644 --- a/src/core/meshcop/joiner.cpp +++ b/src/core/meshcop/joiner.cpp @@ -185,7 +185,7 @@ exit: FreeJoinerFinalizeMessage(); } - LogError("start joiner", error); + LogWarnOnError(error, "start joiner"); return error; } @@ -378,7 +378,7 @@ Error Joiner::Connect(JoinerRouter &aRouter) SetState(kStateConnect); exit: - LogError("start secure joiner connection", error); + LogWarnOnError(error, "start secure joiner connection"); return error; } @@ -543,7 +543,7 @@ template <> void Joiner::HandleTmf<kUriJoinerEntrust>(Coap::Message &aMessage, c mTimer.Start(kConfigExtAddressDelay); exit: - LogError("process joiner entrust", error); + LogWarnOnError(error, "process joiner entrust"); } void Joiner::SendJoinerEntrustResponse(const Coap::Message &aRequest, const Ip6::MessageInfo &aRequestInfo) diff --git a/src/core/meshcop/joiner_router.cpp b/src/core/meshcop/joiner_router.cpp index acadf1a9d..a5df41367 100644 --- a/src/core/meshcop/joiner_router.cpp +++ b/src/core/meshcop/joiner_router.cpp @@ -232,7 +232,7 @@ void JoinerRouter::DelaySendingJoinerEntrust(const Ip6::MessageInfo &aMessageInf exit: FreeMessageOnError(message, error); - LogError("schedule joiner entrust", error); + LogWarnOnError(error, "schedule joiner entrust"); } void JoinerRouter::HandleTimer(void) { SendDelayedJoinerEntrust(); } diff --git a/src/core/meshcop/meshcop.cpp b/src/core/meshcop/meshcop.cpp index b30fe274c..8bce74582 100644 --- a/src/core/meshcop/meshcop.cpp +++ b/src/core/meshcop/meshcop.cpp @@ -343,15 +343,5 @@ exit: } #endif // OPENTHREAD_FTD -#if OT_SHOULD_LOG_AT(OT_LOG_LEVEL_WARN) -void LogError(const char *aActionText, Error aError) -{ - if (aError != kErrorNone && aError != kErrorAlready) - { - LogWarn("Failed to %s: %s", aActionText, ErrorToString(aError)); - } -} -#endif - } // namespace MeshCoP } // namespace ot diff --git a/src/core/meshcop/meshcop.hpp b/src/core/meshcop/meshcop.hpp index 339872bb3..3620927a0 100644 --- a/src/core/meshcop/meshcop.hpp +++ b/src/core/meshcop/meshcop.hpp @@ -561,22 +561,6 @@ Error GeneratePskc(const char *aPassPhrase, */ void ComputeJoinerId(const Mac::ExtAddress &aEui64, Mac::ExtAddress &aJoinerId); -#if OT_SHOULD_LOG_AT(OT_LOG_LEVEL_WARN) -/** - * Emits a log message indicating an error during a MeshCoP action. - * - * Note that log message is emitted only if there is an error, i.e. @p aError is not `kErrorNone`. The log - * message will have the format "Failed to {aActionText} : {ErrorString}". - * - * @param[in] aActionText A string representing the failed action. - * @param[in] aError The error in sending the message. - * - */ -void LogError(const char *aActionText, Error aError); -#else -inline void LogError(const char *, Error) {} -#endif - } // namespace MeshCoP DefineCoreType(otJoinerPskd, MeshCoP::JoinerPskd); diff --git a/src/core/meshcop/meshcop_leader.cpp b/src/core/meshcop/meshcop_leader.cpp index 64c028d1b..4fc83854d 100644 --- a/src/core/meshcop/meshcop_leader.cpp +++ b/src/core/meshcop/meshcop_leader.cpp @@ -125,7 +125,7 @@ void Leader::SendPetitionResponse(const Coap::Message &aRequest, exit: FreeMessageOnError(message, error); - LogError("send petition response", error); + LogWarnOnError(error, "send petition response"); } template <> void Leader::HandleTmf<kUriLeaderKeepAlive>(Coap::Message &aMessage, const Ip6::MessageInfo &aMessageInfo) @@ -192,7 +192,7 @@ void Leader::SendKeepAliveResponse(const Coap::Message &aRequest, exit: FreeMessageOnError(message, error); - LogError("send keep alive response", error); + LogWarnOnError(error, "send keep alive response"); } void Leader::SendDatasetChanged(const Ip6::Address &aAddress) @@ -211,7 +211,7 @@ void Leader::SendDatasetChanged(const Ip6::Address &aAddress) exit: FreeMessageOnError(message, error); - LogError("send dataset changed", error); + LogWarnOnError(error, "send dataset changed"); } Error Leader::SetDelayTimerMinimal(uint32_t aDelayTimerMinimal) diff --git a/src/core/meshcop/tcat_agent.cpp b/src/core/meshcop/tcat_agent.cpp index c923da309..f8e459642 100644 --- a/src/core/meshcop/tcat_agent.cpp +++ b/src/core/meshcop/tcat_agent.cpp @@ -94,7 +94,7 @@ Error TcatAgent::Start(const TcatAgent::VendorInfo &aVendorInfo, mAlreadyCommissioned = false; exit: - LogError("start TCAT agent", error); + LogWarnOnError(error, "start TCAT agent"); return error; } @@ -500,16 +500,6 @@ exit: return error; } -#if OT_SHOULD_LOG_AT(OT_LOG_LEVEL_WARN) -void TcatAgent::LogError(const char *aActionText, Error aError) -{ - if (aError != kErrorNone) - { - LogWarn("Failed to %s: %s", aActionText, ErrorToString(aError)); - } -} -#endif - } // namespace MeshCoP } // namespace ot diff --git a/src/core/meshcop/tcat_agent.hpp b/src/core/meshcop/tcat_agent.hpp index d2dd9f340..16cf8f977 100644 --- a/src/core/meshcop/tcat_agent.hpp +++ b/src/core/meshcop/tcat_agent.hpp @@ -325,12 +325,6 @@ private: Error HandleSetActiveOperationalDataset(const Message &aIncommingMessage, uint16_t aOffset, uint16_t aLength); Error HandleStartThreadInterface(void); -#if OT_SHOULD_LOG_AT(OT_LOG_LEVEL_WARN) - void LogError(const char *aActionText, Error aError); -#else - void LogError(const char *, Error) {} -#endif - bool CheckCommandClassAuthorizationFlags(CommandClassFlags aCommissionerCommandClassFlags, CommandClassFlags aDeviceCommandClassFlags, Dataset *aDataset) const; diff --git a/src/core/net/dhcp6_client.cpp b/src/core/net/dhcp6_client.cpp index e206ff664..56654fb47 100644 --- a/src/core/net/dhcp6_client.cpp +++ b/src/core/net/dhcp6_client.cpp @@ -288,7 +288,7 @@ exit: if (error != kErrorNone) { FreeMessage(message); - LogWarn("Failed to send DHCPv6 Solicit: %s", ErrorToString(error)); + LogWarnOnError(error, "send DHCPv6 Solicit"); } } diff --git a/src/core/net/dhcp6_server.cpp b/src/core/net/dhcp6_server.cpp index 7fd072cf4..ea9570737 100644 --- a/src/core/net/dhcp6_server.cpp +++ b/src/core/net/dhcp6_server.cpp @@ -172,11 +172,8 @@ void Server::AddPrefixAgent(const Ip6::Prefix &aIp6Prefix, const Lowpan::Context mPrefixAgentsCount++; exit: - - if (error != kErrorNone) - { - LogNote("Failed to add DHCPv6 prefix agent: %s", ErrorToString(error)); - } + LogWarnOnError(error, "add DHCPv6 prefix agent"); + OT_UNUSED_VARIABLE(error); } void Server::HandleUdpReceive(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo) diff --git a/src/core/net/dnssd_server.cpp b/src/core/net/dnssd_server.cpp index 385eb88f3..e05a7d9c1 100644 --- a/src/core/net/dnssd_server.cpp +++ b/src/core/net/dnssd_server.cpp @@ -170,7 +170,7 @@ void Server::ProcessQuery(Request &aRequest) ExitNow(); } - LogWarn("Error forwarding to upstream: %s", ErrorToString(error)); + LogWarnOnError(error, "forwarding to upstream"); rcode = Header::kResponseServerFailure; diff --git a/src/core/net/ip6.cpp b/src/core/net/ip6.cpp index 57968e90e..d5b2e27ed 100644 --- a/src/core/net/ip6.cpp +++ b/src/core/net/ip6.cpp @@ -714,7 +714,7 @@ exit: mReassemblyList.DequeueAndFree(*message); } - LogWarn("Reassembly failed: %s", ErrorToString(error)); + LogWarnOnError(error, "reassemble"); } if (isFragmented) @@ -769,11 +769,8 @@ void Ip6::SendIcmpError(Message &aMessage, Icmp::Header::Type aIcmpType, Icmp::H error = mIcmp.SendError(aIcmpType, aIcmpCode, messageInfo, aMessage); exit: - - if (error != kErrorNone) - { - LogWarn("Failed to send ICMP error: %s", ErrorToString(error)); - } + LogWarnOnError(error, "send ICMP"); + OT_UNUSED_VARIABLE(error); } #else @@ -916,11 +913,7 @@ Error Ip6::HandlePayload(Header &aIp6Header, } exit: - if (error != kErrorNone) - { - LogNote("Failed to handle payload: %s", ErrorToString(error)); - } - + LogWarnOnError(error, "handle payload"); return error; } diff --git a/src/core/net/sntp_client.cpp b/src/core/net/sntp_client.cpp index 5897a5f3b..7718b02ba 100644 --- a/src/core/net/sntp_client.cpp +++ b/src/core/net/sntp_client.cpp @@ -193,7 +193,7 @@ exit: if (error != kErrorNone) { FreeMessage(messageCopy); - LogWarn("Failed to send SNTP request: %s", ErrorToString(error)); + LogWarnOnError(error, "send SNTP request"); } } diff --git a/src/core/net/srp_server.cpp b/src/core/net/srp_server.cpp index 3ebeacbff..635cbedb2 100644 --- a/src/core/net/srp_server.cpp +++ b/src/core/net/srp_server.cpp @@ -674,7 +674,7 @@ Error Server::PrepareSocket(void) exit: if (error != kErrorNone) { - LogError("prepare socket", error); + LogWarnOnError(error, "prepare socket"); IgnoreError(mSocket.Close()); Stop(); } @@ -872,7 +872,7 @@ Error Server::ProcessZoneSection(const Message &aMessage, MessageMetadata &aMeta aMetadata.mOffset = offset; exit: - LogError("process DNS Zone section", error); + LogWarnOnError(error, "process DNS Zone section"); return error; } @@ -898,7 +898,7 @@ Error Server::ProcessUpdateSection(Host &aHost, const Message &aMessage, Message VerifyOrExit(!HasNameConflictsWith(aHost), error = kErrorDuplicated); exit: - LogError("Process DNS Update section", error); + LogWarnOnError(error, "Process DNS Update section"); return error; } @@ -987,7 +987,7 @@ Error Server::ProcessHostDescriptionInstruction(Host &aHost, // the host is being removed or registered. exit: - LogError("process Host Description instructions", error); + LogWarnOnError(error, "process Host Description instructions"); return error; } @@ -1106,7 +1106,7 @@ Error Server::ProcessServiceDiscoveryInstructions(Host &aHost, } exit: - LogError("process Service Discovery instructions", error); + LogWarnOnError(error, "process Service Discovery instructions"); return error; } @@ -1205,7 +1205,7 @@ Error Server::ProcessServiceDescriptionInstructions(Host &aHost, aMetadata.mOffset = offset; exit: - LogError("process Service Description instructions", error); + LogWarnOnError(error, "process Service Description instructions"); return error; } @@ -1294,7 +1294,7 @@ Error Server::ProcessAdditionalSection(Host *aHost, const Message &aMessage, Mes aMetadata.mOffset = offset; exit: - LogError("process DNS Additional section", error); + LogWarnOnError(error, "process DNS Additional section"); return error; } @@ -1341,7 +1341,7 @@ Error Server::VerifySignature(const Host::Key &aKey, error = aKey.Verify(hash, signature); exit: - LogError("verify message signature", error); + LogWarnOnError(error, "verify message signature"); FreeMessage(signerNameMessage); return error; } @@ -1501,7 +1501,7 @@ void Server::SendResponse(const Dns::UpdateHeader &aHeader, UpdateResponseCounters(aResponseCode); exit: - LogError("send response", error); + LogWarnOnError(error, "send response"); FreeMessageOnError(response, error); } @@ -1557,7 +1557,7 @@ void Server::SendResponse(const Dns::UpdateHeader &aHeader, UpdateResponseCounters(Dns::UpdateHeader::kResponseSuccess); exit: - LogError("send response", error); + LogWarnOnError(error, "send response"); FreeMessageOnError(response, error); } @@ -1570,7 +1570,8 @@ void Server::HandleUdpReceive(Message &aMessage, const Ip6::MessageInfo &aMessag { Error error = ProcessMessage(aMessage, aMessageInfo); - LogError("handle DNS message", error); + LogWarnOnError(error, "handle DNS message"); + OT_UNUSED_VARIABLE(error); } Error Server::ProcessMessage(Message &aMessage, const Ip6::MessageInfo &aMessageInfo) @@ -1813,16 +1814,6 @@ exit: } #endif -#if OT_SHOULD_LOG_AT(OT_LOG_LEVEL_WARN) -void Server::LogError(const char *aActionText, Error aError) -{ - if (aError != kErrorNone) - { - LogWarn("Failed to %s: %s", aActionText, ErrorToString(aError)); - } -} -#endif - //--------------------------------------------------------------------------------------------------------------------- // Server::Service diff --git a/src/core/net/srp_server.hpp b/src/core/net/srp_server.hpp index ac39aee7f..ebe67d8fe 100644 --- a/src/core/net/srp_server.hpp +++ b/src/core/net/srp_server.hpp @@ -1047,12 +1047,6 @@ private: void UpdateResponseCounters(Dns::Header::Response aResponseCode); void UpdateAddrResolverCacheTable(const Ip6::MessageInfo &aMessageInfo, const Host &aHost); -#if OT_SHOULD_LOG_AT(OT_LOG_LEVEL_WARN) - static void LogError(const char *aActionText, Error aError); -#else - static void LogError(const char *, Error) {} -#endif - using LeaseTimer = TimerMilliIn<Server, &Server::HandleLeaseTimer>; using UpdateTimer = TimerMilliIn<Server, &Server::HandleOutstandingUpdatesTimer>; using CompletedUpdatesTask = TaskletIn<Server, &Server::ProcessCompletedUpdates>; diff --git a/src/core/thread/dua_manager.cpp b/src/core/thread/dua_manager.cpp index 7d78879a3..9f98b0744 100644 --- a/src/core/thread/dua_manager.cpp +++ b/src/core/thread/dua_manager.cpp @@ -158,7 +158,7 @@ Error DuaManager::GenerateDomainUnicastAddressIid(void) } else { - LogWarn("Generate DUA: %s", ErrorToString(error)); + LogWarnOnError(error, "generate DUA"); } return error; @@ -548,7 +548,7 @@ exit: UpdateCheckDelay(kNoBufDelay); } - LogInfo("PerformNextRegistration: %s", ErrorToString(error)); + LogWarnOnError(error, "perform next registration"); FreeMessageOnError(message, error); } diff --git a/src/core/thread/energy_scan_server.cpp b/src/core/thread/energy_scan_server.cpp index 258580580..c79c7d849 100644 --- a/src/core/thread/energy_scan_server.cpp +++ b/src/core/thread/energy_scan_server.cpp @@ -198,7 +198,7 @@ void EnergyScanServer::SendReport(void) exit: FreeMessageOnError(mReportMessage, error); - MeshCoP::LogError("send scan results", error); + LogWarnOnError(error, "send scan results"); mReportMessage = nullptr; } diff --git a/src/core/thread/mle.cpp b/src/core/thread/mle.cpp index 9f3e58810..7ba5d8705 100644 --- a/src/core/thread/mle.cpp +++ b/src/core/thread/mle.cpp @@ -3908,13 +3908,8 @@ void Mle::InformPreviousParent(void) LogNote("Sending message to inform previous parent 0x%04x", mPreviousParentRloc); exit: - - if (error != kErrorNone) - { - LogWarn("Failed to inform previous parent: %s", ErrorToString(error)); - - FreeMessage(message); - } + LogWarnOnError(error, "inform previous parent"); + FreeMessageOnError(message, error); } #endif // OPENTHREAD_CONFIG_MLE_INFORM_PREVIOUS_PARENT_ON_REATTACH diff --git a/src/core/thread/network_data_leader_ftd.cpp b/src/core/thread/network_data_leader_ftd.cpp index 1b5d077ec..5cfc44e56 100644 --- a/src/core/thread/network_data_leader_ftd.cpp +++ b/src/core/thread/network_data_leader_ftd.cpp @@ -680,10 +680,7 @@ exit: if (!mIsClone) #endif { - if (error != kErrorNone) - { - LogNote("Failed to register network data: %s", ErrorToString(error)); - } + LogWarnOnError(error, "register network data"); } } diff --git a/src/core/thread/panid_query_server.cpp b/src/core/thread/panid_query_server.cpp index cfa139961..59dd59131 100644 --- a/src/core/thread/panid_query_server.cpp +++ b/src/core/thread/panid_query_server.cpp @@ -124,7 +124,7 @@ void PanIdQueryServer::SendConflict(void) exit: FreeMessageOnError(message, error); - MeshCoP::LogError("send panid conflict", error); + LogWarnOnError(error, "send panid conflict"); } void PanIdQueryServer::HandleTimer(void) diff --git a/src/core/utils/channel_manager.cpp b/src/core/utils/channel_manager.cpp index 794656f9a..788a077ca 100644 --- a/src/core/utils/channel_manager.cpp +++ b/src/core/utils/channel_manager.cpp @@ -387,14 +387,11 @@ Error ChannelManager::RequestChannelSelect(bool aSkipQualityCheck) LogInfo("Occupancy rate diff too small to change channel"); ExitNow(error = kErrorAbort); } - mChannelSelected = newChannel; -exit: - if (error != kErrorNone) - { - LogInfo("Request to select better channel failed, error: %s", ErrorToString(error)); - } + mChannelSelected = newChannel; +exit: + LogWarnOnError(error, "select better channel"); return error; } #endif // OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE diff --git a/src/core/utils/otns.cpp b/src/core/utils/otns.cpp index f19185fb6..a130ca3a0 100644 --- a/src/core/utils/otns.cpp +++ b/src/core/utils/otns.cpp @@ -166,11 +166,9 @@ void Otns::EmitCoapSend(const Coap::Message &aMessage, const Ip6::MessageInfo &a EmitStatus("coap=send,%d,%d,%d,%s,%s,%d", aMessage.GetMessageId(), aMessage.GetType(), aMessage.GetCode(), uriPath, aMessageInfo.GetPeerAddr().ToString().AsCString(), aMessageInfo.GetPeerPort()); + exit: - if (error != kErrorNone) - { - LogWarn("EmitCoapSend failed: %s", ErrorToString(error)); - } + LogWarnOnError(error, "EmitCoapSend"); } void Otns::EmitCoapReceive(const Coap::Message &aMessage, const Ip6::MessageInfo &aMessageInfo) @@ -183,10 +181,7 @@ void Otns::EmitCoapReceive(const Coap::Message &aMessage, const Ip6::MessageInfo EmitStatus("coap=recv,%d,%d,%d,%s,%s,%d", aMessage.GetMessageId(), aMessage.GetType(), aMessage.GetCode(), uriPath, aMessageInfo.GetPeerAddr().ToString().AsCString(), aMessageInfo.GetPeerPort()); exit: - if (error != kErrorNone) - { - LogWarn("EmitCoapReceive failed: %s", ErrorToString(error)); - } + LogWarnOnError(error, "EmitCoapReceive"); } void Otns::EmitCoapSendFailure(Error aError, Coap::Message &aMessage, const Ip6::MessageInfo &aMessageInfo) @@ -200,10 +195,7 @@ void Otns::EmitCoapSendFailure(Error aError, Coap::Message &aMessage, const Ip6: uriPath, aMessageInfo.GetPeerAddr().ToString().AsCString(), aMessageInfo.GetPeerPort(), ErrorToString(aError)); exit: - if (error != kErrorNone) - { - LogWarn("EmitCoapSendFailure failed: %s", ErrorToString(error)); - } + LogWarnOnError(error, "EmitCoapSendFailure"); } } // namespace Utils |