Pemantauan Log Nginx dan Apache dengan GoAccess

Memantau dan menganalisis log server web dengan open-time log analyzer sumber terbuka – GoAccess


Pemecahan masalah web itu menyenangkan dan bisa membuat frustasi jika Anda tidak dilengkapi dengan alat yang tepat.

Jika Anda mendukung situs web lalu lintas padat maka sering kali Anda perlu menganalisis dan memantau log server web untuk kinerja & perencanaan kapasitas. Ini penting untuk insinyur web.

Memeriksa ukuran log yang lebih kecil secara manual tidak masalah, tetapi jika Anda memiliki file yang besar, maka tidak akan menyenangkan untuk menelusuri jutaan baris untuk menemukan metrik.

Itu sebabnya Anda membutuhkan alat untuk memfasilitasi pekerjaan administrator dan membuatnya lebih produktif.

GoAccess adalah penganalisis log open-source yang ringan yang mendukung berbagai format log dan dapat digunakan dengan salah satu dari yang berikut ini.

  • Nginx
  • Apache HTTP
  • AWS ELB, S3, CloudFront
  • Penyimpanan cloud Google

Metrik apa yang dapat Anda analisis dengan GoAccess?

Hampir semua yang Anda tangkap dalam log. Untuk memberi Anda ide:

  • Waktu diambil untuk melayani permintaan
  • IP pengunjung, DNS, host
  • Browser pengunjung & Rincian Sistem Operasi
  • 404 tidak ditemukan detail
  • Permintaan / pengunjung teratas
  • Bandwidth
  • File statis
  • Lokasi Geo
  • Kode status
  • dan lainnya..

Mencari metrik ini untuk dipantau dari situs Anda?

Baik!

Di OS mana Anda dapat menginstal?

GoAccess hanya mendapatkan satu ketergantungan – ncurses. Jika Anda dapat menginstal, Anda dapat menggunakannya OS apa saja.

Ini tersedia dalam paket distribusi untuk:

  • Ubuntu
  • Debian
  • Fedora
  • CentOS
  • FreeBSD / OpenBSD
  • Slackware
  • Arch Linux
  • Gentoo
  • MacOS
  • Windows melalui Cygwin

Namun, Anda juga dapat membangun dari sumber atau menggunakannya dengan Docker.

Jika Anda baru mengenal Docker, saya akan merekomendasikan mengambil ini Tentu saja Penguasaan Docker.

Menginstal GoAccess di Ubuntu

  • Login ke server Ubuntu dengan hak akses root
  • Gunakan apt-get untuk menginstal seperti di bawah ini

apt-get install goaccess

Mudah.

Menginstal di CentOS

Masuk ke server dan jalankan perintah yum

yum instal goaccess

Menginstal menggunakan Sumber pada CentOS / Ubuntu

Cinta dikompilasi dari sumber?

Inilah langkah-langkahnya.

  • Instal dependensi berikut jika menggunakan CentOS

yum instal gcc ncurses-devel glib2-devel geoip-devel tokyocabinet-devel

  • Jika menggunakan Ubuntu

apt-get install libncursesw5-dev libgeoip-dev make

  • Unduh paket terbaru menggunakan wget

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

  • Ekstrak file yang diunduh

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

  • Buka folder yang baru dibuat, yang Anda dapatkan setelah mengekstrak

cd goaccess-1.2

  • Kompilasi dengan perintah di bawah ini

./ configure –enable-geoip = legacy –enable-utf8
membuat
buat instal

Sudah selesai dilakukan dengan baik, Anda telah menginstal GoAccess dan siap untuk menganalisis log.

Verifikasi Instalasi

Setelah terinstal, cukup jalankan goaccess pada command prompt dan itu akan mencetak penggunaan seperti di bawah ini.

[[dilindungi email] goaccess-1.2] # goaccess
GoAccess – 1.2
Penggunaan: goaccess [nama file] [opsi …] [-c] [- M] [- H] [- q] [- d] […]
Opsi-opsi berikut juga dapat disediakan untuk perintah:
Catatan & Opsi Format Tanggal
  –date-format = – Tentukan format tanggal log. mis.,% d /% b /% Y
  –log-format = – Tentukan format log. Kutipan batin perlu
                                    melarikan diri, atau menggunakan tanda kutip tunggal.
  –time-format = – Menentukan format waktu log. mis.,% H:% M:% S
