pgbadgerp - Daring di Awan

Ini adalah perintah pgbadgerp yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa workstation online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS

PROGRAM:

NAMA


pgBadger - laporan analisis log PostgreSQL yang cepat

RINGKASAN


Penggunaan: pgbadger [opsi] logfile [...]

Penganalisis log PostgreSQL dengan laporan dan grafik yang sangat terperinci.

Argumen:

logfile dapat berupa file log tunggal, daftar file, atau perintah shell
mengembalikan daftar file. Jika Anda ingin meneruskan konten log dari stdin
gunakan - sebagai nama file. Perhatikan bahwa input dari stdin tidak akan berfungsi dengan csvlog.
Anda juga dapat menggunakan file yang berisi daftar file log untuk diurai, lihat -L
opsi baris perintah.

Pilihan:

-a | --rata-rata menit : jumlah menit untuk membuat grafik rata-rata
pertanyaan dan koneksi. Standar 5 menit.
-A | --histo-avg menit: jumlah menit untuk membuat grafik histogram
dari pertanyaan. Standar 60 menit.
-b | --begin datetime : tanggal/waktu mulai data diurai di log.
-B | --bar-graph : gunakan grafik batang sebagai ganti garis secara default.
-c | --dbclient Host : hanya melaporkan entri untuk host klien yang diberikan.
-C | --nocomment : menghapus komentar seperti /* ... */ dari kueri.
-d | --dbname database : hanya melaporkan entri untuk database yang diberikan.
-D | --dns-resolv : alamat ip klien diganti dengan nama DNS mereka.
Berhati-hatilah bahwa ini benar-benar dapat memperlambat pgBadger.
-e | --end datetime : tanggal/waktu akhir untuk data yang akan diuraikan di log.
-f | --format logtype : kemungkinan nilai: syslog, syslog2, stderr dan csv.
Bawaan: stderr.
-G | --nograph : menonaktifkan grafik pada output HTML. Diaktifkan secara default.
-h | --help : tampilkan pesan ini dan keluar.
-aku | --ident name : nama program yang digunakan sebagai ident syslog. Bawaan: postgres
-aku | --incremental : gunakan mode inkremental, laporan akan dibuat oleh
hari di direktori terpisah, --outdir harus disetel.
-j | --jobs number : jumlah pekerjaan yang harus dijalankan pada waktu yang sama. Standarnya adalah 1,
dijalankan sebagai proses tunggal.
-J | --Jobs number : jumlah file log yang akan diurai secara paralel. Bawaan
adalah 1, dijalankan sebagai proses tunggal.
-l | --last-parsing file: izinkan penguraian log inkremental dengan mendaftarkan
datetime dan baris terakhir diuraikan. Berguna jika Anda mau
untuk menonton kesalahan sejak terakhir dijalankan atau jika Anda menginginkannya
laporan per hari dengan log diputar setiap minggu.
-L | logfile-list file : file yang berisi daftar file log yang akan diurai.
-m | --maxlength size : panjang maksimum kueri, itu akan dibatasi untuk
ukuran yang diberikan. Default: tidak ada terpotong
-M | --no-multiline : jangan kumpulkan pernyataan multiline untuk menghindari sampah
terutama pada kesalahan yang menghasilkan laporan besar.
-n | --nohighlight : menonaktifkan penyorotan kode SQL.
-N | --nama aplikasi: hanya melaporkan entri untuk nama aplikasi yang diberikan
-o | --outfile filename: tentukan nama file untuk output. Default tergantung
pada format output: out.html, out.txt, out.bin,
out.json atau out.tsung.
Dengan modul JSON::XS terinstal, Anda dapat menampilkan file
dalam format JSON juga.
Untuk membuang output ke stdout gunakan - sebagai nama file.
-O | --outdir path : direktori tempat file keluar harus disimpan.
-p | --prefix string : nilai log_line_prefix khusus Anda sebagai
didefinisikan dalam postgresql.conf Anda. Gunakan hanya jika Anda
tidak menggunakan salah satu awalan standar yang ditentukan
dalam dokumentasi pgBadger, seperti jika Anda
awalan termasuk variabel tambahan seperti ip klien
atau nama aplikasi. Lihat contoh di bawah.
-P | --no-prettify : nonaktifkan kueri SQL, formatter cantik.
-q | --quiet : jangan mencetak apa pun ke stdout, bahkan tidak ada kemajuan
bar.
-r | --remote-host ip : atur host tempat menjalankan perintah cat pada
file log jarak jauh untuk mengurai file secara lokal.
-R | --retention N : jumlah minggu untuk disimpan dalam mode inkremental. Bawaan
ke 0, dinonaktifkan. Digunakan untuk mengatur jumlah weel ke
simpan di direktori keluaran. Minggu dan hari yang lebih tua
direktori secara otomatis dihapus.
-s | --sample number : jumlah sampel kueri yang akan disimpan. Standar: 3.
-S | --select-only : hanya melaporkan kueri SELECT.
-t | --top number : jumlah kueri yang akan disimpan/ditampilkan. Standar: 20.
-T | --title string : mengubah judul laporan halaman HTML.
-u | --dbuser username : hanya melaporkan entri untuk pengguna tertentu.
-U | --exclude-user username : mengecualikan entri untuk pengguna tertentu dari
melaporkan.
-v | --verbose : mengaktifkan mode verbose atau debug. Dinonaktifkan secara default.
-V | --version : tampilkan versi pgBadger dan keluar.
-w | --watch-mode : hanya melaporkan kesalahan seperti yang bisa dilakukan oleh logwatch.
-x | --ekstensi : format keluaran. Nilai: teks, html, bin, json atau
tsung. Standar: html
-X | --extra-files : dalam mode incremetal memungkinkan pgbadger untuk menulis CSS dan
File JS di direktori output sebagai file terpisah.
-z | --zcat exec_path : mengatur path lengkap ke program zcat. Gunakan jika
zcat atau bzcat atau unzip tidak ada di jalur Anda.
--pie-limit num : data pie yang lebih rendah dari num% akan menampilkan jumlah sebagai gantinya.
--exclude-query regex : kueri apa pun yang cocok dengan regex yang diberikan akan dikecualikan
dari laporan. Misalnya: "^(VACUUM|COMMIT)"
Anda dapat menggunakan opsi ini beberapa kali.
--exclude-file filename: path file yang berisi semua regex ke
gunakan untuk mengecualikan kueri dari laporan. Satu ekspresi reguler
per baris.
--include-query regex : kueri apa pun yang tidak cocok dengan regex yang diberikan akan
dikecualikan dari laporan. Anda dapat menggunakan ini
pilihan berkali-kali. Misalnya: "(tbl1|tbl2)".
--include-file nama file: jalur file yang berisi semua regex dari
pertanyaan untuk disertakan dari laporan. Satu ekspresi reguler
per baris.
--disable-error : jangan buat laporan kesalahan.
--disable-hourly : jangan buat laporan per jam.
--disable-type : jangan buat laporan kueri berdasarkan tipe, basis data
atau pengguna.
--disable-query : jangan buat laporan kueri (paling lambat, paling banyak
sering, pertanyaan oleh pengguna, oleh database, ...).
--disable-session : jangan buat laporan sesi.
--disable-connection : jangan buat laporan koneksi.
--disable-lock : jangan buat laporan kunci.
--disable-temporary : jangan buat laporan sementara.
--disable-checkpoint : jangan buat laporan checkpoint/restartpoint.
--disable-autovacuum : jangan buat laporan autovacuum.
--charset : digunakan untuk mengatur charset HTML yang akan digunakan.
Bawaan: utf-8.
--csv-separator : digunakan untuk menyetel pemisah bidang CSV, default: ,
--exclude-time regex : stempel waktu apa pun yang cocok dengan regex yang diberikan akan menjadi
dikecualikan dari laporan. Contoh: "2013-04-12 .*"
Anda dapat menggunakan opsi ini beberapa kali.
--exclude-appname name : mengecualikan entri untuk nama aplikasi yang ditentukan
dari laporan. Contoh: "pg_dump".
--exclude-line regex : pgbadger akan mulai mengecualikan entri log apa pun yang
akan cocok dengan regex yang diberikan. Dapat digunakan beberapa
waktu.
--anonymize : mengaburkan semua literal dalam kueri, berguna untuk disembunyikan
data rahasia.
--noreport : mencegah pgbadger membuat laporan secara bertahap
mode.
--log-duration : memaksa pgbadger untuk mengaitkan entri log yang dihasilkan
oleh keduanya log_duration = aktif dan log_statement = 'semua'
--enable-checksum : digunakan untuk menambahkan jumlah md5 di bawah setiap laporan kueri.

