code: func (c *Controller) syncToStdout(key string) error {
  	obj, exists, err := c.indexer.GetByKey(key)
  	if err != nil {
  		klog.Errorf("Fetching object with key %s from store failed with %v", key, err)
  		return err
  	}
  
  	if !exists {
  		// Below we will warm up our cache with a Pod, so that we will see a delete for one pod
  		fmt.Printf("Pod %s does not exist anymore\n", key)
  	} else {
  		// Note that you also have to check the uid if you have a local controlled resource, which
  		// is dependent on the actual instance, to detect that a Pod was recreated with the same name
  		fmt.Printf("Sync/Add/Update for Pod %s\n", obj.(*v1.Pod).GetName())
  	}
  	return nil
  }
docs: // syncToStdout is the business logic of the controller. In this controller it simply prints
  // information about the pod to stdout. In case an error happened, it has to simply return the error.
  // The retry logic should not be part of the business logic.