Squid Proxy Server ทำหน้าที่เป็นประตูที่กั้นกลางระหว่างผู้ใช้งานภายในองค์กร กับเครือข่ายอินเตอร์เน็ตภายนอก ดังนั้นข้อมูลจากล๊อกไฟล์ของ Squid ที่จะมีการบันทึกไว้ทุก ๆ ครั้งที่เครื่องลูกข่ายมีการร้องขอเพื่อเข้าสู่เว็บไซต์ต่าง ๆ จึงเป็นข้อมูลที่เป็นประโยชน์ต่อผู้ดูแลระบบในการวิเคราะห์ดูพฤติกรรมการใช้งานอินเตอร์เน็ตได้เป็นอย่างดี โดยจะสามารถเฝ้าดูความเคลื่อนไหวของล๊อกไฟล์ดังกล่าวได้ด้วยคำสั่ง
tail -f /usr/local/squid/var/logs/access.log
คำสั่งดังกล่าวจะทำการรายงานข้อมูลล่าสุดจากล๊อกไฟล์ของ Squid คือ //usr/local/squid/var/logs/access.log อย่างต่อเนื่อง ( เป็นผลมาจากพารามิเตอร์ -f ของคำสั่ง tail หมายถึง Follow ) ผลลัพธ์จะปรากฏดังตัวอย่างดังรูป

จะเห็นว่าเราสามารถทราบได้ว่าโฮสต์หมายเลข 192.168.16.151 ในเครือข่ายของเรา ออกไปชมเว็บไซต์ใดบ้าง โหลดไฟล์ใดมีขนาดเท่าไหร่บ้าง ไฟล์ access.log ของ Squid นี้จะอยู่ในรูปของไฟล์ข้อความธรรมดา ดังนั้นเราจึงสามารถอ่านได้โดยตรง และโดยปรกติแล้วไฟล์นี้จะมีการเปลี่ยนชื่อไฟล์ที่บันทึกข้อมูลเองโดยอัตโนมัติ โดยอาศัยบริการชื่อ logrotate ทุก ๆ สัปดาห์
ถึงแม้ว่าการอ่านล๊อกไฟล์ของ Squid จะทำให้เราทราบการเรียกใช้งานเว็บไซต์ต่าง ๆ ของผู้ใช้ในระบบได้ก็ตาม แต่ก็ได้ข้อมูลที่ใช้ประโยชนได้ไม่มากนัก ทั้งนี้เนื่องจากเป็นข้อมูลดิบเกินไป รูปแบบก็อ่านได้ยาก ดังนั้นจึงมีโปรแกรมโอเพ่นซอร์สที่ถูกพัฒนาขึ้นเพื่อการวิเคราะห์ และสร้างรายงานในรูปแบบที่สะดวกต่อการนำข้อมูลมาใช้งานมากยิ่งขึ้น โปรแกรมประเภทนี้มีอยู่หลายตัว แต่ที่น่าสนใจและนำมาใช้งานได้อย่างดี คือ โปรแกรม SARG ( Squid Analysis Report Generator )
SARG เป็นโปรแกรมที่ออกแบบมาเพื่อทำงานร่วมกับ Squid โดยจะทำการวิเคราะห์ข้อมูลจากล๊อกไฟล์ของ Squid แล้วนำมาสร้างรายงานข้อมูลเชิงสถิติในหลาย ๆ ด้านเพื่อให้ผู้ดูแลระบบสามารถอ่านข้อมูลได้อย่างง่ายดายในรูปของเอกสารเว็บเพจ ( HTML ) ดังนั้นจึงง่ายต่อการนำเสนอผ่านเว็บเซิร์ฟเวอร์ ( Apache Web Server ) ซึ่งลีนุกซ์เองมักจะติดตั้งให้มาพร้อมอยู่แล้วเช่นเดียวกับซอฟต์แวร์สำคัญอื่น ๆ

ผู้ดูแลระบบจึงสามารถมอนิเตอร์ดูข้อมูลสถิติการใช้งานเว็บไซต์ต่าง ๆ ผ่านทางโปรแกรมเว็บบราวเซอร์ได้จากเครื่องคอมพิวเตอร์เครื่องใดก็ได้ในเครือข่าย
สำหรับ Slackware การติดตั้ง sarg สามารถติดตั้งได้ดังนี้
-
-
แล้วทำการเลือก Packackes ให้ตรงกับ เวอร์ชั่นของ Slackware Linux ที่ใช้งานอยู่
-
-
copy ไปไว้ใน /tmp
-
cd /
-
tar zxvf /tmp/sarg-2.0.9-i486-2stb.tgz
-
chmod +x /install/doinst.sh
-
/install/doinst.sh
-
cd /etc/sarg
-
cp sarg.conf.new sarg.conf
-
pico sarg.conf
แก้ไขบรรทัด
access_log /var/lib/squid/logs/access.log # ตำแหน่งของ access.log ของ Squid
output_dir /var/www/htdocs/squid-reports # ตำแหน่ง Output ที่ต้องการแสดงผล
# TAG: lastlog n
# How many reports files must be keept in reports directory.
# The oldest report file will be automatically removed.
# 0 - no limit.
#
#lastlog 0 # จำนวนครั้งที่ต้องการให้แสดงผล |
ถ้าติดตั้ง squid ตามขั้นตอนในเว็บไซต์ หรือตามเอกสาร ใน big-linux.cjb.net ให้แก้ไขตามนี้
access_log /usr/local/squid/var/logs/access.log # ตำแหน่งของ access.log ของ Squid
output_dir /var/www/htdocs/squid-reports # ตำแหน่ง Output ที่ต้องการแสดงผล
# TAG: lastlog n
# How many reports files must be keept in reports directory.
# The oldest report file will be automatically removed.
# 0 - no limit.
#
lastlog 15 # จำนวนครั้งที่ต้องการให้แสดงผล ให้แสดงผล 15 วัน |
ทำการ Save
-
ทดสอบการทำงานของ SARG โดยพิมพ์คำสั่ง sarg แล้วกด Enter เพื่อให้ทำการสร้างรายงานเป็นครั้งแรก โดยก่อนจะทดสอบเช่นนี้ได้จะต้องมีการรัน Squid ให้บริการไปแล้วซักระยะหนึ่งเพื่อให้มีข้อมูลปรากฏอยู่ใน access.log ของ Squid เสียก่อน
-

-
ตั้งเวลากระตุ้น SARG ด้วย cron
pico /var/spool/cron/crontabs/root
เพิ่มคำสั่ง ให้ SARG สรุปรายงานให้ทุก ๆ ช่วงเวลา เช่น สรุปทุก ๆ วัน
โปรแกรม SARG หรือ Squid Analysis Report Generator เป็นเครื่องมือสำหรับผู้ดูแลระบบเครือข่ายอีกชิ้นหนึ่งที่จะช่วยให้ทราบการใช้งานอินเตอร์เน็ตของยูสเซอร์ในองค์กร