मैं एक अलर्ट सेट करना चाहता हूं जो हर 10 मिनट में चलता है और ट्रिगर होता है जब एक निश्चित अनुपात 2.5 से बड़ा या 0.5 से छोटा होता है।

"certainEvent" source="abc.log" 
| timechart partial=f span=5m count as numbers 
| fillnull 
| streamstats current=f last(numbers) as last_numbers 
| eval ratio = numbers/last_numbers 
| where ratio>2.5 OR ratio < 0.5

अब मैं अलर्ट खोज को हर 10 मिनट में चलाने के लिए शेड्यूल करना चाहता हूं। इसलिए, मैं इसे क्रॉन शेड्यूल पर चलाना चाहता हूं और */10 * * * * चुना है। क्या वो सही है?

दूसरे, मैं अलर्ट के रूप में सहेजें-मेनू में एक समाप्ति तिथि और एक समय सीमा चुन सकता हूं। डिफ़ॉल्ट रूप से ऐसा लगता है कि यह पिछले 24 घंटों (समय सीमा) और समाप्ति तिथि के साथ-साथ पिछले 24 घंटों पर भी सेट है। मैं अब सोच रहा हूं कि क्या इन सेटिंग्स का अलर्ट खोज पर कोई प्रभाव पड़ता है। मैं नहीं चाहता कि मेरी अलर्ट खोज हर उस घटना को खोजे जो इस समय सीमा में हर बार मेरे द्वारा निर्धारित क्वेरी में शर्त को पूरा करती है, लेकिन केवल एक बार (और फिर मेल द्वारा सूचित किया जाता है)। मैं यह भी नहीं चाहता कि 24 घंटे के बाद अलर्ट समाप्त हो जाए लेकिन अलर्ट खोज को तब तक चलने दें जब तक कि इसे मेरे या किसी और द्वारा बंद न कर दिया जाए। तो, मैं सोच रहा हूँ कि क्या मुझे आवश्यक कार्यक्षमता प्राप्त करने के लिए इन दो मापदंडों को संशोधित करना चाहिए या करना चाहिए?

1
Tobitor 7 जिंदा 2021, 16:17

1 उत्तर

सबसे बढ़िया उत्तर

अब मैं अलर्ट खोज को हर 10 मिनट में चलाने के लिए शेड्यूल करना चाहता हूं। इसलिए, मैं इसे क्रॉन शेड्यूल पर चलाना चाहता हूं और */10 * * * * चुना है। क्या वो सही है?

हां, वह इसे हर 10 मिनट में चलाएगा

दूसरे, मैं अलर्ट-मेनू के रूप में सहेजें में एक समाप्ति तिथि और एक समय सीमा चुन सकता हूं। डिफ़ॉल्ट रूप से ऐसा लगता है कि यह पिछले 24 घंटों (समय सीमा) और समाप्ति तिथि के साथ-साथ पिछले 24 घंटों पर भी सेट है। मैं अब सोच रहा हूं कि क्या इन सेटिंग्स का अलर्ट खोज पर कोई प्रभाव पड़ता है।

यह दी गई खोज के परिणाम को समाप्त होने से पहले कितनी देर तक सहेजा जाता है

जिस समयावधि में खोज चलती है, वह खोज में ही निर्धारित होती है। मैं आमतौर पर स्पष्ट रूप से अवधि को earliest= के साथ इस प्रकार निर्धारित करता हूं:

index=ndx sourcetype=srctp fieldA=* fieldb=* earliest=-10m

मैं यह भी नहीं चाहता कि 24 घंटे के बाद अलर्ट समाप्त हो जाए लेकिन अलर्ट खोज को तब तक चलने दें जब तक कि इसे मेरे या किसी और द्वारा बंद न कर दिया जाए।

मुझे लगता है कि आप कई स्प्लंक शर्तों को गलत समझते हैं। खोज पूरी होने तक चलेगी। किसी खोज के परिणाम को केवल तब तक रखा जाता है जब तक कि उस खोज के लिए समाप्ति समय निर्धारित हो (डिफ़ॉल्ट में 10 मिनट, 7 दिन, 24 घंटे और 2x रन अंतराल शामिल हैं (उदाहरण के लिए शेड्यूल की गई रिपोर्ट के लिए) )

यदि आप किसी अलर्ट को शेड्यूल करते हैं, तो वह तब तक शेड्यूल रहेगा जब तक आप (या उपयुक्त अनुमति वाला कोई अन्य व्यक्ति) उसे अक्षम नहीं कर देता - मेरे पास ऐसे अलर्ट हैं जो हर 30 मिनट में चलते हैं जो कि महीनों से लागू हैं। मेरे पास अन्य हैं जो हर घंटे चलते थे, लेकिन अब अक्षम हैं (लेकिन हटाया नहीं गया है, क्योंकि हमें वर्ष के कुछ हिस्सों में उनकी आवश्यकता है)।

1
warren 7 जिंदा 2021, 18:59
शुक्रिया! आपके पहले उत्तर के बारे में -> मुझे यह मिला: docs.splunk.com/ दस्तावेज़ीकरण/स्प्लंक/8.1.1/अलर्ट/…। और वहां यह कहा गया है कि */9 * * * * का अर्थ है "हर नौ मिनट में"। उसके कारण मैंने */10 * * * * को चुना। मैंने Time Range को कैसे सेट करने के लिए कहा, इसका कारण यह है कि मैंने पहले 24 घंटे की एक सीमा निर्धारित की और हर दस मिनट में अलर्ट चलाया और मुझे कल से मेल के रूप में दो बार परिणाम मिले। यह एक ऐसी चीज थी जिससे मैं बचना चाहता था, इसलिए मैंने Time Range को 12 मिनट पर सेट किया लेकिन मैं earliest=-10m तब भी निर्दिष्ट कर सकता था? मुझे थोड़ा डर है कि कहीं मैं कुछ इवेंट मिस न कर दूं
 – 
Tobitor
7 जिंदा 2021, 17:43
- आप सही कह रहे हैं, मुझे मेरा मकई गणित पीछे की तरफ मिला है ... बस जवाब में इसे ठीक कर दिया है :)
 – 
warren
7 जिंदा 2021, 18:59
1
:: खोज में ही खोज के लिए समय सीमा निर्धारित करें। उदाहरण के लिए, मेरे पास आधे घंटे के अलर्ट चल रहे हैं (26,56 * * * *) लेकिन खोज में मैंने earliest=-35m सेट किया है क्योंकि मैं एक कभी-कभार होता दूसरा अलर्ट भेजने के समय में ओवरलैप करें (यह समान रूप से स्वरूपित दर्जनों अलर्ट में 18 महीनों में केवल एक बार हुआ है) एक को याद करने के बजाय
 – 
warren
7 जिंदा 2021, 19:01
बिल्कुल ठीक है! बहुत - बहुत धन्यवाद :-)
 – 
Tobitor
7 जिंदा 2021, 22:09