Metrics, tuning, and scaling
To provide more detailed data on the performance and health of Puppet services via the services status API, the level
flag can be set to debug
; this will return metrics. For example, to return the metrics for Puppet Server and filter them using JQ, the following commands can be run:
cert="$(puppet config print hostcert)" cacert="$(puppet config print localcacert)" key="$(puppet config print hostprivkey)" uri="https://$(puppet config print server):8140/status/v1/services/server?level=debug" curl --cert "$cert" --cacert "$cacert" --key "$key" "$uri" | jq ".status.experimental"
This would output data such as the following metric for the puppet-v3-catalog
endpoint:
{ "http-metrics": [ { "route-id": "puppet-v3-catalog-/*/", ...