Skip to content
EN

‹ Culture 3.14

Method · Operations

The difference between logging an action and observing its result

A log says the system did something; only an independent signal says that something happened.


For a long time our traces answered a single question: did the system execute what it was supposed to? It is a necessary question, and it is not the one that matters.

A process can complete all of its steps, receive a correct response from the API and have changed nothing in the target system. The write went into a queue that was discarded, or it was applied to a record another process reverted minutes later. The log says everything went well.

We now distinguish three states. Executed: the action was sent and did not fail. Confirmed: a later read against the source shows the change. Observed: an independent signal — another system, a person, a sensor — shows the expected effect.

Most processes reach the second state. Few reach the third, because the signal almost always has to be designed on purpose and that costs something.

What we have adopted is not to disguise the difference. When there is no independent signal, the trace says “confirmed” and not “completed”, and the limit is written into the system’s documentation. It is less satisfying in a demonstration and far more useful six months later, when somebody asks how many of those correct executions actually produced an effect.

Write to the team

Search · Type to search. Esc to close.

Search results →

Ask the bot

This is Ask 3.14, an automatic assistant. It answers only with the public content of this website — solutions, capabilities, systems, questions, readings and laboratory work —, shows the content it has used and distinguishes what the website does not yet allow it to establish. It is not a person from the team and it does not know your case; to speak with someone, write to the team.

Automatic assistant limited to the public content of 3.14; it may abstain. To speak with a person, write to the team.

Write to the team →