Skip to content
mricher edited this page Aug 25, 2016 · 3 revisions

zenscaler is not a monitoring tool: in the best case, probe data should be sourced from a monitoring server and not directly from the target to avoid duplication. Still, some interesting implementations are built-in for convenience and as implementation examples.

Probes are defined under the rules:rule-name part and identified by a tree-like string, such as probe-type.specific-required.optional-parameter. A probe can require other arguments: these should be set at the same level.

Built-in probes are listed below. Context for provided examples is as follow:

rules:
  rule-custom-name:
    [example]
    [other mandatory parameters]

If a mandatory parameter is sourced by the probe, it will be listed in the example.

Swarm

Prefixed by swarm. Uses the docker API to query the socket specified by endpoint. Use the label provided by docker-compose.

  • swarm.cpu_average: average CPU usage across all service containers
    • target (shared parameter) specify the name of the service as tagged in the orchestrator under the com.docker.compose.service label.
probe: "swarm.cpu_average"
target: "nginx"

Prometheus compatible client

Prefixed by prom. Can source information from Prometheus-compatible clients such as node-exporter. Format details can be found in the Prometheus documentation.

  • prom.http
    • url: target to query for metrics
    • key: string of key+modifiers
probe: "prom.http"
url: "http://localhost:9100/metrics"
key: 'node_cpu{cpu="cpu0",mode="idle"}'

HAproxy

Prefixed by hap. Subtyped with frontend, backend or servers. See complete documentation for more information.

  • hap.frontend
  • hap.backend
  • hap.server
probe: "hap.backend.rtime" # provide the average response time in ms over the 1024 last requests
ha-socket: "haproxy.stats" # path to the stats socket

Command

Prefixed by cmd. Allow the execution of any binary or script and parse the result as a float.

  • cmd.execute: execute a binary and parse the output as a float64
probe: "cmd.execute"
cmd: "./traefik_rt.sh"
Clone this wiki locally