फ़ुल टेक्स्ट सर्च जावा: लॉग फ़ाइल एक्सट्रैक्टर विद GroupDocs
फ़ुल‑टेक्स्ट सर्च जावा किसी भी सिस्टम के लिए एक मुख्य आधार है जिसे बड़े दस्तावेज़ संग्रह में जानकारी को जल्दी से ढूँढ़ना होता है। इस ट्यूटोरियल में आप सीखेंगे कि GroupDocs.Search को कैसे कॉन्फ़िगर करें, एक कस्टम लॉग फ़ाइल एक्सट्रैक्टर बनाएं, दस्तावेज़ों को इंडेक्स में जोड़ें, और गीगाबाइट्स लॉग डेटा के साथ काम करते समय सर्च प्रदर्शन को कैसे ऑप्टिमाइज़ करें।
आप क्या सीखेंगे
- GroupDocs.Search for Java को सेट अप और कॉन्फ़िगर करें।
- एक लॉग फ़ाइल एक्सट्रैक्टर लागू करें जो प्लेन‑टेक्स्ट लॉग को आपकी आवश्यकता के अनुसार पार्स करे।
- दस्तावेज़ों को इंडेक्स में जोड़ें PDFs, DOCX, और अन्य फ़ॉर्मैट के साथ।
- वास्तविक‑दुनिया के परिदृश्य जहाँ लॉग फ़ाइल एक्सट्रैक्टर मापनीय मूल्य जोड़ता है।
- मल्टी‑गीगाबाइट लॉग आर्काइव के लिए सर्च प्रदर्शन को ऑप्टिमाइज़ करने के सिद्ध टिप्स।
त्वरित उत्तर
- लॉग फ़ाइल एक्सट्रैक्टर क्या है? एक कस्टम कॉम्पोनेन्ट जो GroupDocs.Search को बताता है कि प्लेन‑टेक्स्ट लॉग फ़ाइलों को कैसे पढ़ें और इंडेक्स करें।
- GroupDocs.Search क्यों उपयोग करें? यह 50+ फ़ॉर्मैट का इंडेक्सिंग सपोर्ट करता है, ऑटो‑रीइंडेक्सिंग प्रदान करता है, और 10 GB तक के इंडेक्स को 2 GB RAM से कम में संभालता है।
- क्या मुझे लाइसेंस चाहिए? हाँ – लाइब्रेरी को सक्षम करने के लिए ट्रायल या फुल लाइसेंस आवश्यक है।
- क्या मैं एक साथ अन्य फ़ाइल टाइप्स को इंडेक्स कर सकता हूँ? बिल्कुल; PDFs, DOCX, और कस्टम लॉग फ़ाइलों को एक ही इंडेक्स में मिलाएँ।
- प्रदर्शन कैसे सुधारें? इन्क्रिमेंटल इंडेक्सिंग उपयोग करें,
IndexSettingsको ट्यून करें, औरautoReindexफ़्लैग को सक्षम करें।
प्री‑रिक्विज़िट्स
शुरू करने से पहले सुनिश्चित करें कि आपके पास निम्नलिखित हैं:
आवश्यक लाइब्रेरीज़
अपने pom.xml में GroupDocs.Search Maven डिपेंडेंसी जोड़ें। अपने प्रोजेक्ट के Java लेवल से मेल खाने वाला नवीनतम संस्करण उपयोग करें।
<repositories>
<repository>
<id>repository.groupdocs.com</id>
<name>GroupDocs Repository</name>
<url>https://releases.groupdocs.com/search/java/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-search</artifactId>
<version>25.4</version>
</dependency>
</dependencies>
वैकल्पिक रूप से, नवीनतम संस्करण सीधे GroupDocs.Search for Java रिलीज़ से डाउनलोड करें।
एनवायरनमेंट सेटअप
- JDK 8 या उससे ऊपर।
- Java प्रोग्रामिंग और बेसिक फ़ाइल‑हैंडलिंग कॉन्सेप्ट्स की परिचितता।
लाइसेंस प्राप्ति
GroupDocs.Search की सुविधाओं को एक्सप्लोर करने के लिए एक फ्री ट्रायल लाइसेंस डाउनलोड करके शुरू करें। प्रोडक्शन उपयोग के लिए, एक फुल लाइसेंस खरीदें या GroupDocs की वेबसाइट के माध्यम से टेम्पररी लाइसेंस का अनुरोध करें।
GroupDocs.Search for Java सेट अप करना
शुरू करने के लिए, लाइब्रेरी को इनिशियलाइज़ करें और अपना लाइसेंस फ़ाइल लागू करें:
- Maven सेटअप – पिछले चरण से डिपेंडेंसी मौजूद है यह पुष्टि करें।
- लाइसेंस इनिशियलाइज़ेशन – किसी भी API कॉल से पहले लाइसेंस फ़ाइल लोड करें।
License license = new License();
license.setLicense("path/to/license");
एनवायरनमेंट तैयार होने पर, आप कस्टम लॉग फ़ाइल एक्सट्रैक्टर बनाने की ओर बढ़ सकते हैं।
लॉग फ़ाइल एक्सट्रैक्टर क्या है?
लॉग फ़ाइल एक्सट्रैक्टर कोड का वह हिस्सा है जो GroupDocs.Search को बताता है कि रॉ लॉग फ़ाइलें (आमतौर पर .log) को कैसे पढ़ें और उनकी सामग्री को सर्चेबल टेक्स्ट में बदलें। अपना खुद का एक्सट्रैक्टर प्रदान करके आप पार्सिंग नियमों, शोर फ़िल्टरिंग, और केवल वही जानकारी निकालने पर पूर्ण नियंत्रण प्राप्त करते हैं जो आपके सर्च उपयोग‑केस के लिए महत्वपूर्ण है।
लॉग फ़ाइल एक्सट्रैक्टर बनाएं
GroupDocs.Search आपको किसी भी फ़ाइल टाइप के लिए कस्टम टेक्स्ट एक्सट्रैक्टर प्लग‑इन करने देता है। लॉग फ़ाइलों के लिए एक बनाते समय इन चरणों का पालन करें।
चरण 1: कस्टम एक्सट्रैक्टर परिभाषित करें
TextExtractorBase वह एब्स्ट्रैक्ट बेस क्लास है जिसे आप कस्टम एक्सट्रैक्टर बनाने के लिए एक्सटेंड करते हैं। यह बताता है कि कौन‑से फ़ाइल एक्सटेंशन एक्सट्रैक्टर सपोर्ट करता है और कोर एक्सट्रैक्शन लॉजिक रखता है।
import com.groupdocs.search.extractors.TextExtractorBase;
public class LogExtractor extends TextExtractorBase {
@Override
public String[] getFileExtensions() {
return new String[]{"log"};
}
@Override
public String extractText(String documentContent) {
// Custom logic for extracting text from log files.
return documentContent; // Implement your custom extraction here.
}
}
मुख्य बिंदु
getFileExtensions().logफ़ाइलों के लिए एक्सट्रैक्टर को रजिस्टर करता है।extractTextवह जगह है जहाँ आप टाइमस्टैम्प हटाएँ, डिबग लाइनों को फ़िल्टर करें, या बड़े लॉग फ़ाइलों की सर्च के लिए आवश्यक कोई भी प्री‑प्रोसेसिंग लागू कर सकते हैं।
चरण 2: एक्सट्रैक्टर के साथ इंडेक्स सेटिंग्स कॉन्फ़िगर करें
अपने एक्सट्रैक्टर को IndexSettings में जोड़ें और autoReindex को सक्षम करें ताकि नए लॉग स्वचालित रूप से बिना मैनुअल हस्तक्षेप के इंडेक्स हो जाएँ।
IndexSettings मेमोरी लिमिट और कस्टम एक्सट्रैक्टर जैसी इंडेक्स व्यवहार को कॉन्फ़िगर करता है।autoReindex स्रोत फ़ाइलों में बदलाव होने पर इंडेक्स को स्वचालित रूप से अपडेट करता है।
import com.groupdocs.search.Index;
import com.groupdocs.search.IndexSettings;
public class CustomTextExtractorFeature {
public static void main(String[] args) {
String indexFolder = "YOUR_OUTPUT_DIRECTORY";
IndexSettings settings = new IndexSettings();
// Adding the custom text extractor to the settings.
settings.getCustomExtractors().addItem(new LogExtractor());
// Creating or loading an index with specified settings and enabling auto-reindexing.
Index index = new Index(indexFolder, settings, true);
}
}
चरण 3: दस्तावेज़ों को इंडेक्स में जोड़ें
अब जब इंडेक्स लॉग फ़ाइलों को पहचानता है, आप दस्तावेज़ों को इंडेक्स में जोड़ें जैसे किसी अन्य समर्थित फ़ॉर्मैट को जोड़ते हैं।
import com.groupdocs.search.Index;
public class AddDocumentsToIndexFeature {
public static void main(String[] args) {
String indexFolder = "YOUR_OUTPUT_DIRECTORY";
String documentsFolder = "YOUR_DOCUMENT_DIRECTORY";
// Loading or creating an index in the specified directory.
Index index = new Index(indexFolder);
// Adding documents from the folder to the index.
index.add(documentsFolder);
}
}
चरण 4: इंडेक्स को सर्च करें
प्लेन‑टेक्स्ट क्वेरीज़ चलाएँ। कस्टम एक्सट्रैक्टर यह गारंटी देता है कि हर लॉग एंट्री सर्चेबल है।
import com.groupdocs.search.Index;
import com.groupdocs.search.results.SearchResult;
public class SearchDocumentsFeature {
public static void main(String[] args) {
String indexFolder = "YOUR_OUTPUT_DIRECTORY";
// Loading the existing index.
Index index = new Index(indexFolder);
// Define search queries
String query1 = "objection";
String query2 = "log";
// Performing searches and retrieving results.
SearchResult result1 = index.search(query1);
SearchResult result2 = index.search(query2);
}
}
सर्च प्रदर्शन को ऑप्टिमाइज़ करने के टिप्स
- इन्क्रिमेंटल इंडेक्सिंग – पूरे इंडेक्स को रीबिल्ड करने के बजाय केवल नए या बदले हुए लॉग फ़ाइलें जोड़ें।
- मेमोरी मैनेजमेंट –
autoReindexफ़्लैग इंटरमीडिएट डेटा को डिस्क पर फ्लश करके RAM उपयोग को कम रखता है। - इंडेक्स सेटिंग्स –
setMaxMemoryUsageको अपने सर्वर की क्षमता के अनुसार एडजस्ट करें; 10 GB इंडेक्स के लिए सामान्य सेटिंग 1 GB है। - क्वेरी ऑप्टिमाइज़ेशन – फ़्रेज़ क्वेरीज़, वाइल्डकार्ड्स, या फ़िल्टर का उपयोग करके बड़े लॉग आर्काइव में परिणामों को संकीर्ण करें।
व्यावहारिक अनुप्रयोग
GroupDocs.Search को कई वास्तविक‑दुनिया के परिदृश्यों में लागू किया जा सकता है, जैसे:
- लॉग मैनेजमेंट – सेकंड में गीगाबाइट्स लॉग डेटा में एरर मैसेज, यूज़र एक्शन, या विशिष्ट टाइमस्टैम्प खोजें।
- डॉक्यूमेंट रिट्रीवल सिस्टम – एक सिंगल सर्चेबल रिपॉज़िटरी बनाएँ जिसमें PDFs, Word डॉक्यूमेंट्स, स्प्रेडशीट्स, और कस्टम लॉग फ़ाइलें शामिल हों।
- कंटेंट एनालिसिस – कीवर्ड‑फ़्रीक्वेंसी रिपोर्ट चलाएँ या स्ट्रीमिंग लॉग डेटा में अनॉमलीज़ का पता लगाएँ।
प्रदर्शन संबंधी विचार
GroupDocs.Search को स्केल पर डिप्लॉय करते समय इन बेस्ट प्रैक्टिसेज़ को याद रखें:
- तेज़ SSD पर इंडेक्स स्टोर करें ताकि रीड/राइट लेटेंसी कम हो।
- JVM हीप उपयोग मॉनिटर करें; यदि मेमोरी बॉटलनेक बनता है तो बड़े इंडेक्स को अलग प्रोसेस में ऑफ‑लोड करने पर विचार करें।
autoReindex(जैसा दिखाया गया) को सक्षम रखें ताकि इंडेक्स मैन्युअल री‑बिल्ड के बिना ताज़ा रहे।
निष्कर्ष
अब तक आपने एक लॉग फ़ाइल एक्सट्रैक्टर बनाया है, दस्तावेज़ों को इंडेक्स में जोड़ना सीखा है, और बड़े लॉग आर्काइव के लिए सर्च प्रदर्शन को ऑप्टिमाइज़ करने के तरीके खोजे हैं। यह संयोजन आपके Java एप्लिकेशन को किसी भी दस्तावेज़ टाइप में तेज़, सटीक फ़ुल‑टेक्स्ट सर्च प्रदान करने में सक्षम बनाता है।
और अधिक गहराई से सीखने के लिए आधिकारिक GroupDocs डाक्यूमेंटेशन देखें या विभिन्न एक्सट्रैक्टर इम्प्लीमेंटेशन के साथ प्रयोग करें ताकि आपका यूज़ केस पूरी तरह फिट हो सके।
FAQ सेक्शन
- GroupDocs.Search के साथ मैं कौन‑से फ़ाइल टाइप्स को इंडेक्स कर सकता हूँ?
- आप PDFs, Word डॉक्यूमेंट्स, स्प्रेडशीट्स, और कई अन्य फ़ॉर्मैट के साथ-साथ टेक्स्ट एक्सट्रैक्टर के माध्यम से कस्टम लॉग फ़ाइलें भी इंडेक्स कर सकते हैं।
- बड़ी दस्तावेज़ कलेक्शन को प्रभावी ढंग से कैसे हैंडल करें?
- इन्क्रिमेंटल अपडेट्स, पार्टिशन्ड इंडेक्स, और
IndexSettingsको ट्यून करके रिसोर्सेज़ को प्रभावी रूप से मैनेज करें।
- इन्क्रिमेंटल अपडेट्स, पार्टिशन्ड इंडेक्स, और
- क्या GroupDocs.Search को अन्य सिस्टम्स के साथ इंटीग्रेट किया जा सकता है?
- हाँ, यह एक क्लीन Java API प्रदान करता है जिसे मौजूदा सर्विसेज़, माइक्रो‑सर्विसेज़, या वेब एप्लिकेशन में एम्बेड किया जा सकता है।
- टेम्पररी लाइसेंस क्या है, और इसे कैसे प्राप्त करें?
- टेम्पररी लाइसेंस मूल्यांकन के लिए पूर्ण फ़ंक्शनैलिटी बिना टाइम लिमिट के देता है। इसे GroupDocs की वेबसाइट के माध्यम से अप्लाई करें।
अक्सर पूछे जाने वाले प्रश्न
प्रश्न: लॉग फ़ाइल एक्सट्रैक्टर डिफ़ॉल्ट एक्सट्रैक्टर से कैसे अलग है?
उत्तर: डिफ़ॉल्ट एक्सट्रैक्टर सामान्य फ़ॉर्मैट (PDF, DOCX, आदि) को हैंडल करता है। एक कस्टम लॉग फ़ाइल एक्सट्रैक्टर आपको यह परिभाषित करने देता है कि प्लेन‑टेक्स्ट लॉग एंट्रीज़ को कैसे पार्स और इंडेक्स किया जाए।
प्रश्न: क्या मैं कंप्रेस्ड लॉग आर्काइव (जैसे .zip) को इंडेक्स कर सकता हूँ?
उत्तर: हाँ, एक प्री‑प्रोसेसिंग स्टेप जोड़कर आर्काइव से फ़ाइलें एक्सट्रैक्ट करें और फिर उन्हें इंडेक्स में फीड करें।
प्रश्न: लगातार जेनरेट होते लॉग्स के साथ इंडेक्स को अप‑टू‑डेट रखने का सबसे अच्छा तरीका क्या है?
उत्तर: autoReindex को सक्षम करें और एक बैकग्राउंड वॉचर शेड्यूल करें जो नया फ़ाइल दिखाई देने पर index.add(newLogFile) कॉल करे।
प्रश्न: क्या एक सिंगल लॉग फ़ाइल के आकार पर कोई सीमा है जिसे इंडेक्स किया जा सकता है?
उत्तर: व्यावहारिक रूप से सीमा उपलब्ध मेमोरी पर निर्भर करती है। बहुत बड़े लॉग को छोटे चंक्स में विभाजित करके इंडेक्स करने की सलाह दी जाती है।
प्रश्न: क्या GroupDocs.Search फज़ी या वाइल्डकार्ड सर्च को सपोर्ट करता है?
उत्तर: हाँ, सर्च API में फज़ी मैचिंग, वाइल्डकार्ड्स, और प्रॉक्सिमिटी क्वेरीज़ शामिल हैं जो परिणामों की प्रासंगिकता को सुधारते हैं।
आखिरी अपडेट: 2026-08-05
टेस्टेड विथ: GroupDocs.Search 25.4 for Java
लेखक: GroupDocs