code: def probe_to_graphsrv(probe):
      
  
      config = probe.config
  
      # manual group set up via `group` config key
  
      if "group" in config:
          source, group = config["group"].split(".")
          group_field = config.get("group_field", "host")
          group_value = config[group_field]
          graphsrv.group.add(source, group, {group_value:{group_field:group_value}}, **config)
          return
  
      # automatic group setup for fping
      # FIXME: this should be somehow more dynamic
  
      for k, v in list(config.items()):
          if isinstance(v, dict) and "hosts" in v:
              r = {}
              for host in v.get("hosts"):
                  if isinstance(host, dict):
                      r[host["host"]] = host
                  else:
                      r[host] = {"host":host}
              graphsrv.group.add(probe.name, k, r, **v)
docs: takes a probe instance and generates
      a graphsrv data group for it using the
      probe's config