Pflogsumm

Generate Monthly Email Report pada Zimbra Menggunakan Pflogsumm

Posted by

Pflogsumm merupakan salah satu dari banyak tools yang ada untuk melakukan generate email report, khususnya yang menggunakan engine postfix sebagai MTA email servernya. Dari banyak tutorial yang saya temukan di internet, kebanyakan menuliskan generate report menggunakan pflogsumm hanya untuk daily saja, padahal yang saya butuhkan tidak hanya daily, melainkan bisa monthly juga sebagai monitoring dan perhitungan nantinya.

Akhirnya saya coba-coba oprek dan akhirnya ketemu juga bagaimana cara generate monthly report menggunakan pflogsumm,

Ada 2 pilihan supaya bisa generate montly report, berikut ini langkah-langkahnya

Cara Pertama

1. cek status rotate zimbra.log, jika sebelumnya statusnya daily, silakan ubah menjadi monthly, buka file /etc/logrotate.d/zimbra, cek pada bagian berikut

/var/log/zimbra.log {
    monthly #sebelumnya daily
    missingok
    notifempty
    create 0644 zimbra zimbra
    postrotate
      kill -HUP `cat /var/run/syslog*.pid 2> /dev/null` 2> /dev/null || true
      su - zimbra -c "/opt/zimbra/bin/zmconfigdctl restart" > /dev/null 2>&1 || true
    endscript
    compress
}

Jika sudah diubah, silakan save. Proses perubahan ini tidak berlaku surut, sehingga untuk generate log secara monthly bisa dilakukan setelah 1 bulan pasca perubahan tersebut

2. Silakan download pflogsumm.pl dan beri hak akses eksekusi

cd /srv/
wget -c https://raw.githubusercontent.com/rizkypratama01/my-script/main/pflogsumm.pl
chmod +x pflogsumm.pl

3. Generate monthly report dengan pflogsumm

zcat /var/log/zimbra.log-xxx.gz | /srv/pflogsumm.pl --bounce-detail=0 --deferral-detail=0 --reject-detail=0 --smtpd-warning-detail=0 -h 10 -u 10

zimbra.log-xxx.gz silakan sesuaikan dengan nama file log hasil rotasi monthly yang ada pada directory /var/log/

Cara Kedua

1. Jika tidak ingin diubah menjadi monthly, bisa juga rotate nya tetap daily, tetapi di lognya di set keep selama 30 hari, buka file /etc/logrotate.d/zimbra, sama seperti langkah 1, hanya saja yang daily tetap, lalu tambahkan rotate 30 dibawah tulisan daily, seperti berikut

/var/log/zimbra.log {
    daily
    rotate 30
    missingok
    notifempty
    create 0644 zimbra zimbra
    postrotate
      kill -HUP `cat /var/run/syslog*.pid 2> /dev/null` 2> /dev/null || true
      su - zimbra -c "/opt/zimbra/bin/zmconfigdctl restart" > /dev/null 2>&1 || true
    endscript
    compress
}

2. Selanjutnya misal setiap akhir bulan, kita gabungkan seluruh file zimbra.log daily selama 30 hari kebelakang menjadi 1 file

zcat /var/log/zimbra.log*.gz > /var/log/full-log-monthly.txt

3. Silakan download pflogsumm.pl dan beri hak akses eksekusi

cd /srv/
wget -c https://raw.githubusercontent.com/rizkypratama01/my-script/main/pflogsumm.pl
chmod +x pflogsumm.pl

4. Jalankan pflogsumm untuk generate monthly report

/srv/pflogsumm.pl --bounce-detail=0 --deferral-detail=0 --reject-detail=0 --smtpd-warning-detail=0 -h 10 -u 10 /var/log/full-log-monthly.txt

Pada option pflogsumm yang saya gunakan diatas yaitu hanya untuk menampilkan 10 teratas saja, dan tidak menampilkan bounce-detail, deferral-detail, reject-detail, maupun smtpd-warning-detail, jika memang dari teman-teman informasi tersebut diperlukan, silakan disesuaikan saja dengan menghapus option –bounce-detail=1 dll supaya informasi tersebut bisa tampil pada hasil generate

Mungkin cukup sekian, semoga bermanfaat

 

2 comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.