Beispiel #1
0
 def execute(self, config=None):
     """
     ***********************************************************************
     
     ***********************************************************************
     """ 
     if not self.arg1:
         return cli.LogMapperCommandResponse(False, "Invalid option")        
     
     if self.arg1 == 'map':
         if len(self.args) < 2: return cli.LogMapperCommandResponse(False, "Invalid arguments")
         #TODO MEJOR FORMA DE SELECCIONAR KEY
         key = self.args[1]
         readerConfig = cfg.loadReaderConfig(config, key)
         mapperThread = mapper.MapperThread(readerConfig, readerConfig)
         mapperThread.start()             
         
         return cli.LogMapperCommandResponse(True, "Mapper started") 
     
     if self.arg1 == 'readers':
         startReadersThreads(config)
         return cli.LogMapperCommandResponse(True, "All readers started")         
     
     if self.arg1 == 'mappers':
         startMapperThreads(config)
         return cli.LogMapperCommandResponse(True, "All mappers started") 
     
     if self.arg1 == 'monitors':
         startMonitorsThreads(config)
         return cli.LogMapperCommandResponse(True, "All monitors started")         
     
     if self.arg1 == 'register':
         return cli.LogMapperCommandResponse(True, startRegister(config))         
     
     return cli.LogMapperCommandResponse(False, "Invalid option")
Beispiel #2
0
    def execute(self, config=None):
        """
        ***********************************************************************
        
        ***********************************************************************
        """
        if not self.arg1:
            return cli.LogMapperCommandResponse(False, "Invalid option")

        if self.arg1 == 'logmapper':
            return cli.LogMapperCommandResponse(True, "Stopping Logmapper...")

        if self.arg1 == 'threads':
            stopThreads(config)
            return cli.LogMapperCommandResponse(True, "Threads stopped")

        if self.arg1 == 'reader' and len(self.args) == 2:
            key = self.args[1]
            stopReader(key)
            return cli.LogMapperCommandResponse(True, "Thread stopped")

        if self.arg1 == 'readers':
            stopReaderThreads(config)
            return cli.LogMapperCommandResponse(True, "Readers stopped")

        if self.arg1 == 'monitors':
            stopMonitorThreads(config)
            return cli.LogMapperCommandResponse(True, "Monitors stopped")

        return cli.LogMapperCommandResponse(False, "Invalid option")
Beispiel #3
0
 def execute(self, config=None):
     """
     ***********************************************************************
     
     ***********************************************************************
     """
     from logmapperagent.commands.commands_index import COMMAND_LIST
     response = ''
     for item in COMMAND_LIST:
         response += str(item) + "\r\n"
     return cli.LogMapperCommandResponse(True, response)
Beispiel #4
0
 def execute(self, config=None):
     """
     ***********************************************************************
     
     ***********************************************************************
     """ 
     if not self.arg1:
         return cli.LogMapperCommandResponse(False, "Invalid option")
     
     if len(self.args) < 2:
         return cli.LogMapperCommandResponse(False, "Missing parameters") 
     
     opt = self.args[1]
     if opt == '1':
         value = True
     elif opt == '0':
         value = False
     else:
         return cli.LogMapperCommandResponse(False, "Invalid parameter: "+opt)        
     
     if self.arg1 == 'ds':
         setReaderThreads(config, SET_OPTION.DATA_SEND, value)
         setMonitorThreads(config, SET_OPTION.DATA_SEND, value)
         return cli.LogMapperCommandResponse(True, "Set OK") 
     
     if self.arg1 == 'se':
         setReaderThreads(config, SET_OPTION.SAVE_EVENTS, value)
         return cli.LogMapperCommandResponse(True, "Set OK")        
     
     return cli.LogMapperCommandResponse(False, "Invalid option")
Beispiel #5
0
    def execute(self, config=None):
        """
        ***********************************************************************
        
        ***********************************************************************
        """
        logger.debug("execute")
        if not self.arg1:
            response = cmdStatus()
            logger.debug("execute response:" + response)
            return cli.LogMapperCommandResponse(True, response)

        if self.arg1 == 'status':
            response = cmdStatus()
            return cli.LogMapperCommandResponse(True, response)

        if self.arg1 == 'readers':
            response = cmdReaderStatus()
            return cli.LogMapperCommandResponse(True, response)

        if self.arg1 == 'host':
            response = commandHostStatus()
            return cli.LogMapperCommandResponse(True, response)

        if self.arg1 == 'cfg':
            response = cmdConfig(config)
            return cli.LogMapperCommandResponse(True, response)

        return cli.LogMapperCommandResponse(False, 'Invalid option')
def mainLoop(config):
    """ 
    ===========================================================================
    logmappper-agent **Main** function 
    ===========================================================================   
    Aqui un ejemplo de documentacion
    Formatos: *cursiva* 
    ``code = True``
    
    **Args**:
        config: configuration object
        
    **Returns**:
        None
    
    """
    logger.info("Start mainLoop")

    port = config.getint(cfg.SECTION_LOGMAPPER, cfg.PROP_AGENTPORT)
    socketServerThread = srv.SocketServerThread(cfg.SOCKET_SERVER_THREAD_KEY,
                                                port)
    socketServerThread.start()

    while True:
        time.sleep(0.25)

        if not srv.queueRxSocketServer.empty():
            inputData = srv.queueRxSocketServer.get()

            try:
                commandDefinition = cli.getCommandDefinition(
                    inputData, cmd.commands_index.COMMAND_LIST)
                commandDefinition.parseArgs(inputData)
                response = commandDefinition.execute(config)
            except Exception as exc:
                logger.exception("Exception in executing command: " +
                                 str(inputData))
                response = cli.LogMapperCommandResponse(False, str(exc))

            srv.queueTxSocketServer.put(response)
            if commandDefinition.command == 'stop' and commandDefinition.arg1 == 'logmapper':
                logger.debug("Stopping logmapper")
                break

    socketServerThread.stopRun()
    srv.checkServerClosed()

    logger.debug("Finish mainLoop")
