mirror of
https://github.com/rsyslog/loganalyzer.git
synced 2025-09-23 18:07:52 +02:00
Added new setting for MYSQL logstream sources to control the amount of data per query.
This value can be used to tweak MYSQL performance for your environment. For example when filtering for fields which are generated by a message parser, highering the value does improve the database performance. Default is 100.
This commit is contained in:
parent
5a22843551
commit
4daa93225d
@ -102,6 +102,7 @@ if ( isset($_GET['op']) )
|
||||
$content['SourceDBEnableRowCounting'] = "false";
|
||||
$content['SourceDBEnableRowCounting_true'] = "";
|
||||
$content['SourceDBEnableRowCounting_false'] = "checked";
|
||||
$content['SourceDBRecordsPerQuery'] = "100";
|
||||
|
||||
// General stuff
|
||||
$content['userid'] = null;
|
||||
@ -188,6 +189,8 @@ if ( isset($_GET['op']) )
|
||||
$content['SourceDBEnableRowCounting_true'] = "";
|
||||
$content['SourceDBEnableRowCounting_false'] = "checked";
|
||||
}
|
||||
$content['SourceDBRecordsPerQuery'] = $mysource['DBRecordsPerQuery'];
|
||||
|
||||
|
||||
if ( $mysource['userid'] != null )
|
||||
$content['CHECKED_ISUSERONLY'] = "checked";
|
||||
@ -302,6 +305,7 @@ if ( isset($_POST['op']) )
|
||||
if ( isset($_POST['SourceDBServer']) ) { $content['SourceDBServer'] = DB_RemoveBadChars($_POST['SourceDBServer']); }
|
||||
if ( isset($_POST['SourceDBTableName']) ) { $content['SourceDBTableName'] = DB_RemoveBadChars($_POST['SourceDBTableName']); }
|
||||
if ( isset($_POST['SourceDBUser']) ) { $content['SourceDBUser'] = DB_RemoveBadChars($_POST['SourceDBUser']); }
|
||||
if ( isset($_POST['SourceDBRecordsPerQuery']) ) { $content['SourceDBRecordsPerQuery'] = DB_RemoveBadChars($_POST['SourceDBRecordsPerQuery']); }
|
||||
if ( isset($_POST['SourceDBPassword']) ) { $content['SourceDBPassword'] = DB_RemoveBadChars($_POST['SourceDBPassword']); } else {$content['SourceDBPassword'] = ""; }
|
||||
if ( isset($_POST['SourceDBEnableRowCounting']) ) { $content['SourceDBEnableRowCounting'] = DB_RemoveBadChars($_POST['SourceDBEnableRowCounting']); }
|
||||
// Extra Check for this property
|
||||
@ -417,6 +421,11 @@ if ( isset($_POST['op']) )
|
||||
$content['ISERROR'] = true;
|
||||
$content['ERROR_MSG'] = GetAndReplaceLangStr( $content['LN_SOURCES_ERROR_MISSINGPARAM'], $content['LN_CFG_DBUSER'] );
|
||||
}
|
||||
else if ( !is_numeric($content['SourceDBRecordsPerQuery']) )
|
||||
{
|
||||
$content['ISERROR'] = true;
|
||||
$content['ERROR_MSG'] = GetAndReplaceLangStr( $content['LN_SOURCES_ERROR_INVALIDVALUE'], $content['LN_CFG_DBRECORDSPERQUERY'] );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -453,7 +462,8 @@ if ( isset($_POST['op']) )
|
||||
$tmpSource['DBTableName'] = $content['SourceDBTableName'];
|
||||
$tmpSource['DBUser'] = $content['SourceDBUser'];
|
||||
$tmpSource['DBPassword'] = $content['SourceDBPassword'];
|
||||
$tmpSource['DBEnableRowCounting'] = $content['SourceDBEnableRowCounting'];
|
||||
$tmpSource['DBEnableRowCounting'] = $content['SourceDBEnableRowCounting'];
|
||||
$tmpSource['DBRecordsPerQuery'] = $content['SourceDBRecordsPerQuery'];
|
||||
$tmpSource['userid'] = $content['userid'];
|
||||
$tmpSource['groupid'] = $content['groupid'];
|
||||
}
|
||||
@ -500,7 +510,7 @@ if ( isset($_POST['op']) )
|
||||
}
|
||||
else if ( $content['SourceType'] == SOURCE_DB || $content['SourceType'] == SOURCE_PDO )
|
||||
{
|
||||
$sqlquery = "INSERT INTO " . DB_SOURCES . " (Name, Description, SourceType, MsgParserList, MsgNormalize, MsgSkipUnparseable, ViewID, DBTableType, DBType, DBServer, DBName, DBUser, DBPassword, DBTableName, DBEnableRowCounting, userid, groupid)
|
||||
$sqlquery = "INSERT INTO " . DB_SOURCES . " (Name, Description, SourceType, MsgParserList, MsgNormalize, MsgSkipUnparseable, ViewID, DBTableType, DBType, DBServer, DBName, DBUser, DBPassword, DBTableName, DBEnableRowCounting, SourceDBRecordsPerQuery, userid, groupid)
|
||||
VALUES ('" . $content['Name'] . "',
|
||||
'" . $content['Description'] . "',
|
||||
" . $content['SourceType'] . ",
|
||||
@ -516,6 +526,7 @@ if ( isset($_POST['op']) )
|
||||
'" . $content['SourceDBPassword'] . "',
|
||||
'" . $content['SourceDBTableName'] . "',
|
||||
" . $content['SourceDBEnableRowCounting'] . ",
|
||||
" . $content['SourceDBRecordsPerQuery'] . ",
|
||||
" . $content['userid'] . ",
|
||||
" . $content['groupid'] . "
|
||||
)";
|
||||
@ -573,6 +584,7 @@ if ( isset($_POST['op']) )
|
||||
DBPassword = '" . $content['SourceDBPassword'] . "',
|
||||
DBTableName = '" . $content['SourceDBTableName'] . "',
|
||||
DBEnableRowCounting = " . $content['SourceDBEnableRowCounting'] . ",
|
||||
DBRecordsPerQuery = " . $content['SourceDBRecordsPerQuery'] . ",
|
||||
userid = " . $content['userid'] . ",
|
||||
groupid = " . $content['groupid'] . "
|
||||
WHERE ID = " . $content['SOURCEID'];
|
||||
|
@ -1,5 +1,6 @@
|
||||
-- New Database Structure Updates
|
||||
ALTER TABLE `logcon_sources` ADD `MsgSkipUnparseable` BOOL NOT NULL DEFAULT '0' AFTER `MsgNormalize` ;
|
||||
ALTER TABLE `logcon_sources` ADD `DBRecordsPerQuery` INT NOT NULL DEFAULT '100' AFTER `DBEnableRowCounting` ;
|
||||
|
||||
-- Insert data
|
||||
|
||||
|
@ -159,6 +159,7 @@ function InitSource(&$mysource)
|
||||
if ( isset($mysource['DBUser']) ) { $mysource['ObjRef']->DBUser = $mysource['DBUser']; }
|
||||
if ( isset($mysource['DBPassword']) ) { $mysource['ObjRef']->DBPassword = $mysource['DBPassword']; }
|
||||
if ( isset($mysource['DBEnableRowCounting']) ) { $mysource['ObjRef']->DBEnableRowCounting = $mysource['DBEnableRowCounting']; }
|
||||
if ( isset($mysource['DBRecordsPerQuery']) ) { $mysource['ObjRef']->RecordsPerQuery = $mysource['DBRecordsPerQuery']; }
|
||||
}
|
||||
else if ( $mysource['SourceType'] == SOURCE_PDO )
|
||||
{
|
||||
|
@ -223,6 +223,7 @@ $content['LN_SOURCES_WARNDELETESEARCH'] = "Are you sure that you want to delete
|
||||
$content['LN_SOURCES_ERROR_DELSOURCE'] = "Deleting of the Source with id '%1' failed!";
|
||||
$content['LN_SOURCES_ERROR_HASBEENDEL'] = "The Source '%1' has been successfully deleted!";
|
||||
$content['LN_SOURCES_DESCRIPTION'] = "Source Description (Optional)";
|
||||
$content['LN_SOURCES_ERROR_INVALIDVALUE'] = "Invalid value for the paramater '%1'.";
|
||||
|
||||
// Database Upgrade
|
||||
$content['LN_DBUPGRADE_TITLE'] = "phpLogCon Database Update";
|
||||
|
@ -193,6 +193,7 @@ $content['LN_CFG_FIRSTSYSLOGSOURCE'] = "Erste Syslog Quelle";
|
||||
$content['LN_CFG_MSGPARSERS'] = "Message Parsers (comma seperated)";
|
||||
$content['LN_CFG_NORMALIZEMSG'] = "Normalize Message within Parsers";
|
||||
$content['LN_CFG_SKIPUNPARSEABLE'] = "Skip unparseable messages (Only works if msgparsers are configured!)";
|
||||
$content['LN_CFG_DBRECORDSPERQUERY'] = "Recordcount for database queries";
|
||||
|
||||
// Details page
|
||||
$content['LN_DETAILS_FORSYSLOGMSG'] = "Details für syslog-Nachrichten mit der ID";
|
||||
|
@ -227,6 +227,7 @@ $content['LN_SOURCES_WARNDELETESEARCH'] = "Are you sure that you want to delete
|
||||
$content['LN_SOURCES_ERROR_DELSOURCE'] = "Deleting of the Source with id '%1' failed!";
|
||||
$content['LN_SOURCES_ERROR_HASBEENDEL'] = "The Source '%1' has been successfully deleted!";
|
||||
$content['LN_SOURCES_DESCRIPTION'] = "Source Description (Optional)";
|
||||
$content['LN_SOURCES_ERROR_INVALIDVALUE'] = "Invalid value for the paramater '%1'.";
|
||||
|
||||
// Database Upgrade
|
||||
$content['LN_DBUPGRADE_TITLE'] = "phpLogCon Database Update";
|
||||
|
@ -195,6 +195,7 @@ $content['LN_CFG_DBUSERLOGINREQUIRED'] = "Require user to be logged in";
|
||||
$content['LN_CFG_MSGPARSERS'] = "Message Parsers (comma seperated)";
|
||||
$content['LN_CFG_NORMALIZEMSG'] = "Normalize Message within Parsers";
|
||||
$content['LN_CFG_SKIPUNPARSEABLE'] = "Skip unparseable messages (Only works if msgparsers are configured!)";
|
||||
$content['LN_CFG_DBRECORDSPERQUERY'] = "Recordcount for database queries";
|
||||
|
||||
// Details page
|
||||
$content['LN_DETAILS_FORSYSLOGMSG'] = "Details for the syslog messages with id";
|
||||
|
@ -223,6 +223,7 @@ $content['LN_SOURCES_WARNDELETESEARCH'] = "Are you sure that you want to delete
|
||||
$content['LN_SOURCES_ERROR_DELSOURCE'] = "Deleting of the Source with id '%1' failed!";
|
||||
$content['LN_SOURCES_ERROR_HASBEENDEL'] = "The Source '%1' has been successfully deleted!";
|
||||
$content['LN_SOURCES_DESCRIPTION'] = "Source Description (Optional)";
|
||||
$content['LN_SOURCES_ERROR_INVALIDVALUE'] = "Invalid value for the paramater '%1'.";
|
||||
|
||||
// Database Upgrade
|
||||
$content['LN_DBUPGRADE_TITLE'] = "phpLogCon Database Update";
|
||||
|
@ -197,6 +197,7 @@ $content['LN_CFG_VIEW'] = "Selecione visão";
|
||||
$content['LN_CFG_MSGPARSERS'] = "Message Parsers (comma seperated)";
|
||||
$content['LN_CFG_NORMALIZEMSG'] = "Normalize Message within Parsers";
|
||||
$content['LN_CFG_SKIPUNPARSEABLE'] = "Skip unparseable messages (Only works if msgparsers are configured!)";
|
||||
$content['LN_CFG_DBRECORDSPERQUERY'] = "Recordcount for database queries";
|
||||
|
||||
// Details page
|
||||
$content['LN_DETAILS_FORSYSLOGMSG'] = "Detalhes para a mensagem com id";
|
||||
|
@ -17,14 +17,16 @@
|
||||
showvisibility("HiddenDatabaseTypeOptions");
|
||||
hidevisibility("HiddenDiskTypeOptions");
|
||||
|
||||
hidevisibility("HiddenDBTypesOptions");
|
||||
showvisibility("HiddenMYSQLSourceOptions");
|
||||
hidevisibility("HiddenPDOSourceOptions");
|
||||
}
|
||||
else if (myfield.value == 3)
|
||||
{
|
||||
showvisibility("HiddenDatabaseTypeOptions");
|
||||
hidevisibility("HiddenDiskTypeOptions");
|
||||
|
||||
showvisibility("HiddenDBTypesOptions");
|
||||
showvisibility("HiddenPDOSourceOptions");
|
||||
hidevisibility("HiddenMYSQLSourceOptions");
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@ -136,7 +138,7 @@
|
||||
<td align="right" class="line1"><input type="checkbox" name="MsgNormalize" value="1" {CHECKED_ISNORMALIZEMSG}></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="left" class="cellmenu2" nowrap><b>{LN_CFG_SKIPUNPARSEABLE}</b></td>
|
||||
<td align="left" class="cellmenu2_naked"><b>{LN_CFG_SKIPUNPARSEABLE}</b></td>
|
||||
<td align="right" class="line1"><input type="checkbox" name="MsgSkipUnparseable" value="1" {CHECKED_ISSKIPUNPARSEABLE}></td>
|
||||
</tr>
|
||||
|
||||
@ -184,7 +186,7 @@
|
||||
<tr><td align="center" class="cellmenu1" colspan="2"><b>{LN_CFG_DATABASETYPEOPTIONS}</b></td></tr>
|
||||
</table>
|
||||
|
||||
<div id="HiddenDBTypesOptions" class="ShownContent">
|
||||
<div id="HiddenPDOSourceOptions" class="ShownContent">
|
||||
<table border="0" cellpadding="1" cellspacing="1" width="600" align="center" class="with_border">
|
||||
<tr>
|
||||
<td align="left" class="cellmenu2" width="250" nowrap><b>{LN_CFG_DBSTORAGEENGINE}</b></td>
|
||||
@ -233,6 +235,15 @@
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="HiddenMYSQLSourceOptions" class="ShownContent">
|
||||
<table border="0" cellpadding="1" cellspacing="1" width="600" align="center" class="with_border">
|
||||
<tr>
|
||||
<td align="left" class="cellmenu2" width="250" nowrap><b>{LN_CFG_DBRECORDSPERQUERY}</b></td>
|
||||
<td align="right" class="line1" width="350"><input type="text" name="SourceDBRecordsPerQuery" size="40" maxlength="255" value="{SourceDBRecordsPerQuery}"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<table border="0" cellpadding="1" cellspacing="1" bgcolor="#DDDDDD" width="600" class="with_border_alternate">
|
||||
<tr>
|
||||
<td align="center" colspan="2">
|
||||
|
Loading…
x
Reference in New Issue
Block a user