การตรวจสอบ Nginx และ Apache บันทึกการทำงานด้วย GoAccess

ตรวจสอบและวิเคราะห์บันทึกการใช้เว็บเซิร์ฟเวอร์ด้วยตัววิเคราะห์บันทึกแบบเรียลไทม์โอเพนซอร์ส – GoAccess


การแก้ไขปัญหาเว็บเป็นเรื่องสนุกและอาจทำให้หงุดหงิดหากคุณไม่ได้ติดตั้งเครื่องมือที่เหมาะสม.

หากคุณสนับสนุนเว็บไซต์ที่มีปริมาณการใช้งานสูงบ่อยครั้งคุณต้องวิเคราะห์และตรวจสอบบันทึกการทำงานของเว็บเซิร์ฟเวอร์ & วางแผนกำลังการผลิต. นี่เป็นสิ่งจำเป็นสำหรับวิศวกรเว็บ.

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

นั่นเป็นเหตุผลที่คุณต้องการเครื่องมือเพื่ออำนวยความสะดวกในการทำงานของผู้ดูแลระบบและทำให้มีประสิทธิผลมากขึ้น.

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

  • Nginx
  • Apache HTTP
  • AWS ELB, S3, CloudFront
  • ที่เก็บข้อมูลบนคลาวด์ของ Google

คุณสามารถวิเคราะห์ตัวชี้วัดใดด้วย GoAccess?

เกือบทุกสิ่งที่คุณจับภาพในบันทึก เพื่อให้แนวคิดแก่คุณ:

  • ใช้เวลาในการตอบสนองคำขอ
  • ผู้เยี่ยมชม IP, DNS, โฮสต์
  • เบราว์เซอร์ของผู้เข้าชม & รายละเอียดระบบปฏิบัติการ
  • ไม่พบรายละเอียด 404
  • คำขอ / ผู้เยี่ยมชมสูงสุด
  • แบนด์วิดธ์
  • ไฟล์คงที่
  • ที่ตั้งทางภูมิศาสตร์
  • รหัสสถานะ
  • และอื่น ๆ..

กำลังมองหาตัวชี้วัดเหล่านี้เพื่อตรวจสอบเว็บไซต์ของคุณ?

ดี!

คุณสามารถติดตั้งระบบปฏิบัติการใดได้บ้าง?

GoAccess มีการพึ่งพาเพียงหนึ่งครั้ง – ncurses หากคุณสามารถติดตั้งได้คุณสามารถใช้ระบบปฏิบัติการใดก็ได้.

มีอยู่ในแพ็คเกจการจัดจำหน่ายสำหรับ:

  • อูบุนตู
  • Debian
  • Fedora
  • CentOS
  • FreeBSD / OpenBSD
  • Slackware
  • Arch Linux
  • Gentoo
  • MacOS
  • Windows ผ่าน Cygwin

อย่างไรก็ตามคุณสามารถสร้างจากแหล่งที่มาหรือใช้กับนักเทียบท่าได้.

หากคุณยังใหม่กับ Docker ฉันขอแนะนำให้ทำเช่นนี้ หลักสูตรนักเทียบท่าชำนาญการ.

การติดตั้ง GoAccess บน Ubuntu

  • เข้าสู่ระบบเซิร์ฟเวอร์ Ubuntu ด้วยสิทธิ์พิเศษ
  • ใช้ apt-get เพื่อติดตั้งดังนี้

apt-get install goaccess

ง่าย.

การติดตั้งบน CentOS

ล็อกอินเข้าสู่เซิร์ฟเวอร์และดำเนินการคำสั่ง yum

ยำติดตั้ง goaccess

การติดตั้งโดยใช้แหล่งที่มาบน CentOS / Ubuntu

รักการรวบรวมจากแหล่งที่มา?

นี่คือขั้นตอน.

  • ติดตั้งการอ้างอิงต่อไปนี้หากใช้ CentOS

ยำติดตั้ง gcc ncurses-devel glib2-devel geoip-devel

  • หากใช้งาน อูบุนตู

apt-get install libncursesw5-dev libgeoip-dev make

  • ดาวน์โหลดแพ็คเกจล่าสุดโดยใช้ wget

wget http://tar.goaccess.io/goaccess-1.2.tar.gz

  • แตกไฟล์ที่ดาวน์โหลดมา

gunzip –c goaccess-1.2.tar.gz | tar xvf –

  • ไปที่โฟลเดอร์ที่สร้างขึ้นใหม่ซึ่งคุณได้รับหลังจากแตกไฟล์แล้ว

