যদি ইমাস লিস্প কোডে কোনও ত্রুটি সংকেত দেওয়া থাকে এবং debug-on-errorহয় তবে tআমি একটি ব্যাকট্র্যাস বাফার পেয়েছি যা ত্রুটিটি কোথায় ঘটেছে তা নির্ধারণ করা সহজ করে তোলে। তবে, ত্রুটিগুলির জন্য যা সংকেত হিসাবে নেটওয়ার্ক থেকে প্রতিক্রিয়া প্রক্রিয়া করার সময় ঘটে থাকে, ব্যাকট্র্যাস বাফার পপ আপ করা বিরক্তিকর হবে, তাই আমি ত্রুটিটি ধরা দিয়ে condition-caseএটি লগ করব।
সুতরাং আমি যখন কোনও ত্রুটিটি পরিচালনা করছি তখন ত্রুটির condition-caseপর্যায়ে ব্যাকট্রেজে অ্যাক্সেস পাওয়ার কোনও উপায় আছে কি? backtraceফাংশনটি কল করা হ্যান্ডলারের অভ্যন্তরে কোডটির ব্যাকট্রেস পায় যা আমি যা খুঁজছি তা নয়।
(condition-case e
(do-something-that-might-fail)
(error
(message "%s"
;; This gets the wrong backtrace!
(with-temp-buffer
(let ((standard-output (current-buffer)))
(backtrace)
(buffer-string))))))
do-something-that-might-failস্ট্যাক-ট্রেস তৈরি করতে এবং এটির ত্রুটির সাথে সংযুক্ত করে ফেলবেন attach
magithub-errorফাংশনটি আমার মনে হয় এর মতো কিছু করে তবে আমি এখনই কম্পিউটারে নেই। এটি নির্বিশেষে সাহায্য করতে পারে।