mirror of
https://github.com/cwinfo/matterbridge.git
synced 2024-11-30 02:41:36 +00:00
42 lines
978 B
Go
42 lines
978 B
Go
// Copyright (c) 2015 Mattermost, Inc. All Rights Reserved.
|
|
// See License.txt for license information.
|
|
|
|
package einterfaces
|
|
|
|
type MetricsInterface interface {
|
|
StartServer()
|
|
StopServer()
|
|
|
|
IncrementPostCreate()
|
|
IncrementPostSentEmail()
|
|
IncrementPostSentPush()
|
|
IncrementPostBroadcast()
|
|
IncrementPostFileAttachment(count int)
|
|
|
|
IncrementHttpRequest()
|
|
IncrementHttpError()
|
|
ObserveHttpRequestDuration(elapsed float64)
|
|
|
|
IncrementLogin()
|
|
IncrementLoginFail()
|
|
|
|
IncrementEtagHitCounter(route string)
|
|
IncrementEtagMissCounter(route string)
|
|
|
|
IncrementMemCacheHitCounter(cacheName string)
|
|
IncrementMemCacheMissCounter(cacheName string)
|
|
|
|
AddMemCacheHitCounter(cacheName string, amount float64)
|
|
AddMemCacheMissCounter(cacheName string, amount float64)
|
|
}
|
|
|
|
var theMetricsInterface MetricsInterface
|
|
|
|
func RegisterMetricsInterface(newInterface MetricsInterface) {
|
|
theMetricsInterface = newInterface
|
|
}
|
|
|
|
func GetMetricsInterface() MetricsInterface {
|
|
return theMetricsInterface
|
|
}
|