code: func NewPlugin(opts ...Option) *Plugin {
  	p := &Plugin{}
  
  	p.PluginName = "kvdb"
  	p.ServiceLabel = &servicelabel.DefaultPlugin
  	p.ResyncOrch = &resync.DefaultPlugin
  
  	for _, o := range opts {
  		o(p)
  	}
  
  	name := p.String()
  	if p.Deps.KvPlugin != nil {
  		name = fmt.Sprintf("%s-%s", name, p.Deps.KvPlugin.String())
  	}
  	p.Deps.SetName(name + "-datasync")
  
  	if p.Deps.Log == nil {
  		p.Deps.Log = logging.ForPlugin(p.String())
  	}
  
  	return p
  }
docs: // NewPlugin creates a new Plugin with the provided Options.