cd goaccess-1.2

  • คอมไพล์ด้วยคำสั่งด้านล่าง

./ configure –enable-geoip = legacy –enable-utf8
แต่งหน้า
ทำการติดตั้ง

ทำได้ดี, คุณได้ติดตั้ง GoAccess และตั้งค่าทั้งหมดเพื่อวิเคราะห์บันทึก.

ตรวจสอบการติดตั้ง

เมื่อติดตั้งแล้วให้เรียกใช้งาน goaccess บนพรอมต์คำสั่งและควรพิมพ์การใช้งานด้านล่าง.

[[email protected] goaccess-1.2] # goaccess
GoAccess – 1.2
การใช้งาน: goaccess [ชื่อไฟล์] [ตัวเลือก … ] [-c] [- M] [- H] [- q] [- d] [- d] [… ]
ตัวเลือกต่อไปนี้ยังสามารถกำหนดให้กับคำสั่ง:
เข้าสู่ระบบ & ตัวเลือกรูปแบบวันที่
  –date-format = – ระบุรูปแบบวันที่บันทึก เช่น% d /% b /% Y
  –log-format = – ระบุรูปแบบการบันทึก คำพูดภายในจะต้องเป็น
                                    หนีออกมาหรือใช้คำพูดเดียว.
  –time-format = – ระบุรูปแบบเวลาบันทึก เช่น% H:% M:% S
ตัวเลือกส่วนต่อประสานผู้ใช้
  -c –config-dialog – หน้าต่างการกำหนดค่าบันทึก / วันที่ / เวลา.
  -i – ส่วนหัว – สีไฮไลต์แผงที่ใช้งาน.
  -m – ด้วยเมาส์ – เปิดใช้งานการสนับสนุนเมาส์บนแดชบอร์ดหลัก.
  –color = – ระบุสีที่กำหนดเอง ดู manpage สำหรับข้อมูลเพิ่มเติม
                                    รายละเอียดและตัวเลือก.
  –สีโทน =<1 | 2 | 3>          – แบบแผน: 1 => สีเทา 2 => สีเขียว 3 => Monokai.
  –html-custom-css = – ระบุไฟล์ CSS ที่กำหนดเองในรายงาน HTML.
  –html-custom-js = – ระบุไฟล์ JS ที่กำหนดเองในรายงาน HTML.
  –html-prefs = – ตั้งค่ากำหนดรายงาน HTML เริ่มต้น.
  –html-report-title = – ตั้งชื่อและส่วนหัวของหน้ารายงาน HTML.
  –json-pretty-print – จัดรูปแบบเอาต์พุต JSON ที่มีแท็บ & การขึ้นบรรทัดใหม่.
  –max-items – จำนวนสูงสุดของรายการที่จะแสดงต่อแผง.
                                    ดู man page สำหรับข้อ จำกัด.
  –ไม่มีสี – ปิดใช้งานเอาต์พุตสี.
  –no-column-names – อย่าเขียนชื่อคอลัมน์ในเอาต์พุตคำ.
  –no-csv-summary – ปิดการใช้งานตัวชี้วัดสรุปบนเอาต์พุต CSV.
  –ไม่มีความคืบหน้า – ปิดการใช้งานตัวชี้วัดความคืบหน้า.
  –no-tab-scroll – ปิดการใช้งานการเลื่อนผ่านพาเนลบน TAB.
  –no-html- ปรับปรุงล่าสุด – ซ่อนฟิลด์ปรับปรุง HTML ล่าสุด.
ตัวเลือกเซิร์ฟเวอร์
  –addr = – ระบุที่อยู่ IP ที่จะผูกเซิร์ฟเวอร์.
  –daemonize – รันเป็น daemon (หากเปิดใช้งาน –real-time-html).
  –fifo-in = – เส้นทางที่จะอ่านไปป์ที่มีชื่อ (FIFO).
  –fifo-out = – เส้นทางที่จะเขียนไปป์ที่มีชื่อ (FIFO).
  –origin = – ตรวจสอบให้แน่ใจว่าลูกค้าส่งส่วนหัวกำเนิดที่ระบุ
                                    เมื่อจับมือ WebSocket.
  –พอร์ต = – ระบุพอร์ตที่จะใช้.
  –real-time-html – เปิดใช้งานเอาต์พุต HTML แบบเรียลไทม์.
  –ssl-cert = – เส้นทางไปยังใบรับรอง TLS / SSL.
  –ssl-key = – พา ธ ไปยังคีย์ส่วนตัว TLS / SSL.
  –ws-url = – URL ที่เซิร์ฟเวอร์ WebSocket ตอบกลับ.
