aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAbtin Keshavarzian <abtink@google.com>2024-04-05 09:07:19 -0700
committerGitHub <noreply@github.com>2024-04-05 09:07:19 -0700
commit223935bf0c6bd02675efcb56254d21abaa1fb530 (patch)
tree588f3fb43307b29e8a94412858dc9229d2c9e61c
parent65bc830edb26f6a2ba2509f8a490f8bd20b8bddb (diff)
downloadopenthread-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.
-rw-r--r--src/core/common/log.cpp10
-rw-r--r--src/core/common/log.hpp20
-rw-r--r--src/core/meshcop/border_agent.cpp26
-rw-r--r--src/core/meshcop/border_agent.hpp6
-rw-r--r--src/core/meshcop/commissioner.cpp13
-rw-r--r--src/core/meshcop/dataset_manager.cpp6
-rw-r--r--src/core/meshcop/joiner.cpp6
-rw-r--r--src/core/meshcop/joiner_router.cpp2
-rw-r--r--src/core/meshcop/meshcop.cpp10
-rw-r--r--src/core/meshcop/meshcop.hpp16
-rw-r--r--src/core/meshcop/meshcop_leader.cpp6
-rw-r--r--src/core/meshcop/tcat_agent.cpp12
-rw-r--r--src/core/meshcop/tcat_agent.hpp6
-rw-r--r--src/core/net/dhcp6_client.cpp2
-rw-r--r--src/core/net/dhcp6_server.cpp7
-rw-r--r--src/core/net/dnssd_server.cpp2
-rw-r--r--src/core/net/ip6.cpp15
-rw-r--r--src/core/net/sntp_client.cpp2
-rw-r--r--src/core/net/srp_server.cpp33
-rw-r--r--src/core/net/srp_server.hpp6
-rw-r--r--src/core/thread/dua_manager.cpp4
-rw-r--r--src/core/thread/energy_scan_server.cpp2
-rw-r--r--src/core/thread/mle.cpp9
-rw-r--r--src/core/thread/network_data_leader_ftd.cpp5
-rw-r--r--src/core/thread/panid_query_server.cpp2
-rw-r--r--src/core/utils/channel_manager.cpp9
-rw-r--r--src/core/utils/otns.cpp16
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