FAILURE MAP
← Case archive

FA-10286 / Observability / Open access

Structured log emission policy: Disabled loggers still emit events · case 01

Disabled loggers still emit events.

Verified by executionVariant 1 · 8 checks per implementationDownload source bundle ↓JSON ↗

ROOT CAUSE

The implementation substitutes and True and for and enabled and, so disabled loggers still emit events.

VERIFIED REPAIR

Require the logger to be enabled.

Unsuccessful approach: The attempted repair substitutes and not enabled and. Fixture 1 still yields False instead of True.

Case contract

Emit a log only when severity reaches the threshold, logger is enabled, sampling selected it, it is not suppressed, and all required fields exist. False-valued fields count as present.

Why this case matters

An offline model of structured log emission policy, suitable for testing build and release tooling without external services.

1 / The failure

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(event, threshold, enabled, sampled, suppressed, required):
    return event['level'] >= threshold and True and sampled and not suppressed and set(required) <= set(event)
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('fixture 1', solve({'level': 2, 'message': 'x'}, 2, True, True, False, ['message']), True)
check('fixture 2', solve({'level': 1, 'message': 'x'}, 2, True, True, False, ['message']), False)
check('fixture 3', solve({'level': 3, 'message': 'x'}, 2, True, True, False, ['message']), True)
check('fixture 4', solve({'level': 2, 'message': 'x'}, 2, False, True, False, ['message']), False)
check('fixture 5', solve({'level': 2, 'message': 'x'}, 2, True, False, False, ['message']), False)
check('fixture 6', solve({'level': 2, 'message': 'x'}, 2, True, True, True, ['message']), False)
check('fixture 7', solve({'level': 2}, 2, True, True, False, ['message']), False)
check('fixture 8', solve({'level': 2, 'message': False}, 2, True, True, False, ['message']), True)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
fixture 1TrueTruePassed
fixture 2FalseFalsePassed
fixture 3TrueTruePassed
fixture 4TrueFalseFailed
fixture 5FalseFalsePassed
fixture 6FalseFalsePassed
fixture 7FalseFalsePassed
fixture 8TrueTruePassed

SHA-256 / cb3ec525f0eb5b1b89030faab7d2cd7f6b49326509716a612aa5477a1440264f

2 / The unsuccessful fix

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(event, threshold, enabled, sampled, suppressed, required):
    return event['level'] >= threshold and not enabled and sampled and not suppressed and set(required) <= set(event)
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('fixture 1', solve({'level': 2, 'message': 'x'}, 2, True, True, False, ['message']), True)
check('fixture 2', solve({'level': 1, 'message': 'x'}, 2, True, True, False, ['message']), False)
check('fixture 3', solve({'level': 3, 'message': 'x'}, 2, True, True, False, ['message']), True)
check('fixture 4', solve({'level': 2, 'message': 'x'}, 2, False, True, False, ['message']), False)
check('fixture 5', solve({'level': 2, 'message': 'x'}, 2, True, False, False, ['message']), False)
check('fixture 6', solve({'level': 2, 'message': 'x'}, 2, True, True, True, ['message']), False)
check('fixture 7', solve({'level': 2}, 2, True, True, False, ['message']), False)
check('fixture 8', solve({'level': 2, 'message': False}, 2, True, True, False, ['message']), True)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
fixture 1FalseTrueFailed
fixture 2FalseFalsePassed
fixture 3FalseTrueFailed
fixture 4TrueFalseFailed
fixture 5FalseFalsePassed
fixture 6FalseFalsePassed
fixture 7FalseFalsePassed
fixture 8FalseTrueFailed

SHA-256 / 80099ca9a293010c45912e82933d8c3bd3070b278088cc0028978f709af46bb6

3 / The verified repair

Exit 0
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(event, threshold, enabled, sampled, suppressed, required):
    return event['level'] >= threshold and enabled and sampled and not suppressed and set(required) <= set(event)
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('fixture 1', solve({'level': 2, 'message': 'x'}, 2, True, True, False, ['message']), True)
check('fixture 2', solve({'level': 1, 'message': 'x'}, 2, True, True, False, ['message']), False)
check('fixture 3', solve({'level': 3, 'message': 'x'}, 2, True, True, False, ['message']), True)
check('fixture 4', solve({'level': 2, 'message': 'x'}, 2, False, True, False, ['message']), False)
check('fixture 5', solve({'level': 2, 'message': 'x'}, 2, True, False, False, ['message']), False)
check('fixture 6', solve({'level': 2, 'message': 'x'}, 2, True, True, True, ['message']), False)
check('fixture 7', solve({'level': 2}, 2, True, True, False, ['message']), False)
check('fixture 8', solve({'level': 2, 'message': False}, 2, True, True, False, ['message']), True)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
fixture 1TrueTruePassed
fixture 2FalseFalsePassed
fixture 3TrueTruePassed
fixture 4FalseFalsePassed
fixture 5FalseFalsePassed
fixture 6FalseFalsePassed
fixture 7FalseFalsePassed
fixture 8TrueTruePassed

SHA-256 / f4bbb946152e17c26a856a860be6e984a70a96eaa3cc9b26f45ef7745c0f0652

Verification & scope

This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.

Observations recorded using Python 3.12.14 at 2026-09-29T14:38:37.618300+00:00.

Case digest / 2b8d505ada8c693bd58210c0d4264d78173eb29c2ad94c554e995ae92c1bb112