pgBadger dapat mengurai file log jarak jauh menggunakan koneksi ssh tanpa kata sandi. Menggunakan
-r atau --remote-host untuk mengatur alamat ip host atau nama host. Ada juga beberapa tambahan
opsi untuk sepenuhnya mengontrol koneksi ssh.

--ssh-program ssh path ke program ssh yang akan digunakan. Standar: ssh.
--ssh-user username koneksi nama login. Default untuk menjalankan pengguna.
--ssh-identity file path ke file identitas yang akan digunakan.
--ssh-timeout batas waktu kedua untuk kegagalan koneksi ssh. Standar 10 detik.
--ssh-options daftar opsi -o yang digunakan untuk koneksi ssh.
Opsi yang selalu digunakan:
-o Waktu Sambungan habis=$ssh_timeout
-o PreferredAuthentications=berbasis host, kunci publik

contoh:

pgbadger /var/log/postgresql.log
pgbadger /var/log/postgres.log.2.gz /var/log/postgres.log.1.gz
/var/log/postgres.log
pgbadger /var/log/postgresql/postgresql-2012-05-*
pgbadger --exclude-query="^(COPY|COMMIT)" /var/log/postgresql.log
pgbadger -b "2012-06-25 10:56:11" -e "2012-06-25 10:59:11"
/var/log/postgresql.log
kucing /var/log/postgres.log | pgbadger -
# Awalan log dengan keluaran log stderr
perl pgbadger --prefix '%t [%p]: [%l-1] user=%u,db=%d,app=%a,client=%h'
/pglog/postgresql-2012-08-21*
perl pgbadger --prefix '%m %u@%d %p %r %a : ' /pglog/postgresql.log
# Awalan baris log dengan keluaran log syslog
perl pgbadger --prefix 'user=%u,db=%d,client=%h,app=%a'
/pglog/postgresql-2012-08-21*
# Gunakan 8 CPU saya untuk mengurai file 10GB saya lebih cepat, jauh lebih cepat
perl pgbadger -j 8 /pglog/postgresql-9.1-main.log

