Beberapa tahun yang lalu, ketika berhadapan dengan masalah lain dalam kinerja postgres, saya harus mempelajari statistik postgres. Menggali pandangan dan fungsi, saya mendapati diri saya berpikir bahwa bekerja dengan apa yang default tidak cukup nyaman.
Dan nyatanya, di postgres cukup banyak dari semua jenis metrik, semuanya disajikan dalam bentuk representasi dan fungsi. Di satu sisi, sangat nyaman, menulis SELECT dan menerima data. Di sisi lain, tulisan berkala semacam itu agak melelahkan.
Pada saat yang sama, saya perlu tidak hanya melihat satu patung saja, saya perlu melacak perubahannya. Saya tidak ingat apa itu pasti, mungkin Anda harus melihat perubahan dalam jeda replikasi, atau dengan frekuensi apa permintaan khusus dipanggil ...
Jadi, setelah menyadari bahwa saya punya cukup alat untuk saya, saya mulai mencari utilitas untuk tugas saya, tetapi sayangnya, saya tidak menemukan apa pun yang cocok untuk saya. Beginilah
pgCenter muncul.
Awalnya, itu adalah utilitas konsol dan dipahami sebagai hal yang mudah digunakan yang, dalam antarmuka seperti teratas, akan menampilkan perubahan dalam statistik pasca-statistik. Namun, mengingat bahwa selama Pemecahan Masalah postgres, Anda masih perlu memiliki metrik sistem di depan mata Anda, statistik sistem juga telah ditambahkan ... cpu, memori, swap, disk, dan pemanfaatan antarmuka jaringan. Hanya kemudian fungsi admin lainnya ditambahkan, seperti melihat konfigurasi dan mengedit konfigurasi, bekerja dengan log, kemampuan untuk memotret permintaan dan klien. Secara umum, secara bertahap jumlah fungsi bertambah ... dan pengguna menawarkan ide berbeda bagaimana membuat alat ini menjadi lebih baik. Hari ini, setelah beberapa pengembangan, saya akhirnya siap untuk menyajikan rilis baru di mana pgCenter telah banyak berubah.
Perubahan utama dan mungkin yang paling penting adalah pgCenter sekarang ditulis dalam Go. Awalnya dalam bahasa C, tapi jujur saja, on Go, lebih mudah bagi saya untuk mengimplementasikan ide dan menambahkan fitur baru. Fitur positif lainnya adalah distribusi - file yang dapat dieksekusi adalah satu biner yang hanya perlu Anda unduh, unzip, dan gunakan.
Inovasi besar lainnya adalah pgenter sekarang tidak hanya menjadi penampil statistik terbaik. Sekarang statistik dapat dibuang ke file lokal dan kemudian dilihat jika perlu. Ini digunakan ketika tidak ada pemantauan yang dipermasalahkan atau perlu untuk mengumpulkan statistik selama benchmarking pada mesin atau wadah virtual sementara. Akibatnya, ternyata sesuatu yang menyerupai
statspack Oracle atau misalnya
sar dari
paket sysstat . Dalam hal ini, Anda tidak perlu memagari apapun di tingkat dasar, tidak ada fungsi tambahan, dll.
Sebagai hasilnya, kami mendapat 3 utilitas dalam satu biner dan semuanya disebut sebagai sub-perintah terpisah seperti yang terlihat di
git atau
perf .
Pada ini, inovasi utama berakhir dan perbaikan kecil tetap ada. Mereka terutama terkait dengan penampil teratas:
- Sekarang, secara default, alih-alih statistik pada database, statistik aktivitas ditampilkan - siapa yang terhubung, permintaan apa yang dijalankan, berapa lama, dan sebagainya. Pengalaman menunjukkan bahwa paling sering perlu untuk mengevaluasi kegiatan saat ini, jadi mungkin masuk akal untuk segera menunjukkan patung khusus ini.
- Dalam statistik aktivitas, Anda sekarang dapat melihat kedua proses latar belakang (ditambahkan pada postgres 10) dan klien yang menganggur yang tidak melakukan apa-apa (diaktifkan oleh hotkey). Sebelumnya, idle tidak ditampilkan sama sekali, karena ketidakgunaan mereka, tetapi beberapa orang tiba-tiba membutuhkannya.
- Statistik yang terkait dengan tabel digunakan untuk ditampilkan dalam dua tampilan terpisah, sekarang semua statistik digabungkan dan ditampilkan dalam satu tampilan.
- Fungsi penyaringan sekarang mendukung ekspresi reguler, dan Anda dapat lebih fleksibel mengatur parameter apa yang sebenarnya ingin Anda lihat ... nama tabel, indeks, fungsi, kueri, dll.
Mungkin saya lupa menyebutkan beberapa fitur lain, tetapi saya mencantumkan yang paling menarik menurut saya.
Tampaknya itu semua, semua yang sudah menggunakan utilitas yang saya sarankan untuk memperbarui, dan semua yang mendengar untuk pertama kalinya, saya mendorong Anda untuk mencoba atau melihat demo kecil.

Ada juga
presentasi dari laporan, meskipun versi lama dijelaskan di sana, tetapi masuk akal untuk melihatnya juga.
Dan tentu saja, saya menunggu umpan balik dan laporan bug. Semoga hari kalian menyenangkan!