Pemantauan Spring Batch APM Jennifer
Pada artikel ini, saya akan memperkenalkan kepada anda cara melacak transaksi aplikasi yang menggunakan pemantauan spring batch di Apm Jennifer ada beberapa hal yang harus di perhatikan untuk menggunakan spring batch sebelum masuk ke pembahasan artikel maka saya akan sedikit menjelaskan apa itu spring batch dan istilah-istilah yang digunakan dalam spring batch.
Spring batch adalah framework untuk melakukan proses batch, mengeksekusi serangkaian job
. Dimana job
 terdiri dari banyak step
 dan setiap step
 terdiri dari proses READ-PROCESS-WRITE
 atau SINGLE-OPERATION
 (tasklet
)Â
Berikut beberapa istilah yang sering di gunakan di Spring Batch:
- Perintah – Menggambarkan suatu pekerjaan. Misal, membaca file DPK (Dana Pihak Ketiga), lalu menyimpannya ke dalam database. Setelah itu menampilkannya ke dalam laporanÂ
Combined-Statement
.
- Step – Sebuah perintah terdiri dari satu atau dua step. Dalam contoh di atas, misalnya:
- Step 1: Membaca File DPK & Meyimpan ke dalam database
- Step 2: Menampilkan data DPK ke dalam laporanÂ
Combined-Statement
- Perintah Instance – Sebuah instance yang sedang berjalan dari sebuahÂ
job
 yang telah di tetapkan. Anggap, job
 adalah sebuah class dan jobinstance
 adalah sebuah object dari class job
. Contoh, job
 membaca file DPK jalan setiap awal bulan, berarti kita memiliki 1 JobInstance setiap bulannya. 1 job
 yang berjalan sama dengan 1 jobinstance
.
- Perintah Parameters – Parameter-parameter yang digunakan olehÂ
JobInstance
. Contoh, secara default, laporan Combined-Statement
 yang di generate adalah untuk periode T-1, tapi kita ingin membuatnya lebih dinamis, jadi kita bisa generatekan laporan untuk periode T-N, jadi, kita mesti melemparkan nilai N
 ke dalam JobParameters
, dimana JobParameters
 nanti akan di lemparkan sebagai baris perintah argumen.
- JobExecution – Setiap menjalankanÂ
JobInstance
 akan menghasilkan JobExecution
. Contoh, ketika perintah membaca file DPK gagal, lalu perintah di jalankan lagi dan berhasil. Maka kita akan memiliki 1Â JobInstance
 dan memiliki 2 JobExecution
, 1 yang berhasil & 1 lagi yang gagal.
- StepExecution – Sama sepertiÂ
JobExecution
, tapi ini untuk menggambarkan hasil dari Step
.
- Perintah Repository – Sebuah persistent store untuk menyimpan semua informasi meta-data perintah. Menyimpan informasi Perintah
Instance
,PerintahExecution
 dan StepExecution
. Repositori dibutuhkan untuk mengetahui apakah sebelumnya perintah gagal atau tidak, jika gagal maka bisa di jalankan kembali. Secara default informasi ini di simpan di memory, tapi kita bisa setting untuk menyimpannya di database.
- PerintahLauncher – Seperti namanya, object ini memungkinkan kita untuk memulai sebuah perintah. Ia menggunakan Perintah
Repository
 untuk mendapakan PerintahExecution
 yang valid.
1.Operasi Dasar Spring Batch
Pertama-tama mari kita lihat struktur operasional dasar Spring Batch. Pada dasarnya, spring batch dijalankan dengan menerapkan jangkauan yang diperlukan dalam unit langkah, yang merupakan unit kerja independen.
Langkah-langkah dapat dibagi menjadi langkah-langkah berbasis fungsi dan langkah-langkah berbasis bagian. Jika anda ingin menggunakan langkah berbasis tasklet, maka anda harus mengimplementasikan tasklet, sampai langkah dihentikan, metode eksekusi akan berulang kali dieksekusi.
Pemantauan Spring Batch di APM Jennifer Langkah berbasis tasklet umumnya banyak digunakan dalam pekerjaan seperti inisialisasi, pelaksanaan prosedur penyimpanan, transmisi notifikasi dan sebagainya, pertama-tama mari kita lihat struktur operasi dasar Spring Batch, pada dasarnya, Spring Batch dijalankan dengan menerapkan logika yang diperlukan dalam unit langkah, yang merupakan unit pekerjaan independen.
Langkah berbasis tasklet umumnya banyak digunakan dalam pekerjaan seperti inisialisasi, pelaksanaan prosedur penyimpanan,pengiriman notifikiasi dan sebagainya.

Â
2.Pemantauan Transaksi Spring Batch dengan APM Jennifer
Setelah anda mengaktifkan opsi Spring Batch Monitoring di APM Jennifer, maka Apm Jennifer akan mulai mendeteksi dan eksekusi batch pada langkah sebelumnya dan kemudian memantau transaksi selanjutnya.
Setelah transaksi dimulai, 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 berikut menunjukkan bagaimana Apm Jennifer mendeteksi dan langkah-langkah Spring Batch. dalam pemantauanya. Ada sebanyak 6 langkah dari langkah awal hingga langkah akhir ditentukan dalam kode sample. Kode sample disiapkan sehingga SQL yang berbeda akan berjalan di setiap step.
Untuk melihat bagaimana Jennifer memantau kode sample batch yang disiapkan, buka opsi agent Lanjutan dan atur opsi enable_spring_batch ke true.

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 memeriksa 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 Alamat email ini dilindungi dari robot spam. Anda memerlukan Javascript yang aktif untuk melihatnya..
SumberÂ
Â