Squid proxy

Squid is a caching and forwarding HTTP web proxy. It has a wide variety of uses, including speeding up a web server by caching repeated requests, caching web, DNS and other computer network lookups for a group of people sharing network resources, and aiding security by filtering traffic.

Available solutions




This template is for Zabbix version: 7.0

Source: https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/app/squid_snmp?at=release/7.0

Squid by SNMP

Overview

This template is designed for the effortless deployment of Squid monitoring by Zabbix via SNMP and doesn't require any external scripts.

Requirements

Zabbix version: 7.0 and higher.

Tested versions

This template has been tested on:

  • Squid 3.5.12

Configuration

Zabbix should be configured according to the instructions in the Templates out of the box section.

Setup

Setup Squid

Enable SNMP support following official documentation. Required parameters in squid.conf:

snmp_port <port_number>
acl <zbx_acl_name> snmp_community <community_name>
snmp_access allow <zbx_acl_name> <zabbix_server_ip>

Setup Zabbix

1. Import the template template_app_squid_snmp.yaml into Zabbix.

2. Set values for {$SQUID.SNMP.COMMUNITY}, {$SQUID.SNMP.PORT} and {$SQUID.HTTP.PORT} as configured in squid.conf.

3. Link the imported template to a host with Squid.

4. Add SNMPv2 interface to Squid host. Set Port as {$SQUID.SNMP.PORT} and SNMP community as {$SQUID.SNMP.COMMUNITY}.

Macros used

Name Description Default
{$SQUID.SNMP.PORT}

snmp_port configured in squid.conf (Default: 3401)

3401
{$SQUID.HTTP.PORT}

http_port configured in squid.conf (Default: 3128)

3128
{$SQUID.SNMP.COMMUNITY}

SNMP community allowed by ACL in squid.conf

public
{$SQUID.FILE.DESC.WARN.MIN}

The threshold for minimum number of available file descriptors

100
{$SQUID.PAGE.FAULT.WARN}

The threshold for sys page faults rate in percent of received HTTP requests

90

Items

Name Description Type Key and additional info
Service ping Simple check net.tcp.service[tcp,,{$SQUID.HTTP.PORT}]

Preprocessing

  • Discard unchanged with heartbeat: 10m

Uptime

The Uptime of the cache in timeticks (in hundredths of a second) with preprocessing

SNMP agent squid[cacheUptime]

Preprocessing

  • Custom multiplier: 0.01

Version

Cache Software Version

SNMP agent squid[cacheVersionId]

Preprocessing

  • Discard unchanged with heartbeat: 6h

CPU usage

The percentage use of the CPU

SNMP agent squid[cacheCpuUsage]
Memory maximum resident size

Maximum Resident Size

SNMP agent squid[cacheMaxResSize]

Preprocessing

  • Custom multiplier: 1024

Memory maximum cache size

The value of the cache_mem parameter

SNMP agent squid[cacheMemMaxSize]

Preprocessing

  • Custom multiplier: 1048576

Memory cache usage

Total accounted memory

SNMP agent squid[cacheMemUsage]

Preprocessing

  • Custom multiplier: 1024

Cache swap low water mark

Cache Swap Low Water Mark

SNMP agent squid[cacheSwapLowWM]
Cache swap high water mark

Cache Swap High Water Mark

SNMP agent squid[cacheSwapHighWM]
Cache swap directory size

The total of the cache_dir space allocated

SNMP agent squid[cacheSwapMaxSize]

Preprocessing

  • Custom multiplier: 1048576

Cache swap current size

Storage Swap Size

SNMP agent squid[cacheCurrentSwapSize]
File descriptor count - current used

Number of file descriptors in use

SNMP agent squid[cacheCurrentFileDescrCnt]
File descriptor count - current maximum

Highest number of file descriptors in use

SNMP agent squid[cacheCurrentFileDescrMax]
File descriptor count - current reserved

Reserved number of file descriptors

SNMP agent squid[cacheCurrentResFileDescrCnt]
File descriptor count - current available

Available number of file descriptors