Hasilkan file XML sesi Tsung dengan kueri tertentu saja:

perl pgbadger -S -o session.tsung --prefix '%t [%p]: [%l-1] user=%u,db=%d ' /pglog/postgresql-9.1.log

Melaporkan kesalahan setiap minggu dengan tugas cron:

30 23 * * 1 /usr/bin/pgbadger -q -w /var/log/postgresql.log -o /var/reports/pg_errors.html

Hasilkan laporan setiap minggu menggunakan perilaku tambahan:

0 4 * * 1 /usr/bin/pgbadger -q `temukan / var / log / -mtime -7 -nama "postgresql.log*"`
-o /var/reports/pg_errors-`tanggal +%F`.html -l /var/reports/pgbadger_incremental_file.dat

Ini mengandaikan bahwa file log dan laporan HTML Anda juga dirotasi setiap minggu.

Atau lebih baik, gunakan laporan inkremental yang dibuat secara otomatis:

0 4 * * * /usr/bin/pgbadger -I -q /var/log/postgresql/postgresql.log.1
-O /var/www/pg_reports/

akan menghasilkan laporan per hari dan per minggu.

Dalam mode inkremental, Anda juga dapat menentukan jumlah minggu yang akan disimpan dalam laporan:

/usr/bin/pgbadger --retensi 2 -I -q /var/log/postgresql/postgresql.log.1
-O /var/www/pg_reports/

