यह कमांड ग्रोक है जिसे हमारे कई मुफ्त ऑनलाइन वर्कस्टेशन जैसे कि उबंटू ऑनलाइन, फेडोरा ऑनलाइन, विंडोज ऑनलाइन एमुलेटर या मैक ओएस ऑनलाइन एमुलेटर का उपयोग करके ऑनवर्क्स फ्री होस्टिंग प्रदाता में चलाया जा सकता है।
कार्यक्रम:
नाम
ग्रोक - लॉग को पार्स करें, घटनाओं को संभालें, और अपने असंरचित पाठ को संरचित बनाएं।
SYNOPSIS
grok [-d] -f कॉन्फिगफाइल
वर्णन
ग्रोक एक सॉफ्टवेयर है जो आपको लॉग और अन्य फ़ाइलों को आसानी से पार्स करने की अनुमति देता है। ग्रोक के साथ, आप कर सकते हैं
असंरचित लॉग और ईवेंट डेटा को संरचित डेटा में बदलें।
लॉग डेटा और प्रोग्राम आउटपुट को पार्स करने के लिए ग्रोक प्रोग्राम एक बेहतरीन टूल है। आप मेल कर सकते हैं
किसी भी संख्या में इनपुट (प्रक्रियाएँ और फ़ाइलें) पर किसी भी संख्या में जटिल पैटर्न और हैं
कस्टम प्रतिक्रियाएँ.
विकल्प
-d or --डेमन
कॉन्फ़िगरेशन फ़ाइल को पार्स करने के बाद डेमॉनाइज़ करें। के साथ क्रियान्वित किया गया डेमॉन(3). डिफ़ॉल्ट है
अग्रभूमि में रहो.
-f कॉन्फिगफाइल
उपयोग करने के लिए एक ग्रोक कॉन्फ़िगरेशन फ़ाइल निर्दिष्ट करें।
विन्यास
आप कॉन्फ़िग फ़ाइल को अपनी इच्छानुसार कुछ भी कॉल कर सकते हैं। कॉन्फ़िगरेशन का पूरा उदाहरण नीचे दिया गया है
विकल्पों और डिफ़ॉल्ट पर दस्तावेज़ीकरण।
# --- नमूना ग्रोक कॉन्फ़िगरेशन प्रारंभ करें
#यह एक टिप्पणी है. :)
#
# डिबगिंग सक्षम या अक्षम करें. डिबग डिफ़ॉल्ट रूप से गलत सेट है।
# 'डीबग' सेटिंग हर स्तर पर मान्य है.
# डिबग मानों को ओवरराइड किए जाने तक डाउन-स्कोप में कॉपी किया जाता है।
डीबग: सत्य
# आप एक कॉन्फ़िगरेशन फ़ाइल में एकाधिक प्रोग्राम ब्लॉक परिभाषित कर सकते हैं।
# एक प्रोग्राम केवल इनपुट्स (फ़ाइलें, निष्पादन) और का एक संग्रह है
# मिलान (पैटर्न और प्रतिक्रियाएँ),
कार्यक्रम {
डिबग: गलत
# फ़ाइल बिना किसी ब्लॉक के. सेटिंग्स ब्लॉक वैकल्पिक है
फ़ाइल "/var/log/संदेश"
# ब्लॉक वाली फ़ाइल
फ़ाइल "/var/log/सुरक्षित" {
# फॉलो का मतलब है 'टेल-एफ' जैसी फाइल को फॉलो करना लेकिन शुरू हो जाता है
# फ़ाइल की शुरुआत में पढ़ना। एक फ़ाइल का अनुसरण किया जाता है
# ट्रंकेशन, लॉग रोटेशन और एपेंड के माध्यम से।
अनुसरण करें: सत्य
}
# एक कमांड निष्पादित करें, सेटिंग्स ब्लॉक वैकल्पिक है
कार्यकारी "नेटस्टैट-आरएन"
# ब्लॉक के साथ निष्पादित करें
कार्यकारी "पिंग-सी 1 www.google.com" {
# यदि निष्पादन बाहर निकलता है तो स्वचालित रूप से पुन: चलाएँ, जैसे ही वह बाहर निकलता है।
#डिफ़ॉल्ट ग़लत है
पुनः आरंभ-पर-निकास: गलत
# एक शुरुआत से अगली शुरुआत तक न्यूनतम समय, यदि हम
# पुनः प्रारंभ हो रहे हैं. डिफ़ॉल्ट कोई न्यूनतम नहीं है
न्यूनतम-पुनः आरंभ-अंतराल: 5
# प्रत्येक एन सेकंड में चलाएं, लेकिन केवल तभी जब प्रक्रिया समाप्त हो गई हो।
# डिफॉल्ट दोबारा चलाने के लिए बिल्कुल नहीं है।
रन-अंतराल: 60
# डिफॉल्ट केवल stdout से प्रोसेस आउटपुट को पढ़ना है।
# stderr से भी पढ़ने के लिए इसे सत्य पर सेट करें।
पढ़ें-stderr: गलत
}
# आपके कॉन्फिगरेशन में एकाधिक मिलान {} ब्लॉक हो सकते हैं।
# इन्हें इनपुट की प्रत्येक पंक्ति के विरुद्ध क्रम में लागू किया जाता है
# इस प्रोग्राम ब्लॉक में आपके निष्पादन और फ़ाइल इंस्टेंस से आता है।
मिलान {
# एक पैटर्न का मिलान करें. यह कोई भी regexp हो सकता है और इसमें %{foo} शामिल हो सकता है
#ग्रोक पैटर्न
पैटर्न: "मिलान करने योग्य कुछ पैटर्न"
# यहां आपके पास कई पैटर्न हो सकते हैं, कोई भी मिलान के लिए मान्य है।
पैटर्न: "मिलान करने योग्य एक और पैटर्न"
# डिफ़ॉल्ट प्रतिक्रिया "%{@LINE}" है जो पूरी पंक्ति है
# मिलान हुआ. प्रतिक्रिया 'कोई नहीं' का एक विशेष मान हो सकता है
# का अर्थ है कि कोई प्रतिक्रिया नहीं होती है, या यह कोई स्ट्रिंग हो सकती है।
# प्रतिक्रिया शेल पर उत्सर्जित होती है यदि यह कोई नहीं है।
प्रतिक्रिया: "%{@LINE}"
# डिफ़ॉल्ट शेल 'stdout' है जिसका अर्थ है प्रतिक्रियाएं हैं
# मानक आउटपुट पर सीधे मुद्रित। शेल को a पर सेट करना
# कमांड स्ट्रिंग उस कमांड और पाइप प्रतिक्रिया डेटा को चलाएगी
# यह।
#शेल: स्टडआउट
शंख: "/ बिन / श"
# शेल पर प्रत्येक लिखने के बाद फ्लश करें।
# डिफ़ॉल्ट फ्लश नहीं करना है.
फ्लश: सच
# ब्रेक-इफ-मैच का अर्थ है आगे किसी भी मैच का प्रयास न करें
# यह रेखा। डिफॉल्ट गलत है।
ब्रेक-इफ-मैच: सच
}
}
# -- कॉन्फ़िगरेशन समाप्त करें
प्रतिरूप फ़ाइलें
पैटर्न फ़ाइलों में ग्रोक में लोड करने के लिए नामों और पैटर्न की सूची होती है।
पैटर्न न्यूलाइन-डीलिमिटेड हैं और इनमें यह सिंटैक्स है:
पैटर्ननाम अभिव्यक्ति
पैटर्ननाम और अभिव्यक्ति के बीच किसी भी रिक्त स्थान को नजरअंदाज कर दिया जाता है।
पैटर्ननाम
यह आपके पैटर्न का नाम है, जिसे लोड होने पर पैटर्न में संदर्भित किया जा सकता है
%{पैटर्ननाम}
अभिव्यक्ति
यहां अभिव्यक्ति, शब्दशः, नियमित अभिव्यक्ति के रूप में उपलब्ध है। आप की जरूरत नहीं
इस बात की चिंता करना कि चीज़ों से कैसे बचा जाए।
प्रतिरूप उदाहरण
अंक \d+
हेलोवर्ल्ड \भेलो वर्ल्ड\बी
नियमित अभिव्यक्ति
ग्रोक के नीचे अभिव्यक्ति इंजन पीसीआरई है। पीसीआरई में कोई भी सिंटैक्स ग्रोक में मान्य है।
प्रतिक्रिया
प्रतिक्रियाएँ मिलान से नामित पैटर्न का संदर्भ दे सकती हैं। आप कुछ अन्य तक भी पहुंच सकते हैं
विशेष मान, जिनमें शामिल हैं:
%{@रेखा}
लाइन मेल खा गई.
%{@मिलान}
सबस्ट्रिंग का मिलान हुआ
%{@शुरू करना}
स्ट्रिंग की शुरुआत से मैच की शुरुआती स्थिति।
%{@अंत}
मैच की अंतिम स्थिति.
%{@लंबाई}
मैच की लंबाई
%{@JSON}
कैप्चर किए गए पैटर्न का पूरा सेट, {की संरचना के रूप में एक json शब्दकोश के रूप में एन्कोड किया गया
पैटर्न: [कैप्चर की सरणी] }। हम एक सारणी का उपयोग करते हैं क्योंकि आप उसी नाम का उपयोग कर सकते हैं
एक मैच में कई बार पैटर्न।
%{@JSON_COMPLEX}
उपरोक्त के समान, लेकिन प्रत्येक नामित पैटर्न के लिए प्रारंभ और अंत स्थिति शामिल है।
वह संरचना है:
{ "ग्रोक": [
{ "@LINE": { "प्रारंभ": ..., "अंत": ..., "मान": ... } },
{ "@MATCH": { "प्रारंभ": ..., "अंत": ..., "मान": ... } },
{ "पैटर्ननाम": { "स्टार्ट": स्टार्टपोस, "एंड": एंडपोस, "वैल्यू": "स्ट्रिंग" } },
{ "पैटर्ननाम2": { "स्टार्ट": स्टार्टपोस, "एंड": एंडपोस, "वैल्यू": "स्ट्रिंग" } },
...
]}
प्रतिक्रिया फिल्टर
प्रतिक्रिया फ़िल्टर आपको कैप्चर किए गए डेटा को बदलने की अनुमति देते हैं। निम्नलिखित फ़िल्टर हैं
बिकाऊ:
किसी प्रतिक्रिया में फ़िल्टर का उपयोग करने का एक उदाहरण इस प्रकार है:
प्रतिक्रिया: "प्रतिध्वनि मिलान: %{@MATCH|shellescape}"
शेलस्केप
गैर-उद्धृत शेल में स्ट्रिंग को सुरक्षित बनाने के लिए आवश्यक सभी वर्णों से बच जाता है
तर्क
sheldqescape
शेल में डबलकोट्स के भीतर सुरक्षित रहने के लिए आवश्यक पात्रों से बच निकलना।
jsonencode
स्ट्रिंग को json स्ट्रिंग में दर्शाने के लिए सुरक्षित बनाता है (json.org के अनुसार एस्केप होता है)।
सिफ़ारिशें)
onworks.net सेवाओं का उपयोग करके ऑनलाइन ग्रोक का उपयोग करें