Log EL SYNCING status at debug instead of warn#706
Conversation
|
Hey @rocker-zhang, currently those |
Thanks for taking a look, @sauliusgrigaitis — and you're right that we shouldn't lose the signal entirely. The pain point in #217 isn't the warning itself, it's that on a long EL sync this line repeats once per forkchoiceUpdated / newPayload for the entire duration, which both drowns out other WARNs in journalctl -p warning and trains operators to ignore the level. A middle ground that keeps the signal but kills the noise — happy to revise the PR along any of these, whichever you prefer:
|
|
@sauliusgrigaitis any preference among the three options above? I'll push the change once you pick one. |
While the execution layer is syncing,
engine_forkchoiceUpdatedandengine_newPayloadreturn SYNCING, which is a normal and expected status. Grandine continues optimistically and control flow is unchanged, so logging it atwarnis just noise during EL sync (the subject of #217).This downgrades both SYNCING branches in
execution_service.rsfromwarn_with_peers!todebug_with_peers!. The INVALID and call-failure branches stay atwarn. The detail is still available viaGRANDINE_LOG=eth1_api=debug(the default filter iseth1_api=info).Re #217.
Scope note: #217 also mentions a
request_with_fallbackwarning ineth1_api/http_api.rsthat fires on a JSON-RPC-32001"Receipt not available" error during EL sync. I left that path unchanged on purpose: it is a generic RPC-error handler that also marks the endpoint offline and increments error metrics, and there is no EL-sync-state signal at that layer — downgrading it via error-code/string matching would hide genuine endpoint failures. A proper fix would plumb EL-sync state into that layer; happy to follow up separately, so I've left #217 open.(Saw @DarkLord017 expressed interest earlier, but the issue was unassigned with no follow-up — happy to coordinate, and the deferred
request_with_fallbackcase is up for grabs.)