ตัวเลือกไฟล์
  –                               – ล็อกไฟล์เพื่อวิเคราะห์คำถูกอ่านจาก stdin.
  -f –log-file = – เส้นทางไปยังไฟล์บันทึกข้อมูลเข้า.
  -l –debug-file = – ส่งข้อความดีบักทั้งหมดไปยังที่ระบุ
                                    ไฟล์.
  -p –config-file = – ไฟล์กำหนดค่าที่กำหนดเอง.
  –alid-ร้องขอ = – บันทึกคำขอที่ไม่ถูกต้องไปยังไฟล์ที่ระบุ.
  –no-global-config – อย่าโหลดไฟล์กำหนดค่าระดับโลก.
ตัวเลือกการแยกวิเคราะห์
  -a –agent-list – เปิดใช้งานรายการ user-agent ตามโฮสต์.
  -d – พร้อมกับตัวแก้ไขเอาต์พุต – เปิดใช้งานตัวแก้ไข IP บนเอาต์พุต HTML | JSON.
  -e –exclude-ip = – ยกเว้นหนึ่งหรือหลาย IPv4 / 6 ช่วยให้ IP
                                    ช่วงเช่น 192.168.0.1-192.168.0.10
  -H – http-protocol = – ตั้งค่า / ยกเลิกการตั้งค่าโปรโตคอลการร้องขอ HTTP หากพบ.
  -M –http-method = – ตั้งค่า / unser วิธีการร้องขอ HTTP หากพบ.
  -o –output = file.html | json | csv – ส่งออกไฟล์ HTML, JSON หรือ CSV.
  -q – no-query-string – ละเว้นสตริงแบบสอบถามของคำขอ การถอด
                                    สตริงแบบสอบถามสามารถลดหน่วยความจำได้อย่างมาก
                                    การบริโภค.
  -r – no-term-resolver – ปิดใช้งานตัวแก้ไข IP บนเอาต์พุตเทอร์มินัล.
  –444-as-404 – ปฏิบัติกับรหัสสถานะที่ไม่เป็นมาตรฐาน 444 เป็น 404.
  –4xx-to-unique-count – เพิ่มข้อผิดพลาดไคลเอนต์ 4xx ให้กับผู้เยี่ยมชมที่ไม่ซ้ำ
                                    นับ.
  –all-static-files – รวมไฟล์คงที่กับสตริงแบบสอบถาม.
  –ซอฟต์แวร์รวบรวมข้อมูลเท่านั้น – แยกวิเคราะห์และแสดงเฉพาะซอฟต์แวร์รวบรวมข้อมูล.
  –date-spec = – การระบุวันที่ ค่าที่เป็นไปได้: `date ‘
                                    (ค่าเริ่มต้น) หรือ `hr`.
  –double-decode – ถอดรหัสค่าที่เข้ารหัสสองครั้ง.
  –enable-panel = – เปิดใช้งานการแยก / การแสดงพาเนลที่กำหนด.
  –hour-spec = – ความจำเพาะชั่วโมง ค่าที่เป็นไปได้: `hr`
                                    (ค่าเริ่มต้น) หรือ `min` (สิบนาที).
  –ละเว้นโปรแกรมรวบรวมข้อมูล – ละเว้นโปรแกรมรวบรวมข้อมูล.
  –ign-panel = – ละเว้นการแยก / การแสดงพาเนลที่กำหนด.
  –ign-referer = – ละเว้นผู้อ้างอิงจากการนับ ไวลด์การ์ด
                                    ได้รับอนุญาต. เช่น * .bing.com
  –เพิกเฉยต่อสถานะ = – ละเว้นการแยกวิเคราะห์รหัสสถานะที่กำหนด.
  –num-tests = – จำนวนบรรทัดที่จะทดสอบ. >= 0 (10 ค่าเริ่มต้น)
  –กระบวนการและออก – แยกวิเคราะห์บันทึกและออกโดยไม่ต้องส่งออกข้อมูล.
  –real-os – แสดงชื่อระบบปฏิบัติการจริง เช่น Windows XP, Snow
                                    เสือดาว.
  –sort-panel = PANEL, METRIC, ORDER – พาเนลเรียงลำดับเมื่อโหลดเริ่มต้น ตัวอย่างเช่น:
                                    –การจัดเรียงแผง = ผู้เข้าชม BY_HITS, ASC ดู
                                    manpage สำหรับรายการพาเนล / ฟิลด์.
  –static-file = – เพิ่มนามสกุลไฟล์คงที่ เช่น: .mp3.
                                    ส่วนขยายจะต้องตรงตามตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก.
ตัวเลือก GeoIP
  -g – std-geoip – ฐานข้อมูล GeoIP มาตรฐานสำหรับหน่วยความจำน้อย
                                  การบริโภค.
  –geoip-database = – ระบุพา ธ ไปยังไฟล์ฐานข้อมูล GeoIP นั่นคือ.,
                                    GeoLiteCity.dat, GeoIPv6.dat …
ตัวเลือกอื่น
  -h – ช่วยเหลือ – ความช่วยเหลือนี้.
  -V – รุ่น – แสดงข้อมูลรุ่นและออก.
  -s – สตอเรจ – แสดงวิธีการจัดเก็บปัจจุบัน เช่น B+
                                    ต้นไม้แฮช.
  –dcf – แสดงเส้นทางของการกำหนดค่าเริ่มต้น
                                    ไฟล์เมื่อไม่ได้ใช้ `-p ‘.
