func WriteStartupLogOnServe(w io.Writer) func(TaskHost) {
	return func(h TaskHost) {
		guessScheme := netutil.ResolveScheme(h.Supervisor.manuallyTLS)
		listeningURI := netutil.ResolveURL(guessScheme, h.Supervisor.Server.Addr)
		interruptkey := "CTRL"
		if runtime.GOOS == "darwin" {
			interruptkey = "CMD"
		}
		w.Write([]byte(fmt.Sprintf("Now listening on: %s\nApplication started. Press %s+C to shut down.\n",
			listeningURI, interruptkey)))
	}
}
WriteStartupLogOnServe is a task which accepts a logger(io.Writer)
and logs the listening address
by a generated message based on the host supervisor's server and writes it to the "w".
This function should be registered on Serve.
package host
import (
	"context"
	"fmt"
	"io"
	"net/http"
	"runtime"
	"time"
	"github.com/kataras/iris/core/netutil"
)