Exemplo n.º 1
0
    def print_line(cls, a_line_dict):
        """
           print a gems line in dissemination mode (without gems info but only the diss info)
        """

        app_type = diss_parsing_utils.guess_app(a_line_dict['msg'])

        if app_type == 'xferlog':
            result = X_PARSER.parse_one_line(a_line_dict['msg'])

            (filename, service_dir) = diss_parsing_utils.get_xferlog_file_info(
                result['file'])

            #cut filenames longer than 80 chars
            if len(filename) > 80:
                filename = filename[:77] + '...'

            message = '%s %s %s %s (%s) uplinked in %s in %s sec' %(tu.datetime_to_compactdate(result['time']), \
                                                                               'ftpserv'.ljust(7),
                                                                               a_line_dict['lvl'], \
                                                                               filename.ljust(80), \
                                                                               diss_parsing_utils.get_human_readable_bytes(result['file_size']).ljust(9), \
                                                                               service_dir.ljust(25), \
                                                                               result['transfer_time'].ljust(2) )

            GEMSColPrinter.log.info(
                get_string_to_print(a_line_dict['lvl'], message))

        elif app_type == 'gems':
            GEMSColPrinter._simple_print_line(a_line_dict)
        elif app_type == 'tc-send':
            result = S_PARSER.parse_one_line(a_line_dict['msg'])

            message ='%s %s %s %s' % (tu.datetime_to_compactdate(result['time']) , \
                                   'tcsend'.ljust(7), \
                                   a_line_dict['lvl']  , \
                                   result['msg'][:130].ljust(130))

            GEMSColPrinter.log.info(
                get_string_to_print(a_line_dict['lvl'], message))
Exemplo n.º 2
0
    def print_line(cls, a_line_dict):
        """
           print a gems line in dissemination mode (without gems info but only the diss info)
        """
        
        app_type = diss_parsing_utils.guess_app(a_line_dict['msg'])

        if app_type == 'xferlog':
            result = X_PARSER.parse_one_line(a_line_dict['msg'])  
            
            (filename, service_dir) = diss_parsing_utils.get_xferlog_file_info(result['file'])
            
            #cut filenames longer than 80 chars
            if len(filename) > 80:
                filename = filename[:77] + '...'
             
            message = '%s %s %s %s (%s) uplinked in %s in %s sec' %(tu.datetime_to_compactdate(result['time']), \
                                                                               'ftpserv'.ljust(7),
                                                                               a_line_dict['lvl'], \
                                                                               filename.ljust(80), \
                                                                               diss_parsing_utils.get_human_readable_bytes(result['file_size']).ljust(9), \
                                                                               service_dir.ljust(25), \
                                                                               result['transfer_time'].ljust(2) )
             
            GEMSColPrinter.log.info(get_string_to_print(a_line_dict['lvl'], message))
            
        elif app_type == 'gems':
            GEMSColPrinter._simple_print_line(a_line_dict)
        elif app_type == 'tc-send':
            result = S_PARSER.parse_one_line(a_line_dict['msg'])  
            
            message ='%s %s %s %s' % (tu.datetime_to_compactdate(result['time']) , \
                                   'tcsend'.ljust(7), \
                                   a_line_dict['lvl']  , \
                                   result['msg'][:130].ljust(130))
            
            GEMSColPrinter.log.info(get_string_to_print(a_line_dict['lvl'], message))
Exemplo n.º 3
0
 def run(self, args):
     """
        Run the grep with the given args 
     """
     dfrom, duntil =  self._process_dates(args)
 
     facilities    =  self._process_facilities(args)
     
     extractor     =  gems_feeder.GEMSExtractor(start_time = dfrom, end_time = duntil, facility = facilities, search ='tc-send')
     
     for data_dict in extractor:
         
         fac  = data_dict['facility']
         dt = time_utils.convert_date_str_to_datetime(data_dict['time'])
         time = time_utils.datetime_to_compactdate(dt)
         msg  = data_dict['msg']
         
         print('%s %s %s' %(fac, time , msg))
Exemplo n.º 4
0
    def run(self, args):
        """
           Run the grep with the given args 
        """
        dfrom, duntil = self._process_dates(args)

        facilities = self._process_facilities(args)

        extractor = gems_feeder.GEMSExtractor(start_time=dfrom,
                                              end_time=duntil,
                                              facility=facilities,
                                              search='tc-send')

        for data_dict in extractor:

            fac = data_dict['facility']
            dt = time_utils.convert_date_str_to_datetime(data_dict['time'])
            time = time_utils.datetime_to_compactdate(dt)
            msg = data_dict['msg']

            print('%s %s %s' % (fac, time, msg))