Jika Anda memiliki pg_dump pada pukul 23:00 dan 13:00 setiap hari selama setengah jam, Anda dapat menggunakan
pgbadger sebagai berikut untuk mengecualikan periode ini dari laporan:

pgbadger --exclude-time "2013-09-.* (23|13):.*" postgresql.log

Ini akan membantu menghindari pernyataan COPY, seperti yang dihasilkan oleh pg_dump, di atas daftar
dari kueri paling lambat. Anda juga dapat menggunakan --exclude-appname "pg_dump" untuk menyelesaikan masalah ini di
cara yang lebih sederhana.

DESKRIPSI


pgBadger adalah penganalisis log PostgreSQL yang dibuat untuk kecepatan dengan laporan yang sepenuhnya terperinci dari
file log PostgreSQL Anda. Ini adalah skrip Perl tunggal dan kecil yang mengungguli yang lain
Penganalisis log PostgreSQL.

Itu ditulis dalam bahasa Perl murni dan menggunakan perpustakaan javascript (flotr2) untuk menggambar grafik
sehingga Anda tidak perlu menginstal modul Perl tambahan atau paket lainnya.
Selanjutnya, perpustakaan ini memberi kita lebih banyak fitur seperti zooming. pgBadger juga menggunakan
Pustaka javascript bootstrap dan font web FontAwesome untuk desain yang lebih baik. Semuanya adalah
tertanam.

pgBadger dapat mendeteksi secara otomatis format file log Anda (syslog, stderr atau csvlog). Dia
dirancang untuk mengurai file log besar serta file terkompresi gzip. Lihat daftar lengkap
fitur di bawah ini. Format terkompresi yang didukung adalah gzip, bzip2 dan xz. Untuk yang terakhir kamu
harus memiliki versi xz di atas 5.05 yang mendukung opsi --robot.

Semua grafik dapat diperbesar dan dapat disimpan sebagai gambar PNG.

Anda juga dapat membatasi pgBadger untuk hanya melaporkan kesalahan atau menghapus bagian mana pun dari laporan menggunakan
opsi baris perintah.

pgBadger mendukung format khusus apa pun yang disetel ke dalam direktif log_line_prefix dari . Anda
postgresql.conf asalkan setidaknya menentukan pola %t dan %p.

pgBadger memungkinkan pemrosesan paralel pada satu file log dan banyak file melalui penggunaan
dari opsi -j dan jumlah CPU sebagai nilai.

Jika Anda ingin menyimpan kinerja sistem, Anda juga dapat menggunakan log_duration sebagai ganti
log_min_duration_statement untuk memiliki laporan tentang durasi dan jumlah kueri saja.

FITUR


pgBadger melaporkan segala sesuatu tentang kueri SQL Anda:

Statistik keseluruhan
Pertanyaan menunggu yang paling sering.
Pertanyaan yang paling ditunggu.
Kueri yang menghasilkan file paling sementara.
Kueri yang menghasilkan file sementara terbesar.
Pertanyaan paling lambat.
Pertanyaan yang memakan waktu paling banyak.
Pertanyaan yang paling sering.
Kesalahan yang paling sering.
Histogram waktu kueri.
Histogram waktu sesi.
Pengguna yang terlibat dalam kueri teratas.
Aplikasi yang terlibat dalam kueri teratas.
Kueri yang menghasilkan pembatalan paling banyak.
Kueri paling banyak dibatalkan.

