Log: one line for whatever is dropped, a level the build lacks is reported, no false alarm for a 1.x handler
Audit of the paths that drop or refuse something. registerEvent() dropped an eleventh handler and a second one for the same name without a word: the name now gets the new handler, an eleventh name and a call without a name or a function print an error. A device that cannot be announced printed two lines, one without its id; it prints one. setLogLevel() above ALEX2ESP_LOG_MAX prints an error that names the build flag. "the handler sent no answer" is an error for a handler of onDirective() only: a 1.x handler may answer from a later loop(), its silence is a line at DEBUG. getDevice() returning nullptr and printMemoryInfo() are documented; keywords.txt has the 2.0 names and loses three that were removed. basicLight: static RAM 30,520 B, flash 333,989 B (+600); ALEX2ESP_LOG_MAX=0 30,496 / 327,953, =3 30,520 / 334,477; five examples, log0 and log3 build with 0 warnings. Host tests: 135 (dispatch 11 -> 16). Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
parent
77156ffbe5
commit
6e15226ce0
10 changed files with 216 additions and 26 deletions
|
|
@ -13,6 +13,14 @@ Print *AlexaLog::output = &Serial;
|
|||
void AlexaLog::setLevel(AlexaLogLevel newLevel)
|
||||
{
|
||||
level = newLevel;
|
||||
|
||||
// The lines above the ceiling are not in the program. Without this line a sketch that asks for them waits for
|
||||
// output that cannot come.
|
||||
if (static_cast<int>(newLevel) > ALEX2ESP_LOG_MAX)
|
||||
{
|
||||
ALEX2ESP_LOGE("log level %d asked for, the lines of this build end at level %d: build with -DALEX2ESP_LOG_MAX=%d",
|
||||
static_cast<int>(newLevel), ALEX2ESP_LOG_MAX, static_cast<int>(newLevel));
|
||||
}
|
||||
}
|
||||
|
||||
AlexaLogLevel AlexaLog::getLevel()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue