Documentation ¶
Index ¶
- Constants
- func CollectDebugGCStats(r metrics.Collectry, d time.Duration)
- func CollectRuntimeMemStats(r metrics.Collectry, d time.Duration)
- func Counter(name string, count int64)
- func Gauge(name string, value int64)
- func GaugeFloat64(name string, value float64)
- func GetCounter(name string) int64
- func GetGauge(name string) float64
- func GetHistogram(name string) int64
- func GetHistogram50th(name string) float64
- func GetHistogram75th(name string) float64
- func GetHistogram95th(name string) float64
- func GetHistogram999th(name string) float64
- func GetHistogram99th(name string) float64
- func GetHistogramMax(name string) int64
- func GetHistogramMean(name string) float64
- func GetHistogramMin(name string) int64
- func GetHistogramStdDev(name string) float64
- func GetHistogramSum(name string) int64
- func GetMeter(name string) int64
- func GetMeterRate1(name string) float64
- func GetMeterRate15(name string) float64
- func GetMeterRate5(name string) float64
- func GetMeterRateMean(name string) float64
- func GetMeterRateStep(name string) float64
- func Histogram(name string, count int64)
- func InfluxDBJson(w http.ResponseWriter, data interface{})
- func InfluxDBString(w http.ResponseWriter, msg string)
- func Meter(name string, count int64)
- func RenderJson(w http.ResponseWriter, data interface{})
- func RenderString(w http.ResponseWriter, msg string)
- func SetCounter(name string, count int64)
- func SetDefaultSetting(setting BeegoHttpSettings)
- func SetGauge(name string, value float64)
- func SetHistogram(name string, count int64)
- func SetMeter(name string, count int64)
- func TimeoutDialer(cTimeout time.Duration, rwTimeout time.Duration) func(net, addr string) (c net.Conn, err error)
- type BeegoHttpRequest
- func (b *BeegoHttpRequest) Body(data interface{}) *BeegoHttpRequest
- func (b *BeegoHttpRequest) Bytes() ([]byte, error)
- func (b *BeegoHttpRequest) Debug(isdebug bool) *BeegoHttpRequest
- func (b *BeegoHttpRequest) Header(key, value string) *BeegoHttpRequest
- func (b *BeegoHttpRequest) Param(key, value string) *BeegoHttpRequest
- func (b *BeegoHttpRequest) PostFile(formname, filename string) *BeegoHttpRequest
- func (b *BeegoHttpRequest) Response() (*http.Response, error)
- func (b *BeegoHttpRequest) SetBasicAuth(username, password string) *BeegoHttpRequest
- func (b *BeegoHttpRequest) SetCookie(cookie *http.Cookie) *BeegoHttpRequest
- func (b *BeegoHttpRequest) SetEnableCookie(enable bool) *BeegoHttpRequest
- func (b *BeegoHttpRequest) SetProtocolVersion(vers string) *BeegoHttpRequest
- func (b *BeegoHttpRequest) SetProxy(proxy func(*http.Request) (*url.URL, error)) *BeegoHttpRequest
- func (b *BeegoHttpRequest) SetTLSClientConfig(config *tls.Config) *BeegoHttpRequest
- func (b *BeegoHttpRequest) SetTimeout(connectTimeout, readWriteTimeout time.Duration) *BeegoHttpRequest
- func (b *BeegoHttpRequest) SetTransport(transport http.RoundTripper) *BeegoHttpRequest
- func (b *BeegoHttpRequest) SetUserAgent(useragent string) *BeegoHttpRequest
- func (b *BeegoHttpRequest) Setting(setting BeegoHttpSettings) *BeegoHttpRequest
- func (b *BeegoHttpRequest) String() (string, error)
- func (b *BeegoHttpRequest) ToFile(filename string) error
- func (b *BeegoHttpRequest) ToJson(v interface{}) error
- func (b *BeegoHttpRequest) ToXml(v interface{}) error
- type BeegoHttpSettings
- type DebugMetrics
- type GlobalConfig
- type HttpConfig
- type InfluxDBResponse
- type InfluxDBx
- type MetricValue
- type OpenFalconx
- type Point
- type PushConfig
- type Response
- type RuntimeMetrics
Constants ¶
const (
// Gauge const
GAUGE = "GAUGE"
)
const (
// VERSION goappmonitor
VERSION = "0.0.2"
)
Variables ¶
This section is empty.
Functions ¶
func CollectDebugGCStats ¶
Collect denug gc stats and it will run a goroutine.
func CollectRuntimeMemStats ¶
Collect runtime memeory-data:CollectRuntimeMemStats.
func GetHistogramStdDev ¶
GetHistogramStdDev from name.
func SetDefaultSetting ¶
func SetDefaultSetting(setting BeegoHttpSettings)
SetDefaultSetting Overwrite default settings
Types ¶
type BeegoHttpRequest ¶
type BeegoHttpRequest struct {
// contains filtered or unexported fields
}
BeegoHttpRequest provides more useful methods for requesting one url than http.Request.
func Delete ¶
func Delete(url string) *BeegoHttpRequest
Delete returns *BeegoHttpRequest DELETE method.
func Head ¶
func Head(url string) *BeegoHttpRequest
Head returns *BeegoHttpRequest with HEAD method.
func Post ¶
func Post(url string) *BeegoHttpRequest
Post returns *BeegoHttpRequest with POST method.
func (*BeegoHttpRequest) Body ¶
func (b *BeegoHttpRequest) Body(data interface{}) *BeegoHttpRequest
Body adds request raw body. it supports string and []byte.
func (*BeegoHttpRequest) Bytes ¶
func (b *BeegoHttpRequest) Bytes() ([]byte, error)
Bytes returns the body []byte in response. it calls Response inner.
func (*BeegoHttpRequest) Debug ¶
func (b *BeegoHttpRequest) Debug(isdebug bool) *BeegoHttpRequest
Debug sets show debug or not when executing request.
func (*BeegoHttpRequest) Header ¶
func (b *BeegoHttpRequest) Header(key, value string) *BeegoHttpRequest
Header add header item string in request.
func (*BeegoHttpRequest) Param ¶
func (b *BeegoHttpRequest) Param(key, value string) *BeegoHttpRequest
Param adds query param in to request. params build query string as ?key1=value1&key2=value2...
func (*BeegoHttpRequest) PostFile ¶
func (b *BeegoHttpRequest) PostFile(formname, filename string) *BeegoHttpRequest
func (*BeegoHttpRequest) Response ¶
func (b *BeegoHttpRequest) Response() (*http.Response, error)
Response executes request client gets response mannually.
func (*BeegoHttpRequest) SetBasicAuth ¶
func (b *BeegoHttpRequest) SetBasicAuth(username, password string) *BeegoHttpRequest
SetBasicAuth sets the request's Authorization header to use HTTP Basic Authentication with the provided username and password.
func (*BeegoHttpRequest) SetCookie ¶
func (b *BeegoHttpRequest) SetCookie(cookie *http.Cookie) *BeegoHttpRequest
SetCookie add cookie into request.
func (*BeegoHttpRequest) SetEnableCookie ¶
func (b *BeegoHttpRequest) SetEnableCookie(enable bool) *BeegoHttpRequest
SetEnableCookie sets enable/disable cookiejar
func (*BeegoHttpRequest) SetProtocolVersion ¶
func (b *BeegoHttpRequest) SetProtocolVersion(vers string) *BeegoHttpRequest
Set the protocol version for incoming requests. Client requests always use HTTP/1.1.
func (*BeegoHttpRequest) SetProxy ¶
func (b *BeegoHttpRequest) SetProxy(proxy func(*http.Request) (*url.URL, error)) *BeegoHttpRequest
Set http proxy example:
func(req *http.Request) (*url.URL, error) { u, _ := url.ParseRequestURI("http://127.0.0.1:8118") return u, nil }
func (*BeegoHttpRequest) SetTLSClientConfig ¶
func (b *BeegoHttpRequest) SetTLSClientConfig(config *tls.Config) *BeegoHttpRequest
SetTLSClientConfig sets tls connection configurations if visiting https url.
func (*BeegoHttpRequest) SetTimeout ¶
func (b *BeegoHttpRequest) SetTimeout(connectTimeout, readWriteTimeout time.Duration) *BeegoHttpRequest
SetTimeout sets connect time out and read-write time out for BeegoRequest.
func (*BeegoHttpRequest) SetTransport ¶
func (b *BeegoHttpRequest) SetTransport(transport http.RoundTripper) *BeegoHttpRequest
Set transport to
func (*BeegoHttpRequest) SetUserAgent ¶
func (b *BeegoHttpRequest) SetUserAgent(useragent string) *BeegoHttpRequest
SetUserAgent sets User-Agent header field
func (*BeegoHttpRequest) Setting ¶
func (b *BeegoHttpRequest) Setting(setting BeegoHttpSettings) *BeegoHttpRequest
Setting Change request settings
func (*BeegoHttpRequest) String ¶
func (b *BeegoHttpRequest) String() (string, error)
String returns the body string in response. it calls Response inner.
func (*BeegoHttpRequest) ToFile ¶
func (b *BeegoHttpRequest) ToFile(filename string) error
ToFile saves the body data in response to one file. it calls Response inner.
func (*BeegoHttpRequest) ToJson ¶
func (b *BeegoHttpRequest) ToJson(v interface{}) error
ToJson returns the map that marshals from the body bytes as json in response . it calls Response inner.
func (*BeegoHttpRequest) ToXml ¶
func (b *BeegoHttpRequest) ToXml(v interface{}) error
ToXml returns the map that marshals from the body bytes as xml in response . it calls Response inner.
type BeegoHttpSettings ¶
type BeegoHttpSettings struct { ShowDebug bool UserAgent string ConnectTimeout time.Duration ReadWriteTimeout time.Duration TlsClientConfig *tls.Config Proxy func(*http.Request) (*url.URL, error) Transport http.RoundTripper EnableCookie bool }
BeegoHttpSettings struct
type DebugMetrics ¶
type DebugMetrics struct { GCStats struct { LastGC metrics.Gauge `json:"lastGC"` NumGC metrics.Gauge `json:"numGC"` Pause metrics.Histogram `json:"pause"` PauseTotal metrics.Gauge `json:"pauseTotal"` } ReadGCStats metrics.Histogram `json:"readGCStats"` }
DebugMetrics ,Monitoring index of application in debug environment.
type GlobalConfig ¶
type GlobalConfig struct { Debug bool `json:"debug"` Hostname string `json:"hostname"` Tags string `json:"tags"` Step int64 `json:"step"` Bases []string `json:"bases"` Push *PushConfig `json:"push"` Http *HttpConfig `json:"http"` }
GlobalConfig of goappmonitor, and you can config it in cfg.json.
type HttpConfig ¶
HttpConfig about whether open local server and server address.
type InfluxDBResponse ¶
type MetricValue ¶
type MetricValue struct { Endpoint string `json:"endpoint"` Metric string `json:"metric"` Value interface{} `json:"value"` Step int64 `json:"step"` Type string `json:"counterType"` Tags string `json:"tags"` Timestamp int64 `json:"timestamp"` }
Data MetricValue struct.
type OpenFalconx ¶
type PushConfig ¶
type PushConfig struct { OpenFalcon OpenFalconx `json:"open-falcon"` InfluxDB InfluxDBx `json:"influxDB"` }
PushConfig of pushing address and switcher.
type Response ¶
type Response struct { Msg string `json:"msg"` Data interface{} `json:"data"` }
Response http struct
type RuntimeMetrics ¶
type RuntimeMetrics struct { MemStats struct { Alloc metrics.Gauge `json:"alloc"` BuckHashSys metrics.Gauge `json:"buckHashSys"` DebugGC metrics.Gauge `json:"debugGC"` EnableGC metrics.Gauge `json:"enableGC"` Frees metrics.Gauge `json:"frees"` HeapAlloc metrics.Gauge `json:"heapAlloc"` HeapIdle metrics.Gauge `json:"heapIdle"` HeapInuse metrics.Gauge `json:"heapInuse"` HeapObjects metrics.Gauge `json:"heapObjects"` HeapReleased metrics.Gauge `json:"heapReleased"` HeapSys metrics.Gauge `json:"heapSys"` LastGC metrics.Gauge `json:"lastGC"` Lookups metrics.Gauge `json:"lookups"` Mallocs metrics.Gauge `json:"mallocs"` MCacheInuse metrics.Gauge `json:"mCacheInuse"` MCacheSys metrics.Gauge `json:"mCacheSys"` MSpanInuse metrics.Gauge `json:"mSpanInuse"` MSpanSys metrics.Gauge `json:"mSpanSys"` NextGC metrics.Gauge `json:"nextGC"` NumGC metrics.Gauge `json:"numGC"` GCCPUFraction metrics.GaugeFloat64 `json:"gCCPUFraction"` PauseNs metrics.Histogram `json:"pauseNs"` PauseTotalNs metrics.Gauge `json:"pauseTotalNs"` StackInuse metrics.Gauge `json:"stackInuse"` StackSys metrics.Gauge `json:"stackSys"` Sys metrics.Gauge `json:"sys"` TotalAlloc metrics.Gauge `json:"totalAlloc"` } NumCgoCall metrics.Gauge `json:"numCgoCall"` NumGoroutine metrics.Gauge `json:"numGoroutine"` ReadMemStats metrics.Histogram `json:"readMemStats"` }
RuntimeMetrics ,Monitoring index of application in production environment.