Skip to content
This repository was archived by the owner on Aug 17, 2023. It is now read-only.

brokenpip3/zulip-exporter

Repository files navigation

Zulip prom exporter

Usage

Environment variable

Environment Variable Description Default Required
ZULIP_EMAIL Zulip email from zuliprc
ZULIP_API_KEY Zulip api-key from zuliprc
ZULIP_SITE URL where your Zulip server is located
HPORT Http port to listen on 9863
SLEEP Time to wait in seconds beetween metric grabbing cycles 120

Docker compose example

  zulip-exporter:
    container_name: zulip-exporter
    restart: unless-stopped
    image: quay.io/brokenpip3/zulip-exporter:0.0.1
    labels:
      io.prometheus.scrape: true
      io.prometheus.port: 9863
      io.prometheus.path: /metrics
    env_file:
      - .env-zulip
    ports:
      - "9863"

Kubernetes

see example

Metrics

  • Server info: zulip_server

  • Users info: zulip_user_*

  • Streams info: zulip_stream_*

Prometheus rules examples

see rules examples

Grafana dashboard

image

see example dashboard

Todo

  • When this zulip/zulip#17038 will be merged check if new metrics can be obtained from administrator privilegies.

Questions

Q: Why you did this?

A: 🤷‍♂️