------------------------------------------------------------------------------- Squid... ------------------------------------------------------------------------------- Expanded log format beautify tail -fn1 /app/squid/log/access.log | sed 's/$/\n/;s/ \([a-z_]*=\)/\n \1/g' Simplify output tail -fn0 /app/squid/log/access.log | sed -u 's/$/\n/;s/ \([a-z_]*=\)/\n \1/g' | egrep --line-buffered ' (local_time|src_ip|url|vendor_action|status)=|^$' ------------------------------------------------------------------------------- squidclient squidclient mgr:storedir # summery of storeage directories squidclient mgr:objects # detailed info of stored objects squidclient mgr:objects | grep GET | grep -v squid-internal | tee cached_urls.txt # summery of objects in cache If allowed using acl PURGE method PURGE http_access deny PURGE !localhost You can purge objects using squidclient -m PURGE URL Vendor Action Meanings... https://forums.ivanti.com/s/article/Squid-Caching-Proxy-Access-log-Explained TCP_* Refers to requests on the HTTP port (3128) TCP_MEM_* Referse to memory Cache rather than disk cache *_HIT A copy of the requested object was returned from cache. *_MISS The requested object was not in the cache. Downloaded TCP_REFRESH_HIT An expired copy of the requested object was in the cache. Squid made an If-Modified-Since request and the response was "Not Modified." TCP_REFRESH_FAIL_HIT Ditto.. But the If-Modified-Since request failed So the old (stale) object was returned. TCP_REFRESH_MISS Ditto... But If-Modified-Since request got a new object. TCP_REFRESH_UNMODIFIED ???? TCP_CLIENT_REFRESH The client issued a "no-cache" pragma. Handle as MISS TCP_IMS_HIT If-Modified-Since GET request from client returned cahced. TCP_IMS_MISS Ditto but result was stale. Get new object. TCP_SWAPFAIL Cached object should be in cache but wasn't. TCP_DENIED Access was denied for this request. TCP_TUNNEL A binary tunnel was established. -------------------------------------------------------------------------------