Pemantauan Spring Batch APM Jennifer
Pada artikel ini, saya akan memperkenalkan cara melacak transaksi aplikasi dengan menggunakan pemantauan Spring Batch di APM Jennifer. Namun, sebelum masuk ke artikel pembahasan, saya akan sedikit menjelaskan apa itu Spring Batch dan istilah-istilah yang digunakan dalam Spring Batch.
Spring Batch adalah sebuah framework untuk melakukan proses batch dan mengeksekusi eksekusi job, dimana job terdiri dari banyak step dan setiap step terdiri dari proses READ-PROCESS-WRITE atau SINGLE-OPERATION (tasklet).
Berikut adalah beberapa istilah yang sering digunakan dalam Spring Batch:
- Job: Menggambarkan suatu pekerjaan, seperti membaca file DPK (Dana Pihak Ketiga) dan menyimpannya ke dalam database, kemudian menampilkannya dalam laporan Combined-Statement.
- Langkah: Sebuah pekerjaan terdiri dari satu atau dua langkah. Contohnya dalam pekerjaan di atas, terdapat dua langkah, yaitu Langkah 1 yang membaca file DPK dan menyimpannya ke dalam database, dan Langkah 2 yang menampilkan data DPK dalam laporan Pernyataan Gabungan.
- Job Instance: Instance yang sedang berjalan dari sebuah job yang telah ditetapkan. Misalnya, job membaca file DPK yang dijalankan setiap awal bulan, maka kita memiliki 1 JobInstance setiap bulannya. 1 job yang berjalan sama dengan 1 job instance.
- Job Parameters: Parameter-parameter yang digunakan oleh JobInstance. Contohnya, secara default, laporan Combined-Statement yang dihasilkan adalah untuk periode T-1, tapi kita ingin membuatnya lebih dinamis, maka kita bisa menghasilkan laporan untuk periode TN, dan melemparkan nilai N ke dalam JobParameters, dimana JobParameters akan ditampilkan sebagai argumen baris perintah .
- Eksekusi Pekerjaan: Setiap menjalankan JobInstance akan menghasilkan JobExecution. Misalnya, ketika perintah membaca file DPK gagal, lalu perintah dijalankan lagi dan berhasil, maka kita akan memiliki 1 JobInstance dan 2 JobExecution, 1 yang berhasil dan 1 lagi yang gagal.
- Step Execution: Sama seperti JobExecution, tapi ini untuk menggambarkan hasil dari Step.
- Job Repository: Penyimpanan persisten untuk menyimpan semua informasi perintah meta-data. Menyimpan informasi JobInstance, JobExecution, dan StepExecution. Repositori diperlukan untuk mengetahui apakah perintah sebelumnya gagal atau tidak, jika gagal maka bisa dijalankan kembali. Secara default informasi ini disimpan di memori, tapi kita bisa mengatur untuk menyimpannya di database.
- Peluncur Pekerjaan: Seperti namanya, objek ini memungkinkan kita untuk memulai sebuah perintah. Saya menggunakan Job Repository untuk mendapatkan JobExecution yang valid.
Batch Operasi Dasar Pegas
Pertama-tama, mari kita lihat struktur operasional dasar Spring Batch. Pada dasarnya, Spring Batch dijalankan dengan menerapkan jangkauan yang diperlukan dalam satuan langkah, yang merupakan satuan kerja mandiri.
Langkah-langkah dapat dibagi menjadi langkah-langkah berbasis fungsi dan langkah-langkah berbasis tasklet. Jika Anda ingin menggunakan langkah berbasis tasklet, maka Anda harus mengimplementasikan tasklet tersebut. Sampai langkah dihentikan, metode eksekusi akan berulang kali dieksekusi.
Langkah berbasis tasklet umumnya banyak digunakan dalam pekerjaan seperti inisialisasi, pelaksanaan prosedur penyimpanan, pengiriman notifikasi, dan sebagainya.
Pemantauan Spring Batch di APM Jennifer
Untuk melacak transaksi aplikasi yang menggunakan pemantauan Spring Batch di APM Jennifer, ada beberapa hal yang harus diperhatikan sebelum masuk ke pembahasan artikel. Pertama-tama, mari kita sedikit menjelaskan apa itu Spring Batch dan istilah-istilah yang digunakan dalam Spring Batch.
Spring Batch adalah sebuah framework untuk melakukan proses batch, yang mengeksekusi serangkaian job. Setiap job terdiri dari banyak step, dan setiap step terdiri dari proses READ-PROCESS-WRITE atau SINGLE-OPERATION (tasklet).

Â
Â
- Pemantauan Transaksi Spring Batch dengan APM Jennifer
Setelah Anda mengaktifkan opsi Pemantauan Spring Batch di APM Jennifer, APM Jennifer akan mulai mendeteksi dan mengeksekusi batch pada langkah sebelumnya dan kemudian memantau transaksi selanjutnya.
Setelah transaksi dimulai, APM Jennifer akan mendeteksi setiap langkah individu yang berjalan dalam urutan eksekusi sebagai Spring Batch di dalam transaksi dan kemudian melacak seluruh transaksi.
Baca juga : Bagai Mana APM Jennifer Membantu MerekaÂ
Baca juga :Â Jennifer Online Training
Contoh di bawah ini menunjukkan bagaimana APM Jennifer mendeteksi dan memantau langkah-langkah Spring Batch. Ada 6 langkah dari langkah awal hingga langkah akhir yang ditentukan dalam kode sampel. Kode sampel tersebut telah disiapkan sedemikian rupa sehingga SQL yang berbeda akan dieksekusi di setiap langkah.
Untuk melihat bagaimana APM Jennifer memantau kode sampel batch yang telah disiapkan, aktifkan opsi Spring Batch Monitoring di APM Jennifer dan atur opsi enable_spring_batch ke true pada opsi agen.
Â

Pengaturan Agent
Setelah pengaturan dilakukan seperti di atas dan transaksi eksekusi aktivitas spring batch dijalankan, maka akan terlihat seperti berikut ini, anda dapat melihat nama dan detail eksekusi yang berjalan dalam transaksi.
Pemantauan Spring Batch di APM Jennifer


Dalam daftar profil, periksa profil langkah di mana pekerjaan kode sampel dijalankan
Khususnya, timeline X-view menunjukkan bagian waktu yang digunakan oleh individu yang berjalan secara individual di seluruh transaksi, sehingga dapat sangat membantu dalam memahami kinerja.

Dalam daftar profil, periksa profil langkah di mana pekerjaan kode sampel dijalankan
Bagan garis waktu di tengah dapat membantu anda menganalisis porsi waktu respons yang ditempati oleh aktivitas batch dibandingkan dengan transaksi lainnya,Â

service_naming_by_job_parameter pengaturan
Dan jika anda ingin menggunakan nama batch yang mengeksekusi setiap pekerjaan sebagai nama transaksi, buka opsi agent Lanjutan dan atur JobName di service_naming_by_job_parameter sebagai berikut.

Dengan pengaturan opsi APM Jennifer yang sederhana ini, Anda akan dapat melihat titik kelemahan kinerja sambil memantau transaksi Spring Batch. . Untuk detail lebih lanjut tentang pemantauan spring batch dalam hal informasi teknis atau metode pembuatan profil batch, Anda dapat menghubungi This email address is being protected from spambots. You need JavaScript enabled to view it..
Pemantauan Spring Batch di APM Jennifer
Â