Documentation ¶
Index ¶
Constants ¶
View Source
const ( SUCCESS = "SUCCESS" FAIL = "FAIL" STATUS_HEALTHY = "HEALTHY" STATUS_UNHEALTHY = "UNHEALTHY" NOT_APPLICABLE = "NA" UNHEALTHY = 1.0 HEALTHY = 0.0 REDIS_REPLICA_MISMATCH = "REDIS_STATEFULSET_REPLICAS_MISMATCH" SENTINEL_REPLICA_MISMATCH = "SENTINEL_DEPLOYMENT_REPLICAS_MISMATCH" NO_MASTER = "NO_MASTER_AVAILABLE" NUMBER_OF_MASTERS = "MASTER_COUNT_IS_NOT_ONE" SENTINEL_WRONG_MASTER = "SENTINEL_IS_CONFIGURED_WITH_WRONG_MASTER_IP" SLAVE_WRONG_MASTER = "SLAVE_IS_CONFIGURED_WITH_WRONG_MASTER_IP" SENTINEL_NOT_READY = "SENTINEL_NOT_READY" REGEX_NOT_FOUND = "SENTINEL_REGEX_NOT_FOUND" MISC = "MISC_ERROR" SENTINEL_NUMBER_IN_MEMORY_MISMATCH = "SENTINEL_NUMBER_IN_MEMORY_MISMATCH" REDIS_SLAVES_NUMBER_IN_MEMORY_MISMATCH = "REDIS_SLAVES_NUMBER_IN_MEMORY_MISMATCH" // redis connection related errors WRONG_PASSWORD_USED = "WRONG_PASSWORD_USED" NOAUTH = "AUTH_CREDENTIALS_NOT_PROVIDED" NOPERM = "REDIS_USER_DOES_NOT_HAVE_PERMISSIONS" IO_TIMEOUT = "CONNECTION_TIMEDOUT" CONNECTION_REFUSED = "CONNECTION_REFUSED" K8S_FORBIDDEN_ERR = "USER_FORBIDDEN_TO_PERFORM_ACTION" K8S_UNAUTH = "CLIENT_NOT_AUTHORISED" K8S_MISC = "MISC_ERROR_CHECK_LOGS" K8S_NOT_FOUND = "RESOURCE_NOT_FOUND" KIND_REDIS = "REDIS" KIND_SENTINEL = "SENTINEL" APPLY_REDIS_CONFIG = "APPLY_REDIS_CONFIG" APPLY_EXTERNAL_MASTER = "APPLY_EXT_MASTER_ALL" APPLY_SENTINEL_CONFIG = "APPLY_SENTINEL_CONFIG" MONITOR_REDIS_WITH_PORT = "SET_SENTINEL_TO_MONITOR_REDIS_WITH_GIVEN_PORT" RESET_SENTINEL = "RESET_ALL_SENTINEL_CONFIG" GET_NUM_SENTINELS_IN_MEM = "GET_NUMBER_OF_SENTINELS_IN_MEMORY" // `info sentinel` command on a sentinel machine > grep sentinel GET_NUM_REDIS_SLAVES_IN_MEM = "GET_NUMBER_OF_REDIS_SLAVES_IN_MEMORY" // `info sentinel` command on a sentinel machine > grep slaves GET_SLAVE_OF = "GET_MASTER_OF_GIVEN_SLAVE_INSTANCE" IS_MASTER = "CHECK_IF_INSTANCE_IS_MASTER" MAKE_MASTER = "MAKE_INSTANCE_AS_MASTER" MAKE_SLAVE_OF = "MAKE_SLAVE_OF_GIVEN_MASTER_INSTANCE" GET_SENTINEL_MONITOR = "SENTINEL_GET_MASTER_INSTANCE" CHECK_SENTINEL_QUORUM = "SENTINEL_CKQUORUM" SLAVE_IS_READY = "CHECK_IF_SLAVE_IS_READY" )
variables for setting various indicator labels
Variables ¶
View Source
var Dummy = &dummy{ MetricsRecorder: koopercontroller.DummyMetricsRecorder, }
Dummy is a handy instnce of a dummy instrumenter, most of the times it will be used on tests.
Functions ¶
This section is empty.
Types ¶
type Recorder ¶ added in v1.1.0
type Recorder interface { koopercontroller.MetricsRecorder // ClusterOK metrics SetClusterOK(namespace string, name string) SetClusterError(namespace string, name string) DeleteCluster(namespace string, name string) // Indicate redis instances being monitored RecordEnsureOperation(objectNamespace string, objectName string, objectKind string, resourceName string, status string) RecordRedisCheck(namespace string, resource string, indicator string, instance string, status string) RecordSentinelCheck(namespace string, resource string, indicator string, instance string, status string) RecordK8sOperation(namespace string, kind string, name string, operation string, status string, err string) RecordRedisOperation(kind string, IP string, operation string, status string, err string) }
Instrumenter is the interface that will collect the metrics and has ability to send/expose those metrics.
func NewRecorder ¶ added in v1.1.0
func NewRecorder(namespace string, reg prometheus.Registerer) Recorder
NewPrometheusMetrics returns a new PromMetrics object.
Click to show internal directories.
Click to hide internal directories.