■「squidclient mgr:menu」で、
管理コマンドで無い、「public」なコマンドを引っ掛けて、
片っ端から回してログに出すだけ。
ワンライナーでも充分だけど、全部欲しい時は多分急いでるw。。。
$ w3m -dump https://raw.github.com/labunix/squidguard-script/master/squidcheckall.sh | tee squidcheckall.sh
if [ "`id -u`" -ne "0" ];then
echo "Sorry,Not Permit User!"
exit 1
fi
ALLLOG="/var/log/squidcheckall_`date '+%Y%m%d'`.log.gz"
FLAG=0
dpkg -l squidclient | grep ^ii > /dev/null || FLAG=1
test -f "$ALLLOG" && chmod 600 "$ALLLOG"
touch "$ALLLOG" || FLAG=2
if [ "$FLAG" -ne "0" ];then
echo "squidclient : Error Status $FLAG"
exit 1
fi
squidclient mgr:menu | grep "public" | awk '{print $1}' | \
for list in `xargs`;do
echo -e "\n[${list}]\n"
for n in `seq 1 80`;do echo -n "-" ;done
echo ""
squidclient mgr:${list}
done | gzip > "$ALLLOG"
chmod 400 "$ALLLOG"
echo "See Log : `zcat ${ALLLOG} | wc -l` lines"
echo "lv -s ${ALLLOG}"
unset ALLLOG FLAG
exit 0
■実行する。
用途としては、最初に欲しいログの選別、デバッグ目的や過去との比較が欲しい場合だろう。
約16万行は滅多な事では読まないと思うし、日常で使う分は項目を絞って取得するべき。
$ chmod +x squidcheckall.sh
$ sudo ./squidcheckall.sh
$ sudo ./squidcheckall.sh
See Log : 167580 lines
lv -s /var/log/squidcheckall_20120906.log.gz
■gzipで圧縮しているので、およそ6MBが1.3MBに収まる。
※アクセス数等、環境に依存する。また、平常時の場合のサイズであることもお忘れなく。
$ du -h /var/log/squidcheckall_20120906.log.gz
1.3M /var/log/squidcheckall_20120906.log.gz
$ sudo gzip -l /var/log/squidcheckall_20120906.log.gz
compressed uncompressed ratio uncompressed_name
1355166 5961721 77.3% /var/log/squidcheckall_20120906.log
■ログの項目は以下の通り。
ページャに「lv -s」を使えば、ファイルを伸張する必要は無い。
$ sudo lv -s /var/log/squidcheckall_20120906.log.gz | grep "^\[" | column -c 100
[mem] [filedescriptors] [active_requests]
[cbdata] [objects] [store_digest]
[events] [vm_objects] [storedir]
[squidaio_counts] [openfd_objects] [store_check_cachable_stats]
[coss] [pending_objects] [store_io]
[diskd] [client_objects] [pconn]
[ipcache] [io] [refresh]
[fqdncache] [counters] [delay]
[idns] [peer_select] [forward]
[url_rewriter] [digest_stats] [client_list]
[external_acl] [5min] [asndb]
[http_headers] [60min] [server_list]
[menu] [utilization] [non_peers]
[info] [histograms]