code: func GetCurrentServiceConfig(c context.Context) (*ServiceConfig, error) {
  	// This maker function is used to do the actual fetch of the ServiceConfig
  	// from datastore.  It is called if the ServiceConfig is not in proc cache.
  	item, err := serviceCfgCache.Fetch(c, func(interface{}) (interface{}, time.Duration, error) {
  		msg := ServiceConfig{ID: ServiceConfigID}
  		err := datastore.Get(c, &msg)
  		if err != nil {
  			return nil, time.Minute, err
  		}
  		logging.Infof(c, "loaded service config from datastore")
  		return msg, time.Minute, nil
  	})
  	if err != nil {
  		return nil, fmt.Errorf("failed to get service config: %s", err.Error())
  	}
  	if msg, ok := item.(ServiceConfig); ok {
  		logging.Infof(c, "loaded config entry from %s", msg.LastUpdated.Format(time.RFC3339))
  		return &msg, nil
  	}
  	return nil, fmt.Errorf("could not load service config %#v", item)
  }
docs: // GetCurrentServiceConfig gets the service config for the instance from either
  // process cache or datastore cache.