Gunakan Telegraf untuk mengumpulkan data pemantauan dari aplikasi Java atau server Tomcat, lalu unggah data tersebut ke Metricstore Simple Log Service melalui Logtail guna membangun solusi pemantauan visual. Topik ini menggunakan aplikasi Java sebagai contoh.
Prasyarat
-
Java 1.6 atau versi yang lebih baru telah diinstal pada server Anda.
-
Sebuah project dan Metricstore telah dibuat. Untuk informasi selengkapnya, lihat Kelola project dan Buat Metricstore.
Batasan
Hanya Logtail versi 0.16.48 dan yang lebih baru untuk Linux yang mendukung pengumpulan data pemantauan dari aplikasi Java atau server Tomcat. Jika Anda menggunakan versi sebelumnya, lakukan upgrade terlebih dahulu. Untuk informasi selengkapnya, lihat Instal Logtail pada server Linux.
Langkah 1: Buat konfigurasi pengumpulan Logtail
Masuk ke Konsol Simple Log Service.
-
Pada bagian Import Data, di tab Monitoring Data, klik Java Application Monitoring.
Contoh ini menjelaskan cara mengumpulkan data pemantauan aplikasi Java. Untuk mengumpulkan data pemantauan Tomcat, klik Tomcat Monitoring sebagai gantinya.
-
Pilih Project dan MetricStore yang dituju, lalu klik Next. Pada langkah Select Log Space, pilih Project dan MetricStore yang sudah ada, atau klik Create Now di sebelah kanan untuk membuat yang baru, lalu klik Next.
-
Pada tab Create Machine Group:
-
Jika Anda memiliki kelompok mesin yang tersedia, klik Use Existing Machine Groups. Pilih Host scenario dan ECS. Dari daftar source machine group, pilih kelompok mesin yang dituju lalu klik > untuk memindahkannya ke daftar applied machine group. Setelah itu, klik Next.
-
Jika tidak tersedia kelompok mesin, ikuti langkah-langkah berikut untuk membuat kelompok mesin. Pada contoh ini, digunakan instance Elastic Compute Service (ECS).
-
Pada tab ECS Instance, pada bagian Manually select instances, pilih instance ECS yang dituju lalu klik Create.
Untuk informasi selengkapnya, lihat Instal Logtail pada instance ECS.
PentingJika Anda ingin mengumpulkan log dari instance ECS yang berada di bawah Akun Alibaba Cloud berbeda dengan Simple Log Service, server di pusat data lokal, atau server penyedia layanan cloud pihak ketiga, Anda harus menginstal Logtail secara manual. Untuk informasi selengkapnya, lihat Instal Logtail pada server Linux. Setelah Anda menginstal Logtail secara manual, Anda harus mengonfigurasi pengenal pengguna untuk server tersebut. Untuk informasi selengkapnya, lihat Konfigurasi pengenal pengguna.
-
Setelah instalasi selesai, klik Complete Installation.
-
Pada halaman Create Machine Group, masukkan Name lalu klik Next.
Di Simple Log Service, Anda dapat membuat kelompok mesin berbasis alamat IP maupun berbasis pengenal kustom. Untuk informasi selengkapnya, lihat Buat kelompok mesin.
-
-
-
Konfirmasi bahwa kelompok mesin muncul di bagian Applied Server Groups lalu klik Next.
PentingJika Anda menerapkan kelompok mesin segera setelah membuatnya, status heartbeat kelompok mesin mungkin menunjukkan FAIL. Masalah ini terjadi karena kelompok mesin belum terhubung ke Simple Log Service. Untuk mengatasinya, Anda dapat mengklik Automatic Retry. Jika masalah tetap berlanjut, lihat Apa yang harus saya lakukan jika tidak ada koneksi heartbeat yang terdeteksi pada Logtail?
-
Pada tab Data Source Settings, konfigurasikan parameter berikut.
Parameter
Deskripsi
Configuration Name
Nama untuk konfigurasi pengumpulan data Logtail.
Cluster Name
Nama untuk kluster Tomcat.
Setelah Anda mengatur parameter ini, Simple Log Service akan menambahkan tag
cluster=<Cluster Name>ke data pemantauan Tomcat yang dikumpulkan melalui konfigurasi ini.PentingPastikan nama kluster bersifat unik. Jika tidak, konflik data dapat terjadi.
Application Name
Nama aplikasi.
Servers
Server Tomcat yang akan dipantau. Parameter berikut termasuk di dalamnya:
-
Address: Alamat server Tomcat.
-
Port: Nomor port server Tomcat. Nilai default-nya adalah 7777.
Anda dapat menambahkan informasi beberapa server sesuai kebutuhan bisnis Anda.
Custom Tag
Tag pasangan kunci-nilai kustom yang akan ditambahkan ke data pemantauan Tomcat yang dikumpulkan.
Setelah Anda mengatur parameter ini, Simple Log Service akan menambahkan tag-tag tersebut ke data pemantauan Tomcat yang dikumpulkan melalui konfigurasi ini.
-
Langkah 2: Konfigurasi JavaAgent
Setelah membuat konfigurasi pengumpulan Logtail, ubah protokol Java Management Extensions (JMX) menjadi HTTP. Simple Log Service mendukung Jolokia untuk konversi ini. Anda dapat mengunduh dan memuat Jolokia mengikuti dokumentasi resminya, atau menggunakan Jolokia JavaAgent yang disertakan dalam Logtail di /etc/ilogtail/telegraf/javaagent/jolokia-jvm.jar.
-
Untuk aplikasi Java standar, tambahkan
-javaagent:/etc/ilogtail/telegraf/javaagent/jolokia-jvm.jar=port=7777ke parameter startup Java. -
Untuk Tomcat, atur variabel lingkungan
JAVA_OPTS. Contohnya:export JAVA_OPTS="-javaagent:/etc/ilogtail/telegraf/jolokia-jvm.jar=port=7777". Port server 7777 harus sama dengan nomor port yang Anda tentukan di Langkah 1: Buat konfigurasi pengumpulan Logtail.
Secara default, Jolokia JavaAgent hanya mendengarkan pada 127.0.0.1, sehingga hanya menerima permintaan dari host lokal. Jika Logtail dan aplikasi yang dipantau berada di mesin berbeda, tambahkan bidang host= agar dapat mendengarkan alamat IP lainnya. Mengatur nilai menjadi host=0.0.0.0 akan membuatnya mendengarkan semua alamat IP. Contoh perintah:
-javaagent:/tmp/jolokia-jvm.jar=port=7777,host=0.0.0.0
Setelah konfigurasi selesai, restart aplikasi. Jika Anda tidak dapat segera melakukan restart, jalankan perintah berikut untuk menyambungkan Jolokia JavaAgent ke proses Java tertentu. Ganti Process_PID dengan ID proses aktual.
Operasi ini hanya untuk pengujian. Selesaikan konfigurasi seperti dijelaskan pada langkah-langkah sebelumnya agar pengaturan tetap berlaku setelah restart.
java -jar /etc/ilogtail/telegraf/javaagent/jolokia-jvm.jar --port 7777 start Process_PID
Jika informasi berikut dikembalikan, koneksi berhasil.
Jolokia is already attached to PID 752
http://127.0.0.1:7777/jolokia/
Setelah koneksi berhasil, akses URL tersebut untuk memverifikasi fungsinya.
curl http://127.0.0.1:7777/jolokia/
# Sample response
{"request":{"type":"version"},"value":{"agent":"1.6.2","protocol":"7.2","config":{"listenForHttpService":"true","maxCollectionSize":"0","authIgnoreCerts":"false","agentId":"30.**.**.186-752-5b091b5d-jvm","debug":"false","agentType":"jvm","policyLocation":"classpath:\/jolokia-access.xml","agentContext":"\/jolokia","serializeException":"false","mimeType":"text\/plain","maxDepth":"15","authMode":"basic","authMatch":"any","discoveryEnabled":"true","streaming":"true","canonicalNaming":"true","historyMaxEntries":"10","allowErrorDetails":"true","allowDnsReverseLookup":"true","realm":"jolokia","includeStackTrace":"true","maxObjects":"0","useRestrictorService":"false","debugMaxEntries":"100"},"info":{"product":"tomcat","vendor":"Apache","version":"8.5.57"}},"timestamp":1602663330,"status":200}⏎
FAQ
Bagaimana cara memeriksa apakah Telegraf mengumpulkan data sesuai harapan?
Anda dapat memeriksa file log /etc/ilogtail/telegraf/telegraf.log di server Anda. Anda juga dapat mengumpulkan file log ini ke Log Service dan mencari informasi yang diperlukan.
Tindakan selanjutnya
- Search and analyze
Setelah pengaturan selesai, Telegraf menggunakan Logtail untuk mengunggah metrik yang dikumpulkan ke Metricstore Log Service. Anda dapat mengkueri data tersebut di halaman Search & Analysis Metricstore. Untuk informasi selengkapnya, lihat Kueri dan analisis data metrik.
-
Visualisasi
-
Setelah Anda mengonfigurasi pemantauan aplikasi Java, Simple Log Service secara otomatis membuat dasbor bernama Java Application Monitoring_<Cluster Name> di project yang sesuai. Anda dapat langsung menggunakan dasbor ini atau mengatur alert di atasnya.
-
Setelah Anda mengonfigurasi pemantauan Tomcat, Simple Log Service secara otomatis membuat dasbor bernama Tomcat Monitoring_<Cluster Name> di project yang sesuai. Anda dapat langsung menggunakan dasbor ini atau mengatur alert di atasnya.
-