whole_func_string: function init(opts) {
      opts = opts || {};
      if (!opts.flushIntervalSeconds && opts.flushIntervalSeconds !== 0) {
          opts.flushIntervalSeconds = 15;
      }
      sharedLogger = new loggers.BufferedMetricsLogger(opts);
  }
func_code_string: function init(opts) {
      opts = opts || {};
      if (!opts.flushIntervalSeconds && opts.flushIntervalSeconds !== 0) {
          opts.flushIntervalSeconds = 15;
      }
      sharedLogger = new loggers.BufferedMetricsLogger(opts);
  }
func_documentation_string: opts may include:  - apiKey: DataDog API key - appKey: DataDog APP key - host: Default host for all reported metrics - prefix: Default key prefix for all metrics - defaultTags: Common tags for all metrics - flushIntervalSeconds:  You can also use it to override (dependency-inject) the aggregator and reporter instance, which is useful for testing:  - aggregator: an Aggregator instance - reporter: a Reporter instance