plugin_name: python.d.plugin modules: - meta: plugin_name: python.d.plugin module_name: varnish monitored_instance: name: Varnish link: https://varnish-cache.org/ categories: - data-collection.web-servers-and-web-proxies icon_filename: 'varnish.svg' related_resources: integrations: list: [] info_provided_to_referring_integrations: description: '' keywords: - varnish - varnishstat - varnishd - cache - web server - web cache most_popular: false overview: data_collection: metrics_description: | This collector monitors Varnish metrics about HTTP accelerator global, Backends (VBE) and Storages (SMF, SMA, MSE) statistics. Note that both, Varnish-Cache (free and open source) and Varnish-Plus (Commercial/Enterprise version), are supported. method_description: | It uses the `varnishstat` tool in order to collect the metrics. supported_platforms: include: [] exclude: [] multi_instance: false additional_permissions: description: | `netdata` user must be a member of the `varnish` group. default_behavior: auto_detection: description: By default, if the permissions are satisfied, the `varnishstat` tool will be executed on the host. limits: description: '' performance_impact: description: '' setup: prerequisites: list: - title: Provide the necessary permissions description: | In order for the collector to work, you need to add the `netdata` user to the `varnish` user group, so that it can execute the `varnishstat` tool: ``` usermod -aG varnish netdata ``` configuration: file: name: python.d/varnish.conf description: '' 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: instance_name description: the name of the varnishd instance to get logs from. If not specified, the local host name is used. default_value: "" required: true - name: update_every description: Sets the default data collection frequency. default_value: 10 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: '' required: false examples: folding: enabled: true title: 'Config' list: - name: Basic description: An example configuration. folding: enabled: false config: | job_name: instance_name: '' troubleshooting: problems: list: [] alerts: [] metrics: folding: title: Metrics enabled: false description: "" availability: [] scopes: - name: global description: "These metrics refer to the entire monitored application." labels: [] metrics: - name: varnish.session_connection description: Connections Statistics unit: "connections/s" chart_type: line dimensions: - name: accepted - name: dropped - name: varnish.client_requests description: Client Requests unit: "requests/s" chart_type: line dimensions: - name: received - name: varnish.all_time_hit_rate description: All History Hit Rate Ratio unit: "percentage" chart_type: stacked dimensions: - name: hit - name: miss - name: hitpass - name: varnish.current_poll_hit_rate description: Current Poll Hit Rate Ratio unit: "percentage" chart_type: stacked dimensions: - name: hit - name: miss - name: hitpass - name: varnish.cached_objects_expired description: Expired Objects unit: "expired/s" chart_type: line dimensions: - name: objects - name: varnish.cached_objects_nuked description: Least Recently Used Nuked Objects unit: "nuked/s" chart_type: line dimensions: - name: objects - name: varnish.threads_total description: Number Of Threads In All Pools unit: "number" chart_type: line dimensions: - name: None - name: varnish.threads_statistics description: Threads Statistics unit: "threads/s" chart_type: line dimensions: - name: created - name: failed - name: limited - name: varnish.threads_queue_len description: Current Queue Length unit: "requests" chart_type: line dimensions: - name: in queue - name: varnish.backend_connections description: Backend Connections Statistics unit: "connections/s" chart_type: line dimensions: - name: successful - name: unhealthy - name: reused - name: closed - name: recycled - name: failed - name: varnish.backend_requests description: Requests To The Backend unit: "requests/s" chart_type: line dimensions: - name: sent - name: varnish.esi_statistics description: ESI Statistics unit: "problems/s" chart_type: line dimensions: - name: errors - name: warnings - name: varnish.memory_usage description: Memory Usage unit: "MiB" chart_type: stacked dimensions: - name: free - name: allocated - name: varnish.uptime description: Uptime unit: "seconds" chart_type: line dimensions: - name: uptime - name: Backend description: "" labels: [] metrics: - name: varnish.backend description: Backend {backend_name} unit: "kilobits/s" chart_type: area dimensions: - name: header - name: body - name: Storage description: "" labels: [] metrics: - name: varnish.storage_usage description: Storage {storage_name} Usage unit: "KiB" chart_type: stacked dimensions: - name: free - name: allocated - name: varnish.storage_alloc_objs description: Storage {storage_name} Allocated Objects unit: "objects" chart_type: line dimensions: - name: allocated