func (c *Conn) Subscribe() error {
	c.sysconn.BusObject().Call("org.freedesktop.DBus.AddMatch", 0,
		"type='signal',interface='org.freedesktop.systemd1.Manager',member='UnitNew'")
	c.sysconn.BusObject().Call("org.freedesktop.DBus.AddMatch", 0,
		"type='signal',interface='org.freedesktop.DBus.Properties',member='PropertiesChanged'")
	err := c.sysobj.Call("org.freedesktop.systemd1.Manager.Subscribe", 0).Store()
	if err != nil {
		c.sysconn.Close()
		return err
	}
	return nil
}
Subscribe sets up this connection to subscribe to all systemd dbus events.
This is required before calling SubscribeUnits. When the connection closes
systemd will automatically stop sending signals so there is no need to
explicitly call Unsubscribe().
package dbus
import (
	"errors"
	"time"
	"github.com/guelfey/go.dbus"
)
const (
	cleanIgnoreInterval = int64(10 * time.Second)
	ignoreInterval      = int64(30 * time.Millisecond)
)