Laporan berikut juga tersedia dengan grafik per jam dibagi dengan periode lima
menit:

Statistik kueri SQL.
Statistik file sementara.
Statistik pos pemeriksaan.
Autovacuum dan autoanalyze statistik.
Kueri yang dibatalkan.
Peristiwa kesalahan (panik, fatal, kesalahan dan peringatan).

Ada juga beberapa laporan distribusi tentang:

Mengunci statistik.
Kueri menurut jenis (pilih/masukkan/perbarui/hapus).
Distribusi jenis kueri per database/aplikasi
Sesi per database/pengguna/klien/aplikasi.
Koneksi per database/pengguna/klien/aplikasi.
Autovacuum dan autoanalyze per tabel.
Kueri per pengguna dan total durasi per pengguna.

Semua grafik dapat diperbesar dan dapat disimpan sebagai gambar PNG. Kueri SQL yang dilaporkan adalah
disorot dan dipercantik secara otomatis.

Anda juga dapat memiliki laporan tambahan dengan satu laporan per hari dan laporan kumulatif per
pekan. Dua mode multiproses tersedia untuk mempercepat penguraian log, satu menggunakan satu inti per
file log, dan yang kedua menggunakan beberapa inti untuk mengurai satu file. Kedua mode dapat
dikombinasikan.

Granularitas histogram dapat disesuaikan menggunakan opsi baris perintah -A. Secara default mereka
akan melaporkan rata-rata setiap kueri/kesalahan teratas yang terjadi per jam, tetapi Anda dapat menentukan
granularitas hingga menit.

pgBadger juga dapat digunakan di tempat sentral untuk mengurai file log jarak jauh menggunakan kata sandi
koneksi SSH lebih sedikit. Mode ini dapat digunakan dengan file terkompresi dan dalam mode multiproses
per file (-J) tetapi tidak dapat digunakan dengan format log CSV.

KEBUTUHAN


pgBadger hadir sebagai satu skrip Perl - Anda tidak memerlukan apa pun selain Perl
distribusi. Bagan dirender menggunakan pustaka Javascript sehingga Anda tidak memerlukan apa pun.
Browser Anda akan melakukan semua pekerjaan.

Jika Anda berencana untuk mengurai file log CSV PostgreSQL, Anda mungkin memerlukan beberapa Modul Perl:

Teks::CSV_XS - untuk mengurai file log CSV PostgreSQL.

Modul ini opsional, jika Anda tidak memiliki log PostgreSQL dalam format CSV, Anda tidak perlu
untuk menginstalnya.

Jika Anda ingin mengekspor statistik sebagai file JSON, Anda memerlukan modul Perl tambahan:

JSON::XS - JSON membuat serial/deserialisasi, dilakukan dengan benar dan cepat

Modul ini opsional, jika Anda tidak memilih format output json, Anda tidak perlu melakukannya
pasang itu.

Format file log terkompresi dideteksi secara otomatis dari ekstensi file. Jika pgBadger menemukan gz
ekstensi itu akan menggunakan utilitas zcat, dengan ekstensi bz2 itu akan menggunakan bzcat dan jika
ekstensi file zip atau xz maka utilitas unzip atau xz akan digunakan.

Jika utilitas tersebut tidak ditemukan dalam variabel lingkungan PATH maka gunakan --zcat
opsi baris perintah untuk mengubah jalur ini. Sebagai contoh:

--zcat="/usr/local/bin/gunzip -c" atau --zcat="/usr/local/bin/bzip2 -dc"
--zcat="C:\tools\unzip -p"

Secara default pgBadger akan menggunakan utilitas zcat, bzcat dan unzip mengikuti file
perpanjangan. Jika Anda menggunakan format kompres deteksi otomatis default, Anda dapat mencampur gz, bz2, xz
atau file zip. Menentukan nilai khusus ke opsi --zcat akan menghapus fitur campuran ini
format terkompresi.

