The housekeeper is causing huge load and performance issues on my zabbix server. I'm currently monitoring about 7500 items on 140 hosts, right around 90 new values per second. I disabled the housekeeper in zabbix_server.conf, and wrote a script to do the work below (I found it in another post). My main question is: What else is the housekeeper doing? I dont want to miss stuff and have my db get too big. There has to be more, because my script runs in 1-2 minutes, and the housekeeper is working so hard all day long. My script is basically:
# delete history:
delete from history where clock < UNIX_TIMESTAMP()-(60*60*24*14);
delete from history_uint where clock < UNIX_TIMESTAMP()-(60*60*24*14);
delete from history_str where clock < UNIX_TIMESTAMP()-(60*60*24*14);
delete from history_text where clock < UNIX_TIMESTAMP()-(60*60*24*14);
delete from history_log where clock < UNIX_TIMESTAMP()-(60*60*24*14);
# delete trends:
delete from alerts where clock < UNIX_TIMESTAMP()-(60*60*24*180);
delete from trends where clock < UNIX_TIMESTAMP()-(60*60*24*180);
delete from trends_uint where clock < UNIX_TIMESTAMP()-(60*60*24*180);
select eventid from events where UNIX_TIMESTAMP()-(60*60*24*180);
for e in eventids:
delete from acknowledges where eventid=e
delete from events where eventid=e
# delete history:
delete from history where clock < UNIX_TIMESTAMP()-(60*60*24*14);
delete from history_uint where clock < UNIX_TIMESTAMP()-(60*60*24*14);
delete from history_str where clock < UNIX_TIMESTAMP()-(60*60*24*14);
delete from history_text where clock < UNIX_TIMESTAMP()-(60*60*24*14);
delete from history_log where clock < UNIX_TIMESTAMP()-(60*60*24*14);
# delete trends:
delete from alerts where clock < UNIX_TIMESTAMP()-(60*60*24*180);
delete from trends where clock < UNIX_TIMESTAMP()-(60*60*24*180);
delete from trends_uint where clock < UNIX_TIMESTAMP()-(60*60*24*180);
select eventid from events where UNIX_TIMESTAMP()-(60*60*24*180);
for e in eventids:
delete from acknowledges where eventid=e
delete from events where eventid=e