Skip to content
This repository has been archived by the owner on Oct 23, 2024. It is now read-only.

Latest commit

 

History

History
104 lines (84 loc) · 7.2 KB

prometheus-go.md

File metadata and controls

104 lines (84 loc) · 7.2 KB

prometheus/go

Monitor Type: prometheus/go (Source)

Accepts Endpoints: Yes

Multiple Instances Allowed: Yes

Overview

This monitor scrapes Prometheus Go collector and Prometheus process collector metrics from a Prometheus exporter and sends them to SignalFx. It is a wrapper around the prometheus-exporter monitor that provides a restricted but expandable set of metrics.

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: prometheus/go
   ...  # 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)

Metrics

These are the metrics available for this monitor. This monitor emits all metrics by default; however, none are categorized as container/host -- they are all custom.

  • go_gc_duration_seconds (cumulative)
    A summary of the GC invocation durations
  • go_gc_duration_seconds_bucket (cumulative)
    A summary of the GC invocation durations
  • go_gc_duration_seconds_count (cumulative)
    A summary of the GC invocation durations
  • go_goroutines (gauge)
    Number of goroutines that currently exist
  • go_info (gauge)
    Information about the Go environment
  • go_memstats_alloc_bytes (gauge)
    Number of bytes allocated and still in use
  • go_memstats_alloc_bytes_total (cumulative)
    Total number of bytes allocated, even if freed
  • go_memstats_buck_hash_sys_bytes (gauge)
    Number of bytes used by the profiling bucket hash table
  • go_memstats_frees_total (cumulative)
    Total number of frees
  • go_memstats_gc_cpu_fraction (gauge)
    The fraction of this program's available CPU time used by the GC since the program started
  • go_memstats_gc_sys_bytes (gauge)
    Number of bytes used for garbage collection system metadata
  • go_memstats_heap_alloc_bytes (gauge)
    Number of heap bytes allocated and still in use
  • go_memstats_heap_idle_bytes (gauge)
    Number of heap bytes waiting to be used
  • go_memstats_heap_inuse_bytes (gauge)
    Number of heap bytes that are in use
  • go_memstats_heap_objects (gauge)
    Number of allocated objects
  • go_memstats_heap_released_bytes (gauge)
    Number of heap bytes released to OS
  • go_memstats_heap_sys_bytes (gauge)
    Number of heap bytes obtained from system
  • go_memstats_last_gc_time_seconds (gauge)
    Number of seconds since 1970 of last garbage collection
  • go_memstats_lookups_total (cumulative)
    Total number of pointer lookups
  • go_memstats_mallocs_total (cumulative)
    Total number of mallocs
  • go_memstats_mcache_inuse_bytes (gauge)
    Number of bytes in use by mcache structures
  • go_memstats_mcache_sys_bytes (gauge)
    Number of bytes used for mcache structures obtained from system
  • go_memstats_mspan_inuse_bytes (gauge)
    Number of bytes in use by mspan structures
  • go_memstats_mspan_sys_bytes (gauge)
    Number of bytes used for mspan structures obtained from system
  • go_memstats_next_gc_bytes (gauge)
    Number of heap bytes when next garbage collection will take place
  • go_memstats_other_sys_bytes (gauge)
    Number of bytes used for other system allocations
  • go_memstats_stack_inuse_bytes (gauge)
    Number of bytes in use by the stack allocator
  • go_memstats_stack_sys_bytes (gauge)
    Number of bytes obtained from system for stack allocator
  • go_memstats_sys_bytes (gauge)
    Number of bytes obtained from system
  • go_threads (gauge)
    Number of OS threads created
  • process_cpu_seconds_total (cumulative)
    Total user and system CPU time spent in seconds
  • process_max_fds (gauge)
    Maximum number of open file descriptors
  • process_open_fds (gauge)
    Number of open file descriptors
  • process_resident_memory_bytes (gauge)
    Resident memory size in bytes
  • process_start_time_seconds (gauge)
    Start time of the process since unix epoch in seconds
  • process_virtual_memory_bytes (gauge)
    Virtual memory size in bytes
  • process_virtual_memory_max_bytes (gauge)
    Maximum amount of virtual memory available in bytes The agent does not do any built-in filtering of metrics coming out of this monitor.