Perhatikan bahwa multiprocessing tidak dapat digunakan dengan file terkompresi atau file CSV serta
di bawah platform Windows.

INSTALASI


Unduh tarball dari github dan buka paket arsip sebagai berikut:

tar xzf pgbadger-7.x.tar.gz
CD pgbadger-7.x/
perl Makefile.PL
make && sudo make install

Ini akan menyalin pgbadger skrip Perl ke /usr/local/bin/pgbadger secara default dan man
halaman ke /usr/local/share/man/man1/pgbadger.1. Itu adalah instalasi default
direktori untuk instalasi 'situs'.

Jika Anda ingin menginstal semua di bawah /usr/ lokasi, gunakan INSTALLDIRS='perl' sebagai argumen dari
Makefile.PL. Script akan diinstal ke /usr/bin/pgbadger dan halaman manual ke dalam
/usr/share/man/man1/pgbadger.1.

Misalnya, untuk menginstal semuanya seperti yang dilakukan Debian, lakukan sebagai berikut:

perl Makefile.PL INSTALLDIRS=vendor

Secara default INSTALLDIRS diatur ke situs.

POSTGRESQL KONFIGURASI


Anda harus mengaktifkan dan mengatur beberapa arahan konfigurasi di postgresql.conf Anda sebelum
mulai.

Anda harus terlebih dahulu mengaktifkan SQL query logging untuk memiliki sesuatu untuk diurai:

log_min_duration_statement = 0

Di sini setiap pernyataan akan dicatat, pada server yang sibuk Anda mungkin ingin meningkatkan nilai ini menjadi
hanya mencatat kueri dengan waktu durasi yang lebih tinggi. Perhatikan bahwa jika Anda memiliki log_statement yang disetel ke
'semua' tidak ada yang akan dicatat melalui direktif log_min_duration_statement. Lihat selanjutnya
bab untuk informasi lebih lanjut.

Dengan format log 'stderr', log_line_prefix setidaknya harus:

log_line_prefix = '%t [%p]: [%l-1] '

Awalan baris log dapat menambahkan pengguna, nama basis data, nama aplikasi, dan alamat ip klien sebagai
berikut:

log_line_prefix = '%t [%p]: [%l-1] user=%u,db=%d,app=%a,client=%h '

atau untuk format file log syslog:

log_line_prefix = 'pengguna=%u,db=%d,aplikasi=%aclient=%h '

Awalan baris log untuk keluaran stderr juga dapat berupa:

log_line_prefix = '%t [%p]: [%l-1] db=%d,user=%u,app=%a,client=%h '

atau untuk keluaran syslog:

log_line_prefix = 'db=%d,pengguna=%u,aplikasi=%a,klien=%h '

Anda perlu mengaktifkan parameter lain di postgresql.conf untuk mendapatkan informasi lebih lanjut dari . Anda
file log:

log_checkpoints = aktif
log_koneksi = aktif
log_disconnections = aktif
log_lock_wait = aktif
log_temp_files = 0
log_autovacuum_min_duration = 0

Jangan aktifkan log_statement karena format lognya tidak akan diuraikan oleh pgBadger.

Tentu saja pesan log Anda harus dalam bahasa Inggris tanpa dukungan lokal:

lc_messages='C'

tetapi ini tidak hanya direkomendasikan oleh pgBadger.

Catatan: baris sesi [%l-1] hanya digunakan untuk mencocokkan awalan default untuk "stderr". Itu
-1 tidak memiliki tujuan nyata dan pada dasarnya tidak digunakan dalam statistik / grafik Pgbadger. Kamu bisa
menghapusnya dengan aman dari log_line_prefix tetapi Anda harus mengatur perintah --prefix
pilihan garis.

log_min_durasi_pernyataan, log_durasi dan log_pernyataan


Jika Anda ingin laporan statistik lengkap, Anda harus menyetel log_min_duration_statement ke 0 atau lebih
milidetik.