Opsi Antarmuka Pengguna
  -c –config-dialog – Log konfigurasi / tanggal / waktu konfirmasi.
  -i –hl-header – Sorot warna panel aktif.
  -m –with-mouse – Mengaktifkan dukungan mouse di dasbor utama.
  –color = – Menentukan warna khusus. Lihat manual untuk lebih lanjut
                                    detail dan opsi.
  –skema warna =<1 | 2 | 3>          – Skema: 1 => Gray, 2 => Hijau, 3 => Monokai.
  –html-custom-css = – Menentukan file CSS khusus dalam laporan HTML.
  –html-custom-js = – Tentukan file JS khusus dalam laporan HTML.
  –html-prefs = – Tetapkan preferensi laporan HTML default.
  –html-report-title = – Tetapkan judul dan tajuk halaman laporan HTML.
  –json-pretty-print – Memformat output JSON dengan tab & baris baru.
  –max-items – Jumlah maksimum item yang ditampilkan per panel.
                                    Lihat halaman manual untuk batasan.
  –no-color – Nonaktifkan keluaran berwarna.
  –no-column-names – Jangan menulis nama kolom dalam output istilah.
  –no-csv-summary – Nonaktifkan ringkasan metrik pada output CSV.
  –no-progress – Nonaktifkan metrik kemajuan.
  –no-tab-scroll – Nonaktifkan menggulir panel di TAB.
  –no-html-terakhir-diperbarui – Sembunyikan bidang terakhir diperbarui HTML.
Opsi Server
  –addr = – Tentukan alamat IP untuk mengikat server.
  –daemonize – Jalankan sebagai daemon (jika – real-time-html diaktifkan).
  –fifo-in = – Jalur untuk membaca pipa bernama (FIFO).
  –fifo-out = – Jalur untuk menulis pipa bernama (FIFO).
  –origin = – Pastikan klien mengirim header asal yang ditentukan
                                    pada jabat tangan WebSocket.
  –port = – Tentukan port yang akan digunakan.
  –real-time-html – Mengaktifkan output HTML real-time.
  –ssl-cert = – Jalur ke TLS / sertifikat SSL.
  –ssl-key = – Jalur ke TLS / SSL private key.
  –ws-url = – URL yang ditanggapi oleh server WebSocket.
Opsi File
  –                               – File log ke parse dibaca dari stdin.
  -f –log-file = – Jalur untuk memasukkan file log.
  -l –debug-file = – Kirim semua pesan debug ke yang ditentukan
                                    mengajukan.
  -p –config-file = – File konfigurasi khusus.
  –invalid-request = – Catat permintaan tidak valid ke file yang ditentukan.
  –no-global-config – Jangan memuat file konfigurasi global.
Opsi Parse
  -a – agent-list – Mengaktifkan daftar agen-pengguna oleh tuan rumah.
  -d –with-output-resolver – Mengaktifkan resolver IP pada HTML | output JSON.
  -e –exclude-ip = – Kecualikan satu atau beberapa IPv4 / 6. Mengizinkan IP
                                    rentang mis. 192.168.0.1-192.168.0.10
  -H –http-protocol = – Set / unset protokol permintaan HTTP jika ditemukan.
  -M –http-method = – Atur / hapuskan metode permintaan HTTP jika ditemukan.
  -o –output = file.html | json | csv – Keluaran file HTML, JSON atau CSV.
  -q –no-query-string – Abaikan string permintaan permintaan. Menghapus
                                    string kueri dapat sangat mengurangi memori
                                    konsumsi.
  -r –no-term-resolver – Nonaktifkan resolver IP pada output terminal.
  –444-as-404 – Perlakukan kode status non-standar 444 sebagai 404.
  –4xx-to-unique-count – Tambahkan kesalahan klien 4xx ke pengunjung unik
                                    menghitung.
  –all-static-files – Sertakan file statis dengan string kueri.
  –khusus perayap – Mengurai dan hanya menampilkan perayap.
  –date-spec = – Tanggal spesifik. Nilai yang mungkin: `date`
                                    (standar), atau `jam`.
  –double-decode – Mendekode nilai pengkodean ganda.
  –enable-panel = – Mengaktifkan parsing / menampilkan panel yang diberikan.
  –hour-spec = – Kekhususan jam. Nilai yang mungkin: `hr`
                                    (default), atau `min` (sepersepuluh menit).
  –abaikan-perayap – Abaikan perayap.
  –Abaikan-panel = – Abaikan parsing / menampilkan panel yang diberikan.
  –Abaikan-referer = – Abaikan referensi yang tidak dihitung. Kartu liar
                                    diijinkan. mis., * .bing.com
  –Abaikan-status = – Abaikan parsing kode status yang diberikan.
  –num-test = – Jumlah garis untuk diuji. >= 0 (10 default)
  –process-and-exit – Parse log dan keluar tanpa mengeluarkan data.
  –real-os – Menampilkan nama OS nyata. mis., Windows XP, Snow
                                    Macan tutul.
  –sort-panel = PANEL, METRIC, ORDER – Sortir panel pada pemuatan awal. Sebagai contoh:
                                    –sort-panel = VISITORS, BY_HITS, ASC. Lihat
                                    manpage untuk daftar panel / bidang.
  –static-file = – Tambahkan ekstensi file statis. mis .: .mp3.
                                    Ekstensi peka huruf besar-kecil.
