Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

V2.x logging mem [WIP] #4713

Open
wants to merge 21 commits into
base: v2.7
Choose a base branch
from
Open

V2.x logging mem [WIP] #4713

wants to merge 21 commits into from

Conversation

renecannao
Copy link
Contributor

No description provided.

renecannao and others added 21 commits August 10, 2024 12:24
Accept a reference to a vector instead of returning a deque
MySQL_Logger::insertMysqlEventsIntoDb() populate table `stats_mysql_query_events`
using mysql query events in the circular buffer
MySQL_Logger::processEvents() is responsible for dumping mysql query events
from the circular buffer into SQLite tables.
DUMP EVENTSLOG commands trigger a call to processEvents():
* DUMP EVENTSLOG FROM BUFFER TO MEMORY: copies events to the in-memory SQLite table
* DUMP EVENTSLOG FROM BUFFER TO DISK: copies events to the on-disk SQLite table
* DUMP EVENTSLOG FROM BUFFER TO BOTH: copies events to both in-memory and on-disk
       SQLite tables simultaneously
Added new Admin variable stats_mysql_eventslog_sync_buffer_to_disk .
This variable defines how frequently mysql query eventslog are
automatically dumped to disk.
In MySQL_Event copy constructor, queries are copied up to
eventslog_buffer_max_query_length bytes.
Added enhancements:
* added mysql-eventslog_table_memory_size
* liste columns names in insertMysqlEventsIntoDb()
* added counters and metrics (not exported yet)
Added function MySQL_Logger::getAllMetrics() to export all metrics
related to eventlogs
Adding logging for errors generated directly directly by ProxySQL
New `errno` column in tables:
- stats_mysql_query_events
- history_mysql_query_events

Logging into `stats_mysql_errors` also errors generated by ProxySQL (no backend)

Added initial TAP test to be extended
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant