code: @SuppressFBWarnings(value = "LI_LAZY_INIT_STATIC", justification = "This race condition is fine, as explained in the comment below.")
  	public static Handling log() {
  		if (log == null) {
  			// There is an acceptable race condition here - log might get set multiple times.
  			// This would happen if multiple threads called log() at the same time
  			// during initialization, and this is likely to actually happen in practice.
  			// 
  			// Because DurianPlugins guarantees that its methods will have the exact same
  			// return value for the duration of the library's runtime existence, the only
  			// adverse symptom of this race condition is that there will temporarily be
  			// multiple instances of Errors which are wrapping the same Consumer<Throwable>.
  			//
  			// It is important for this method to be fast, so it's better to accept
  			// that suppress() might return different Errors instances which are wrapping
  			// the same actual Consumer<Throwable>, rather than to incur the cost of some
  			// type of synchronization.
  			log = createHandling(DurianPlugins.get(Plugins.Log.class, Plugins::defaultLog));
  		}
  		return log;
  	}
docs: Logs any exceptions.
  <p>
  By default, log() calls Throwable.printStackTrace(). To modify this behavior
  in your application, call DurianPlugins.set(Errors.Plugins.Log.class, error -> myCustomLog(error));
  
  @see DurianPlugins
  @see Errors.Plugins.OnErrorThrowAssertion