Documentation ¶
Overview ¶
Package handlers contains the HTTP server along with the requests and routes. All HTTP related functions are in this package.
More info on: https://github.com/statping/statping
Index ¶
- func DecodeJSON(r *http.Request, obj interface{}) error
- func ExecuteResponse(w http.ResponseWriter, r *http.Request, file string, data interface{}, ...)
- func ExportSettings() ([]byte, error)
- func GetID(r *http.Request) (int64, error)
- func Gzip(handler http.Handler) http.Handler
- func IsAdmin(r *http.Request) bool
- func IsFullAuthenticated(r *http.Request) bool
- func IsReadAuthenticated(r *http.Request) bool
- func IsUser(r *http.Request) bool
- func PrometheusComment(comment string)
- func PrometheusExportKey(keyName string, id int64, name string, value interface{})
- func PrometheusKeyValue(keyName string, value interface{})
- func PrometheusNoIDExportKey(keyName string, name string, value interface{})
- func Router() *mux.Router
- func RunHTTPServer(ip string, port int) error
- func SafeJson(val reflect.Value, scope string) map[string]interface{}
- func ScopeName(r *http.Request) string
- type Cacher
- type ExportData
- type Item
- type JwtClaim
- type Storage
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DecodeJSON ¶ added in v0.90.11
func ExecuteResponse ¶
func ExecuteResponse(w http.ResponseWriter, r *http.Request, file string, data interface{}, redirect interface{})
ExecuteResponse will render a HTTP response for the front end user
func ExportSettings ¶ added in v0.90.11
ExportSettings will export a JSON file containing all of the settings below: - Core - Notifiers - Checkins - Users - Services - Groups - Messages
func IsFullAuthenticated ¶ added in v0.80.2
IsFullAuthenticated returns true if the HTTP request is authenticated. You can set the environment variable GO_ENV=test to bypass the admin authenticate to the dashboard features.
func IsReadAuthenticated ¶ added in v0.80.2
IsReadAuthenticated will allow Read Only authentication for some routes
func PrometheusComment ¶ added in v0.90.11
func PrometheusComment(comment string)
func PrometheusExportKey ¶ added in v0.90.11
func PrometheusKeyValue ¶ added in v0.90.11
func PrometheusKeyValue(keyName string, value interface{})
func PrometheusNoIDExportKey ¶ added in v0.90.11
func Router ¶
Router returns all of the routes used in Statping. Server will use static assets if the 'assets' directory is found in the root directory.
func RunHTTPServer ¶
RunHTTPServer will start a HTTP server on a specific IP and port
Types ¶
type Cacher ¶ added in v0.79.1
type Cacher interface { Get(key string) []byte Delete(key string) Set(key string, content []byte, duration time.Duration) List() map[string]Item Lock() Unlock() StopRoutine() }
var CacheStorage Cacher
type ExportData ¶ added in v0.90.11
type ExportData struct { Core *core.Core `json:"core"` Services []services.Service `json:"services"` Messages []*messages.Message `json:"messages"` Checkins []*checkins.Checkin `json:"checkins"` Users []*users.User `json:"users"` Groups []*groups.Group `json:"groups"` Notifiers []core.AllNotifiers `json:"notifiers"` }
type Storage ¶ added in v0.79.1
type Storage struct {
// contains filtered or unexported fields
}
Storage mecanism for caching strings in memory
func NewStorage ¶ added in v0.79.1
func NewStorage() *Storage
NewStorage creates a new in memory CacheStorage
func (Storage) StopRoutine ¶ added in v0.90.11
func (s Storage) StopRoutine()