SNMP agent squid[cacheCurrentUnusedFDescrCnt]
Byte hit ratio per 1 minute

Byte Hit Ratios

SNMP agent squid[cacheRequestByteRatio.1]
Byte hit ratio per 5 minutes

Byte Hit Ratios

SNMP agent squid[cacheRequestByteRatio.5]
Byte hit ratio per 1 hour

Byte Hit Ratios

SNMP agent squid[cacheRequestByteRatio.60]
Request hit ratio per 1 minute

Byte Hit Ratios

SNMP agent squid[cacheRequestHitRatio.1]
Request hit ratio per 5 minutes

Byte Hit Ratios

SNMP agent squid[cacheRequestHitRatio.5]
Request hit ratio per 1 hour

Byte Hit Ratios

SNMP agent squid[cacheRequestHitRatio.60]
Sys page faults per second

Page faults with physical I/O

SNMP agent squid[cacheSysPageFaults]

Preprocessing

  • Change per second
HTTP requests received per second

Number of HTTP requests received

SNMP agent squid[cacheProtoClientHttpRequests]

Preprocessing

  • Change per second
HTTP traffic received per second

Number of HTTP traffic received from clients

SNMP agent squid[cacheHttpInKb]

Preprocessing

  • Custom multiplier: 1024

  • Change per second
HTTP traffic sent per second

Number of HTTP traffic sent to clients

SNMP agent squid[cacheHttpOutKb]

Preprocessing

  • Custom multiplier: 1024

  • Change per second
HTTP Hits sent from cache per second

Number of HTTP Hits sent to clients from cache

SNMP agent squid[cacheHttpHits]

Preprocessing

  • Change per second
HTTP Errors sent per second

Number of HTTP Errors sent to clients

SNMP agent squid[cacheHttpErrors]

Preprocessing

  • Change per second
ICP messages sent per second

Number of ICP messages sent

SNMP agent squid[cacheIcpPktsSent]

Preprocessing

  • Change per second
ICP messages received per second

Number of ICP messages received

SNMP agent squid[cacheIcpPktsRecv]

Preprocessing

  • Change per second
ICP traffic transmitted per second

Number of ICP traffic transmitted

SNMP agent squid[cacheIcpKbSent]

Preprocessing

  • Custom multiplier: 1024

  • Change per second
ICP traffic received per second

Number of ICP traffic received

SNMP agent squid[cacheIcpKbRecv]

Preprocessing

  • Custom multiplier: 1024

  • Change per second
DNS server requests per second

Number of external dns server requests

SNMP agent squid[cacheDnsRequests]

Preprocessing

  • Change per second
DNS server replies per second

Number of external dns server replies

SNMP agent squid[cacheDnsReplies]

Preprocessing

  • Change per second
FQDN cache requests per second

Number of FQDN Cache requests

SNMP agent squid[cacheFqdnRequests]

Preprocessing

  • Change per second
FQDN cache hits per second

Number of FQDN Cache hits

SNMP agent squid[cacheFqdnHits]

Preprocessing

  • Change per second
FQDN cache misses per second

Number of FQDN Cache misses

SNMP agent squid[cacheFqdnMisses]

Preprocessing

  • Change per second
IP cache requests per second

Number of IP Cache requests

SNMP agent squid[cacheIpRequests]

Preprocessing

  • Change per second
IP cache hits per second

Number of IP Cache hits

SNMP agent squid[cacheIpHits]

Preprocessing

  • Change per second
IP cache misses per second

Number of IP Cache misses

SNMP agent squid[cacheIpMisses]

Preprocessing

  • Change per second
Objects count

Number of objects stored by the cache

SNMP agent squid[cacheNumObjCount]
Objects LRU expiration age

Storage LRU Expiration Age

SNMP agent squid[cacheCurrentLRUExpiration]

Preprocessing

  • Custom multiplier: 0.01

Objects unlinkd requests

Requests given to unlinkd

SNMP agent squid[cacheCurrentUnlinkRequests]
HTTP all service time per 5 minutes

HTTP all service time per 5 minutes

