Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
 
Fusl 53842ced4b add prometheus exports for redis vor 2 Jahren
..
.gitignore add prometheus exports for redis vor 2 Jahren
LICENSE add prometheus exports for redis vor 2 Jahren
Makefile add prometheus exports for redis vor 2 Jahren
README.md add prometheus exports for redis vor 2 Jahren
hook.go add prometheus exports for redis vor 2 Jahren
options.go add prometheus exports for redis vor 2 Jahren

README.md

go-redis-prometheus

go-redis hook that exports Prometheus metrics.

Installation

go get github.com/globocom/go-redis-prometheus

Usage

package main

import (
    "github.com/go-redis/redis/v8"
    "github.com/globocom/go-redis-prometheus"
)

func main() {
    hook := redisprom.NewHook(
        redisprom.WithInstanceName("cache"),
        redisprom.WithNamespace("my_namespace"),
        redisprom.WithDurationBuckets([]float64{.001, .005, .01}),
    )

    client := redis.NewClient(&redis.Options{
        Addr:     "localhost:6379",
        Password: "",
    })
    client.AddHook(hook)

    // run redis commands...
}

Exported metrics

The hook exports the following metrics:

  • Single commands (not pipelined):
    • Histogram of commands: redis_single_commands_bucket{instance="main",command="get"}
    • Counter of errors: redis_single_errors{instance="main",command="get"}
  • Pipelined commands:
    • Counter of commands: redis_pipelined_commands{instance="main",command="get"}
    • Counter of errors: redis_pipelined_errors{instance="main",command="get"}

Note on pipelines

It isn’t possible to measure the duration of individual pipelined commands, but the duration of the pipeline itself is calculated and exported as a pseudo-command called “pipeline” under the single command metric.