इस प्रोजेक्ट के बारे में
ΛNΛLOG एक छोटे से विश्लेषण उपकरण है जो स्वयं होस्ट करने योग्य है। इसे पायरेटपीएक्स के प्रभावित किया गया है और एक बड़े विश्लेषण सूट के बजाय एक छोटे, समझने योग्य सुविधा सेट पर ध्यान केंद्रित करता है।
इस प्रोजेक्ट में एक फ्रंटएंड डैशबोर्ड और एक Node.js सर्वर शामिल है। घटनाएं एक सरल API के माध्यम से रिकॉर्ड की जाती हैं और वेब डैशबोर्ड में प्रदर्शित की जाती हैं। README में डैशबोर्ड की स्क्रीनशॉट और एक छोटा डेमो वीडियो दिखाया गया है।
स्टोरेज प्लग-इन आधार पर होता है। ANALOG_DATABASE_PROVIDER चर चार बैकएंड में से एक का चयन करता है: MongoDB, PostgreSQL, Redis या SQLite। README में मॉन्गोडीबी, सुपाबेस, रेंडर, कॉकरोचडीबी, अपस्टैश और टर्सो जैसे होस्टेड प्रदाताओं की सुझाव दिए गए हैं, और यह नोट करता है कि PostgreSQL के लिए एक लेन-देन पूलर कनेक्शन का उपयोग करना चाहिए। SQLite कनेक्शन libsql का उपयोग करते हैं और फ़ाइल: URL के माध्यम से स्थानीय फ़ाइल को इंगित कर सकते हैं।
कॉन्फ़िगरेशन वातावरण चरों के माध्यम से किया जाता है। नोट करने योग्य विकल्पों में डेटाबेस प्रदाता और कनेक्शन URL, सर्वर पोर्ट, ANALOG_TOKEN जो अनुरोधों को सुरक्षित करता है, ANALOG_PROTECT_POST जो POST अनुरोधों पर टोकन की आवश्यकता होती है, ANALOG_STATIC_SERVER जो Node.js सर्वर को बिल्ट फ्रंटएंड सर्व करने के लिए भी सक्षम करता है, और ANALOG_DATABASE_REQUEST_ITEM_COUNT जो API कॉल प्रति डेटाबेस कॉल कितने आइटम लेता है इसका निर्धारण करता है। फ्रंटएंड चर VITE_ उपसर्ग का उपयोग करते हैं क्योंकि ऐप Vite के साथ बनाया गया है; ये पृष्ठ शीर्षक, प्रदर्शित समय सीमा (न्यूनतम 10, अधिकतम 30), डेटा साफ़ करने की योजना को GET अनुरोधों के साथ चलाने के लिए क्या है, और क्या API अनुरोधों को एक साथ नहीं लेकर अनुक्रमिक रूप से कतारबद्ध किया जाएगा इसका निर्धारण करते हैं।
README में दस्तावेजीकृत डिप्लॉयमेंट विकल्पों में npm install और npm run dev के साथ स्थानीय विकास, एक Dockerfile जिसमें बिल्ड एर्ग्स और रनटाइम वातावरण चर हैं, और Koyeb, Netlify, Render और Vercel जैसी क्लाउड सेवाओं के साथ उनकी संबंधित कॉन्फ़िगरेशन फ़ाइलें (netlify.toml, render.yaml, vercel.json) शामिल हैं। Netlify और Vercel क्रॉन कॉन्फ़िगरेशन के माध्यम से दैनिक साफ़ करने के लिए एक कार्य निर्धारित कर सकते हैं, हालांकि README चेतावनी देता है कि समयबद्ध कार्य कार्यक्षमता सीमाओं के कारण काम नहीं कर सकता है।
API /api/events पर केंद्रित है। एक POST अनुरोध बॉडी में एक घटना नाम भेजता है और OK लौटाता है; यदि ANALOG_PROTECT_POST और ANALOG_TOKEN सेट हैं, तो अनुरोध में "Basic " प्रीफिक्स के साथ टोकन के साथ एक Authorization हेडर शामिल होना चाहिए। एक GET अनुरोध घटना डेटा को संख्याओं की सरणियों के रूप में घटना नाम के साथ लौटाता है। यह एक वैकल्पिक cursor पैरामीटर को स्वीकार करता है जो पृष्ठीकृत डेटाबेस क्वेरी के लिए है (बिना इसके, सभी डेटा एक साथ लिया जाता है) और एक वैकल्पिक clean-up पैरामीटर को स्वीकार करता है जो फ़ेच के दौरान साफ़ करने को ट्रिगर करता है। जब cursor का उपयोग किया जाता है, तो प्रतिक्रिया में डेटा और एक nextCursor मान शामिल होता है। यदि ANALOG_TOKEN सेट है, तो डैशबोर्ड URL में एक token query parameter की आवश्यकता होती है, उदाहरण के लिए hostname/?token=ANALOG_TOKEN।
कुल मिलाकर, ΛNΛLOG एक हल्का, स्वयं-होस्ट करने योग्य विकल्प है जो मौलिक घटना ट्रैकिंग के लिए है, जिसमें लचीले स्टोरेज बैकएंड और सरल डिप्लॉयमेंट पथ हैं।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.