Пример #1
0
void JConsoleHandler::configure() {
    //TODO JLogManager* manager = JLogManager::getLogManager();
    //TODO JString cname = getClass()->getName();

    setLevel(JLevel::INFO);//TODO manager.getLevelProperty(cname +".level", Level.INFO));
    setFilter(NULL);//TODO manager.getFilterProperty(cname +".filter", null));
    setFormatter(new JSimpleFormatter());//TODO manager.getFormatterProperty(cname +".formatter", new SimpleFormatter()));
    try {
        setEncoding("");//TODO manager.getStringProperty(cname +".encoding", null));
    } catch (JException* ex) {
        delete ex;
        try {
            setEncoding("");
        } catch (JException* ex2) {
            delete ex2;
        }
    }
}
Пример #2
0
            void JSocketHandler::configure() {
                //TODO JLogManager* manager = JLogManager::getLogManager();
                JString cname = getClass()->getName();

                setLevel(JLevel::ALL);//TODO manager.getLevelProperty(cname +".level", Level.ALL));
                setFilter(NULL);//TODO manager.getFilterProperty(cname +".filter", null));
                setFormatter(new JXMLFormatter());//TODO manager.getFormatterProperty(cname +".formatter", new XMLFormatter()));
                try {
                    setEncoding("");//TODOmanager.getStringProperty(cname +".encoding", null));
                } catch (JException* ex) {
                    delete ex;
                    try {
                        setEncoding("");
                    } catch (JException* ex2) {
                        delete ex2;
                    }
                }
                port = 0;//TODO manager.getIntProperty(cname + ".port", 0);
                host = new JString("localhost");//TODO manager.getStringProperty(cname + ".host", null);
            }
Пример #3
0
	LogHandler::LogHandler()
	{
		setFormatter(FormatterPtr(new SimpleFormatter));
	}