SNMP agent squid[cacheHttpAllSvcTime.5]

Preprocessing

  • Custom multiplier: 0.001

HTTP all service time per hour

HTTP all service time per hour

SNMP agent squid[cacheHttpAllSvcTime.60]

Preprocessing

  • Custom multiplier: 0.001

HTTP miss service time per 5 minutes

HTTP miss service time per 5 minutes

SNMP agent squid[cacheHttpMissSvcTime.5]

Preprocessing

  • Custom multiplier: 0.001

HTTP miss service time per hour

HTTP miss service time per hour

SNMP agent squid[cacheHttpMissSvcTime.60]

Preprocessing

  • Custom multiplier: 0.001

HTTP hit service time per 5 minutes

HTTP hit service time per 5 minutes

SNMP agent squid[cacheHttpHitSvcTime.5]

Preprocessing

  • Custom multiplier: 0.001

HTTP hit service time per hour

HTTP hit service time per hour

SNMP agent squid[cacheHttpHitSvcTime.60]

Preprocessing

  • Custom multiplier: 0.001

ICP query service time per 5 minutes

ICP query service time per 5 minutes

SNMP agent squid[cacheIcpQuerySvcTime.5]

Preprocessing

  • Custom multiplier: 0.001

ICP query service time per hour

ICP query service time per hour

SNMP agent squid[cacheIcpQuerySvcTime.60]

Preprocessing

  • Custom multiplier: 0.001

ICP reply service time per 5 minutes

ICP reply service time per 5 minutes

SNMP agent squid[cacheIcpReplySvcTime.5]

Preprocessing

  • Custom multiplier: 0.001

ICP reply service time per hour

ICP reply service time per hour

SNMP agent squid[cacheIcpReplySvcTime.60]

Preprocessing

  • Custom multiplier: 0.001

DNS service time per 5 minutes

DNS service time per 5 minutes

SNMP agent squid[cacheDnsSvcTime.5]

Preprocessing

  • Custom multiplier: 0.001

DNS service time per hour

DNS service time per hour

SNMP agent squid[cacheDnsSvcTime.60]

Preprocessing

  • Custom multiplier: 0.001

Triggers

Name Description Expression Severity Dependencies and additional info
Port {$SQUID.HTTP.PORT} is down last(/Squid by SNMP/net.tcp.service[tcp,,{$SQUID.HTTP.PORT}])=0 Average Manual close: Yes
Squid has been restarted

Uptime is less than 10 minutes.

last(/Squid by SNMP/squid[cacheUptime])<10m Info Manual close: Yes
Squid version has been changed

Squid version has changed. Acknowledge to close the problem manually.

last(/Squid by SNMP/squid[cacheVersionId],#1)<>last(/Squid by SNMP/squid[cacheVersionId],#2) and length(last(/Squid by SNMP/squid[cacheVersionId]))>0 Info Manual close: Yes
Swap usage is more than low watermark last(/Squid by SNMP/squid[cacheCurrentSwapSize])>last(/Squid by SNMP/squid[cacheSwapLowWM])*last(/Squid by SNMP/squid[cacheSwapMaxSize])/100 Warning
Swap usage is more than high watermark last(/Squid by SNMP/squid[cacheCurrentSwapSize])>last(/Squid by SNMP/squid[cacheSwapHighWM])*last(/Squid by SNMP/squid[cacheSwapMaxSize])/100 High
Squid is running out of file descriptors last(/Squid by SNMP/squid[cacheCurrentUnusedFDescrCnt])<{$SQUID.FILE.DESC.WARN.MIN} Warning
High sys page faults rate avg(/Squid by SNMP/squid[cacheSysPageFaults],5m)>avg(/Squid by SNMP/squid[cacheProtoClientHttpRequests],5m)/100*{$SQUID.PAGE.FAULT.WARN} Warning

Feedback

Please report any issues with the template at https://support.zabbix.com

You can also provide feedback, discuss the template, or ask for help at ZABBIX forums

Articles and documentation

+ Propose new article

Didn't find integration you need?