netdata/netdata

View on GitHub
src/collectors/python.d.plugin/squid/metadata.yaml

Summary

Maintainability
Test Coverage
plugin_name: python.d.plugin
modules:
  - meta:
      plugin_name: python.d.plugin
      module_name: squid
      monitored_instance:
        name: Squid
        link: "http://www.squid-cache.org/"
        categories:
          - data-collection.web-servers-and-web-proxies
        icon_filename: "squid.png"
      related_resources:
        integrations:
          list: []
      info_provided_to_referring_integrations:
        description: ""
      keywords:
        - squid
        - web delivery
        - squid caching proxy
      most_popular: false
    overview:
      data_collection:
        metrics_description: |
          This collector monitors statistics about the Squid Clients and Servers, like bandwidth and requests.
        method_description: "It collects metrics from the endpoint where Squid exposes its `counters` data."
      supported_platforms:
        include: []
        exclude: []
      multi_instance: true
      additional_permissions:
        description: ""
      default_behavior:
        auto_detection:
          description: "By default, this collector will try to autodetect where Squid presents its `counters` data, by trying various configurations."
        limits:
          description: ""
        performance_impact:
          description: ""
    setup:
      prerequisites:
        list:
          - title: Configure Squid's Cache Manager
            description: |
              Take a look at [Squid's official documentation](https://wiki.squid-cache.org/Features/CacheManager/Index#controlling-access-to-the-cache-manager) on how to configure access to the Cache Manager.
      configuration:
        file:
          name: "python.d/squid.conf"
        options:
          description: |
            There are 2 sections:
            
            * Global variables
            * One or more JOBS that can define multiple different instances to monitor.
            
            The following options can be defined globally: priority, penalty, autodetection_retry, update_every, but can also be defined per JOB to override the global values.
            
            Additionally, the following collapsed table contains all the options that can be configured inside a JOB definition.
            
            Every configuration JOB starts with a `job_name` value which will appear in the dashboard, unless a `name` parameter is specified.
          folding:
            title: "Config options"
            enabled: true
          list:
            - name: update_every
              description: Sets the default data collection frequency.
              default_value: 1
              required: false
            - name: priority
              description: Controls the order of charts at the netdata dashboard.
              default_value: 60000
              required: false
            - name: autodetection_retry
              description: Sets the job re-check interval in seconds.
              default_value: 0
              required: false
            - name: penalty
              description: Indicates whether to apply penalty to update_every in case of failures.
              default_value: yes
              required: false
            - name: name
              description: >
                Job name. This value will overwrite the `job_name` value. JOBS with the same name are mutually exclusive. Only one of them will be allowed running at any time. This allows autodetection to try several alternatives and pick the one that works.
              default_value: "local"
              required: false
            - name: host
              description: The host to connect to.
              default_value: ""
              required: true
            - name: port
              description: The port to connect to.
              default_value: ""
              required: true
            - name: request
              description: The URL to request from Squid.
              default_value: ""
              required: true
        examples:
          folding:
            enabled: true
            title: "Config"
          list:
            - name: Basic
              description: A basic configuration example.
              folding:
                enabled: false
              config: |
                example_job_name:
                  name: 'local'
                  host: 'localhost'
                  port: 3128
                  request: 'cache_object://localhost:3128/counters'
            - name: Multi-instance
              description: |
                > **Note**: When you define multiple jobs, their names must be unique.
                
                Collecting metrics from local and remote instances.
              config: |
                local_job:
                  name: 'local'
                  host: '127.0.0.1'
                  port: 3128
                  request: 'cache_object://127.0.0.1:3128/counters'
                
                remote_job:
                  name: 'remote'
                  host: '192.0.2.1'
                  port: 3128
                  request: 'cache_object://192.0.2.1:3128/counters'
    troubleshooting:
      problems:
        list: []
    alerts: []
    metrics:
      folding:
        title: Metrics
        enabled: false
      description: ""
      availability: []
      scopes:
        - name: Squid instance
          description: "These metrics refer to each monitored Squid instance."
          labels: []
          metrics:
            - name: squid.clients_net
              description: Squid Client Bandwidth
              unit: "kilobits/s"
              chart_type: area
              dimensions:
                - name: in
                - name: out
                - name: hits
            - name: squid.clients_requests
              description: Squid Client Requests
              unit: "requests/s"
              chart_type: line
              dimensions:
                - name: requests
                - name: hits
                - name: errors
            - name: squid.servers_net
              description: Squid Server Bandwidth
              unit: "kilobits/s"
              chart_type: area
              dimensions:
                - name: in
                - name: out
            - name: squid.servers_requests
              description: Squid Server Requests
              unit: "requests/s"
              chart_type: line
              dimensions:
                - name: requests
                - name: errors