mirror of
https://github.com/meshtastic/firmware.git
synced 2026-09-17 00:52:45 -04:00
logging: audit log strings for terseness, reclaiming ~6.8 KB of string data (#11374)
* logging: strip redundant punctuation, level prefixes, and 'successfully' from log strings The logger already appends a newline and prints the level tag, so trailing '.', '!', '...', literal \n, and 'Error:'/'Warning:' prefixes inside format strings are wasted flash bytes. Same for 'successfully' (the affirmative form already implies it). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LBiZc9sfPrH1MZ2L3Fxgt1 * logging: tighten verbose log strings in modules, radio, platform, and system code Rewrite wordy log messages to terser equivalents - drop filler words (articles, 'attempting', 'due to', 'please'), use 'Can't X'/'X failed' phrasing, and abbreviate where the codebase already does (config, init, msg, BT). Format specifiers and argument lists are unchanged; distinctive greppable tokens are preserved. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LBiZc9sfPrH1MZ2L3Fxgt1 * logging: tighten verbose log strings in telemetry sensors and GPS Same terseness pass: drop filler, 'Can't X'/'X failed' phrasing, common abbreviations (temp, msg). Specifiers, arguments, and sensor-name prefixes unchanged. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LBiZc9sfPrH1MZ2L3Fxgt1 * logging: tighten verbose log strings in mesh core Same terseness pass over NodeDB, Router, MeshService, PhoneAPI, RadioInterface, NextHopRouter, and PacketHistory: 'X failed'/'Can't X' phrasing, imperative verbs, dropped filler. Specifiers and arguments unchanged; duplicate literals kept identical to preserve linker string dedup. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LBiZc9sfPrH1MZ2L3Fxgt1 * logging: 'Unable to/Could not/Cannot' -> "Can't" in log strings Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LBiZc9sfPrH1MZ2L3Fxgt1 * logging: clang-format rewrap after string shortening Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LBiZc9sfPrH1MZ2L3Fxgt1 * logging: restore boot-logo trailing newline and progress-dot strings The terseness pass over-trimmed: the Meshtastic ASCII boot logo kept its blank line via a trailing \n, and three bare "." progress ticks were reduced to empty strings. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LBiZc9sfPrH1MZ2L3Fxgt1 * Update src/mesh/wifi/WiFiAPClient.cpp Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * logging: address review feedback on the terseness audit - Node/packet IDs use the repo's 0x%08x convention in NextHopRouter, NodeDB, AdminModule and CannedMessageModule. The sibling log in each if/else pair is converted too, so a pair isn't split across two formats. next_hop stays 0x%x - it's the last-byte relay hint, not a NodeNum. - RTC: the read-path and set-path "not found" warnings were byte-identical, so the linker deduped them and the log couldn't say which one fired. Split into "RTC read:" / "RTC set:". (The four sites live in mutually exclusive #ifdef branches, so the RTC family was never ambiguous.) - SCD4X getAmbientPressure()/setAmbientPressure() logged "altitude", and SCD30 getASC() logged "Can't send command" for a read. Both now name the operation they actually perform. - LOG_ERROR already carries the level: ". Error: %u" -> ", rc=%u" (matching the existing rc=%d house style) and "Error executing X()" -> "X() failed". - Typos and wording: "OTA partiton. (Reason" -> "OTA partition (reason", "CST3530 not response ~" -> "CST3530 no response", "Packet received with to: of 0" -> "to=0", HostMetrics "Error decoding" -> "Can't decode", and the dangling ": " on the NextHopRouter retransmission line. Printf specifier sequences are byte-identical on all 37 touched lines apart from the 6 deliberate %x/%u -> %08x node-ID widenings, all on uint32_t args. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> --------- Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
This commit is contained in:
88 files changed
+717
-733
No files matched your search
@@ -198,7 +198,7 @@ bool MeshBeaconModule::reconfigureForBeaconTX(RadioInterface *iface, meshtastic_
|
||||
// transmit on it; the radio driver drops the packet outright (see RadioLibInterface,
|
||||
// beaconTxConfigInvalid) rather than letting it fall through onto the current config.
|
||||
if (beaconTxConfigInvalid(p)) {
|
||||
LOG_DEBUG("Beacon: target preset %d/region %d invalid (or ham mismatch), not switching", targetPreset, targetRegion);
|
||||
LOG_DEBUG("Beacon: target preset %d/region %d invalid (or ham mismatch), skip", targetPreset, targetRegion);
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -228,7 +228,7 @@ bool MeshBeaconModule::reconfigureForBeaconTX(RadioInterface *iface, meshtastic_
|
||||
|
||||
} else if ((!p || !getTargetRadioSettings(p, nullptr, nullptr)) && radioSwitched) {
|
||||
|
||||
LOG_INFO("Beacon: restoring radio config after beacon TX");
|
||||
LOG_INFO("Beacon: restore radio config after TX");
|
||||
config.lora.modem_preset = originalModemPreset;
|
||||
config.lora.channel_num = originalLoraChannel;
|
||||
config.lora.region = originalRegion;
|
||||
@@ -315,7 +315,7 @@ void MeshBeaconBroadcastModule::sendBeacon()
|
||||
(bcfg.broadcast_offer_region != meshtastic_Config_LoRaConfig_RegionCode_UNSET);
|
||||
|
||||
if (!hasText && !hasRadioContent) {
|
||||
LOG_DEBUG("Beacon: nothing to send (empty message, no offer), skipping");
|
||||
LOG_DEBUG("Beacon: empty msg, no offer, skip");
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -375,7 +375,7 @@ void MeshBeaconBroadcastModule::sendBeacon()
|
||||
offerOnly.offer_region = bcfg.broadcast_offer_region;
|
||||
offerSize = (pb_size_t)pb_encode_to_bytes(offerBuf, sizeof(offerBuf), &meshtastic_MeshBeacon_msg, &offerOnly);
|
||||
if (offerSize == 0)
|
||||
LOG_WARN("Beacon: offer encode failed, skipping offer packet(s)");
|
||||
LOG_WARN("Beacon: offer encode failed, skip");
|
||||
}
|
||||
if (sendCombined && payloadCacheDirty)
|
||||
rebuildCache();
|
||||
@@ -429,8 +429,7 @@ void MeshBeaconBroadcastModule::sendBeacon()
|
||||
tgt.slot = config.lora.channel_num;
|
||||
if (bt.has_channel_index) {
|
||||
if (bt.channel_index >= (uint32_t)channels.getNumChannels()) {
|
||||
LOG_WARN("Beacon: target %d channel_index %u out of range, using default channel for preset", ti,
|
||||
bt.channel_index);
|
||||
LOG_WARN("Beacon: target %d channel_index %u out of range, use preset default", ti, bt.channel_index);
|
||||
} else {
|
||||
const meshtastic_ChannelSettings &cs = channels.getByIndex(bt.channel_index).settings;
|
||||
if (cs.name[0] != '\0' || cs.psk.size > 0) {
|
||||
@@ -438,8 +437,7 @@ void MeshBeaconBroadcastModule::sendBeacon()
|
||||
tgt.channel = cs;
|
||||
tgt.slot = cs.channel_num;
|
||||
} else {
|
||||
LOG_DEBUG("Beacon: target %d channel_index %u is a blank slot, using default channel for preset", ti,
|
||||
bt.channel_index);
|
||||
LOG_DEBUG("Beacon: target %d channel_index %u blank, use preset default", ti, bt.channel_index);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -463,7 +461,7 @@ void MeshBeaconBroadcastModule::sendBeacon()
|
||||
}
|
||||
}
|
||||
if (duplicate) {
|
||||
LOG_DEBUG("Beacon: target %d duplicates an earlier target's radio config, skipping", ti);
|
||||
LOG_DEBUG("Beacon: target %d dup radio config, skip", ti);
|
||||
continue;
|
||||
}
|
||||
sent[sentCount] = tgt;
|
||||
@@ -487,7 +485,7 @@ void MeshBeaconBroadcastModule::sendBeacon()
|
||||
if (sendOfferOnly && offerSize > 0) {
|
||||
meshtastic_MeshPacket *pA = allocDataPacket();
|
||||
if (!pA) {
|
||||
LOG_WARN("Beacon: failed to allocate split-A packet (target %d)", ti);
|
||||
LOG_WARN("Beacon: split-A alloc failed (target %d)", ti);
|
||||
return;
|
||||
}
|
||||
memcpy(pA->decoded.payload.bytes, offerBuf, offerSize);
|
||||
@@ -501,7 +499,7 @@ void MeshBeaconBroadcastModule::sendBeacon()
|
||||
if (sendTextOnly) {
|
||||
meshtastic_MeshPacket *pB = allocDataPacket();
|
||||
if (!pB) {
|
||||
LOG_WARN("Beacon: failed to allocate split-B packet (target %d)", ti);
|
||||
LOG_WARN("Beacon: split-B alloc failed (target %d)", ti);
|
||||
return;
|
||||
}
|
||||
pb_size_t msgLen = (pb_size_t)strnlen(bcfg.broadcast_message, sizeof(bcfg.broadcast_message) - 1);
|
||||
|
||||
Reference in new issue
Block a user