예제 #1
0
파일: main.go 프로젝트: jango2015/go
func Index(t miniprofiler.Timer, w http.ResponseWriter, r *http.Request) {
	db, _ := sql.Open("sqlite3", ":memory:")
	db.ExecTimer(t, "create table x(a, b, c)")
	db.ExecTimer(t, "insert into x (1, 2, 4), (3, 5, 6)")
	db.QueryTimer(t, "select * from x")
	t.Step("redissss", func(t miniprofiler.Timer) {
		conn, _ := redis.Dial("tcp", ":6379")
		defer conn.Close()
		conn.DoTimer(t, "set", "tes t", "value")
		conn.SendTimer(t, "get", "test t")
	})
	fmt.Fprintf(w, `<html><body>%v</body></html>`, t.Includes())
}
예제 #2
0
파일: web.go 프로젝트: nicollet/bosun
func Index(t miniprofiler.Timer, w http.ResponseWriter, r *http.Request) {
	if r.URL.Path == "/graph" {
		r.ParseForm()
		if _, present := r.Form["png"]; present {
			if _, err := Graph(t, w, r); err != nil {
				serveError(w, err)
			}
			return
		}
	}
	r.Header.Set(miniprofilerHeader, "true")
	// Set some global settings for the UI to know about. This saves us from
	// having to make an HTTP call to see what features should be enabled
	// in the UI
	openTSDBVersion := opentsdb.Version{0, 0}
	if schedule.SystemConf.GetTSDBContext() != nil {
		openTSDBVersion = schedule.SystemConf.GetTSDBContext().Version()
	}
	settings, err := json.Marshal(appSetings{
		schedule.SystemConf.SaveEnabled(),
		schedule.SystemConf.AnnotateEnabled(),
		schedule.GetQuiet(),
		openTSDBVersion,
	})
	if err != nil {
		serveError(w, err)
		return
	}
	err = indexTemplate().Execute(w, indexVariables{
		t.Includes(),
		string(settings),
	})
	if err != nil {
		serveError(w, err)
	}
}