Kadang-kadang operasi keluar dari kendali di MongoDB dan mungkin berakhir berjalan selama ratusan detik, dan berdampak pada kinerja sampai mereka terbunuh atau selesai.
Ketika itu terjadi, saya tahu saya telah killOp()
tersedia untuk saya, tetapi bagaimana cara saya membunuh hanya operasi jangka panjang yang ditargetkan tanpa juga membunuh (misalnya) operasi jangka panjang yang terlibat dalam replikasi (yang bisa berbahaya)?
sumber
db.currentOp()
di basis data kami yang diembed, mengembalikan operasi di "" namespace (alias ns: "") yang berjalan sangat lama dengan desc "repl writer worker n" (di mana n adalah integer). Saya akan menyarankan daftar putih ruang nama ke database Anda yang sebenarnya dengan pertanyaan yang mungkin ingin Anda bunuh. Sesuatu seperti&& (['users', 'analytics'].indexOf(op.ns) != -1)
bukannya!op.ns.startsWith
kondisinya.