pprof adalah alat profiling untuk Go yang digunakan untuk menganalisis dan meningkatkan performa program Go serta menyediakan data performa terkait. Anda dapat menggunakan modul Golang Pull dari aplikasi Full-stack Observability yang disediakan oleh Simple Log Service untuk mengumpulkan data performa yang disediakan oleh pprof dari program Go, serta menganalisis dan melihat data tersebut di dalam aplikasi tersebut.
Observability menyediakan probe komersial yang dikembangkan sendiri untuk bahasa Go. Probe ini menawarkan instrumentasi non-intrusif dengan lebih banyak fitur dan stabilitas yang lebih baik. Untuk informasi selengkapnya, lihat Memulai pemantauan aplikasi Go.
Prasyarat
Instans Full-stack Observability telah dibuat. Untuk informasi selengkapnya, lihat Buat instans.
Batasan
Hanya mendukung Linux Logtail versi 1.7 atau yang lebih baru.
Cara kerja
Go menyediakan mekanisme bawaan untuk mengekspos data performa yang disediakan oleh pprof. Setelah Anda mengaktifkan mekanisme eksposisi bawaan tersebut dalam program Go, Logtail dapat memperoleh data performa tersebut melalui HTTP.

Persiapan
Sebelum mengumpulkan data performa pprof dari program Go, Anda harus mengaktifkan mekanisme untuk mengekspos data tersebut. Anda dapat menggunakan kode berikut untuk mengaktifkan mekanisme bawaan tersebut atau mengonfigurasi mekanisme eksposisi kustom. Pastikan data pprof diekspos pada alamat berikut: {host}:{port}/debug/pprof/Port. Contoh berikut menunjukkan cara mengekspos data performa pprof pada port 8080.
package main
import (
"net/http"
_ "net/http/pprof"
)
func main() {
// lakukan sesuatu...
_ = http.ListenAndServe(":8080", nil)
}Buat konfigurasi Logtail
Masuk ke Konsol Simple Log Service.
Pada bagian Log Application, klik tab Intelligent O&M, lalu klik Full-stack Observability.
Pada halaman Simple Log Service Full-stack Observability, klik instans yang diinginkan.
Pada panel navigasi sebelah kiri, klik Performance Monitoring.
Jika Anda pertama kali menggunakan Performance Monitoring untuk instans tersebut, klik Enable Now.
Pada panel navigasi kiri, klik Data Ingestion. Pada halaman Data Ingestion Configuration, temukan Golang Pull.
Untuk pertama kalinya membuat konfigurasi Logtail untuk data pemantauan host, aktifkan sakelar untuk membuka halaman konfigurasi. Jika Anda sudah pernah membuat konfigurasi Logtail, klik ikon
untuk membuka halaman konfigurasi.Buat kelompok mesin.
Jika Anda memiliki kelompok mesin yang sudah ada, klik Use Existing Machine Group.
Jika Anda tidak memiliki kelompok mesin yang tersedia, lakukan langkah-langkah berikut. Contoh ini menggunakan Instance ECS.
Pada tab ECS Instances, pilih Instance ECS yang dituju, lalu klik Create.
Untuk informasi selengkapnya, lihat Instal Logtail pada Instance ECS.
PentingJika server Anda merupakan Instance ECS yang termasuk dalam Akun Alibaba Cloud yang berbeda, server dari penyedia cloud pihak ketiga, atau server di pusat data lokal yang dikelola sendiri, Anda harus menginstal secara manual Linux Logtail versi 1.7 atau yang lebih baru pada server tersebut. Untuk informasi selengkapnya, lihat Instal Logtail pada server Linux. Setelah menginstal Logtail, Anda juga harus mengonfigurasi secara manual pengenal pengguna pada server tersebut. Untuk informasi selengkapnya, lihat Konfigurasikan pengenal pengguna.
Setelah instalasi selesai, klik Confirm Installation Complete.
Pada halaman Create Machine Group, masukkan Name, lalu klik Next.
Simple Log Service mendukung kelompok mesin berbasis IP dan kelompok mesin berbasis pengenal kustom. Untuk informasi selengkapnya, lihat Buat kelompok mesin berbasis IP dan Buat kelompok mesin berbasis pengenal kustom.
PentingPastikan server tempat Anda menginstal Logtail dapat terhubung ke server tujuan.
Pastikan kelompok mesin tersebut muncul di bagian Applied Server Groups, lalu klik Next.
PentingJika Anda menerapkan kelompok mesin segera setelah membuatnya, status heartbeat kelompok mesin tersebut mungkin menampilkan FAIL. Hal ini terjadi karena kelompok mesin belum terhubung ke Simple Log Service. Untuk mengatasi masalah ini, Anda dapat mengklik Automatic Retry. Jika masalah tetap berlanjut, lihat Apa yang harus dilakukan jika tidak ada koneksi heartbeat yang terdeteksi pada Logtail?
Pada wizard konfigurasi Data Source Settings, konfigurasikan parameter berikut, lalu klik Finish.
Parameter Name
Description
Configuration Name
Nama konfigurasi pengumpulan Logtail.
Cluster
Tetapkan nama kluster.
Setelah Anda menetapkan parameter ini, Simple Log Service akan menambahkan tag
cluster=<Cluster name>ke data performa Golang yang dikumpulkan menggunakan konfigurasi pengumpulan Logtail ini.PentingPastikan nama kluster bersifat unik. Jika tidak, konflik data dapat terjadi.
Service
Tetapkan nama layanan. Semua instans statis yang Anda konfigurasikan termasuk dalam layanan ini. Misalnya, jika Anda menetapkan nama layanan menjadi sls-mall, semua instans yang dikonfigurasi termasuk dalam layanan sls-mall.
Profile Whitelist
Pilih kategori data performa yang akan dikumpulkan.
Collection Interval
Interval pengumpulan data. Satuan: detik.
Timeout
Periode timeout untuk pengumpulan data. Satuan: detik.
Maximum Body Size
Ukuran maksimum body data yang akan dikumpulkan. Satuan: KB.
Static Instance Array
Tambahkan informasi instans. Informasi tersebut mencakup pengaturan berikut:
Host: Alamat host.
Port: Nomor port pengumpulan.
Labels: Tambahkan label ke instans tersebut.
PentingJangan gunakan service sebagai kunci label.
Setelah konfigurasi selesai, Simple Log Service akan secara otomatis membuat aset seperti Metricstore. Untuk informasi selengkapnya, lihat Aset.
Langkah selanjutnya
Setelah mengumpulkan data performa pprof dari program Go ke Full-stack Observability, Anda dapat menggunakan fitur pemantauan performa untuk memecahkan masalah performa. Untuk informasi selengkapnya, lihat Kueri data dan Perbandingan data.