code: func (cfg *Config) Validate() error {
  	if len(cfg.Key) == 0 {
  		return trace.BadParameter(`etcd: missing "prefix" setting`)
  	}
  	if len(cfg.Nodes) == 0 {
  		return trace.BadParameter(`etcd: missing "peers" setting`)
  	}
  	if cfg.Insecure == false {
  		if cfg.TLSKeyFile == "" {
  			return trace.BadParameter(`etcd: missing "tls_key_file" setting`)
  		}
  		if cfg.TLSCertFile == "" {
  			return trace.BadParameter(`etcd: missing "tls_cert_file" setting`)
  		}
  		if cfg.TLSCAFile == "" {
  			return trace.BadParameter(`etcd: missing "tls_ca_file" setting`)
  		}
  	}
  	if cfg.BufferSize == 0 {
  		cfg.BufferSize = backend.DefaultBufferSize
  	}
  	if cfg.DialTimeout == 0 {
  		cfg.DialTimeout = defaults.DefaultDialTimeout
  	}
  	return nil
  }
docs: // Validate checks if all the parameters are present/valid