Jika Anda hanya ingin melaporkan durasi dan jumlah pertanyaan dan tidak ingin semua detail tentang
kueri, setel log_min_duration_statement ke -1 untuk menonaktifkannya dan mengaktifkan log_duration di
file postgresql.conf Anda. Jika Anda ingin menambahkan laporan permintaan yang paling umum, Anda dapat
pilih untuk menyetel log_min_duration_statement ke nilai yang lebih tinggi atau pilih untuk mengaktifkan
log_pernyataan.

Mengaktifkan log_min_duration_statement akan menambahkan laporan tentang kueri dan kueri paling lambat
yang memakan waktu paling banyak. Berhati-hatilah jika Anda memiliki log_statement yang disetel ke 'semua' tidak ada
akan dicatat dengan log_line_prefix.

PARALEL PENGOLAHAN


Untuk mengaktifkan pemrosesan paralel, Anda hanya perlu menggunakan opsi -j N di mana N adalah angkanya
core yang ingin Anda gunakan.

pgbadger kemudian akan melanjutkan sebagai berikut:

untuk setiap file log
ukuran potongan = int(ukuran file / N)
lihat offset awal/akhir dari potongan ini
garpu N proses dan cari untuk memulai offset dari setiap potongan
setiap proses akan berakhir ketika parser mencapai offset akhir
dari potongannya
setiap proses menulis statistik ke dalam file sementara biner
tunggu semua anak telah berakhir
Semua file sementara biner yang dihasilkan kemudian akan dibaca dan dimuat ke
memori untuk membangun keluaran html.

Dengan metode itu, pada awal/akhir potongan pgbadger dapat memotong atau menghilangkan maksimum N
kueri file log perl yang merupakan celah yang tidak signifikan jika Anda memiliki jutaan kueri di
berkas log Anda. Kemungkinan kueri yang Anda cari longgar mendekati 0,
inilah mengapa saya pikir kesenjangan ini layak huni. Sebagian besar waktu kueri dihitung dua kali tetapi
terpotong.

Ketika Anda memiliki banyak file log kecil dan banyak CPU, lebih cepat untuk mendedikasikan satu inti
ke satu file log pada satu waktu. Untuk mengaktifkan perilaku ini, Anda harus menggunakan opsi -JN sebagai gantinya.
Dengan 200 file log masing-masing 10MB, penggunaan opsi -J mulai sangat menarik
dengan 8 Core. Dengan menggunakan metode ini, Anda pasti tidak akan kehilangan pertanyaan apa pun dalam laporan.

Dia adalah benchmark yang dilakukan pada server dengan 8 CPU dan satu file 9.5GB.

Opsi | 1 CPU | 2 CPU | 4 CPU | 8 CPU
--------+---------+-------+-------+------
-j | 1 jam 41 menit 18 | 50m25 | 25m39 | 15m58
-J | 1 jam 41 menit 18 | 54m28 | 41m16 | 34m45

Dengan 200 file log masing-masing 10MB dan total 2GB, hasilnya sedikit berbeda:

Opsi | 1 CPU | 2 CPU | 4 CPU | 8 CPU
--------+-------+-------+-------+------
-j | 20m15 | 9m56 | 5m20 | 4m20
-J | 20m15 | 9m49 | 5m00 | 2m40

Jadi disarankan untuk menggunakan -j kecuali jika Anda memiliki ratusan file log kecil dan dapat digunakan di
minimal 8 CPU.

PENTING: ketika Anda menggunakan parsing parsing pgbadger akan menghasilkan banyak sementara
file di / Tmp direktori dan akan menghapusnya di akhir, jadi jangan hapus file-file itu
kecuali pgbadger tidak berjalan. Semuanya diberi nama dengan templat berikut:
tmp_pgbadgerXXXX.bin agar mudah dikenali.

TAMBAHAN LAPORAN


