আমি কীভাবে একটি অ্যাপ্লিকেশন কাজ করে তা জানার চেষ্টা করছি। এবং এর জন্য আমি ফাংশনের নাম লগ করার লক্ষ্য সহ প্রতিটি ফাংশনটির বডির প্রথম লাইন হিসাবে ডিবাগ কমান্ডগুলি সন্নিবেশ করছি এবং লগ নম্বরটি (কোডের মধ্যে) যেখানে আমি লগ আউটপুটটিতে একটি বার্তা প্রেরণ করি। অবশেষে, যেহেতু এই অ্যাপ্লিকেশনটিতে অনেকগুলি ফাইল রয়েছে, তাই আমি একটি একক লগ ফাইল তৈরি করতে চাই যাতে আমি অ্যাপ্লিকেশনটির নিয়ন্ত্রণ প্রবাহ আরও ভালভাবে বুঝতে পারি।
আমি যা জানি তা এখানে:
ফাংশনটির নাম পাওয়ার জন্য, আমি ব্যবহার করতে
function_name.__name__পারি তবে আমি ফাংশন_নামটি ব্যবহার করতে চাই না (যাতে আমি দ্রুতLog.info("Message")সমস্ত ফাংশনের শরীরে জেনেরিকটি অনুলিপি করতে এবং আটকাতে পারি )। আমি জানি__func__ম্যাক্রো ব্যবহার করে সি-তে এটি করা যেতে পারে তবে আমি পাইথন সম্পর্কে নিশ্চিত নই।ফাইলের নাম এবং লাইন নম্বর পাওয়ার জন্য, আমি দেখেছি যে (এবং আমি বিশ্বাস করি) আমার অ্যাপ্লিকেশন পাইথন
locals()ফাংশনটি ব্যবহার করছে তবে একটি বাক্য গঠনতে যা আমি পুরোপুরি অবগত নই:options = "LOG.debug('%(flag)s : %(flag_get)s' % locals())এবং আমি এটি ব্যবহার করে চেষ্টা করেছিLOG.info("My message %s" % locals())যা এর মতো কিছু তৈরি করে{'self': <__main__.Class_name object at 0x22f8cd0>}। দয়া করে কোন ইনপুট?আমি জানি যে কোনও ফাইল লগ করতে লগিং কীভাবে ব্যবহার করতে হয় এবং এতে হ্যান্ডলার যুক্ত করা যায় তবে আমি নিশ্চিত নই যে প্রকল্পটিতে ফাংশন কলের সঠিক ক্রমে সমস্ত লগ বার্তা রেকর্ড করার জন্য একটি ফাইল ব্যবহার করা যেতে পারে কিনা I
আমি যে কোন সাহায্যকে সর্ব্বোচ্চ প্রশংসা করব।
ধন্যবাদ!
import pdb; pdb.set_trace()এবং তারপরে ইন্টারেক্টিভভাবে কোডের মাধ্যমে পদক্ষেপ নিতে পারেন। এটি আপনাকে প্রোগ্রামের প্রবাহটি সনাক্ত করতে সহায়তা করতে পারে।