Beispiel #7
0
    def execute(self, config=None):
        """
        ***********************************************************************
        
        ***********************************************************************
        """
        if not self.arg1:
            return cli.LogMapperCommandResponse(False, "Invalid option")

        if self.arg1 == 'agent':
            return cli.LogMapperCommandResponse(True,
                                                json.dumps(getAgent(config)))

        if self.arg1 == 'readers':
            return cli.LogMapperCommandResponse(True,
                                                json.dumps(getReaders(config)))

        if self.arg1 == 'monitors':
            return cli.LogMapperCommandResponse(
                True, json.dumps(getMonitors(config)))

        if self.arg1 == 'logkeys' and len(self.args) == 2:
            key = self.args[1]
            readerConfig = cfg.loadReaderConfig(config, key)
            return cli.LogMapperCommandResponse(
                True, json.dumps(getLogNodesByCategoryTrace(readerConfig)))

        if self.arg1 == 'paths' and len(self.args) == 2:
            key = self.args[1]
            readerConfig = cfg.loadReaderConfig(config, key)
            return cli.LogMapperCommandResponse(
                True, json.dumps(getLogPaths(readerConfig)))

        if self.arg1 == 'pathMeasures' and len(self.args) == 4:
            key = self.args[1]
            readerConfig = cfg.loadReaderConfig(config, key)
            start = datetime.datetime.strptime(self.args[2], '%Y-%m-%dT%H:%M')
            end = datetime.datetime.strptime(self.args[3], '%Y-%m-%dT%H:%M')
            return cli.LogMapperCommandResponse(
                True, json.dumps(getJsonPathMeasures(readerConfig, start,
                                                     end)))

        if self.arg1 == 'logEventsCount' and len(self.args) == 4:
            key = self.args[1]
            readerConfig = cfg.loadReaderConfig(config, key)
            start = datetime.datetime.strptime(self.args[2], '%Y-%m-%dT%H:%M')
            end = datetime.datetime.strptime(self.args[3], '%Y-%m-%dT%H:%M')
            return cli.LogMapperCommandResponse(
                True,
                json.dumps(getJsonLogEventsCount(readerConfig, start, end)))

        if self.arg1 == 'logMetrics' and len(self.args) == 4:
            key = self.args[1]
            readerConfig = cfg.loadReaderConfig(config, key)
            start = datetime.datetime.strptime(self.args[2], '%Y-%m-%dT%H:%M')
            end = datetime.datetime.strptime(self.args[3], '%Y-%m-%dT%H:%M')
            return cli.LogMapperCommandResponse(
                True, json.dumps(getJsonLogMetrics(readerConfig, start, end)))

        if self.arg1 == 'logMetricsColnames' and len(self.args) == 2:
            key = self.args[1]
            readerConfig = cfg.loadReaderConfig(config, key)
            return cli.LogMapperCommandResponse(
                True, json.dumps(getJsonLogColnames(readerConfig)))

        if self.arg1 == 'monMeasures' and len(self.args) == 4:
            key = self.args[1]
            monitorConfig = cfg.loadMonitorConfig(config, key)
            start = datetime.datetime.strptime(self.args[2], '%Y-%m-%dT%H:%M')
            end = datetime.datetime.strptime(self.args[3], '%Y-%m-%dT%H:%M')
            return cli.LogMapperCommandResponse(
                True,
                json.dumps(getJsonMonitorMeasures(monitorConfig, start, end)))

        if self.arg1 == 'monMeasuresColnames' and len(self.args) == 2:
            key = self.args[1]
            monitorConfig = cfg.loadMonitorConfig(config, key)
            return cli.LogMapperCommandResponse(
                True, json.dumps(getJsonMonitorColnames(monitorConfig)))

        if self.arg1 == 'logRecords' and len(self.args) == 4:
            key = self.args[1]
            readerConfig = cfg.loadReaderConfig(config, key)
            start = datetime.datetime.strptime(self.args[2], '%Y-%m-%dT%H:%M')
            end = datetime.datetime.strptime(self.args[3], '%Y-%m-%dT%H:%M')
            return cli.LogMapperCommandResponse(
                True,
                json.dumps(getLogEventsWithRemoteCall(readerConfig, start,
                                                      end)))

        if self.arg1 == 'logkeysEvents' and len(self.args) == 3:
            category = cat.LogEventCategories[self.args[1]]
            key = self.args[2]
            readerConfig = cfg.loadReaderConfig(config, key)
            return cli.LogMapperCommandResponse(
                True, json.dumps(getLogNodesByCategory(readerConfig,
                                                       category)))

        return cli.LogMapperCommandResponse(False, "Invalid option")