Monitor Type: gitlab-gitaly
(Source)
Accepts Endpoints: Yes
Multiple Instances Allowed: Yes
This monitor scrapes the Gitlab Gitaly GRPC server. See the Gitlab monitor for more information.
To activate this monitor in the Smart Agent, add the following to your agent config:
monitors: # All monitor config goes under this key
- type: gitlab-gitaly
... # Additional config
For a list of monitor options that are common to all monitors, see Common Configuration.
Config option | Required | Type | Description |
---|---|---|---|
httpTimeout |
no | int64 |
HTTP timeout duration for both read and writes. This should be a duration string that is accepted by https://golang.org/pkg/time/#ParseDuration (default: 10s ) |
username |
no | string |
Basic Auth username to use on each request, if any. |
password |
no | string |
Basic Auth password to use on each request, if any. |
useHTTPS |
no | bool |
If true, the agent will connect to the server using HTTPS instead of plain HTTP. (default: false ) |
httpHeaders |
no | map of strings |
A map of HTTP header names to values. Comma separated multiple values for the same message-header is supported. |
skipVerify |
no | bool |
If useHTTPS is true and this option is also true, the exporter's TLS cert will not be verified. (default: false ) |
sniServerName |
no | string |
If useHTTPS is true and skipVerify is true, the sniServerName is used to verify the hostname on the returned certificates. It is also included in the client's handshake to support virtual hosting unless it is an IP address. |
caCertPath |
no | string |
Path to the CA cert that has signed the TLS cert, unnecessary if skipVerify is set to false. |
clientCertPath |
no | string |
Path to the client TLS cert to use for TLS required connections |
clientKeyPath |
no | string |
Path to the client TLS key to use for TLS required connections |
host |
yes | string |
Host of the exporter |
port |
yes | integer |
Port of the exporter |
useServiceAccount |
no | bool |
Use pod service account to authenticate. (default: false ) |
metricPath |
no | string |
Path to the metrics endpoint on the exporter server, usually /metrics (the default). (default: /metrics ) |
sendAllMetrics |
no | bool |
Send all the metrics that come out of the Prometheus exporter without any filtering. This option has no effect when using the prometheus exporter monitor directly since there is no built-in filtering, only when embedding it in other monitors. (default: false ) |
These are the metrics available for this monitor. Metrics that are categorized as container/host (default) are in bold and italics in the list below.
gitaly_authentications
(cumulative)
Counts of of Gitaly request authentication attemptsgitaly_connections_total
(cumulative)
Total number of connections accepted by this Gitaly processgitaly_service_client_requests
(cumulative)
Counter of client requests received by client, call_site, auth version, and response codegitaly_smarthttp_deepen_count
(cumulative)
Number of git-upload-pack requests processed that contained a 'deepen' messagegitaly_spawn_timeout_count
(cumulative)
Number of process spawn timeoutsgitaly_supervisor_health_checks
(cumulative)
Count of Gitaly supervisor health checksgitaly_supervisor_rss_bytes
(gauge)
Resident set size of supervised processes, in bytesgitaly_supervisor_starts_total
(cumulative)
Number of starts of supervised processesgitlab_build_info
(gauge)
Current build info for this GitLab Servicegrpc_server_handled_total
(cumulative)
Total number of RPCs completed on the server, regardless of success or failuregrpc_server_msg_received_total
(cumulative)
Total number of RPC stream messages received on the servergrpc_server_msg_sent_total
(cumulative)
Total number of gRPC stream messages sent by the servergrpc_server_started_total
(cumulative)
Total number of RPCs started on the server
To emit metrics that are not default, you can add those metrics in the
generic monitor-level extraMetrics
config option. Metrics that are derived
from specific configuration options that do not appear in the above list of
metrics do not need to be added to extraMetrics
.
To see a list of metrics that will be emitted you can run agent-status monitors
after configuring this monitor in a running agent instance.