Пример #4
0
int main() {
    // Dateinamen einlesen
    char*filename = malloc(sizeof(char)*100);
    char puffer[313]; // 100+1+100+1+2+1+2+1+4+1+100
    printf("Name der Datei: "); // Dateinamen einlesen
    scanf("%s", filename);
    
    // Sortierung bestimmen
    printf("Welche Sortierung?\n- 0 für Name\n- 1 für Wohnort\n- 2 für Datum\n");
    int sort;
    fscanf(stdin, "%i", &sort); // Von einer korrekten Eingabe wird ausgegangen...
    if(sort<0 || sort>2) {
        printf("Ungültige Eingabe\n");
        return EXIT_FAILURE;
    }
    
    // Funktionenpointer setzen - Liste konfigurieren
    int (*cmp)(void*, void*);
    switch(sort) {
        case 0: cmp=&cmp_names; break;
        case 1: cmp=&cmp_wohnort; break;
        case 2: cmp=&cmp_dates;
    }
    setComparer(cmp);
    setFormatter(&printItem);
    setDisposer(&freeItem);
    
    // Datei zum Lesen öffnen und einlesen
    FILE*f = fopen(filename, "r"); 
    if(f==NULL) {printf("Datei konnte nicht gelesen werden\n"); return EXIT_FAILURE;}
    char*vorname;
    char*nachname;
    char*wohnort;
    while(fgets(puffer, 313, f)) { // Zeilenweise lesen
        vorname=malloc(100);
        nachname=malloc(100);
        wohnort=malloc(100);
        int mode=0;
        int b=0;
        int tag=0;
        int monat=0;
        int jahr=0;
        int i;
        for(i=0; i<sizeof(puffer); i++) {
            if(mode==0) { // Vornamen trennen
                if(puffer[i]!=' ') {
                    vorname[i]=puffer[i];
                } else {
                    vorname[i]='\0';
                    b=i+1;
                    mode=1;
                }
            } else if(mode==1) { // Nachnamen trennen
                if(puffer[i]!=' ') {
                   nachname[i-b]=puffer[i];
                } else {
                   nachname[i-b]='\0';
                   mode=2;
                }
            } else if(mode==2) { // Geburtsdatum einlesen
                tag=atoi(&puffer[i]);
                monat=atoi(&puffer[i+3]);
                jahr=atoi(&puffer[i+6]);
                i+=10;
                b=i+1;
                mode=3;
            } else { // Ort einlesen
                if(puffer[i]!='\n' && puffer[i]!=-1) { // auch EOF beachten
                    wohnort[i-b]=puffer[i];
                } else {
                    wohnort[i-b]='\0';
                    break;
                }
            }
        }
        // Neues Struct mit gesammelten Daten erzeugen
        struct mycontent*tmp = malloc(sizeof(mycontent));
        tmp->vorname = vorname;
        tmp->nachname = nachname;
        tmp->wohnort = wohnort;
        tmp->tag = tag;
        tmp->monat = monat;
        tmp->jahr = jahr;
       
        // In die Liste einfügen
        insertSorted(tmp);   
    }
    
    printList();
    fclose(f); // Filestream schließen
    freeList(); // Speicherplatz freigeben
    free(filename);
    return 0;
}
Пример #5
0
/*!
  \fn QConsoleAppender::QConsoleAppender(QObject *parent)
  \brief Constructs an object with parent object \a parent.
*/
QConsoleAppender::QConsoleAppender(QObject *parent)
    : QAbstractAppender(*new QConsoleAppenderPrivate(), parent)
{
    setFormatter(new QSimpleFormatter(false, this));
}
Пример #6
0
void CBasicLogConfigurator::configure()
{
	try
	{
		const JsonNode & loggingNode = settings["logging"];
		if(loggingNode.isNull())
			throw std::runtime_error("Settings haven't been loaded.");

		// Configure loggers
		const JsonNode & loggers = loggingNode["loggers"];
		if(!loggers.isNull())
		{
			for(auto & loggerNode : loggers.Vector())
			{
				// Get logger
				std::string name = loggerNode["domain"].String();
				CLogger * logger = CLogger::getLogger(CLoggerDomain(name));

				// Set log level
				logger->setLevel(getLogLevel(loggerNode["level"].String()));
			}
		}
		CLogger::getGlobalLogger()->clearTargets();

		// Add console target
		auto consoleTarget = make_unique<CLogConsoleTarget>(console);
		const JsonNode & consoleNode = loggingNode["console"];
		if(!consoleNode.isNull())
		{
			const JsonNode & consoleFormatNode = consoleNode["format"];
			if(!consoleFormatNode.isNull()) consoleTarget->setFormatter(CLogFormatter(consoleFormatNode.String()));
			const JsonNode & consoleThresholdNode = consoleNode["threshold"];
			if(!consoleThresholdNode.isNull()) consoleTarget->setThreshold(getLogLevel(consoleThresholdNode.String()));
			const JsonNode & coloredConsoleEnabledNode = consoleNode["coloredOutputEnabled"];
			consoleTarget->setColoredOutputEnabled(coloredConsoleEnabledNode.Bool());

			CColorMapping colorMapping;
			const JsonNode & colorMappingNode = consoleNode["colorMapping"];
			if(!colorMappingNode.isNull())
			{
				for(const JsonNode & mappingNode : colorMappingNode.Vector())
				{
					std::string domain = mappingNode["domain"].String();
					std::string level = mappingNode["level"].String();
					std::string color = mappingNode["color"].String();
					colorMapping.setColorFor(CLoggerDomain(domain), getLogLevel(level), getConsoleColor(color));
				}
			}
			consoleTarget->setColorMapping(colorMapping);
		}
		CLogger::getGlobalLogger()->addTarget(std::move(consoleTarget));

		// Add file target
		auto fileTarget = make_unique<CLogFileTarget>(filePath, appendToLogFile);
		const JsonNode & fileNode = loggingNode["file"];
		if(!fileNode.isNull())
		{
			const JsonNode & fileFormatNode = fileNode["format"];
			if(!fileFormatNode.isNull()) fileTarget->setFormatter(CLogFormatter(fileFormatNode.String()));
		}
		CLogger::getGlobalLogger()->addTarget(std::move(fileTarget));
		appendToLogFile = true;
	}
	catch(const std::exception & e)
	{
		logGlobal->errorStream() << "Could not initialize the logging system due to configuration error/s."
								 << "The logging system can be in a corrupted state. " << e.what();
	}

	logGlobal->infoStream() << "Initialized logging system based on settings successfully.";
}