From 017c8fdf246df82385fb0222890be85c461d0275 Mon Sep 17 00:00:00 2001 From: Edward Rudd Date: Sun, 26 Oct 2008 00:11:22 +0000 Subject: implement filter support add in check for Apache 1.3 apr_dbd_transaction_mode_set method add transaction stubs --- (limited to 'utility/logparse.c') diff --git a/utility/logparse.c b/utility/logparse.c index 6a21964..ac70ee2 100644 --- a/utility/logparse.c +++ b/utility/logparse.c @@ -349,12 +349,12 @@ apr_status_t parse_logfile(config_t *cfg, const char *filename) apr_pool_create(&tp, cfg->pool); apr_pool_create(&targp, tp); - logging_log(cfg, LOGLEVEL_NOTICE, "Begin Parsing Log File '%s'", filename); + logging_log(cfg, LOGLEVEL_NOTICE, "PARSER: Begin Parsing Log File '%s'", filename); rv = apr_file_open(&file, filename, APR_FOPEN_READ | APR_BUFFERED, APR_OS_DEFAULT, tp); if (rv != APR_SUCCESS) { - logging_log(cfg, LOGLEVEL_NOISE, "Could not open %s", filename); + logging_log(cfg, LOGLEVEL_NOISE, "PARSER: Could not open %s", filename); return rv; } @@ -362,17 +362,38 @@ apr_status_t parse_logfile(config_t *cfg, const char *filename) do { rv = apr_file_gets(buff, 1024, file); if (rv == APR_SUCCESS) { + int i,m, cont = 0; + config_filter_t *filters; + line++; // chomp off newline line_chomp(buff); + // Run line filters + for (i=0, m=cfg->linefilters->nelts, + filters = (config_filter_t *)cfg->linefilters->elts; + ilog_formats, cfg->logformat, APR_HASH_KEY_STRING); if (!fmt) @@ -416,13 +438,31 @@ apr_status_t parse_processline(apr_pool_t *ptemp, config_t *cfg, char **argv, for (i=0; ifields->nelts; i++) { apr_table_setn(datain, ifields[i].name, argv[i]); } - /** @todo Run Pre Filters here */ + // Run Pre Filters + for (i=0, m=cfg->prefilters->nelts, + filters = (config_filter_t *)cfg->prefilters->elts; + ioutput_fields->elts; // clear out ofield function per-line data memset(&g_parser_linedata[1],0,sizeof(void *)*(int)g_parser_linedata[0]); // Convert input fields to output fields - for (i=0; ioutput_fields->nelts; i++) { + for (i=0,m=cfg->output_fields->nelts; ipostfilters->nelts, + filters = (config_filter_t *)cfg->postfilters->elts; + idryrun) { -- cgit v0.9.2