Setelah Anda menggunakan SkyWalking untuk menginstrumentasikan aplikasi dan melaporkan data jejak ke konsol Managed Service for OpenTelemetry, Managed Service for OpenTelemetry mulai memantau aplikasi tersebut. Kemudian, Anda dapat melihat data pemantauan aplikasi, seperti topologi aplikasi, jejak, transaksi abnormal, transaksi lambat, dan analisis SQL. Topik ini menjelaskan cara menggunakan agen Java SkyWalking untuk melakukan instrumentasi otomatis. Topik ini juga menjelaskan atribut yang dapat dikonfigurasi dari agen Java SkyWalking.
Prasyarat
Unduh SkyWalking versi 6.x.x atau lebih baru dari halaman unduhan SkyWalking. Direkomendasikan untuk menggunakan versi stabil terbaru. Simpan folder agen yang telah diekstrak di direktori yang dapat diakses oleh proses Java.
Semua plugin disimpan di direktori
/plugins. Jika menambahkan plugin saat startup, plugin tersebut akan aktif. Jika menghapus plugin, plugin tersebut menjadi tidak efektif. Secara default, file log disimpan di direktori/logs.
Semua log, plugin, dan file konfigurasi disimpan di folder agen. Jangan ubah folder tersebut.
Informasi Latar Belakang
SkyWalking adalah layanan pemantauan kinerja aplikasi (APM) populer yang dikembangkan di Tiongkok. Dirancang untuk arsitektur mikroservis, cloud-native, dan berbasis kontainer seperti Docker, Kubernetes, dan Mesos. SkyWalking juga merupakan sistem pelacakan terdistribusi.
Sebelum menggunakan SkyWalking untuk melaporkan data aplikasi Java ke konsol Managed Service for OpenTelemetry, Anda harus menginstrumentasikan aplikasi. SkyWalking menyediakan instrumentasi otomatis untuk berbagai kerangka kerja dan pustaka, termasuk Dubbo, gRPC, JDBC, OkHttp, Spring, Tomcat, Struts, dan Jedis. SkyWalking juga mendukung instrumentasi manual berdasarkan standar OpenTracing. Topik ini menjelaskan cara melakukan instrumentasi otomatis.
Kode Contoh
Untuk informasi lebih lanjut tentang repositori kode contoh, lihat demo skywalking di GitHub.
Gunakan SkyWalking untuk menginstrumentasikan aplikasi Java secara otomatis
Buka file
config/agent.configdan konfigurasikan titik akhir dan token.CatatanGanti
<endpoint>dengan titik akhir wilayah tempat klien SkyWalking berada. Ganti<auth-token>dengan token otentikasi klien. Anda dapat masuk ke konsol Managed Service for OpenTelemetry dan melihat titik akhir pada tab Access point information halaman . Untuk informasi lebih lanjut tentang cara mendapatkan titik akhir, lihat bagian "Prasyarat" dari topik ini.collector.backend_service=<endpoint> agent.authentication=<auth-token>Gunakan salah satu metode berikut untuk menentukan nama aplikasi:
PentingGanti
<ServiceName>dengan nama aplikasi Anda. Jika menggunakan kedua metode, hanya metode kedua yang menambahkan parameter ke perintah startup yang berlaku.Buka file
config/agent.configdan tentukan nama aplikasi.agent.service_name=<ServiceName>Tambahkan parameter -Dskywalking.agent.service_name ke perintah startup aplikasi.
java -javaagent:<skywalking-agent-path> -Dskywalking.agent.service_name=<ServiceName> -jar yourApp.jar
Gunakan salah satu metode berikut untuk menentukan jalur ke file skywalking-agent.jar di folder agen:
CatatanGanti
<skywalking-agent-path>dalam kode contoh berikut dengan jalur absolut ke file skywalking-agent.jar di folder agen.Linux Tomcat 7 atau Tomcat 8
Tambahkan konten berikut sebagai baris pertama di file
tomcat/bin/catalina.sh:CATALINA_OPTS="$CATALINA_OPTS -javaagent:<skywalking-agent-path>"; export CATALINA_OPTSWindows Tomcat 7 atau Tomcat 8
Tambahkan konten berikut sebagai baris pertama di file
tomcat/bin/catalina.bat:set "CATALINA_OPTS=-javaagent:<skywalking-agent-path>"File JAR atau Spring Boot
Tambahkan parameter -javaagent ke perintah startup aplikasi.
PentingParameter -javaagent harus ditulis sebelum parameter -jar.
java -javaagent:<skywalking-agent-path> -jar yourApp.jarJetty
Tambahkan konten berikut ke file konfigurasi
{JETTY_HOME}/start.ini:--exec # Hapus tanda pagar (#) untuk membuka komentar kode. -javaagent:<skywalking-agent-path>
Mulai ulang aplikasi.
Atribut yang Dapat Dikonfigurasi dari Agen Java SkyWalking
Agen Java SkyWalking mendukung berbagai atribut yang dapat dikonfigurasi. Untuk informasi lebih lanjut, lihat file config/agent.config di kode contoh.
Atribut Sebagian dari Agen Java SkyWalking
Tabel berikut menjelaskan atribut sebagian dari agen Java SkyWalking versi 8.16.0.
Metode Konfigurasi
Atribut Sistem
Gunakan -Dskywalking. dan kunci file konfigurasi agent.config. Contoh kode:
# Konfigurasikan atribut agent.service_name menggunakan atribut sistem.
java -javaagent:/path/to/skywalking-agent.jar -Dskywalking.agent.service_name=<your_service_name> -jar your-project.jarOpsi Proxy
Tambahkan atribut setelah jalur proxy dalam parameter JVM.
# Template
-javaagent:/path/to/skywalking-agent.jar=[key1]=[value1],[key2]=[value2]
# Contoh
java -javaagent:/path/to/skywalking-agent.jar=agent.service_name=<your-service-name>,agent.authentication=<your-token> -jar your-project.jarVariabel Lingkungan Sistem
Konfigurasikan atribut sebagai variabel lingkungan sistem. Agen SkyWalking secara otomatis mendapatkan variabel lingkungan sistem. Anda dapat memeriksa variabel lingkungan sistem yang sesuai dengan atribut tertentu di file config/agent.config. Sebagai contoh, atribut agent.service_name sesuai dengan variabel lingkungan sistem SW_AGENT_NAME.
agent.service_name=${SW_AGENT_NAME:default_name}
# Konfigurasikan variabel lingkungan.
export SW_AGENT_NAME=<your_service_name>Prioritas
Metode konfigurasi sebelumnya diprioritaskan dalam urutan berikut: opsi proxy, properti sistem, variabel lingkungan sistem, dan file konfigurasi.
Plugin Agen Java SkyWalking
Agen Java SkyWalking mendukung berbagai middleware, kerangka kerja, dan repositori. Untuk informasi lebih lanjut tentang plugin yang didukung, lihat folder /plugins di kode contoh.
Aktifkan Plugin
Semua plugin di folder /plugins diaktifkan. Jika paket JAR plugin dihapus dari folder /plugins, plugin tersebut menjadi tidak tersedia.
Plugin Resmi yang Didukung
Plugin resmi yang didukung tersedia di folder /plugins.
Plugin Opsional
Plugin agen Java SkyWalking bersifat modular. Plugin opsional tersedia di folder optional-plugins repositori pihak ketiga atau agen. Untuk menggunakan plugin opsional, pindahkan plugin ke folder /plugins.
Plugin Bootstrap
Semua plugin Bootstrap bersifat opsional karena risiko tak terduga. Plugin Bootstrap tersedia di folder bootstrap-plugins. Jika ingin menggunakan plugin Bootstrap, tambahkan paket JAR plugin ke folder /plugins.
Plugin yang Didukung
Tim resmi SkyWalking percaya bahwa plugin berikut mungkin memengaruhi kinerja SkyWalking dan membatasi penggunaannya. Oleh karena itu, plugin-plugin ini hanya dirilis di repositori pihak ketiga. Untuk informasi lebih lanjut, lihat java-plugin-extensions di GitHub.
Mengembangkan Plugin
Untuk membuat plugin agen Java SkyWalking kustom, lihat dokumentasi resmi SkyWalking.
Managed Service for OpenTelemetry mendukung pelaporan jejak. Untuk membuat plugin jejak kustom, lihat dokumentasi resmi SkyWalking.
FAQ
T: Mengapa saya tidak dapat membuat aplikasi setelah SkyWalking terhubung ke server?
J: Data mungkin belum dilaporkan ke Managed Service for OpenTelemetry. Periksa apakah data telah dilaporkan ke Managed Service for OpenTelemetry. Sebagai contoh, periksa isi file {skywalking agent path}/logs/skywalking-api.log. Jika data dilaporkan, gambar berikut akan ditampilkan.
Data mungkin tidak dilaporkan karena alasan berikut: pengambilan sampel diaktifkan, data difilter, atau permintaan untuk menggunakan Managed Service for OpenTelemetry tidak dipicu.
