code: function (config, loggerContext) {
      config = config || {};
      Layout.call(this, config, loggerContext);
  
      this.compact = config.compact || false;
      this.depth = config.depth || 2;
      this.messageAsObject = config.messageAsObject || false;
    }
docs: Lays out a log event as a JSON string
  
  Configuration parameters that may be used:
  - compact: to serialize compact JSON structures. the serialization rather
  produces a "prettyprint" JSON structure by default.
  - messageAsObject: to serialize the message as an object structure. The
  message gets serialized as a string by default.
  - depth: the depth to with message parameters should be serialized. Only
  useful when "messageAsObject" is set.
  
  @constructor
  @extends {Layout}