Monitoring Events
Track when events last ran and whether they succeeded. Log each execution to an audit table for compliance and debugging.
Track when events last ran and whether they succeeded. Log each execution to an audit table for compliance and debugging.
-- Create event audit table
CREATE TABLE event_audit (
id BIGINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
event_name VARCHAR(100) NOT NULL,
run_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
rows_affected INT,
status ENUM("success","error") DEFAULT "success",
message TEXT,
INDEX idx_event_name (event_name),
INDEX idx_run_at (run_at)
);
-- In each event body:
INSERT INTO event_audit (event_name, rows_affected) VALUES ("cleanup", ROW_COUNT());
-- Query history
SELECT event_name, run_at, rows_affected FROM event_audit ORDER BY run_at DESC LIMIT 50;
An audit table gives you a history of event executions and row counts — invaluable for troubleshooting.