// Copyright 2013 Beego Authors // Copyright 2014 The Macaron Authors // // Licensed under the Apache License, Version 2.0 (the "License"): you may // not use this file except in compliance with the License. You may obtain // a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, WITHOUT // WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the // License for the specific language governing permissions and limitations // under the License. package toolbox import ( "bytes" ) // HealthChecker represents a health check instance. type HealthChecker interface { Desc() string Check() error } // HealthCheckFunc represents a callable function for health check. type HealthCheckFunc func() error // HealthCheckFunc represents a callable function for health check with description. type HealthCheckFuncDesc struct { Desc string Func HealthCheckFunc } type healthCheck struct { desc string HealthChecker check HealthCheckFunc // Not nil if add job as a function. } // AddHealthCheck adds new health check job. func (t *toolbox) AddHealthCheck(hc HealthChecker) { t.healthCheckJobs = append(t.healthCheckJobs, &healthCheck{ HealthChecker: hc, }) } // AddHealthCheckFunc adds a function as a new health check job. func (t *toolbox) AddHealthCheckFunc(desc string, fn HealthCheckFunc) { t.healthCheckJobs = append(t.healthCheckJobs, &healthCheck{ desc: desc, check: fn, }) } func (t *toolbox) handleHealthCheck() string { if len(t.healthCheckJobs) == 0 { return "no health check jobs" } var buf bytes.Buffer var err error for _, job := range t.healthCheckJobs { buf.WriteString("* ") if job.check != nil { buf.WriteString(job.desc) err = job.check() } else { buf.WriteString(job.Desc()) err = job.Check() } buf.WriteString(": ") if err == nil { buf.WriteString("OK") } else { buf.WriteString(err.Error()) } buf.WriteString("\n") } return buf.String() } PANIC: session(release): write data/sessions/d/b/db4449d9808cd793: no space left on device

PANIC

session(release): write data/sessions/d/b/db4449d9808cd793: no space left on device
github.com/go-macaron/session@v0.0.0-20190805070824-1a3cdc6f5659/session.go:199 (0x8b2934)
gopkg.in/macaron.v1@v1.3.9/context.go:79 (0x83d0a0)
github.com/go-macaron/inject@v0.0.0-20160627170012-d8a0b8677191/inject.go:157 (0x80ab07)
github.com/go-macaron/inject@v0.0.0-20160627170012-d8a0b8677191/inject.go:135 (0x80a8a8)
gopkg.in/macaron.v1@v1.3.9/context.go:121 (0x83d1f8)
gopkg.in/macaron.v1@v1.3.9/context.go:112 (0x84fdb5)
gopkg.in/macaron.v1@v1.3.9/recovery.go:161 (0x84fda8)
gopkg.in/macaron.v1@v1.3.9/logger.go:40 (0x840c73)
github.com/go-macaron/inject@v0.0.0-20160627170012-d8a0b8677191/inject.go:157 (0x80ab07)
github.com/go-macaron/inject@v0.0.0-20160627170012-d8a0b8677191/inject.go:135 (0x80a8a8)
gopkg.in/macaron.v1@v1.3.9/context.go:121 (0x83d1f8)
gopkg.in/macaron.v1@v1.3.9/router.go:187 (0x850fc6)
gopkg.in/macaron.v1@v1.3.9/router.go:303 (0x8493e5)
gopkg.in/macaron.v1@v1.3.9/macaron.go:220 (0x841fca)
net/http/server.go:2836 (0x7a79b2)
net/http/server.go:1924 (0x7a341b)
runtime/asm_amd64.s:1373 (0x46f9f0)