pgBadger menyertakan mode laporan inkremental otomatis menggunakan opsi -I atau --incremental.
Saat berjalan dalam mode ini, pgBadger akan menghasilkan satu laporan per hari dan kumulatif
laporan per minggu. Output pertama kali dilakukan dalam format biner ke direktori output wajib
(lihat opsi -O atau --outdir), lalu dalam format HTML untuk laporan harian dan mingguan dengan main
berkas indeks.

File indeks utama akan menampilkan menu tarik-turun per minggu dengan tautan ke laporan minggu dan
link ke laporan harian minggu ini.

Misalnya, jika Anda menjalankan pgBadger sebagai berikut berdasarkan file yang diputar setiap hari:

0 4 * * * /usr/bin/pgbadger -I -q /var/log/postgresql/postgresql.log.1
-O /var/www/pg_reports/

Anda akan memiliki semua laporan harian dan mingguan untuk periode berjalan penuh.

Dalam mode ini pgBagder akan membuat file tambahan otomatis ke direktori output,
jadi Anda tidak perlu menggunakan opsi -l kecuali Anda ingin mengubah jalur file itu.
Ini berarti Anda dapat menjalankan pgBadger dalam mode ini setiap hari pada file log yang diputar setiap hari
minggu, itu tidak akan menghitung entri log dua kali.

Untuk menghemat ruang disk, Anda mungkin ingin menggunakan opsi baris perintah -X atau --extra-files untuk
paksa pgBadger untuk menulis javascript dan css untuk memisahkan file di direktori output. Itu
sumber daya kemudian akan dimuat menggunakan skrip dan tag tautan.

BINARY FORMAT


Menggunakan format biner dimungkinkan untuk membuat inkremental dan kumulatif kustom
laporan. Misalnya, jika Anda ingin menyegarkan laporan pgbadger setiap jam dari harian
File log PostgreSQl, Anda dapat melanjutkan dengan menjalankan setiap jam perintah berikut:

pgbadger --parsing terakhir .pgbadger_last_state_file -o sunday/hourX.bin /var/log/pgsql/postgresql-Sun.log

untuk menghasilkan file data tambahan dalam format biner. Dan untuk menghasilkan HTML baru
laporkan dari file biner itu:

pgbadger minggu/*.bin

Atau contoh lain, jika Anda memiliki satu file log per jam dan Anda ingin laporan menjadi
membangun kembali setiap kali file log diaktifkan. Lanjutkan sebagai berikut:

pgbadger -o hari1/jam01.bin /var/log/pgsql/pglog/postgresql-2012-03-23_10.log
pgbadger -o hari1/jam02.bin /var/log/pgsql/pglog/postgresql-2012-03-23_11.log
pgbadger -o hari1/jam03.bin /var/log/pgsql/pglog/postgresql-2012-03-23_12.log
...

Ketika Anda ingin me-refresh laporan HTML, misalnya setiap kali setelah file biner baru adalah
dihasilkan, lakukan saja hal berikut:

pgbadger -o hari1_report.html hari1/*.bin

Sesuaikan perintah mengikuti kebutuhan Anda.

JSON FORMAT


Format JSON bagus untuk berbagi data dengan bahasa lain, yang membuatnya mudah untuk
mengintegrasikan hasil pgBadger ke alat pemantauan lain seperti Cacti atau Graphite.

PENULIS


pgBadger adalah karya asli dari Gilles Darold.

Logo pgBadger adalah ciptaan asli Damien Clochard.

Desain pgBadger v4.x berasal dari perusahaan "Art is code".

Situs web ini adalah karya Gilles Darold.

pgBadger dikelola oleh Gilles Darold, orang-orang baik di Dalibo, dan setiap orang yang mau
untuk berkontribusi.

Banyak orang telah berkontribusi pada pgBadger, mereka semua dikutip dalam file Changelog.

Gunakan pgbadgerp online menggunakan layanan onworks.net



Program online Linux & Windows terbaru