मैं स्टार्टअप एप्लिकेशन के stdout / stderr को कैसे देख सकता हूं?


12

लॉगिन करते समय मेरे पास जो कुछ कमांड्स हैं, वे स्टार्टअप एप्लिकेशन में ठीक से शुरू नहीं होते हैं। (विशेष रूप से मुझे gtk-redshift से परेशानी हो रही है।) डिबग करने के लिए, मैं stdout / stderr देखने में सक्षम होना चाहूंगा। मुझे स्टार्टअप एप्लिकेशन के लिए एक लॉग फ़ाइल नहीं मिली है। मैंने बिना किसी सफलता के साथ ">> log.txt" का उपयोग करके एक फ़ाइल पर पुनर्निर्देशित करने की कोशिश की है।

स्टार्टअप एप्लिकेशन के लिए मैं stdout / stderr कैसे देख सकता हूं? बेहतर अभी तक, स्टार्टअप अनुप्रयोगों के लिए एक लॉग फ़ाइल है?

जवाबों:


7

मुझे लगता है कि सबसे अच्छी बात यह है कि या तो स्टार्टअप में नीचे बैश कमांड को रखा जाएगा या फिर इसे बैश स्क्रिप्ट में डाला जाएगा और अपने स्टार्टअप एप्लिकेशन में इसे चुनें। मैंने -vविकल्प जोड़ा है इसलिए एप्लिकेशन अपने सभी कार्यों को सबसे बड़ी विवरण के साथ रिकॉर्ड करता है; कुछ अनुप्रयोगों में अन्य वर्बोसिटी सेटिंग्स और यहां तक ​​कि विभिन्न स्तर हैं जिन्हें आप निर्दिष्ट कर सकते हैं।

&>इस्तेमाल किया पुनर्निर्देशन रूप में ही है 2>&1कि यह कार्यक्रम के उत्पादन (के सभी पुनर्निर्देश stderr, stdoutनिर्दिष्ट फ़ाइल के लिए), अर्थात् &>/home/mike/redshift.log

यहां वह कमांड है जिसका उपयोग लॉगिंग को सेट करने के लिए किया जा सकता है, और इसे अन्य कार्यक्रमों के लिए इस्तेमाल किया जा सकता है, अगर उचित रूप से संशोधित किया जाए।

bash -c "setsid /usr/bin/gtk-redshift -v -l 40.77:-73.9 -t 6500:5500 &>/home/mike/redshift.log"

ये सिर्फ नमूना परीक्षण सेटिंग्स हैं, इन मूल्यों को अपने लिए स्थानापन्न करें; आप कमांड को अपने स्टार्टअप प्रविष्टि के लिए उचित रूप से बैश रैपर में संशोधित कर सकते हैं, क्योंकि उपरोक्त कमांड-लाइन काफी लंबी है।

यहां बनाए गए लॉग का एक अंश /home/mike/redshift.log:

Gamma ramp size too small: 0
Failed to start adjustment method randr.
Trying next method...
Location: 40.770000, -73.900002
Brightness: 1.00
Gamma: 1.000, 1.000, 1.000
Using method `vidmode'.

लॉग जारी है और आपको आवश्यक जानकारी देनी चाहिए। कुछ कार्यक्रमों जैसे vlcकि विकल्प होते हैं जिन्हें आप सेट कर सकते हैं ताकि उनकी लॉगिंग को syslog में भेजा जा सके, लेकिन मैं पसंद करता हूं कि प्रत्येक प्रोग्राम का अपना अलग लॉग हो।


क्या होगा यदि एक अंतर्निहित प्रोग्राम एक त्रुटि प्रिंट करता है? उदाहरण के लिए एक्स-विंडो?
प्रात:

-2

कृपया जाँच करें /var/log/syslog। सभी अनुप्रयोगों के लिए इसका सामान्य।


मुझे लगता है कि मुझे अधिक स्पष्ट होना चाहिए था। मैंने पहले ही जाँच / var / log / syslog कर लिया है। विचाराधीन स्टार्टअप अनुप्रयोग, लॉग प्रविष्टियाँ syslog में नहीं करता है। मैं किसी भी तरह के स्टार्टअप एप्लीकेशन स्क्रिप्ट / रैपर से कोई लॉग नहीं देखता हूं।
एडम पैत्ज़निक

क्या आप आवेदन के नामों का खुलासा करेंगे?
thefourtheye

जैसा कि प्रश्न में कहा गया है, मुख्य अपराधी gtk-redshift है। साथ ही परेशान करने वाला है google-musicmanager।
एडम पैत्ज़निक
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.