![]() |
LogDoctor 2.00
Parse Apache2/Nginx/IIS logs and create statistics
|
Public Member Functions | |
| void | setDialogLevel (const int &new_level) |
| Returns the Dialogs level. | |
| void | setDbPath (const std::string &path) |
| Sets the path for the logs Collection database. More... | |
| void | refreshDates (std::tuple< bool, std::unordered_map< int, std::unordered_map< int, std::unordered_map< int, std::vector< int > > > > > &result) |
| Refreshes the dates which are available in the database. More... | |
| void | updateWarnings (const QString &web_server, const std::vector< std::tuple< int, int > > &updates) |
| Updates the database applying the changes made in the Warnings statistics table. More... | |
| void | getWarnCounts (std::tuple< bool, std::vector< std::vector< std::vector< std::vector< QString > > > > > &result, const QString &web_server, const QString &year_, const QString &month_, const QString &day_, const QString &hour_) |
| Retrieves the data needed for the Warnings statistics. More... | |
| void | getSpeedData (std::tuple< bool, std::vector< std::tuple< long long, std::vector< QString > > > > &result, const QString &web_server, const QString &year_, const QString &month_, const QString &day_, const QString &protocol_f, const QString &method_f, const QString &uri_f, const QString &query_f, const QString &response_f) |
| Retrieves the data needed for the Speed statistics. More... | |
| void | getItemsCount (std::tuple< bool, std::vector< std::tuple< QString, int > > > &result, const QString &web_server, const QString &year, const QString &month, const QString &day, const QString &log_field) |
| Retrieves the data needed for the Counts statistics. More... | |
| void | getDaytimeCounts (std::tuple< bool, std::unordered_map< int, std::unordered_map< int, int > > > &result, const QString &web_server, const QString &from_year_, const QString &from_month_, const QString &from_day_, const QString &to_year_, const QString &to_month_, const QString &to_day_, const QString &log_field_, const QString &field_filter) |
| Retrieves the data needed for the Daytime statistics. More... | |
| void | getRelationalCountsDay (std::tuple< bool, std::vector< std::tuple< long long, int > > > &result, const QString &web_server, const QString &year_, const QString &month_, const QString &day_, const QString &log_field_1_, const QString &field_filter_1, const QString &log_field_2_, const QString &field_filter_2) |
| Retrieves the data needed for the Relationsl statistics. More... | |
| void | getRelationalCountsPeriod (std::tuple< bool, std::vector< std::tuple< long long, int > > > &result, const QString &web_server, const QString &from_year_, const QString &from_month_, const QString &from_day_, const QString &to_year_, const QString &to_month_, const QString &to_day_, const QString &log_field_1_, const QString &field_filter_1, const QString &log_field_2_, const QString &field_filter_2) |
| Retrieves the data needed for the Relational statistics. More... | |
| const bool | getGlobalCounts (const QString &web_server, const std::unordered_map< int, std::unordered_map< int, std::vector< int > > > &dates, std::vector< std::unordered_map< QString, int > > &recurs, std::tuple< QString, int > &traf_date, std::unordered_map< int, double > &traf_day, std::unordered_map< int, double > &traf_hour, std::vector< long long > &perf_time, std::vector< long long > &perf_sent, std::vector< long long > &perf_receiv, long &req_count) |
| Retrieves the data needed for the Global statistics. More... | |
Private Member Functions | |
| const QString | getDbField (const QString &tr_fld) |
| Returns the database field corresponding to the relative log field. More... | |
| const int | getMinuteGap (const int &minute, const int &gap=10) |
| Returns the minute gap for the given minute with the given gap. More... | |
| const int | getMonthDays (const int &year, const int &month) |
| Returns the number of days for a given month. More... | |
| const int | getMonthNumber (const QString &month_str) |
| Returns the month number in the year. More... | |
| const int | getMonthsCount (const int &from_year, const int &from_month, const int &to_year, const int &to_month) |
| Returns the number of months in a given period. More... | |
| void DbQuery::getDaytimeCounts | ( | std::tuple< bool, std::unordered_map< int, std::unordered_map< int, int > > > & | result, |
| const QString & | web_server, | ||
| const QString & | from_year_, | ||
| const QString & | from_month_, | ||
| const QString & | from_day_, | ||
| const QString & | to_year_, | ||
| const QString & | to_month_, | ||
| const QString & | to_day_, | ||
| const QString & | log_field_, | ||
| const QString & | field_filter | ||
| ) |
Retrieves the data needed for the Daytime statistics.
| result | Tuple which will hold the result of the operation and the data |
| web_server | The ID of the Web Server to use |
| from_year_ | The initial year |
| from_month_ | The initial month |
| from_day_ | The initial day |
| to_year_ | The final year |
| to_month_ | The final month |
| to_day_ | The final day |
| log_field_ | The log field to filter |
| field_filter | The filter to apply |
|
private |
Returns the database field corresponding to the relative log field.
| tr_fld | The log field, hendles translated text |
| const bool DbQuery::getGlobalCounts | ( | const QString & | web_server, |
| const std::unordered_map< int, std::unordered_map< int, std::vector< int > > > & | dates, | ||
| std::vector< std::unordered_map< QString, int > > & | recurs, | ||
| std::tuple< QString, int > & | traf_date, | ||
| std::unordered_map< int, double > & | traf_day, | ||
| std::unordered_map< int, double > & | traf_hour, | ||
| std::vector< long long > & | perf_time, | ||
| std::vector< long long > & | perf_sent, | ||
| std::vector< long long > & | perf_receiv, | ||
| long & | req_count | ||
| ) |
Retrieves the data needed for the Global statistics.
| web_server | The ID of the Web Server to use |
| dates | The dates to query |
| recurs | Will hold the recurrencies of the items |
| traf_date | Will hold the most trafficked date and the count |
| traf_day | Will hold the most trafficked day of the week and the count |
| traf_hour | Will hold the most trafficked hour of the day and the count |
| perf_time | Will hold the overallo time taken |
| perf_sent | Will hold the overall Bytes sent |
| perf_receiv | Will hold the overall Bytes received |
| req_count | Will hold the number of requests examined by the query |
| void DbQuery::getItemsCount | ( | std::tuple< bool, std::vector< std::tuple< QString, int > > > & | result, |
| const QString & | web_server, | ||
| const QString & | year, | ||
| const QString & | month, | ||
| const QString & | day, | ||
| const QString & | log_field | ||
| ) |
Retrieves the data needed for the Counts statistics.
| result | Tuple which will hold the result of the operation and the data |
| web_server | The ID of the Web Server to use |
| year | The year |
| month | The month |
| day | The day |
| log_field | The log field |
|
private |
Returns the minute gap for the given minute with the given gap.
| minute | The minute of the hour |
| gap | The gap used to split the hour |
| DateTimeException |
|
private |
Returns the number of days for a given month.
| year | The year, used to handle leap years |
| month | The month |
| DateTimeException |
|
private |
Returns the month number in the year.
| month_str | The month |
|
private |
Returns the number of months in a given period.
| from_year | The initial year |
| from_month | The initial month |
| to_year | The final Year |
| to_month | The final month |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| from_year | The initial year |
| from_month | The initial month |
| to_year | The final Year |
| to_month | The final month |
| DateTimeException |
| void DbQuery::getRelationalCountsDay | ( | std::tuple< bool, std::vector< std::tuple< long long, int > > > & | result, |
| const QString & | web_server, | ||
| const QString & | year_, | ||
| const QString & | month_, | ||
| const QString & | day_, | ||
| const QString & | log_field_1_, | ||
| const QString & | field_filter_1, | ||
| const QString & | log_field_2_, | ||
| const QString & | field_filter_2 | ||
| ) |
Retrieves the data needed for the Relationsl statistics.
Used when querying a single day
| result | Tuple which will hold the result of the operation and the data |
| web_server | The ID of the Web Server to use |
| year_ | The year |
| month_ | The month |
| day_ | The day |
| log_field_1_ | The first log field to filter |
| field_filter_1 | The filter to apply to the first field |
| log_field_2_ | The second log field to filter |
| field_filter_2 | The filter to apply to the second fiend |
| void DbQuery::getRelationalCountsPeriod | ( | std::tuple< bool, std::vector< std::tuple< long long, int > > > & | result, |
| const QString & | web_server, | ||
| const QString & | from_year_, | ||
| const QString & | from_month_, | ||
| const QString & | from_day_, | ||
| const QString & | to_year_, | ||
| const QString & | to_month_, | ||
| const QString & | to_day_, | ||
| const QString & | log_field_1_, | ||
| const QString & | field_filter_1, | ||
| const QString & | log_field_2_, | ||
| const QString & | field_filter_2 | ||
| ) |
Retrieves the data needed for the Relational statistics.
Used when querying a period of time
| result | Tuple which will hold the result of the operation and the data |
| web_server | The ID of the Web Server to use |
| from_year_ | The initial year |
| from_month_ | The initial month |
| from_day_ | The initial day |
| to_year_ | The final year |
| to_month_ | The final month |
| to_day_ | The final day |
| log_field_1_ | The first log field to filter |
| field_filter_1 | The filter to apply to the first field |
| log_field_2_ | The second log field to filter |
| field_filter_2 | The filter to apply to the second fiend |
| void DbQuery::getSpeedData | ( | std::tuple< bool, std::vector< std::tuple< long long, std::vector< QString > > > > & | result, |
| const QString & | web_server, | ||
| const QString & | year_, | ||
| const QString & | month_, | ||
| const QString & | day_, | ||
| const QString & | protocol_f, | ||
| const QString & | method_f, | ||
| const QString & | uri_f, | ||
| const QString & | query_f, | ||
| const QString & | response_f | ||
| ) |
Retrieves the data needed for the Speed statistics.
| result | Tuple which will hold the result of the operation and the data |
| web_server | The ID of the Web Server to use |
| year_ | The year |
| month_ | The month |
| day_ | The day |
| protocol_f | The filter for the Protocol field |
| method_f | The filter for the Method field |
| uri_f | The filter for the URI field |
| query_f | The filter for the Query field |
| response_f | The filter for the Response field |
| void DbQuery::getWarnCounts | ( | std::tuple< bool, std::vector< std::vector< std::vector< std::vector< QString > > > > > & | result, |
| const QString & | web_server, | ||
| const QString & | year_, | ||
| const QString & | month_, | ||
| const QString & | day_, | ||
| const QString & | hour_ | ||
| ) |
Retrieves the data needed for the Warnings statistics.
| result | Tuple which will hold the result of the operation and the data |
| web_server | The ID of the Web Server to use |
| year_ | The year |
| month_ | The month |
| day_ | The day |
| hour_ | The hour |
| void DbQuery::refreshDates | ( | std::tuple< bool, std::unordered_map< int, std::unordered_map< int, std::unordered_map< int, std::vector< int > > > > > & | result | ) |
Refreshes the dates which are available in the database.
| result | Tuple which will hold the result of the operation and the data |
| void DbQuery::setDbPath | ( | const std::string & | path | ) |
Sets the path for the logs Collection database.
| void DbQuery::updateWarnings | ( | const QString & | web_server, |
| const std::vector< std::tuple< int, int > > & | updates | ||
| ) |
Updates the database applying the changes made in the Warnings statistics table.
| web_server | The ID of the Web Server to use |
| updates | The list of rowids to update and the corresponding warning values |