You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by de...@apache.org on 2017/01/06 18:57:40 UTC
svn commit: r1777690 - /uima/uima-ducc/trunk/src/main/admin/ducc_gather_logs
Author: degenaro
Date: Fri Jan 6 18:57:40 2017
New Revision: 1777690
URL: http://svn.apache.org/viewvc?rev=1777690&view=rev
Log:
UIMA-5227 DUCC script to assist in gathering problem determination information
Modified:
uima/uima-ducc/trunk/src/main/admin/ducc_gather_logs
Modified: uima/uima-ducc/trunk/src/main/admin/ducc_gather_logs
URL: http://svn.apache.org/viewvc/uima/uima-ducc/trunk/src/main/admin/ducc_gather_logs?rev=1777690&r1=1777689&r2=1777690&view=diff
==============================================================================
--- uima/uima-ducc/trunk/src/main/admin/ducc_gather_logs (original)
+++ uima/uima-ducc/trunk/src/main/admin/ducc_gather_logs Fri Jan 6 18:57:40 2017
@@ -18,6 +18,7 @@
# under the License.
# -----------------------------------------------------------------------
+import datetime
import os
import socket
import subprocess
@@ -61,10 +62,21 @@ class GatherLogs(DuccUtil):
# output directory
directory = '/tmp'
# output base filename
- filename = 'ducc-problem-determination-info.gz'
+ filename = 'ducc-problem-determination-info'
+ filetype = 'tar'
def get_timestamp(self):
- return get_timestamp().replace(' ','-')
+ dt = datetime.datetime.now()
+ year = dt.strftime("%Y")
+ month = dt.strftime("%b")
+ day = dt.strftime("%d")
+ date = year+month+day
+ hour = dt.strftime("%H")
+ minute = dt.strftime("%M")
+ second = dt.strftime("%S")
+ time = hour+minute+second
+ timestamp = date+'.'+time
+ return timestamp
# resolve output file path
def resolve_target(self):
@@ -73,9 +85,10 @@ class GatherLogs(DuccUtil):
self.directory = self.directory.strip()
if(self.directory == ''):
self.directory = '/tmp'
- self.filename = self.filename.replace('.','.'+socket.gethostname()+'.'+self.get_timestamp()+'.')
+ self.filename = self.filename+'.'+socket.gethostname()+'.'+self.get_timestamp()
self.target = self.directory+'/'+self.filename
self.target = self.target.replace('//','/')
+ self.target = self.target+'.'+self.filetype
if(not os.path.isdir(self.directory)):
os.makedirs(self.directory)
@@ -90,15 +103,16 @@ class GatherLogs(DuccUtil):
(options, args) = parser.parse_args()
self.directory = options.directory
- # create gz file
- def create_zip(self):
+ # create tar file
+ def create_targz(self):
cmd = []
cmd.append('tar')
- cmd.append('-C')
+ cmd.append('--directory')
cmd.append(self.DUCC_HOME)
cmd.append('--exclude')
cmd.append('state/database')
- cmd.append('-czf')
+ cmd.append('--create')
+ cmd.append('--file')
cmd.append(self.target)
cmd.append('apache-uima/apache-activemq/data')
cmd.append('logs')
@@ -106,12 +120,20 @@ class GatherLogs(DuccUtil):
cmd.append('resources')
cmd.append('state')
cmd.append('README')
- #print cmd
- message = 'creating'+' '+self.target
+ cmdline = ''
+ for item in cmd:
+ cmdline = cmdline+' '+item
+ #print cmdline
+ message = 'creating'+' '+self.target+'.gz'
print_info(message)
p = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
out, err = p.communicate()
- sizeMB = os.path.getsize(self.target)/(1.0*1024*1024)
+ cmd = []
+ cmd.append('gzip')
+ cmd.append(self.target)
+ p = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+ out, err = p.communicate()
+ sizeMB = os.path.getsize(self.target+'.gz')/(1.0*1024*1024)
fmtSizeMB = "%.2f" % sizeMB
message = 'size'+' '+str(fmtSizeMB)+' '+'MB'
print_info(message)
@@ -119,8 +141,8 @@ class GatherLogs(DuccUtil):
def main(self, argv):
self.parse_cmdline()
self.resolve_target()
- self.create_zip()
-
+ self.create_targz()
+
if __name__ == '__main__':
instance = GatherLogs()
- instance.main(sys.argv[1:])
\ No newline at end of file
+ instance.main(sys.argv[1:])