Procházet zdrojové kódy

AMBARI-4944. Logs do not give the full picture of steps executed
(aonishuk)

Andrew Onischuk před 11 roky
rodič
revize
804cebf100

+ 2 - 0
ambari-agent/conf/unix/ambari-agent.ini

@@ -54,3 +54,5 @@ dirs=/etc/hadoop,/etc/hadoop/conf,/etc/hbase,/etc/hcatalog,/etc/hive,/etc/oozie,
   /var/log/nagios
 rpms=nagios,ganglia,
   hadoop,hadoop-lzo,hbase,oozie,sqoop,pig,zookeeper,hive,libconfuse,ambari-log4j
+; 0 - unlimited
+log_lines_count=300

+ 2 - 0
ambari-agent/src/main/python/ambari_agent/AmbariConfig.py

@@ -60,6 +60,8 @@ passphrase_env_var_name=AMBARI_PASSPHRASE
 state_interval = 6
 dirs=/etc/hadoop,/etc/hadoop/conf,/var/run/hadoop,/var/log/hadoop
 rpms=glusterfs,openssl,wget,net-snmp,ntpd,ruby,ganglia,nagios,glusterfs
+log_lines_count=300
+
 """
 s = StringIO.StringIO(content)
 config.readfp(s)

+ 5 - 2
ambari-agent/src/main/python/ambari_agent/PythonExecutor.py

@@ -122,13 +122,16 @@ class PythonExecutor:
     return python_command
 
   def condenseOutput(self, stdout, stderr, retcode, structured_out):
+    log_lines_count = self.config.get('heartbeat', 'log_lines_count')
+    
     grep = self.grep
     result = {
       "exitcode": retcode,
-      "stdout"  : grep.tail(stdout, grep.OUTPUT_LAST_LINES),
-      "stderr"  : grep.tail(stderr, grep.OUTPUT_LAST_LINES),
+      "stdout": grep.tail(stdout, log_lines_count) if log_lines_count else stdout,
+      "stderr": grep.tail(stderr, log_lines_count) if log_lines_count else stderr,
       "structuredOut" : structured_out
     }
+    
     return result
 
   def python_watchdog_func(self, python, timeout):

+ 1 - 2
ambari-server/src/main/resources/stacks/HDP/1.3.2/services/PIG/package/scripts/service_check.py

@@ -55,8 +55,7 @@ class PigServiceCheck(Script):
       tries     = 3,
       try_sleep = 5,
       path      = '/usr/sbin:/sbin:/usr/local/bin:/bin:/usr/bin',
-      user      = params.smokeuser,
-      logoutput = True
+      user      = params.smokeuser
     )
   
     ExecuteHadoop( test_cmd,

+ 1 - 2
ambari-server/src/main/resources/stacks/HDP/2.0.6/services/PIG/package/scripts/service_check.py

@@ -55,8 +55,7 @@ class PigServiceCheck(Script):
       tries     = 3,
       try_sleep = 5,
       path      = '/usr/sbin:/sbin:/usr/local/bin:/bin:/usr/bin',
-      user      = params.smokeuser,
-      logoutput = True
+      user      = params.smokeuser
     )
   
     ExecuteHadoop( test_cmd,

+ 0 - 2
ambari-server/src/test/python/stacks/1.3.2/PIG/test_pig_service_check.py

@@ -45,7 +45,6 @@ class TestPigServiceCheck(RMFTestCase):
     )
        
     self.assertResourceCalled('Execute', 'pig /tmp/pigSmoke.sh',
-      logoutput = True,
       path = ['/usr/sbin:/sbin:/usr/local/bin:/bin:/usr/bin'],
       tries = 3,
       user = 'ambari-qa',
@@ -81,7 +80,6 @@ class TestPigServiceCheck(RMFTestCase):
     )
        
     self.assertResourceCalled('Execute', 'pig /tmp/pigSmoke.sh',
-      logoutput = True,
       path = ['/usr/sbin:/sbin:/usr/local/bin:/bin:/usr/bin'],
       tries = 3,
       user = 'ambari-qa',

+ 0 - 2
ambari-server/src/test/python/stacks/2.0.6/PIG/test_pig_service_check.py

@@ -44,7 +44,6 @@ class TestPigServiceCheck(RMFTestCase):
     )
        
     self.assertResourceCalled('Execute', 'pig /tmp/pigSmoke.sh',
-      logoutput = True,
       path = ['/usr/sbin:/sbin:/usr/local/bin:/bin:/usr/bin'],
       tries = 3,
       user = 'ambari-qa',
@@ -80,7 +79,6 @@ class TestPigServiceCheck(RMFTestCase):
     )
        
     self.assertResourceCalled('Execute', 'pig /tmp/pigSmoke.sh',
-      logoutput = True,
       path = ['/usr/sbin:/sbin:/usr/local/bin:/bin:/usr/bin'],
       tries = 3,
       user = 'ambari-qa',