Opsi GeoIP
  -g –std-geoip – Database GeoIP standar untuk lebih sedikit memori
                                  konsumsi.
  –geoip-database = – Tentukan path ke file database GeoIP. yaitu.,
                                    GeoLiteCity.dat, GeoIPv6.dat …
Pilihan lain
  -h –help – Bantuan ini.
  -V –versi – Menampilkan informasi versi dan keluar.
  -s –storage – Menampilkan metode penyimpanan saat ini. mis., B+
                                    Tree, Hash.
  –dcf – Menampilkan jalur konfigurasi default
                                    file ketika `-p` tidak digunakan.
Contoh dapat ditemukan dengan menjalankan `man goaccess`.
Untuk lebih jelasnya kunjungi: http://goaccess.io
GoAccess Copyright (C) 2009-2016 oleh Gerardo Orellana
[[dilindungi email] goaccess-1.2] #

Menganalisis Nginx & Apache dengan GoAccess

Salah satu cara tercepat untuk menganalisis access.log adalah dengan menggunakan-fparameter.

Ex:

goaccess -f access.log

Di atas, saya diperintahkan untuk membuka file access.log. Ini akan menunjukkan Anda keseluruhan dashboard dan 15 bagian berikut.

  • Pengunjung unik per hari
  • File yang diminta
  • Permintaan statis (font, gambar, pdf, dll)
  • Tidak ditemukan (404) permintaan
  • Detail IP / host pengunjung
  • OS Pengunjung
  • Rincian peramban
  • Distribusi waktu
  • Perujuk
  • Kode status HTTP
  • Lokasi geografis

Jika file yang dipilih diperbarui secara real-time maka Anda akan melihat metrik diperbarui di terminal. Di sini, Anda dapat melihat metrik yang perlu dianalisis.

Pemantauan Real-time melalui HTTP

GoAccess memungkinkan Anda mengarahkan output ke file HTML yang dapat Anda gunakan sebagai pemantauan waktu nyata. Ini berguna ketika Anda tidak ingin masuk ke server setiap kali Anda perlu memverifikasi beberapa metrik.

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

Di atas, saya mengarahkan keluaran ke file real-time.html yang tersedia di bawah htdocs. Karena ini htdocs, saya dapat mengakses file ini dari https://geekflare.com/real-time.html setiap kali saya perlu melihat metrik.

Dasbor yang indah!

Namun, saya tidak akan merekomendasikan melakukan cara ini dalam produksi. Saya yakin Anda tidak ingin seseorang membaca log server web Anda dan Anda mungkin ingin menerapkan batasan berikut.

  • Lindungi file dengan pengguna dan kata sandi
  • Izinkan mengakses hanya dari IP Anda
  • Gunakan URL lain dengan port khusus dan letakkan di belakang firewall sehingga hanya IP / pengguna yang dapat mengakses

GoAccess terlihat sebagai penganalisis log open-source yang kuat. Ringan dan GRATIS jadi silakan mencoba.

Anda juga mungkin tertarik untuk memeriksa penganalisis log berbasis cloud.

TAGS:

  • Pemantauan

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