How to execute a flume configuration file using java program? -


मेरे पास फ्लू कॉन्फ़िगरेशन फ़ाइल है filename.conf , जब मैं इस फाइल को टर्मिनल में निष्पादित करता हूँ तो यह काम करता है कुंआ। लेकिन मैं रनटाइम.गेटरीटाइम ()। Exec फ़ंक्शन का उपयोग करके जावा प्रोग्राम में एक ही फ़ाइल को उत्तेजित करने की कोशिश कर रहा हूं। यह

यह मेरा flume निष्पादन कमांड:

  / home / path / flume / bin / flume-ng एजेंट --conf फाइल /होम / पाथ / फ्लूमेम / फ़िलेनाम.कॉम --name एजेंट- Dflume.root .logger = INFO, कंसोल   

यह मेरा जावा कोड है:

  प्रक्रिया p; P = Runtime.getRuntime ()। Exec ("/ home / path / flume / bin / flume-ng एजेंट --conf फाइल /होम / पाथ / फ्लूमेम / फ़िलेनाम। कॉन्फ़ - नाम चहचहानाअगेंट- Dflume.root.logger = जानकारी, कंसोल "); p.waitFor (); BufferedReader रीडर = नया BufferedReader (नया InputStreamReader (p.getInputStream ())); स्ट्रिंग रेखा = ""; जबकि ((रेखा = रीडर। रीडलाइन ()) = नल) {System.out.println (रेखा); }   

मुझे कोई त्रुटि नहीं मिल रही है।

जावा प्रोग्राम का प्रयोग करके कॉन्फ़ फाइल को चलाने के लिए एक एपलीकेशन क्लास। कृपया नीचे कार्यक्रम खोजें। <पूर्व> आयात करें org.apache.flume.node.Application; आयात करें org.apache.log4j.BasicConfigurator; सार्वजनिक कक्षा फ्लोम {सार्वजनिक स्थिर शून्य मुख्य (स्ट्रिंग [] आर्ग्स) {स्ट्रिंग [] args1 = नया स्ट्रिंग [] {"एजेंट", "- nTwitterAgent", "- fflume.conf"}; BasicConfigurator.configure (); Application.main (args1); System.setProperty ("hadoop.home.dir", "/"); }}

अनुप्रयोग वर्ग में आपको अपने एजेंट, एजेंटनाम और flume.conf फ़ाइल पथ की आवश्यकता है। यहाँ मेरे मामले में flume.conf फ़ाइल मेरी प्रोजेक्ट कक्षापथ में है, इसलिए मैंने सिर्फ-fflume.conf के रूप में निर्दिष्ट किया है यदि यह एक अलग निर्देशिका में है, तो आपको वहां पूर्ण पथ निर्दिष्ट करना होगा। इसके बाद आप इसे सामान्य जावा प्रोग्राम के रूप में चला सकते हैं।

Comments

Popular posts from this blog

Pass DB Connection parameters to a Kettle a.k.a PDI table Input step dynamically from Excel -

multithreading - PhantomJS-Node in a for Loop -

c++ - MATLAB .m file to .mex file using Matlab Compiler -