প্রকল্প সম্পর্কে

django-tracking2 হলো একটি Django অ্যাপ্লিকেশন যা ভিজিটর এবং নিবন্ধিত ব্যবহারকারীরা আপনার ওয়েবসাইট বা ওয়েব অ্যাপ্লিকেশনে কতক্ষণ অবস্থান করেন তা রেকর্ড করে। অ্যাগ্রিগেট পেজ ভিউ ফ্লো-তে ফোকাস করা ক্লায়েন্ট-সাইড অ্যানালিটিক্স টুলগুলোর বিপরীতে, এই প্যাকেজটি ভিজিটর সেশনের ইতিহাস বজায় রাখে, যা বিশেষ করে অথেন্টিকেটেড ব্যবহারকারী থাকা ওয়েব অ্যাপ্লিকেশনের জন্য উপযোগী। এই অ্যাপটির জন্য Django-র সেশন ফ্রেমওয়ার্ক প্রয়োজন এবং এটি INSTALLED_APPS-এ `tracking` যোগ করে এবং আপনার প্রজেক্টের মিডলওয়্যার কনফিগারেশনে SessionMiddleware-এর আগে `tracking.middleware.VisitorTrackingMiddleware` ইনসার্ট করার মাধ্যমে কাজ করে। মূল কনফিগারযোগ্য সেটিংসগুলোর মধ্যে রয়েছে: - TRACK_AJAX_REQUESTS: AJAX রিকোয়েস্ট ট্র্যাক করা (ডিফল্ট False) - TRACK_ANONYMOUS_USERS: বেনামী ভিজিটরদের ট্র্যাক করা (ডিফল্ট True) - TRACK_SUPERUSERS: ট্র্যাকিং থেকে সুপারইউজারদের বাদ দেওয়া (ডিফল্ট True) - TRACK_PAGEVIEWS: ব্যক্তিগত পেজভিউ ট্র্যাকিং সক্ষম করা - TRACK_IGNORE_URLS: ট্র্যাকিং থেকে বাদ দেওয়ার জন্য Regex প্যাটার্ন (ডিফল্টভাবে favicon.ico এবং robots.txt বাদ দেওয়া হয়) - TRACK_IGNORE_STATUS_CODES: পেজভিউ রেকর্ড করার সময় উপেক্ষা করার জন্য HTTP স্ট্যাটাস কোড - TRACK_REFERER: রেফারিং সাইট URL ক্যাপচার করা (ডিফল্ট False) - TRACK_QUERY_STRING: পেজভিউয়ের জন্য কুয়েরি স্ট্রিং ক্যাপচার করা (ডিফল্ট False) অ্যাপটি `/tracking/` এর অধীনে URL রুট প্রদান করে যা একটি কাস্টম Django পারমিশন (`tracking.visitor_log`) দ্বারা সুরক্ষিত, এবং শুধুমাত্র সুপারইউজার বা সেই পারমিশনপ্রাপ্ত ব্যবহারকারীরা এটি অ্যাক্সেস করতে পারেন। ড্যাশবোর্ডটি `tracking/dashboard.html` এবং `tracking/snippets/stats.html` টেমপ্লেটের মাধ্যমে সময়-ভিত্তিক ফিল্টারিং সহ অ্যাগ্রিগেট ভিজিটর অ্যাক্টিভিটি এবং নিবন্ধিত ব্যবহারকারী প্রতি পরিসংখ্যান প্রদর্শন করে।