refactor strict logging

Don't throw an exception, just remember that we broke strict mode,
and cause the unit test to fail if that happens.