ตัวอย่างสามารถพบได้โดยการเรียกใช้ “man goaccess”.
สำหรับรายละเอียดเพิ่มเติมเยี่ยมชม: http://goaccess.io
ลิขสิทธิ์ GoAccess (C) 2009-2016 โดย Gerardo Orellana
[[email protected] goaccess-1.2] #

กำลังวิเคราะห์ Nginx & Apache กับ GoAccess

หนึ่งในวิธีที่รวดเร็วที่สุดในการวิเคราะห์ access.log คือการใช้ -fparameter.

Ex:

goaccess -f access.log

ด้านบนฉันกำลังสั่งให้เปิดไฟล์ access.log นี่จะแสดงแดชบอร์ดโดยรวมและ 15 ส่วนต่อไปนี้.

  • ผู้เข้าชมที่ไม่ซ้ำต่อวัน
  • ไฟล์ที่ร้องขอ
  • คำขอแบบคงที่ (แบบอักษรรูปภาพ PDF ฯลฯ )
  • ไม่พบคำขอ (404)
  • รายละเอียด IP / โฮสต์ของผู้เข้าชม
  • ระบบปฏิบัติการของผู้เข้าชม
  • รายละเอียดเบราว์เซอร์
  • การกระจายเวลา
  • อ้างอิง
  • รหัสสถานะ HTTP
  • ที่ตั้งทางภูมิศาสตร์

หากไฟล์ที่เลือกกำลังได้รับการอัปเดตตามเวลาจริงคุณจะสังเกตเห็นว่าตัวชี้วัดได้รับการปรับปรุงในเทอร์มินัล ที่นี่คุณสามารถผ่านการวัดที่คุณต้องวิเคราะห์.

การตรวจสอบตามเวลาจริงผ่าน HTTP (s)

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

goaccess /var/log/nginx/access.log -o /var/www/geekflare.com/htdocs/real-time.html –log-format = COMBINED –real-time-html

ด้านบนฉันกำลังเปลี่ยนเส้นทางเอาต์พุตไปยังไฟล์ real-time.html ซึ่งมีให้ใน htdocs เนื่องจากเป็น htdocs ฉันสามารถเข้าถึงไฟล์นี้ได้จาก https://geekflare.com/real-time.html เมื่อใดก็ตามที่ฉันต้องการดูตัวชี้วัด.

แดชบอร์ดที่สวยงาม!

อย่างไรก็ตามฉันจะไม่แนะนำให้ทำเช่นนี้ในการผลิต ฉันแน่ใจว่าคุณไม่ต้องการให้ใครบางคนอ่านบันทึกการใช้เว็บเซิร์ฟเวอร์ของคุณและคุณอาจต้องการใช้ข้อ จำกัด ดังต่อไปนี้.

  • ป้องกันไฟล์ด้วยผู้ใช้และรหัสผ่าน
  • อนุญาตให้เข้าถึงได้จาก IP ของคุณเท่านั้น
  • ใช้ URL อื่นที่มีพอร์ตที่กำหนดเองและวางไว้ข้างหลังไฟร์วอลล์เพื่ออนุญาตเฉพาะ IP / ผู้ใช้ที่สามารถเข้าถึงได้

GoAccess ดูตัววิเคราะห์บันทึกโอเพ่นซอร์สที่มีประสิทธิภาพ มันมีน้ำหนักเบาและฟรีดังนั้นไปข้างหน้าและลองดู.

คุณอาจสนใจที่จะตรวจสอบตัววิเคราะห์บันทึกบนคลาวด์.

Tags:

  • การตรวจสอบ

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map