Skip to content

Latest commit

 

History

History
94 lines (66 loc) · 5.06 KB

gitlab-gitaly.md

File metadata and controls

94 lines (66 loc) · 5.06 KB

gitlab-gitaly

Monitor Type: gitlab-gitaly (Source)

Accepts Endpoints: Yes

Multiple Instances Allowed: Yes

Overview

This monitor scrapes the Gitlab Gitaly GRPC server. See the Gitlab monitor for more information.

Configuration

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
host yes string Host of the exporter
port yes integer Port of the exporter
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 exporter using HTTPS instead of plain HTTP. (default: false)
skipVerify no bool If useHTTPS is true and this option is also true, the exporter's TLS cert will not be verified. (default: false)
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)

Metrics

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 attempts
  • gitaly_connections_total (cumulative)
    Total number of connections accepted by this Gitaly process
  • gitaly_service_client_requests (cumulative)
    Counter of client requests received by client, call_site, auth version, and response code
  • gitaly_smarthttp_deepen_count (cumulative)
    Number of git-upload-pack requests processed that contained a 'deepen' message
  • gitaly_spawn_timeout_count (cumulative)
    Number of process spawn timeouts
  • gitaly_supervisor_health_checks (cumulative)
    Count of Gitaly supervisor health checks
  • gitaly_supervisor_rss_bytes (gauge)
    Resident set size of supervised processes, in bytes
  • gitaly_supervisor_starts_total (cumulative)
    Number of starts of supervised processes
  • gitlab_build_info (gauge)
    Current build info for this GitLab Service
  • grpc_server_handled_total (cumulative)
    Total number of RPCs completed on the server, regardless of success or failure
  • grpc_server_msg_received_total (cumulative)
    Total number of RPC stream messages received on the server
  • grpc_server_msg_sent_total (cumulative)
    Total number of gRPC stream messages sent by the server
  • grpc_server_started_total (cumulative)
    Total number of RPCs started on the server

Non-default metrics (version 4.7.0+)

The following information applies to the agent version 4.7.0+ that has enableBuiltInFiltering: true set on the top level of the agent config.

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.

Legacy non-default metrics (version < 4.7.0)

The following information only applies to agent version older than 4.7.0. If you have a newer agent and have set enableBuiltInFiltering: true at the top level of your agent config, see the section above. See upgrade instructions in Old-style whitelist filtering.

If you have a reference to the whitelist.json in your agent's top-level metricsToExclude config option, and you want to emit metrics that are not in that whitelist, then you need to add an item to the top-level metricsToInclude config option to override that whitelist (see Inclusion filtering. Or you can just copy the whitelist.json, modify it, and reference that in metricsToExclude.