เมนู

การแยกวิเคราะห์ HTTP ด้วยตัวกรองบันทึก Java

สารบัญ

การแยกวิเคราะห์คำขอ HTTP ด้วยตัวกรองบันทึก Java

javax.servlet.Filterนี่คือเครื่องมือที่สะดวกในการวิเคราะห์เนื้อหาของคำขอ HTTP และแสดงผลเป็นบันทึก (log)กรองขอแนะนำนักเรียนทุกคนครับ/ค่ะ

ตัวกรองบันทึกนี้ใช้ "java.util.logging.Logger" สำหรับการแสดงผลบันทึก และคุณสามารถเปลี่ยนข้อมูลที่แสดงผลได้โดยการเปลี่ยนระดับการบันทึก

javax.servlet.Filter คืออะไร?

ในการสร้างเว็บแอปพลิเคชัน นอกเหนือจากกระบวนการทางธุรกิจหลักแล้ว ยังจำเป็นต้องดำเนินการกระบวนการรองที่มักเกิดขึ้นก่อนและหลังกระบวนการหลักเหล่านั้นด้วย
ตัวอย่างเช่น การตรวจสอบสิทธิ์ไคลเอ็นต์ การตรวจสอบสิทธิ์ การบันทึกข้อมูล เป็นต้น
การเขียนโค้ดกระบวนการรองดังกล่าวลงในแต่ละทรัพยากรเป็นอุปสรรคสำคัญต่อการบำรุงรักษาซอฟต์แวร์ และส่งผลให้แอปพลิเคชันนั้นยากต่อการบำรุงรักษา

ด้วยการใช้งาน javax.servlet.Filter คุณสามารถทำการประมวลผลขั้นที่สองนี้ได้ก่อนที่จะส่งคำขอไปยังคลาสเซิร์ฟเล็ต
นอกจากนี้ เนื่องจากสามารถกำหนดค่าการตั้งค่าตัวกรองได้ในไฟล์ web.xml คุณจึงสามารถเพิ่มหรือลบตัวกรองได้อย่างยืดหยุ่นโดยไม่ต้องแก้ไขซอร์สโค้ด


ลองใช้ตัวกรองบันทึกดูครับ

เรามาลองใช้ตัวกรองบันทึกเพื่อวิเคราะห์คำขอ HTTP โดยการกรองคำขอเหล่านั้นกันดู
ครั้งนี้ทอมแคทเราจะใช้แอปพลิเคชันตัวอย่างที่มาพร้อมกับโปรแกรมโดยค่าเริ่มต้น
สามารถเรียกใช้ตัวกรองนี้ได้ทันทีหลังจากตั้งค่าต่อไปนี้เสร็จสิ้น

1.ซอร์สโค้ดดาวน์โหลดและรวบรวมมัน
2. วางไฟล์คลาสที่คอมไพล์แล้วไว้ในโฟลเดอร์ "/examples/WEB-INF/classes"
3. กำหนดค่าต่อไปนี้ในไฟล์ web.xml
  ตัวกรองบันทึก ตัวกรองบันทึก ระดับการบันทึก ดี ตัวกรองบันทึก /*

*รูปแบบ URL เมื่อใช้เฟรมเวิร์ก Struts มีดังนี้:

   *.ทำ

โปรดตรวจสอบผลลัพธ์ในบันทึกเมื่อคุณเรียกใช้หน้าจอตัวอย่างเซสชัน
การวิเคราะห์แอปพลิเคชันเว็บโดยใช้ตัวกรองบันทึก javax.servlet.Filter

ข้อมูลบันทึกที่จะส่งออกและระดับการบันทึก

●เนื้อหาเอาต์พุตบันทึก

ข้อมูลบันทึก ระดับบันทึก
ข้อมูลเกี่ยวกับคุกกี้ ดี
ข้อมูลส่วนหัว HTTP ดี
ข้อมูลเกี่ยวกับ HTTP และข้อมูลอื่นๆ ดี
พารามิเตอร์คำขอ HTTP การกำหนดค่า
วัตถุที่มีขอบเขตตามคำขอ การกำหนดค่า
วัตถุที่มีขอบเขตเซสชัน การกำหนดค่า
ปริมาณการใช้หน่วยความจำก่อนและหลังการร้องขอ การกำหนดค่า
ข้อมูลการเปลี่ยนหน้าจอ ข้อมูล

คุณควรใช้ระดับการบันทึกข้อมูลต่อไปนี้เพื่อแยกความแตกต่างระหว่างข้อมูลเหล่านั้น

  • ละเอียดที่สุด... แสดงบันทึกรายละเอียดสูงสุด ตั้งค่านี้เมื่อคุณต้องการวิเคราะห์คำขอ HTTP อย่างละเอียด
  • CONFIG... จะแสดงบันทึกรายละเอียดที่มากกว่าเล็กน้อย ควรตั้งค่าไว้ที่ระดับนี้ในระหว่างการพัฒนา
  • ข้อมูล... แสดงเฉพาะข้อมูลการเปลี่ยนหน้าจอเท่านั้น

● วิธีการเปลี่ยนระดับการบันทึกข้อมูล
คุณสามารถเปลี่ยนระดับการแสดงผลบันทึกได้โดยการตั้งค่าพารามิเตอร์เริ่มต้น logging.Level
ตัวอย่าง:

   ระดับการบันทึก ข้อมูล

ซอร์สโค้ด

  • URL をkoピーしました!
สารบัญ