ใกล้เวลาแล้วที่จะมีกฎหมายกำหนดให้มีการเก็บบันทึกการใช้งาน สำหรับผู้ที่ให้บริการอินเตอร์เน็ต และองค์กรต่าง ๆ
หลายคนก็ยังสงสัยว่า แล้วใน Logfile ของ Squid มันเป็น Unix Timestamp แล้วเราจะรู้ได้อย่างไรว่าใครเข้าเวปอะไรบ้าง
ในเวลานั้น ๆ
ผมก็เลยเอาสคิปไฟล์เล็ก ๆ มาฝาก 2 บรรทัด ก็สามารถจัดการเรื่องเหล่านี้ได้
file name : timeconvert.pl (เป็นภาษา perl นะครับ)
#! /usr/bin/perl -p
s/^\d+\.\d+/localtime $&/e;
สองบรรทัดแค่นี้แหละครับ
ส่วนวิธีการใช้งานก็ไม่ยาก ใช้คำสั่ง timeconvert.pl <logfile name>
root@myhost:/var/log/squid#./timeconvert.pl access.log
ก็จะได้การแปลงเวลาออกมา
Thu May 29 06:44:42 2008 11 192.168.182.172 TCP_MEM_HIT/200 519 GET http://www.zheza.com/images/blog/grp/blog_r1_c2.gif - NONE/- image/gif
Thu May 29 06:44:42 2008 26 192.168.182.172 TCP_MEM_HIT/200 457 GET http://www.zheza.com/images/blog/grp/blog_r1_c3.gif - NONE/- image/gif
Thu May 29 06:44:42 2008 3 192.168.182.172 TCP_MEM_HIT/200 519 GET http://www.zheza.com/images/blog/grp/blog_r1_c8.gif - NONE/- image/gif
Thu May 29 06:44:42 2008 4 192.168.182.172 TCP_MEM_HIT/200 615 GET http://www.zheza.com/images/blog/grp/blog_r4_c1.gif - NONE/- image/gif
Thu May 29 06:44:42 2008 3 192.168.182.172 TCP_MEM_HIT/200 472 GET http://www.zheza.com/images/blog/grp/1_r3_c2.gif - NONE/- image/gif
Thu May 29 06:44:42 2008 5 192.168.182.172 TCP_MEM_HIT/200 458 GET http://www.zheza.com/images/blog/grp/blog_r2_c8.gif - NONE/- image/gif
Thu May 29 06:44:42 2008 3 192.168.182.172 TCP_MEM_HIT/200 457 GET http://www.zheza.com/images/blog/grp/blog_r8_c3.gif - NONE/- image/gif
เป็นต้น
ถ้าต้องการให้แสดงผลออกมาเป็น file ก็ใช้คำสั่ง
root@myhost:/var/log/squid#./timeconvert.pl access.log > squid.logfile
ก็จะได้ไฟล์ที่แปลงเวลาเรียบร้อยแล้ว
ถ้าต้องการค้นหาเป็นวัน หรือบางช่วงเวลา ก็ใช้คำสั่ง grep เพื่อดักเฉพาะข้อมูลที่เราต้องการได้ เช่น
ต้องการทราบว่า วันที่ 29 พฤษภาคม 2551 ช่วงเวลา 8:20 ในร้านมีเครื่องไหนเข้าเวปอะไรบ้าง ก็ใช้คำสั่ง
root@myhost:/var/log/squid# ./timeconvert.pl access.log | grep 'May 29 08:20'
*** บางเครื่องอาจจะมี logfile หลายไฟล์ เนื่องจากการทำ rotate จะต้องค้นหาให้ตรงกับไฟล์และเวลาของข้อมูลในไฟล์ ***
Thu May 29 08:20:14 2008 118 192.168.182.137 TCP_MISS/200 841 GET http://www.kapook.com/images/bigbanner/test.php - DIRECT/203.150.224.174 text/html
Thu May 29 08:20:14 2008 139 192.168.182.137 TCP_MISS/200 1791 GET http://164.115.2.192/banner/adshow.php?zid=81 - DIRECT/164.115.2.192 text/html
Thu May 29 08:20:14 2008 201 192.168.182.137 TCP_MISS/200 371 GET http://164.115.2.192/banner/keeptrack.php?bid=112&zid=81&cid=75 - DIRECT/164.115.2.192 text/html
Thu May 29 08:20:32 2008 494 192.168.182.137 TCP_MISS/200 856 GET http://www.kapook.com/images/bigbanner/test.php - DIRECT/203.150.224.176 text/html
Thu May 29 08:20:32 2008 140 192.168.182.137 TCP_MISS/200 1793 GET http://164.115.2.192/banner/adshow.php?zid=81 - DIRECT/164.115.2.192 text/html
Thu May 29 08:20:32 2008 162 192.168.182.137 TCP_MISS/200 371 GET http://164.115.2.192/banner/keeptrack.php?bid=113&zid=81&cid=76 - DIRECT/164.115.2.192 text/html
Thu May 29 08:20:50 2008 374 192.168.182.137 TCP_MISS/200 841 GET http://www.kapook.com/images/bigbanner/test.php - DIRECT/203.150.224.174 text/html
Thu May 29 08:20:50 2008 139 192.168.182.137 TCP_MISS/200 1809 GET http://164.115.2.192/banner/adshow.php?zid=81 - DIRECT/164.115.2.192 text/html
Thu May 29 08:20:50 2008 187 192.168.182.137 TCP_MISS/200 371 GET http://164.115.2.192/banner/keeptrack.php?bid=105&zid=81&cid=70 - DIRECT/164.115.2.192 text/html
เราก็จะทราบได้ว่า เครื่อง IP หมายเลข 192.168.182.137 เข้าเวปที่แสดงผลออกมา
ถ้าเป็นร้านอินเตอร์เน็ตก็ควรจะตั้งค่า IP ประจำเครื่องไว้
แต่ถ้าเป็นหอพัก หรือองค์กรที่ใช้แบบ Dynamic IP ก็จำเป็นจะต้องเก็บ Logfile ของ IP ไว้ด้วย