首頁>技術>

簡介

redis_exporter就是為了收集redis服務指標的應用。

下載執行
wget -c -t 100 https://github.com/oliver006/redis_exporter/releases/download/v1.15.0/redis_exporter-v1.15.0.linux-amd64.tar.gztar zxvf   redis_exporter-v1.15.0.linux-amd64.tar.gzcd redis_exporter-v1.15.0.linux-amd64./redis_exporter
INFO[0000] Redis Metrics Exporter v1.15.0    build date: 2020-12-27-18:57:05    sha1: 43ec65f7a22041e64ec557291c36500d04c6f6b0    Go: go1.15.6    GOOS: linux    GOARCH: amd64 INFO[0000] Providing metrics at :9121/metrics   

預設埠是9121,預設連結是redis://localhost:6379

如果設定了密碼,就需要在執行的時候,指定密碼

./redis_exporter -redis.addr 'redis://localhost:6379'   -redis.password  redispassword
檢視更多引數
./redis_exporter -h
Usage of ./redis_exporter:  -check-key-groups string        Comma separated list of lua regex for grouping keys  -check-key-groups-batch-size int        Check key groups batch size hint for the underlying SCAN (default 10000)  -check-keys string        Comma separated list of key-patterns to export value and length/size, searched for with SCAN  -check-single-keys string        Comma separated list of single keys to export value and length/size  -check-single-streams string        Comma separated list of single streams to export info about streams, groups and consumers  -check-streams string        Comma separated list of stream-patterns to export info about streams, groups and consumers, searched for with SCAN  -config-command string        What to use for the CONFIG command (default "CONFIG")  -connection-timeout string        Timeout for connection to Redis instance (default "15s")  -count-keys string        Comma separated list of patterns to count, eg: 'db3=sessions:*'. Warning: The exporter runs SCAN to count the keys.  -debug        Output verbose debug information  -export-client-list        Whether to scrape Client List specific metrics  -export-client-port        Whether to include the client's port when exporting the client list. Warning: including the port increases the number of metrics generated and will make your Prometheus server take up more memory  -include-system-metrics        Whether to include system metrics like e.g. redis_total_system_memory_bytes  -is-tile38        Whether to scrape Tile38 specific metrics  -log-format string        Log format, valid options are txt and json (default "txt")  -max-distinct-key-groups int        The maximum number of distinct key groups with the most memory utilization to present as distinct metrics per database, the leftover key groups will be aggregated in the 'overflow' bucket (default 100)  -namespace string        Namespace for metrics (default "redis")  -ping-on-connect        Whether to ping the redis instance after connecting  -redis-only-metrics        Whether to also export go runtime metrics  -redis.addr string        Address of the Redis instance to scrape (default "redis://localhost:6379")  -redis.password string        Password of the Redis instance to scrape  -redis.user string        User name to use for authentication (Redis ACL for Redis 6.0 and newer)  -script string        Path to Lua Redis script for collecting extra metrics  -set-client-name        Whether to set client name to redis_exporter (default true)  -skip-tls-verification        Whether to to skip TLS verification  -tls-ca-cert-file string        Name of the CA certificate file (including full path) if the server requires TLS client authentication  -tls-client-cert-file string        Name of the client certificate file (including full path) if the server requires TLS client authentication  -tls-client-key-file string        Name of the client key file (including full path) if the server requires TLS client authentication  -tls-server-cert-file string        Name of the server certificate file (including full path) if the web interface and telemetry should use TLS  -tls-server-key-file string        Name of the server key file (including full path) if the web interface and telemetry should use TLS  -version        Show version information and exit  -web.listen-address string        Address to listen on for web interface and telemetry. (default ":9121")  -web.telemetry-path string        Path under which to expose metrics. (default "/metrics")
部署指令碼
#!/bin/bashVERSION="1.15.0"wget  -t 100  -c  https://github.com/oliver006/redis_exporter/releases/download/v${VERSION}/redis_exporter-${VERSION}.linux-amd64.tar.gzif [ ! -e redis_exporter-${VERSION}.linux-amd64.tar.gz ]then    echo "安裝包下載失敗"    exit 1fitar xvfz redis_exporter-${VERSION}.linux-amd64.tar.gz -C /opt/cd /optln -s redis_exporter-${VERSION}.linux-amd64  redis_exportercat > /etc/systemd/system/redis_exporter.service <<EOF[Unit]Description=redis_exporterAfter=network.target[Service]Type=simpleWorkingDirectory=/opt/redis_exporterExecStart=/opt/redis_exporter/redis_exporter -redis.addr redis://localhost:6379   -redis.password  redispasswordLimitNOFILE=65536PrivateTmp=trueRestartSec=2StartLimitInterval=0Restart=always[Install]WantedBy=multi-user.targetEOFsystemctl daemon-reloadsystemctl enable redis_exportersystemctl start redis_exporter
prometheus配置

新增下面的job

  - job_name: 'redis'    # metrics_path defaults to '/metrics'    # scheme defaults to 'http'.    static_configs:    - targets: ['localhost:9121']

配置好以後,reload一下prometheus就可以載入

kill -HUP [promethues_pid]
指標展示

指標可以透過prometheus的WebUI進行檢視

http://[promethe server ip]:9090

如果需要畫圖,可以直接使用grafana,有人已經配置好了圖形可以透過grafana官方下的dashboard搜尋redis_exporter,配置好prometheus資料來源,直接匯入grafana就可以直接展示了。

40
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • 圖解資料結構:線性表